HEX
Server: Apache
System: Linux nc-ph-4101.simplemoneygoals.com 5.14.0-503.21.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Jan 12 09:45:05 EST 2025 x86_64
User: dailygoldindex (1004)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: /home/dailygoldindex/public_html/wp-content/themes/jnews/class/Module/Block/Block_1_View.php
<?php
/**
 * @author : Jegtheme
 */

namespace JNews\Module\Block;

Class Block_1_View extends BlockViewAbstract {

	public function render_block_type_1( $post, $image_size ) {
		$thumbnail        = $this->get_thumbnail( $post->ID, $image_size );
		$primary_category = $this->get_primary_category( $post->ID );

		$output =
			"<div class=\"jeg_thumb\">
                " . jnews_edit_post( $post->ID ) . "
                <a href=\"" . get_the_permalink( $post ) . "\">" . $thumbnail . "</a>
                <div class=\"jeg_post_category\">
                    <span>{$primary_category}</span>
                </div>
            </div>
            <div class=\"jeg_postblock_content\">
                <h3 property=\"headline\" class=\"jeg_post_title\">
                    <a href=\"" . get_the_permalink( $post ) . "\">" . get_the_title( $post ) . "</a>
                </h3>
                " . $this->post_meta_1( $post ) . "
                <div class=\"jeg_post_excerpt\">
                    <p>" . $this->get_excerpt( $post ) . "</p>
                    <a href=\"" . get_the_permalink( $post ) . "\" class=\"jeg_readmore\">" . jnews_return_translation( 'Read more', 'jnews', 'read_more' ) . "</a>
                </div>
            </div>";

		return $output;
	}

	public function render_block_type_2( $post, $image_size ) {
		$thumbnail        = $this->get_thumbnail( $post->ID, $image_size );
		$additional_class = ( ! has_post_thumbnail( $post->ID ) ) ? ' no_thumbnail' : '';

		$output =
			"<article " . jnews_post_class( "jeg_post jeg_pl_sm" . $additional_class, $post->ID ) . ">
                <div class=\"jeg_thumb\">
                    " . jnews_edit_post( $post->ID ) . "
                    <a href=\"" . get_the_permalink( $post ) . "\">
                        {$thumbnail}
                    </a>
                </div>
                <div class=\"jeg_postblock_content\">
                    <h3 class=\"jeg_post_title\">
                        <a href=\"" . get_the_permalink( $post ) . "\">" . get_the_title( $post ) . "</a>
                    </h3>
                    " . $this->post_meta_2( $post ) . "
                </div>
            </article>";

		return $output;
	}

	public function render_block_type_3( $post ) {
		$output =
			"<article " . jnews_post_class( "jeg_post jeg_pl_xs_2", $post->ID ) . ">
                <div class=\"jeg_postblock_content\">
                    <h3 class=\"jeg_post_title\"><a href=\"" . get_permalink( $post ) . "\">" . get_the_title( $post ) . "</a></h3>
                    " . $this->post_meta_2( $post ) . "
                </div>
            </article>";

		return $output;
	}

	public function build_column_1( $results ) {
		$first_block = $this->render_block_type_1( $results[0], 'jnews-360x180' );

		$second_block = '';
		for ( $i = 1; $i < sizeof( $results ); $i ++ ) {
			$second_block .= $this->render_block_type_2( $results[ $i ], 'jnews-120x86' );
		}

		$output =
			"<div class=\"jeg_posts\">
                <article " . jnews_post_class( "jeg_post jeg_pl_lg_1", $results[0]->ID ) . ">
                    $first_block
                </article>
                <div class=\"jeg_postsmall\">
                    $second_block
                </div>
            </div>";

		return $output;
	}

	public function build_column_1_alt( $results ) {
		$first_block = '';

		for ( $i = 0; $i < sizeof( $results ); $i ++ ) {
			$first_block .= $this->render_block_type_2( $results[ $i ], 'jnews-120x86' );
		}

		$output =
			"<div class=\"jeg_posts\">
                <div class=\"jeg_postsmall\">
                    $first_block
                </div>
            </div>";

		return $output;
	}

	public function build_column_2( $results ) {
		$first_block = $this->render_block_type_1( $results[0], 'jnews-360x180' );

		$second_block = '';
		for ( $i = 1; $i < sizeof( $results ); $i ++ ) {
			$second_block .= $this->render_block_type_2( $results[ $i ], 'jnews-120x86' );
		}

		$output =
			"<div class=\"jeg_posts row\">
                <article " . jnews_post_class( "jeg_post jeg_pl_lg_1 col-sm-6", $results[0]->ID ) . ">
                    $first_block
                </article>
                <div class=\"jeg_postsmall col-sm-6\">
                    $second_block
                </div>
            </div>";

		return $output;
	}

	public function build_column_3( $results ) {
		$first_block = $this->render_block_type_1( $results[0], 'jnews-360x180' );

		$size        = sizeof( $results );
		$first_limit = (int) ceil( ( $size - 1 ) * 2 / 5 ) + 1;

		$second_block = '';
		for ( $i = 1; $i < $first_limit; $i ++ ) {
			$second_block .= $this->render_block_type_2( $results[ $i ], 'jnews-120x86' );
		}

		$third_block = '';
		for ( $i = $first_limit; $i < $size; $i ++ ) {
			$third_block .= $this->render_block_type_3( $results[ $i ] );
		}

		$output =
			"<div class=\"jeg_posts row\">
                <article " . jnews_post_class( "jeg_post jeg_pl_lg_1 col-sm-4", $results[0]->ID ) . ">
                    $first_block
                </article>
                <div class=\"jeg_postsmall col-sm-4\">
                    $second_block
                </div>
                <div class=\"jeg_postsmall col-sm-4\">
                    $third_block
                </div>
            </div>";

		return $output;
	}

	public function render_output( $attr, $column_class ) {
		if ( isset( $attr['results'] ) ) {
			$results = $attr['results'];
		} else {
			$results = $this->build_query( $attr );
		}

		$navigation = $this->render_navigation( $attr, $results['next'], $results['prev'], $results['total_page'] );

		if ( ! empty( $results['result'] ) ) {
			$content = $this->render_column( $results['result'], $column_class );
		} else {
			$content = $this->empty_content();
		}

		return
			"<div class=\"jeg_block_container jeg_load_more_flag\">
                {$this->get_content_before($attr)}
                {$content}
                {$this->get_content_after($attr)}
            </div>
            <div class=\"jeg_block_navigation\">
                {$this->get_navigation_before($attr)}
                {$navigation}
                {$this->get_navigation_after($attr)}
            </div>";
	}

	public function render_column( $result, $column_class ) {
		switch ( $column_class ) {
			case "jeg_col_1o3" :
				$content = $this->build_column_1( $result );
				break;
			case "jeg_col_3o3" :
				$content = $this->build_column_3( $result );
				break;
			case "jeg_col_2o3" :
			default :
				$content = $this->build_column_2( $result );
				break;
		}

		return $content;
	}

	public function render_column_alt( $result, $column_class ) {
		switch ( $column_class ) {
			case "jeg_col_1o3" :
				$content = $this->build_column_1_alt( $result );
				break;
			case "jeg_col_3o3" :
				$content = $this->build_column_3( $result );
				break;
			case "jeg_col_2o3" :
			default :
				$content = $this->build_column_2( $result );
				break;
		}

		return $content;
	}
}