<?
session_start();
include "admin/systems/configpdo.php";
require "functions/functions.php";

$panel = '';
$pageNumber = 1;

if (isset($_GET['panel'])) {
    $candidatePanel = trim((string)$_GET['panel']);
    if (preg_match('/^[A-Za-z0-9_]+$/', $candidatePanel) === 1) {
        $panel = $candidatePanel;
    }
}

if (isset($_GET['Page'])) {
    $pageCandidate = filter_var($_GET['Page'], FILTER_VALIDATE_INT, array('options' => array('min_range' => 1)));
    if ($pageCandidate !== false) {
        $pageNumber = $pageCandidate;
    }
}

function h($value)
{
    return htmlspecialchars((string)$value, ENT_QUOTES, 'UTF-8');
}

$allowedLangs = array('th', 'en');
$currentLang = 'th';

if (isset($_SESSION['lang']) && in_array($_SESSION['lang'], $allowedLangs, true)) {
    $currentLang = $_SESSION['lang'];
}

$_SESSION['lang'] = $currentLang;
include "lang/" . $currentLang . ".php";

$isEnglish = ($currentLang === 'en');

if (!isset($ui) || !is_array($ui)) {
    $ui = array();
}

if (!isset($datatableLang) || !is_array($datatableLang)) {
    $datatableLang = array(
        'sSearch' => $isEnglish ? 'Search:' : 'ค้นหา:',
        'sProcessing' => $isEnglish ? 'Processing...' : 'กำลังดำเนินการ...',
        'sLengthMenu' => $isEnglish ? 'Show _MENU_ rows' : 'แสดง_MENU_ แถว',
        'sZeroRecords' => $isEnglish ? 'No data found' : 'ไม่พบข้อมูล',
        'sInfo' => $isEnglish ? 'Showing _START_ to _END_ of _TOTAL_ rows' : 'แสดง _START_ ถึง _END_ จาก _TOTAL_ แถว',
        'sInfoEmpty' => $isEnglish ? 'Showing 0 to 0 of 0 rows' : 'แสดง 0 ถึง 0 จาก 0 แถว',
        'oPaginate' => array(
            'sFirst' => $isEnglish ? 'First' : 'หน้าแรก',
            'sLast' => $isEnglish ? 'Last' : 'หน้าสุดท้าย',
            'sNext' => $isEnglish ? 'Next' : 'ถัดไป',
            'sPrevious' => $isEnglish ? 'Previous' : 'กลับ'
        )
    );
}

$returnUrl = rawurlencode($_SERVER['REQUEST_URI']);

session_write_close();
?>



<!DOCTYPE html>
<html lang="<?= h($currentLang); ?>">

<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="Economics Paper Network">
    <meta name="author" content="">
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link
        href="https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;700&family=Outfit:wght@400;500;600;700&display=swap"
        rel="stylesheet">
    <title><?= h($ui['page_title']); ?></title>
    <link rel="icon" type="image/png" href="img/econ-sdg-icon.png">
    <link rel="shortcut icon" type="image/png" href="img/econ-sdg-icon.png">
    <link rel="apple-touch-icon" href="img/econ-sdg-icon.png">
    <!-- Bootstrap Core CSS -->
    <link href="css/bootstrap.css" rel="stylesheet">
    <link href="css/plugins/dataTables/dataTables.bootstrap.css" rel="stylesheet">

    <!-- Font Awesome CDN -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css">
    <link rel="stylesheet" href="css/layout.css" type="text/css" media="all">
    <link rel="stylesheet" href="css/mediaqueries.css" type="text/css" media="all">
    <link rel="stylesheet" href="css/contents.css" type="text/css" media="all">
    <link href="css/jquery-ui.css" rel="stylesheet">
    <link rel="stylesheet" href="css/econ-paper-theme.css" type="text/css" media="all">

</head>

