<?php
/**
 * Theme Palace basic theme structure hooks
 *
 * This file contains structural hooks.
 *
 * @package Theme Palace
 * @subpackage Newstation
 * @since Newstation 1.0.0
 */

$options = newstation_get_theme_options();


if ( ! function_exists( 'newstation_doctype' ) ) :
	/**
	 * Doctype Declaration.
	 *
	 * @since Newstation 1.0.0
	 */
	function newstation_doctype() {
		?>
		<!DOCTYPE html>
		<html <?php language_attributes(); ?>>
		<?php
	}
endif;

add_action( 'newstation_doctype', 'newstation_doctype', 10 );


if ( ! function_exists( 'newstation_head' ) ) :
	/**
	 * Header Codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_head() {
		?>
		<meta charset="<?php bloginfo( 'charset' ); ?>">
		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
		<link rel="profile" href="https://gmpg.org/xfn/11">
		<?php if ( is_singular() && pings_open( get_queried_object() ) ) : ?>
		<link rel="pingback" href="<?php echo esc_url( get_bloginfo( 'pingback_url' ) ); ?>">
	<?php endif;
}
endif;
add_action( 'newstation_before_wp_head', 'newstation_head', 10 );

if ( ! function_exists( 'newstation_page_start' ) ) :
	/**
	 * Page starts html codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_page_start() {
		?>
		<div id="page" class="site">
			<a class="skip-link screen-reader-text" href="#content"><?php esc_html_e( 'Skip to content', 'newstation' ); ?></a>
			<div class="menu-overlay"></div>

			<?php
		}
	endif;
	add_action( 'newstation_page_start_action', 'newstation_page_start', 10 );

	if ( ! function_exists( 'newstation_page_end' ) ) :
	/**
	 * Page end html codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_page_end() {
		?>
	</div><!-- #page -->
	<?php
}
endif;
add_action( 'newstation_page_end_action', 'newstation_page_end', 10 );

if ( ! function_exists( 'newstation_header_menu_start' ) ) :
	/**
	 * Header start html codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_header_menu_start() {

		?>

		<div class="main-menu">

			<?php
		}
	endif;
	add_action( 'newstation_header_action', 'newstation_header_menu_start', 10 );

	if ( ! function_exists( 'newstation_topbar' ) ) :
	/**
	 * Topbar html codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_topbar() { 
		$options = newstation_get_theme_options(); 

		$header_txt_logo_extra = $options['header_txt_logo_extra'];

		$day_date = date('l, F j, Y');

		?>
		<?php if ( $options['enable_topbar'] ): ?>
			<div id="top-navigation" class="relative">
				<div class="wrapper">
					<button class="menu-toggle" aria-controls="secondary-menu" aria-expanded="false">
						<?php
						echo newstation_get_svg( array( 'icon' => 'menu' ) );
						echo newstation_get_svg( array( 'icon' => 'close' ) );
						?>
						<span class="menu-label"><?php esc_html_e( 'Menu', 'newstation' ); ?></span>
					</button><!-- .menu-toggle -->

					<nav id="secondary-navigation" class="main-navigation" role="navigation" aria-label="Primary Menu">
						<?php 

						$social = '';
						if ( has_nav_menu( 'social' ) ) :

							$social .= '<li class="social-icons">';
							$social .= wp_nav_menu( 
								$social_defaults = array(
									'theme_location' => 'social',
									'container' => 'div',
									'menu_class' => 'menu',
									'echo' => false,
									'fallback_cb' => 'newstation_menu_fallback_cb',
									'depth' => 1,
									'link_before' => '<span class="screen-reader-text">',
									'link_after' => '</span>',
								)
							);
							$social .= '</li>';
						endif;

						$date = '<li class="contact-info">
						<div class="entry-meta">
						<span class="posted-on">
						<span class="screen-reader-text">Posted on</span> 
						<a href="#" rel="bookmark" tabindex="0">';
						$date .= $day_date;
						$date .= '</a>
						</span>
						</div>
						</li>';

						wp_nav_menu( array(
							'theme_location' => 'secondary',
							'container' => 'ul',
							'menu_class' => 'menu nav-menu',
							'menu_id' => 'secondary-menu',
							'echo' => true,
							'fallback_cb' => 'newstation_menu_fallback_cb',
							'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s'  . $date . $social . '</ul>',
						) );

						?>

						<div class="site-branding-wrapper">
							<div class="site-branding">
								<?php if ( in_array( $header_txt_logo_extra, array( 'show-all', 'logo-title', 'logo-tagline' ) )  ) { ?>
									<div class="site-logo">
										<?php the_custom_logo(); ?>
									</div>
								<?php } 
								if ( in_array( $header_txt_logo_extra, array( 'show-all', 'title-only', 'logo-title', 'show-all', 'tagline-only', 'logo-tagline' ) ) ) : ?>
									<div id="site-identity">
										<?php
										if( in_array( $header_txt_logo_extra, array( 'show-all', 'title-only', 'logo-title' ) )  ) {
											if ( newstation_is_latest_posts() ) : ?>
												<h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
												<?php else : ?>
													<p class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></p>
													<?php
												endif;
											} 
											if ( in_array( $header_txt_logo_extra, array( 'show-all', 'tagline-only', 'logo-tagline' ) ) ) {
												$description = get_bloginfo( 'description', 'display' );
												if ( $description || is_customize_preview() ) : ?>
													<p class="site-description"><?php echo esc_html( $description ); /* WPCS: xss ok. */ ?></p>
													<?php
												endif; 
											}?>
										</div>
									<?php endif; ?>
								</div>
							</div><!-- .site-branding-wrapper -->

							<div class="icon-wrapper">
								<div class="contact-info">
									<div class="entry-meta">
										<span class="posted-on">
											<span class="screen-reader-text"><?php esc_html_e( 'Posted on', 'newstation' ); ?></span> 
											<a href="#" rel="bookmark" tabindex="0">
												<?php echo $day_date; ?>
											</a>
										</span><!-- .posted-on -->
									</div><!-- .entry-meta -->
								</div>

								<?php 
								if( has_nav_menu( 'social' )):

									wp_nav_menu(  array(
										'theme_location' => 'social',
										'container' => 'div',
										'container_class' => 'social-icons',
										'echo' => true,
										'depth' => 1,
										'link_before' => '<span class="screen-reader-text">',
										'link_after' => '</span>',
										'fallback_cb' => false,
									) );

								endif;
								?>

							</div><!-- .icon-wrapper -->
						</nav><!-- .main-navigation-->
					</div><!-- .wrapper -->
				</div>
			<?php endif ?>


			<?php
		}
	endif;
	add_action( 'newstation_header_action', 'newstation_topbar', 10 );

	if ( ! function_exists( 'newstation_header_start' ) ) :
	/**
	 * Header start html codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_header_start() { 
		$options = newstation_get_theme_options();
		?>
		<header id="masthead" class="site-header" role="banner">

			<?php
		}
	endif;
	add_action( 'newstation_header_action', 'newstation_header_start', 10 );

	if ( ! function_exists( 'newstation_site_branding' ) ) :
	/**
	 * Site branding codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_site_branding() {
		$options  = newstation_get_theme_options();
		$header_txt_logo_extra = $options['header_txt_logo_extra'];		
	?>	
		<?php if ( $options['enable_topbar'] ): ?>
			<div class="site-branding-container">
				<div class="wrapper">
					<div class="site-branding-wrapper">

						<div class="site-branding">
							<?php if ( in_array( $header_txt_logo_extra, array( 'show-all', 'logo-title', 'logo-tagline' ) )  ) { ?>
								<div class="site-logo">
									<?php the_custom_logo(); ?>
								</div>
							<?php } 
							if ( in_array( $header_txt_logo_extra, array( 'show-all', 'title-only', 'logo-title', 'show-all', 'tagline-only', 'logo-tagline' ) ) ) : ?>
								<div id="site-details">
									<?php
									if( in_array( $header_txt_logo_extra, array( 'show-all', 'title-only', 'logo-title' ) )  ) {
										if ( newstation_is_latest_posts() ) : ?>
											<h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
											<?php else : ?>
												<p class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></p>
												<?php
											endif;
										} 
										if ( in_array( $header_txt_logo_extra, array( 'show-all', 'tagline-only', 'logo-tagline' ) ) ) {
											$description = get_bloginfo( 'description', 'display' );
											if ( $description || is_customize_preview() ) : ?>
												<p class="site-description"><?php echo esc_html( $description ); /* WPCS: xss ok. */ ?></p>
												<?php
											endif; 
										}?>
									</div>
								<?php endif; ?>
							</div><!-- .site-branding -->

						</div><!-- .site-branding-wrapper -->
					</div><!-- .wrapper -->
				</div>
			<?php endif; ?>
				<?php
			}
		endif;
		add_action( 'newstation_header_action', 'newstation_site_branding', 20 );

		if ( ! function_exists( 'newstation_site_navigation' ) ) :
	/**
	 * Site navigation codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_site_navigation() {
		$options = newstation_get_theme_options();
		?>
		<button class="menu-toggle" aria-controls="primary-menu" aria-expanded="false">
			<?php
			echo newstation_get_svg( array( 'icon' => 'menu' ) );
			echo newstation_get_svg( array( 'icon' => 'close' ) );
			?>		
			<span class="menu-label"><?php esc_html_e( 'Primary Menu', 'newstation' ); ?></span>			
		</button>
		<nav id="site-navigation" class="main-navigation" role="navigation" aria-label="Primary Menu">
			<div class="wrapper">
				<?php 

				wp_nav_menu( array(
					'theme_location' => 'primary',
					'container' => 'false',
					'menu_class' => 'menu nav-menu',
					'menu_id' => 'primary-menu',
					'echo' => true,
					'fallback_cb' => 'newstation_menu_fallback_cb',
				) );
				?>
			</div>
		</nav><!-- #site-navigation -->
		<?php
	}
endif;
add_action( 'newstation_header_action', 'newstation_site_navigation', 30 );


if ( ! function_exists( 'newstation_header_end' ) ) :
	/**
	 * Header end html codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_header_end() {

		$options = newstation_get_theme_options();
		?>

	</header><!-- #masthead -->
	<?php
}
endif;

add_action( 'newstation_header_action', 'newstation_header_end', 50 );

if ( ! function_exists( 'newstation_header_menu_end' ) ) :
	/**
	 * Header end html codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_header_menu_end() {

		?>
	</div>
	<?php
}
endif;

add_action( 'newstation_header_action', 'newstation_header_menu_end', 50 );

if ( ! function_exists( 'newstation_content_start' ) ) :
	/**
	 * Site content codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_content_start() {
		?>
		<div id="content" class="site-content">
			<?php
		}
	endif;
	add_action( 'newstation_content_start_action', 'newstation_content_start', 10 );

	if ( ! function_exists( 'newstation_header_image' ) ) :
	/**
	 * Header Image codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_header_image() {
		$options = newstation_get_theme_options();
		if ( newstation_is_frontpage() )
			return;
		$header_image = get_header_image();
		
		?>

		<div id="page-site-header" class="relative" style="background-image: url('<?php echo esc_url( $header_image ); ?>');">
			<div class="overlay"></div>
			<div class="wrapper">
				<header class="page-header">
					<h2 class="page-title"><?php echo newstation_custom_header_banner_title(); ?></h2>
				</header>

				<?php newstation_add_breadcrumb(); ?>

			</div><!-- .wrapper -->
		</div>

		<?php
	}
endif;
add_action( 'newstation_header_image_action', 'newstation_header_image', 10 );

if ( ! function_exists( 'newstation_add_breadcrumb' ) ) :
	/**
	 * Add breadcrumb.
	 *
	 * @since Newstation 1.0.0
	 */
	function newstation_add_breadcrumb() {
		$options = newstation_get_theme_options();
		// Bail if Breadcrumb disabled.
		$breadcrumb = $options['breadcrumb_enable'];
		if ( false === $breadcrumb ) {
			return;
		}
		
		// Bail if Home Page.
		if ( newstation_is_frontpage() ) {
			return;
		}

		echo '<div id="breadcrumb-list">';
				/**
				 * newstation_simple_breadcrumb hook
				 *
				 * @hooked newstation_simple_breadcrumb -  10
				 *
				 */
				do_action( 'newstation_simple_breadcrumb' );
				echo '</div><!-- #breadcrumb-list -->';
				return;
			}
		endif;

		if ( ! function_exists( 'newstation_content_end' ) ) :
	/**
	 * Site content codes
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_content_end() {
		?>
		<div class="menu-overlay"></div>
	</div><!-- #content -->
	<?php
}
endif;
add_action( 'newstation_content_end_action', 'newstation_content_end', 10 );

if ( ! function_exists( 'newstation_footer_start' ) ) :
	/**
	 * Footer starts
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_footer_start() {
		?>
		<footer id="colophon" class="site-footer" role="contentinfo">
			<?php
		}
	endif;
	add_action( 'newstation_footer', 'newstation_footer_start', 10 );

	if ( ! function_exists( 'newstation_footer_site_info' ) ) :
	/**
	 * Footer starts
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_footer_site_info() {
		$options = newstation_get_theme_options();
		$theme_data = wp_get_theme();
		$search = array( '[the-year]', '[site-link]' );

		$replace = array( date( 'Y' ), '<a href="'. esc_url( home_url( '/' ) ) .'">'. esc_attr( get_bloginfo( 'name', 'display' ) ) . '</a>' );

		$options['copyright_text'] = str_replace( $search, $replace, $options['copyright_text'] );

		$copyright_text = $options['copyright_text']; 
		?>

		<div class="site-info">
			<div class="wrapper">
				<?php if ( !empty( $copyright_text ) ):
					echo newstation_santize_allow_tag( $copyright_text );
				endif; ?>
				
		</div><!-- .wrapper -->

		<?php
	}
endif;
add_action( 'newstation_footer', 'newstation_footer_site_info', 40 );

if ( ! function_exists( 'newstation_footer_scroll_to_top' ) ) :
	/**
	 * Footer starts
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_footer_scroll_to_top() {
		$options  = newstation_get_theme_options();
		if ( true === $options['scroll_top_visible'] ) : ?>
			<div class="backtotop"><?php echo newstation_get_svg( array( 'icon' => 'up' ) ); ?></div>
		<?php endif;
	}
endif;
add_action( 'newstation_footer', 'newstation_footer_scroll_to_top', 40 );

if ( ! function_exists( 'newstation_footer_end' ) ) :
	/**
	 * Footer starts
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_footer_end() {
		?>
	</footer>
	<div class="popup-overlay"></div>
	<?php
}
endif;
add_action( 'newstation_footer', 'newstation_footer_end', 100 );

if ( ! function_exists( 'newstation_loader' ) ) :
	/**
	 * Start div id #loader
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_loader() {
		$options = newstation_get_theme_options();
		?>

		<div id="loader">
			<div class="loader-container">

				<div id="preloader">
					<span></span>
					<span></span>
					<span></span>
					<span></span>
					<span></span>
				</div>

			</div>
		</div><!-- #loader -->
		<?php
	}
endif;
add_action( 'newstation_before_header', 'newstation_loader', 10 );

if ( ! function_exists( 'newstation_infinite_loader_spinner' ) ) :
	/**
	 *
	 * @since Newstation 1.0.0
	 *
	 */
	function newstation_infinite_loader_spinner() { 
		global $post;
		$options = newstation_get_theme_options();
		if ( $options['pagination_type'] == 'infinite' ) :
			if ( count(	(array) $post ) > 0 ) {
				echo '<div class="blog-loader">' . newstation_get_svg( array( 'icon' => 'spinner-umbrella' ) ) . '</div>';
			}
		endif;
	}
endif;
add_action( 'newstation_infinite_loader_spinner_action', 'newstation_infinite_loader_spinner', 10 );