<?php
/**
 * The template to display the widgets area in the header
 *
 * @package EXPO
 * @since EXPO 1.0
 */

// Header sidebar
$expo_header_name    = expo_get_theme_option( 'header_widgets' );
$expo_header_present = ! expo_is_off( $expo_header_name ) && is_active_sidebar( $expo_header_name );
if ( $expo_header_present ) {
	expo_storage_set( 'current_sidebar', 'header' );
	$expo_header_wide = expo_get_theme_option( 'header_wide' );
	ob_start();
	if ( is_active_sidebar( $expo_header_name ) ) {
		dynamic_sidebar( $expo_header_name );
	}
	$expo_widgets_output = ob_get_contents();
	ob_end_clean();
	if ( ! empty( $expo_widgets_output ) ) {
		$expo_widgets_output = preg_replace( "/<\/aside>[\r\n\s]*<aside/", '</aside><aside', $expo_widgets_output );
		$expo_need_columns   = strpos( $expo_widgets_output, 'columns_wrap' ) === false;
		if ( $expo_need_columns ) {
			$expo_columns = max( 0, (int) expo_get_theme_option( 'header_columns' ) );
			if ( 0 == $expo_columns ) {
				$expo_columns = min( 6, max( 1, expo_tags_count( $expo_widgets_output, 'aside' ) ) );
			}
			if ( $expo_columns > 1 ) {
				$expo_widgets_output = preg_replace( '/<aside([^>]*)class="widget/', '<aside$1class="column-1_' . esc_attr( $expo_columns ) . ' widget', $expo_widgets_output );
			} else {
				$expo_need_columns = false;
			}
		}
		?>
		<div class="header_widgets_wrap widget_area<?php echo ! empty( $expo_header_wide ) ? ' header_fullwidth' : ' header_boxed'; ?>">
			<?php do_action( 'expo_action_before_sidebar_wrap', 'header' ); ?>
			<div class="header_widgets_inner widget_area_inner">
				<?php
				if ( ! $expo_header_wide ) {
					?>
					<div class="content_wrap">
					<?php
				}
				if ( $expo_need_columns ) {
					?>
					<div class="columns_wrap">
					<?php
				}
				do_action( 'expo_action_before_sidebar', 'header' );
				expo_show_layout( $expo_widgets_output );
				do_action( 'expo_action_after_sidebar', 'header' );
				if ( $expo_need_columns ) {
					?>
					</div>	<!-- /.columns_wrap -->
					<?php
				}
				if ( ! $expo_header_wide ) {
					?>
					</div>	<!-- /.content_wrap -->
					<?php
				}
				?>
			</div>	<!-- /.header_widgets_inner -->
			<?php do_action( 'expo_action_after_sidebar_wrap', 'header' ); ?>
		</div>	<!-- /.header_widgets_wrap -->
		<?php
	}
}
