Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 07-23-2010, 09:10 PM
BirdOPrey5's Avatar
BirdOPrey5 BirdOPrey5 is offline
Senior Member
 
Join Date: Jun 2008
Location: New York
Posts: 10,610
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Custom Plugin Help- Why isn't this working?

First I know for a fact I had this working 2 days ago... I don't know what I changed
but now it's not working at all... What this used to do is IF the system was turned on it would display a custom signature template... the custom signature template (hidden_sigs) is my working template modification that puts the signature in a 'spoiler' box to hide it from display unless someone clicks on the spoiler button.

The plugin code is:

Code:
global $vbulletin;
if ($vbulletin->options['hiddensigson'])
{
   require_once(DIR . '/includes/class_bbcode.php');
   $bbcode_parser =& new vB_BbCodeParser($GLOBALS['vbulletin'], fetch_tag_list(),true);
   $post['signature'] =  $bbcode_parser->parse($post['signature'],$vbulletin->options['validfid'],true);
   eval('$template_hook[postbit_signature_start] .= " ' . fetch_template('hidden_sigs') . '";');
   $post['signature'] = '';
}
Two problems... first is the eval() function line gives me the following error on top of a page when I view a post:
Quote:
Warning: Missing argument 2 for is_member_of(), called in [path]/includes/class_postbit.php(265) : eval()'d code(8) : eval()'d code on line 6 and defined in [path]/includes/functions.php on line 470
When I comment out that line I don't get the error so I'm sure that line is the cause but I've checked in literally 10 times and it looks exactly right to me.

Second, and possibly the bigger issue, for some reason this code is no longer working at all, I know I had this hiding sigs the other day just fine- then I tried to add a new option to it and it all went to hell... now I've been dissecting this line by line to see what I changed but everything looks right... I've commented out the IF statement but it still doesn't work.

FYI the last line of the plugin changes the sig to an empty string because the custom template already displays the sig.

The plugin is on postbit_display_start

Does anyone see what I'm missing here? In english the code is basically:
IF the system is enabled
{
Turn on BBCode Parser
Sig = The parsed Sig code
Display 'hidden_sigs' template
Sig = Blank
}
Reply With Quote
  #2  
Old 07-23-2010, 10:20 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

The eval code is fetching the template "hidden_sigs", so I'd guess that maybe the error is in there. Does that template use "is_member_of()"?
Reply With Quote
  #3  
Old 07-23-2010, 10:37 PM
BirdOPrey5's Avatar
BirdOPrey5 BirdOPrey5 is offline
Senior Member
 
Join Date: Jun 2008
Location: New York
Posts: 10,610
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

no the template is just an if conditional, if the signature exists display it in the spoiler box... the is_memeber_of is something I was going to add but never got that far.

Template:

Code:
	<if condition="$post[signature]">
		<!-- sig -->
			<div>
				__________________<br />
			 <if condition="is_member_of($hiddensiggroups)">
                          <div style="margin:20px; margin-top:5px"> 
                           <div class="smallfont" style="margin-bottom:2px"> 
                           <input type="button" value="Show Signature" 
                           style="font- size:10px;margin:0px;padding:0px;" 
                           onClick="if (this.parentNode.parentNode.getElementsByTagName
                           ('div')[1].getElementsByTagName('div')[0].style.display != '') 
                           { this.parentNode.parentNode.getElementsByTagName(
                           'div')[1].getElementsByTagName('div')[0].style.display = ''; 
                           this.innerText = ''; this.value = 'Hide Signature'; } else 
                           { this.parentNode.parentNode.getElementsByTagName('div')
                           [1].getElementsByTagName('div')[0].style.display = 'none'; 
                           this.innerText = ''; this.value = 'Show Signature'; }"> 
                           </div> <div style="margin: 0px; padding: 6px; border: 
                           1px inset;"> <div style="display: none;">
                            $post[signature]
                            </div></div></div>
<else />
  $post[signature]
</if>
			</div>
<!-- / sig -->
		</if>
EDIT- hmmm.. yeah I guess I did add the is_memeber_of... must have been so late I forgot about it- ok well that explains why the sig isn't working... I guess this is the cause of both errors... Thanks.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 11:18 PM.


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.03605 seconds
  • Memory Usage 2,181KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (2)bbcode_code
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (3)post_thanks_box
  • (3)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (3)post_thanks_postbit_info
  • (3)postbit
  • (3)postbit_onlinestatus
  • (3)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.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
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete