/** * * * @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; }
/** * @package Kopa * @subpackage Core * @author thethangtran <*****@*****.**> * @since 1.0.0 */ function kopa_save_layout_setting() { check_ajax_referer('kopa_save_layout_setting', 'ajax_nonce'); $kopa_template_hierarchy = KopaInit::get_template_hierarchy(); $data = $_POST; $new_data = array(); foreach ($kopa_template_hierarchy as $slug => $info) { $new_data[$slug] = $data[$slug]; } update_option(KOPA_OPT_PREFIX . 'layout_settings', $new_data); exit; }
<?php /** * * @package Kopa * @subpackage Core * @author thethangtran <*****@*****.**> * @since 1.0.0 * */ $kopa_template_hierarchy = KopaInit::get_template_hierarchy(); $tmp_kopaSettings = get_option(KOPA_OPT_PREFIX . 'layout_settings'); ?> <img id="kopa-loading-gif" src="<?php echo get_template_directory_uri() . '/library/images/loading.gif'; ?> "> <div id="kopa-cpanel-wrapper" class="clearfix"> <div class="col-left pull-left"> <ul class="kopa-cpanel-nav"> <?php $is_first = true; foreach ($kopa_template_hierarchy as $slug => $tab) { if ($is_first) { printf('<li><a class="kopa-tab-link active" href="#tab-%s"><i class="%s"></i> <span>%s</span></a></li>', $slug, $tab['icon'], $tab['title']); $is_first = false; } else { printf('<li><a class="kopa-tab-link" href="#tab-%s"><i class="%s"></i><span>%s</span></a></li>', $slug, $tab['icon'], $tab['title']); } ?>