The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Advanced Templates: Dynamic Templates Changing according to different conditions Details »» | |||||||||||||||||||||||||||
Advanced Templates: Dynamic Templates Changing according to different conditions
Developer Last Online: Nov 2023
This hack allows you to design dynamic vb templates which change themselves according to different conditions. Thus you can customize your board very powerfully with "intelligent/interactive" templates. It uses the same "conditional concept" just like my Webtemplates and Dynamic Forum Announcements Hack. With conditionals you can program your templates to:
The Hack's Features:
Vbulletin v.3 has been announced to have "conditional" concept in templates, however my hack wasn't inspired by it at all, because I'm using the conditionals in my Webtemplates hack since March 2002 so in fact vb developers might be inspired by me. My Dynamic Forum Announcements hack uses the same concept for forum home announcements too.. (Wait for my other hacks depending on conditionals cause I really like them, they are really powerful and customizable) Performance Issues The hack does NOT add any MYSQL connections. It just process your already retrieved templates in a function to parse the hack conditionals. Thus the performance is IMO quite bearable. However please notice that if a template has a conditional in it, the hack have to parse it before displaying it and technically this parsing is done with PHP's preg_match command which is known as a powerful but slow command. So does it cause any performance problems? In most cases no. But if the conditionals are applied in a very frequently used and/or long template and/or you used too many conditionals in one template AND your traffic or server load is high, this MAY increase your PHP processing time whenever this template is displayed as the hack has to deal with the conditionals everytime this template is called. I suggest applying Teck's Microstat's hack and observe the PHP running time with that hack after you applied a conditional especially in a frequently used template (eg. postbit). If it slows down the display, simply reduce your conditional count in that template or delete the conditional or remove the hack altogether. Personally I dont have any performance problems in my own board related to this hack but just wanted to give my 2 cents anyway especially for high-traffic boards.. If you liked the hack (I guess you will), I strongly suggest checking out my Webtemplates hack which provides exactly the same feature for your NON-VB pages. Also please click INSTALL if you use the hack, thank you.. 09.Sep.2002 Bug Fix: If you installed the hack before 09.Sep.2002 please download the instructions again and reapply step 2, since I made an update for a small bug fix. There was a variable name collision which causes a problem with email validation screen which uses the same variable so I changed my variable's name. If you are downloading the hack now, go ahead.. The code you download is already fixed.. 07.Oct.2002 UPDATE: I updated the hack code, so that people who have enabled template debugging in their Admin CP/vb Settings can also use the hack. Also small modification applied to increase template parsing time. If you installed the hack before my update, you may choose to reinstall (not necessary). If you are a new hack user, the instructions you download is already new version's. Enjoy! Logician \\=^)) Show Your Support
|
Comments |
#162
|
||||
|
||||
@ Logician, is there a way to make a condition for Forumhome Moderators?
I want to add the moderators under Forum-description like here on vb.org [moderated by: xxx, xxx, xxx]. But when the forum isn´t moderated the [moderated by: xxx] is gone... is there a way to do this with this hack?? Thanks in advance Kars |
#163
|
||||
|
||||
Quote:
[[($moderator[userid])]] Moderated by:.... [[/($moderator[userid])]] |
#164
|
||||
|
||||
@ Logician, do you mean i should place this codition in forumhome_forumbit_level2_post with the userids of my moderators? Can you show me a examble, please?
Thanks Kars |
#165
|
||||
|
||||
I tried that one and a few others and could never find one that worked. I ended up having to put code in the index.php to catch it.
|
#166
|
||||
|
||||
Quote:
Code hacking is a better solution in this example anyway since forumhome templates are usually long and frequently called templates. So apply the hack into the code is more performance friendly than applying into the template, especially for large traffic boards.. |
#167
|
||||
|
||||
Thanks Logician!!
I have PM?t Boofo about that!! Kars |
#168
|
||||
|
||||
Quote:
For you, Sinan, gladly. Quote:
|
#169
|
||||
|
||||
Hi Logician,
Thanks for your reply, but omehow I still getting the same error. Quote:
|
#170
|
||||
|
||||
Quote:
|
#171
|
||||
|
||||
Ya, last time I used to use notepad. But I've already no longer using notepad but using editplus instead. :bored:
|
#172
|
||||
|
||||
Hi Logician,
Ya, last time I used to use notepad. But I've already no longer using notepad but using editplus instead. BTW, I'd like to take this opportunity to thanks you by keep giving support to me as whenever there's a need(s) and there's always a will from you . Anyway, I think my forum already gone case or maybe can said close shop soon. It had been almost a week, till now still can't even figure out any anythings.. Really in a lost! :hurt: |
#173
|
||||
|
||||
Quote:
|
#174
|
|||
|
|||
:banana: I can only dream of being so creative..
Outstanding hack. Thank You :banana: :banana: |
#175
|
|||
|
|||
Greetings,
First of all, this is a wonderful hack and I love you to death for it, as it's very useful. I have one quick question for you: I'm trying to make it so that a certain message is displayed to a user if they do not have a custom title. In showthread.php, I believe this is a boolean named "$avatarenabled". How would I be able to make this message appear if they do not have an avatar enabled? I tried this: [[(!($avatarenabled))]] You do not have an avatar enabled. [[/(!($avatarenabled))]] But it simply threw up: [[(!(0))]] You do not have an avatar enabled. [[/(!(0))]] What stupid error am I making here? Any help would be greatly appreciated. Once again, thank you very much! |
#176
|
||||
|
||||
Try this:
[[(!$avatarenabled)]] You do not have an avatar enabled. [[/(!$avatarenabled)]] |
#177
|
||||
|
||||
Quote:
You do not have an avatar enabled. [[/(!$avatarenabled)]] will do the trick provided that your variable is correct (I didnt check it but it seems correct according to your outcome) |
#178
|
||||
|
||||
you are fast Bob! (and invisible) hehe
|
#179
|
||||
|
||||
Quote:
Being invisible sometimes has it's advantages. Chen taught me that trick. |
#180
|
|||
|
|||
Quote:
Thank you very much for your quick response, but apparently I have the wrong variable. Here is what I am attempting to accomplish, and if anybody could reveal which variable I am looking for, I would be forever in your debt. What is the variable that determines if a user has a custom title or if the user simply has the default user title that shows up for X posts? That is, by default, people have their custom titles changed when they reach X posts. However, an admin can give them a custom title that does not change despite the number of posts they make. Does anybody know what variable this is or how I could possibly find it? I'd like to make the postbit layout slightly different for people who have been given a custom title by the admins, which is why I'm asking. Thank you very much! |
#181
|
||||
|
||||
Quote:
so conditional is PHP Code:
Quote:
|
#182
|
||||
|
||||
How would that custom title condition work in the getinfo template (profile)?
|
#183
|
||||
|
||||
$userinfo[customtitle] $userinfo[usertitle]
|
#184
|
||||
|
||||
Thank you. sir.
I had to use ==1 to make it work, though. ==2 didn't do anything for some reason. |
#185
|
|||
|
|||
Quote:
However, the result isn't exactly what I was attempting to accomplish. What I'm looking to do is the following: When a person without a custom title posts, I would like his postbit information to include a link that says "please click here to get your custom title." The current suggested method displays that "please click here" message on the posts for *everybody* who lacks a custom title, that is, if Person A is logged in to the forums and lacks a custom title (and starts a thread), Person B replies and he lacks a custom title as well, both posts will read "please click here to get your custom title" to both person A and B. Is there any way for person A to see the message under only person A's post, and not everybody else who lacks a custom title as well? Sorry for the incoherency of this post, I'm having a difficult time explaining myself. Also, once again, thank you VERY much for your time, help, and patience. |
#186
|
||||
|
||||
Quote:
[[($post[customtitle]==0 AND $post[userid]==$bbuserinfo[userid])]] please click here to get your custom title [[/($post[customtitle]==0 AND $post[userid]==$bbuserinfo[userid])]] |
#187
|
|||
|
|||
Quote:
|
#188
|
||||
|
||||
Sinan, how could I make it so it would show [high]Subscribe[/high] to a user if they are NOT subscribed to a thread and show [high]Unsubscribe[/high] if they ARE subscribed to a thread? I think it can be done but I'm not sure of the exact conditional to use.
|
#189
|
||||
|
||||
Quote:
Quote:
|
#190
|
||||
|
||||
What I am trying to do is have a Subscribe link (Next to the Moderated By link) that will change to Unsubscribe and Subscribe according to the user's subscription. This will be on the forum home and forumdisplay and it will be for forums.
Quote:
|
#191
|
||||
|
||||
Quote:
Quote:
|
#192
|
||||
|
||||
Quote:
I tried to use the forum subscription hack that is out and it added an extra query for each forum on the forumhome. Is there a way to do it in one query for all forums or at least a few less queries? Quote:
|
#193
|
||||
|
||||
Quote:
|
#194
|
||||
|
||||
Quote:
|
#195
|
||||
|
||||
I wonder if this can be done.
[[($bbuserinfo[usergroupid]==2 $bbuserinfo[usergroupid]==3 OR $bbuserinfo[usergroupid]==4 OR $bbuserinfo[usergroupid]==5 OR $bbuserinfo[usergroupid]==6 OR $bbuserinfo[usergroupid]==7)]] $forumbits [[/($bbuserinfo[usergroupid]==2 $bbuserinfo[usergroupid]==3 OR $bbuserinfo[usergroupid]==4 OR $bbuserinfo[usergroupid]==5 OR $bbuserinfo[usergroupid]==6 OR $bbuserinfo[usergroupid]==7)]] In doing this I would like to show all members the $forumbits and just visitors the rest of the forum home. I know I could just code the index.pho with. if ($bbuserinfo[userid]==0) { show_nopermission(); } But I would like guest to see the shoutbox and whos online and not just the nopermission please register template. Also the show_nopermission I would like that to replace the $forumbits for guests only. |
#196
|
||||
|
||||
yeah seems applicable, why dont you give a shot?
|
#197
|
||||
|
||||
With a few changes it worked.
Just one more question can I do this. [[($bbuserinfo[usergroupid]==1)]] " I want to get a template from the database and not put my html in here. How would I do that?" [[/($bbuserinfo[usergroupid]==1)]] Thanks for the help. I have attached my forumbits html. |
#198
|
||||
|
||||
Quote:
|
#199
|
|||
|
|||
Let me ask you if this is possible
I have a custom profile entry "profilefieldid=5" I want to have a different template based on what the user puts there, example if the user puts: rabit or Rabit = template A / ckicken or Chicken = template b (if they put something it's not defined, then shows nothing of course) can it be ? |
#200
|
||||
|
||||
[[(strtolower($bbuserinfo[field5])=='rabit')]]
Template A [[/(strtolower($bbuserinfo[field5])=='rabit')]] [[(strtolower($bbuserinfo[field5])=='chicken')]] Template B [[/(strtolower($bbuserinfo[field5])=='chicken')]] |
#201
|
|||
|
|||
COOL
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|