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

Reply
 
Thread Tools Display Modes
  #1  
Old 12-01-2010, 03:49 PM
BadgerDog BadgerDog is offline
 
Join Date: Oct 2006
Location: Toronto
Posts: 1,789
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Help with a simple piece of code?

Hello all ...

I'm not a coder, so if anyone could help me with this addition to a mod, I'd appreciate it ...

I have the following code in a template ..

Quote:
<vb:if condition="is_member_of($bbuserinfo,5,6,7,9,10)">

<a class="abipinfo" href="http://www.infosniper.net/index.php?ip_address={vb:raw post.ip}&map_source=1&two_maps=1&overview_map=1&la ng=1&map_type=1&zoom_level=7" target="_blank" /> &nbsp;</a>

</vb:if>
What it does is place a small i icon for IP lookup that appears at the bottom of posts for the user groups specified and it works great.

Now, what can I add that causes the small i icon for IP lookup NOT to appear at the bottom of a post for specific userID's that I list in an array. In other words, I don't want the icon to appear in the postbit for certain useID's, regardless of whether the user group can see them or not.

I hope I explained that ok ..

I would think that it's a simple piece of HTML code to add to this template, so that it excludes specific User ID's and doesn't execute, but rather just returns to the bottom of the code?

If the template above is the wrong place to put the UserID exclusion, then perhaps it belongs in the "Show Postbit Icon" PLUGIN for the mod.

Quote:
$templater = vB_Template::create('australiabound_post_control_b it');
$templater->register('post', $post);
$template_hook['postbit_controls'] .= $templater->render();
I've tried several times to get an answer in the mod thread itself, but no luck, so I came here.

Thanks for any feedback ..

Regards,
Doug
Reply With Quote
  #2  
Old 12-04-2010, 04:37 PM
BadgerDog BadgerDog is offline
 
Join Date: Oct 2006
Location: Toronto
Posts: 1,789
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Anyone able to help?

Even if it's just the HTML line that logically says:

If the vBulletin userid number equals (x,y,z) then do not execute the following code ...

If I had that much, I could probably figure it out myself from there on ..

Thanks for any help ...

Regards,
Doug
Reply With Quote
  #3  
Old 12-04-2010, 04:41 PM
Lynne's Avatar
Lynne Lynne is offline
 
Join Date: Sep 2004
Location: California/Idaho
Posts: 41,180
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Do something like:
HTML Code:
<vb:if condition="is_member_of($bbuserinfo,5,6,7,9,10) AND !in_array($bbuserinfo['userid'], array(x,y,z))">
I think that should work. Try it on your test site.
Reply With Quote
  #4  
Old 12-04-2010, 04:57 PM
BadgerDog BadgerDog is offline
 
Join Date: Oct 2006
Location: Toronto
Posts: 1,789
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lynne View Post
Do something like:
HTML Code:
<vb:if condition="is_member_of($bbuserinfo,5,6,7,9,10) AND !in_array($bbuserinfo['userid'], array(x,y,z))">
I think that should work. Try it on your test site.
Thank you Lynne ....:up:

Very gracious of you ...

I will try that and let you know, but I do see how you've captured what I need in one line of code, even though I'm an old Fortan programmer left over from the 1960's.

Regards,
Doug

--------------- Added [DATE]1291489730[/DATE] at [TIME]1291489730[/TIME] ---------------

Ok, I tried that ...

The problem is that it's excluding any userID in the array from seeing the IP Icon mentioned on any other member's post.

I think I have the check I'm trying to get in the wrong place and perhaps it should actually be in the PLUGIN shown?

I want to have any member who is in the userID array, to NOT have their own IP icon shown to other members, effectively letting them OPT OUT of having it displayed due to privacy concerns.

Am I explaining that any better?

Thanks again ...

Regards,
Doug
Reply With Quote
  #5  
Old 12-04-2010, 05:26 PM
Lynne's Avatar
Lynne Lynne is offline
 
Join Date: Sep 2004
Location: California/Idaho
Posts: 41,180
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I don't fully understand the condition. I think what you may be wanting to do is substitute $post['userid'] instead of $bbuser['userid']. Then you are looking at the userid of the person who's post it is.
Reply With Quote
  #6  
Old 12-04-2010, 05:55 PM
BadgerDog BadgerDog is offline
 
Join Date: Oct 2006
Location: Toronto
Posts: 1,789
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

My apologies for the lack of clarity ....

The mod displays an icon at the bottom of EVERY post, that effectively let's members of specific user groups ie: <vb:if condition="is_member_of($bbuserinfo,5,6,7,9,10) see that icon. When they click on it, they can view a Google Map of the user's IP location and it's pretty accurate.

Some members have asked if they could OPT OUT of having that icon displayed at the bottom of their posts, so I thought (perhaps incorrectly), that I could add another condition to the mod that would ONLY display that IP icon at the bottom of any posts if the user id WAS NOT in the !in_array($bbuserinfo['userid'], array(x,y,z))">

Effectively, the IP icon would not appear (the mod doesn't execute) if they are a member of that array group.

Does that help Lynne?

I think the condition to OPT OUT probably belongs in the PLUGIN shown in the first post instead of the template shown?

Although, perhaps you're right and I should be checking to see if the post ID belongs to a certain userid and therefore it wouldn't show the IP icon for only those member's posts?

Thanks again ...

Regards,
Doug
Reply With Quote
  #7  
Old 12-04-2010, 07:57 PM
Lynne's Avatar
Lynne Lynne is offline
 
Join Date: Sep 2004
Location: California/Idaho
Posts: 41,180
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

The opt out can go in either place. I think, as I suggested above, that you want to use $post['userid'] instead of $bbuserinfo['userid'] since the condition is related to the userid of the poster, not the viewer.
Reply With Quote
  #8  
Old 12-04-2010, 08:23 PM
BadgerDog BadgerDog is offline
 
Join Date: Oct 2006
Location: Toronto
Posts: 1,789
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lynne View Post
The opt out can go in either place. I think, as I suggested above, that you want to use $post['userid'] instead of $bbuserinfo['userid'] since the condition is related to the userid of the poster, not the viewer.
Thanks Lynne ....

So, for clarity ...

If I place this at the start of a sequence of code:

<vb:if condition="is_member_of($bbuserinfo,5,6,7,9,10) AND !in_array($post['userid'], array(2,12751))">

code to execute

</vb:if>

... then only Usergroups 5,6,7,9,10 plus ANY user who is NOT Userid 2 or 12751 will have the code executed?

Anyone else would skip past the </vb:if> to any code after it ... correct?

Regards,
Doug

Edit: Follow up Lynne ... added the code as you suggested changing to $post['userid'] and it worked PERFECT !... thank you very much for your help ... :up:
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 06:57 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05309 seconds
  • Memory Usage 2,244KB
  • Queries Executed 13 (?)
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_html
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (8)post_thanks_box
  • (8)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (8)post_thanks_postbit_info
  • (8)postbit
  • (8)postbit_onlinestatus
  • (8)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_postinfo_query
  • fetch_postinfo
  • 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