/** * * * @package Kopa * @subpackage Core * @author thethangtran <*****@*****.**> * @since 1.0.0 * */ public static function get_form($template_hierarchy, $setting = array(), $name = '') { $kopa_sidebar_position = KopaInit::get_positions(); $kopa_layout = KopaInit::get_layouts(); $kopa_template_hierarchy = KopaInit::get_template_hierarchy(); $sidebars = get_option(KOPA_OPT_PREFIX . 'sidebars'); $obj = $kopa_template_hierarchy[$template_hierarchy]; $html = '<div class="layout-manage-wrap">'; $html .= '<div class="row clearfix">'; #FORM $html .= '<div class="col-md-5">'; #CBO Layouts $cbo_layout_opts = array(); foreach ($obj['layouts'] as $tmp_layout_slug) { $tmp_layout = $kopa_layout[$tmp_layout_slug]; $cbo_layout_opts[$tmp_layout['slug']] = $tmp_layout['title']; } $tmp_cbo = array('type' => 'select', 'id' => sprintf("cbo_layout_%s", $name), 'name' => sprintf("%s[layout_slug]", $name), 'label' => __('Select the layout', kopa_get_domain()), 'options' => $cbo_layout_opts, 'wrap_begin' => '<div class="row-layout-wrap row clearfix">', 'wrap_end' => '</div>', 'control_begin' => '<div class="col-md-12">', 'control_end' => '</div>', 'label_begin' => '<div class="col-layout-title col-md-12">', 'label_end' => '</div>', 'classes' => array('cbo_layout'), 'value' => $setting['layout_slug'], 'attributes' => array('onchange' => 'KopaLayout.onChange(event, jQuery(this));')); $html .= KopaControl::get_html($tmp_cbo); #END-CBO Layouts foreach ($obj['layouts'] as $tmp_layout_slug) { $tmp_layout = $kopa_layout[$tmp_layout_slug]; $classes = array('row-sidebars-wrap', 'row', 'clearfix'); $classes[] = $setting['layout_slug'] == $tmp_layout['slug'] ? 'row-sidebars-active' : 'row-sidebars-deactive'; $classes[] = "row-sidebars-for-layout-{$tmp_layout['slug']}"; $html .= sprintf('<div class="%s">', implode(' ', $classes)); $html .= '<div class="col-md-12">'; $tmp_positions = $tmp_layout['positions']; for ($i = 0; $i < count($tmp_positions); $i++) { $tmp_position = $tmp_positions[$i]; $tmp_cbo = array('type' => 'select', 'id' => sprintf("cbo_%s_%s", $name, $tmp_position), 'name' => sprintf("%s[sidebars][%s][]", $name, $tmp_layout_slug), 'options' => $sidebars, 'label' => $kopa_sidebar_position[$tmp_position]['title'], 'wrap_begin' => '<div class="row-sidebar-wrap row clearfix">', 'wrap_end' => '</div>', 'control_begin' => '<div class="col-xs-7">', 'control_end' => '</div>', 'label_begin' => '<div class="col-xs-5 col-sidebar-title">', 'label_end' => '</div>', 'classes' => array('cbo_sidebar'), 'value' => $setting['sidebars'][$tmp_layout_slug][$i]); $html .= KopaControl::get_html($tmp_cbo); } $html .= '</div>'; $html .= '</div>'; } $html .= '</div>'; #END-FORM #THUMBNAIL $html .= '<div class="col-md-7 col-layout-thumb">'; foreach ($obj['layouts'] as $tmp_layout_slug) { $classes = array('img-responsive'); $classes[] = $setting['layout_slug'] == $tmp_layout_slug ? 'layout-thumb-active' : 'layout-thumb-deactive'; $classes[] = "thumb-for-layout-{$tmp_layout_slug}"; $html .= sprintf('<img src="%s" class="%s">', get_template_directory_uri() . "/library/images/layout/{$tmp_layout_slug}.png", implode(' ', $classes)); } $html .= '</div>'; #END-THUMBNAIL $html .= '</div>'; $html .= '</div>'; return $html; }