ESSBOptionsStructureHelper::field_section_end('quick', 'quick-2');
ESSBOptionsStructureHelper::field_heading('quick', 'quick-3', 'heading1', __('3. Social Share Buttons', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_func('quick', 'quick-3', 'essb3_network_selection', __('Social Networks', ESSB3_TEXT_DOMAIN), __('Select networks that you wish to appear in your list. With drag and drop you can rearrange them.', ESSB3_TEXT_DOMAIN));
$more_options = array("1" => "Display all active networks after more button", "2" => "Display all social networks as pop up", "3" => "Display only active social networks as pop up");
ESSBOptionsStructureHelper::field_select('quick', 'quick-3', 'more_button_func', __('More button', ESSB3_TEXT_DOMAIN), __('Select networks that you wish to appear in your list. With drag and drop you can rearrange them.', ESSB3_TEXT_DOMAIN), $more_options);
$more_options = array("plus" => "Plus icon", "dots" => "Dots icon");
ESSBOptionsStructureHelper::field_select('quick', 'quick-3', 'more_button_icon', __('More button icon', ESSB3_TEXT_DOMAIN), __('Select more button icon style. You can choose from default + symbol or dots symbol', ESSB3_TEXT_DOMAIN), $more_options);
ESSBOptionsStructureHelper::field_heading('quick', 'quick-4', 'heading1', __('4. Counters', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_switch('quick', 'quick-4', 'show_counter', __('Display counter of sharing', ESSB3_TEXT_DOMAIN), __('Activate display of share counters.', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
$counter_mode = array("" => "Real time share counters", "cached" => "Cached share counters");
ESSBOptionsStructureHelper::field_select('quick', 'quick-4', 'counter_mode', __('Counter update mode', ESSB3_TEXT_DOMAIN), __('Choose how your counters will update. Cached counters will work faster than realtime because they update on predefined period. Please note that when you use cache plugin cached counters will update when cache is expired in cache plugin', ESSB3_TEXT_DOMAIN), $counter_mode);
ESSBOptionsStructureHelper::field_heading('quick', 'quick-4', 'heading2', __('Button Counters', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_select('quick', 'quick-4', 'counter_pos', __('Position of counters', ESSB3_TEXT_DOMAIN), __('Choose your default button counter position', ESSB3_TEXT_DOMAIN), essb_avaliable_counter_positions());
ESSBOptionsStructureHelper::field_switch('quick', 'quick-4', 'facebooktotal', __('Display Facebook Total Count', ESSB3_TEXT_DOMAIN), __('Enable this option if you wish to display total count not only share count which is displayed by default.', ESSB3_TEXT_DOMAIN), 'yes', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_heading('quick', 'quick-4', 'heading2', __('Total Counter', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_select('quick', 'quick-4', 'total_counter_pos', __('Position of total counter', ESSB3_TEXT_DOMAIN), __('For vertical display methods left means before buttons (top) and right means after buttons (bottom).', ESSB3_TEXT_DOMAIN), essb_avaiable_total_counter_position());
ESSBOptionsStructureHelper::field_section_start('quick', 'quick-4', __('Total counter design options', ESSB3_TEXT_DOMAIN), __('Additional settings for total counter based on position.', ESSB3_TEXT_DOMAIN), '');
ESSBOptionsStructureHelper::field_textbox('quick', 'quick-4', 'counter_total_text', __('Change total text', ESSB3_TEXT_DOMAIN), __('This option allows you to change text Total that appear when left/right postion of total counter is selected.', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_textbox('quick', 'quick-4', 'activate_total_counter_text', __('Append text to total counter when big number styles are active', ESSB3_TEXT_DOMAIN), __('This option allows you to add custom text below counter when big number styles are active. For example you can add text shares.', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_textarea('quick', 'quick-4', 'total_counter_afterbefore_text', __('Before/after social share buttons counter text', ESSB3_TEXT_DOMAIN), __('Customize the text that is displayed in before/ater share buttons display method. To display the total share number use the string {TOTAL} in text. Example: {TOTAL} users share us', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_section_end('quick', 'quick-4');
ESSBOptionsStructureHelper::field_heading('quick', 'quick-5', 'heading1', __('5. Display Buttons On', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_func('quick', 'quick-5', 'essb3_post_type_select', __('Where to display buttons', ESSB3_TEXT_DOMAIN), __('Choose post types where you wish buttons to appear. If you are running WooCommerce store you can choose between post type Products which will display share buttons into product description or option to display buttons below price.', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_section_start('quick', 'quick-5', __('Display in post excerpt', ESSB3_TEXT_DOMAIN), __('Activate this option if your theme is using excerpts and you wish to display share buttons in excerpts', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_switch('quick', 'quick-5', 'display_excerpt', __('Activate', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
$listOfOptions = array("top" => "Before excerpt", "bottom" => "After excerpt");
ESSBOptionsStructureHelper::field_select('quick', 'quick-5', 'display_excerpt_pos', __('Buttons position in excerpt', ESSB3_TEXT_DOMAIN), __(''), $listOfOptions);
ESSBOptionsStructureHelper::field_section_end('quick', 'quick-5');
ESSBOptionsStructureHelper::field_heading('quick', 'quick-6', 'heading1', __('6. Position Of Buttons', ESSB3_TEXT_DOMAIN));
ESSBOptionsStructureHelper::field_image_radio('quick', 'quick-6', 'content_position', __('Primary content display position', ESSB3_TEXT_DOMAIN), __('Choose default method that will be used to render buttons inside content', ESSB3_TEXT_DOMAIN), essb_avaliable_content_positions());
ESSBOptionsStructureHelper::field_image_checkbox('quick', 'quick-6', 'button_position', __('Additional button display positions', ESSB3_TEXT_DOMAIN), __('Choose additional display methods that can be used to display buttons.', ESSB3_TEXT_DOMAIN), essb_available_button_positions());
    function form($instance)
    {
        global $essb_networks;
        $counter_pos = essb_avaliable_counter_positions();
        $counter_pos['no'] = "No social counters";
        $network_list = array();
        $options = array();
        //get_option ( EasySocialShareButtons::$plugin_settings_name );
        $counter = isset($instance['essb_w_counter']) ? esc_attr($instance['essb_w_counter']) : 'no';
        $total_counter = isset($instance['essb_w_totalcounter']) ? esc_attr($instance['essb_w_totalcounter']) : 'no';
        $fixed = isset($instance['essb_w_fixed']) ? esc_attr($instance['essb_w_fixed']) : '';
        $style = isset($instance['essb_w_style']) ? esc_attr($instance['essb_w_style']) : '';
        $align = isset($instance['essb_w_align']) ? esc_attr($instance['essb_w_align']) : 'left';
        $template = isset($instance['essb_w_template']) ? esc_attr($instance['essb_w_template']) : 'left';
        $nospace = isset($instance['essb_w_nospace']) ? esc_attr($instance['essb_w_nospace']) : '';
        $native_buttons = isset($instance['essb_w_native']) ? esc_attr($instance['essb_w_native']) : '';
        $title = isset($instance['title']) ? $instance['title'] : '';
        ?>
		
		<p>
  <label for="<?php 
        echo $this->get_field_id('title');
        ?>
"><?php 
        echo __('Title', ESSB3_TEXT_DOMAIN);
        ?>
:</label>
  <input type="text" name="<?php 
        echo $this->get_field_name('title');
        ?>
" id="<?php 
        echo $this->get_field_id('title');
        ?>
" class="widefat" value="<?php 
        echo $title;
        ?>
" />
  <br /><small><?php 
        _e('Fill that field if you wish your widget to have title', ESSB3_TEXT_DOMAIN);
        ?>
</small>
</p>
		
		
		<?php 
        if (is_array($essb_networks)) {
            foreach ($essb_networks as $k => $v) {
                $display_name = isset($v['name']) ? $v['name'] : $k;
                if (trim($display_name) == "") {
                    $display_name = $k;
                }
                $is_active = isset($instance['essb_w_' . $k]) ? esc_attr($instance['essb_w_' . $k]) : '';
                ?>
							<p>
			<input id="<?php 
                echo $this->get_field_id('essb_w_' . $k);
                ?>
" name="<?php 
                echo $this->get_field_name('essb_w_' . $k);
                ?>
" type="checkbox" value="1" <?php 
                checked('1', $is_active);
                ?>
 />
			<label for="<?php 
                echo $this->get_field_id('essb_w_' . $k);
                ?>
"><?php 
                echo $display_name;
                ?>
</label>
			</p>
			
				
				<?php 
            }
        }
        ?>
		
			<p>
		<label for="<?php 
        echo $this->get_field_id('essb_w_style');
        ?>
"><?php 
        _e('Button display style:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<select class="widefat" id="<?php 
        echo $this->get_field_id('essb_w_style');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_style');
        ?>
" >
					<option value="icon" <?php 
        if ($style == 'icon') {
            echo "selected=\"selected\"";
        } else {
            echo "";
        }
        ?>
><?php 
        _e('Display share buttons only as icon without network names', ESSB3_TEXT_DOMAIN);
        ?>
</option>
					<option value="icon_hover" <?php 
        if ($style == 'icon_hover') {
            echo "selected=\"selected\"";
        } else {
            echo "";
        }
        ?>
><?php 
        _e('Display share buttons as icon with network name appear when button is pointed', ESSB3_TEXT_DOMAIN);
        ?>
</option>
					<option value="button" <?php 
        if ($style == 'button') {
            echo "selected=\"selected\"";
        } else {
            echo "";
        }
        ?>
><?php 
        _e('Display as share button with icon and network name', ESSB3_TEXT_DOMAIN);
        ?>
</option>
					<option value="button_name" <?php 
        if ($style == 'button_name') {
            echo "selected=\"selected\"";
        } else {
            echo "";
        }
        ?>
><?php 
        _e('Display as share button with network name and without icon', ESSB3_TEXT_DOMAIN);
        ?>
</option>
					</select>
		</p>
			<p>
		<label for="<?php 
        echo $this->get_field_id('essb_w_align');
        ?>
"><?php 
        _e('Buttons align:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<select class="widefat" id="<?php 
        echo $this->get_field_id('essb_w_align');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_align');
        ?>
" >
					<option value="left" <?php 
        if ($align == 'left') {
            echo "selected=\"selected\"";
        } else {
            echo "";
        }
        ?>
><?php 
        _e('Left', ESSB3_TEXT_DOMAIN);
        ?>
</option>
					<option value="right" <?php 
        if ($align == 'right') {
            echo "selected=\"selected\"";
        } else {
            echo "";
        }
        ?>
><?php 
        _e('Right', ESSB3_TEXT_DOMAIN);
        ?>
</option>
					<option value="center" <?php 
        if ($align == 'center') {
            echo "selected=\"selected\"";
        } else {
            echo "";
        }
        ?>
><?php 
        _e('Center', ESSB3_TEXT_DOMAIN);
        ?>
</option>
					</select>
		</p>
		<p>
		<label for="<?php 
        echo $this->get_field_id('essb_w_counter');
        ?>
"><?php 
        _e('Display Counter:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<select class="widefat" id="<?php 
        echo $this->get_field_id('essb_w_counter');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_counter');
        ?>
" >
					<?php 
        foreach ($counter_pos as $position => $text) {
            $is_active = $position == $counter ? " selected=\"selected\"" : "";
            echo '<option value="' . $position . '" ' . $is_active . '>' . $text . '</option>';
        }
        ?>
					</select>
		</p>
		
			<p>
		<label for="<?php 
        echo $this->get_field_id('essb_w_totalcounter');
        ?>
"><?php 
        _e('Display Total Counter:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<select class="widefat" id="<?php 
        echo $this->get_field_id('essb_w_totalcounter');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_totalcounter');
        ?>
" >
			
			<?php 
        foreach (essb_avaiable_total_counter_position() as $position => $text) {
            $is_active = $position == $total_counter ? " selected=\"selected\"" : "";
            echo '<option value="' . $position . '" ' . $is_active . '>' . $text . '</option>';
        }
        ?>
					</select>
		</p>
		
			<p>
			<label for="<?php 
        echo $this->get_field_id('essb_w_fixed');
        ?>
"><?php 
        _e('Fixed width buttons:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<input id="<?php 
        echo $this->get_field_id('essb_w_fixed');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_fixed');
        ?>
" value="true" <?php 
        if ($fixed) {
            echo 'checked="checked"';
        }
        ?>
 type="checkbox" />
			<br /><small><?php 
        _e('This option will generate buttons with equal width', ESSB3_TEXT_DOMAIN);
        ?>
</small>
		</p>
		<p>
			<label for="<?php 
        echo $this->get_field_id('essb_w_width');
        ?>
"><?php 
        _e('Fixed width buttons value :', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<input id="<?php 
        echo $this->get_field_id('essb_w_width');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_width');
        ?>
" value="<?php 
        if (isset($instance['essb_w_width'])) {
            echo $instance['essb_w_width'];
        }
        ?>
" style="width:40px;" type="text" /> <?php 
        _e('px', ESSB3_TEXT_DOMAIN);
        ?>
		</p>
		
		<p>
		<label for="<?php 
        echo $this->get_field_id('essb_w_template');
        ?>
"><?php 
        _e('Template:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
<select class="widefat" id="<?php 
        echo $this->get_field_id('essb_w_template');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_template');
        ?>
">
							<?php 
        foreach (essb_available_tempaltes() as $position => $text) {
            $is_active = $position == $template ? " selected=\"selected\"" : "";
            echo '<option value="' . $position . '" ' . $is_active . '>' . $text . '</option>';
        }
        ?>
														</select>		
		</p>		

					<p>
			<label for="<?php 
        echo $this->get_field_id('essb_w_nospace');
        ?>
"><?php 
        _e('Remove space between buttons:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<input id="<?php 
        echo $this->get_field_id('essb_w_nospace');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_nospace');
        ?>
" value="true" <?php 
        if ($nospace) {
            echo 'checked="checked"';
        }
        ?>
 type="checkbox" />
			<br /><small><?php 
        _e('This option will remove space between buttons', ESSB3_TEXT_DOMAIN);
        ?>
</small>
		</p>
					<p>
			<label for="<?php 
        echo $this->get_field_id('essb_w_native');
        ?>
"><?php 
        _e('Include native social buttons:', ESSB3_TEXT_DOMAIN);
        ?>
</label>
			<input id="<?php 
        echo $this->get_field_id('essb_w_native');
        ?>
" name="<?php 
        echo $this->get_field_name('essb_w_native');
        ?>
" value="true" <?php 
        if ($native_buttons) {
            echo 'checked="checked"';
        }
        ?>
 type="checkbox" />
			<br /><small><?php 
        _e('This option will include native buttons', ESSB3_TEXT_DOMAIN);
        ?>
</small>
		</p>
		<?php 
    }
 function __construct()
 {
     $this->shortcodeOptions = array();
     $this->templates = array();
     $this->templates[''] = "Default template from settings";
     $this->templates['default'] = "Default";
     $this->templates['metro'] = "Metro";
     $this->templates['modern'] = "Modern";
     $this->templates['round'] = "Round";
     $this->templates['big'] = "Big";
     $this->templates['metro-retina'] = "Metro (Retina)";
     $this->templates['big-retina'] = "Big (Retina)";
     $this->templates['light-retina'] = "Light (Retina)";
     $this->templates['flat-retina'] = "Flat (Retina)";
     $this->templates['tiny-retina'] = "Tiny (Retina)";
     $this->templates['round-retina'] = "Round (Retina)";
     $this->templates['modern-retina'] = "Modern (Retina)";
     $this->templates['circles-retina'] = "Circles (Retina)";
     $this->templates['blocks-retina'] = "Blocks (Retina)";
     $this->templates['dark-retina'] = "Dark (Retina)";
     $this->templates['grey-circles-retina'] = "Grey Circles (Retina)";
     $this->templates['grey-blocks-retina'] = "Grey Blocks (Retina)";
     $this->templates['clear-retina'] = "Clear (Retina)";
     $this->templates['dimmed-retina'] = "Dimmed (Retina)";
     $this->templates['grey-retina'] = "Grey (Retina)";
     $this->templates['default-retina'] = "Default 3.0 (Retina)";
     $this->templates['jumbo-retina'] = "Jumbo (Retina)";
     $this->templates['jumbo-round-retina'] = "Jumbo Rounded (Retina)";
     $this->templates['fancy-retina'] = "Fancy (Retina)";
     $this->templates['deluxe-retina'] = "Deluxe (Retina)";
     $this->templates['modern-slim-retina'] = "Modern Slim (Retina)";
     $this->templates['bold-retina'] = "Bold (Retina)";
     $this->templates['fancy-bold-retina'] = "Fancy Bold (Retina)";
     $this->templates['retro-retina'] = "Retro (Retina)";
     $this->templates['metro-bold-retina'] = "Metro Bold (Retina)";
     $this->counterPositions = array();
     $this->counterPositions[''] = "Default counter position";
     /*$this->counterPositions['left'] = "Left";
     		$this->counterPositions['right'] = "Right";
     		$this->counterPositions['inside'] = "Inside button";
     		$this->counterPositions['insidename'] = "Inside button with Network Names";
     		$this->counterPositions['insidebeforename'] = "Inside button before Network Names";		
     		$this->counterPositions['hidden'] = "Hidden";
     		$this->counterPositions['leftm'] = "Left Modern";
     		$this->counterPositions['rightm'] = "Right Modern";
     		$this->counterPositions['top'] = "Top Modern";
     		$this->counterPositions['topm'] = "Top Mini";
     		$this->counterPositions['bottom'] = "Bottom";*/
     foreach (essb_avaliable_counter_positions() as $key => $value) {
         $this->counterPositions[$key] = $value;
     }
     $this->totalCounterPosition = array();
     $this->totalCounterPosition[''] = "Default counter position";
     /*$this->totalCounterPosition['left'] = "Left";
     		$this->totalCounterPosition['right'] = "Right";
     		$this->totalCounterPosition['leftbig'] = "Left Big Number";
     		$this->totalCounterPosition['rightbig'] = "Right Big Number";
     		$this->totalCounterPosition['before'] = "Before social share buttons";
     		$this->totalCounterPosition['after'] = "After social share buttons";
     		
     		$this->totalCounterPosition['none'] = "Hidden";*/
     foreach (essb_avaiable_total_counter_position() as $key => $value) {
         $this->totalCounterPosition[$key] = $value;
     }
     $this->buttonStyle = essb_avaiable_button_style();
 }
function essb_prepare_location_advanced_customization($tab_id, $menu_id, $location = '', $post_type = false)
{
    global $essb_networks, $essb_options;
    $checkbox_list_networks = array();
    foreach ($essb_networks as $key => $object) {
        $checkbox_list_networks[$key] = $object['name'];
    }
    if ($location != 'mobile') {
        ESSBOptionsStructureHelper::field_heading($tab_id, $menu_id, 'heading5', __('Deactivate display of functions', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_section_start_full_panels($tab_id, $menu_id);
        ESSBOptionsStructureHelper::field_switch_panel($tab_id, $menu_id, $location . '_mobile_deactivate', __('Deactivate on mobile', ESSB3_TEXT_DOMAIN), __('Activate this option if you wish that method to be hidden when site is browsed with mobile device.', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
        if ($location != 'postbar') {
            ESSBOptionsStructureHelper::field_switch_panel($tab_id, $menu_id, $location . '_native_deactivate', __('Deactivate native buttons', ESSB3_TEXT_DOMAIN), __('Activate this option if you wish to deactivate native buttons for that display method.', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
            if (!$post_type) {
                ESSBOptionsStructureHelper::field_switch_panel($tab_id, $menu_id, $location . '_text_deactivate', __('Hide message above, before or below', ESSB3_TEXT_DOMAIN), __('Activate this option if you wish to hide message above, before or below for that display.', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
            }
        }
        ESSBOptionsStructureHelper::field_section_end_full_panels($tab_id, $menu_id);
    }
    if ($location == 'mobile') {
        ESSBOptionsStructureHelper::field_checkbox_list_sortable($tab_id, $menu_id, $location . '_networks', __('Change active social networks', ESSB3_TEXT_DOMAIN), __('Do not select anything if you wish to use default network list', ESSB3_TEXT_DOMAIN), $checkbox_list_networks);
    }
    if (!$post_type) {
        ESSBOptionsStructureHelper::field_heading($tab_id, $menu_id, 'heading2', __('Change default button options for that display location', ESSB3_TEXT_DOMAIN));
    } else {
        ESSBOptionsStructureHelper::field_heading($tab_id, $menu_id, 'heading2', __('Change default button options for that post type', ESSB3_TEXT_DOMAIN));
    }
    ESSBOptionsStructureHelper::field_switch($tab_id, $menu_id, $location . '_activate', __('I wish to personalize global button settings', ESSB3_TEXT_DOMAIN), __('Activate this option to apply personalized settings for that display location. That will overwrite the global. <br/><span class="essb-user-notice">After switching option to <b>Yes</b> press <b>Update Settings</b> button and advanced configuration fields will appear.</span>', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
    //print "Location = ".$location.', result = '.ESSBOptionValuesHelper::options_bool_value($essb_options, $location.'_activate');
    $are_active_settings = ESSBOptionValuesHelper::options_bool_value($essb_options, $location . '_activate');
    if (!$are_active_settings) {
        return;
    }
    if ($location != 'postbar') {
        ESSBOptionsStructureHelper::field_heading($tab_id, $menu_id, 'heading4', __('Visual Changes', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Set button style', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_button_style', __('Buttons Style', ESSB3_TEXT_DOMAIN), __('Select your button display style.', ESSB3_TEXT_DOMAIN), essb_avaiable_button_style());
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_button_pos', __('Buttons Align', ESSB3_TEXT_DOMAIN), __('Choose how buttons
			to be aligned. Default position is left but you can also select
			Right or Center', ESSB3_TEXT_DOMAIN), array("" => "Left", "center" => "Center", "right" => "Right"));
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_template', __('Template', ESSB3_TEXT_DOMAIN), __('Select your template for that display location.', ESSB3_TEXT_DOMAIN), essb_available_tempaltes());
        ESSBOptionsStructureHelper::field_switch($tab_id, $menu_id, $location . '_nospace', __('Remove spacing between buttons', ESSB3_TEXT_DOMAIN), __('Activate this option to remove default space between share buttons.', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
        $more_options = array("plus" => "Plus icon", "dots" => "Dots icon");
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_more_button_icon', __('More button icon', ESSB3_TEXT_DOMAIN), __('Select more button icon style. You can choose from default + symbol or dots symbol', ESSB3_TEXT_DOMAIN), $more_options);
        $more_options = array("" => "Default function", "1" => "Display all active networks after more button", "2" => "Display all social networks as pop up", "3" => "Display only active social networks as pop up");
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_more_button_func', __('More button function', ESSB3_TEXT_DOMAIN), __('Select networks that you wish to appear in your list. With drag and drop you can rearrange them.', ESSB3_TEXT_DOMAIN), $more_options);
        $animations_container = array();
        $animations_container[""] = "Default value from settings";
        foreach (essb_available_animations() as $key => $text) {
            if ($key != '') {
                $animations_container[$key] = $text;
            } else {
                $animations_container['no'] = 'No amination';
            }
        }
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_css_animations', __('Activate animations', ESSB3_TEXT_DOMAIN), __('Animations
			are provided with CSS transitions and work on best with retina
			templates.', ESSB3_TEXT_DOMAIN), $animations_container);
        ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
        ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Counter settings', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_switch($tab_id, $menu_id, $location . '_show_counter', __('Display counter of sharing', ESSB3_TEXT_DOMAIN), __('Activate display of share counters.', ESSB3_TEXT_DOMAIN), '', __('Yes', ESSB3_TEXT_DOMAIN), __('No', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_counter_pos', __('Position of counters', ESSB3_TEXT_DOMAIN), __('Choose your default button counter position', ESSB3_TEXT_DOMAIN), essb_avaliable_counter_positions());
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_total_counter_pos', __('Position of total counter', ESSB3_TEXT_DOMAIN), __('For vertical display methods left means before buttons (top) and right means after buttons (bottom).', ESSB3_TEXT_DOMAIN), essb_avaiable_total_counter_position());
        ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
        ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Set button width', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_button_width', __('Width of buttons'), __('Choose between automatic width, pre defined width or display in columns.'), array('' => 'Automatic Width', 'fixed' => 'Fixed Width', 'full' => 'Full Width', "column" => "Display in columns"));
        ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Fixed width share buttons', ESSB3_TEXT_DOMAIN), __('Customize the fixed width options', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_textbox($tab_id, $menu_id, $location . '_fixed_width_value', __('Custom buttons width', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), '', 'input60', 'fa-arrows-h', 'right');
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_fixed_width_align', __('Choose alignment of network name', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), array("" => "Center", "left" => "Left", "right" => "Right"));
        ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
        ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Full width share buttons', ESSB3_TEXT_DOMAIN), __('Full width option will make buttons to take the width of your post content area.', ESSB3_TEXT_DOMAIN));
        ESSBOptionsStructureHelper::field_textbox($tab_id, $menu_id, $location . '_fullwidth_share_buttons_correction', __('Max width of button on desktop', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), '', 'input60', 'fa-arrows-h', 'right');
        ESSBOptionsStructureHelper::field_textbox($tab_id, $menu_id, $location . '_fullwidth_share_buttons_correction_mobile', __('Max width of button on mobile', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), '', 'input60', 'fa-arrows-h', 'right');
        ESSBOptionsStructureHelper::field_textbox($tab_id, $menu_id, $location . '_fullwidth_share_buttons_container', __('Max width of buttons container element', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), '', 'input60', 'fa-arrows-h', 'right');
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_fullwidth_align', __('Choose alignment of network name', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), array("left" => "Left", "center" => "Center", "right" => "Right"));
        ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
        ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Display in columns', ESSB3_TEXT_DOMAIN), '');
        $listOfOptions = array("1" => "1", "2" => "2", "3" => "3", "4" => "4", "5" => "5");
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_fullwidth_share_buttons_columns', __('Number of columns', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), $listOfOptions);
        ESSBOptionsStructureHelper::field_select($tab_id, $menu_id, $location . '_fullwidth_share_buttons_columns_align', __('Choose alignment of network name', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN), array("" => "Left", "center" => "Center", "right" => "Right"));
        ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
        ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
    }
    //ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Personalize social networks', ESSB3_TEXT_DOMAIN), '');
    ESSBOptionsStructureHelper::field_heading($tab_id, $menu_id, 'heading4', __('Personalize social networks', ESSB3_TEXT_DOMAIN));
    if ($location != 'mobile') {
        ESSBOptionsStructureHelper::field_checkbox_list_sortable($tab_id, $menu_id, $location . '_networks', __('Change active social networks', ESSB3_TEXT_DOMAIN), __('Do not select anything if you wish to use default network list' . ESSB3_TEXT_DOMAIN), $checkbox_list_networks);
    }
    ESSBOptionsStructureHelper::field_section_start($tab_id, $menu_id, __('Rename displayed texts for network names', ESSB3_TEXT_DOMAIN), __('Set texts that will appear on selected display method instead of default network names. Use dash (-) if you wish to remove text for that network name.', ESSB3_TEXT_DOMAIN));
    foreach ($checkbox_list_networks as $key => $text) {
        ESSBOptionsStructureHelper::field_textbox_stretched($tab_id, $menu_id, $location . '_' . $key . '_name', $text, '');
    }
    ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
    //ESSBOptionsStructureHelper::field_section_end($tab_id, $menu_id);
}
function essb_register_settings_metabox_visual()
{
    global $post;
    if (isset($_GET['action'])) {
        $custom = get_post_custom($post->ID);
        //$essb_post_share_message = isset ( $custom ["essb_post_share_message"] ) ? $custom ["essb_post_share_message"] [0] : "";
        $essb_post_button_style = isset($custom["essb_post_button_style"]) ? $custom["essb_post_button_style"][0] : "";
        $essb_post_template = isset($custom["essb_post_template"]) ? $custom["essb_post_template"][0] : "";
        $essb_post_counters = isset($custom["essb_post_counters"]) ? $custom["essb_post_counters"][0] : "";
        $essb_post_counter_pos = isset($custom["essb_post_counter_pos"]) ? $custom["essb_post_counter_pos"][0] : "";
        $essb_post_total_counter_pos = isset($custom["essb_post_total_counter_pos"]) ? $custom["essb_post_total_counter_pos"][0] : "";
        $essb_post_customizer = isset($custom["essb_post_customizer"]) ? $custom["essb_post_customizer"][0] : "";
        $essb_post_animations = isset($custom["essb_post_animations"]) ? $custom["essb_post_animations"][0] : "";
        $essb_post_optionsbp = isset($custom["essb_post_optionsbp"]) ? $custom["essb_post_optionsbp"][0] : "";
        $essb_post_content_position = isset($custom["essb_post_content_position"]) ? $custom["essb_post_content_position"][0] : "";
        foreach (essb_available_button_positions() as $position => $name) {
            $essb_post_button_position_[$position] = isset($custom["essb_post_button_position_" . $position]) ? $custom["essb_post_button_position_" . $position][0] : "";
        }
        $essb_post_native = isset($custom["essb_post_native"]) ? $custom["essb_post_native"][0] : "";
        $essb_post_native_skin = isset($custom["essb_post_native_skin"]) ? $custom["essb_post_native_skin"][0] : "";
        ESSBMetaboxInterface::draw_form_start('essb_social_share_visual');
        $sidebar_options = array();
        $sidebar_options[] = array('field_id' => 'visual1', 'title' => __('Button Style', ESSB3_TEXT_DOMAIN), 'icon' => 'default', 'type' => 'menu_item', 'action' => 'default', 'default_child' => '');
        $sidebar_options[] = array('field_id' => 'visual2', 'title' => __('Button Display', ESSB3_TEXT_DOMAIN), 'icon' => 'default', 'type' => 'menu_item', 'action' => 'default', 'default_child' => '');
        $sidebar_options[] = array('field_id' => 'visual3', 'title' => __('Native Buttons', ESSB3_TEXT_DOMAIN), 'icon' => 'default', 'type' => 'menu_item', 'action' => 'default', 'default_child' => '');
        $converted_button_styles = essb_avaiable_button_style();
        $converted_button_styles[""] = "Default style from settings";
        $converted_counter_pos = essb_avaliable_counter_positions();
        $converted_counter_pos[""] = "Default value from settings";
        $converted_total_counter_pos = essb_avaiable_total_counter_position();
        $converted_total_counter_pos[""] = "Default value from settings";
        $converted_content_position = array();
        //$essb_avaliable_content_positions;
        $converted_content_position[""] = "Default value from settings";
        $converted_content_position["no"] = "No display inside content (deactivate content positions)";
        foreach (essb_avaliable_content_positions() as $position => $data) {
            $converted_content_position[$position] = $data["label"];
        }
        $animations_container = array();
        $animations_container[""] = "Default value from settings";
        foreach (essb_available_animations() as $key => $text) {
            if ($key != '') {
                $animations_container[$key] = $text;
            } else {
                $animations_container['no'] = 'No amination';
            }
        }
        $yesno_object = array();
        $yesno_object[""] = "Default value from settings";
        $yesno_object["yes"] = "Yes";
        $yesno_object["no"] = "No";
        //$converted_button_styles = array_unshift($converted_button_styles, array("" => "Default value from settings"));
        ESSBMetaboxInterface::draw_first_menu_activate('visual');
        ESSBMetaboxInterface::draw_sidebar($sidebar_options, 'visual');
        ESSBMetaboxInterface::draw_content_start('300', 'visual');
        ESSBMetaboxInterface::draw_content_section_start('visual1');
        ESSBMetaboxOptionsFramework::reset_row_status();
        ESSBMetaboxOptionsFramework::draw_heading(__('Button Style', ESSB3_TEXT_DOMAIN), '3');
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Button style', ESSB3_TEXT_DOMAIN), __('Change default button style.', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_button_style', $converted_button_styles, false, 'essb_metabox', $essb_post_button_style);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Template', ESSB3_TEXT_DOMAIN), __('Change default template.', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_template', essb_available_tempaltes(), false, 'essb_metabox', $essb_post_template);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Counters', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_counters', $yesno_object, false, 'essb_metabox', $essb_post_counters);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Counter position', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_counter_pos', $converted_counter_pos, false, 'essb_metabox', $essb_post_counter_pos);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Total counter position', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_total_counter_pos', $converted_total_counter_pos, false, 'essb_metabox', $essb_post_total_counter_pos);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Activate style customizer', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_customizer', $yesno_object, false, 'essb_metabox', $essb_post_customizer);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Activate animations', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_animations', $animations_container, false, 'essb_metabox', $essb_post_animations);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Activate options by button position', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_optionsbp', $yesno_object, false, 'essb_metabox', $essb_post_optionsbp);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxInterface::draw_content_section_end();
        ESSBMetaboxInterface::draw_content_section_start('visual2');
        ESSBMetaboxOptionsFramework::reset_row_status();
        ESSBMetaboxOptionsFramework::draw_heading(__('Button Position', ESSB3_TEXT_DOMAIN), '3');
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Content position', ESSB3_TEXT_DOMAIN), __('Change default content position', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_content_position', $converted_content_position, false, 'essb_metabox', $essb_post_content_position);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        foreach (essb_available_button_positions() as $position => $name) {
            ESSBMetaboxOptionsFramework::draw_options_row_start(__('Activate ' . $name["label"], ESSB3_TEXT_DOMAIN), __('Activate additional display position', ESSB3_TEXT_DOMAIN));
            ESSBMetaboxOptionsFramework::draw_select_field('essb_post_button_position_' . $position, $yesno_object, false, 'essb_metabox', $essb_post_button_position_[$position]);
            ESSBMetaboxOptionsFramework::draw_options_row_end();
        }
        ESSBMetaboxInterface::draw_content_section_end();
        ESSBMetaboxInterface::draw_content_section_start('visual3');
        ESSBMetaboxOptionsFramework::reset_row_status();
        ESSBMetaboxOptionsFramework::draw_heading(__('Native Buttons', ESSB3_TEXT_DOMAIN), '3');
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Activate native buttons', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_native', $yesno_object, false, 'essb_metabox', $essb_post_native);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxOptionsFramework::draw_options_row_start(__('Activate native buttons skin', ESSB3_TEXT_DOMAIN), __('', ESSB3_TEXT_DOMAIN));
        ESSBMetaboxOptionsFramework::draw_select_field('essb_post_native_skin', $yesno_object, false, 'essb_metabox', $essb_post_native_skin);
        ESSBMetaboxOptionsFramework::draw_options_row_end();
        ESSBMetaboxInterface::draw_content_section_end();
        ESSBMetaboxInterface::draw_content_end();
        ESSBMetaboxInterface::draw_form_end();
    }
}