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

// Header sidebar
$hygia_header_name    = hygia_get_theme_option( 'header_widgets' );
$hygia_header_present = ! hygia_is_off( $hygia_header_name ) && is_active_sidebar( $hygia_header_name );
if ( $hygia_header_present ) {
	hygia_storage_set( 'current_sidebar', 'header' );
	$hygia_header_wide = hygia_get_theme_option( 'header_wide' );
	ob_start();
	if ( is_active_sidebar( $hygia_header_name ) ) {
		dynamic_sidebar( $hygia_header_name );
	}
	$hygia_widgets_output = ob_get_contents();
	ob_end_clean();
	if ( ! empty( $hygia_widgets_output ) ) {
		$hygia_widgets_output = preg_replace( "/<\/aside>[\r\n\s]*<aside/", '</aside><aside', $hygia_widgets_output );
		$hygia_need_columns   = strpos( $hygia_widgets_output, 'columns_wrap' ) === false;
		if ( $hygia_need_columns ) {
			$hygia_columns = max( 0, (int) hygia_get_theme_option( 'header_columns' ) );
			if ( 0 == $hygia_columns ) {
				$hygia_columns = min( 6, max( 1, hygia_tags_count( $hygia_widgets_output, 'aside' ) ) );
			}
			if ( $hygia_columns > 1 ) {
				$hygia_widgets_output = preg_replace( '/<aside([^>]*)class="widget/', '<aside$1class="column-1_' . esc_attr( $hygia_columns ) . ' widget', $hygia_widgets_output );
			} else {
				$hygia_need_columns = false;
			}
		}
		?>
		<div class="header_widgets_wrap widget_area<?php echo ! empty( $hygia_header_wide ) ? ' header_fullwidth' : ' header_boxed'; ?>">
			<?php do_action( 'hygia_action_before_sidebar_wrap', 'header' ); ?>
			<div class="header_widgets_inner widget_area_inner">
				<?php
				if ( ! $hygia_header_wide ) {
					?>
					<div class="content_wrap">
					<?php
				}
				if ( $hygia_need_columns ) {
					?>
					<div class="columns_wrap">
					<?php
				}
				do_action( 'hygia_action_before_sidebar', 'header' );
				hygia_show_layout( $hygia_widgets_output );
				do_action( 'hygia_action_after_sidebar', 'header' );
				if ( $hygia_need_columns ) {
					?>
					</div>	<!-- /.columns_wrap -->
					<?php
				}
				if ( ! $hygia_header_wide ) {
					?>
					</div>	<!-- /.content_wrap -->
					<?php
				}
				?>
			</div>	<!-- /.header_widgets_inner -->
			<?php do_action( 'hygia_action_after_sidebar_wrap', 'header' ); ?>
		</div>	<!-- /.header_widgets_wrap -->
		<?php
	}
}
