vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.5 Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=113)
-   -   Forms Hack (https://vborg.vbsupport.ru/showthread.php?t=93970)

BioVader 04-04-2006 05:52 PM

OK if I can get this answered I think I will be able to go from there once I see how the code is changed... First I want my form only to be filled out by registered users SO that when they open the form their username is automatically placed in the subject bar. Then when they submit their app and it directs to the selected forum, we can see who the app is from via the subject line. I would also like to add a one other answer from the form to the subject line but I think if I see how to added the username I can figure out how to do the second part.

Ex: Membership Application: [username] <answer1>

Abe1 04-04-2006 06:07 PM

Quote:

Originally Posted by BioVader
OK if I can get this answered I think I will be able to go from there once I see how the code is changed... First I want my form only to be filled out by registered users SO that when they open the form their username is automatically placed in the subject bar. Then when they submit their app and it directs to the selected forum, we can see who the app is from via the subject line. I would also like to add a one other answer from the form to the subject line but I think if I see how to added the username I can figure out how to do the second part.

Ex: Membership Application: [username] <answer1>

use the var. $bbuserinfo['username']

BioVader 04-04-2006 07:41 PM

Like this? I've tried putting it right after Membership App and get errors.. This way errors out too..

PHP Code:

$formtitle "Membership Application";

////////////////////////////////////////////////////////////////////////////////////////////////////
//TITLE OF THREAD/POST/PM/EMAIL (do not use quotation marks in the title or you will get a parse error)
//You may use variables from the form for this.
////////////////////////////////////////////////////////////////////////////////////////////////////

$posttitle "$formtitle $bbuserinfo['username']"

Error:
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/xxx/public_html/forums/newthread.php(68) : eval()'d code on line 151

ChrisBaktis 04-04-2006 08:04 PM

I dont think you are following what im asking for....$bbuserinfo [username] is going to be the person that is actually filling out and submitting the form. As it is now I do use that already - I use it so the form logs ME as one of the traders.

this is part of my Answer form

PHP Code:

[b]Trade/Sale Between:[/b] [COLOR="green"]$bbuserinfo[username][/color] / [COLOR="green"]$normalanswer1
[/color

$bbuserinfo[username] logs me as one of the traders - and $normalanswer1 is the other trader (whos name I have to type in when filling out the form)

what I want to do is have a link in a post - when I click that link I want the form to assign $normalanswer1 as the person who's post I just clicked the link from. I cant see how $bbuserinfo[username] will do that. The form is (as it is) will not assign $normalanswer1 as the name of the author of the post.

I dont know how else to explain it.

Abe1 04-04-2006 08:19 PM

Quote:

Originally Posted by BioVader
Like this? I've tried putting it right after Membership App and get errors.. This way errors out too..

PHP Code:

$formtitle "Membership Application";

////////////////////////////////////////////////////////////////////////////////////////////////////
//TITLE OF THREAD/POST/PM/EMAIL (do not use quotation marks in the title or you will get a parse error)
//You may use variables from the form for this.
////////////////////////////////////////////////////////////////////////////////////////////////////

$posttitle "$formtitle $bbuserinfo['username']"

Error:
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/xxx/public_html/forums/newthread.php(68) : eval()'d code on line 151

Make it $bbuserinfo[username] since you have it in quote.

Abe1 04-04-2006 08:21 PM

Quote:

Originally Posted by ChrisBaktis
I dont think you are following what im asking for....$bbuserinfo [username] is going to be the person that is actually filling out and submitting the form. As it is now I do use that already - I use it so the form logs ME as one of the traders.

this is part of my Answer form

PHP Code:

[b]Trade/Sale Between:[/b] [COLOR="green"]$bbuserinfo[username][/color] / [COLOR="green"]$normalanswer1
[/color

$bbuserinfo[username] logs me as one of the traders - and $normalanswer1 is the other trader (whos name I have to type in when filling out the form)

what I want to do is have a link in a post - when I click that link I want the form to assign $normalanswer1 as the person who's post I just clicked the link from. I cant see how $bbuserinfo[username] will do that. The form is (as it is) will not assign $normalanswer1 as the name of the author of the post.

I dont know how else to explain it.

So you want a link to that user you write in?

ChrisBaktis 04-04-2006 08:30 PM

I run a trading site....what I want to do is have a link in all the posts that you click that will take you to the form. This form is how we post trades.

the postbit would have this 'Post A Trade With Member X' - Member X would be the username of the person who made that post...(i have this setup) - now when you click that link it takes you to the form and makes Member X one of the variables.

Im trying to avoid members having to type in the person they are trading with...just figured it would be easier that if they clicked the link in member x's post that member x would become one of the variiables - this would prevent members not typing in the actual username and it would eliminate typing mistakes for the person you are trading with.

Abe1 04-04-2006 10:43 PM

Quote:

Originally Posted by ChrisBaktis
I run a trading site....what I want to do is have a link in all the posts that you click that will take you to the form. This form is how we post trades.

the postbit would have this 'Post A Trade With Member X' - Member X would be the username of the person who made that post...(i have this setup) - now when you click that link it takes you to the form and makes Member X one of the variables.

Im trying to avoid members having to type in the person they are trading with...just figured it would be easier that if they clicked the link in member x's post that member x would become one of the variiables - this would prevent members not typing in the actual username and it would eliminate typing mistakes for the person you are trading with.

It's possable.

Request tha the poster put the userid of the other person in the form also. Then, make a url tag in the answer template using the userid.

ChrisBaktis 04-04-2006 11:21 PM

im looking for this to be done automaticly - it would actually be more work for a member to look up a members user id then input it...

Im looking for this to be automated but it doesnt appear to be a way to do it.

mrgrimes 04-05-2006 08:03 AM

Can this hack be used to create forms that are located outside vBulletin (eg on a page on a different website)? (Sorry if this has been asked before: I thought I'd seen a similar post but I've searched through this thread and can't find anything.)

BioVader 04-05-2006 08:04 AM

Ok I want to start over again... Same type of thing though. This time the user will open up the "Membership Application" and they will fill out the form.

The default forum title when they open the form is "Membership Application". What I would like to have happen is when they hit the submit form button, I would like the forum title to change to "Membership Application: <question2> <question1>"

So if they answered question1 with Submarine and question2 with Yellow, the new subject line when submitted would read,

Membership Application: Yellow Submarine (doable?)

Abe1 04-05-2006 12:12 PM

Quote:

Originally Posted by mrgrimes
Can this hack be used to create forms that are located outside vBulletin (eg on a page on a different website)? (Sorry if this has been asked before: I thought I'd seen a similar post but I've searched through this thread and can't find anything.)

Sorry, not set up for that.

mrgrimes 04-05-2006 12:18 PM

Just to clarify: this means I can't use take the content of an external form and post it into vBulletin using this hack?

Abe1 04-05-2006 01:05 PM

Quote:

Originally Posted by mrgrimes
Just to clarify: this means I can't use take the content of an external form and post it into vBulletin using this hack?

This hack gives you a form to add info into vb.

mrgrimes 04-05-2006 01:24 PM

Yes, but can it be tweaked so that the info can be added to vB from a form hosted elsewhere? Currently the form itself has to be located in a thread within vBulletin; I would like to be able to put the form in a news item of an external page but for the results to be posted to a thread within vBulletin.

Renae 04-05-2006 02:15 PM

I really like this, it makes something that I was trying to do very convenient.

HOWEVER, I am not a php genius (I use python a lot) so when you say "DO NOT USE QUOTATION MARKS AS IT WILL CAUSE A PARSE ERROR" that is not very descriptive. I thought that meant DO not use any quotation marks at all, when in reality it means only use them once. I finally saw SULLY02's post which explained this a little better.

Abe1 04-06-2006 02:38 AM

Version 3.4: (04/05/2006)
  • [FIXED] Removed extra line from template.
  • [ADDED] WYSIWYG editor now works besides the regular editor.
  • [ADDED] Preview.
  • [CHANGED] Subscriptions now take from user default setting.

It's hard to upgrade if you made lots of template changes. There are many changes to the template do to the preview feature.

CremeEgg 04-06-2006 12:57 PM

I'm going to be using this form for Guild Applications, I have a couple of questions.

New applicants won't be registered on the site so can I remove the section that takes the vB username?

Secondly, the editor doesn't appear for anyone that isn't logged in, any ideas why? When I test the form as a logged in user the editor works fine, as a guest you just get a text input box.

EDIT: One last thing (honest) when I tried to add 8 choices to the drop down menu question, I only got the first 3 appear (I'm a real newbie to all this) did I do something wrong with the variables?

Abe1 04-06-2006 01:05 PM

Quote:

Originally Posted by CremeEgg
I'm going to be using this form for Guild Applications, I have a couple of questions.

New applicants won't be registered on the site so can I remove the section that takes the vB username?

Secondly, the editor doesn't appear for anyone that isn't logged in, any ideas why? When I test the form as a logged in user the editor works fine, as a guest you just get a text input box.

EDIT: One last thing (honest) when I tried to add 8 choices to the drop down menu question, I only got the first 3 appear (I'm a real newbie to all this) did I do something wrong with the variables?

To remove or add things, you have to edit the templates also.

VB by default doesn't allow unregistered users to use the editor. They just see a plain box.

CremeEgg 04-06-2006 01:10 PM

Quote:

Originally Posted by Abe1
To remove or add things, you have to edit the templates also.

VB by default doesn't allow unregistered users to use the editor. They just see a plain box.

Thanks for the quick reply. I'll have another play about tonight see if I can get it all sussed out.

New to all things vB and have a very demanding WoW Guild that want lots from their site, so steep learning curve.

After applications it's time to tackle some form of DKP system, just wish someone would integrate eqDKP and vB.

almukmin 04-06-2006 03:03 PM

Can someone help me on this template installation.
I'll pay via Paypal. PM me.

Thanks.

Abe1 04-06-2006 03:14 PM

Quote:

Originally Posted by almukmin
Can someone help me on this template installation.
I'll pay via Paypal. PM me.

Thanks.

I've helped people. Send me a PM of what you want.

Necser 04-06-2006 09:17 PM

This is a great hack! I would like to know if anyone seen a hack to allows you to update the thread through the form.

This hack is the first step: To submit the thread through form.

Can it be done that you go to the thread and the user by clicking "edit" will get the same form that he/she submitted before with already filled up fields from the thread? Then the user edits the test in the form and saves this into the thread.

Cheers!

PsiNyde 04-07-2006 07:37 PM

yeah i liked this too. installed.

one big suggestion [and i've seen that it's been covered here in support, buuuut] - put the template & plugin edits required for field and option changes in the readme - it's quite sparse and doesn't cover nearly what it should. it took me a couple of hours to find all the variables that needed changing when i edited input fields/questions. even the plugin doesn't explain it very well [per instructions]. it would just be easier on everybody if everything needed to customize this was annotated in the package. ;) THANKS!

Abe1 04-07-2006 08:15 PM

Quote:

Originally Posted by PsiNyde
yeah i liked this too. installed.

one big suggestion [and i've seen that it's been covered here in support, buuuut] - put the template & plugin edits required for field and option changes in the readme - it's quite sparse and doesn't cover nearly what it should. it took me a couple of hours to find all the variables that needed changing when i edited input fields/questions. even the plugin doesn't explain it very well [per instructions]. it would just be easier on everybody if everything needed to customize this was annotated in the package. ;) THANKS!

I'd love to add more info the plug-in but I'm not a writer. I'm a coder. I know PHP and HTML. If some-one wants to work with me and fix up the manuals, be my guest.

Notce, all my answers are around 1 line. If your luck (like now) you get a 2nd or 3rd.

WNxWakko 04-08-2006 01:20 AM

Hmm, when I click preview it does show me at the top, but all the stuff I entered in the form is gone. I would have to retype it all? What did I do wrong?

RDX1 04-08-2006 02:19 AM

It doesn't work.. Newthread shows this:
Parse error: parse error, unexpected '/' in /home/path/to/newthread.php(68) : eval()'d code on line 167

Code:

// To add more then one form, copy this whole text, and creat a new plug-in with the hook location 'newthread_start'.
// After, change the form name. You can't have 2 forms with the same name.

// Name of this form
$formname = "linkexchange";

if ($_REQUEST['do'] == $formname)
{

// #######################################################################
// ######################## CUSTOMIZE VARIABLES ##########################
// #######################################################################

////////////////////////////////////////////////////////////////////////////////////////////////////
////// BEGIN CUSTOMIZATION BELOW////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//VARIABLES
//Study how variables are add here to add or remove any. If you add a variable to your form, you must add it to part one and part two.
////////////////////////////////////////////////////////////////////////////////////////////////////

// Part 1
$vbulletin->input->clean_array_gpc('p', array(
'normalanswer1' => TYPE_STR,
'radioanswer1' => TYPE_STR,
'radioanswer2' => TYPE_STR,
'radioanswer3' => TYPE_STR,
'radioanswer3other' => TYPE_STR,
'answer1' => TYPE_STR,
'answer2' => TYPE_STR,
'answer3' => TYPE_STR,
'dropdownanswer1' => TYPE_STR,
'longanswer1' => TYPE_STR
));

// Part 2
$normalanswer1 = $vbulletin->GPC['normalanswer1'];
$radioanswer1 = $vbulletin->GPC['radioanswer1'];
$radioanswer2 = $vbulletin->GPC['radioanswer2'];
$radioanswer3 = $vbulletin->GPC['radioanswer3'];
$radioanswer3other = $vbulletin->GPC['radioanswer3other'];
$answer1 = $vbulletin->GPC['answer1'];
$answer2 = $vbulletin->GPC['answer2'];
$answer3 = $vbulletin->GPC['answer3'];
$dropdownanswer1 = $vbulletin->GPC['dropdownanswer1'];
$longanswer1 = $vbulletin->GPC['longanswer1'];

////////////////////////////////////////////////////////////////////////////////////////////////////
//USERGROUPS ALLOWED
//You can add or remove usegroups that are ALLOWED to use this form by changing the numbers below in the array.
//To enable this feature, remove the '//' before the 'if'.
////////////////////////////////////////////////////////////////////////////////////////////////////

// if (!in_array($vbulletin->userinfo['usergroupid'], array(1,2,3,5,6,7,9,17,12,20,22,21))) print_no_permission();

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//NAME OF TEMPLATES - DO THIS BIT IF YOU ARE MAKING MORE FORMS AND WANT TO USE A DIFFERENT LOOKING TEMPLATE
////////////////////////////////////////////////////////////////////////////////////////////////////

// Name of the main template
$maintemplate = "form";
// Name of the answer template
$answertemplate = "formanswers";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//CHOOSE WHETHER YOU WANT FORM TO BE POSTED IN A NEW THREAD, NEW POLL, REPLY TO EXISITING THREAD, PMed OR EMAILED
///////////////////////////////////////////////////////////////////////////////////////////////////

//ENABLE FORM TO BE POSTED - 1 = yes, 0 = no
$formforum = "0";

//FORUM TO POST NEW THREAD IN
//You CAN make this number a variable. You can have a drop down menu or in the link like do=form&f=1. Make sure you add it the variables list.
$formforumid = "2";

//ENABLE POLL TO BE CREATED - 1 = yes, 0 = no
$formpoll = "0";
$polloption[1] = "Yes";
$polloption[2] = "No";
$polloption[3] = "Maybe";

//Make poll public - 1 = yes, 0 = no
$pollpublic = "0";

////////////////////////////////////////////////////////////////////////////////////////////////////

//ENABLE FORM TO REPLY TO EXISTING THREAD - 1 = yes, 0 = no
$formreply = "0";

//EXISTING THREAD ID FOR FORM TO REPLY IN
$formreplythreadid = "12345";

////////////////////////////////////////////////////////////////////////////////////////////////////

//ENABLE FORM TO BE PMED (guests CANNOT use this option) - 1 = yes, 0 = no
$formpm = "0";

//USERNAME TO PM TO
$formpmname = "Abe";

////////////////////////////////////////////////////////////////////////////////////////////////////

//ENABLE FORM TO BE EMAILED - 1 = yes, 0 = no
$formemail = "1";

//EMAIL ADDRESS TO EMAIL TO
$formemailaddress = "talk@domain.com";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//REDIRECT OPTIONS:
// 0 - thank you message (thread, reply, pm, or email)
// 1 - redirect to post (thread or reply)
// 2 - redirect to thread (thread only)
// 3 - redirect to forum (thread only)
// 4 - redirect to editpost to upload attachments (thread or reply)
//
// Feel free to change the thank you message if you choose option 0
////////////////////////////////////////////////////////////////////////////////////////////////////

$redirectoption = "0";

$errormessage = "Thank you for submitting a link exchange! We will get back to you soon!"; //This is the thank you message

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//FORCE USER TO ANSWER ALL QUESTIONS - 1 = yes, 0 = no
//If you added or deleted variables, you must edit what it checked for. Search for "$answerall ==" and edit 2 lines under it.
////////////////////////////////////////////////////////////////////////////////////////////////////

$answerall = "1";

////////////////////////////////////////////////////////////////////////////////////////////////////
//TITLE OF FORM (do not use quotation marks or you will get a parse error, besides the quotes around the whole title)
////////////////////////////////////////////////////////////////////////////////////////////////////

$formtitle = "Submit Link Exchange Request";

////////////////////////////////////////////////////////////////////////////////////////////////////
//TITLE OF THREAD/POST/PM/EMAIL (do not use quotation marks in the title or you will get a parse error)
//You may use variables from the form for this.
////////////////////////////////////////////////////////////////////////////////////////////////////

$posttitle = "$formtitle";

////////////////////////////////////////////////////////////////////////////////////////////////////
//PURPOSE OF FORM (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////

$formpurpose = "Submit your link exchange request";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//NORMAL INPUT BOX : QUESTION 1 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////

/        $normalquestion1 = "What is the meaning to life?";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//RADIO BOX CHOICES : QUESTION 1 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////

/        $radioquestion1 = "Choose one of the following choices";

// The following choices must NOT have quotation marks
/        $radiochoice1a = "yes";
/        $radiochoice1b = "no";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//RADIO BOX CHOICES : QUESTION 2 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////
/       
/        $radioquestion2 = "Choose another one of the following choices";
/       
// The following choices must NOT have quotation marks
/        $radiochoice2a = "good";
/        $radiochoice2b = "bad";
/        $radiochoice2c = "both";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//RADIO BOX CHOICES : QUESTION 3 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////
/       
/        $radioquestion3 = "Is it yes or no? If yes, please elaborate";
/       
// The following choices must NOT have quotation marks
/        $radiochoice3a = "yes";
/        $radiochoice3b = "no";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//QUESTION 1 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
$question1 = "Contact Name:";
$explain1 = "Please enter your real name here.";

//QUESTION 2 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
$question2 = "What is your contact Email?";
$explain2 = "Please enter your real email here.";

//QUESTION 3 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
$question3 = "Reciprocal URL:";
$explain3 = "       
The page on your site where you are linking back to us. We do manually review all sites, if you do not link back to us your submission will be not be published.";

//QUESTION 4 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
$question4 = "What is your site name?";
$explain4 = "Enter your site name, what you want the link to be displayed as";

//QUESTION 5 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
$question5 = "What is your website URL?";
$explain5 = "Enter your site URL, this is where the link will be sent to";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//DROP DOWN CHOICES : QUESTION 1 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////
/       
$dropdownquestion1 = "Site Category:";

// The following choices must NOT have quotation marks
$dropdownchoice1a = "Adult Entertainment";
$dropdownchoice1b = "Adult Erotica";
$dropdownchoice1c = "Adult Portals and Directories";
$dropdownchoice1d = "Adult Stores";
$dropdownchoice1e = "General Adult Sites";
$dropdownchoice1f = "Personals and Datings";
$dropdownchoice1g = "Sex Blogs";
$dropdownchoice1h = "Sex Information and Resources";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//LONG TEXT AREA INPUT: QUESTION 1 (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////

/        $longquestion1 = "Please write down a paragraph about yourself.";
/        $longexplain1 = "For example, a bit about your experience in this area.";

////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////
//VB TEXT AREA INPUT: You can only have ONE vb text question. (do not use quotation marks or you will get a parse error, besides the quotes around the whole text)
////////////////////////////////////////////////////////////////////////////////////////////////////

/        $vbtextquestion = "Please write down a paragraph about how you like this forum.";
/        $vbtextexplain = "For example, what makes this forum different from all other forums?";

////////////////////////////////////////////////////////////////////////////////////////////////
////// END OF CUSTOMIZATION ////////////////////////////////////////////////////////////////////
/////  DO NOT CHANGE BELOW UNLESS YOU KNOW WHAT YOU ARE DOING!!! ////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////

// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################
if ($_REQUEST['action'] == '')
{
  $_REQUEST['action'] = "form";
}


$bbuserinfo = $vbulletin->userinfo;

// start navbar
$navbits = array();
$navbits['newthread.php?' . $vbulletin->session->vars['sessionurl'] . "do=$formname"] = $formtitle;

$navbits = construct_navbits($navbits);
eval('$navbar = "' . fetch_template('navbar') . '";');

if ($_REQUEST['action'] == "submit")
{

    if ($answerall == "1")
    {
        if ($normalanswer1 == '' OR $radioanswer1 == '' OR $radioanswer2 == '' OR $radioanswer3 == '' OR $answer1 == '' OR $answer2 == '' OR $answer3 == '' OR $longanswer1 == '')
        {
            $errormessage = "$bbuserinfo[username], you need to answer every question!";
            eval('print_output("' . fetch_template('STANDARD_ERROR') . '");');
            exit();
        }
    }

        $vbulletin->input->clean_array_gpc('p', array(
                'wysiwyg'                        => TYPE_BOOL,
                'message'                        => TYPE_STR
                ));

        if ($vbulletin->GPC['wysiwyg'])
        {
                require_once(DIR . '/includes/functions_wysiwyg.php');
                $vbtextanswer = convert_wysiwyg_html_to_bbcode($vbulletin->GPC['message'], $foruminfo['allowhtml']);
        }
        else
        {
                $vbtextanswer =& $vbulletin->GPC['message'];
        }

    eval('$formsend = "' . fetch_template("$answertemplate") . '";');

        if ($_POST['submit'] == 'Submit')
        {
                if ($formforum == "1")
            {
                $foruminfo = verify_id('forum', $formforumid, 0, 1);
                $forumperms = fetch_permissions($foruminfo[forumid]);
                $newpost['username'] =& $vbulletin->userinfo['username'];
                $newpost['message'] =& $formsend;
                $newpost['title'] =& $posttitle;
                $newpost['parseurl'] = '1';

                        if ($vbulletin->userinfo['autosubscribe'] != -1)
                        {
                                $newpost['emailupdate'] = $vbulletin->userinfo['autosubscribe'];
                        }
                        else
                        {
                                $newpost['emailupdate'] = 9999;
                        }

                        if ($vbulletin->userinfo['signature'] != '')
                        {
                                $newpost['signature'] = '1';
                        }
                        else
                        {
                                $newpost['signature'] = '0';
                        }

                    build_new_post('thread', $foruminfo, array(), array(), $newpost, $errors);

                if ($formpoll == "1")
                {
                    $threadinfo = verify_id('thread', $newpost[threadid], 0, 1);
                    $polloptions = count($polloption);
                    $question = $posttitle;
                    $vbulletin->GPC['options'] = $polloption;

                    $counter = 0;
                    $optioncount = 0;
                    $badoption = '';
                    while ($counter++ < $polloptions)
                    { // 0..Pollnum-1 we want, as arrays start with 0
                        if ($vbulletin->options['maxpolllength'] AND vbstrlen($vbulletin->GPC['options']["$counter"]) > $vbulletin->options['maxpolllength'])
                        {
                            $badoption .= iif($badoption, ', ') . $counter;
                        }
                        if (!empty($vbulletin->GPC['options']["$counter"]))
                        {
                            $optioncount++;
                        }
                    }

                    // Add the poll
                    $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',        $pollpublic);

                    $pollid = $poll->save();
                    //end create new poll

                    // update thread
                    $threadman =& datamanager_init('Thread', $vbulletin, ERRTYPE_STANDARD, 'threadpost');
                    $threadman->set_existing($threadinfo);
                    $threadman->set('pollid', $pollid);
                    $threadman->save();
                        }
            }

            if ($formreply == "1")
            {
                $threadinfo = verify_id('thread', $formreplythreadid, 0, 1);
                $forumperms = fetch_permissions($threadinfo[forumid]);
                $newpost['username'] =& $vbulletin->userinfo['username'];
                $newpost['message'] =& $formsend;
                $newpost['title'] =& $posttitle;
                $newpost['parseurl'] = "1";
       
                        if ($vbulletin->userinfo['autosubscribe'] != -1)
                        {
                                $newpost['emailupdate'] = $vbulletin->userinfo['autosubscribe'];
                        }
                        else
                        {
                                $newpost['emailupdate'] = 9999;
                        }

                        if ($vbulletin->userinfo['signature'] != '')
                        {
                                $newpost['signature'] = '1';
                        }
                        else
                        {
                                $newpost['signature'] = '0';
                        }

                build_new_post('reply', $foruminfo, $threadinfo, $postinfo, $newpost, $errors);
            }

            if ($formpm == "1")
            {
                $vbulletin->GPC['message'] =& $formsend;
                $vbulletin->GPC['title'] =& $posttitle;
                $vbulletin->GPC['recipients'] =& $formpmname;

                $pm['message'] =& $vbulletin->GPC['message'];
                $pm['title'] =& $vbulletin->GPC['title'];
                $pm['recipients'] =& $vbulletin->GPC['recipients'];

                // create the DM to do error checking and insert the new PM
                $pmdm =& datamanager_init('PM', $vbulletin, ERRTYPE_ARRAY);

                $pmdm->set('fromuserid', $vbulletin->userinfo['userid']);
                $pmdm->set('fromusername', $vbulletin->userinfo['username']);
                $pmdm->setr('title', $pm['title']);
                $pmdm->setr('message', $pm['message']);
                $pmdm->set_recipients($pm['recipients'], $permissions);
                $pmdm->set('dateline', TIMENOW);

                // everything's good!
                $pmdm->save();
            }

                if ($formemail == "1")
            {
                vbmail($formemailaddress, $posttitle, $formsend);
            }

            if ($redirectoption == "1")
            {
                $vbulletin->url = 'showthread.php?' . $vbulletin->session->vars['sessionurl'] . "p=$newpost[postid]";
                eval(print_standard_redirect('redirect_postthanks'));
                exit();
            }
            if ($redirectoption == "2")
            {
                $vbulletin->url = 'showthread.php?' . $vbulletin->session->vars['sessionurl'] . "t=$newpost[threadid]";
                eval(print_standard_redirect('redirect_postthanks'));
                exit();
            }
            if ($redirectoption == "3")
            {
                $vbulletin->url = 'forumdisplay.php?' . $vbulletin->session->vars['sessionurl'] . "f=$foruminfo[forumid]";
                eval(print_standard_redirect('redirect_postthanks'));
                exit();
            }
            if ($redirectoption == "4")
            {
                $vbulletin->url = 'editpost.php?do=editpost&' . $vbulletin->session->vars['sessionurl'] . "p=$newpost[postid]";
                eval(print_standard_redirect('redirect_postthanks'));
                exit();
            }
            eval('print_output("' . fetch_template('STANDARD_ERROR') . '");');
            exit();
        }
        else
        {
                  require_once('./includes/class_bbcode.php');
        $parser =& new vB_BbCodeParser($vbulletin, fetch_tag_list());
        $preview = $parser->do_parse($formsend);

                $_REQUEST['action'] = 'form';
        }
}

if ($_REQUEST['action'] == 'form')
{
        // set message box width to usercp size
        $stylevar['messagewidth'] = $stylevar['messagewidth_usercp'];
        $editorid = construct_edit_toolbar($vbtextanswer);

        eval('print_output("' . fetch_template("$maintemplate") . '");');
}
}


WNxWakko 04-08-2006 02:23 AM

hmm, ok I figured out why the fields didnt stay. I see you added a value= in the boxes within the template. Damn that was a pain to upgrade but its done and working perfect. Thank ya very much for that addition.

RDX1 04-08-2006 06:06 AM

Any idea what's wrong with mine?

ChiliVB 04-08-2006 02:01 PM

Quote:

Originally Posted by Abe1
Version 3.4: (04/05/2006)
  • [FIXED] Removed extra line from template.
  • [ADDED] WYSIWYG editor now works besides the regular editor.
  • [ADDED] Preview.
  • [CHANGED] Subscriptions now take from user default setting.
It's hard to upgrade if you made lots of template changes. There are many changes to the template do to the preview feature.

Abe1,

Would you mind giving me an example of the impact for upgrading. I don't want to cause any downtime for my primary form when I upgrade.

I'm thinking it might be best to install this as a "new" hook and not overwrite and so a custom "answer" template can be created in parallel without causing disruption?

Also is it only the answer template that needs "lots of changes" or also the mainhook for the form.

bonjurkes 04-08-2006 10:59 PM

i think its pretty hard to edit that form.

for example i want to remove that longanswer section, i remove the proper parts. The text next to long answer part is disappears but there is a still long answer section here..

I couldnt made the changes that i want to do. I want to use it for application form of moderator.

Is anyone have an example form like that??

Abe1 04-08-2006 11:49 PM

Quote:

Originally Posted by WNxWakko
Hmm, when I click preview it does show me at the top, but all the stuff I entered in the form is gone. I would have to retype it all? What did I do wrong?

You have to make sure the varibles where not changed or edited.

Abe1 04-08-2006 11:51 PM

Quote:

Originally Posted by RDX1
Any idea what's wrong with mine?

Yes. You have make // to block out code. Not just one /.

Abe1 04-08-2006 11:54 PM

Quote:

Originally Posted by ChiliVB
Abe1,

Would you mind giving me an example of the impact for upgrading. I don't want to cause any downtime for my primary form when I upgrade.

I'm thinking it might be best to install this as a "new" hook and not overwrite and so a custom "answer" template can be created in parallel without causing disruption?

Also is it only the answer template that needs "lots of changes" or also the mainhook for the form.

The main template was the edited thing. I had to add mostly 'value=' or something simular so it would pull info when you use the preview.

The answer template I believe was not edited.

The hook was edited a little.

Abe1 04-08-2006 11:55 PM

Quote:

Originally Posted by bonjurkes
i think its pretty hard to edit that form.

for example i want to remove that longanswer section, i remove the proper parts. The text next to long answer part is disappears but there is a still long answer section here..


I couldnt made the changes that i want to do. I want to use it for application form of moderator.

Is anyone have an example form like that??

You have to remove the code from the template also.

RDX1 04-09-2006 12:39 AM

Quote:

Originally Posted by Abe1
Yes. You have make // to block out code. Not just one /.

Thanks :)

OrangeFlea 04-09-2006 06:31 AM

Can this thing be used for reviews? I want users to be able to submit reviews (books, movies, etc.) using a modified template of your hack, which essentially means that the form will have been completed at the time of its posting. In other words, when a user clicks on a thread titled "Flea's Review of Lord of the Rings," I want them to see an already completed form that consists of my personal ratings of the movie's elements (e.g., 5-stars for the plot; 4 stars for the score, etc.).

Also, is there a demo of this hack available?

Abe1 04-09-2006 12:28 PM

Quote:

Originally Posted by OrangeFlea
Can this thing be used for reviews? I want users to be able to submit reviews (books, movies, etc.) using a modified template of your hack, which essentially means that the form will have been completed at the time of its posting. In other words, when a user clicks on a thread titled "Flea's Review of Lord of the Rings," I want them to see an already completed form that consists of my personal ratings of the movie's elements (e.g., 5-stars for the plot; 4 stars for the score, etc.).

Also, is there a demo of this hack available?

Sorry, I have no demo but you can use this hack to do wat you want.

yayvb 04-09-2006 07:36 PM

Hi, I used your hack but was having problems with something. I would ask certain questions like average harvest time, have several radio boxes, etc. But if the person hit EDIT then they could edit the text that was output, but they could edit it as if it was a regular message as opposed to editing the various answers to the questions.

In other words when you click EDIT instead of seeing the same sort of form that you filled out originally preopulated with your answers which you can edit and save, it just shows like you're editing a message.

Is there any way that we can use a different template to edit, one that we show the correct variables, etc.? Would we have to insert an if statement into the edit the editpost.php file, or maybe there is a hook in place.

If you are curious what I am talking about, try editing your hack thread here. You get a message box, and the same checkboxes, etc. that you saw originally. How can we do this? Could you provide code samples for a basic example? I think this would make your script go from being a 8 to being a 12 (on a 1 - 10 scale)!!! :)

Abe1 04-09-2006 08:04 PM

Quote:

Originally Posted by yayvb
Hi, I used your hack but was having problems with something. I would ask certain questions like average harvest time, have several radio boxes, etc. But if the person hit EDIT then they could edit the text that was output, but they could edit it as if it was a regular message as opposed to editing the various answers to the questions.

In other words when you click EDIT instead of seeing the same sort of form that you filled out originally preopulated with your answers which you can edit and save, it just shows like you're editing a message.

Is there any way that we can use a different template to edit, one that we show the correct variables, etc.? Would we have to insert an if statement into the edit the editpost.php file, or maybe there is a hook in place.

If you are curious what I am talking about, try editing your hack thread here. You get a message box, and the same checkboxes, etc. that you saw originally. How can we do this? Could you provide code samples for a basic example? I think this would make your script go from being a 8 to being a 12 (on a 1 - 10 scale)!!! :)

This would be just about in possable since it's one varible once it's posted.


All times are GMT. The time now is 12:19 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.02560 seconds
  • Memory Usage 2,013KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code_printable
  • (4)bbcode_php_printable
  • (18)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (40)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete