From 491c2321daf9338d463b0d327a3752d7303fd550 Mon Sep 17 00:00:00 2001 From: Linux User Date: Wed, 29 Jun 2011 17:06:25 +0800 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5?= =?UTF-8?q?=D0=B9=D1=81=20=D0=B8=20=D0=BD=D0=B5=D0=BC=D0=BD=D0=BE=D0=B3?= =?UTF-8?q?=D0=BE=20=D0=BB=D0=BE=D0=B3=D0=B8=D0=BA=D0=B8=20=D1=80=D0=B5?= =?UTF-8?q?=D0=B3=D0=B8=D1=81=D1=82=D1=80=D0=B0=D1=86=D0=B8=D0=B8.=20?= =?UTF-8?q?=D0=A1=D0=B0=D0=BC=D0=B0=20=D1=80=D0=B5=D0=B3=D0=B8=D1=81=D1=82?= =?UTF-8?q?=D1=80=D0=B0=D1=86=D0=B8=D1=8F=20=D0=BD=D0=B5=20=D1=80=D0=B0?= =?UTF-8?q?=D0=B1=D0=BE=D1=82=D0=B0=D0=B5=D1=82,=20=D1=82=D0=B0=D0=BA=20?= =?UTF-8?q?=D0=BA=D0=B0=D0=BA=20=D0=B5=D1=89=D1=91=20=D0=BD=D0=B5=20=D0=BF?= =?UTF-8?q?=D1=80=D0=B8=D0=BA=D1=80=D1=83=D1=87=D0=B5=D0=BD=D1=8B=20=D1=8E?= =?UTF-8?q?=D0=B7=D0=B5=D1=80=D1=8B.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/classes/controller/navigation.php | 4 +++- application/classes/controller/register.php | 21 +++++++++++++++++++ application/config/common.php | 5 +++-- application/views/registration/closed.php | 6 ++++++ application/views/registration/opened.php | 15 +++++++++++++ assets/css/main.css | 9 +++++++- 6 files changed, 56 insertions(+), 4 deletions(-) create mode 100644 application/classes/controller/register.php create mode 100644 application/views/registration/closed.php create mode 100644 application/views/registration/opened.php diff --git a/application/classes/controller/navigation.php b/application/classes/controller/navigation.php index ad7cb2b..68a3cfc 100644 --- a/application/classes/controller/navigation.php +++ b/application/classes/controller/navigation.php @@ -4,7 +4,9 @@ class Controller_Navigation extends Controller_Template { public $template = 'navigation/actions'; public function action_actions() { $this->template = new View('navigation/actions'); - $this->template->login_or_logout = HTML::anchor('login', 'Вход'); + $login_or_logout = HTML::anchor('login', 'Вход'); + if (Kohana::config('common.vote_opens') > new DateTime('now')) $login_or_logout .= "
  • ".HTML::anchor('register', 'Регистрация'); + $this->template->login_or_logout = $login_or_logout; if (Auth::instance()->logged_in()){ $this->template->login_or_logout = HTML::anchor('logout', 'Выход'); } diff --git a/application/classes/controller/register.php b/application/classes/controller/register.php new file mode 100644 index 0000000..60ef7a7 --- /dev/null +++ b/application/classes/controller/register.php @@ -0,0 +1,21 @@ +logged_in()) return $this->request->redirect(''); + if (Kohana::config('common.vote_opens') <= new DateTime('now')) $this->$template = 'registration/closed'; + if ($_POST){ + if (Kohana::config('common.vote_opens') <= new DateTime('now')){ + $this->template->error = "Регистрация закрыта."; + return; + } + $user = ORM::factory('user'); + $status = Auth::instance()->login($_POST['login'], $_POST['password']); + if ($status){ + return $this->request->redirect(''); + } + else $this->template->error = "Ошибка регистрации."; + } + } +} diff --git a/application/config/common.php b/application/config/common.php index ee6f688..d0dfb8c 100644 --- a/application/config/common.php +++ b/application/config/common.php @@ -2,5 +2,6 @@ return array( 'this_year' => "2011", - 'title' => "Конкурс быстрого программирования «Поихаил!»" -); \ No newline at end of file + 'title' => "Конкурс быстрого программирования «Поихаил!»", + 'vote_opens' => new DateTime('2011-07-01') +); diff --git a/application/views/registration/closed.php b/application/views/registration/closed.php new file mode 100644 index 0000000..134eb3f --- /dev/null +++ b/application/views/registration/closed.php @@ -0,0 +1,6 @@ +post('title',"Регистрация закрыта")->post('styles','main.css')->execute() ?> + +

    К сожалению, голосование уже началось, а значит, регистрация закрыта.

    +

    Желаем удачи в следующем конкурсе!

    + +execute() ?> diff --git a/application/views/registration/opened.php b/application/views/registration/opened.php new file mode 100644 index 0000000..8a4105f --- /dev/null +++ b/application/views/registration/opened.php @@ -0,0 +1,15 @@ +post('title',"Регистрация")->post('styles','main.css')->execute() ?> + +
    +
    +

    Введите логин, пароль и e-mail.

    + +

    +

    +

    +

    +

    +

    + + +execute() ?> diff --git a/assets/css/main.css b/assets/css/main.css index c41c8a3..0a6af8f 100644 --- a/assets/css/main.css +++ b/assets/css/main.css @@ -42,4 +42,11 @@ img { border: none; } .hidden{ display: none; -} \ No newline at end of file +} +input[type="text"],input[type="password"]{ + margin-right: 40%; + float: right; +} +input[type="submit"]{ + margin-left: 3em; +}