function formulize_disableElement($element, $type, $ele_desc) { if ($type == "text" or $type == "textarea" or $type == "date" or $type == "colorpick") { $newElement = new xoopsFormElementTray($element->getCaption(), "\n"); $newElement->setName($element->getName()); switch ($type) { case 'date': if ($timeval = $element->getValue()) { if (is_string($timeval)) { $timeval = strtotime($timeval); } $hiddenValue = date(_SHORTDATESTRING, $timeval); } else { $hiddenValue = ""; } break; default: // should work for all elements, since non-textbox type elements where the value would not be passed straight back, are handled differently at the time they are constructed $hiddenValue = formulize_numberFormat($element->getValue(), $this->_ele->getVar('ele_handle')); } if (is_array($hiddenValue)) { // not sure when/if this would ever happen foreach ($hiddenValue as $value) { $newElement->addElement(new xoopsFormHidden($element->getName() . "[]", $value)); unset($value); } $newElement->addElement(new xoopsFormLabel('', implode(", ", $hiddenValue))); } else { $newElement->addElement(new xoopsFormHidden($element->getName(), $hiddenValue)); $newElement->addElement(new xoopsFormLabel('', $hiddenValue)); } if (substr($element->getName(), 0, 9) != "desubform") { // we should consider not having a cue at all for any disabled elements, but we're not going to pull it out just yet...more investigation of this is necessary $newElement->addElement(new xoopsFormHidden("decue_" . trim($element->getName(), "de_"), 1)); } $newElement->setDescription(html_entity_decode($ele_desc, ENT_QUOTES)); return $newElement; } else { return $element; } }