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

Reply
 
Thread Tools Display Modes
  #1  
Old 09-20-2010, 08:04 AM
squishi squishi is offline
 
Join Date: May 2006
Location: Frankfurt
Posts: 282
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default number variables in templates

In the newattachmentbit template, I want to give every upload a number.
In php, I would just use a variable and increment it for every uploaded attachment.
How do I do this in a vbulletin template?

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

I realize this could be done easily by using an ordered list in the newattachmentbit template instead of those ancient tables.

I just tried it out with the list. It has not the effect that I want, though.
If I use a list and remove the first uploaded attachment in the list, the list gets renumbered.
I want the numbers to remain the same after removing an image from the list.
Because I sometimes get requests like "attachment 1,4,13,25 should be removed". If the pics get renumbered, it creates a mess.

So I must use an incrementing variable to achieve this.
Reply With Quote
  #2  
Old 09-20-2010, 09:56 AM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I saw this idea a while ago in a mod - you can use the side-effect of an if condition to increment a counter, like:

Code:
<if condition="++$foo"></if>
$foo // foo is 1

<if condition="++$foo"></if>
$foo // foo is 2
Reply With Quote
  #3  
Old 09-20-2010, 01:00 PM
squishi squishi is offline
 
Join Date: May 2006
Location: Frankfurt
Posts: 282
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks for the info, kh99. That is very useful.
Is there also a way to initialize the variable first? Because the above is not strictly correct. It would probably fill my php errors log files pretty quickly.
Reply With Quote
  #4  
Old 09-20-2010, 01:30 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yeah, I think you can do:

Code:
<if condition="$foo = 1"></if>
(but then you'll probably be warned that you might not have wanted to do that).

or maybe

Code:
<if condition="($foo = 1) == 1"></if>
would get rid of any warning.

(I haven't tried these)

BTW, what's not strictly correct about the one above, just the fact that it's not initialized? If the problem is that it's not initlaized before it's used anywhere at all, then I guess the only thing you can do is initialize it in a plugin (or use some existing variable)
Reply With Quote
  #5  
Old 09-20-2010, 01:47 PM
squishi squishi is offline
 
Join Date: May 2006
Location: Frankfurt
Posts: 282
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Good stuff, kh99. I'll try it out.

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

I tried it out. Unfortunately, it shows the same behavior as the ordered list.
When I remove one of the attachments, the others get renumbered.
I would like the original numbers to stay the same.
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 02:33 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.03621 seconds
  • Memory Usage 2,194KB
  • 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
  • (3)bbcode_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)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