version 1.74, 2003/04/13 01:09:50 |
version 1.75, 2003/04/13 12:24:54 |
|
|
* http://www.platon.sk/projects/phpMyEdit/ |
* http://www.platon.sk/projects/phpMyEdit/ |
*/ |
*/ |
|
|
/* $Platon: phpMyEdit/phpMyEdit.class.php,v 1.73 2003/04/10 19:50:56 nepto Exp $ */ |
/* $Platon: phpMyEdit/phpMyEdit.class.php,v 1.74 2003/04/13 01:09:50 nepto Exp $ */ |
|
|
/* This is a generic table editing program. The table and fields to be |
/* This is a generic table editing program. The table and fields to be |
edited are defined in the calling program. |
edited are defined in the calling program. |
Line 764 function phpMyEdit_form_control(theForm) |
|
Line 764 function phpMyEdit_form_control(theForm) |
|
echo '<td class="',$this->getCSSclass('key', null, true, $css_postfix),'">',$this->fdd[$k]['name'],'</td>',"\n"; |
echo '<td class="',$this->getCSSclass('key', null, true, $css_postfix),'">',$this->fdd[$k]['name'],'</td>',"\n"; |
echo '<td class="',$this->getCSSclass('value', null, true, $css_postfix),'">'."\n"; |
echo '<td class="',$this->getCSSclass('value', null, true, $css_postfix),'">'."\n"; |
if ($this->col_has_values($k)) { |
if ($this->col_has_values($k)) { |
$vals = $this->set_values($k); |
$vals = $this->set_values($k); |
$selected = @$this->fdd[$k]['default']; |
$selected = @$this->fdd[$k]['default']; |
$multiple = $this->fdd[$k]['select'] == 'M' && ! $this->fdd[$k]['values']['table']; |
$multiple = $this->fdd[$k]['select'] == 'M' && ! $this->fdd[$k]['values']['table']; |
$readonly = $this->readonly($k); |
$readonly = $this->readonly($k); |
echo $this->htmlSelect($this->fds[$k], $css_class_name, $vals, $selected, $multiple,$readonly); |
$strip_tags = true; |
|
$escape = true; |
|
echo $this->htmlSelect($this->fds[$k], $css_class_name, $vals, $selected, |
|
$multiple, $readonly, $strip_tags, $escape); |
} elseif (isset ($this->fdd[$k]['textarea'])) { |
} elseif (isset ($this->fdd[$k]['textarea'])) { |
echo '<textarea class="',$css_class_name,'" name="'.$this->fds[$k].'"'; |
echo '<textarea class="',$css_class_name,'" name="'.$this->fds[$k].'"'; |
echo ($this->readonly($k) ? ' disabled' : ''); |
echo ($this->readonly($k) ? ' disabled' : ''); |
Line 883 function phpMyEdit_form_control(theForm) |
|
Line 886 function phpMyEdit_form_control(theForm) |
|
$css_class_name = $this->getCSSclass('input', null, true, $css_postfix); |
$css_class_name = $this->getCSSclass('input', null, true, $css_postfix); |
echo '<td class="',$this->getCSSclass('value', null, true, $css_postfix),'">',"\n"; |
echo '<td class="',$this->getCSSclass('value', null, true, $css_postfix),'">',"\n"; |
if ($this->col_has_values($k)) { |
if ($this->col_has_values($k)) { |
$vals = $this->set_values($k); |
$vals = $this->set_values($k); |
$multiple = $this->fdd[$k]['select'] == 'M' && ! $this->fdd[$k]['values']['table']; |
$multiple = $this->fdd[$k]['select'] == 'M' && ! $this->fdd[$k]['values']['table']; |
$readonly = $this->readonly($k); |
$readonly = $this->readonly($k); |
echo $this->htmlSelect($this->fds[$k], $css_class_name, $vals, $row["qf$k"], $multiple, $readonly); |
$strip_tags = true; |
|
$escape = true; |
|
echo $this->htmlSelect($this->fds[$k], $css_class_name, $vals, $row["qf$k"], |
|
$multiple, $readonly, $strip_tags, $escape); |
} elseif (isset($this->fdd[$k]['textarea'])) { |
} elseif (isset($this->fdd[$k]['textarea'])) { |
echo '<textarea class="',$css_class_name,'" name="'.$this->fds[$k].'"'; |
echo '<textarea class="',$css_class_name,'" name="'.$this->fds[$k].'"'; |
echo ($this->readonly($k) ? ' disabled' : ''); |
echo ($this->readonly($k) ? ' disabled' : ''); |
Line 1032 function phpMyEdit_form_control(theForm) |
|
Line 1038 function phpMyEdit_form_control(theForm) |
|
|
|
function cellDisplay($k, $row, $css) /* {{{ */ |
function cellDisplay($k, $row, $css) /* {{{ */ |
{ |
{ |
|
$escape = true; |
$key_rec = $row['qf'.$this->key_num]; |
$key_rec = $row['qf'.$this->key_num]; |
if (@$this->fdd[$k]['datemask']) { |
if (@$this->fdd[$k]['datemask']) { |
$value = $row["qf$k".'_timestamp']; |
$value = $row["qf$k".'_timestamp']; |
Line 1047 function phpMyEdit_form_control(theForm) |
|
Line 1054 function phpMyEdit_form_control(theForm) |
|
foreach ($value_ar as $value_key) { |
foreach ($value_ar as $value_key) { |
if (isset($this->fdd[$k]['values2'][$value_key])) { |
if (isset($this->fdd[$k]['values2'][$value_key])) { |
$value_ar2[$value_key] = $this->fdd[$k]['values2'][$value_key]; |
$value_ar2[$value_key] = $this->fdd[$k]['values2'][$value_key]; |
|
$escape = false; |
} |
} |
} |
} |
$value = join(', ', $value_ar2); |
$value = join(', ', $value_ar2); |
} else { |
} else { |
if (isset($this->fdd[$k]['values2'][$value])) { |
if (isset($this->fdd[$k]['values2'][$value])) { |
$value = $this->fdd[$k]['values2'][$value]; |
$value = $this->fdd[$k]['values2'][$value]; |
|
$escape = false; |
} |
} |
} |
} |
} else { |
} else { |
Line 1074 function phpMyEdit_form_control(theForm) |
|
Line 1083 function phpMyEdit_form_control(theForm) |
|
if (strlen($value) <= 0) { |
if (strlen($value) <= 0) { |
return ' '; |
return ' '; |
} |
} |
return nl2br(htmlspecialchars($value)); |
if ($escape) { |
|
$value = htmlspecialchars($value); |
|
} |
|
return nl2br($value); |
} /* }}} */ |
} /* }}} */ |
|
|
/** |
/** |
Line 1093 function phpMyEdit_form_control(theForm) |
|
Line 1105 function phpMyEdit_form_control(theForm) |
|
* Creates HTML select element (tag) |
* Creates HTML select element (tag) |
* |
* |
* @param name element name |
* @param name element name |
|
* @param css CSS class name |
* @param kv_array key => value array |
* @param kv_array key => value array |
* @param selected selected key (it can be single string, array of |
* @param selected selected key (it can be single string, array of |
* keys or multiple values separated by comma |
* keys or multiple values separated by comma) |
* @param multiple bool for multiple selection |
* @param multiple bool for multiple selection |
* @param readonly bool for readonly/disabled selection |
* @param readonly bool for readonly/disabled selection |
|
* @param strip_tags bool for stripping tags from values |
|
* @param escape bool for HTML escaping values |
*/ |
*/ |
function htmlSelect($name, $css, $kv_array, $selected = null, $multiple = false, $readonly = false) /* {{{ */ |
function htmlSelect($name, $css, $kv_array, $selected = null, /* ...) {{{ */ |
|
/* booleans: */ $multiple = false, $readonly = false, $strip_tags = false, $escape = true) |
{ |
{ |
$ret = '<select class="'.htmlspecialchars($css).'" name="'.htmlspecialchars($name); |
$ret = '<select class="'.htmlspecialchars($css).'" name="'.htmlspecialchars($name); |
if ($multiple) { |
if ($multiple) { |
Line 1120 function phpMyEdit_form_control(theForm) |
|
Line 1136 function phpMyEdit_form_control(theForm) |
|
$ret .= ' selected'; |
$ret .= ' selected'; |
$found = true; |
$found = true; |
} |
} |
$ret .= '>'.htmlspecialchars($value).'</option>'."\n"; |
$strip_tags && $value = strip_tags($value); |
|
$escape && $value = htmlspecialchars($value); |
|
$ret .= '>'.$value.'</option>'."\n"; |
} |
} |
$ret .= '</select>'; |
$ret .= '</select>'; |
return $ret; |
return $ret; |
Line 1702 function phpMyEdit_form_control(theForm) |
|
Line 1720 function phpMyEdit_form_control(theForm) |
|
} else if ($this->fdd[$fd]['select'] == 'D' || $this->fdd[$fd]['select'] == 'M') { |
} else if ($this->fdd[$fd]['select'] == 'D' || $this->fdd[$fd]['select'] == 'M') { |
// Multiple fields processing |
// Multiple fields processing |
// Default size is 2 and array required for values. |
// Default size is 2 and array required for values. |
$vals = $this->set_values($k, array('*' => '*'), null, true); |
$vals = $this->set_values($k, array('*' => '*'), null, true); |
$selected = $mi; |
$selected = $mi; |
$multiple = $this->fdd[$fd]['select'] == 'M'; |
$multiple = $this->fdd[$fd]['select'] == 'M'; |
echo $this->htmlSelect($l.'_id', $css_class_name, $vals, $selected, $multiple); |
$readonly = false; |
|
$strip_tags = true; |
|
$escape = true; |
|
echo $this->htmlSelect($l.'_id', $css_class_name, $vals, |
|
$selected, $multiple, $readonly, $strip_tags, $escape); |
} elseif ($this->fdd[$fd]['select'] == 'N' || $this->fdd[$fd]['select'] == 'T') { |
} elseif ($this->fdd[$fd]['select'] == 'N' || $this->fdd[$fd]['select'] == 'T') { |
$size_ml_props = ''; |
$size_ml_props = ''; |
$maxlen = intval($this->fdd[$k]['maxlen']); |
$maxlen = intval($this->fdd[$k]['maxlen']); |