diff options
author | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-02-03 12:57:39 +0000 |
---|---|---|
committer | cash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2011-02-03 12:57:39 +0000 |
commit | 4ae6d689578448a33024703c61bb17b5709fa0e5 (patch) | |
tree | 6e41befc0fb56d9a3432e58a401a4726f39df60b /views/default/input/dropdown.php | |
parent | 08b710e42eed1aeb2ec6bcde2e1333c5cbcaa581 (diff) | |
download | elgg-4ae6d689578448a33024703c61bb17b5709fa0e5.tar.gz elgg-4ae6d689578448a33024703c61bb17b5709fa0e5.tar.bz2 |
changed input/pulldown to input/dropdown
git-svn-id: http://code.elgg.org/elgg/trunk@8006 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'views/default/input/dropdown.php')
-rw-r--r-- | views/default/input/dropdown.php | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/views/default/input/dropdown.php b/views/default/input/dropdown.php new file mode 100644 index 000000000..b4d38fb00 --- /dev/null +++ b/views/default/input/dropdown.php @@ -0,0 +1,58 @@ +<?php +/** + * Elgg dropdown input + * Displays a dropdown (select) input field + * + * NB: Default values of FALSE or NULL will match '' (empty string) and not 0. + * + * @package Elgg + * @subpackage Core + * + * @uses $vars['value'] The current value, if any + * @uses $vars['js'] Any Javascript to enter into the select tag + * @uses $vars['internalname'] The name of the select field + * @uses $vars['options'] An array of strings representing the options for the dropdown field + * @uses $vars['options_values'] An associative array of "value" => "option" + * where "value" is an internal name and "option" is + * the value displayed on the button. Replaces + * $vars['options'] when defined. + */ + +$class = $vars['class']; +if (!$class) { + $class = "elgg-input-dropdown"; +} + +if (!isset($vars['value'])) { + $vars['value'] = elgg_get_sticky_value($vars['internalname']); +} + +?> +<select name="<?php echo $vars['internalname']; ?>" <?php if (isset($vars['internalid'])) echo "id=\"{$vars['internalid']}\""; ?> <?php echo $vars['js']; ?> <?php if ($vars['disabled']) echo ' disabled="yes" '; ?> class="<?php echo $class; ?>"> +<?php + +if ($vars['options_values']) { + foreach($vars['options_values'] as $value => $option) { + + $encoded_value = htmlentities($value, ENT_QUOTES, 'UTF-8'); + $encoded_option = htmlentities($option, ENT_QUOTES, 'UTF-8'); + + if ((string)$value == (string)$vars['value']) { + echo "<option value=\"$encoded_value\" selected=\"selected\">$encoded_option</option>"; + } else { + echo "<option value=\"$encoded_value\">$encoded_option</option>"; + } + } +} else { + foreach($vars['options'] as $option) { + $encoded_option = htmlentities($option, ENT_QUOTES, 'UTF-8'); + + if ((string)$option == (string)$vars['value']) { + echo "<option selected=\"selected\">$encoded_option</option>"; + } else { + echo "<option>$encoded_option</option>"; + } + } +} +?> +</select> |