<body>

    <div class="wrapper row1">
        <header id="header" class="clear">
            <a class="navbar-brand" href="index.php" aria-label="Economics Paper Network Home">
                <img src="img/EconLogo.png" class="econ-brand-logo econ-brand-logo-white"
                    alt="Economics Paper Network Logo" loading="lazy">
            </a>

            <div id="hgroup">
                <h1><?= h($ui['header_title']); ?></h1>
                <h2><?= h($ui['header_subtitle']); ?></h2>
            </div>
        </header>
    </div>

    <!-- Static navbar -->
    <nav class="navbar navbar-default" style="margin-bottom:10px">
        <div class="container-fluid">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"
                    aria-expanded="false" aria-controls="navbar">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>

            </div>
            <div id="navbar" class="navbar-collapse collapse">
                <ul class="nav navbar-nav">
                    <li class="active"><a href="index.php"><span class="fa fa-home"></span> <?= h($ui['home']); ?></a>
                    </li>
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
                            aria-expanded="false"><?= h($ui['browse']); ?> <span class="caret"></span></a>
                        <ul class="dropdown-menu">
                            <li><a href="?panel=paper_type"><?= h($ui['paper_type']); ?></a></li>
                            <li><a href="?panel=author"><?= h($ui['author']); ?></a></li>
                            <li><a href="?panel=issue_date"><?= h($ui['issue_date']); ?></a></li>
                            <li><a href="?panel=title"><?= h($ui['title']); ?></a></li>
                        </ul>
                    </li>
                    <li><a href="?panel=aboutus"><?= h($ui['about']); ?></a></li>
                    <li><a href="?panel=contactus"><?= h($ui['contact']); ?></a></li>
                    <li class="dropdown">
                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true"
                            aria-expanded="false"><?= h($ui['language']); ?> (<?= strtoupper(h($currentLang)); ?>) <span
                                class="caret"></span></a>
                        <ul class="dropdown-menu">
                            <li<?= $currentLang === 'th' ? ' class="active"' : ''; ?>><a
                                    href="lang/change.php?lang=th&return=<?= $returnUrl; ?>">TH</a>
                    </li>
                    <li<?= $currentLang === 'en' ? ' class="active"' : ''; ?>><a
                            href="lang/change.php?lang=en&return=<?= $returnUrl; ?>">ENG</a></li>
                </ul>
                </li>
                </ul>
                <ul class="nav navbar-nav navbar-right">
                    <li><a href="admin/index.html"><span class="fa fa-user"></span> <?= h($menu6); ?></a></li>
                </ul>
            </div>
            <!--/.nav-collapse -->
        </div>
        <!--/.container-fluid -->
    </nav>

    <!-- Page Content -->
    <div class="container econ-main">

        <?
        if ($panel !== ''):
            $panelFile = __DIR__ . "/pages/" . $panel . ".php";
            if (is_file($panelFile)) {
                include $panelFile;
            } else {
                echo '<div class="alert alert-warning">' . h($ui['panel_not_found']) . '</div>';
            }
        else:
        ?>
            <?
            $statsTotalPaper = 0;
            $statsTotalAuthors = 0;
            $statsTotalDownloads = 0;

            $stmtStatsPaper = $pdo->prepare("SELECT COUNT(*) FROM std_paper");
            $stmtStatsPaper->execute();
            $statsTotalPaper = (int)$stmtStatsPaper->fetchColumn();

            $stmtStatsAuthor = $pdo->prepare("SELECT COUNT(DISTINCT std_id) FROM std_paper");
            $stmtStatsAuthor->execute();
            $statsTotalAuthors = (int)$stmtStatsAuthor->fetchColumn();

            try {
                $stmtStatsDownload = $pdo->prepare("SELECT COALESCE(SUM(download_count), 0) FROM std_paper_download_stats");
                $stmtStatsDownload->execute();
                $statsTotalDownloads = (int)$stmtStatsDownload->fetchColumn();
            } catch (Exception $e) {
                $statsTotalDownloads = 0;
            }
            ?>
            <section class="econ-hero">
                <h3><?= h($ui['hero_title']); ?></h3>
                <p><?= h($ui['hero_desc']); ?></p>
                <div class="econ-actions">
                    <a class="btn btn-success" href="?panel=title"><i class="fa fa-search"></i>
                        <?= h($ui['hero_search']); ?></a>
                    <a class="btn btn-gold" href="?panel=all_paper" target="_blank"><i class="fa fa-book"></i>
                        <?= h($ui['hero_all']); ?></a>
                </div>
                <div class="econ-metrics">
                    <article class="metric-card">
                        <div class="metric-label"><?= h($ui['stat_total']); ?></div>
                        <div class="metric-value"><?= number_format($statsTotalPaper); ?></div>
                    </article>
                    <article class="metric-card">
                        <div class="metric-label"><?= h($ui['stat_authors']); ?></div>
                        <div class="metric-value"><?= number_format($statsTotalAuthors); ?></div>
                    </article>
                    <article class="metric-card">
                        <div class="metric-label"><?= h($ui['stat_downloads']); ?></div>
                        <div class="metric-value"><?= number_format($statsTotalDownloads); ?></div>
                    </article>
                </div>
            </section>
            <div class="row">
                <div class="col-md-8">
                    <div class="row">
                        <div class="col-md-12">
                            <div class="panel">
                                <div id="recent-submissions-carousel" class="panel-heading-cmu-custom carousel slide"
                                    data-ride="carousel">
                                    <div class="carousel-inner">

                                        <div class="item active">
                                            <div style="display: inline-block;">
                                                <img src="admin/files/banner/Banner Economics Paper Network.jpg"
                                                    alt="Economics Paper Network" loading="lazy" />
                                            </div>
                                        </div>
                                        <?php

                                        $sql_slide = "SELECT * FROM banner ORDER BY banner_id Desc";
                                        $statement = $pdo->prepare($sql_slide);
                                        $statement->execute();
                                        $result = $statement->fetchAll(PDO::FETCH_CLASS);
                                        foreach ($result as $rs_slide):

                                        ?>
                                            <div class="item">
                                                <div style="display: inline-block;">
                                                    <img src="admin/<?= h($rs_slide->banner_file); ?>" alt="Banner" title=""
                                                        loading="lazy" />
                                                </div>
                                                <? if ($rs_slide->banner_caption != ''): ?>
                                                    <div class="carousel-caption">
                                                        <?= h($rs_slide->banner_caption) ?>
                                                    </div>
                                                <? else:
                                                endif;
                                                ?>
                                            </div>
                                        <?
                                        endforeach;
                                        ?>
                                    </div>
                                    <!-- Controls -->
                                    <a class="left carousel-control" href="#recent-submissions-carousel" data-slide="prev">
                                        <span class="icon-prev"></span>
                                    </a>
                                    <a class="right carousel-control" href="#recent-submissions-carousel" data-slide="next">
                                        <span class="icon-next"></span>
                                    </a>
                                </div>
                            </div>
                        </div>
                    </div>
                    <!--################### ประกาศ ###########################-->
                    <div class="row">
                        <div class="col-md-12">
                            <div class="panel panel-primary info">
                                <div class="panel-heading">
                                    <h3><span class="fa fa-file-text"></span> <?= $text1; ?></h3>
                                </div>
                                <div class="panel-body">
                                    <ul class="list-group">
                                        <?php

                                        $sql_announce = "SELECT * FROM std_article_news ORDER BY n_id Desc";
                                        $stmt_announce = $pdo->prepare($sql_announce);
                                        $stmt_announce->execute();
                                        $result_announce = $stmt_announce->fetchAll(PDO::FETCH_CLASS);
                                        foreach ($result_announce as $rs_ann):
                                            $rawAnnDate = '';
                                            if (property_exists($rs_ann, 'n_date') && !empty($rs_ann->n_date)) {
                                                $rawAnnDate = (string)$rs_ann->n_date;
                                            } elseif (property_exists($rs_ann, 'n_create_date') && !empty($rs_ann->n_create_date)) {
                                                $rawAnnDate = (string)$rs_ann->n_create_date;
                                            } elseif (property_exists($rs_ann, 'n_created_at') && !empty($rs_ann->n_created_at)) {
                                                $rawAnnDate = (string)$rs_ann->n_created_at;
                                            } elseif (property_exists($rs_ann, 'created_at') && !empty($rs_ann->created_at)) {
                                                $rawAnnDate = (string)$rs_ann->created_at;
                                            }

                                            $announceDateText = '';
                                            if ($rawAnnDate !== '' && strtotime($rawAnnDate) !== false) {
                                                if ($isEnglish) {
                                                    $announceDateText = date('d M Y', strtotime($rawAnnDate));
                                                } else {
                                                    $announceDateText = DateThai($rawAnnDate);
                                                }
                                            }
                                        ?>
                                            <li class="list-group-item"><a
                                                    href="?panel=news_details&n_id=<?= rawurlencode((string)$rs_ann->n_id); ?>">
                                                    <?php if ($announceDateText !== ''): ?>
                                                        [<?= h($announceDateText); ?>]
                                                    <?php endif; ?>
                                                    <?
                                                    if ($isEnglish) {
                                                        echo h(str_replace("&nbsp;", " ", $rs_ann->n_topic_en));
                                                    } else {
                                                        echo h(str_replace("&nbsp;", " ", $rs_ann->n_topic_th));
                                                    }
                                                    ?>
                                                </a>
                                                &nbsp;<a href="admin/<?= h($rs_ann->n_file); ?>" target="_blank"
                                                    rel="noopener noreferrer">
                                                    <i class="fa-solid fa-paperclip"></i></a>
                                                <br />
                                            </li>
                                        <?
                                        endforeach;
                                        ?>
                                    </ul>
                                </div><!-- panel-body -->
                            </div><!-- panel panel-primary info -->
                        </div><!-- col-md-12-->
                    </div><!-- row -->

                    <!--################### ประจำเดือน ###########################-->
                    <?
                    $current_month = date("n");
                    $current_year = date("Y");

                    function GET_Month($mm = "")
                    {
                        $_month_name = array(
                            "1" => "มกราคม",
                            "2" => "กุมภาพันธ์",
                            "3" => "มีนาคม",
                            "4" => "เมษายน",
                            "5" => "พฤษภาคม",
                            "6" => "มิถุนายน",
                            "7" => "กรกฎาคม",
                            "8" => "สิงหาคม",
                            "9" => "กันยายน",
                            "10" => "ตุลาคม",
                            "11" => "พฤศจิกายน",
                            "12" => "ธันวาคม"
                        );
                        $monthN = $_month_name[$mm];
                        return $monthN;
                    }

                    function GET_Month_eng($mme = "")
                    {
                        $_month_name_eng = array(
                            "1" => "January",
                            "2" => "February",
                            "3" => "March",
                            "4" => "April",
                            "5" => "May",
                            "6" => "June",
                            "7" => "July",
                            "8" => "August",
                            "9" => "September",
                            "10" => "October",
                            "11" => "November",
                            "12" => "December"
                        );
                        $montheN = $_month_name_eng[$mme];
                        return $montheN;
                    }

                    ?>

                    <div class="row">
                        <div class="col-md-12">
                            <div class="panel panel-default">
                                <div class="panel-heading">
                                    <h3><span class="fa fa-file-text"></span> <?= $text3; ?>
                                        <?
                                        if ($isEnglish) {
                                            echo GET_Month_eng($current_month);
                                        } else {
                                            echo GET_Month($current_month);
                                        }
                                        ?>
                                        &nbsp;<?= $isEnglish ? $current_year : $current_year + 543; ?>
                                    </h3>
                                </div>
                                <div class="panel-body">
                                    <ul class="list-group">

                                        <?php

                                        $sql_papermonth = "SELECT * FROM std_paper where month(paper_issue_date)=$current_month and year(paper_issue_date)=$current_year order by s_id Desc";

                                        $stmt_papermonth = $pdo->prepare($sql_papermonth);
                                        $stmt_papermonth->execute();
                                        $count_paper = $stmt_papermonth->rowCount();
                                        if ($count_paper == 0):
                                            echo '
                                        <div class="p-4 text-center text-muted">
                                            <i class="fa fa-inbox fa-2x mb-2 d-block opacity-50"></i>
                                            ' . h($ui['monthly_no_data']) . '
                                        </div>';
                                        else:
                                            $result_papermonth = $stmt_papermonth->fetchAll(PDO::FETCH_CLASS);
                                            foreach ($result_papermonth as $rs_papermonth):

                                        ?>
                                                <li class="list-group-item">

                                                    <a
                                                        href='?panel=paper&std_id=<?= rawurlencode((string)$rs_papermonth->std_id); ?>'>

                                                        [<?= h($isEnglish ? date('d M Y', strtotime($rs_papermonth->paper_upload_date)) : DateThai($rs_papermonth->paper_upload_date)); ?>]
                                                        <?
                                                        if ($isEnglish) {
                                                            echo h(str_replace("&nbsp;", " ", $rs_papermonth->paper_title_en));
                                                        } else {
                                                            echo h(str_replace("&nbsp;", " ", $rs_papermonth->paper_title_th));
                                                        }
                                                        ?>

                                                    </a> :
                                                    <i><?= h($rs_papermonth->std_firstname . ' ' . $rs_papermonth->std_lastname); ?></i>
                                                    <span class="label label-success"><?= h($rs_papermonth->std_id); ?></span>
                                                    <br />

                                                </li>
                                            <?
                                            endforeach;
                                            ?>
                                    </ul>
                                <? endif; ?>
                                <!--<ul class="pager">
					<li class="previous"><a href="">&larr; Previous</a></li>
					<li class="next"><a href="">Next &rarr;</a></li>					
				</ul>-->
                                </div><!-- panel-body -->
                            </div><!-- panel panel-primary info -->
                        </div><!-- col-md-12-->
                    </div><!-- row -->

                </div>

                <div class="col-md-4">
                    <div class="panel panel-success">
                        <div class="panel-heading">
                            <h3><span class="fa fa-file-o"></span> <?= $text2; ?></h3>
                        </div>
                        <div class="panel-body">
                            <!--Pagination-->
                            <?

                            /* หาจำนวน record ทั้งหมด
						ปล. อันนี้ต้องใช้กับตัวแบ่งนะ ห้ามเอาออก*/
                            $sqlTotal = "SELECT * FROM std_paper";
                            $stmt_count = $pdo->prepare($sqlTotal);
                            $stmt_count->execute();
                            $total = $stmt_count->rowCount();

                            /*$Qtotal = mysqli_query($db,"SELECT * FROM std_paper"); //คิวรี่ คำสั่ง
                        $total = mysqli_num_rows($Qtotal); // หาจำนวน record*/


                            $Per_Page = 5; //per page

                            if (!isset($_GET["Page"])) {
                                $Page = $pageNumber;
                            } else {
                                $Page = $pageNumber;
                            }

                            $Prev_Page = $Page - 1;
                            $Next_Page = $Page + 1;

                            $Page_Start = (($Per_Page * $Page) - $Per_Page);

                            if ($total <= $Per_Page) {
                                $Num_Pages = 1;
                            } else if (($total % $Per_Page) == 0) {
                                $Num_Pages = ($total / $Per_Page);
                            } else {
                                $Num_Pages = ($total / $Per_Page) + 1;
                                $Num_Pages = (int)$Num_Pages;
                            }


                            $Query = $pdo->prepare("SELECT * FROM std_paper ORDER BY paper_upload_date DESC LIMIT $Page_Start,$Per_Page");
                            $Query->execute();
                            $totalp = $Query->rowCount();

                            $j = 1;
                            ?>


                            <ul class="list-group">
                                <?

                                $sql_5paper = $pdo->prepare("SELECT * FROM std_paper ORDER BY paper_upload_date desc limit 5");
                                $sql_5paper->execute();

                                $result_5paper = $sql_5paper->fetchAll(PDO::FETCH_CLASS);

                                foreach ($result_5paper as $rs_5paper):
                                ?>
                                    <li class="list-group-item">
                                        <b>[<?= h($isEnglish ? date('d M Y', strtotime($rs_5paper->paper_upload_date)) : DateThai($rs_5paper->paper_upload_date)); ?>]</b>
                                        <a href="?panel=paper&std_id=<?= rawurlencode((string)$rs_5paper->std_id); ?>">

                                            <?
                                            if ($isEnglish) {
                                                echo h(str_replace("&nbsp;", " ", $rs_5paper->paper_title_en));
                                            } else {
                                                echo h(str_replace("&nbsp;", " ", $rs_5paper->paper_title_th));
                                            }
                                            ?>


                                        </a>
                                        : <i><?= h($rs_5paper->std_firstname . ' ' . $rs_5paper->std_lastname); ?></i> <span
                                            class="label label-success"><?= h($rs_5paper->std_id); ?></span>
                                    </li>
                                <?

                                endforeach;
                                ?>
                            </ul>

                            <center>
                                <!--<ul class="pagination pagination-lg">-->
                                <?/*
			if($Prev_Page)
			{
				echo "<li><a href='?Page=$Prev_Page'>Back</a></li>";
			}

			for($i=1;$i<=$Num_Pages;$i++)
			{
				if($i!=$Page)
				{
					echo "<li><a href='?Page=$i'>$i</a></li>";
				}
				else
				{
					echo "<li class='active'><a href=''>$i</a></li>";
				}
			}
			if ($Page!=$Num_Pages)
			{
				echo "<li><a href='?Page=$Next_Page'>Next</a></li>";
			}*/
                                ?>
                                <!--</ul>-->
                                <form role="form" method="POST" action="?panel=all_paper" target="_blank">
                                    <button type="submit" class="btn btn-success"><i class="fa fa-search"></i> More</button>
                                </form>
                            </center>

                        </div>
                    </div>
                </div>
            </div>

        <? endif; ?>

    </div><!-- /.container -->
    <script src="js/jquery.js"></script>
    <!-- Bootstrap Core JavaScript -->
    <script src="js/bootstrap.min.js"></script>
    <script src="js/jquery-ui.js"></script>
    <script src="js/bootstrap-paginator.js"></script>

    <!-- Datatable -->
    <script src="js/plugins/dataTables/jquery.dataTables.js"></script>
    <script src="js/plugins/dataTables/dataTables.bootstrap.js"></script>


    <script>
        $("#paper_issue_date1").datepicker({
            dateFormat: 'dd-mm-yy',
            //defaultDate: "+1d",	
            changeMonth: true,
            numberOfMonths: 2,
            onClose: function(selectedDate) {
                $("#paper_issue_date2").datepicker("option", "minDate", selectedDate);
            }

        });

        $("#paper_issue_date2").datepicker({
            dateFormat: 'dd-mm-yy',
            //defaultDate: "+1d",	
            changeMonth: true,
            numberOfMonths: 2,
            onClose: function(selectedDate) {
                $("#paper_issue_date1").datepicker("option", "maxDate", selectedDate);
            }


        });
    </script>
    <script language="javascript">
        var dataTableLanguage = <?= json_encode($datatableLang, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); ?>;

        function getDataTableLanguage() {
            return $.extend(true, {}, dataTableLanguage);
        }

        //$(document).ready(function() {
        $('#paper_table').dataTable({
            "order": [
                [0, "desc"]
            ],
            responsive: true,
            pageLength: 25,
            "oLanguage": getDataTableLanguage()
            //});
        });
        $('#news_table').dataTable({
            responsive: true,
            pageLength: 25,
            "oLanguage": getDataTableLanguage()
            //});
        });
        $('#user_table').dataTable({
            responsive: true,
            pageLength: 25,
            "oLanguage": getDataTableLanguage()
            //});
        });

        $('#table_allpaper').dataTable({
            responsive: true,
            "order": [
                [0, "desc"]
            ],
            pageLength: 25,
            "oLanguage": getDataTableLanguage()
            //});
        });
    </script>
</body>

</html>