Lite - How to post to wiki forum using external form?
Hello,
I am using an external form to post to a vault wiki forum (it is the EasyForms hack).
I am having trouble getting the actual page content into the wiki page.
The standard code for the form to post to a forum is as follows (I have highlighted what I think is the problem area):
What command should I use instead so that I can fill the wiki page with content from the form?
Thanks!
Code:
$forumid2 = 99;
if ($complete)
{
if (!$vbulletin->userinfo['userid'])
{
$vbulletin->input->clean_array_gpc('p', array(
'humanverify' => TYPE_ARRAY,
));
$newpost['humanverify'] = $vbulletin->GPC['humanverify'];
}
require_once(DIR . '/includes/functions_editor.php');
require_once(DIR . '/includes/functions_bigthree.php');
require_once('./includes/class_dm.php');
require_once('./includes/class_dm_threadpost.php');
require_once('./includes/functions_databuild.php');
if (!$closed)
{
$open = 1;
}
else
{
$open = 0;
}
$threaddm = new vB_DataManager_Thread_FirstPost($vbulletin, ERRTYPE_STANDARD);
/*$foruminfo = fetch_foruminfo($forumid);*/
$threaddm->set_info('forum',$foruminfo);
$threaddm->set_info('user', $vbulletin->userinfo);
$threaddm->set('forumid', $forumid2);
$threaddm->set('userid', $vbulletin->userinfo['userid']);
$threaddm->set('title', $threadtitle);
[SIZE="6"] $threaddm->set('pagetext', $formoutput); [/SIZE]
$allow_smilie = '1';
$visible = '1';
$threaddm->set('open', $open);
if ($form[prefixid])
{
$threaddm->set('prefixid', $form[prefixid]);
}
if ($form[iconid])
{
$threaddm->set('iconid', $iconid);
}
$threaddm->set('allowsmilie', $allow_smilie);
$threaddm->set('visible', $visible);
$threaddm->pre_save();
$threadid = $threaddm->save();
unset($threaddm);
build_thread_counters($threadid);
build_forum_counters($forumid);
if (!empty($threaddm->errors))
{
$errorss .= $threaddm->errors;
$errormessage = "Form failed to submit. The following error(s) occured: <br /> ".$errorss;
eval(standard_error($errormessage));
}
$threadinfo = fetch_threadinfo($threadid);
$newpost['postid'] = $threadinfo['firstpostid'];
mark_thread_read($threadinfo, $foruminfo, $vbulletin->userinfo['userid'], TIMENOW);
/*($hook = vBulletinHook::fetch_hook('newthread_post_complete')) ? eval($hook) : false;*/
if ($form[poll] == 1)
{
$question = $form[pollquestion];
$threadinfo = verify_id('thread', $threadid, 0, 1);
$polloptions = count($polloption);
$vbulletin->GPC['options'] = $polloption;
$counter = 0;
$optioncount = 0;
$badoption = '';
while ($counter++ < $polloptions)
{
if ($vbulletin->options['maxpolllength'] AND vbstrlen($vbulletin->GPC['options']["$counter"]) > $vbulletin->options['maxpolllength'])
{
$badoption .= iif($badoption, ', ') . $counter;
}
if (!empty($vbulletin->GPC['options']["$counter"]))
{
$optioncount++;
}
}
$poll = datamanager_init('Poll', $vbulletin, ERRTYPE_STANDARD);
$counter = 0;
while ($counter++ < $polloptions)
{
if ($vbulletin->GPC['options']["$counter"] != '')
{
$poll->set_option($vbulletin->GPC['options']["$counter"]);
}
}
$poll->set('question', $question);
$poll->set('dateline', TIMENOW);
$poll->set('active', '1');
$poll->set('public', $form['publicpoll']);
$poll->set('multiple', $form['multiplepoll']);
$pollid = $poll->save();
$threadman = datamanager_init('Thread', $vbulletin, ERRTYPE_STANDARD, 'threadpost');
$threadman->set_existing($threadinfo);
$threadman->set('pollid', $pollid);
$threadman->save();
}
if ($form[submitmessage])
{
$errormessage = $form[submitmessage];
}
else
{
$errormessage = "Form was submitted successfully. Click <a href=\"showthread.php?" . $vbulletin->session->vars['sessionurl'] . "p=" . $newpost[postid] . "#post" . $newpost[postid] . "\">here</a> to view the thread.";
}
}