From 51c6547610066912c0b0a3e6309cfb6b149aa0c2 Mon Sep 17 00:00:00 2001 From: Jan-Philipp Litza Date: Wed, 26 Dec 2012 16:58:09 +0100 Subject: advanced form in user administration for confirming angeltypes --- includes/sys_template.php | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'includes/sys_template.php') diff --git a/includes/sys_template.php b/includes/sys_template.php index 4e701879..a988ff23 100644 --- a/includes/sys_template.php +++ b/includes/sys_template.php @@ -36,6 +36,34 @@ function form_checkboxes($name, $label, $items, $selected) { return form_element($label, $html); } +/** + * Rendert eine Tabelle von Checkboxen für ein Formular + * @param names Assoziatives Array mit Namen der Checkboxen als Keys und Überschriften als Values + * @param label Die Beschriftung der gesamten Tabelle + * @param items Array mit den Beschriftungen der Zeilen + * @param selected Mehrdimensionales Array, wobei $selected[foo] ein Array der in der Datenreihe foo markierten Checkboxen ist + * @param disabled Wie selected, nur dass die entsprechenden Checkboxen deaktiviert statt markiert sind + */ +function form_multi_checkboxes($names, $label, $items, $selected, $disabled = array()) { + $html = ""; + foreach ($names as $title) + $html .= ""; + $html .= ""; + foreach ($items as $key => $item) { + $html .= ""; + foreach ($names as $name => $title) { + $id = $name . '_' . $key; + $sel = array_search($key, $selected[$name]) !== false ? ' checked="checked"' : ""; + if (!empty($disabled) && !empty($disabled[$name]) && array_search($key, $disabled[$name]) !== false) + $sel .= ' disabled="disabled"'; + $html .= ''; + } + $html .= ''; + } + $html .= "
$title
"; + return form_element($label, $html); +} + /** * Rendert eine Checkbox */ -- cgit v1.2.3-54-g00ecf