aboutsummaryrefslogtreecommitdiff
path: root/views/default/input/checkboxes.php
blob: fa7c0c34cb6d12f3c401cb92037570090369bfd5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php
/**
 * Elgg checkbox input
 * Displays a checkbox input field
 *
 * @package Elgg
 * @subpackage Core
 * @author Curverider Ltd
 * @link http://elgg.org/
 *
 * @uses $vars['value'] The current value, if any
 * @uses $vars['js'] Any Javascript to enter into the input tag
 * @uses $vars['internalname'] The name of the input field
 * @uses $vars['options'] An array of strings representing the label => options for the checkbox field
 *
 */

$class = $vars['class'];
if (!$class) {
	$class = "input_checkboxes";
}

if (!isset($vars['value']) || $vars['value'] === FALSE) {
	$vars['value'] = elgg_get_sticky_value($vars['internalname']);
}

foreach($vars['options'] as $label => $option) {
	//if (!in_array($option,$vars['value'])) {
	if (is_array($vars['value'])) {
		$valarray = $vars['value'];
		$valarray = array_map('strtolower', $valarray);
		if (!in_array(strtolower($option),$valarray)) {
			$selected = "";
		} else {
			$selected = "checked = \"checked\"";
		}
	} else {
		if (strtolower($option) != strtolower($vars['value'])) {
			$selected = "";
		} else {
			$selected = "checked = \"checked\"";
		}
	}
	$labelint = (int) $label;
	if ("{$label}" == "{$labelint}") {
		$label = $option;
	}

	if (isset($vars['internalid'])) $id = "id=\"{$vars['internalid']}\"";
	$disabled = "";
	if ($vars['disabled']) $disabled = ' disabled="yes" ';
	echo "<label><input type=\"checkbox\" $id $disabled {$vars['js']} name=\"{$vars['internalname']}[]\" value=\"".htmlentities($option, ENT_QUOTES, 'UTF-8')."\" {$selected} class=\"$class\" />{$label}</label><br />";
}