<?php

/**
 * Modify the Widgetized Sidebar to include theme sidebar configurations
 */

global $wp_registered_sidebars;

$output = $el_position = $title = $width = $el_class = $sidebar_id = '';

extract(shortcode_atts(array(
    'el_position' => '',
    'title' => '',
    'width' => '1/1',
    'el_class' => '',
    'sidebar_id' => ''
), $atts));

if ($sidebar_id == '') {
	return;	
}

if (empty($wp_registered_sidebars[$sidebar_id])) {
	_e('Edit this block and set a valid sidebar.', 'bunyad');
	return;
}

// add before_title and after_title to be compatible with the theme 
$old_sidebar = $wp_registered_sidebars[$sidebar_id];

if (!empty($old_sidebar)) {
	$sidebar = array_merge($old_sidebar, array(
		'before_widget' => '<li id="%1$s" class="widget %2$s">',
		'after_widget' => "</li>\n",
		'before_title' => '<h5 class="widget-title section-head cf main-color"><span class="title">',
		'after_title'  => '</span></h5>',
	));
	
	$wp_registered_sidebars[$sidebar_id] = $sidebar;
}


// get the sidebar content
$el_class = $this->getExtraClass($el_class);

ob_start();
dynamic_sidebar($sidebar_id);
$sidebar_value = ob_get_contents();
ob_end_clean();

// restore old sidebar configurations
$wp_registered_sidebars[$sidebar_id] = $old_sidebar;

// borrowed from VC
$sidebar_value = trim($sidebar_value);
$sidebar_value = (substr($sidebar_value, 0, 3) == '<li' ) ? '<ul>'.$sidebar_value.'</ul>' : $sidebar_value;

$css_class = apply_filters( VC_SHORTCODE_CUSTOM_CSS_FILTER_TAG, 'wpb_widgetised_column wpb_content_element' . $el_class, $this->settings['base'], $atts );
$output .= "\n\t".'<div class="'. esc_attr($css_class) .'">';
$output .= "\n\t\t".'<div class="wpb_wrapper">';
$output .= wpb_widget_title(array('title' => $title, 'extraclass' => 'wpb_widgetised_column_heading'));
$output .= "\n\t\t\t".$sidebar_value;
$output .= "\n\t\t".'</div> '.$this->endBlockComment('.wpb_wrapper');
$output .= "\n\t".'</div> '.$this->endBlockComment('.wpb_widgetised_column');

echo $output;