本文整理汇总了PHP中Resources::getInstance方法的典型用法代码示例。如果您正苦于以下问题:PHP Resources::getInstance方法的具体用法?PHP Resources::getInstance怎么用?PHP Resources::getInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Resources
的用法示例。
在下文中一共展示了Resources::getInstance方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: action_add
/**
* Добавление нового платежа
*/
public function action_add(array $params = array())
{
$links = Resources::getInstance()->links;
$request = $this->getRequest();
if (empty($params)) {
$this->flash('Не указан идентификатор заявки', $links->get('admin.applications', array('sort_field' => 'fio', 'sort_direction' => 'asc')));
}
$app_id = intval(array_shift($params));
$opts = array('app_id' => $app_id);
$action = $links->get('payments.add', $opts);
$form = Form_Payment_Add::create($action);
$this->set('form', $form);
$method = $form->method();
if (empty($request->{$method})) {
$this->render();
}
if (!$form->validate($request)) {
$this->render();
}
$payment = Model_Payment::create();
$amount = $form->amount->value;
if (!$payment->add($amount, $app_id)) {
$msg = 'Не удалось добавить платёж';
} else {
$msg = 'Платёж успешно добавлен';
}
$this->flash($msg, $links->get('admin.applications', array('sort_field' => 'fio', 'sort_direction' => 'asc')));
}
示例2: action_responsible_teacher
public function action_responsible_teacher()
{
$programs = Model_Education_Programs::create();
$request = $this->getRequest();
$method = 'post';
if (empty($request->{$method})) {
$users = Model_User::create();
$this->set('teachers', $users->getTeachersList());
$this->set('disciplines', $programs->getDisciplinesResponsibleTeachersList());
$this->set('courses', $programs->getCoursesResponsibleTeachersList());
$this->render('assignment/responsible_teacher');
} else {
/**
* @todo Переделать для использования Form_Abstract.
*/
$requestData = $request->{$method};
if (isset($requestData['courses'])) {
foreach ($requestData['courses'] as $courseId => $teacherId) {
$programs->setCoursesResponsibleTeacher($courseId, $teacherId);
}
}
if (isset($requestData['disciplines'])) {
foreach ($requestData['disciplines'] as $disciplineId => $teacherId) {
$programs->setDisciplineResponsibleTeacher($disciplineId, $teacherId);
}
}
$links = Resources::getInstance()->links;
$this->flash('Ответсвенные преподаватели успешно назначены', $links->get('admin.responsible-teachers'), 3);
}
}
示例3: __construct
public function __construct()
{
parent::__construct();
//$this->storage = new Storage ('../private/materials');
$this->storage = Resources::getInstance()->materials_storage;
$this->attachObserver(Model_ControlWork::create());
$this->_checkRightsObject = Model_CheckRigths::create();
}
示例4: action_remove_pass
/**
* Закрывает доступ к разделу.
*/
public function action_remove_pass($params)
{
$model_checkpoint = Model_Checkpoint::create();
$model_education_programs = Model_Education_Programs::create();
$model_checkpoint->removeCheckpointPass($params['student_id'], $params['section_id']);
$discipline_id = $model_education_programs->getDisciplineNumberBySection($params['section_id']);
$links = Resources::getInstance()->links;
$link = $links->get('teacher.discipline', array('discipline_id' => $discipline_id['discipline_id']));
$this->flash('Доступ к разделу закрыт', $link);
}
示例5: render
/**
* Сборка и вывод шаблона. Если шаблон не указан, автоматически
* выбирается соответствующий контроллеру/действию. Значения переменных,
* переданных в этот метод имеют приоритет над значениями, установленными
* в методе set().
*
* @see self::set()
*
* @param string $template Название шаблона.
* @param array $vars Переменные для шаблона.
* @param string $layout Название макета.
* @return void
*/
public function render($template = null, array $vars = array(), $layout = 'default')
{
/* Если шаблон не указан, то... */
if (null === $template) {
/* определяем его автоматически на основе данных от роутера */
$handler = $this->getRequest()->_router['handler'];
$template = sprintf('%s/%s', $handler['controller'], $handler['action']);
}
/* Объединяем переменные для шаблона с заданными через set() */
$view_vars = array_merge($this->_view_vars, $vars);
/* Настраиваем объект работы с шаблонами и выводим страницу */
$view = Resources::getInstance()->view;
$links = Resources::getInstance()->links;
$view->setLayout($layout)->setTemplate($template)->set('_request', $this->_request)->set('_links', $links)->setVars($view_vars)->render();
}
示例6: action_show
/**
* Отображение доступных учебных материалов.
*/
public function action_show(array $params = array())
{
$a = Model_Test::create();
$a->test();
$links = Resources::getInstance()->links;
if (!isset($params['discipline_id']) || is_int($params['discipline_id'])) {
$this->flash('Не указан идентификатор дисциплины', $links->get('student.programs'));
}
$discipline_id = intval($params['discipline_id']);
$user = Model_User::create();
$udata = (object) $user->getAuth();
$session = Resources_Abstract::getInstance()->session;
// если данных о доступных дисциплинах нет - вычислить
if (!isset($session->availDisciplines)) {
$student = Model_Education_Students::create();
$avail_programs = $student->getAvailDisciplinesForPrograms($udata->user_id);
$avail_disciplines = $student->getAvailDisciplinesSeparate($udata->user_id);
}
$discipline_open = in_array($discipline_id, $session->availDisciplines);
if ($discipline_open) {
// дисциплина доступна
$disc = Model_Discipline::create();
$discipline_data = $disc->get($discipline_id);
$section = Model_Section::create();
$sections = $section->getAllByDiscipline($discipline_id);
$modelApps = Model_Application::create();
$statuses = $modelApps->getAppsStatus($discipline_id, $udata->user_id);
//== Model_Application::STATUS_FINISHED;
$statusFinished = array_key_exists(Model_Application::STATUS_FINISHED, $statuses);
$material = Model_Educational_Materials::create();
$materials = $material->getAllByDiscipline($discipline_id, $statusFinished);
$control_work = Model_ControlWork::create();
$tests = $control_work->getTestsByDiscipline($discipline_id);
$this->set('discipline', $discipline_data);
$this->set('sections', $sections);
$this->set('materials', $materials);
$this->set('tests', $tests);
$this->set('user_id', $udata->user_id);
//print_r($materials);
$this->render();
} else {
$this->flash('Данная дисциплина на данный Вам недоступна. Возможно Вы не полностью оплатили заявку по данной дисциплине или программе, содержащей данную дисциплину, либо вообще не подавали заявку на ее изучение.', $links->get('student.programs'), 5);
}
}
示例7:
<?php
/* $Id$ */
require_once '../private/init.php';
/* Инициализируем объект запроса */
$request = Http_Request::create();
/* Инициализируем диспетчер */
$dispatcher = Resources::getInstance()->dispatcher;
/* Обрабатываем запрос */
$dispatcher->dispatch($request);
示例8: action_edit_account
public function action_edit_account($params)
{
$links = Resources::getInstance()->links;
$opts = array('user_id' => $params['user_id']);
$action = $links->get('users.edit', $opts);
$form = Form_Profile_Edit::create($action);
$users = Model_User::create();
$this->set('form', $form);
$this->set('rolesCaptions', $this->_roles_captions);
$request = $this->getRequest();
$method = $form->method();
$requestData = $request->{$method};
if (empty($requestData)) {
if (($userInfo = $users->getUserInfo($params['user_id'])) === FALSE) {
$this->flash('Пользователь не существует', $links->get('users.list') . 'all/fio/asc/', 5);
}
$form->setValue('surname', $userInfo['surname']);
$form->setValue('name', $userInfo['name']);
$form->setValue('patronymic', $userInfo['patronymic']);
$form->setValue('role', $userInfo['role']);
} else {
if ($form->validate($request)) {
$userInfo = array('name' => $requestData['name'], 'surname' => $requestData['surname'], 'patronymic' => $requestData['patronymic'], 'role' => $requestData['role'], 'user_id' => $params['user_id']);
$users->setUserInfo($userInfo);
$this->flash('Данные пользователя успешно изменены', $links->get('users.list') . 'all/fio/asc/', 3);
}
}
$this->render('users/edit_account');
}
示例9: action_attachment
public function action_attachment($params)
{
$messages = new Model_Messages();
if (!$messages->getAttachment($params['attachment_id'])) {
$links = Resources::getInstance()->links;
$this->flash('Запрошено несуществующее вложение или у Вас недостаточно прав для загрузки вложения', $links->get('messages.inbox'), 3);
}
}
示例10: action_delete
/**
* Удаление заявки из базы данных.
*
* @todo Удалять ли платежи из базы при удалении заявки?
* Зачем нукжно вообще удалять заявки??? Какому бизнес-процессу это соответствует?
*/
public function action_delete($params)
{
$links = Resources::getInstance()->links;
//$return_url = $links->get('admin.applications',array ('sort_field' => 'fio', 'sort_direction' => 'asc'));
//$return_url = $links->get('admin.applications',array ('sort_field' => $params['sort_field'], 'sort_direction' => $params['sort_direction']));
$return_url = $links->get('admin.applications');
if (empty($params)) {
$this->flash('Не указан номер заявки', $return_url);
}
$app_id = intval(array_shift($params));
$app = Model_Application::create();
if (!$app->delete($app_id)) {
$msg = 'Не удалось удалить заявку с номером ' . $app_id;
} else {
$msg = 'Заявка успешно удалена';
}
$this->flash($msg, $return_url);
}
示例11: __construct
public function __construct()
{
parent::__construct();
//$this->storage = new Storage ('../private/contracts');
$this->storage = Resources::getInstance()->contracts_storage;
}
示例12: action_save_section_order
/**
* Сохранение порядка разделов(секций)
*/
public function action_save_section_order()
{
$educationPrograms = Model_Education_Programs::create();
$data = explode(',', $_POST['sectionOrderInfo']);
for ($i = 0; $i < count($data); $i++) {
$educationPrograms->editSectionNumber($data[$i], $i + 1);
}
$links = Resources::getInstance()->links;
$this->flash('Порядок разделов успешно изменён', $links->get('admin.programs'), 3);
}
示例13: action_ajax_get_exam_questions
public function action_ajax_get_exam_questions()
{
$request = $this->getRequest();
$test_id = (int) $request->post['test_id'];
$section_id = (int) $request->post['section_id'];
$actual_code = $request->post['sec_code'];
$user = Model_User::create();
$udata = (object) $user->getAuth();
$auth = Resources::getInstance()->auth;
$expected_code = $auth->getTestSecurityCode($udata->user_id, $test_id, $section_id);
if ($actual_code != $expected_code) {
$response = array('result' => false, 'error' => 'Доступ к тесту закрыт');
echo json_encode($response);
return;
}
$test = Model_Test::create();
$data = $test->get($test_id);
try {
$questions = $test->start($test_id, $section_id, $data['num_questions']);
} catch (Model_Test_Exception $e) {
$response = array('result' => false, 'error' => $e->getMessage());
echo json_encode($response);
return;
}
$questions = (object) $questions;
$response = array('result' => true, 'questions' => $questions);
echo json_encode($response);
}
示例14: setPasswd
/**
* Установка нового пароля для пользователя.
*
* @param int $user_id Идентификатор пользователя.
* @param string $passwd Пароль.
* @return boolean
*/
public function setPasswd($user_id, $passwd)
{
$sql = '
UPDATE ' . $this->_tables['users'] . '
SET passwd = :passwd
WHERE user_id = :uid
LIMIT 1
';
$stmt = $this->prepare($sql);
/* Вычисляем хэш пароля */
$auth = Resources::getInstance()->auth;
$passwd = $auth->getPasswdHash($passwd);
$values = array(':uid' => $user_id, ':passwd' => $passwd);
return $stmt->execute($values);
}
示例15: sendPasswdRestore
/**
* Отправка сообщения для восстановления пароля.
*
* @param int $id Идентификатор пользователя.
* @param string $email Email пользователя.
* @param string $code Код активации.
* @return
*/
public function sendPasswdRestore($id, $email, $code)
{
/* Создаём ссылку для активации */
$links = Resources::getInstance()->links;
$link = $links->getSiteUrl() . $links->get('users.reset-passwd', array('user_id' => $id, 'code' => $code));
/* Получаем заголовок и текст письма */
$subject = $this->_getSubject(self::TYPE_RESTORE_PASSWD);
$params = array($link);
$message = $this->_getMessage(self::TYPE_RESTORE_PASSWD, $params);
return $this->_send($email, $subject, $message);
}