Example #1
0
 public static function generateComponent()
 {
     $com_name = Request::getUrlSegment(0);
     //проверяем наличие такого компонента
     if (!is_dir(SITE_ROOT . '/components/' . $com_name)) {
         Router::set404();
     }
     ob_start();
     //запускаем работу компонента
     if (is_file(SITE_ROOT . '/components/' . $com_name . '/index.php')) {
         Load::file(SITE_ROOT . '/components/' . $com_name . '/index.php');
     } else {
         $section = Request::getUrlSegment(1);
         if (is_file(SITE_ROOT . '/components/' . $com_name . '/' . $section . '/' . $section . '.php')) {
             Load::file(SITE_ROOT . '/components/' . $com_name . '/' . $section . '/' . $section . '.php');
         } else {
             Router::set404();
         }
     }
     return ob_get_clean();
 }
Example #2
0
<?php

//отображаем статью
$article_id = Request::getUrlSegment(2, true, Validator::INT);
$article = (new Db())->getRow('SELECT `name`,`content` FROM ##content_articles WHERE `id`=?i', $article_id, MYSQLI_ASSOC);
if (!$article) {
    Router::set404();
}
Document::setTitle($article['name']);
Load::view(__DIR__ . '/view.php', ['data' => $article, 'params' => Request::getItemParams()['params']]);
Example #3
0
<?php

$form_id = Request::getUrlSegment(2, true, Validator::INT);
$form_data = (new Db())->getRow('SELECT * FROM `##feedback_forms` WHERE `id`=?i', $form_id, MYSQLI_ASSOC);
if (!$form_data) {
    Router::set404();
}
$fields = (new Db())->getAll('SELECT * FROM `##feedback_fields` WHERE `form_id`=?i AND `published`=1 ORDER BY `ordering`', $form_data['id'], MYSQLI_ASSOC);
if (Request::getUrlSegment(3, false) === 'submit') {
    Load::file(__DIR__ . '/submit.php', ['form_data' => $form_data, 'fields' => $fields]);
} else {
    //отображаем форму
    Document::addCss(SConfig::SITE_MAIN_URI . 'components/feedback/client/style.css');
    Document::addJs(SConfig::SITE_MAIN_URI . 'components/feedback/client/script.js');
    Document::setTitle($form_data['name']);
    session_start();
    if (isset($_SESSION['feedback_send_status'])) {
        echo '<div class="system-notice ' . $_SESSION['feedback_send_status'][0] . '">' . $_SESSION['feedback_send_status'][1] . '</div>';
        unset($_SESSION['feedback_send_status']);
    }
    session_write_close();
    Load::view(__DIR__ . '/view.php', ['data' => $form_data, 'fields' => $fields, 'params' => Request::getItemParams()]);
}