function getInputfield($intView, $arrInputfield, $intEntryId = null)
 {
     global $objDatabase, $_LANGID, $objInit, $_ARRAYLANG;
     $intId = intval($arrInputfield['id']);
     switch ($intView) {
         default:
         case 1:
             if (isset($intEntryId) && $intEntryId != 0) {
                 $objInputfieldValue = $objDatabase->Execute("\n                        SELECT\n                            `value`\n                        FROM\n                            " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_rel_entry_inputfields\n                        WHERE\n                            field_id=" . $intId . "\n                        AND\n                            entry_id=" . $intEntryId . "\n                        LIMIT 1\n                    ");
                 $strValue = intval($objInputfieldValue->fields['value']);
             } else {
                 $strValue = null;
             }
             if (empty($strValue)) {
                 if (substr($arrInputfield['default_value'][0], 0, 2) == '[[') {
                     $objPlaceholder = new \Cx\Modules\MediaDir\Controller\MediaDirectoryPlaceholder($this->moduleName);
                     $strValue = $objPlaceholder->getPlaceholder($arrInputfield['default_value'][0]);
                 } else {
                     $strValue = empty($arrInputfield['default_value'][$_LANGID]) ? $arrInputfield['default_value'][0] : $arrInputfield['default_value'][$_LANGID];
                 }
             }
             if (!empty($arrInputfield['info'][0])) {
                 $strInfoValue = empty($arrInputfield['info'][$_LANGID]) ? 'title="' . $arrInputfield['info'][0] . '"' : 'title="' . $arrInputfield['info'][$_LANGID] . '"';
                 $strInfoClass = 'mediadirInputfieldHint';
             } else {
                 $strInfoValue = null;
                 $strInfoClass = '';
             }
             if ($objInit->mode == 'backend') {
                 $strInputfield = '<select name="' . $this->moduleNameLC . 'Inputfield[' . $intId . ']" id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '" class="' . $this->moduleNameLC . 'InputfieldDropdown" style="width: 302px">';
             } else {
                 $strInputfield = '<select name="' . $this->moduleNameLC . 'Inputfield[' . $intId . ']" id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '" class="' . $this->moduleNameLC . 'InputfieldDropdown ' . $strInfoClass . '" ' . $strInfoValue . '>';
             }
             $strInputfieldOptions = \Cx\Core\Country\Controller\Country::getMenuoptions($strValue);
             $strInputfield .= $strInputfieldOptions . '</select>';
             return $strInputfield;
             break;
         case 2:
             //search View
             $country = \Cx\Core\Country\Controller\Country::getNameArray(true, $_LANGID);
             foreach ($country as $id => $name) {
                 $strInputfieldOptions .= '<option value="' . $id . '">' . $name . '</option>';
             }
             $strInputfield = '<select name="' . $intId . '" class="' . $this->moduleName . 'InputfieldSearch">';
             $strInputfield .= '<option  value="">' . $_ARRAYLANG['TXT_MEDIADIR_PLEASE_CHOOSE'] . '</option>';
             $strInputfield .= $strInputfieldOptions . '</select>';
             return $strInputfield;
             break;
     }
 }
 function getInputfield($intView, $arrInputfield, $intEntryId = null)
 {
     global $objDatabase, $_LANGID, $objInit, $_ARRAYLANG;
     switch ($intView) {
         default:
         case 1:
             //modify (add/edit) View
             $intId = intval($arrInputfield['id']);
             $arrValue = null;
             if (!empty($intEntryId)) {
                 $objInputfieldValue = $objDatabase->Execute("\n                        SELECT\n                            `value`,\n                            `lang_id`\n                        FROM\n                            " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_rel_entry_inputfields\n                        WHERE\n                            field_id=" . $intId . "\n                        AND\n                            entry_id=" . $intEntryId . "\n                    ");
                 if ($objInputfieldValue !== false) {
                     while (!$objInputfieldValue->EOF) {
                         $arrValue[intval($objInputfieldValue->fields['lang_id'])] = contrexx_raw2xhtml($objInputfieldValue->fields['value']);
                         $objInputfieldValue->MoveNext();
                     }
                     $arrValue[0] = isset($arrValue[$_LANGID]) ? $arrValue[$_LANGID] : null;
                 }
             }
             if (empty($arrValue)) {
                 foreach ($arrInputfield['default_value'] as $intLangKey => $strDefaultValue) {
                     $strDefaultValue = empty($strDefaultValue) ? $arrInputfield['default_value'][0] : $strDefaultValue;
                     if (substr($strDefaultValue, 0, 2) == '[[') {
                         $objPlaceholder = new \Cx\Modules\MediaDir\Controller\MediaDirectoryPlaceholder($this->moduleName);
                         $arrValue[$intLangKey] = $objPlaceholder->getPlaceholder($strDefaultValue);
                     } else {
                         $arrValue[$intLangKey] = $strDefaultValue;
                     }
                 }
             }
             $arrInfoValue = null;
             $strInfoClass = '';
             if (!empty($arrInputfield['info'][0])) {
                 $arrInfoValue[0] = 'title="' . $arrInputfield['info'][0] . '"';
                 $strInfoClass = 'mediadirInputfieldHint';
                 foreach ($arrInputfield['info'] as $intLangKey => $strInfoValue) {
                     $arrInfoValue[$intLangKey] = empty($strInfoValue) ? 'title="' . $arrInputfield['info'][0] . '"' : 'title="' . $strInfoValue . '"';
                 }
             }
             $countFrontendLang = count($this->arrFrontendLanguages);
             if ($objInit->mode == 'backend') {
                 $strInputfield = '<div id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_Minimized" style="display: block;"><textarea data-id="' . $intId . '" class="' . $this->moduleNameLC . 'InputfieldDefault" name="' . $this->moduleNameLC . 'Inputfield[' . $intId . '][0]" id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_0" style="width: 300px; height: 60px;" onfocus="this.select();" />' . $arrValue[0] . '</textarea>&nbsp;<a href="javascript:ExpandMinimize(\'' . $intId . '\');">' . $_ARRAYLANG['TXT_MEDIADIR_MORE'] . '&nbsp;&raquo;</a></div>';
                 $strInputfield .= '<div id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_Expanded" style="display: none;">';
                 foreach ($this->arrFrontendLanguages as $key => $arrLang) {
                     $intLangId = $arrLang['id'];
                     $minimize = "";
                     if ($key + 1 == $countFrontendLang) {
                         $minimize = "&nbsp;<a href=\"javascript:ExpandMinimize('" . $intId . "');\">&laquo;&nbsp;" . $_ARRAYLANG['TXT_MEDIADIR_MINIMIZE'] . "</a>";
                     }
                     $value = isset($arrValue[$intLangId]) ? $arrValue[$intLangId] : '';
                     $strInputfield .= '<textarea data-id="' . $intId . '" name="' . $this->moduleNameLC . 'Inputfield[' . $intId . '][' . $intLangId . ']" id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_' . $intLangId . '" style="height: 60px; width: 279px; margin-bottom: 2px; padding-left: 21px; background: #ffffff url(\'' . \Env::get('cx')->getCodeBaseOffsetPath() . \Env::get('cx')->getCoreFolderName() . '/Country/View/Media/Flag/flag_' . $arrLang['lang'] . '.gif\') no-repeat 3px 3px;" onfocus="this.select();" />' . $value . '</textarea>&nbsp;' . $arrLang['name'] . '<a href="javascript:ExpandMinimize(\'' . $intId . '\');">&nbsp;' . $minimize . '</a><br />';
                 }
                 $strInputfield .= '</div>';
             } else {
                 if ($this->arrSettings['settingsFrontendUseMultilang'] == 1) {
                     $strInputfield = '<div id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_Minimized" style="display: block; float: left;" class="' . $this->moduleNameLC . 'GroupMultilang"><textarea data-id="' . $intId . '" class="' . $this->moduleNameLC . 'InputfieldDefault" name="' . $this->moduleNameLC . 'Inputfield[' . $intId . '][0]" id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_0" class="' . $this->moduleNameLC . 'InputfieldTextarea ' . $strInfoClass . '" ' . $arrInfoValue[0] . ' onfocus="this.select();" />' . $arrValue[0] . '</textarea>&nbsp;<a href="javascript:ExpandMinimize(\'' . $intId . '\');">' . $_ARRAYLANG['TXT_MEDIADIR_MORE'] . '&nbsp;&raquo;</a></div>';
                     $strInputfield .= '<div id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_Expanded" style="display: none; float: left;" class="' . $this->moduleNameLC . 'GroupMultilang">';
                     foreach ($this->arrFrontendLanguages as $key => $arrLang) {
                         $intLangId = $arrLang['id'];
                         $minimize = "";
                         if ($key + 1 == $countFrontendLang) {
                             $minimize = "&nbsp;<a href=\"javascript:ExpandMinimize('" . $intId . "');\">&laquo;&nbsp;" . $_ARRAYLANG['TXT_MEDIADIR_MINIMIZE'] . "</a>";
                         }
                         $value = isset($arrValue[$intLangId]) ? $arrValue[$intLangId] : '';
                         $strInputfield .= '<textarea data-id="' . $intId . '" name="' . $this->moduleNameLC . 'Inputfield[' . $intId . '][' . $intLangId . ']" id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_' . $intLangId . '" class="' . $this->moduleNameLC . 'InputfieldTextarea ' . $strInfoClass . '" ' . $arrInfoValue[$intLangId] . ' onfocus="this.select();" />' . $value . '</textarea>&nbsp;' . $arrLang['name'] . '<a href="javascript:ExpandMinimize(\'' . $intId . '\');">&nbsp;' . $minimize . '</a><br />';
                     }
                     $strInputfield .= '</div>';
                 } else {
                     $strInputfield = '<textarea name="' . $this->moduleNameLC . 'Inputfield[' . $intId . '][0]" id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_0" class="' . $this->moduleNameLC . 'InputfieldTextarea ' . $strInfoClass . '" ' . $arrInfoValue[0] . ' onfocus="this.select();" />' . $arrValue[0] . '</textarea>';
                 }
             }
             return $strInputfield;
             break;
         case 2:
             //search View
             break;
     }
     return null;
 }
 function getInputfield($intView, $arrInputfield, $intEntryId = null)
 {
     global $objDatabase, $_LANGID, $objInit, $_ARRAYLANG;
     $intId = intval($arrInputfield['id']);
     switch ($intView) {
         default:
         case 1:
             //modify (add/edit) View
             if (isset($intEntryId) && $intEntryId != 0) {
                 $objInputfieldValue = $objDatabase->Execute("\n                        SELECT\n                            `value`,\n                            `lang_id`\n                        FROM\n                            " . DBPREFIX . "module_" . $this->moduleTablePrefix . "_rel_entry_inputfields\n                        WHERE\n                            field_id=" . $intId . "\n                        AND\n                            entry_id=" . $intEntryId . "\n                    ");
                 if ($objInputfieldValue !== false) {
                     while (!$objInputfieldValue->EOF) {
                         $arrValue[intval($objInputfieldValue->fields['lang_id'])] = $objInputfieldValue->fields['value'];
                         $objInputfieldValue->MoveNext();
                     }
                     // TODO: What if the current language value is missing?
                     // The empty string is an inconvenient default!
                     //                        $arrValue[0] = $arrValue[$_LANGID];
                     $arrValue[0] = isset($arrValue[$_LANGID]) ? $arrValue[$_LANGID] : '';
                 }
             } else {
                 $arrValue = null;
             }
             if (empty($arrValue)) {
                 // TODO: Bogus line
                 //                    $strDefaultValue = empty($strDefaultValue) ? $arrInputfield['default_value'][0] : $strDefaultValue;
                 foreach ($arrInputfield['default_value'] as $intLangKey => $strDefaultValue) {
                     if (substr($strDefaultValue, 0, 2) == '[[') {
                         $objPlaceholder = new \Cx\Modules\MediaDir\Controller\MediaDirectoryPlaceholder($this->moduleName);
                         $arrValue[$intLangKey] = $objPlaceholder->getPlaceholder($strDefaultValue);
                     } else {
                         $arrValue[$intLangKey] = $strDefaultValue;
                     }
                 }
             }
             /*$arrInfoValue = array();
               if (!empty($arrInputfield['info'][0])){
                   $arrInfoValue[0] = 'title="'.$arrInputfield['info'][0].'"';
                   foreach ($arrInputfield['info'] as $intLangKey => $strInfoValue) {
                       $strInfoClass = 'mediadirInputfieldHint';
                       $arrInfoValue[$intLangKey] = empty($strInfoValue) ? 'title="'.$arrInputfield['info'][0].'"' : 'title="'.$strInfoValue.'"';
                   }
               } else {
                   $arrInfoValue = null;
                   $strInfoClass = '';
               }*/
             if ($objInit->mode == 'backend') {
                 //$strInputfield = '<span id="'.$this->moduleName.'Inputfield_'.$intId.'_Minimized" style="display: block;"><textarea name="'.$this->moduleName.'Inputfield['.$intId.'][0]" id="'.$this->moduleName.'Inputfield_'.$intId.'_0" style="width: 300px; height: 60px;" onfocus="this.select();" />'.$arrValue[0].'</textarea>&nbsp;<a href="javascript:ExpandMinimizeMultiple(\''.$intId.'\');">'.$_ARRAYLANG['TXT_MEDIADIR_MORE'].'&nbsp;&raquo;</a></span>';
                 $strInputfield = '<span id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_ELEMENT_Minimized" style="display: block;">' . new \Cx\Core\Wysiwyg\Wysiwyg($this->moduleNameLC . 'Inputfield[' . $intId . '][0]', contrexx_raw2xhtml($arrValue[0])) . '&nbsp;<a href="javascript:javascript:ExpandMinimizeMultiple(\'' . $intId . '\', \'ELEMENT\');">' . $_ARRAYLANG['TXT_MEDIADIR_MORE'] . '&nbsp;&raquo;</a></span>';
                 $strInputfield .= '<span id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_ELEMENT_Expanded" style="display: none;">';
                 foreach ($this->arrFrontendLanguages as $key => $arrLang) {
                     $intLangId = $arrLang['id'];
                     $strInputfield .= new \Cx\Core\Wysiwyg\Wysiwyg($this->moduleNameLC . 'Inputfield[' . $intId . '][' . $intLangId . ']', contrexx_raw2xhtml($arrValue[$intLangId])) . '&nbsp;' . $arrLang['name'] . '<br />';
                 }
                 $strInputfield .= "&nbsp;<a href=\"javascript:javascript:ExpandMinimizeMultiple('" . $intId . "', 'ELEMENT');\">&laquo;&nbsp;" . $_ARRAYLANG['TXT_MEDIADIR_MINIMIZE'] . "</a>";
                 $strInputfield .= '</span>';
             } else {
                 //$strInputfield = '<textarea name="'.$this->moduleName.'Inputfield['.$intId.'][0]" id="'.$this->moduleName.'Inputfield_'.$intId.'_0" class="'.$this->moduleName.'InputfieldTextarea" onfocus="this.select();" />'.$arrValue[0].'</textarea>';
                 //$strInputfield = '<span id="'.$this->moduleName.'Inputfield_'.$intId.'_Minimized" style="display: block; float: left;" class="'.$this->moduleName.'GroupMultilang"><textarea name="'.$this->moduleName.'Inputfield['.$intId.'][0]" id="'.$this->moduleName.'Inputfield_'.$intId.'_0" class="'.$this->moduleName.'InputfieldTextarea '.$strInfoClass.'" '.$arrInfoValue[0].' onfocus="this.select();" />'.$arrValue[0].'</textarea>&nbsp;<a href="javascript:ExpandMinimize(\''.$intId.'\');">'.$_ARRAYLANG['TXT_MEDIADIR_MORE'].'&nbsp;&raquo;</a></span>';
                 $strInputfield = '<span class="editorFix"><span id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_Minimized" style="display: block;" class="' . $this->moduleNameLC . 'GroupMultilang">' . new \Cx\Core\Wysiwyg\Wysiwyg($this->moduleNameLC . 'Inputfield[' . $intId . '][0]', contrexx_raw2xhtml($arrValue[0])) . '&nbsp;<a href="javascript:javascript:ExpandMinimizeMultiple(\'' . $intId . '\', \'ELEMENT\');">' . $_ARRAYLANG['TXT_MEDIADIR_MORE'] . '&nbsp;&raquo;</a></span>';
                 $strInputfield .= '<span id="' . $this->moduleNameLC . 'Inputfield_' . $intId . '_Expanded" style="display: none;" class="' . $this->moduleNameLC . 'GroupMultilang">';
                 foreach ($this->arrFrontendLanguages as $key => $arrLang) {
                     $intLangId = $arrLang['id'];
                     if ($key + 1 == count($this->arrFrontendLanguages)) {
                         $minimize = "&nbsp;<a href=\"javascript:javascript:ExpandMinimizeMultiple('" . $intId . "', 'ELEMENT');\">&laquo;&nbsp;" . $_ARRAYLANG['TXT_MEDIADIR_MINIMIZE'] . "</a>";
                     } else {
                         $minimize = "";
                     }
                     //$strInputfield .= '<textarea name="'.$this->moduleName.'Inputfield['.$intId.']['.$intLangId.']" id="'.$this->moduleName.'Inputfield_'.$intId.'_'.$intLangId.'" class="'.$this->moduleName.'InputfieldTextarea '.$strInfoClass.'" '.$arrInfoValue[$intLangId].' onfocus="this.select();" />'.$arrValue[$intLangId].'</textarea>&nbsp;'.$arrLang['name'].'<a href="javascript:ExpandMinimize(\''.$intId.'\');">&nbsp;'.$minimize.'</a><br />';
                     $strInputfield .= new \Cx\Core\Wysiwyg\Wysiwyg($this->moduleNameLC . 'Inputfield[' . $intId . '][' . $intLangId . ']', contrexx_raw2xhtml($arrValue[$intLangId])) . '&nbsp;' . $arrLang['name'] . '<a href="javascript:javascript:ExpandMinimizeMultiple(\'' . $intId . '\', \'ELEMENT\');">&nbsp;' . $minimize . '</a><br />';
                 }
                 $strInputfield .= '</span></span>';
             }
             return $strInputfield;
         case 2:
             //search View
             $strValue = isset($_GET[$intId]) ? $_GET[$intId] : '';
             $strInputfield = '<input type="text" name="' . $intId . '" " class="' . $this->moduleNameLC . 'InputfieldSearch" value="' . $strValue . '" />';
             return $strInputfield;
     }
 }