vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB4 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=252)
-   -   Profile Field Link (https://vborg.vbsupport.ru/showthread.php?t=240574)

JohnMcClane 04-16-2010 11:06 AM

Profile Field Link
 
I'm planning on building a new feature for my forum which requires members to turn it on via a profile field in the usercp. Is there a way I can display a link elsewhere on my forum that members can click that will change the profile field?

For example-

"Click Here to Enable xxxxx" or "Click Here to Disable xxxxx"

Many thanks!

John

NickyDee 04-16-2010 03:20 PM

Quote:

Originally Posted by JohnMcClane (Post 2022119)
I'm planning on building a new feature for my forum which requires members to turn it on via a profile field in the usercp. Is there a way I can display a link elsewhere on my forum that members can click that will change the profile field?

For example-

"Click Here to Enable xxxxx" or "Click Here to Disable xxxxx"

Many thanks!

John

You can use an if statement on the user profile field to display code.

It will depend on what you are trying to achieve and where exactly. Have a look at this:
http://www.vbulletin.com/forum/showt...-Profile-Field recent discussion about it.

Off the top of my head I suspect you want something like inserted into the forumhome or some such template

Code:

<vb:if condition="$post['fieldx'] == y"> HTML CODE YOU WANT TO EXECUTE </vb:if>
Where 'x' is the id number for user profile field and 'y' is what you want it to be equal to.

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

Not sure what level your coding is at so I apologise if this is stuff you already know, but remember with code conditions that;

== means "if equal to".

= means "set value"

!= means "if NOT equal to".

JohnMcClane 04-16-2010 07:41 PM

I'm not sure if we're on the same page. What I want basically, is a way for members to change their user profile field selection by clicking a link.

Say for example I have two banners on my forum, one saying "Enable feature" and one saying "Disable Feature"

Each banner would be linked to something like this for example;

www.site.com/forum/profile-field9=enabled

or

www.site.com/forum/profile-field9=disabled

I just basically want a quicker way for members to change their user profile field preferences rather than going to their usercp every time they wish to change.

Thanks :)

NickyDee 04-17-2010 02:05 AM

Ah okay John that makes sense, sorry for the confusion.

I'm not 100% sure on this as its not something I've ever tried to do myself. The problem that we have in achieving it is that updating a user profile field requires editing a database entry (which will need a PHP script), but the forum homepage isn't setup to do that. So you'd probably have to write pretty heavy custom-code to get this to work. But, there is a simpler compromise solution that might be a bit easier, off the top of my head;

Make a conditional statement that says if user profile field is null (empty), display an HTML link and message to your /forum/profile.php?do=editprofile.

You can go two steps further (depending on how big a deal this profile field is for your board), which is to make it compulsary to have a setting for it in the profile field manager. This way, when they visit /forum/profile.php?do=editprofile they will have to save a selection before they can leave.

The second step is to make the contents of the conditonal statement a redirect. So if the user hasn't completed that profile field, they are redirected to /forum/profile.php?do=editprofile where they must then complete it.

Of course if you just want to save users the trouble of going to settings --> edit profile you could cut out one step just by adding a link straight to /Forum/profile.php?do=editprofile

I should point out that I may not be the best person to offer advice on this topic as user profile fields aren't an area of vbulletin that I have particularly played with and there may well be limitations that I am not aware of or easier ways of achieving what you want. I'm interested to see if you find a way to get your idea working, because it could potentially have a lot of applications.


All times are GMT. The time now is 10:10 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.00932 seconds
  • Memory Usage 1,725KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code_printable
  • (1)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (4)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete