public function actionAllThemes()
 {
     //Создание необходимых объектов:
     $objThemeModel = new ThemesModel();
     $viewAllInfo = new View();
     //Проверка пользовательских данных и создание свойств для вывода инфо:
     $varPage = intval($_GET['page']);
     try {
         //Добавление новой темы + работа с данными таблицы сообщений:
         if (!empty($_POST['text']) && !empty($_POST['titleTheme']) && strlen($_POST['titleTheme']) < 120) {
             //Проверка на повторяемость темы:
             $idTheme = $objThemeModel->actRepTheme($_POST['titleTheme']);
             if (!empty($idTheme)) {
                 throw new ErrUser($this->viewErrDataUserTheme(2, $idTheme));
             } else {
                 //Создание необходимых переменных
                 $arr = $this->getCheckVal([$_POST['text'], $_POST['titleTheme']]);
                 $text = $arr[0];
                 $titleTheme = $arr[1];
                 $login = $_SESSION['login'];
                 $avatar = $_SESSION['avatar'];
                 //Обработка BB текста сообщения:
                 $text = $this->actText($text);
                 //Добавление новой темы:
                 $objThemeModel->addNewTheme($titleTheme, $login);
                 //Определение ID новой темы:
                 $idNewTheme = $objThemeModel->getNewThemeID();
                 //Добавление сообщения новой темы в таблицу сообщений:
                 $objThemeModel->addMessNewTheme($idNewTheme[0]['id'], $text, $login, $avatar);
                 //Создание маршкера ошибки повторяемой темы:
                 throw new ErrUser("" . $this->viewErrDataUserTheme(3, $idNewTheme[0]['id']) . "");
             }
         } else {
             if ((empty($_POST['text']) || empty($_POST['titleTheme']) || strlen($_POST['titleTheme']) > 120) && isset($_POST['ok'])) {
                 throw new ErrUser($this->viewErrDataUserTheme(1));
             }
         }
     } catch (ErrDBModel $e) {
         $viewAllInfo->Err = $e->getMessage();
     } catch (ErrUser $e) {
         $viewAllInfo->ErrUser = $e->getMessage();
     }
     try {
         //Доп. расчёты для постраничной навигации:
         $varSumThemes = $objThemeModel->actSumThemes();
         $varVarPage = $this->getVarPage($varPage, $varSumThemes[0]["COUNT(*)"]);
         //Выборка тем с учётом постраничной навигации:
         $varAllThemes = $objThemeModel->getAllThemes($varVarPage[0]);
     } catch (ErrDBModel $e) {
         $viewAllInfo->Err = $e->getMessage();
     }
     //Вывод информации:
     $viewAllInfo->ctrl = 'Themes';
     $viewAllInfo->act = 'AllThemes';
     $viewAllInfo->page = $varVarPage[1];
     $viewAllInfo->sumData = $varSumThemes[0]["COUNT(*)"];
     $viewAllInfo->viewAllThemes = $varAllThemes;
     $viewAllInfo->display('ViewAllThemes.php');
 }
예제 #2
0
    <div class="row">
        <div class="col-lg-12">

            <table class="table table-striped">
                <thead>
                    <tr style="text-align: center;">
                        <th>Název</th>
                        <th>Autor</th>
                        <th>Datum vložení</th>
                        <th>Hodnocení</th>
                        <th></th>
                    </tr>
                </thead>
                <tbody>
                    <?php 
$themesModel = new ThemesModel();
$articles = $themesModel->getAllPublicArticles();
foreach ($articles as $article) {
    $authorOrignial = $themesModel->getAuthorArticle($article['id_author']);
    echo '<tr><td style="text-align: left;">' . $article['article_name'] . '</td>' . '<td style="text-align: left;">' . $authorOrignial['name'] . ", " . $article['authors'] . '</td>' . '<td style="text-align: left;">' . date_format($article['create_date'], "d/m/Y") . '</td>' . '<td style="text-align: left;">' . $article['total_score'] . '</td>';
    echo '<td style="text-align: right;">' . '<a href="index.php?themes=detailArticle&id=' . $article['id_article'] . '" class="btn btn-success btn-xs"><i class="fa fa-eye"></i>&nbsp;DETAIL</a>';
}
?>
                </tbody>
            </table>



        </div>
    </div>
</div>
<?php

/**
 * Stránka zobrazující detailní informace o příspěvku vybraného podle ID.
 *
 * @author Kosek David
 */
$themesModel = new ThemesModel();
$article = $themesModel->getArticle($vars["id"]);
if ($article) {
    ?>

     <div class="container">
         <div class="jumbotron">
             <div class="row">
                 <h2>Detail příspěvku - <?php 
    echo $article['article_name'];
    ?>
</h2>
             </div>


             <table class="table table-striped">
                 <tr>
                     <td>Název</td>
                     <td><?php 
    echo $article['article_name'];
    ?>
</td>
                 </tr>
                 <tr>