function SmartFormImageElement($object, $key) { $var = $object->vars[$key]; $object_imageurl = $object->getImageDir(); $this->XoopsFormElementTray($var['form_caption'], ' '); $objectArray['image'] = str_replace('{XOOPS_URL}', XOOPS_URL, $objectArray['image']); if ($object->getVar($key) != '' && (substr($object->getVar($key), 0, 4) == 'http' || substr($object->getVar($key), 0, 11) == '{XOOPS_URL}')) { $this->addElement(new XoopsFormLabel('', "<img src='" . str_replace('{XOOPS_URL}', XOOPS_URL, $object->getVar($key)) . "' alt='' /><br/><br/>")); } elseif ($object->getVar($key) != '') { $this->addElement(new XoopsFormLabel('', "<img src='" . $object_imageurl . $object->getVar($key) . "' alt='' /><br/><br/>")); } include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/smartformfileuploadelement.php"; $this->addElement(new SmartFormFileUploadElement($object, $key)); $this->addElement(new XoopsFormLabel('<div style="height: 10px; padding-top: 8px; font-size: 80%;">' . _CO_SOBJECT_URL_FILE_DSC . '</div>', '')); include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/smartformtextelement.php"; include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/smartformcheckelement.php"; $this->addElement(new XoopsFormLabel('', '<br />' . _CO_SOBJECT_URL_FILE)); $this->addElement(new SmartFormTextElement($object, 'url_' . $key)); $this->addElement(new XoopsFormLabel('', '<br /><br />')); $delete_check = new SmartFormCheckElement('', 'delete_' . $key); $delete_check->addOption(1, '<span style="color:red;">' . _CO_SOBJECT_DELETE . '</span>'); $this->addElement($delete_check); }
function getControl($controlName, $key) { switch ($controlName) { case 'check': include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/smartformcheckelement.php"; $control = $this->targetObject->getControl($key); $controlObj = new SmartFormCheckElement($this->targetObject->vars[$key]['form_caption'], $key, $this->targetObject->getVar($key)); $controlObj->addOptionArray($control['options']); return $controlObj; break; case 'color': $control = $this->targetObject->getControl($key); $controlObj = new XoopsFormColorPicker($this->targetObject->vars[$key]['form_caption'], $key, $this->targetObject->getVar($key)); return $controlObj; break; case 'radio': $control = $this->targetObject->getControl($key); $controlObj = new XoopsFormRadio($this->targetObject->vars[$key]['form_caption'], $key, $this->targetObject->getVar($key)); $controlObj->addOptionArray($control['options']); return $controlObj; break; case 'label': return new XoopsFormLabel($this->targetObject->vars[$key]['form_caption'], $this->targetObject->getVar($key)); break; case 'textarea': return $this->getTextArea($key); case 'theme': return $this->getThemeSelect($key, $this->targetObject->vars[$key]); case 'theme_multi': return $this->getThemeSelect($key, $this->targetObject->vars[$key], true); break; case 'timezone': return new XoopsFormSelectTimezone($this->targetObject->vars[$key]['form_caption'], $key, $this->targetObject->getVar($key)); break; case 'group': return new XoopsFormSelectGroup($this->targetObject->vars[$key]['form_caption'], $key, false, $this->targetObject->getVar($key, 'e'), 1, false); break; case 'group_multi': return new XoopsFormSelectGroup($this->targetObject->vars[$key]['form_caption'], $key, false, $this->targetObject->getVar($key, 'e'), 5, true); break; /*case 'user': return new XoopsFormSelectUser($this->targetObject->vars[$key]['form_caption'], $key, false, $this->targetObject->getVar($key, 'e'), 1, false); break;*/ /*case 'user': return new XoopsFormSelectUser($this->targetObject->vars[$key]['form_caption'], $key, false, $this->targetObject->getVar($key, 'e'), 1, false); break;*/ case 'user_multi': return new XoopsFormSelectUser($this->targetObject->vars[$key]['form_caption'], $key, false, $this->targetObject->getVar($key, 'e'), 5, true); break; case 'password': return new XoopsFormPassword($this->targetObject->vars[$key]['form_caption'], $key, 50, 255, $this->targetObject->getVar($key, 'e')); break; case 'country': return new XoopsFormSelectCountry($this->targetObject->vars[$key]['form_caption'], $key, $this->targetObject->getVar($key, 'e')); break; case 'urllink': include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/smartformurllinkelement.php"; return new SmartFormUrlLinkElement($this->targetObject->vars[$key]['form_caption'], $key, $this->targetObject->getUrlLinkObj($key)); break; case 'richfile': include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/smartformrichfileelement.php"; return new SmartFormRichFileElement($this->targetObject->vars[$key]['form_caption'], $key, $this->targetObject->getFileObj($key)); break; case 'section': include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/smartformsection.php"; return new SmartFormSection($key, $this->targetObject->vars[$key]['form_caption']); break; default: $classname = "SmartForm" . ucfirst($controlName) . "Element"; if (!class_exists($classname)) { if (file_exists(SMARTOBJECT_ROOT_PATH . "class/form/elements/" . strtolower($classname) . ".php")) { include_once SMARTOBJECT_ROOT_PATH . "class/form/elements/" . strtolower($classname) . ".php"; } else { // perhaps this is a control created by the module $moduleName = $this->targetObject->handler->_moduleName; $moduleFormElementsPath = $this->targetObject->handler->_modulePath . 'class/form/elements/'; $classname = ucfirst($moduleName) . ucfirst($controlName) . "Element"; $classFileName = strtolower($classname) . ".php"; if (file_exists($moduleFormElementsPath . $classFileName)) { include_once $moduleFormElementsPath . $classFileName; } else { trigger_error($classname . " Not found", E_USER_WARNING); return new XoopsFormLabel(); //Empty object } } } return new $classname($this->targetObject, $key); break; } }