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 d1771c436ef9b264a6a797b4fc611990fe200cdd (commit)
via 6db6b54eff8d6ac05222b6497b9e1e08838f35d6 (commit)
via 8e0852e4d9dcdcbf7f63589de00a158b984f51e3 (commit)
via a994588847722669dc3900cc09f36b9fa36a9ed8 (commit)
via 824d104f79952baa5c21c6e221eb4b222b133302 (commit)
via 1f333820cb135f7fcc92c478cb9b87abd05491a6 (commit)
via 3e01d725a95deaf4fe497ee074888af284474fdc (commit)
from 93f6097f71fe7436238251a564a3afcbe7a924e2 (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 d1771c436ef9b264a6a797b4fc611990fe200cdd
Author: Ivan Borzenkov <iva...@li...>
Date: Wed Apr 6 04:42:46 2011 +0400
Настройка сессии - фикс после класса конфига
diff --git a/QFW/QuickFW/Session.php b/QFW/QuickFW/Session.php
index 4ce813a..aa11ee7 100644
--- a/QFW/QuickFW/Session.php
+++ b/QFW/QuickFW/Session.php
@@ -142,7 +142,7 @@ class QuickFW_Session
*/
public function __construct($sid = '')
{
- call_user_func_array('session_set_cookie_params', QFW::$config['session']);
+ call_user_func_array('session_set_cookie_params', QFW::$config['session']->toArray());
if (!empty($sid))
session_id($sid);
$this->start();
commit 6db6b54eff8d6ac05222b6497b9e1e08838f35d6
Author: Ivan Borzenkov <iva...@li...>
Date: Fri Mar 18 16:21:04 2011 +0300
Загрзка конфигов и помощью класса, директория с конфигами
diff --git a/QFW/Init.php b/QFW/Init.php
index a425821..3520217 100644
--- a/QFW/Init.php
+++ b/QFW/Init.php
@@ -58,7 +58,7 @@ class QFW
$file = APPPATH.'/'.$_SERVER['HTTP_HOST'].'.php';
if (is_file($file))
require ($file);
- return $config;
+ return new QuickFW_Config($config, APPPATH.'/config');
}
/**
diff --git a/QFW/QuickFW/Config.php b/QFW/QuickFW/Config.php
new file mode 100644
index 0000000..29c4f90
--- /dev/null
+++ b/QFW/QuickFW/Config.php
@@ -0,0 +1,75 @@
+<?php
+
+/**
+ * Класс для работы с конфигом
+ */
+class QuickFW_Config implements ArrayAccess
+{
+ private $data = array();
+ /**
+ * @var string Директория конфигурации
+ */
+ private $dir = '';
+
+ // necessary for deep copies
+ public function __clone() {
+ foreach ($this->data as $key => $value) if ($value instanceof self) $this[$key] = clone $value;
+ }
+
+ public function __construct(array $data = array(), $dir='') {
+ foreach ($data as $key => $value) $this[$key] = $value;
+ $this->dir = $dir;
+ }
+
+ public function offsetSet($offset, $data) {
+ if (is_array($data)) $data = new self($data, true);
+ if ($offset === null) { // don't forget this!
+ $this->data[] = $data;
+ } else {
+ $this->data[$offset] = $data;
+ }
+ }
+
+ public function toArray() {
+ $data = $this->data;
+ foreach ($data as $key => $value)
+ if ($value instanceof self)
+ $data[$key] = $value->toArray();
+ return $data;
+ }
+
+ public function __toString() {
+ return var_export($this->data, true);
+ }
+
+ public function offsetGet($offset) {
+ if ($this->dir && !isset($this->data[$offset]))
+ {
+ //пробуем загрузить файл
+ $file = $this->dir.'/'.$offset.'.php';
+ $data = array();
+ if (is_file($file))
+ $data = include($file);
+ if ($data == 1 && isset($config))
+ $data = $config;
+ $hf = $this->dir.'/'.$offset.'.'.$_SERVER['HTTP_HOST'].'.php';
+ if (is_file($hf))
+ {
+ $data = include($hf);
+ if ($data == 1 && isset($config))
+ $data = $config;
+ }
+ $this->data[$offset] = is_object($data) ? $data : new self($data, $this->dir.'/'.$offset);
+ }
+ return $this->data[$offset];
+ }
+ public function offsetExists($offset) { return isset($this->data[$offset]); }
+ public function offsetUnset($offset) { unset($this->data); }
+
+ //as prop
+ public function __get($offset) { return $this->offsetGet($offset); }
+ public function __set($offset, $data) { return $this->offsetSet($offset, $data); }
+ public function __isset($offset) { return $this->offsetExists($offset); }
+ public function __unset($offset) { return $this->offsetUnset($offset); }
+
+}
diff --git a/application/config/.gitignore b/application/config/.gitignore
new file mode 100644
index 0000000..07b8b66
--- /dev/null
+++ b/application/config/.gitignore
@@ -0,0 +1,2 @@
+# config dir
+.gitignore
diff --git a/doc/asciidoc/Makefile b/doc/asciidoc/Makefile
index f39af5f..c430a80 100644
--- a/doc/asciidoc/Makefile
+++ b/doc/asciidoc/Makefile
@@ -1,6 +1,6 @@
all: pdf html
-FILES = quickfw general quickstart directory mvc blocks templates cache auth autoload helpers features
+FILES = quickfw general quickstart directory mvc blocks templates cache auth autoload config helpers features
TEXTS = $(addsuffix .txt, $(FILES) )
pdf: quickfw.pdf
diff --git a/doc/asciidoc/autoload.txt b/doc/asciidoc/autoload.txt
index c28ae71..4b574b0 100644
--- a/doc/asciidoc/autoload.txt
+++ b/doc/asciidoc/autoload.txt
@@ -1,9 +1,7 @@
Автолоад
--------
-Есть возможность опционально включить автолоад классов.
-
-Параметр +QFW::$config[\'QFW'][\'autoload']+ по умолчанию имеет значение +false+.
+Начиная с версии 2.0 автолоад классов включен и его нельзя отключить.
Имя файла совпадает с именем класса, символ +_+ заменяется на +/+.
diff --git a/doc/asciidoc/config.txt b/doc/asciidoc/config.txt
new file mode 100644
index 0000000..8594f6f
--- /dev/null
+++ b/doc/asciidoc/config.txt
@@ -0,0 +1,61 @@
+Конфигурация
+------------
+
+Для чтения конфигов используется переменная +QFW::$config+. Она представляет собой класс к которому можно обращаться как к массиву.
+Конфигурация может быть разбита на несколько файлов. Главный конфигурационный файл находится в папке приложения (+APPPATH+) и называется +default.php+, в нем должен быть определен массив $config
+В папаке +APPPATH/config+ могут находится произвольные файлы с расширением php, которые должны возвращать массив или объект, реализующий интерфейс +ArrayAccess+ через оператор return или в переменной $config.
+При отсутствии в главном конфигурационном массиве элемента с указанным именем делается попытка подгрузить одноименный файл.
+
+Для каждого конфигурационного файла можно сделать "отклонения" добавив к имени файла суффикс с именем хоста (+$_SERVER[\'HTTP_HOST']+) -
+при запуске на этом осте подгрузятся оба файла - сначало основной, а потом файл, специфичный для хоста.
+
+.Пример
+=====================================================================
++application/default.php+:
+
+[source,php]
+---------------------------------------------
+$config = array(
+ 'database' => 'mysql://myuser:mypass@localhost/mybase',
+);
+---------------------------------------------
+
++application/default.site.my.php+:
+
+[source,php]
+---------------------------------------------
+$config = array(
+ 'database' => 'mysql://root@localhost/mybase',
+);
+---------------------------------------------
+
++application/config/capcha.php+:
+
+[source,php]
+---------------------------------------------
+return array(
+ 'key' => 'PRODKEY',
+);
+---------------------------------------------
+
++application/config/capcha.site.my.php+:
+
+[source,php]
+---------------------------------------------
+return array(
+ 'key' => 'DEVKEY',
+);
+---------------------------------------------
+
+Результат:
+
+ QFW::$config->database == 'mysql://myuser:mypass@localhost/mybase'
+ QFW::$config->capcha->key == 'PRODKEY'
+
+Результат на site.my:
+
+ QFW::$config->database == 'mysql://root@localhost/mybase'
+ QFW::$config->capcha->key == 'DEVKEY'
+
+=====================================================================
+
diff --git a/doc/asciidoc/directory.txt b/doc/asciidoc/directory.txt
index d01b0d0..fba5414 100644
--- a/doc/asciidoc/directory.txt
+++ b/doc/asciidoc/directory.txt
@@ -26,6 +26,8 @@
Основной шаблон страницы по умолчанию
[...]/;;
директории модулей совпадающие по структуре с каталогом +default+
+ config/;;
+ директория с конфигами - подразделы конфига
*cron*::
Скрипты для запуска не через http
cruise.php;;
diff --git a/doc/asciidoc/quickfw.txt b/doc/asciidoc/quickfw.txt
index 0fe9ffc..178dd6f 100644
--- a/doc/asciidoc/quickfw.txt
+++ b/doc/asciidoc/quickfw.txt
@@ -21,6 +21,8 @@ include::auth.txt[]
include::autoload.txt[]
+include::config.txt[]
+
include::helpers.txt[]
include::features.txt[]
commit 8e0852e4d9dcdcbf7f63589de00a158b984f51e3
Author: Ivan Borzenkov <iva...@li...>
Date: Fri Mar 18 15:14:48 2011 +0300
Используем автолоад, всегда
diff --git a/QFW/Init.php b/QFW/Init.php
index 6a23418..a425821 100644
--- a/QFW/Init.php
+++ b/QFW/Init.php
@@ -1,5 +1,18 @@
<?php
+//регаем автолоад
+require_once QFWPATH.'/QuickFW/Autoload.php';
+Autoload::Init();
+
+//определяем пути относительно известных
+if (!defined('TMPPATH'))
+ define('TMPPATH', VARPATH.'/tmp');
+if (!defined('LOGPATH'))
+ define('LOGPATH', VARPATH.'/log');
+if (!defined('MODPATH'))
+ define ('MODPATH', APPPATH . '/_common/models');
+
+
class QFW
{
/** @var array Глобальный массив данных */
@@ -56,15 +69,11 @@ class QFW
{
self::$config = self::config();
- require_once QFWPATH.'/QuickFW/Cache.php';
- require_once QFWPATH.'/QuickFW/Plugs.php';
-
//выставляем заголовок с нужной кодировкой
if (!empty(self::$config['host']['encoding']))
header("Content-Type: text/html; charset=".self::$config['host']['encoding']);
//Инициализируем класс базы данных
- require_once LIBPATH.'/DbSimple/Connect.php';
self::$db = new DbSimple_Connect(self::$config['database']);
//Подключаем шаблонизатор
@@ -77,11 +86,9 @@ class QFW
//подключаем модули и библиотеки
self::modules();
- require_once QFWPATH.'/QuickFW/Router.php';
static::$router = new QuickFW_Router(APPPATH);
//хелпер для урлов (зависит от QuickFW_Router)
- require_once QFWPATH.'/QuickFW/Url.php';
Url::Init();
}
@@ -96,24 +103,18 @@ class QFW
foreach(self::$config['error'] as $handler)
self::ErrorFromConfig($handler);
- //автолоад
- if (!empty(self::$config['QFW']['autoload']))
- {
- require_once QFWPATH.'/QuickFW/Autoload.php';
- Autoload::Init(self::$config['QFW']['autoload']);
- }
+ if (self::$config['QFW']['autoload'])
+ Autoload::Add(self::$config['QFW']['autoload']);
//JsHttpRequest
if (isset($_REQUEST['JsHttpRequest']))
{
- require_once LIBPATH.'/JsHttpRequest.php';
self::$ajax = new JsHttpRequest(self::$config['host']['encoding']);
//устанавливаем пустой главный шаблон
self::$view->mainTemplate = '';
}
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')
{
- require_once LIBPATH.'/jquery.php';
self::$ajax = new jQuery();
//устанавливаем пустой главный шаблон
self::$view->mainTemplate = '';
@@ -136,12 +137,12 @@ class QFW
*/
static private function ErrorFromConfig($handler)
{
- require_once LIBPATH.'/Debug/ErrorHook/Listener.php';
+ //require_once LIBPATH.'/Debug/ErrorHook/Listener.php';
if (!self::$ErrorHook)
self::$ErrorHook = new Debug_ErrorHook_Listener();;
$name = ucfirst($handler['name']);
- require_once LIBPATH.'/Debug/ErrorHook/'.$name.'Notifier.php';
+ //require_once LIBPATH.'/Debug/ErrorHook/'.$name.'Notifier.php';
//пока так, потом возможно придется переделать
{
$class = 'Debug_ErrorHook_'.$name.'Notifier';
@@ -151,7 +152,7 @@ class QFW
}
if ($handler['RemoveDups'])
{
- require_once LIBPATH.'/Debug/ErrorHook/RemoveDupsWrapper.php';
+ //require_once LIBPATH.'/Debug/ErrorHook/RemoveDupsWrapper.php';
$i = new Debug_ErrorHook_RemoveDupsWrapper($i,
TMPPATH.'/errors', $handler['RemoveDups']);
}
@@ -192,7 +193,7 @@ class QFW
*/
static public function JabberFromConfig()
{
- require_once LIBPATH.'/XMPPHP/XMPP.php';
+ //require_once LIBPATH.'/XMPPHP/XMPP.php';
return new XMPPHP_XMPP(
QFW::$config['jabber']['host'], QFW::$config['jabber']['port'],
QFW::$config['jabber']['user'], QFW::$config['jabber']['pass'],
@@ -202,13 +203,6 @@ class QFW
}
-if (!defined('TMPPATH'))
- define('TMPPATH', VARPATH.'/tmp');
-if (!defined('LOGPATH'))
- define('LOGPATH', VARPATH.'/log');
-if (!defined('MODPATH'))
- define ('MODPATH', APPPATH . '/_common/models');
-
QFW::Init();
?>
diff --git a/QFW/QuickFW/Autoload.php b/QFW/QuickFW/Autoload.php
index f9b5704..5e00e05 100644
--- a/QFW/QuickFW/Autoload.php
+++ b/QFW/QuickFW/Autoload.php
@@ -10,15 +10,27 @@ class Autoload
/**
* Инициализация автолоада
*
- * @param string|boolean $function имя дополнительной функции
*/
- static public function Init($function = false)
+ static public function Init()
{
spl_autoload_register(array(__CLASS__, 'Bind'));
+ spl_autoload_register(array(__CLASS__, 'Main'));
spl_autoload_register(array(__CLASS__, 'Dirs'));
spl_autoload_register(array(__CLASS__, 'Controller'));
spl_autoload_register(array(__CLASS__, 'SlotsAndTags'));
- if (is_callable($function))
+ }
+
+ /**
+ * добавление функции автолоада
+ *
+ * @param string|array $function имя дополнительной функции
+ */
+ static public function Add($function = false)
+ {
+ if (is_array($function))
+ foreach($function as $f)
+ self::Add($f);
+ elseif (is_callable($function))
spl_autoload_register($function);
}
@@ -49,6 +61,22 @@ class Autoload
}
/**
+ * Классы фреймворка
+ *
+ * <br>Так получилось, что эти классы находятся тут
+ *
+ * @param string $class искомый класс
+ */
+ static public function Main($class)
+ {
+ if (mb_strpos($class, 'QuickFW') === false)
+ return false;
+ $class = strtr($class,'_','/');
+ require QFWPATH.'/'.$class.'.php';
+ return true;
+ }
+
+ /**
* Автолоад некоторых стандартных классов
*
* <br>Так получилось, что эти классы находятся тут
@@ -60,7 +88,8 @@ class Autoload
if (empty(self::$classes))
self::$classes = array(
'ScaffoldController' => LIBPATH.'/Modules/Scaffold/ScaffoldController.php',
- 'QuickFW_Auth' => QFWPATH.'/QuickFW/Auth.php',
+ 'Url' => QFWPATH.'/QuickFW/Url.php',
+ 'Cache' => QFWPATH.'/QuickFW/Cache.php',
'Hlp' => QFWPATH.'/QuickFW/Helpers.php',
'Dklab_Cache_Frontend_Slot' => QFWPATH.'/QuickFW/Cacher/Slot.php',
'Dklab_Cache_Frontend_Tag' => QFWPATH.'/QuickFW/Cacher/Tag.php',
diff --git a/QFW/config.php b/QFW/config.php
index 7dd0e6e..708514c 100644
--- a/QFW/config.php
+++ b/QFW/config.php
@@ -34,7 +34,7 @@ $config['redirection']=array(
$config['QFW'] = array(
'release' => false, /* статус проекта на данном хосте - отладка и всякие быстрые компиляции */
'cacheSessions' => false, /* Хранить сессии в кеше, не использовать стандартный механизм */
- 'autoload' => true, /* включить автолоад false|true|string */
+ 'autoload' => false, /* Функция для дополнительного автолоада */
'auto404' => false, /* не перенаправлять на дефолтовый контроллер все запросы */
'main404' => false, /* 404 страница в дизайне main */
'addCSSXml' => false, /* addJS и addCSS выводят теги в XML */
diff --git a/application/default.php b/application/default.php
index e24e60e..63c8d19 100644
--- a/application/default.php
+++ b/application/default.php
@@ -81,7 +81,7 @@ $config['cache'] = array(
$config['QFW'] = array(
'release' => false, /* статус проекта на данном хосте - отладка и всякие быстрые компиляции */
'cacheSessions' => false, /* Хранить сессии в кеше, не использовать стандартный механизм */
- 'autoload' => true, /* включить автолоад false|true|string */
+ 'autoload' => false, /* Функция для дополнительного автолоада */
'auto404' => false, /* не перенаправлять на дефолтовый контроллер все запросы */
'main404' => false, /* 404 страница в дизайне main */
'addCSSXml' => false, /* addJS и addCSS выводят теги в XML */
diff --git a/lib/jquery.php b/lib/jQuery.php
similarity index 100%
rename from lib/jquery.php
rename to lib/jQuery.php
commit a994588847722669dc3900cc09f36b9fa36a9ed8
Author: Ivan Borzenkov <iva...@li...>
Date: Thu Mar 17 13:18:11 2011 +0300
Другой формат пагинатора
diff --git a/application/helper/controllers/NavController.php b/application/helper/controllers/NavController.php
index 7673245..fd2f44d 100644
--- a/application/helper/controllers/NavController.php
+++ b/application/helper/controllers/NavController.php
@@ -15,19 +15,39 @@ class NavController
* @param string $name Имя шаблона пагинатора
* @return string Сформированный пагинатор
*/
- public function pagerBlock($url='$', $all=0, $cur=1, $size=5, $name='pager')
+ public function pagerBlock($url='$', $all=0, $cur=1, $name='pager')
{
if ($all<2) return '';
QFW::$view->assign('pager',array(
'all'=>$all,
'c'=>$cur,
'url'=>$url,
- 'size'=>$size,
));
return QFW::$view->fetch('pager/'.$name.'.php');
}
/**
+ * Пагинатор
+ *
+ * <br>готовый пейджинатор с несколькими шаблонами
+ * которому указывается урл и с какого элемента считать и сколько элементов
+ *
+ * @param string $url Шаблон урла, номер страницы заменен $
+ * @param int $from с какого элемента
+ * @param int $items сколько элементов
+ * @param int $size По сколько отображать на странице
+ * @param string $name Имя шаблона пагинатора
+ * @return string
+ */
+ public function pagerFromBlock($url='$', $from, $items=0, $size = 10, $name='pager')
+ {
+ $all = ceil($items / $size);
+ $cur = ceil($from / $size);
+ return $this->pagerBlock($url, $all, $cur, $name);
+ }
+
+
+ /**
* Древоводное меню на вложенными списками
*
* @param array $items Массив элементов:
diff --git a/application/helper/templates/pager/pager2.php b/application/helper/templates/pager/pager2.php
index 984e3ab..0d78b02 100644
--- a/application/helper/templates/pager/pager2.php
+++ b/application/helper/templates/pager/pager2.php
@@ -1,9 +1,9 @@
<!-- Pageslist -->
<div class="pageslist">
- <?php
- $first = $pager['c'] - $pager['size'];
+ <?php $ps = 10;
+ $first = $pager['c'] - $ps;
if($first<1) $first = 1;
- $last = $pager['c'] + $pager['size'];
+ $last = $pager['c'] + $ps;
if($last>$pager['all']) $last = $pager['all'];
if ($first>1):?>
commit 824d104f79952baa5c21c6e221eb4b222b133302
Author: Ivan Borzenkov <iva...@li...>
Date: Fri Mar 11 16:16:49 2011 +0300
Правки TrueValidation
diff --git a/lib/Language.php b/lib/Language.php
index 1180379..6a9420a 100644
--- a/lib/Language.php
+++ b/lib/Language.php
@@ -116,6 +116,3 @@ class Language {
}
}
-// END Language Class
-QFW::$libs['lang'] = new Language();
-?>
\ No newline at end of file
diff --git a/lib/True_validation.php b/lib/True_validation.php
index 4989b5d..9658b04 100644
--- a/lib/True_validation.php
+++ b/lib/True_validation.php
@@ -8,9 +8,8 @@ class True_Validation {
var $_errors = array(); //Массив ошибок
var $_error_messages = array();//Собственные сообщения об ошибках
- function True_Validation() {
+ function __construct() {
$this->init();
- require_once(LIBPATH.'/Language.php');
}
function init() {
@@ -19,6 +18,13 @@ class True_Validation {
$this->_fields = array();
}
+ function set($name, $field, $rules, $data=null) {
+ $this->_fields[$name] = $field;
+ $this->_rules[$name] = $rules;
+ if ($data !== null)
+ $this->_data[$name] = $data;
+ }
+
function set_data($data = '') {
if ($data == '') {
return FALSE;
@@ -87,7 +93,7 @@ class True_Validation {
}
// Load the language file containing error messages
- QFW::$libs['lang']->load('true_validation');
+ QFW::$libs['lang'] = new Language();
// Cycle through the rules and test for errors
foreach ($this->_rules as $field => $rules) {
@@ -466,6 +472,3 @@ class True_Validation {
}
}
-// END Validation Class
-QFW::$libs['true_validation'] = new True_Validation();
-?>
\ No newline at end of file
commit 1f333820cb135f7fcc92c478cb9b87abd05491a6
Author: Ivan Borzenkov <iva...@li...>
Date: Thu Mar 10 17:46:52 2011 +0300
Для слота добавлен вызов лямда функции
diff --git a/QFW/QuickFW/Cacher/Slot.php b/QFW/QuickFW/Cacher/Slot.php
index 6ac8e45..c8beba0 100644
--- a/QFW/QuickFW/Cacher/Slot.php
+++ b/QFW/QuickFW/Cacher/Slot.php
@@ -130,6 +130,28 @@ abstract class Dklab_Cache_Frontend_Slot
return new Dklab_Cache_Frontend_Slot_Thru($this, $obj);
}
+ /**
+ * Call a function with transparent caching.
+ * Usage:
+ * $slot = new SomeSlot(...);
+ * $data = $slot->get(function() use(...){
+ * ...
+ * });
+ * // calls lamda function() with intermediate caching
+ *
+ * @param Closure $obj function
+ * @return mixed result
+ */
+ public function get($function)
+ {
+ $result = $this->load();
+ if ($result === false) {
+ $result = $function();
+ $this->save($result);
+ }
+ return $result;
+ }
+
/**
* Returns backend object responsible for this cache slot.
commit 3e01d725a95deaf4fe497ee074888af284474fdc
Author: Ivan Borzenkov <iva...@li...>
Date: Thu Mar 10 17:05:26 2011 +0300
Нотайс в симпле
diff --git a/lib/DbSimple/Sqlite.php b/lib/DbSimple/Sqlite.php
index 99db8a6..ec79cc4 100644
--- a/lib/DbSimple/Sqlite.php
+++ b/lib/DbSimple/Sqlite.php
@@ -30,7 +30,7 @@ class DbSimple_Sqlite extends DbSimple_Database
$err = '';
try
{
- $this->link = sqlite_factory($dsn['path'], 0666, &$err);
+ $this->link = sqlite_factory($dsn['path'], 0666, $err);
}
catch (Exception $e)
{
-----------------------------------------------------------------------
Summary of changes:
QFW/Init.php | 46 ++++++--------
QFW/QuickFW/Autoload.php | 37 ++++++++++-
QFW/QuickFW/Cacher/Slot.php | 22 ++++++
QFW/QuickFW/Config.php | 75 ++++++++++++++++++++++
QFW/QuickFW/Session.php | 2 +-
QFW/config.php | 2 +-
application/config/.gitignore | 2 +
application/default.php | 2 +-
application/helper/controllers/NavController.php | 24 ++++++-
application/helper/templates/pager/pager2.php | 6 +-
doc/asciidoc/Makefile | 2 +-
doc/asciidoc/autoload.txt | 4 +-
doc/asciidoc/config.txt | 61 ++++++++++++++++++
doc/asciidoc/directory.txt | 2 +
doc/asciidoc/quickfw.txt | 2 +
lib/DbSimple/Sqlite.php | 2 +-
lib/Language.php | 3 -
lib/True_validation.php | 15 +++--
lib/{jquery.php => jQuery.php} | 0
19 files changed, 257 insertions(+), 52 deletions(-)
create mode 100644 QFW/QuickFW/Config.php
create mode 100644 application/config/.gitignore
create mode 100644 doc/asciidoc/config.txt
rename lib/{jquery.php => jQuery.php} (100%)
hooks/post-receive
--
quickfw
|