<?php use PhoneBook\Component\Registry, PhoneBook\DataSource\PhoneBook as PhoneBookDataSource; $recordID = Registry::get('router')->getSegmentByID(3); PhoneBookDataSource::removeRecordByID($recordID); $location = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/'; header('location: ' . $location);
<?php use PhoneBook\Component\View, PhoneBook\DataSource\PhoneBook as PhoneBookDataSource; $search_block = View::getRender(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/part/search-block.php']); $phoneBook = View::getRender(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/part/phone-book.php', 'data' => ['phoneBook' => PhoneBookDataSource::getRecords()]]); View::render(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/layout.php', 'data' => ['content' => $search_block . $phoneBook]]);
<?php use PhoneBook\DataSource\PhoneBook as PhoneBookDataSource, PhoneBook\Component\Registry; $recordID = Registry::get('router')->getSegmentByID(4); if (!PhoneBookDataSource::getRecordByID($recordID)) { throw new Exception('Bad request: 404'); } $POST_fields = ['name', 'type', 'number']; foreach ($POST_fields as $field) { if (!isset($_POST[$field])) { throw new Exception('POST request error: field @' . $field . ' not specified'); } } $phoneList = []; foreach ($_POST['type'] as $key => $value) { if (!empty($_POST['number'][$key])) { $phoneList[] = ['type' => $value, 'number' => preg_replace('#[^0-9]+#', '', $_POST['number'][$key])]; } } if (!empty($_POST['name']) && !empty($phoneList)) { PhoneBookDataSource::editRecord($recordID, $_POST['name'], $phoneList); } $location = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/'; header('location: ' . $location);
<?php use PhoneBook\DataSource\PhoneBook as PhoneBookDataSource; $POST_fields = ['name', 'type', 'number']; foreach ($POST_fields as $field) { if (!isset($_POST[$field])) { throw new Exception('POST request error: field @' . $field . ' not specified'); } } $phoneList = []; foreach ($_POST['type'] as $key => $value) { if (!empty($_POST['number'][$key])) { $phoneList[] = ['type' => $value, 'number' => preg_replace('#[^0-9]+#', '', $_POST['number'][$key])]; } } if (!empty($_POST['name']) && !empty($phoneList)) { PhoneBookDataSource::addRecord($_POST['name'], $phoneList); } $location = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/'; header('location: ' . $location);
<?php use PhoneBook\Component\View, PhoneBook\DataSource\PhoneBook as PhoneBookDataSource; $search_block = View::getRender(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/part/search-block.php', 'data' => ['query' => $_GET['search']]]); $_GET['search'] = trim(preg_replace('#[^a-zA-ZА-Яа-я0-9 ]+#ui', '', $_GET['search'])); $searchTerms = explode(' ', mb_substr($_GET['search'], 0, 100, 'UTF-8')); $searchPattern = implode('|', $searchTerms); while (strpos($searchPattern, '||') !== false) { $searchPattern = str_replace('||', '|', $searchPattern); } $searchPattern = trim($searchPattern, '|'); $phoneBook = ''; if (!empty($_GET['search']) && !empty($phoneBook = PhoneBookDataSource::getRecordsBySearchQuery($searchTerms))) { $phoneBook = View::getRender(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/part/phone-book.php', 'data' => ['phoneBook' => PhoneBookDataSource::getRecordsBySearchQuery($searchTerms), 'searchPattern' => $searchPattern]]); } $phoneBook = empty($phoneBook) ? 'Ничего не найдено.' : $phoneBook; View::render(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/layout.php', 'data' => ['content' => $search_block . $phoneBook]]);
<?php use PhoneBook\Component\View, PhoneBook\DataSource\PhoneBook as PhoneBookDataSource, PhoneBook\Component\Registry; $recordID = Registry::get('router')->getSegmentByID(3); $record = PhoneBookDataSource::getRecordByID($recordID); if (empty($record)) { throw new Exception('Bad request: 404'); } $form = View::getRender(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/page/edit.record.[id].php', 'data' => ['record' => $record]]); View::render(['template' => $_SERVER['DOCUMENT_ROOT'] . '/private/template/layout.php', 'data' => ['content' => $form]]);