<?php
/**
* Body Classes.
*
* @package Dolpa
*/
 
 if (!function_exists('dolpa_body_classes')) :

    function dolpa_body_classes($classes) {

        $dolpa_default = dolpa_get_default_theme_options();
        global $post;
        // Adds a class of hfeed to non-singular pages.
        if ( !is_singular() ) {
            $classes[] = 'hfeed';
        }

        // Adds a class of no-sidebar when there is no sidebar present.
        if ( !is_active_sidebar( 'sidebar-1' ) ) {
            $classes[] = 'no-sidebar';
        }

        if( is_page_template('templates/template-cover.php') ){
            $dolpa_template_header_overlay = get_theme_mod( 'dolpa_template_header_overlay',$dolpa_default['dolpa_template_header_overlay'] );
            if( $dolpa_template_header_overlay ){
                $classes[] = 'dolpa-template-header-overlay';
            }
        }
        if ( is_active_sidebar( 'sidebar-1' ) ) {

            $global_sidebar_layout = get_theme_mod( 'global_sidebar_layout',$dolpa_default['global_sidebar_layout'] );
            
            if( is_page_template('templates/template-cover.php') ){

                $dolpa_post_sidebar = get_post_meta( $post->ID, 'dolpa_post_sidebar_option', true );

                if( $dolpa_post_sidebar == 'global-sidebar' || empty( $dolpa_post_sidebar ) ){

                    $template_cover_sidebar_layout = get_theme_mod( 'template_cover_sidebar_layout',$dolpa_default['template_cover_sidebar_layout'] );
                    $classes[] = esc_attr( $template_cover_sidebar_layout );

                }else{

                    $classes[] = esc_attr( $dolpa_post_sidebar );

                }

            }elseif( is_page_template('templates/template-carousel.php') ){

                $dolpa_post_sidebar = get_post_meta( $post->ID, 'dolpa_post_sidebar_option', true );

                if( $dolpa_post_sidebar == 'global-sidebar' || empty( $dolpa_post_sidebar ) ){

                    $template_carousel_sidebar_settings = get_theme_mod( 'template_carousel_sidebar_settings',$dolpa_default['template_carousel_sidebar_settings'] );
                    $classes[] = esc_attr( $template_carousel_sidebar_settings );

                }else{

                    $classes[] = esc_attr( $dolpa_post_sidebar );

                }

            }elseif( is_page_template('templates/template-slider.php') ){

                $dolpa_post_sidebar = get_post_meta( $post->ID, 'dolpa_post_sidebar_option', true );

                if( $dolpa_post_sidebar == 'global-sidebar' || empty( $dolpa_post_sidebar ) ){

                    $template_slider_sidebar_settings = get_theme_mod( 'template_slider_sidebar_settings',$dolpa_default['template_slider_sidebar_settings'] );
                    $classes[] = esc_attr( $template_slider_sidebar_settings );

                }else{

                    $classes[] = esc_attr( $dolpa_post_sidebar );

                }

            }elseif( is_page_template('templates/template-aside-default.php') || 
                    is_page_template('templates/template-aside-lateral.php') || 
                    is_page_template('templates/template-aside-metro.php') ){

                $classes[] = 'no-sidebar';

            }else{

                if( is_single() || is_page() ){

                    $dolpa_post_sidebar = get_post_meta( $post->ID, 'dolpa_post_sidebar_option', true );

                    if( $dolpa_post_sidebar == 'global-sidebar' || empty( $dolpa_post_sidebar ) ){

                        $classes[] = esc_attr( $global_sidebar_layout  );

                    }else{

                        $classes[] = esc_attr( $dolpa_post_sidebar );

                    }
                    
                }elseif( is_404() ){

                    $classes[] = 'no-sidebar';

                }else{
                    
                    $classes[] = esc_attr( $global_sidebar_layout );
                }

            }

        }

        if( is_singular('post') ){

            $dolpa_post_layout = get_post_meta( $post->ID, 'dolpa_post_layout', true );

            if( $dolpa_post_layout == '' || $dolpa_post_layout == 'global-layout' ){
                
                $dolpa_post_layout = get_theme_mod( 'dolpa_single_post_layout',$dolpa_default['dolpa_single_post_layout'] );

            }

            $classes[] = 'theme-single-'.esc_attr( $dolpa_post_layout );

            if( $dolpa_post_layout == 'layout-2' ){
                
                $dolpa_header_overlay = get_post_meta( $post->ID, 'dolpa_header_overlay', true );

                if( $dolpa_header_overlay == '' || $dolpa_header_overlay == 'global-layout' ){
                    $dolpa_post_layout2 = get_theme_mod( 'dolpa_single_post_layout',$dolpa_default['dolpa_single_post_layout'] );
                    if( $dolpa_post_layout2 == 'layout-2' ){
                        $dolpa_header_overlay = true;
                    }else{
                        $dolpa_header_overlay = false;
                    }
                }else{
                    $dolpa_header_overlay = true;
                }
                if( $dolpa_header_overlay ){
                    $classes[] = 'theme-single-header-overlay';
                }

            }

        }

        if( is_singular('page') ){

            $dolpa_page_layout = get_post_meta( $post->ID, 'dolpa_page_layout', true );

            if( $dolpa_page_layout == ''  ){
                
                $dolpa_page_layout = 'layout-1';

            }

            $classes[] = 'theme-single-'.esc_attr( $dolpa_page_layout );

            if( $dolpa_page_layout == 'layout-2' ){
                
                $dolpa_ed_header_overlay = get_post_meta( $post->ID, 'dolpa_ed_header_overlay', true );
                if( $dolpa_ed_header_overlay ){
                    $classes[] = 'theme-single-header-overlay';
                }

            }

        }

        if( is_singular('post') ){

            $dolpa_ed_post_reaction = get_post_meta( $post->ID, 'dolpa_ed_post_reaction', true );
            if( $dolpa_ed_post_reaction ){
                $classes[] = 'hide-comment-rating';
            }

        }
        
        $dolpa_header_layout = get_theme_mod( 'dolpa_header_layout', $dolpa_default['dolpa_header_layout'] );
        $classes[] = 'site-'.esc_attr( $dolpa_header_layout );

        return $classes;
    }

endif;

add_filter('body_class', 'dolpa_body_classes');