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

$options = pushpa_get_theme_options();  


if ( ! function_exists( 'pushpa_doctype' ) ) :
	/**
	 * Doctype Declaration.
	 *
	 * @since  Pushpa 1.0.0
	 */
	function pushpa_doctype() {
		?>
		<!DOCTYPE html>
		<html <?php language_attributes(); ?>>
		<?php
	}
endif;
add_action( 'pushpa_doctype', 'pushpa_doctype', 10 );


if ( ! function_exists( 'pushpa_head' ) ) :
	/**
	 * Header Codes
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_head() {
		?>
		<meta charset="<?php bloginfo( 'charset' ); ?>">
		<meta name="viewport" content="width=device-width, initial-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( 'pushpa_before_wp_head', 'pushpa_head', 10 );

if ( ! function_exists( 'pushpa_page_start' ) ) :
	/**
	 * Page starts html codes
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_page_start() {
		?>
		<div id="page" class="site">
			<a class="skip-link screen-reader-text" href="#content"><?php esc_html_e( 'Skip to content', 'pushpa' ); ?></a>
			<?php
		}
	endif;
	add_action( 'pushpa_page_start_action', 'pushpa_page_start', 10 );

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

if ( ! function_exists( 'pushpa_topbar' ) ) :
	/**
	 * Topbar html codes
	 *
	 * @since Pushpa 1.0.0
	 *
	 */
	function pushpa_topbar() {
		$options = pushpa_get_theme_options(); 

		if ( $options['topbar_section_enable'] == true ) :
			?>
			<div class="menu-overlay"></div>
			<div id="top-navigation" class="relative">
				<div class="wrapper">
					<nav id="secondary-navigation" class="main-navigation" role="navigation" aria-label="Primary Menu">
						<button class="menu-toggle" aria-controls="secondary-menu" aria-expanded="false">
							<span class="menu-label"><?php _e('Top Menu', 'pushpa'); ?></span>
							<?php
							echo pushpa_get_svg( array( 'icon' => 'menu', 'class' => 'icon-menu' ) );
							echo pushpa_get_svg( array( 'icon' => 'close', 'class' => 'icon-menu' ) );
							?>
						</button><!-- .menu-toggle -->

						<?php 
						$search_html= null;
						if($options['search_from_enable']){
							$search_html = sprintf(
								'<li class="main-navigation-search">%1$s</li>',
								get_search_form( $echo = false )
							);

						}else{
							$search_html = '';
						}
						$social_html = null;
						if($options['social_menu_enable'] && has_nav_menu( 'social' )): 
							$social_html = sprintf(
								'<li class="social-menu">%1$s</li>',
								wp_nav_menu( 
									array(
										'theme_location' => 'social',
										'container' => 'div',
										'container_class' => 'social-icons',
										'echo' => false,
										'depth' => 1,
										'link_before' => '<span class="screen-reader-text">',
										'link_after' => '</span>',
										'fallback_cb' => false,
										'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s'.$search_html.'</ul>',
									)
								)
							);
						else:
							$social_html = '';
						endif;

						wp_nav_menu( 
							array(
								'theme_location' => 'secondary',
								'container' => 'div',
								'menu_class' => 'menu nav-menu',
								'menu_id' => 'secondary-menu',
								'echo' => true,
								'fallback_cb' => 'pushpa_menu_fallback_cb',
								'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s'.$social_html.'</ul>',
							)
						);
						?>
					</nav>    
				</div>
			</div><!-- #top-navigation -->

			<?php
		endif;
	}
endif;
add_action( 'pushpa_header_action', 'pushpa_topbar', 9 );

if ( ! function_exists( 'pushpa_site_branding' ) ) :
	/**
	 * Site branding codes
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_site_branding() {
		$options  = pushpa_get_theme_options();
		$header_txt_logo_extra = $options['header_txt_logo_extra'];	 ?>
			<header id="masthead" class="site-header" role="banner">
				<div class="wrapper">
					<div class="site-branding">
						<?php if ( in_array( $header_txt_logo_extra, array( 'show-all', 'logo-title', 'logo-tagline' ) ) && has_custom_logo()  ) : ?>
						<div class="site-logo">
							<?php the_custom_logo(); ?>
						</div>
					<?php endif; 

					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 ( pushpa_is_latest_posts() || pushpa_is_frontpage() ) : ?>
									<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>
				<nav id="site-navigation" class="main-navigation" role="navigation" aria-label="Primary Menu">
					<button class="menu-toggle" aria-controls="primary-menu" aria-expanded="false" title="Primary Menu">
						<span class="menu-label"><?php esc_html_e('Menu', 'pushpa')?></span>		
						<?php
						echo pushpa_get_svg( array( 'icon' => 'menu', 'class' => 'icon-menu' ) );
						echo pushpa_get_svg( array( 'icon' => 'close', 'class' => 'icon-menu' ) );
						?>	
					</button>
					<?php  
					wp_nav_menu( array(
						'theme_location' => 'primary',
						'container' => 'div',
						'menu_class' => 'menu nav-menu',
						'menu_id' => 'primary-menu',
						'echo' => true,
						'fallback_cb' => 'pushpa_menu_fallback_cb',
						'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>',
					) );


					?>
				</nav><!-- #site-navigation -->
				
			</div><!-- .site-branding-container-->
		</header>
		<?php
		}
	endif;
	add_action( 'pushpa_header_action', 'pushpa_site_branding', 10 );

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

	if ( ! function_exists( 'pushpa_header_image' ) ) :
    /**
     * Header Image codes
     *
     * @since  Pushpa 1.0.0
     *
     */
    function pushpa_header_image() {
    	if ( pushpa_is_frontpage() )
    		return;
    	$header_image = get_header_image();
        /*if ( is_singular() ) :
            $header_image = has_post_thumbnail() ? get_the_post_thumbnail_url( get_the_id(), 'full' ) : $header_image;
        endif;*/
        ?>

        <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">
        			<?php pushpa_custom_header_banner_title(); ?>
        		</header>
        		<?php pushpa_add_breadcrumb(); ?>
        	</div>
        </div><!-- #page-site-header -->

        <?php
    }
