function __construct($id = false)
 {
     $this->builder_items = ST_Page_Builder_Items_Config();
     if ($id > 0) {
         $p = get_post($id);
         $this->post = $p;
         $this->id = $p->ID;
     } else {
         global $post, $pagenow;
         $this->post = $post;
         $this->id = $post->ID;
     }
     $this->saved_data = ST_Page_Builder::get_builder_settings($this->id, array());
     if (empty($this->saved_data) or !is_array($this->saved_data) or $this->id <= 0) {
         $this->no_value = false;
         $this->saved_data = array();
     }
     // parent::__construct();
     $this->items_sizes = ST_Page_Builder::get_builder_item_sizes();
     $this->class_to_items_size = ST_Page_Builder::class_to_items_size();
 }
 function __construct($builder_data, $post_id = 0)
 {
     $this->id = $post_id;
     $this->include_items = array();
     $this->builder_data = $builder_data;
     $this->builder_items = ST_Page_Builder_Items_Config();
     $this->items_sizes = ST_Page_Builder::get_builder_item_sizes();
     $this->class_to_items_size = ST_Page_Builder::class_to_items_size();
     // settings for colum
     add_filter('stpb_column_generate_settings_before', array($this, 'column_settings_before'), 10, 2);
     add_filter('stpb_column_generate_settings_after', array($this, 'column_settings_after'), 10, 2);
     // settings for row
     add_filter('stpb_row_generate_settings_before', array($this, 'column_settings_before'), 10, 2);
     add_filter('stpb_row_generate_settings_after', array($this, 'column_settings_after'), 10, 2);
 }
    function st_add_shorcodes_button()
    {
        $items = ST_Page_Builder_Items_Config();
        global $post;
        $screen = get_current_screen();
        if (!in_array($screen->base, array('post'))) {
            return;
        }
        $layouts = array(array('icon' => ST_PAGEBUILDER_URL . "assets/images/layout_11.png", 'title' => __('Layout 1/1', 'smooththemes'), 'data_shortcode' => '[row] [col width="1/1"]  Your content [/col] [/row]'), array('icon' => ST_PAGEBUILDER_URL . "assets/images/layout_12.png", 'title' => __('Layout 1/2+1/2', 'smooththemes'), 'data_shortcode' => '[row] [col width="1/2"]  Your content [/col] [col width="1/2"]  Your content [/col] [/row]'), array('icon' => ST_PAGEBUILDER_URL . "assets/images/layout_13.png", 'title' => __('Layout 1/3+1/3+1/3', 'smooththemes'), 'data_shortcode' => '[row] [col width="1/3"]  Your content [/col] [col width="1/3"]  Your content [/col] [col width="1/3"]  Your content [/col] [/row]'), array('icon' => ST_PAGEBUILDER_URL . "assets/images/layout_14.png", 'title' => __('Layout 1/4+1/4+1/4+1/4', 'smooththemes'), 'data_shortcode' => '[row] [col width="1/4"]  Your content [/col] [col width="1/4"]  Your content [/col] [col width="1/4"]  Your content [/col] [col width="1/4"]  Your content [/col] [/row]'));
        $items = apply_filters('st_list_shortcodes', array_merge($layouts, $items));
        $builder = new ST_Page_Builder_Interface();
        ?>
        <a href="#" id="st-editor-shortcodes" title="<?php 
        _e('Select shortcode to insert', 'smooththemes');
        ?>
" class="button-secondary"><span><i class="iconentypo-flash"></i></span><?php 
        _e('Shortcodes', 'smooththemes');
        ?>
</a>
        <div id = "st-editor-list-sc-tpl" class="hide">
            <div class="st-list-sc">
                <?php 
        foreach ($items as $func => $item) {
            if (isset($item['shortcode']) && $item['shortcode'] === false) {
                continue;
            }
            ?>
                    <div class="item-cell" <?php 
            echo $item['data_shortcode'] ? ' data-shortcode="' . esc_attr($item['data_shortcode']) . '" ' : '';
            ?>
 data-id="<?php 
            echo $func != '' ? $func . '-sc-tpl' : '';
            ?>
" edit-title="<?php 
            echo esc_attr($item['title']);
            ?>
">
                    <span class="iconw">
                        <span class="icon">
                    <?php 
            if ($item['icon'] != '') {
                ?>
                        <img src="<?php 
                echo $item['icon'];
                ?>
" alt="icon">
                    <?php 
            } else {
                ?>
                        <span class="no-icon"></span>
                    <?php 
            }
            ?>
                    </span>
                    </span>
                        <strong><?php 
            echo esc_html($item['title']);
            ?>
</strong>
                    </div>
                <?php 
        }
        ?>
            </div>
        </div>

        <?php 
        foreach ($items as $func => $item) {
            if (function_exists($func)) {
                ?>
            <div  class="hide" id="<?php 
                echo $func . '-sc-tpl';
                ?>
">
                <?php 
                ?>
                    <input type="hidden" value="<?php 
                echo $func;
                ?>
" class="st-item-func" data-name="[item_func]" >
                    <?php 
                call_user_func($func, '[settings]', array(), $post, true, $builder);
                ?>
            </div>
            <?php 
            }
        }
        ?>
    <?php 
    }