PDA

View Full Version : Checking a profile field's value and executing javascript


m0nde
04-29-2016, 10:06 PM
I've created a custom profile field with several radio buttons. Each radio button has a text value assigned to it and the user must choose a single value from this list.

I want to branch depending on the string value of this field in a template and execute a separate script based on each value.

What I've tried is: <vb:if condition="$memberinfo['field6'] = 'x'"><script type"text/javascript" src="x.js"></script></vb:if>
<vb:if condition="$memberinfo['field6'] = 'y'"><script type"text/javascript" src="y.js"></script></vb:if>
<vb:if condition="$memberinfo['field6'] = 'z'"><script type"text/javascript" src="z.js"></script></vb:if>

But all of the scripts execute at once.

Dave
04-29-2016, 11:22 PM
Try changing the single = (declaring a variable) to == (comparing a variable).

m0nde
04-30-2016, 12:35 AM
Thank you. I'm not at all experienced in doing any of this.

--------------- Added 1461985905 at 1461985905 ---------------

In the end, in addition to my error with declaring instead of comparing values, I found that I needed to use $bbuserinfo instead of $memberinfo. I still don't understand when to use which.

Scandal
05-01-2016, 03:11 PM
Thank you. I'm not at all experienced in doing any of this.

--------------- Added 1461985905 at 1461985905 ---------------

In the end, in addition to my error with declaring instead of comparing values, I found that I needed to use $bbuserinfo instead of $memberinfo. I still don't understand when to use which.
You should use $bbuserinfo for the user who load the page.
If you need to apply code for the user of an item (for example on the postbit/postbit_legacy), you could use $post['fieldX'] (= it will return the fieldX value for the user of the post). ;)