id_st_easy_content_column) { Tools::redirectAdmin(AdminController::$currentIndex.'&configure='.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules')); } $easycontent_element = new StEasyContentElementClass($id_st_easy_content_element); $variants = array(); $variants_default = ['400'=>'400', '700'=>'700', 'italic'=>'italic', '700italic'=>'700italic']; $google_font_link = ''; if($easycontent_element->id){ $settings = StEasyContentSettingClass::getSetting($easycontent_element->id, 2, true); if(isset($settings['st_header_font_select']) && $settings['st_header_font_select']) { $temp = $this->googleFonts[str_replace(' ', '_', $settings['st_header_font_select'])]['variants']; foreach ($temp as $v) { $variants_default[$v] = $v; } //this can be improved by moving it to the head of BO $google_font_link .= ''; } } foreach($variants_default AS $value) { $variants[] = array('id'=>$value,'name'=>$value); } array_unshift($variants, array('id'=>'','name'=>'--')); $this->fields_form[0]['form'] = array( 'legend' => array( 'title' => $this->getTranslator()->trans(($id_st_easy_content_element?'Edit':'Create').' an Element:', array(), 'Modules.Steasycontent.Admin'), 'icon' => 'icon-cogs' ), 'input' => array( 'predefinedtempaltes' => array( 'type' => 'predefinedtempaltes', 'label' => '', 'col' => 12, 'name' => 'st_el_textboxes', 'default_value' => '1_1', 'image_path' => $this->_path, 'values' => array( 1 => array(1), 2 => array(1), 3 => array(1), ), 'validation' => 'isUnsignedInt', 'desc' => array( $this->getTranslator()->trans('You can still make changes to have what you want after choosing a predefined style.', array(), 'Modules.Steasycontent.Admin'), ), ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Header:', array(), 'Admin.Theme.Panda'), 'name' => 'st_el_header', 'lang' => true, 'validation' => 'isGenericName', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Sub header:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_sub_header', 'lang' => true, 'validation' => 'isGenericName', ), array( 'type' => 'textarea', 'label' => $this->getTranslator()->trans('Text:', array(), 'Admin.Theme.Panda'), 'lang' => true, 'name' => 'st_el_text', 'cols' => 40, 'rows' => 10, 'autoload_rte' => true, 'validation' => 'isAnything', ), array( 'type' => 'radio', 'label' => $this->getTranslator()->trans('Style text:', array(), 'Admin.Theme.Panda'), 'name' => 'st_el_text_style', 'values' => array( array( 'id' => 'st_el_text_style_none', 'value' => '', 'label' => $this->getTranslator()->trans('None', array(), 'Admin.Theme.Panda')), array( 'id' => 'st_el_text_style_blockquote_1', 'value' => 'blockquote', 'label' => $this->getTranslator()->trans('Blockquote 1', array(), 'Admin.Theme.Panda')), array( 'id' => 'st_el_text_style_blockquote_2', 'value' => 'blockquote_1', 'label' => $this->getTranslator()->trans('Blockquote 2, make sure the first html tag is p.', array(), 'Admin.Theme.Panda')), ), 'default_value' => '', 'validation' => 'isGenericName', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Drop cap color / blockquote border color / quotes color:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_text_style_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Additional info:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_info', 'lang' => true, 'validation' => 'isGenericName', 'desc' => $this->getTranslator()->trans('This can be used to display auther name in testimonal boxes.', array(), 'Modules.Steasycontent.Admin'), ), array( 'type' => 'select', 'label' => $this->getTranslator()->trans('Stars:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_stars', 'options' => array( 'query' => array( array('id' => 1, 'name'=> 1), array('id' => 2, 'name'=> 2), array('id' => 3, 'name'=> 3), array('id' => 4, 'name'=> 4), array('id' => 5, 'name'=> 5), ), 'id' => 'id', 'name' => 'name', 'default' => array( 'value' => 0, 'label' => 0, ), ), 'desc' => $this->getTranslator()->trans('This is used to display stars in testimonal boxes.', array(), 'Modules.Steasycontent.Admin'), ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Button url:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_url', 'lang' => true, 'validation' => 'isGenericName', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('button text:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_button', 'lang' => true, 'validation' => 'isGenericName', ), ), 'buttons' => array( array( 'type' => 'submit', 'title' => $this->getTranslator()->trans('Save', array(), 'Admin.Actions'), 'icon' => 'process-icon-save', 'class'=> 'pull-right' ), ), 'submit' => array( 'title' => $this->getTranslator()->trans('Save and stay', array(), 'Admin.Actions'), 'stay' => true ), ); $this->fields_form[5]['form'] = array( 'legend' => array( 'title' => $this->getTranslator()->trans('Image settings:', array(), 'Admin.Theme.Panda'), 'icon' => 'icon-cogs', ), 'input' => array( array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Image border color:', array(), 'Admin.Theme.Panda'), 'name' => 'st_image_border_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Image border size:', array(), 'Admin.Theme.Panda'), 'name' => 'st_image_border_size', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => '', 'validation' => 'isNullOrUnsignedId', 'desc' => $this->getTranslator()->trans('Leave it empty to use the default value.', array(), 'Admin.Theme.Panda'), ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Image border radius:', array(), 'Admin.Theme.Panda'), 'name' => 'st_image_border_radius', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => '', 'validation' => 'isNullOrUnsignedId', 'desc' => array( $this->getTranslator()->trans('Set a large value for this field to have a round image.', array(), 'Modules.Steasycontent.Admin'), $this->getTranslator()->trans('Leave it empty to use the default value.', array(), 'Admin.Theme.Panda'), ), ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Image width:', array(), 'Admin.Theme.Panda'), 'name' => 'st_image_width', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => '', 'validation' => 'isNullOrUnsignedId', 'desc' => array( $this->getTranslator()->trans('Leave it empty to use the default 60px.', array(), 'Modules.Steasycontent.Admin'), ), ), ), 'buttons' => array( array( 'type' => 'submit', 'title' => $this->getTranslator()->trans('Save', array(), 'Admin.Actions'), 'icon' => 'process-icon-save', 'class'=> 'pull-right' ), ), 'submit' => array( 'title' => $this->getTranslator()->trans('Save and stay', array(), 'Admin.Actions'), 'stay' => true ), ); $this->fields_form[6]['form'] = array( 'legend' => array( 'title' => $this->getTranslator()->trans('Text settings:', array(), 'Admin.Theme.Panda'), 'icon' => 'icon-cogs' ), 'input' => array( array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Header color:', array(), 'Admin.Theme.Panda'), 'name' => 'st_header_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Header font size:', array(), 'Admin.Theme.Panda'), 'name' => 'st_header_size', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => 0, 'validation' => 'isNullOrUnsignedId', 'desc' => $this->getTranslator()->trans('Set it to 0 to use the default value.', array(), 'Modules.Steasycontent.Admin'), ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Sub header color:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_sub_header_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Sub header font size:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_sub_header_size', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => 0, 'validation' => 'isNullOrUnsignedId', 'desc' => $this->getTranslator()->trans('Set it to 0 to use the default value.', array(), 'Modules.Steasycontent.Admin'), ), array( 'type' => 'select', 'label' => $this->getTranslator()->trans('Google fonts:', array(), 'Admin.Theme.Panda'), 'name' => 'st_header_font_select', 'onchange' => 'handle_font_change(this);', 'class' => 'st_google_font_select', 'options' => array( 'query' => $this->fontOptions(), 'id' => 'id', 'name' => 'name', 'default' => array( 'value' => 0, 'label' => $this->getTranslator()->trans('Use default', array(), 'Admin.Theme.Panda'), ), ), 'default_value' => '', 'validation' => 'isGenericName', ), 'font_text'=>array( 'type' => 'select', 'label' => $this->getTranslator()->trans('Font weight:', array(), 'Admin.Theme.Panda'), 'onchange' => 'handle_font_style(this);', 'class' => 'st_google_font_weight', 'name' => 'st_header_font_weight', 'options' => array( 'query' => $variants, 'id' => 'id', 'name' => 'name', ), 'default_value' => '', 'validation' => 'isAnything', 'desc' => '
Example Title
'.$google_font_link, ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Star color:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_star_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Highlight star color:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_star_light_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Text color:', array(), 'Admin.Theme.Panda'), 'name' => 'st_text_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Text font size:', array(), 'Admin.Theme.Panda'), 'name' => 'st_text_size', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => 0, 'validation' => 'isNullOrUnsignedId', 'desc' => $this->getTranslator()->trans('Set it to 0 to use the default value.', array(), 'Modules.Steasycontent.Admin'), ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Additional info color:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_info_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Additional font size:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_info_size', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => 0, 'validation' => 'isNullOrUnsignedId', 'desc' => $this->getTranslator()->trans('Set it to 0 to use the default value.', array(), 'Modules.Steasycontent.Admin'), ), array( 'type' => 'switch', 'label' => $this->getTranslator()->trans('Apply the same font as header to text:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_text_font', 'is_bool' => true, 'default_value' => 0, 'values' => array( array( 'id' => 'active_on', 'value' => 1, 'label' => $this->getTranslator()->trans('Yes', array(), 'Admin.Theme.Panda') ), array( 'id' => 'active_off', 'value' => 0, 'label' => $this->getTranslator()->trans('No', array(), 'Admin.Theme.Panda') ) ), 'validation' => 'isUnsignedInt', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Button color:', array(), 'Admin.Theme.Panda'), 'name' => 'st_link_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Button hover color:', array(), 'Admin.Theme.Panda'), 'name' => 'st_link_hover_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), /*array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Button background:', array(), 'Admin.Theme.Panda'), 'name' => 'st_link_bg', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Button hover background:', array(), 'Admin.Theme.Panda'), 'name' => 'st_link_hover_bg', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ),*/ ), 'buttons' => array( array( 'type' => 'submit', 'title' => $this->getTranslator()->trans('Save', array(), 'Admin.Actions'), 'icon' => 'process-icon-save', 'class'=> 'pull-right' ), ), 'submit' => array( 'title' => $this->getTranslator()->trans('Save and stay', array(), 'Admin.Actions'), 'stay' => true ), ); $this->fields_form[7]['form'] = array( 'legend' => array( 'title' => $this->getTranslator()->trans('Block settings:', array(), 'Admin.Theme.Panda'), 'icon' => 'icon-cogs' ), 'input' => array( array( 'type' => 'radio', 'label' => $this->getTranslator()->trans('Text alignment:', array(), 'Admin.Theme.Panda'), 'name' => 'st_el_text_align', 'values' => array( array( 'id' => 'text_align_default', 'value' => 0, 'label' => $this->getTranslator()->trans('Use default', array(), 'Admin.Theme.Panda')), array( 'id' => 'text_align_left', 'value' => 1, 'label' => $this->getTranslator()->trans('Left', array(), 'Admin.Theme.Panda')), array( 'id' => 'text_align_center', 'value' => 2, 'label' => $this->getTranslator()->trans('Center', array(), 'Admin.Theme.Panda')), array( 'id' => 'text_align_right', 'value' => 3, 'label' => $this->getTranslator()->trans('Right', array(), 'Admin.Theme.Panda')), ), 'default_value' => 0, 'validation' => 'isUnsignedInt', ), array( 'type' => 'select', 'label' => $this->getTranslator()->trans('Content Width:', array(), 'Modules.Steasycontent.Admin'), 'name' => 'st_el_content_width', 'options' => array( 'query' => self::$text_width, 'id' => 'id', 'name' => 'name', 'default' => array( 'value' => '0', 'label' => $this->getTranslator()->trans('100%', array(), 'Modules.Steasycontent.Admin') ) ), ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Top padding:', array(), 'Admin.Theme.Panda'), 'name' => 'st_item_top_padding', 'default_value' => '', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'desc' => $this->getTranslator()->trans('Leave it empty to use the default value.', array(), 'Admin.Theme.Panda'), 'validation' => 'isNullOrUnsignedId', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Bottom padding:', array(), 'Admin.Theme.Panda'), 'name' => 'st_item_bottom_padding', 'default_value' => '', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'desc' => $this->getTranslator()->trans('Leave it empty to use the default value.', array(), 'Admin.Theme.Panda'), 'validation' => 'isNullOrUnsignedId', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Background:', array(), 'Admin.Theme.Panda'), 'name' => 'st_item_bg', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'color', 'label' => $this->getTranslator()->trans('Border color:', array(), 'Admin.Theme.Panda'), 'name' => 'st_item_border_color', 'size' => 33, 'default_value' => '', 'validation' => 'isColor', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Border size:', array(), 'Admin.Theme.Panda'), 'name' => 'st_item_border_size', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => 0, 'validation' => 'isNullOrUnsignedId', 'desc' => $this->getTranslator()->trans('Set it to 0 to use the default value.', array(), 'Modules.Steasycontent.Admin'), ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Border radius:', array(), 'Admin.Theme.Panda'), 'name' => 'st_item_border_radius', 'prefix' => 'px', 'class' => 'fixed-width-lg', 'default_value' => '', 'validation' => 'isNullOrUnsignedId', 'desc' => array( $this->getTranslator()->trans('Leave it empty to use the default value.', array(), 'Admin.Theme.Panda'), ), ), array( 'type' => 'switch', 'label' => $this->getTranslator()->trans('Status:', array(), 'Admin.Theme.Panda'), 'name' => 'active', 'is_bool' => true, 'default_value' => 1, 'values' => array( array( 'id' => 'active_on', 'value' => 1, 'label' => $this->getTranslator()->trans('Enabled', array(), 'Admin.Theme.Panda') ), array( 'id' => 'active_off', 'value' => 0, 'label' => $this->getTranslator()->trans('Disabled', array(), 'Admin.Theme.Panda') ) ), 'validation' => 'isBool', ), array( 'type' => 'text', 'label' => $this->getTranslator()->trans('Position:', array(), 'Admin.Theme.Panda'), 'name' => 'position', 'default_value' => 0, 'class' => 'fixed-width-sm', 'validation' => 'isUnsignedInt', ), ), 'buttons' => array( array( 'type' => 'submit', 'title' => $this->getTranslator()->trans('Save', array(), 'Admin.Actions'), 'icon' => 'process-icon-save', 'class'=> 'pull-right' ), ), 'submit' => array( 'title' => $this->getTranslator()->trans('Save and stay', array(), 'Admin.Actions'), 'stay' => true ), ); if (!$easycontent_element->id) { $this->fields_form[0]['form']['input'][] = array('type' => 'hidden', 'name' => 'id_st_easy_content_column'); $easycontent_element->id_st_easy_content_column = $this->id_st_easy_content_column; if ($element = Tools::getValue('element')) { $this->fields_form[0]['form']['input'][] = array('type' => 'hidden', 'name' => 'element'); $easycontent_element->element = $element; } $query_string = '&id_st_easy_content_column='.$this->id_st_easy_content_column.'&viewsteasycontentcolumn'; } else { $query_string = '&id_st_easy_content_column='.$easycontent_element->id_st_easy_content_column.'&viewsteasycontentcolumn'; } $this->fields_form[0]['form']['input'][] = $this->fields_form[5]['form']['input'][] = $this->fields_form[6]['form']['input'][] = $this->fields_form[7]['form']['input'][] = array( 'type' => 'html', 'id' => 'a_cancel', 'label' => '', 'name' => ' '.$this->getTranslator()->trans('Back to list', array(), 'Admin.Theme.Panda').'', ); $languages = Language::getLanguages(true); $default_lang = (int)Configuration::get('PS_LANG_DEFAULT'); foreach ($languages as $lang) { $this->fields_form[0]['form']['input']['st_image_'.$lang['id_lang']] = array( 'type' => 'file', 'label' => $this->getTranslator()->trans('Image', array(), 'Admin.Theme.Panda').' - '.$lang['name'].($default_lang == $lang['id_lang'] ? '('.$this->gettranslator()->trans('default language', array(), 'Admin.Theme.Panda').')' : '').':', 'name' => 'st_image_'.$lang['id_lang'], // 'required' => ($default_lang == $lang['id_lang']), 'desc' => $this->getTranslator()->trans('This module would not change image names for seo purpose, so ensure the image you are going to upload has an unique name.', array(), 'Modules.Steasycontent.Admin').'