This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "quickfw".
The branch, master has been updated
via 2259653f161fd3e385c2578baed5b1684c4101c3 (commit)
via f3e6cd6fe03e1503f4076312223d8a920e2959ad (commit)
from 550981f55209896288e5e7a306fe622372cf2bc7 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 2259653f161fd3e385c2578baed5b1684c4101c3
Author: Ivan Borzenkov <iva...@li...>
Date: Thu Jun 24 23:29:18 2010 +0400
Переписан контроллер отображения документации
diff --git a/application/default/controllers/DocController.php b/application/default/controllers/DocController.php
index 9619978..6ce1fe4 100644
--- a/application/default/controllers/DocController.php
+++ b/application/default/controllers/DocController.php
@@ -14,21 +14,18 @@ class DocController
exec('chmod -R 777 '.TMPPATH.'/doc');
}
- public function indexAction()
- {
- //пока так
- return $this->allAction();
- }
-
/**
* Генерирует общую страницу с документацией
*/
- public function allAction()
+ public function indexAction()
{
- $file = str_replace(QFW::$router->UriPath, '', QFW::$router->Uri);
- if ($file == '/')
- $file = '/quickfw.html';
- $file = TMPPATH.'/doc'.$file;
+ $args = func_get_args();
+ if (substr($_SERVER['REQUEST_URI'], -1, 1) != '/' && count($args) == 0)
+ QFW::$router->redirect(Url::A());
+ $file = implode('/', $args);
+ if ($file == '')
+ $file = 'quickfw.html';
+ $file = TMPPATH.'/doc/'.$file;
//условие для стилей
if (strpos($file, '.css')!==false)
header('Content-Type: text/css');
commit f3e6cd6fe03e1503f4076312223d8a920e2959ad
Author: Ivan Borzenkov <iva...@li...>
Date: Thu Jun 24 23:21:49 2010 +0400
Правка документации
diff --git a/doc/asciidoc/auth.txt b/doc/asciidoc/auth.txt
index 618cdc9..5fbe094 100644
--- a/doc/asciidoc/auth.txt
+++ b/doc/asciidoc/auth.txt
@@ -4,8 +4,10 @@
Сесии
~~~~~
-В отличие от традиционных решений в данном фреймворке сессии являются частным случаем авторизации, так как в большинстве случаев сессии используются для авторизации пользователей, то такой подход оказался оправданным.
+В отличие от традиционных решений в данном фреймворке сессии являются частным случаем авторизации, так как в большинстве случаев сессии используются для авторизации пользователей, то такой подход оказался оправданным.
Для того чтобы стартовать сессию не привязывая ее к конкретному пользователю нужно прямо или косвенно наследовать контроллер от класса QuickFW_Auth и для старта сессии вызвать $this->session(); После вызова $this->session(); с сессями можно работать через стандартный механизм - массив $_SESSION.
+При наличие у пользователя сессионной куки сессия автоматически поднимается при вызове конструктора класса QuickFW_Auth.
+
Сессионные данные сохраняются в кеше, указанном по умолчанию, ключами являются строки sess_<id сессии>, пустые сессии автоматически удаляются из хранилища и с помощью механизма очистки сессий также производится чистка кеша.
diff --git a/doc/asciidoc/mvc.txt b/doc/asciidoc/mvc.txt
index 916f1f2..98c04f4 100644
--- a/doc/asciidoc/mvc.txt
+++ b/doc/asciidoc/mvc.txt
@@ -13,10 +13,15 @@ MVC и преобразование адресов в контроллеры
* Первым идет модуль - в папке +application+ ищется папка с именем модуля, если же ее нет, то выбирается модуль по умолчанию (+default+).
* Контроллер - в текущем модуле в папке +controllers+ проверяется наличие файла +NameСontroller+, если его нет, то используется файл +IndexСontroller+.
* После подключения файла контроллера проверяется наличие класса +NameСontroller+, а если его нет, то проверяется его наличие в пространстве имен с именем модуля.
+ * Если класс не найден, а файл существует, то выводится сообщение об ошибке.
* В классе ищется функция +Аction(Action|Cli|Block|...)+ в зависимости от способа вызова. Если функции нет, то вызывается функция +index+ с указанным суффиксом.
* Остальные компоненты передаются как параметры функции.
* У контроллера по умолчанию в действие по умолчанию (+index/index+) не может быть параметров - если они есть, то выдается 404
+Получается, что ни при каких обстоятельствах нельзя получить ошибку 404 - все несуществующие страницы будут
+отправлены на действие по умолчанию (+default/index/index+), однако есть опция +$config[\'QFW'][\'auto404']+, и если она установлена,
+то на все запросы пришедшие на действие по умолчанию кромя запроса к корню будет выдана страница 404.
+
Несколько примеров.
.Разбор обычного URI вызванного через http
@@ -27,15 +32,15 @@ MVC и преобразование адресов в контроллеры
[source,php]
---------------------------------------------
-...
+//...
class TopicContriller
{
- ...
+ //...
indexAction($number)
{
die($number);
}
- ...
+ //...
}
---------------------------------------------
Результат:
@@ -52,15 +57,15 @@ class TopicContriller
[source,php]
---------------------------------------------
-...
+//...
class RegisterContriller
{
- ...
+ //...
indexAction()
{
echo 'Регистрация';
}
- ...
+ //...
}
---------------------------------------------
Результат:
@@ -77,22 +82,26 @@ class RegisterContriller
[source,php]
---------------------------------------------
-...
+//...
class IndexContriller
{
- ...
+ //...
indexAction($p1, $p2)
{
echo $p1, $p2;
}
- ...
+ //...
}
---------------------------------------------
-Результат:
+Результат при включенной опции +$config[\'QFW'][\'auto404']+:
Указаны параметры у дефолтового CA
или несуществующий Контроллер или Экшен дефолтового контроллера
+Результат при выключенной опции +$config[\'QFW'][\'auto404']+:
+
+ asdfgffa
+
=====================================================================
.Вызов из консоли
@@ -103,15 +112,15 @@ class IndexContriller
[source,php]
---------------------------------------------
-...
+//...
class CronContriller
{
- ...
+ //...
parceCli()
{
echo 'Обработка...';
}
- ...
+ //...
}
---------------------------------------------
Результат:
-----------------------------------------------------------------------
Summary of changes:
application/default/controllers/DocController.php | 19 +++++------
doc/asciidoc/auth.txt | 4 ++-
doc/asciidoc/mvc.txt | 35 +++++++++++++--------
3 files changed, 33 insertions(+), 25 deletions(-)
hooks/post-receive
--
quickfw
|