The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
||||
|
||||
Validating Datamanager Values?
Hello,
I have added two simple html text fields in newthread template and now want to save them using datamanager and show them in the showthread template. First, I have placed them in GPC Array (in newthread_post_start hook): PHP Code:
PHP Code:
PHP Code:
Fatal error: Field domainforsalename is not defined in $validfields in class vB_DataManager_Thread in [path]/includes/class_dm.php on line 515 What should I do? |
#2
|
|||
|
|||
(Oops, sorry - I see you already added those fields.)
But you might try doing it at the threaddata_start hook, because it could be the calls to setr() that are causing the error. |
#3
|
||||
|
||||
Thanks,
Now it get saved without any error. How do I check if they got saved properly? Also, how may I call them in my templates? Code:
$post['domainforsalename'] Code:
{vb:raw post.domainforsalename} |
#4
|
|||
|
|||
Quote:
SELECT domainforsalename, domainforsalebnprice FROM thread WHERE threadid = ID Quote:
|
#5
|
||||
|
||||
I am getting two blank fields.. Is that normal?
Shouldn't it be filled from the values from the text fields? http://i41.tinypic.com/1qg9r8.png I am trying to display the info in showthread template. Thanks |
#6
|
|||
|
|||
The fields shouldn't be blank. I think the problem is that at the newpost_process hook the new thread hasn't been created yet. When that hook code runs, there is an existing Thread_Firstpost data manager, so you probably want to use that instead of creating your own thread data manager. So when you add the valid fields, use hook threadfpdata_start instead of threaddata_start. Then at newpost_process, try just doing this:
Code:
if ($type == 'thread') { $dataman->setr('domainforsalename', $post['domainforsalename']); $dataman->setr('domainforsalebnprice', $post['domainforsalebnprice']); } |
#7
|
||||
|
||||
Awesome!!
Now the columns are being populated. One more problem, I am using Code:
<h2 class="blockhead">Domain Details</h2> <div class="blockbody formcontrols"> <h3 class="blocksubhead">The Domain Details</h3> Domain Name: $post['domainforsalename'] Domain Price: $post['domainforsalebnprice'] </div> Domain Name: $post['domainforsalename'] Domain Price: $post['domainforsalebnprice'] What I am doing wrong? --------------- Added 14 Feb 2012 at 00:40 --------------- Okay.. I got it working Just needed to use {vb:raw threadinfo.domainforsalename} at SHOWTHREAD template. Thanks Kevin for helping me out and all the hardwork you have done for me. --------------- Added 14 Feb 2012 at 01:21 --------------- Kevin, I am stuck again I need to show the information on threads only in a single forum. I tried the conditions in SHOWTHREAD template. Code:
<vb:if condition="$forum[forumid] == 61"> <h2 class="blockhead">Domain Details</h2> <div class="blockbody formcontrols"> <h3 class="blocksubhead">The Domain Details</h3> Domain Name: {vb:raw threadinfo.domainforsalename} Domain Price: {vb:raw threadinfo.domainforsalebnprice} </div> </vb:if> Code:
<vb:if condition="in_array($forum['forumid'], array(61))"> <h2 class="blockhead">Domain Details</h2> <div class="blockbody formcontrols"> <h3 class="blocksubhead">The Domain Details</h3> Domain Name: {vb:raw threadinfo.domainforsalename} Domain Price: {vb:raw threadinfo.domainforsalebnprice} </div> </vb:if> If my codes are wrong, then atleast the blockhead, blockbody and blocksubhead should appear. |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|