vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 2.x Full Releases (https://vborg.vbsupport.ru/forumdisplay.php?f=4)
-   -   [Mini-Hack] Make select function for admin functions. (https://vborg.vbsupport.ru/showthread.php?t=47963)

Slynderdale 01-20-2003 10:00 PM

[Mini-Hack] Make select function for admin functions.
 
I recently installed the gender hack on my version 2.2.9 forum and looked through adminfunction.php and couldnt find a function to make a select menu si i made my own and figured I'll release it in case it would be helpful to others, any ways, here it is:

PHP Code:

// ###################### Start makeselectcode #######################
function makeselectcode ($title,$name,$selectarray,$value="select_null") {
  
// Makes code for select menu's 
  
unset($content);
  if (
count($selectarray)) {
    
$content "<select name='".$name."'>\n"
    while (list(
$select_name,$select_value) = each($selectarray)) {
      if (
$select_name) {
          unset(
$selected);
          if ((
trim(strtolower($select_value)) == trim(strtolower($value))) and $value != "select_null"
            
$selected " selected";
          
$content .=  '<option value="'.$select_value.'"'.$selected.'>'.$select_name.'</option>\n';
      }
    }
    
$content .=  "</select>";
  }   
  echo 
"<tr class='".getrowbg()."' valign='top'>\n<td><p>$title</p></td>\n<td><p>".$content."</p></td>\n</tr>\n";
 } 

just place that in adminfunctions.php, like above the ?>

Heres an example on how to use it:
PHP Code:

makeselectcode("Gender","gender",array("Undisclosed" => "0","Female" => "1","Male" => "2"),0); 

The first parameter in the function is the title of the select menu, the secton param is the select name, the third is an array to male the select menu with, heres how that is set up:

array("Name" => "Value");

and you can have all you want for example:

array("Name" => "Value","Name" => "Value","Name" => "Value");

and the forth and final param is the value of the select menu, as it creates the select menu, if the value in the array matches the value param, it selected it like:

<option value="$Value" selected>$Name</select>

so in:

array("foo1" => "bar1","foo2" => "bar2","foo3" => "bar3");

and you set the function value parameter to bar2 like:
PHP Code:

makeselectcode("Test","text",array("foo1" => "bar1","foo2" => "bar2","foo3" => "bar3"),"foo2"); 

the secon option will be selected like:

<option value="bar2" selected>foo2</select>

I hoped I explained it well enough, also If a function similar to this exsists, can a mod please delete this thread, thank you.

Ill post an attachment below to show the outcome in admin users for the gender hack I installed.

Boofo 01-21-2003 03:31 PM

Could this be made to use in other areas of the board, too, and not just the Admin area?

Dean C 01-21-2003 05:47 PM

Indeed this looks very nice but would be nice to use anywhere :)

Would we just add it to functions.php?

- miSt

Slynderdale 01-21-2003 08:50 PM

Quote:

Originally posted by Boofo
Could this be made to use in other areas of the board, too, and not just the Admin area?
Yea, I actually made a function for that, i just edited for adminfunctions.php, heres the other:
PHP Code:

function createselectmenu($name,$selectarray,$value="select_null") {
  unset(
$content);
  if (
count($selectarray)) {
    
$content "<select name=".$name.">\n"
    while (list(
$select_name,$select_value) = each($selectarray)) {
      if (
$select_name) {
          unset(
$selected);
          if (
substr($select_name,0,1)=="@" or (trim(strtolower($select_value)) == trim(strtolower($value))) and $value != "select_null")) {
            if (
substr($select_name,0,1)=="@"$select_name substr($select_name,1,strlen($select_name));
            
$selected " selected";
          }
          
$content .=  '<option value="'.$select_value.'"'.$selected.'>'.$select_name.'</option>\n';
      }
    }
    
$content .=  "</select>\n";
  }   
  if (
$content) return $content;
  else return 
false;


This works the same as the one i posted before but you dont give it a title, this just outputs the select html code and thats all so you can place it any wheres. Theres two ways you can have it select a value, one is like below, have the $value param in the function the same value of in the array or add a @ in front of the name in the array like:

PHP Code:

  $array = array(
    
"@Select Color" => "-1",
    
"Aliceblue" => "#F0F8FF",
    
"Antiquewhite" => "#FAEBD7",
    
"Aqua" => "#00FFFF",
    
"Aquamarine" => "#7FFFD4",
    
"Azure" => "#F0FFFF",
    
"Beige" => "#F5F5DC",
    
"Bisque" => "#FFE4C4",
    
"Black" => "#000000",
    
"Blanchedalmond" => "#FFEBCD",
    
"Blue" => "#0000FF",
    
"Blueviolet" => "#8A2BE2",
    
"Brown" => "#A52A2A",
    
"Burlywood" => "#DEB887",
    
"Cadetblue" => "#5F9EA0",
    
"Chartreuse" => "#7FFF00",
    
"Chocolate" => "#D2691E",
    
"Coral" => "#FF7F50",
    
"Cornflowerblue" => "#6495ED",
    
"Cornsilk" => "#FFF8DC",
    
"Crimson" => "#DC143C",
    
"Cyan" => "#00FFFF",
    
"Darkblue" => "#00008B",
    
"Darkcyan" => "#008B8B",
    
"Darkgoldenrod" => "#B8860B",
    
"Darkgray" => "#A9A9A9",
    
"Darkgreen" => "#006400",
    
"Darkkhaki" => "#BDB76B",
    
"Darkmagenta" => "#8B008B",
    
"Darkolivegreen" => "#556B2F",
    
"Darkorange" => "#FF8C00",
    
"Darkorchid" => "#9932CC",
    
"Darkred" => "#8B0000",
    
"Darksalmon" => "#E9967A",
    
"Darkseagreen" => "#8FBC8F",
    
"Darkslateblue" => "#483D8B",
    
"Darkslategray" => "#2F4F4F",
    
"Darkturquoise" => "#00CED1",
    
"Darkviolet" => "#9400D3",
    
"Deeppink" => "#FF1493",
    
"Deepskyblue" => "#00BFFF",
    
"Dimgray" => "#696969",
    
"Dodgerblue" => "#1E90FF",
    
"Firebrick" => "#B22222",
    
"Floralwhite" => "#FFFAF0",
    
"Forestgreen" => "#228B22",
    
"Fuchsia" => "#FF00FF",
    
"Gainsboro" => "#DCDCDC",
    
"Ghostwhite" => "#F8F8FF",
    
"Gold" => "#FFD700",
    
"Goldenrod" => "#DAA520",
    
"Gray" => "#808080",
    
"Green" => "#008000",
    
"Greenyellow" => "#ADFF2F",
    
"Honeydew" => "#F0FFF0",
    
"Hotpink" => "#FF69B4",
    
"Indianred" => "#CD5C5C",
    
"Indigo" => "#4B0082",
    
"Ivory" => "#FFFFF0",
    
"Khaki" => "#F0E68C",
    
"Lavender" => "#E6E6FA",
    
"Lavenderblush" => "#FFF0F5",
    
"Lawngreen" => "#7CFC00",
    
"Lemonchiffon" => "#FFFACD",
    
"Lightblue" => "#ADD8E6",
    
"Lightcoral" => "#F08080",
    
"Lightcyan" => "#E0FFFF",
    
"Lightgoldenrodyellow" => "#FAFAD2",
    
"Lightgreen" => "#90EE90",
    
"Lightgrey" => "#D3D3D3",
    
"Lightpink" => "#FFB6C1",
    
"Lightsalmon" => "#FFA07A",
    
"Lightseagreen" => "#20B2AA",
    
"Lightskyblue" => "#87CEFA",
    
"Lightslategray" => "#778899",
    
"Lightsteelblue" => "#B0C4DE",
    
"Lightyellow" => "#FFFFE0",
    
"Lime" => "#00FF00",
    
"Limegreen" => "#32CD32",
    
"Linen" => "#FAF0E6",
    
"Magenta" => "#FF00FF",
    
"Maroon" => "#800000",
    
"Mediumauqamarine" => "#66CDAA",
    
"Mediumblue" => "#0000CD",
    
"Mediumorchid" => "#BA55D3",
    
"Mediumpurple" => "#9370D8",
    
"Mediumseagreen" => "#3CB371",
    
"Mediumslateblue" => "#7B68EE",
    
"Mediumspringgreen" => "#00FA9A",
    
"Mediumturquoise" => "#48D1CC",
    
"Mediumvioletred" => "#C71585",
    
"Midnightblue" => "#191970",
    
"Mintcream" => "#F5FFFA",
    
"Mistyrose" => "#FFE4E1",
    
"Moccasin" => "#FFE4B5",
    
"Navajowhite" => "#FFDEAD",
    
"Navy" => "#000080",
    
"Oldlace" => "#FDF5E6",
    
"Olive" => "#808000",
    
"Olivedrab" => "#688E23",
    
"Orange" => "#FFA500",
    
"Orangered" => "#FF4500",
    
"Orchid" => "#DA70D6",
    
"Palegoldenrod" => "#EEE8AA",
    
"Palegreen" => "#98FB98",
    
"Paleturquoise" => "#AFEEEE",
    
"Palevioletred" => "#D87093",
    
"Papayawhip" => "#FFEFD5",
    
"Peachpuff" => "#FFDAB9",
    
"Peru" => "#CD853F",
    
"Pink" => "#FFC0CB",
    
"Plum" => "#DDA0DD",
    
"Powderblue" => "#B0E0E6",
    
"Purple" => "#800080",
    
"Red" => "#FF0000",
    
"Rosybrown" => "#BC8F8F",
    
"Royalblue" => "#4169E1",
    
"Saddlebrown" => "#8B4513",
    
"Salmon" => "#FA8072",
    
"Sandybrown" => "#F4A460",
    
"Seagreen" => "#2E8B57",
    
"Seashell" => "#FFF5EE",
    
"Sienna" => "#A0522D",
    
"Silver" => "#C0C0C0",
    
"Skyblue" => "#87CEEB",
    
"Slateblue" => "#6A5ACD",
    
"Slategray" => "#708090",
    
"Snow" => "#FFFAFA",
    
"Springgreen" => "#00FF7F",
    
"Steelblue" => "#4682B4",
    
"Tan" => "#D2B48C",
    
"Teal" => "#008080",
    
"Thistle" => "#D8BFD8",
    
"Tomato" => "#FF6347",
    
"Turquoise" => "#40E0D0",
    
"Violet" => "#EE82EE",
    
"Wheat" => "#F5DEB3",
    
"White" => "#FFFFFF",
    
"Whitesmoke" => "#F5F5F5",
    
"Yellow" => "#FFFF00",
    
"YellowGreen" => "#9ACD32"    
  
); 


Slynderdale 01-21-2003 08:57 PM

Note: The function in the first post goes in adminfunctions.php the one i just posted above can go in functions.php to use any where on the forum.

Boofo 01-21-2003 09:07 PM

Great! Thanks! I'll play with it a little and see what I can make with it. ;)

DWZ 01-22-2003 11:45 AM

Can you put your code in a text document to stop unlicensed members from viewing the code please?

Thanks

Kriek 03-01-2003 12:37 PM

Slynderdale, check your PM =)


All times are GMT. The time now is 08:40 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.01103 seconds
  • Memory Usage 1,834KB
  • 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
  • (5)bbcode_php_printable
  • (1)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (8)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