Beispiel #1
0
 /**
  * Constructor
  * @param	object    $object   reference to targetobject (@link IcmsPersistableObject)
  * @param	string    $key      the form name
  */
 function __construct($object, $key)
 {
     $var = $object->vars[$key];
     $object_imageurl = $object->getImageDir();
     parent::__construct($var['title'], ' ');
     if (isset($objectArray['image'])) {
         $objectArray['image'] = str_replace('{ICMS_URL}', ICMS_URL, $objectArray['image']);
     }
     if ($object->getVar($key, 'e') != '' && (substr($object->getVar($key, 'e'), 0, 4) == 'http' || substr($object->getVar($key, 'e'), 0, 11) == '{XOOPS_URL}')) {
         $this->addElement(new Xmf_Form_Element_Label('', "<img src='" . str_replace('{XOOPS_URL}', XOOPS_URL, $object->getVar($key, 'e')) . "' alt='' /><br/><br/>"));
     } else {
         if ($object->getVar($key, 'e') != '') {
             $this->addElement(new Xmf_Form_Element_Label('', "<img src='" . $object_imageurl . $object->getVar($key, 'e') . "' alt='' /><br/><br/>"));
         }
     }
     $this->addElement(new Xmf_Object_Form_Element_Upload_File($object, $key));
     $this->addElement(new Xmf_Form_Element_Label('<div style="padding-top: 8px; font-size: 80%;">' . _FORM_XMF_URL_FILE_DSC . '</div>', ''));
     $this->addElement(new Xmf_Form_Element_Label('', '<br />' . _FORM_XMF_URL_FILE));
     $this->addElement(new Xmf_Form_Element_Text('', 'url_' . $key, 50, 500));
     if (!$object->isNew()) {
         $this->addElement(new Xmf_Form_Element_Label('', '<br /><br />'));
         $delete_check = new Xmf_Form_Element_Checkbox_Check('', 'delete_' . $key);
         $delete_check->addOption(1, '<span style="color:red;">' . _FORM_XMF_DELETE . '</span>');
         $this->addElement($delete_check);
     }
 }
Beispiel #2
0
 /**
  * Gets a control from the targetobject (@todo, which object will be passed here?)
  *
  * @param	string  $controlName   name of the control element
  * @param	string  $key           key of the form variables in the targetobject
  */
 function getControl($controlName, $key)
 {
     if (!$controlName) {
         $controlName = 'select';
     }
     switch ($controlName) {
         case 'check':
             $control = $this->targetObject->getControl($key);
             $controlObj = new Xmf_Form_Element_Checkbox_Check($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key));
             $controlObj->addOptionArray($control['options']);
             return $controlObj;
             break;
         case 'color':
             $control = $this->targetObject->getControl($key);
             $controlObj = new Xmf_Form_Element_Colorpicker($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key));
             return $controlObj;
             break;
         case 'radio':
             $control = $this->targetObject->getControl($key);
             $controlObj = new Xmf_Form_Element_Radio($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key));
             $controlObj->addOptionArray($control['options']);
             return $controlObj;
             break;
         case 'label':
             return new Xmf_Form_Element_Label($this->targetObject->vars[$key]['title'], $this->targetObject->getVar($key));
             break;
         case 'textarea':
             $form_rows = isset($this->targetObject->controls[$key]['rows']) ? $this->targetObject->controls[$key]['rows'] : 5;
             $form_cols = isset($this->targetObject->controls[$key]['cols']) ? $this->targetObject->controls[$key]['cols'] : 60;
             $editor = new Xmf_Form_Element_Textarea($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key, 'e'), $form_rows, $form_cols);
             if ($this->targetObject->vars[$key]['desc']) {
                 $editor->setDescription($this->targetObject->vars[$key]['desc']);
             }
             return $editor;
             break;
         case 'dhtmltextarea':
             $editor = new Xmf_Form_Element_Textarea_Dhtml($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key, 'e'), 20, 60);
             if ($this->targetObject->vars[$key]['desc']) {
                 $editor->setDescription($this->targetObject->vars[$key]['desc']);
             }
             return $editor;
             break;
         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 Xmf_Form_Element_Select_Timezone($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key));
             break;
         case 'group':
             return new Xmf_Form_Element_Select_Group($this->targetObject->vars[$key]['title'], $key, false, $this->targetObject->getVar($key, 'e'), 1, false);
             break;
         case 'group_multi':
             return new Xmf_Form_Element_Select_Group($this->targetObject->vars[$key]['title'], $key, false, $this->targetObject->getVar($key, 'e'), 5, true);
             break;
             /*case 'user':
               return new XoopsFormSelectUser($this->targetObject->vars[$key]['title'], $key, false, $this->targetObject->getVar($key, 'e'), 1, false);
               break;*/
         /*case 'user':
           return new XoopsFormSelectUser($this->targetObject->vars[$key]['title'], $key, false, $this->targetObject->getVar($key, 'e'), 1, false);
           break;*/
         case 'user_multi':
             return new Xmf_Form_Element_Select_User($this->targetObject->vars[$key]['title'], $key, false, $this->targetObject->getVar($key, 'e'), 5, true);
             break;
         case 'password':
             return new Xmf_Form_Element_Password($this->targetObject->vars[$key]['title'], $key, 50, 255, $this->targetObject->getVar($key, 'e'));
             break;
         case 'country':
             return new Xmf_Form_Element_Select_Country($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key, 'e'));
             break;
         case 'urllink':
             return new Xmf_Object_Form_Element_Tray_UrlLink($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getUrlLinkObj($key));
             break;
         case 'richfile':
             return new Xmf_Object_Form_Element_Tray_Richfile($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getFileObj($key));
             break;
         case 'source':
         case 'sourceeditor':
             return new Xmf_Form_Element_Textarea_Sourceeditor($this->targetObject->vars[$key]['title'], $key, $this->targetObject->getVar($key, 'e'));
             break;
         case 'hidden':
             return new Xmf_Form_Element_Hidden($key, $this->targetObject->vars[$key]['value']);
             break;
             /*case 'readonly';
               $control =  new Xmf_Form_Element_Hidden($key, $this->targetObject->vars[$key]['value']);
               $control->setExtra('disabled="disabled"');
               $control->setName($key . '-readonly');
               return $control;
               break;*/
         /*case 'readonly';
           $control =  new Xmf_Form_Element_Hidden($key, $this->targetObject->vars[$key]['value']);
           $control->setExtra('disabled="disabled"');
           $control->setName($key . '-readonly');
           return $control;
           break;*/
         default:
             $classname = "Xmf_Object_Form_Element_" . ucfirst($controlName) . "";
             return new $classname($this->targetObject, $key);
             break;
     }
 }