The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
|||
|
|||
![]()
I would like to use a setting in a custom profile field to affect the behavior of a javascript. I am now calling the javascript from a vbulletin template, passing a variable defined in the template to call the script.
All I need to figure out is how to equate that variable to "fieldX" for the logged in user (or a default if nobody is logged in). Are there any hints or FAQ's I've missed that could get me moving in the right direction? |
#2
|
||||
|
||||
![]()
You are opening yourself up to a security vulnerabiltiy this way. Its not suggested to use a custom profile field variable in a javascript.
|
#3
|
|||
|
|||
![]()
That's too bad; it would have been very useful. The script cycles images on the forum header, and I wanted to give users the option on how long a delay between cycles. Is there any safer or recommended way to accomplish something like this? Thanks for the quick reply...
|
#4
|
||||
|
||||
![]()
Well you might be able to use a drop down box type profile field since you can could use different preset intervals. I think that would be okay.
It may be a little trickier for you however since I think each drop down is given a numerical value starting at 0. So if your presets were 5 seconds = value in db 0 10 seconds = value in db 1 The variable you will want to use is (I think) $bbuserinfo[fieldx] where x is the custom field # |
#5
|
|||
|
|||
![]()
I spoke too soon, unfortunately, it only works if that field exists. If a user is not logged in, it doesn't exist, and the browser returns a javascript error. I've tried a number of fixes including trying to parse it as a string, trying to use the isNaN function if it isn't a number, but no luck so far. If anyone has stronger skills than I and sees what I'm doing wrong, I'd be really appreciative. Here is the javascript code in my vbulletin header template:
Code:
if ($bbuserinfo[field33]) { tempdelay = ($bbuserinfo[field33]) } else { tempdelay = 15000 } Code:
if (5000) { tempdelay = (5000) } else { tempdelay = 15000 } Code:
if () { tempdelay = () } else { tempdelay = 15000 } |
![]() |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|