Ok here is how I got it working on my custom page , here its blog_post
all is made in the plugin manager, no template edit required finally because from the plugin wich is caching the templates ,it's positioning the Nospam box just up the visual captcha.
1) Edit the Nospam plugin called "
Generate and insert NoSpam! question"
FIND
PHP Code:
default:
$nospamdo = false;
ADD
BEFORE
PHP Code:
case 'blog_post':
if ($vbulletin->options['nospam_onoff']) {
$thetemplate =& $vbulletin->templatecache['blog_comment_editor'];
$nospamdo = true;
}
break;
2) Edit the Nospam plugin called "
Cache the NoSpam! template"
FIND
PHP Code:
case 'sendmessage':
if ($vbulletin->options['nospam_use_contactus']) {
$actiontemplates['contactus'][] = 'nospam';
}
break;
ADD
AFTER
PHP Code:
case 'blog_post':
if ($vbulletin->options['nospam_onoff']) {
$actiontemplates['blog_comment_editor'][] = 'nospam';
}
break;
3) And finally create the new plugin that will check response validity, name it as you wish, select the hook location called "blog_post_updatecomment_start" and enter this new code
PHP Code:
$vbulletin->input->clean_array_gpc('p', array(
'nospamnumber' => TYPE_UINT,
'nospam' => TYPE_STR,
));
if ($vbulletin->options['nospam_onoff'] AND !$vbulletin->userinfo['userid'])
{
$nospamnumber = $vbulletin->GPC['nospamnumber'];
$questions = explode("\n", $vbulletin->options['nospam_questions']);
$qanda = explode(":", strtolower($questions["$nospamnumber"]));
unset($qanda[0]);
function trim_array(&$answer)
{
$answer = trim($answer);
}
array_walk($qanda, 'trim_array');
if (!in_array(strtolower(trim($vbulletin->GPC['nospam'])), $qanda))
{
eval(standard_error(fetch_error('nospam_wrong_answer')));
}
}
There is just the visual option settings not implemented in the admincp vboption, it will just check if nospam is on or off and if the user is guest like Nospam does on other pages but does the job very well hehe now I can allow guest blog comments without caring if the vb visual captcha gets break , hope that helps