endif;
add_action( 'pushpa_header_image_action', 'pushpa_header_image', 10 );

if ( ! function_exists( 'pushpa_add_breadcrumb' ) ) :
	/**
	 * Add breadcrumb.
	 *
	 * @since  Pushpa 1.0.0
	 */
	function pushpa_add_breadcrumb() {
		$options = pushpa_get_theme_options();

		// Bail if Breadcrumb disabled.
		$breadcrumb = $options['breadcrumb_enable'];
		if ( false === $breadcrumb ) {
			return;
		}
		
		// Bail if Home Page.
		if ( pushpa_is_frontpage() ) {
			return;
		}

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

		if ( ! function_exists( 'pushpa_content_end' ) ) :
	/**
	 * Site content codes
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_content_end() {
		?>
	</div><!-- #content -->
	<?php
}
endif;
add_action( 'pushpa_content_end_action', 'pushpa_content_end', 10 );

if ( ! function_exists( 'pushpa_footer_start' ) ) :
	/**
	 * Footer starts
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_footer_start() {
		$options = pushpa_get_theme_options();

		?>
		<footer id="colophon" class="site-footer" role="contentinfo">
			<div class="footer-logo-wrapper wrapper">
				<?php
				if ( !empty ( $options['footer_logo'] ) ) { ?>
					<div class="footer-logo">
						<a href="<?php echo esc_url( home_url( '/' ) ); ?>"><img src="<?php echo esc_url( $options['footer_logo'] ); ?>" alt="footer-logo"></a>
					</div><!-- .footer-logo -->
					<?php
				}
				?>
				<div class="footer-menu">
					<?php
					$search_html= null;
					if($options['search_icon_in_primary_menu_enable']){
						$search_html = sprintf(
							'<li class="search-menu"><a href="#" title="%1$s">%2$s%3$s</a><div id="search">%4$s</div>',
							esc_attr__('Search','pushpa'),
							pushpa_get_svg( array( 'icon' => 'search' ) ), 
							pushpa_get_svg( array( 'icon' => 'close' ) ), 
							get_search_form( $echo = false )
						);

					}else{
						$search_html = '';
					}
					wp_nav_menu( 
						array(
							'theme_location' => 'footer',
							'container' => false,
							'menu_class' => 'menu nav-menu',
							'menu_id' => 'footer-menu',
							'echo' => true,
							'fallback_cb' => 'pushpa_menu_fallback_cb',
							'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s'.$search_html.'</ul>',
						)
					);
					?>
				</div>
			</div><!-- .footer-logo-wrapper -->
		<?php
		}
	endif;
	add_action( 'pushpa_footer', 'pushpa_footer_start', 10 );

	if ( ! function_exists( 'pushpa_footer_site_info' ) ) :
	/**
	 * Footer starts
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_footer_site_info() {
		$options = pushpa_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'];
		?>
		<span class="double-border-line"></span>
		<div class="site-info">
			<div class="wrapper">
				<span>
					<?php if (!empty( $copyright_text ) ):
						echo pushpa_santize_allow_tag( $copyright_text ); 
						if ( function_exists( 'the_privacy_policy_link' ) ) {
							the_privacy_policy_link( ' | ' );
						}
					endif; ?>
					<?php echo esc_html__( ' All Rights Reserved | ', 'pushpa' ) . esc_html( $theme_data->get( 'Name') ) . '&nbsp;' . esc_html__( 'by', 'pushpa' ). '&nbsp;<a target="_blank" href="'. esc_url( $theme_data->get( 'AuthorURI' ) ) .'">'. esc_html( ucwords( $theme_data->get( 'Author' ) ) ) .'</a>' ?>
				</span>
			</div><!-- .wrapper -->    
		</div><!-- .site-info -->

		<?php
	}
endif;
add_action( 'pushpa_footer', 'pushpa_footer_site_info', 40 );

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


if ( ! function_exists( 'pushpa_loader' ) ) :
	/**
	 * Start div id #loader
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_loader() {
		$options = pushpa_get_theme_options();
		if ( $options['loader_enable'] ) { ?>

			<div id="loader">
				<div class="loader-container">
					<?php if ( 'default' == $options['loader_icon'] ) : ?>
						<div id="preloader">
							<span></span>
							<span></span>
							<span></span>
							<span></span>
							<span></span>
						</div>
					<?php else :
						echo pushpa_get_svg( array( 'icon' => esc_attr( $options['loader_icon'] ) ) );
					endif; ?>
				</div>
			</div><!-- #loader -->
		<?php }
	}
endif;
add_action( 'pushpa_before_header', 'pushpa_loader', 10 );


if ( ! function_exists( 'pushpa_infinite_loader_spinner' ) ) :
	/**
	 *
	 * @since  Pushpa 1.0.0
	 *
	 */
	function pushpa_infinite_loader_spinner() { 
		global $post;
		$options = pushpa_get_theme_options();
		if ( $options['pagination_type'] == 'infinite' ) :			
			echo '<div class="blog-loader">' . pushpa_get_svg( array( 'icon' => 'spinner-umbrella' ) ) . '</div>';			
		endif;
	}
endif;
add_action( 'pushpa_infinite_loader_spinner_action', 'pushpa_infinite_loader_spinner', 10 );
