Thread: Profile Enhancements - Friendster style hyperlinked profile fields
View Single Post
  #40  
Old 12-06-2004, 09:29 PM
zennation zennation is offline
 
Join Date: Dec 2004
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Took the code and hacked it so it should be able to search checkboxes etc...

Let me know if any problems...

Code:
// *********************
// CUSTOM PROFILE FIELDS

// HACK : START : FRIENDSTER STYLE LINKS 
//$profilefields = $DB_site->query(" 
//  SELECT profilefieldid, required, title, type, data, def, height 
//  FROM " . TABLE_PREFIX . "profilefield 
//  WHERE form = 0 " . iif(!can_moderate(), " 
//    AND hidden = 0") . " 
//  ORDER BY displayorder 
//"); 

$profilefields = $DB_site->query(" 
  SELECT profilefieldid, required, title, type, data, def, height, searchable 
  FROM " . TABLE_PREFIX . "profilefield 
  WHERE form = 0 " . iif(!can_moderate(), " 
    AND hidden = 0") . " 
  ORDER BY displayorder 
"); 
// HACK : END : FRIENDSTER STYLE LINKS 

while ($profilefield = $DB_site->fetch_array($profilefields)) 
{ 
  exec_switch_bg(); 
  $profilefieldname = "field$profilefield[profilefieldid]"; 
  if ($profilefield['type'] == 'checkbox' OR $profilefield['type'] == 'select_multiple') 
  { 
    $data = unserialize($profilefield['data']); 
	
    foreach ($data AS $key => $val) 
    { 
      if ($userinfo["$profilefieldname"] & pow(2, $key)) 
      { 
        $profilefield['value'] .= iif($profilefield['value'], ', ') . $val; 
		$profilefield['value2'] .= iif(isset($profilefield['value2']), ',') .vb_number_format($key+1); 		
      } 
    } 
  } 
  else 
  { 
    $profilefield['value'] = $userinfo["$profilefieldname"]; 
  } 
  if ($profilefield['value'] != '') 
  { 
    $show['extrainfo'] = true; 
    // HACK : START : FRIENDSTER STYLE LINKS 
    if ($profilefield['searchable']) { 
      $profileLinks = explode(',', $profilefield['value']); 
      $profileLinks2 = explode(',', $profilefield['value2']); 
      for ($ii = 0; $ii < count($profileLinks); $ii++) 
	  { 
	    if ($profilefield['type'] == 'checkbox' || $profilefield['type'] == 'select_multiple' ) {
			if ($profilefield['type'] == 'checkbox') {
				$profileLinks[$ii] = '<a href="'.$vboptions[bburl].'/memberlist.php?do=getall&'.$profilefieldname.'[]='.$profileLinks2[$ii].'">'.trim($profileLinks[$ii]).'</a>'; 							
			} else {
				$profileLinks[$ii] = '<a href="'.$vboptions[bburl].'/memberlist.php?do=getall&'.$profilefieldname.'='.$profileLinks2[$ii].'">'.trim($profileLinks[$ii]).'</a>'; 							
			}	        
	    } else {    
	        $profileLinks[$ii] = '<a href="'.$vboptions[bburl].'/memberlist.php?do=getall&'.$profilefieldname.'='.urlencode(trim($profileLinks[$ii])).'">'.$profileLinks[$ii].'</a>'; 		
	    }
      } 

      $profilefield['value'] = implode(',', $profileLinks); 
    } 
    // HACK : END : FRIENDSTER STYLE LINKS 

  } 
  eval('$customfields .= "' . fetch_template('memberinfo_customfields') . '";'); 

} 
// END CUSTOM PROFILE FIELDS
// *************************
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01468 seconds
  • Memory Usage 1,771KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_code
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.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_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • 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
  • showpost_complete