From 5b8a9c010830219ec1b80c36e814d6e790d94b6a Mon Sep 17 00:00:00 2001
From: Tomasz Sowa
Date: Thu, 25 Aug 2011 23:53:49 +0000
Subject: [PATCH] added: Patterns class (in templates) ezc patterns are
managed by this class added: some work in groupitem plugin (not finished yet)
changed: ConfParser can read a string from memory now (need some
testing yet)
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@757 e52654a7-88a9-db11-a3e9-0013d4bc506e
---
core/Makefile.dep | 292 ++++++------
core/confparser.cpp | 126 ++++-
core/confparser.h | 35 ++
core/mounts.cpp | 1 +
core/mounts.h | 2 +
functions/Makefile.dep | 783 ++++++++++++++++---------------
functions/functionbase.cpp | 4 +-
functions/functionbase.h | 10 +-
functions/functions.cpp | 2 +-
functions/upload.cpp | 12 +-
html/fun_reload.html | 4 +
locale/en | 1 +
locale/pl | 1 +
main/Makefile.dep | 15 +-
notify/Makefile.dep | 85 ++--
notify/notify.cpp | 34 +-
notify/notify.h | 11 +-
notify/notifythread.cpp | 33 +-
notify/notifythread.h | 8 +-
plugins/export/Makefile.dep | 31 +-
plugins/gallery/Makefile.dep | 90 ++--
plugins/groupitem/Makefile.dep | 173 ++++---
plugins/groupitem/Makefile.o.dep | 2 +-
plugins/groupitem/groupinfo.cpp | 203 ++++++++
plugins/groupitem/groupinfo.h | 84 ++++
plugins/groupitem/groups.cpp | 119 +++++
plugins/groupitem/groups.h | 105 +++++
plugins/groupitem/init.cpp | 40 +-
plugins/groupitem/templates.cpp | 54 ++-
plugins/menu/Makefile.dep | 114 ++---
plugins/stats/Makefile.dep | 52 +-
plugins/thread/Makefile.dep | 174 +++----
plugins/ticket/Makefile.dep | 147 +++---
plugins/ticket/ticketparser.cpp | 3 +
templates/Makefile.dep | 706 +++++++++++++++-------------
templates/Makefile.o.dep | 2 +-
templates/changepatterns.cpp | 102 ++++
templates/changepatterns.h | 69 +++
templates/indexpatterns.cpp | 96 +---
templates/indexpatterns.h | 54 ++-
templates/misc.cpp | 58 +--
templates/misc.h | 46 +-
templates/patterns.cpp | 174 +++++++
templates/patterns.h | 127 +++++
templates/templates.cpp | 294 ++++++------
templates/templates.h | 33 +-
46 files changed, 2896 insertions(+), 1715 deletions(-)
create mode 100755 plugins/groupitem/groupinfo.cpp
create mode 100755 plugins/groupitem/groupinfo.h
create mode 100755 plugins/groupitem/groups.cpp
create mode 100755 plugins/groupitem/groups.h
create mode 100755 templates/changepatterns.cpp
create mode 100755 templates/changepatterns.h
create mode 100755 templates/patterns.cpp
create mode 100755 templates/patterns.h
diff --git a/core/Makefile.dep b/core/Makefile.dep
index 4fbc06e..37ed8e5 100755
--- a/core/Makefile.dep
+++ b/core/Makefile.dep
@@ -10,16 +10,16 @@ app.o: ../core/dircontainer.h ../core/ugcontainer.h log.h textstream.h
app.o: logmanipulators.h slog.h cur.h request.h error.h
app.o: ../templates/htmltextstream.h session.h user.h plugindata.h rebus.h
app.o: mount.h ../templates/locale.h ../core/confparser.h ../notify/notify.h
-app.o: ../notify/notifypool.h ../templates/misc.h ../templates/localefilter.h
-app.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
+app.o: ../notify/notifypool.h ../templates/patterns.h ../templates/locale.h
+app.o: ../templates/localefilter.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
app.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
app.o: ../../ezc/src/functions.h ../../ezc/src/funinfo.h
-app.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-app.o: ../notify/notifythread.h ../core/basethread.h synchro.h
-app.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
-app.o: ugcontainer.h lastcontainer.h mounts.h mountparser.h crypt.h run.h
-app.o: users.h groups.h group.h loadavg.h thumb.h basethread.h
-app.o: threadmanager.h sessionmanager.h sessioncontainer.h
+app.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+app.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
+app.o: ../core/config.h ../core/users.h ugcontainer.h lastcontainer.h
+app.o: ../templates/misc.h ../templates/htmltextstream.h mounts.h
+app.o: mountparser.h crypt.h run.h users.h groups.h group.h loadavg.h thumb.h
+app.o: basethread.h threadmanager.h sessionmanager.h sessioncontainer.h
app.o: ../functions/functions.h ../functions/functionbase.h ../core/request.h
app.o: ../core/system.h ../core/synchro.h ../functions/functionparser.h
app.o: ../core/cur.h ../functions/adduser.h ../functions/cat.h
@@ -35,7 +35,8 @@ app.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
app.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
app.o: ../functions/who.h ../functions/vim.h ../core/htmlfilter.h
app.o: ../templates/templates.h ../templates/patterncacher.h
-app.o: ../templates/indexpatterns.h ../core/sessionmanager.h compress.h
+app.o: ../templates/indexpatterns.h ../templates/patterns.h
+app.o: ../templates/changepatterns.h ../core/sessionmanager.h compress.h
app.o: postparser.h httpsimpleparser.h cookieparser.h postmultiparser.h
app.o: acceptencodingparser.h acceptbaseparser.h plugin.h pluginmsg.h
basethread.o: basethread.h
@@ -54,33 +55,34 @@ config.o: dircontainer.h ../db/db.h ../db/dbbase.h ../db/dbconn.h
config.o: ../db/dbtextstream.h ../core/error.h ../db/dbitemquery.h
config.o: ../core/item.h ../db/dbitemcolumns.h ../core/user.h ../core/group.h
config.o: ../core/dircontainer.h ../core/ugcontainer.h ../notify/notify.h
-config.o: ../notify/notifypool.h ../templates/misc.h
-config.o: ../templates/localefilter.h ../templates/locale.h
+config.o: ../notify/notifypool.h ../templates/patterns.h
+config.o: ../templates/locale.h ../templates/localefilter.h
config.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
config.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
config.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
-config.o: ../templates/htmltextstream.h ../notify/notifythread.h
-config.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
-config.o: ../core/config.h ../core/users.h ugcontainer.h lastcontainer.h
-config.o: mounts.h mountparser.h crypt.h run.h users.h groups.h group.h
-config.o: loadavg.h thumb.h basethread.h threadmanager.h sessionmanager.h
-config.o: sessioncontainer.h ../functions/functions.h
-config.o: ../functions/functionbase.h ../core/request.h ../core/system.h
-config.o: ../core/synchro.h ../functions/functionparser.h ../core/cur.h
-config.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
-config.o: ../functions/privchanger.h ../functions/chown.h
-config.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
-config.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
-config.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
-config.o: ../functions/ls.h ../functions/mkdir.h ../functions/mv.h
-config.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
-config.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
-config.o: ../functions/sort.h ../functions/specialdefault.h
+config.o: ../notify/notifythread.h ../core/basethread.h synchro.h
+config.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
+config.o: ugcontainer.h lastcontainer.h ../templates/misc.h
+config.o: ../templates/htmltextstream.h mounts.h mountparser.h crypt.h run.h
+config.o: users.h groups.h group.h loadavg.h thumb.h basethread.h
+config.o: threadmanager.h sessionmanager.h sessioncontainer.h
+config.o: ../functions/functions.h ../functions/functionbase.h
+config.o: ../core/request.h ../core/system.h ../core/synchro.h
+config.o: ../functions/functionparser.h ../core/cur.h ../functions/adduser.h
+config.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
+config.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
+config.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
+config.o: ../functions/last.h ../functions/login.h ../functions/logout.h
+config.o: ../functions/ln.h ../functions/ls.h ../functions/mkdir.h
+config.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
+config.o: ../functions/passwd.h ../functions/priv.h ../functions/reload.h
+config.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h
config.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
config.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
config.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
config.o: ../core/htmlfilter.h ../templates/templates.h
config.o: ../templates/patterncacher.h ../templates/indexpatterns.h
+config.o: ../templates/patterns.h ../templates/changepatterns.h
config.o: ../core/sessionmanager.h
confparser.o: confparser.h misc.h item.h requesttypes.h ../../ezc/src/utf8.h
crypt.o: crypt.h run.h config.h confparser.h htmlfilter.h user.h
@@ -103,13 +105,14 @@ dirs.o: logmanipulators.h slog.h cur.h request.h error.h config.h
dirs.o: confparser.h htmlfilter.h ../templates/htmltextstream.h session.h
dirs.o: user.h plugindata.h rebus.h mount.h ../templates/locale.h
dirs.o: ../core/confparser.h ../notify/notify.h ../notify/notifypool.h
-dirs.o: ../templates/misc.h ../templates/localefilter.h ../templates/locale.h
-dirs.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
-dirs.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
-dirs.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
-dirs.o: ../templates/htmltextstream.h ../notify/notifythread.h
+dirs.o: ../templates/patterns.h ../templates/locale.h
+dirs.o: ../templates/localefilter.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
+dirs.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
+dirs.o: ../../ezc/src/functions.h ../../ezc/src/funinfo.h
+dirs.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
dirs.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
dirs.o: ../core/config.h ../core/users.h ugcontainer.h lastcontainer.h
+dirs.o: ../templates/misc.h ../templates/htmltextstream.h
groups.o: groups.h group.h ugcontainer.h ../db/db.h ../db/dbbase.h
groups.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h misc.h
groups.o: item.h requesttypes.h ../core/error.h ../db/dbitemquery.h
@@ -147,13 +150,14 @@ misc.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
misc.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
misc.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
misc.o: ../templates/patterncacher.h ../core/item.h
-misc.o: ../templates/indexpatterns.h ../templates/localefilter.h
-misc.o: ../templates/locale.h ../core/config.h ../templates/htmltextstream.h
-misc.o: ../core/cur.h ../core/system.h ../core/sessionmanager.h
-misc.o: ../core/htmlfilter.h ../db/db.h ../db/dbbase.h ../db/dbconn.h
-misc.o: ../db/dbtextstream.h ../core/error.h ../db/dbitemquery.h
-misc.o: ../db/dbitemcolumns.h ../core/user.h ../core/group.h
-misc.o: ../core/dircontainer.h ../core/ugcontainer.h
+misc.o: ../templates/indexpatterns.h ../templates/patterns.h
+misc.o: ../templates/locale.h ../templates/changepatterns.h
+misc.o: ../templates/htmltextstream.h ../templates/localefilter.h
+misc.o: ../core/config.h ../core/cur.h ../core/system.h
+misc.o: ../core/sessionmanager.h ../core/htmlfilter.h ../db/db.h
+misc.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h ../core/error.h
+misc.o: ../db/dbitemquery.h ../db/dbitemcolumns.h ../core/user.h
+misc.o: ../core/group.h ../core/dircontainer.h ../core/ugcontainer.h
mount.o: mount.h misc.h item.h requesttypes.h
mountparser.o: mountparser.h mount.h item.h dirs.h dircontainer.h ../db/db.h
mountparser.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
@@ -165,14 +169,15 @@ mountparser.o: slog.h cur.h request.h error.h config.h confparser.h
mountparser.o: htmlfilter.h ../templates/htmltextstream.h session.h user.h
mountparser.o: plugindata.h rebus.h ../templates/locale.h
mountparser.o: ../core/confparser.h ../notify/notify.h ../notify/notifypool.h
-mountparser.o: ../templates/misc.h ../templates/localefilter.h
-mountparser.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-mountparser.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
-mountparser.o: ../../ezc/src/functions.h ../../ezc/src/funinfo.h
-mountparser.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
+mountparser.o: ../templates/patterns.h ../templates/locale.h
+mountparser.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+mountparser.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+mountparser.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
+mountparser.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
mountparser.o: ../notify/notifythread.h ../core/basethread.h synchro.h
mountparser.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
-mountparser.o: ugcontainer.h lastcontainer.h
+mountparser.o: ugcontainer.h lastcontainer.h ../templates/misc.h
+mountparser.o: ../templates/htmltextstream.h
mounts.o: mounts.h mount.h error.h dirs.h item.h dircontainer.h ../db/db.h
mounts.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
mounts.o: ../core/textstream.h misc.h requesttypes.h ../core/error.h
@@ -182,33 +187,34 @@ mounts.o: ../core/ugcontainer.h log.h textstream.h logmanipulators.h slog.h
mounts.o: cur.h request.h config.h confparser.h htmlfilter.h
mounts.o: ../templates/htmltextstream.h session.h user.h plugindata.h rebus.h
mounts.o: ../templates/locale.h ../core/confparser.h ../notify/notify.h
-mounts.o: ../notify/notifypool.h ../templates/misc.h
-mounts.o: ../templates/localefilter.h ../templates/locale.h
+mounts.o: ../notify/notifypool.h ../templates/patterns.h
+mounts.o: ../templates/locale.h ../templates/localefilter.h
mounts.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
mounts.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
mounts.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
-mounts.o: ../templates/htmltextstream.h ../notify/notifythread.h
-mounts.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
-mounts.o: ../core/config.h ../core/users.h ugcontainer.h lastcontainer.h
-mounts.o: mountparser.h plugin.h pluginmsg.h system.h crypt.h run.h users.h
-mounts.o: groups.h group.h loadavg.h thumb.h basethread.h threadmanager.h
-mounts.o: sessionmanager.h sessioncontainer.h ../functions/functions.h
-mounts.o: ../functions/functionbase.h ../core/request.h ../core/system.h
-mounts.o: ../core/synchro.h ../functions/functionparser.h ../core/cur.h
-mounts.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
-mounts.o: ../functions/privchanger.h ../functions/chown.h
-mounts.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
-mounts.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
-mounts.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
-mounts.o: ../functions/ls.h ../functions/mkdir.h ../functions/mv.h
-mounts.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
-mounts.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
-mounts.o: ../functions/sort.h ../functions/specialdefault.h
+mounts.o: ../notify/notifythread.h ../core/basethread.h synchro.h
+mounts.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
+mounts.o: ugcontainer.h lastcontainer.h ../templates/misc.h
+mounts.o: ../templates/htmltextstream.h mountparser.h plugin.h pluginmsg.h
+mounts.o: system.h crypt.h run.h users.h groups.h group.h loadavg.h thumb.h
+mounts.o: basethread.h threadmanager.h sessionmanager.h sessioncontainer.h
+mounts.o: ../functions/functions.h ../functions/functionbase.h
+mounts.o: ../core/request.h ../core/system.h ../core/synchro.h
+mounts.o: ../functions/functionparser.h ../core/cur.h ../functions/adduser.h
+mounts.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
+mounts.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
+mounts.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
+mounts.o: ../functions/last.h ../functions/login.h ../functions/logout.h
+mounts.o: ../functions/ln.h ../functions/ls.h ../functions/mkdir.h
+mounts.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
+mounts.o: ../functions/passwd.h ../functions/priv.h ../functions/reload.h
+mounts.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h
mounts.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
mounts.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
mounts.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
mounts.o: ../core/htmlfilter.h ../templates/templates.h
mounts.o: ../templates/patterncacher.h ../templates/indexpatterns.h
+mounts.o: ../templates/patterns.h ../templates/changepatterns.h
mounts.o: ../core/sessionmanager.h
plugin.o: plugin.h pluginmsg.h log.h textstream.h logmanipulators.h slog.h
plugin.o: cur.h request.h requesttypes.h item.h error.h config.h confparser.h
@@ -219,33 +225,34 @@ plugin.o: dircontainer.h ../db/db.h ../db/dbbase.h ../db/dbconn.h
plugin.o: ../db/dbtextstream.h ../core/error.h ../db/dbitemquery.h
plugin.o: ../core/item.h ../db/dbitemcolumns.h ../core/user.h ../core/group.h
plugin.o: ../core/dircontainer.h ../core/ugcontainer.h ../notify/notify.h
-plugin.o: ../notify/notifypool.h ../templates/misc.h
-plugin.o: ../templates/localefilter.h ../templates/locale.h
+plugin.o: ../notify/notifypool.h ../templates/patterns.h
+plugin.o: ../templates/locale.h ../templates/localefilter.h
plugin.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
plugin.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
plugin.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
-plugin.o: ../templates/htmltextstream.h ../notify/notifythread.h
-plugin.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
-plugin.o: ../core/config.h ../core/users.h ugcontainer.h lastcontainer.h
-plugin.o: mounts.h mountparser.h crypt.h run.h users.h groups.h group.h
-plugin.o: loadavg.h thumb.h basethread.h threadmanager.h sessionmanager.h
-plugin.o: sessioncontainer.h ../functions/functions.h
-plugin.o: ../functions/functionbase.h ../core/request.h ../core/system.h
-plugin.o: ../core/synchro.h ../functions/functionparser.h ../core/cur.h
-plugin.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
-plugin.o: ../functions/privchanger.h ../functions/chown.h
-plugin.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
-plugin.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
-plugin.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
-plugin.o: ../functions/ls.h ../functions/mkdir.h ../functions/mv.h
-plugin.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
-plugin.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
-plugin.o: ../functions/sort.h ../functions/specialdefault.h
+plugin.o: ../notify/notifythread.h ../core/basethread.h synchro.h
+plugin.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
+plugin.o: ugcontainer.h lastcontainer.h ../templates/misc.h
+plugin.o: ../templates/htmltextstream.h mounts.h mountparser.h crypt.h run.h
+plugin.o: users.h groups.h group.h loadavg.h thumb.h basethread.h
+plugin.o: threadmanager.h sessionmanager.h sessioncontainer.h
+plugin.o: ../functions/functions.h ../functions/functionbase.h
+plugin.o: ../core/request.h ../core/system.h ../core/synchro.h
+plugin.o: ../functions/functionparser.h ../core/cur.h ../functions/adduser.h
+plugin.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
+plugin.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
+plugin.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
+plugin.o: ../functions/last.h ../functions/login.h ../functions/logout.h
+plugin.o: ../functions/ln.h ../functions/ls.h ../functions/mkdir.h
+plugin.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
+plugin.o: ../functions/passwd.h ../functions/priv.h ../functions/reload.h
+plugin.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h
plugin.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
plugin.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
plugin.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
plugin.o: ../core/htmlfilter.h ../templates/templates.h
plugin.o: ../templates/patterncacher.h ../templates/indexpatterns.h
+plugin.o: ../templates/patterns.h ../templates/changepatterns.h
plugin.o: ../core/sessionmanager.h
plugindata.o: plugindata.h plugin.h pluginmsg.h log.h textstream.h
plugindata.o: logmanipulators.h slog.h cur.h request.h requesttypes.h item.h
@@ -257,20 +264,20 @@ plugindata.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
plugindata.o: ../core/error.h ../db/dbitemquery.h ../core/item.h
plugindata.o: ../db/dbitemcolumns.h ../core/user.h ../core/group.h
plugindata.o: ../core/dircontainer.h ../core/ugcontainer.h ../notify/notify.h
-plugindata.o: ../notify/notifypool.h ../templates/misc.h
-plugindata.o: ../templates/localefilter.h ../templates/locale.h
+plugindata.o: ../notify/notifypool.h ../templates/patterns.h
+plugindata.o: ../templates/locale.h ../templates/localefilter.h
plugindata.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h
plugindata.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
plugindata.o: ../../ezc/src/functions.h ../../ezc/src/funinfo.h
-plugindata.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-plugindata.o: ../notify/notifythread.h ../core/basethread.h synchro.h
-plugindata.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
-plugindata.o: ugcontainer.h lastcontainer.h mounts.h mountparser.h crypt.h
-plugindata.o: run.h users.h groups.h group.h loadavg.h thumb.h basethread.h
-plugindata.o: threadmanager.h sessionmanager.h sessioncontainer.h
-plugindata.o: ../functions/functions.h ../functions/functionbase.h
-plugindata.o: ../core/request.h ../core/system.h ../core/synchro.h
-plugindata.o: ../functions/functionparser.h ../core/cur.h
+plugindata.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+plugindata.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
+plugindata.o: ../core/config.h ../core/users.h ugcontainer.h lastcontainer.h
+plugindata.o: ../templates/misc.h ../templates/htmltextstream.h mounts.h
+plugindata.o: mountparser.h crypt.h run.h users.h groups.h group.h loadavg.h
+plugindata.o: thumb.h basethread.h threadmanager.h sessionmanager.h
+plugindata.o: sessioncontainer.h ../functions/functions.h
+plugindata.o: ../functions/functionbase.h ../core/request.h ../core/system.h
+plugindata.o: ../core/synchro.h ../functions/functionparser.h ../core/cur.h
plugindata.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
plugindata.o: ../functions/privchanger.h ../functions/chown.h
plugindata.o: ../functions/ckeditor.h ../functions/cp.h
@@ -286,7 +293,8 @@ plugindata.o: ../functions/tinymce.h ../functions/uname.h
plugindata.o: ../functions/upload.h ../functions/uptime.h ../functions/who.h
plugindata.o: ../functions/vim.h ../core/htmlfilter.h
plugindata.o: ../templates/templates.h ../templates/patterncacher.h
-plugindata.o: ../templates/indexpatterns.h ../core/sessionmanager.h
+plugindata.o: ../templates/indexpatterns.h ../templates/patterns.h
+plugindata.o: ../templates/changepatterns.h ../core/sessionmanager.h
postmultiparser.o: postmultiparser.h error.h requesttypes.h config.h
postmultiparser.o: confparser.h htmlfilter.h misc.h item.h log.h textstream.h
postmultiparser.o: logmanipulators.h slog.h cur.h request.h
@@ -309,14 +317,15 @@ request.o: ../db/dbconn.h ../db/dbtextstream.h ../core/error.h
request.o: ../db/dbitemquery.h ../core/item.h ../db/dbitemcolumns.h
request.o: ../core/user.h ../core/group.h ../core/dircontainer.h
request.o: ../core/ugcontainer.h ../notify/notify.h ../notify/notifypool.h
-request.o: ../templates/misc.h ../templates/localefilter.h
-request.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-request.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
-request.o: ../../ezc/src/functions.h ../../ezc/src/funinfo.h
-request.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
+request.o: ../templates/patterns.h ../templates/locale.h
+request.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+request.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+request.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
+request.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
request.o: ../notify/notifythread.h ../core/basethread.h synchro.h
request.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
-request.o: ugcontainer.h lastcontainer.h mounts.h mountparser.h crypt.h run.h
+request.o: ugcontainer.h lastcontainer.h ../templates/misc.h
+request.o: ../templates/htmltextstream.h mounts.h mountparser.h crypt.h run.h
request.o: users.h groups.h group.h loadavg.h thumb.h basethread.h
request.o: threadmanager.h sessionmanager.h sessioncontainer.h
request.o: ../functions/functions.h ../functions/functionbase.h
@@ -336,6 +345,7 @@ request.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
request.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
request.o: ../core/htmlfilter.h ../templates/templates.h
request.o: ../templates/patterncacher.h ../templates/indexpatterns.h
+request.o: ../templates/patterns.h ../templates/changepatterns.h
request.o: ../core/sessionmanager.h
run.o: run.h log.h textstream.h logmanipulators.h slog.h cur.h request.h
run.o: requesttypes.h item.h error.h config.h confparser.h htmlfilter.h
@@ -362,19 +372,20 @@ sessionmanager.o: ../core/group.h ../core/dircontainer.h
sessionmanager.o: ../core/ugcontainer.h log.h logmanipulators.h slog.h
sessionmanager.o: ../templates/locale.h ../core/confparser.h
sessionmanager.o: ../notify/notify.h ../notify/notifypool.h
-sessionmanager.o: ../templates/misc.h ../templates/localefilter.h
-sessionmanager.o: ../templates/locale.h ../../ezc/src/ezc.h
+sessionmanager.o: ../templates/patterns.h ../templates/locale.h
+sessionmanager.o: ../templates/localefilter.h ../../ezc/src/ezc.h
sessionmanager.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
sessionmanager.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
sessionmanager.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
-sessionmanager.o: ../templates/htmltextstream.h ../notify/notifythread.h
-sessionmanager.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
-sessionmanager.o: ../core/config.h ../core/users.h ugcontainer.h mounts.h
-sessionmanager.o: mountparser.h crypt.h run.h users.h groups.h group.h
-sessionmanager.o: loadavg.h thumb.h basethread.h threadmanager.h
-sessionmanager.o: sessionparser.h plugin.h pluginmsg.h
-sessionmanager.o: ../functions/functions.h ../functions/functionbase.h
-sessionmanager.o: ../core/request.h ../core/system.h ../core/synchro.h
+sessionmanager.o: ../notify/notifythread.h ../core/basethread.h synchro.h
+sessionmanager.o: ../notify/templatesnotify.h ../core/config.h
+sessionmanager.o: ../core/users.h ugcontainer.h ../templates/misc.h
+sessionmanager.o: ../templates/htmltextstream.h mounts.h mountparser.h
+sessionmanager.o: crypt.h run.h users.h groups.h group.h loadavg.h thumb.h
+sessionmanager.o: basethread.h threadmanager.h sessionparser.h plugin.h
+sessionmanager.o: pluginmsg.h ../functions/functions.h
+sessionmanager.o: ../functions/functionbase.h ../core/request.h
+sessionmanager.o: ../core/system.h ../core/synchro.h
sessionmanager.o: ../functions/functionparser.h ../core/cur.h
sessionmanager.o: ../functions/adduser.h ../functions/cat.h
sessionmanager.o: ../functions/chmod.h ../functions/privchanger.h
@@ -393,7 +404,8 @@ sessionmanager.o: ../functions/tinymce.h ../functions/uname.h
sessionmanager.o: ../functions/upload.h ../functions/uptime.h
sessionmanager.o: ../functions/who.h ../functions/vim.h ../core/htmlfilter.h
sessionmanager.o: ../templates/templates.h ../templates/patterncacher.h
-sessionmanager.o: ../templates/indexpatterns.h ../core/sessionmanager.h
+sessionmanager.o: ../templates/indexpatterns.h ../templates/patterns.h
+sessionmanager.o: ../templates/changepatterns.h ../core/sessionmanager.h
sessionparser.o: sessionparser.h session.h item.h error.h user.h plugindata.h
sessionparser.o: rebus.h textstream.h sessioncontainer.h cur.h request.h
sessionparser.o: requesttypes.h config.h confparser.h htmlfilter.h
@@ -414,31 +426,32 @@ system.o: logmanipulators.h slog.h cur.h request.h error.h config.h
system.o: confparser.h htmlfilter.h ../templates/htmltextstream.h session.h
system.o: user.h plugindata.h rebus.h mount.h ../templates/locale.h
system.o: ../core/confparser.h ../notify/notify.h ../notify/notifypool.h
-system.o: ../templates/misc.h ../templates/localefilter.h
-system.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-system.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
-system.o: ../../ezc/src/functions.h ../../ezc/src/funinfo.h
-system.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
+system.o: ../templates/patterns.h ../templates/locale.h
+system.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+system.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+system.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
+system.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
system.o: ../notify/notifythread.h ../core/basethread.h synchro.h
system.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
-system.o: ugcontainer.h lastcontainer.h mounts.h mountparser.h crypt.h run.h
+system.o: ugcontainer.h lastcontainer.h ../templates/misc.h
+system.o: ../templates/htmltextstream.h mounts.h mountparser.h crypt.h run.h
system.o: users.h groups.h group.h loadavg.h thumb.h basethread.h
system.o: threadmanager.h ../templates/templates.h
system.o: ../templates/patterncacher.h ../templates/indexpatterns.h
-system.o: ../core/cur.h ../core/system.h ../core/sessionmanager.h
-system.o: ../core/htmlfilter.h ../functions/functionbase.h ../core/request.h
-system.o: ../core/synchro.h plugin.h pluginmsg.h sessionmanager.h
-system.o: sessioncontainer.h ../functions/functions.h
-system.o: ../functions/functionbase.h ../functions/functionparser.h
-system.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
-system.o: ../functions/privchanger.h ../functions/chown.h
-system.o: ../functions/ckeditor.h ../functions/cp.h ../functions/default.h
-system.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
-system.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
-system.o: ../functions/ls.h ../functions/mkdir.h ../functions/mv.h
-system.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h
-system.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
-system.o: ../functions/sort.h ../functions/specialdefault.h
+system.o: ../templates/patterns.h ../templates/changepatterns.h ../core/cur.h
+system.o: ../core/system.h ../core/sessionmanager.h ../core/htmlfilter.h
+system.o: ../functions/functionbase.h ../core/request.h ../core/synchro.h
+system.o: plugin.h pluginmsg.h sessionmanager.h sessioncontainer.h
+system.o: ../functions/functions.h ../functions/functionbase.h
+system.o: ../functions/functionparser.h ../functions/adduser.h
+system.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
+system.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
+system.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
+system.o: ../functions/last.h ../functions/login.h ../functions/logout.h
+system.o: ../functions/ln.h ../functions/ls.h ../functions/mkdir.h
+system.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h
+system.o: ../functions/passwd.h ../functions/priv.h ../functions/reload.h
+system.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h
system.o: ../functions/stat.h ../functions/subject.h ../functions/template.h
system.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h
system.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h
@@ -458,13 +471,14 @@ thumb.o: slog.h cur.h request.h error.h config.h confparser.h htmlfilter.h
thumb.o: ../templates/htmltextstream.h session.h user.h plugindata.h rebus.h
thumb.o: mount.h ../templates/locale.h ../core/confparser.h ../core/config.h
thumb.o: ../../ezc/src/utf8.h system.h dirs.h dircontainer.h
-thumb.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-thumb.o: ../templates/localefilter.h ../templates/locale.h
+thumb.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+thumb.o: ../templates/locale.h ../templates/localefilter.h
thumb.o: ../../ezc/src/ezc.h ../../ezc/src/generator.h
thumb.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
thumb.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
-thumb.o: ../templates/htmltextstream.h ../notify/notifythread.h
-thumb.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h
-thumb.o: ../core/users.h ugcontainer.h lastcontainer.h mounts.h mountparser.h
-thumb.o: crypt.h run.h users.h groups.h group.h loadavg.h threadmanager.h
+thumb.o: ../notify/notifythread.h ../core/basethread.h synchro.h
+thumb.o: ../notify/templatesnotify.h ../core/users.h ugcontainer.h
+thumb.o: lastcontainer.h ../templates/misc.h ../templates/htmltextstream.h
+thumb.o: mounts.h mountparser.h crypt.h run.h users.h groups.h group.h
+thumb.o: loadavg.h threadmanager.h
users.o: users.h
diff --git a/core/confparser.cpp b/core/confparser.cpp
index 2f4b8da..4f56000 100755
--- a/core/confparser.cpp
+++ b/core/confparser.cpp
@@ -60,6 +60,7 @@ void ConfParser::UseEscapeChar(bool escape)
ConfParser::Status ConfParser::Parse(const char * file_name)
{
+ reading_from_file = true;
line = 1;
table.clear();
table_single.clear();
@@ -105,6 +106,49 @@ ConfParser::Status ConfParser::Parse(const std::wstring & file_name)
+ConfParser::Status ConfParser::ParseString(const char * str)
+{
+ reading_from_file = false;
+ reading_from_wchar_string = false;
+ line = 1;
+ table.clear();
+ table_single.clear();
+ pchar_ascii = str;
+ pchar_unicode = 0;
+
+ status = ParseFile();
+
+return status;
+}
+
+
+ConfParser::Status ConfParser::ParseString(const std::string & str)
+{
+ return ParseString(str.c_str());
+}
+
+
+ConfParser::Status ConfParser::ParseString(const wchar_t * str)
+{
+ reading_from_file = false;
+ reading_from_wchar_string = true;
+ line = 1;
+ table.clear();
+ table_single.clear();
+ pchar_ascii = 0;
+ pchar_unicode = str;
+
+ status = ParseFile();
+
+return status;
+}
+
+
+ConfParser::Status ConfParser::ParseString(const std::wstring & str)
+{
+ return ParseString(str.c_str());
+}
+
ConfParser::Status ConfParser::ParseFile()
{
@@ -363,12 +407,86 @@ return lastc;
}
+
+
+int ConfParser::ReadCharFromWcharString()
+{
+ if( *pchar_unicode == 0 )
+ lastc = -1;
+ else
+ lastc = *(pchar_unicode++);
+
+ if( lastc == '\n' )
+ ++line;
+
+return lastc;
+}
+
+
+int ConfParser::ReadCharFromUTF8String()
+{
+int c;
+bool correct;
+
+ lastc = -1;
+
+ do
+ {
+ size_t len = Ezc::UTF8ToInt(pchar_ascii, c, correct);
+ pchar_ascii += len;
+
+ if( *pchar_ascii == 0 )
+ return lastc;
+ }
+ while( !correct );
+
+ lastc = c;
+
+ if( lastc == '\n' )
+ ++line;
+
+return lastc;
+
+}
+
+
+int ConfParser::ReadCharFromAsciiString()
+{
+ if( *pchar_ascii == 0 )
+ lastc = -1;
+ else
+ lastc = *(pchar_ascii++);
+
+ if( lastc == '\n' )
+ ++line;
+
+return lastc;
+}
+
+
int ConfParser::ReadChar()
{
- if( input_as_utf8 )
- return ReadUTF8Char();
-
- return ReadASCIIChar();
+ if( reading_from_file )
+ {
+ if( input_as_utf8 )
+ return ReadUTF8Char();
+ else
+ return ReadASCIIChar();
+ }
+ else
+ {
+ if( reading_from_wchar_string )
+ {
+ return ReadCharFromWcharString();
+ }
+ else
+ {
+ if( input_as_utf8 )
+ return ReadCharFromUTF8String();
+ else
+ return ReadCharFromAsciiString();
+ }
+ }
}
diff --git a/core/confparser.h b/core/confparser.h
index fe4f9d8..5c0ff0c 100755
--- a/core/confparser.h
+++ b/core/confparser.h
@@ -154,6 +154,18 @@ public:
Status Parse(const wchar_t * file_name);
Status Parse(const std::wstring & file_name);
+ /*
+ the main methods used to parse
+ str - input string (either 8bit ascii or UTF-8)
+ */
+ Status ParseString(const char * str);
+ Status ParseString(const std::string & str);
+
+ // here input string is always in unicode
+ Status ParseString(const wchar_t * str);
+ Status ParseString(const std::wstring & str);
+
+
/*
a number of a line in which there is a syntax_error
@@ -276,6 +288,26 @@ public:
private:
+
+ /*
+ true if Parse() method was called
+ false if ParseString() was called
+ */
+ bool reading_from_file;
+
+ /*
+ pointers to the current character
+ if ParseString() is in used
+ */
+ const char * pchar_ascii;
+ const wchar_t * pchar_unicode;
+
+
+ /*
+ true if ParseString(wchar_t *) or ParseString(std::wstring&) is used
+ */
+ bool reading_from_wchar_string;
+
/*
last read variable (option)
*/
@@ -392,6 +424,9 @@ private:
int ReadUTF8Char();
int ReadASCIIChar();
+ int ReadCharFromWcharString();
+ int ReadCharFromUTF8String();
+ int ReadCharFromAsciiString();
int ReadChar();
bool IsWhite(int c);
bool IsVariableChar(int c);
diff --git a/core/mounts.cpp b/core/mounts.cpp
index 1ea032d..2c4a6cb 100755
--- a/core/mounts.cpp
+++ b/core/mounts.cpp
@@ -56,6 +56,7 @@ void Mounts::CreateMountPar()
mount_par_mkdir_on = AddMountPar(L"mkdir_on");
mount_par_app = AddMountPar(L"app");
mount_par_html_template = AddMountPar(L"html_template");
+ mount_par_change_template = AddMountPar(L"change_template");
mount_par_static = AddMountPar(L"static");
mount_par_css = AddMountPar(L"css");
}
diff --git a/core/mounts.h b/core/mounts.h
index c7e6590..8feacb3 100755
--- a/core/mounts.h
+++ b/core/mounts.h
@@ -76,6 +76,7 @@ public:
int MountParMkdirOn() { return mount_par_mkdir_on; }
int MountParApp() { return mount_par_app; }
int MountParHtmlTemplate() { return mount_par_html_template; }
+ int MountParChangeTemplate() { return mount_par_change_template; }
int MountParStatic() { return mount_par_static; }
int MountParCss() { return mount_par_css; }
@@ -145,6 +146,7 @@ private:
int mount_par_mkdir_on;
int mount_par_app;
int mount_par_html_template;
+ int mount_par_change_template;
int mount_par_static;
int mount_par_css;
diff --git a/functions/Makefile.dep b/functions/Makefile.dep
index 70e468c..ee32d1f 100755
--- a/functions/Makefile.dep
+++ b/functions/Makefile.dep
@@ -13,8 +13,8 @@ adduser.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
adduser.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
adduser.o: ../core/confparser.h ../core/request.h ../core/config.h
adduser.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-adduser.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-adduser.o: ../templates/localefilter.h ../templates/locale.h
+adduser.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+adduser.o: ../templates/locale.h ../templates/localefilter.h
adduser.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
adduser.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
adduser.o: cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h default.h
@@ -22,13 +22,14 @@ adduser.o: download.h emacs.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h
adduser.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
adduser.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
adduser.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-adduser.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-adduser.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-adduser.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-adduser.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-adduser.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-adduser.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-adduser.o: ../core/threadmanager.h ../core/synchro.h ../core/slog.h
+adduser.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+adduser.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+adduser.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+adduser.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+adduser.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+adduser.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+adduser.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+adduser.o: ../core/slog.h
cat.o: cat.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
cat.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
cat.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -41,8 +42,8 @@ cat.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
cat.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
cat.o: ../core/confparser.h ../core/request.h ../core/config.h
cat.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-cat.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-cat.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+cat.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+cat.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
cat.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
cat.o: functions.h functionparser.h ../core/cur.h adduser.h chmod.h
cat.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -50,12 +51,13 @@ cat.o: last.h login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h
cat.o: passwd.h priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h
cat.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
cat.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-cat.o: ../templates/htmltextstream.h ../notify/notifythread.h
-cat.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-cat.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-cat.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-cat.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-cat.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+cat.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+cat.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+cat.o: ../core/lastcontainer.h ../templates/misc.h
+cat.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+cat.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+cat.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+cat.o: ../core/threadmanager.h ../core/synchro.h
chmod.o: chmod.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
chmod.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
chmod.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -68,8 +70,8 @@ chmod.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
chmod.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
chmod.o: ../core/confparser.h ../core/request.h ../core/config.h
chmod.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-chmod.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-chmod.o: ../templates/localefilter.h ../templates/locale.h
+chmod.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+chmod.o: ../templates/locale.h ../templates/localefilter.h
chmod.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
chmod.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
chmod.o: adduser.h cat.h chown.h privchanger.h ckeditor.h cp.h default.h
@@ -77,13 +79,13 @@ chmod.o: download.h emacs.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h
chmod.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
chmod.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
chmod.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-chmod.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-chmod.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-chmod.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-chmod.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-chmod.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-chmod.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-chmod.o: ../core/threadmanager.h ../core/synchro.h
+chmod.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+chmod.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+chmod.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+chmod.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+chmod.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+chmod.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+chmod.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
chown.o: chown.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
chown.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
chown.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -96,8 +98,8 @@ chown.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
chown.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
chown.o: ../core/confparser.h ../core/request.h ../core/config.h
chown.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-chown.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-chown.o: ../templates/localefilter.h ../templates/locale.h
+chown.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+chown.o: ../templates/locale.h ../templates/localefilter.h
chown.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
chown.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
chown.o: adduser.h cat.h chmod.h privchanger.h ckeditor.h cp.h default.h
@@ -105,13 +107,13 @@ chown.o: download.h emacs.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h
chown.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
chown.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
chown.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-chown.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-chown.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-chown.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-chown.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-chown.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-chown.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-chown.o: ../core/threadmanager.h ../core/synchro.h
+chown.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+chown.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+chown.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+chown.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+chown.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+chown.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+chown.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
ckeditor.o: ckeditor.h functionbase.h ../core/item.h ../db/db.h
ckeditor.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
ckeditor.o: ../core/textstream.h ../core/misc.h ../core/item.h
@@ -126,22 +128,24 @@ ckeditor.o: ../core/plugindata.h ../core/rebus.h mount.h
ckeditor.o: ../templates/locale.h ../core/confparser.h ../core/request.h
ckeditor.o: ../core/config.h ../core/system.h ../core/dirs.h
ckeditor.o: ../core/dircontainer.h ../notify/notify.h ../notify/notifypool.h
-ckeditor.o: ../templates/misc.h ../templates/localefilter.h
-ckeditor.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-ckeditor.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h
-ckeditor.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h
-ckeditor.o: privchanger.h chown.h cp.h default.h download.h emacs.h last.h
-ckeditor.o: login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h
-ckeditor.o: priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h
-ckeditor.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h
-ckeditor.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h
-ckeditor.o: ../templates/htmltextstream.h ../notify/notifythread.h
+ckeditor.o: ../templates/patterns.h ../templates/locale.h
+ckeditor.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+ckeditor.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+ckeditor.o: ../../ezc/src/pattern.h functions.h functionparser.h
+ckeditor.o: ../core/cur.h adduser.h cat.h chmod.h privchanger.h chown.h cp.h
+ckeditor.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
+ckeditor.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
+ckeditor.o: sort.h specialdefault.h stat.h subject.h template.h tinymce.h
+ckeditor.o: uname.h upload.h uptime.h who.h vim.h ../core/htmlfilter.h
+ckeditor.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
ckeditor.o: ../core/basethread.h ../core/synchro.h
ckeditor.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-ckeditor.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-ckeditor.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-ckeditor.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-ckeditor.o: ../core/threadmanager.h ../core/synchro.h
+ckeditor.o: ../core/lastcontainer.h ../templates/misc.h
+ckeditor.o: ../templates/htmltextstream.h ../core/mounts.h
+ckeditor.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+ckeditor.o: ../core/groups.h ../core/group.h ../core/loadavg.h
+ckeditor.o: ../core/thumb.h ../core/basethread.h ../core/threadmanager.h
+ckeditor.o: ../core/synchro.h
cp.o: cp.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
cp.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h ../core/misc.h
cp.o: ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -154,8 +158,8 @@ cp.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
cp.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
cp.o: ../core/confparser.h ../core/request.h ../core/config.h
cp.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-cp.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-cp.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+cp.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+cp.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
cp.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
cp.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
cp.o: privchanger.h chown.h ckeditor.h default.h download.h emacs.h last.h
@@ -163,13 +167,13 @@ cp.o: login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h
cp.o: priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h subject.h
cp.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
cp.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-cp.o: ../templates/htmltextstream.h ../notify/notifythread.h
-cp.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-cp.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-cp.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-cp.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-cp.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
-cp.o: ../core/misc.h
+cp.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+cp.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+cp.o: ../core/lastcontainer.h ../templates/misc.h
+cp.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+cp.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+cp.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+cp.o: ../core/threadmanager.h ../core/synchro.h ../core/misc.h
default.o: default.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
default.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
default.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -183,8 +187,8 @@ default.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
default.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
default.o: ../core/confparser.h ../core/request.h ../core/config.h
default.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-default.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-default.o: ../templates/localefilter.h ../templates/locale.h
+default.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+default.o: ../templates/locale.h ../templates/localefilter.h
default.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
default.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
default.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -192,13 +196,13 @@ default.o: download.h emacs.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h
default.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
default.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
default.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-default.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-default.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-default.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-default.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-default.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-default.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-default.o: ../core/threadmanager.h ../core/synchro.h
+default.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+default.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+default.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+default.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+default.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+default.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+default.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
download.o: download.h functionbase.h ../core/item.h ../db/db.h
download.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
download.o: ../core/textstream.h ../core/misc.h ../core/item.h
@@ -213,22 +217,24 @@ download.o: ../core/plugindata.h ../core/rebus.h mount.h
download.o: ../templates/locale.h ../core/confparser.h ../core/request.h
download.o: ../core/config.h ../core/system.h ../core/dirs.h
download.o: ../core/dircontainer.h ../notify/notify.h ../notify/notifypool.h
-download.o: ../templates/misc.h ../templates/localefilter.h
-download.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-download.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h
-download.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h
-download.o: privchanger.h chown.h ckeditor.h cp.h default.h emacs.h last.h
-download.o: login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h
-download.o: priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h
-download.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h
-download.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h
-download.o: ../templates/htmltextstream.h ../notify/notifythread.h
-download.o: ../core/basethread.h ../core/synchro.h
+download.o: ../templates/patterns.h ../templates/locale.h
+download.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+download.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+download.o: ../../ezc/src/pattern.h functions.h functionparser.h
+download.o: ../core/cur.h adduser.h cat.h chmod.h privchanger.h chown.h
+download.o: ckeditor.h cp.h default.h emacs.h last.h login.h logout.h ln.h
+download.o: ls.h mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h
+download.o: run.h sort.h specialdefault.h stat.h subject.h template.h
+download.o: tinymce.h uname.h upload.h uptime.h who.h vim.h
+download.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
+download.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
download.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-download.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-download.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-download.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-download.o: ../core/threadmanager.h ../core/synchro.h
+download.o: ../core/lastcontainer.h ../templates/misc.h
+download.o: ../templates/htmltextstream.h ../core/mounts.h
+download.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+download.o: ../core/groups.h ../core/group.h ../core/loadavg.h
+download.o: ../core/thumb.h ../core/basethread.h ../core/threadmanager.h
+download.o: ../core/synchro.h
emacs.o: emacs.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
emacs.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
emacs.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -241,8 +247,8 @@ emacs.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
emacs.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
emacs.o: ../core/confparser.h ../core/request.h ../core/config.h
emacs.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-emacs.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-emacs.o: ../templates/localefilter.h ../templates/locale.h
+emacs.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+emacs.o: ../templates/locale.h ../templates/localefilter.h
emacs.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
emacs.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
emacs.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -250,15 +256,17 @@ emacs.o: default.h download.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h
emacs.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
emacs.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
emacs.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-emacs.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-emacs.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-emacs.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-emacs.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-emacs.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-emacs.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-emacs.o: ../core/threadmanager.h ../core/synchro.h ../templates/templates.h
-emacs.o: ../templates/patterncacher.h ../templates/indexpatterns.h
-emacs.o: ../core/sessionmanager.h ../core/sessioncontainer.h ../core/system.h
+emacs.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+emacs.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+emacs.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+emacs.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+emacs.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+emacs.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+emacs.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+emacs.o: ../templates/templates.h ../templates/patterncacher.h
+emacs.o: ../templates/indexpatterns.h ../templates/patterns.h
+emacs.o: ../templates/changepatterns.h ../core/sessionmanager.h
+emacs.o: ../core/sessioncontainer.h ../core/system.h
functionbase.o: functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
functionbase.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
functionbase.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -273,8 +281,8 @@ functionbase.o: ../core/user.h ../core/plugindata.h ../core/rebus.h mount.h
functionbase.o: ../templates/locale.h ../core/confparser.h ../core/request.h
functionbase.o: ../core/config.h ../core/system.h ../core/dirs.h
functionbase.o: ../core/dircontainer.h ../notify/notify.h
-functionbase.o: ../notify/notifypool.h ../templates/misc.h
-functionbase.o: ../templates/localefilter.h ../templates/locale.h
+functionbase.o: ../notify/notifypool.h ../templates/patterns.h
+functionbase.o: ../templates/locale.h ../templates/localefilter.h
functionbase.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h
functionbase.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h
functionbase.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h
@@ -283,10 +291,11 @@ functionbase.o: emacs.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h
functionbase.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
functionbase.o: specialdefault.h stat.h subject.h template.h tinymce.h
functionbase.o: uname.h upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-functionbase.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-functionbase.o: ../notify/notifythread.h ../core/basethread.h
-functionbase.o: ../core/synchro.h ../notify/templatesnotify.h ../core/users.h
+functionbase.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+functionbase.o: ../core/basethread.h ../core/synchro.h
+functionbase.o: ../notify/templatesnotify.h ../core/users.h
functionbase.o: ../core/ugcontainer.h ../core/lastcontainer.h
+functionbase.o: ../templates/misc.h ../templates/htmltextstream.h
functionbase.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h
functionbase.o: ../core/users.h ../core/groups.h ../core/group.h
functionbase.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
@@ -306,8 +315,8 @@ functionparser.o: functionbase.h ../core/request.h ../core/config.h
functionparser.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
functionparser.o: ../notify/notify.h ../notify/notifypool.h
functionparser.o: ../templates/locale.h ../core/confparser.h
-functionparser.o: ../templates/misc.h ../templates/localefilter.h
-functionparser.o: ../templates/locale.h ../../ezc/src/ezc.h
+functionparser.o: ../templates/patterns.h ../templates/locale.h
+functionparser.o: ../templates/localefilter.h ../../ezc/src/ezc.h
functionparser.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
functionparser.o: ../../ezc/src/pattern.h functions.h adduser.h cat.h chmod.h
functionparser.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h
@@ -315,14 +324,14 @@ functionparser.o: emacs.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h
functionparser.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
functionparser.o: specialdefault.h stat.h subject.h template.h tinymce.h
functionparser.o: uname.h upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-functionparser.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-functionparser.o: ../notify/notifythread.h ../core/basethread.h
-functionparser.o: ../core/synchro.h ../notify/templatesnotify.h
-functionparser.o: ../core/users.h ../core/ugcontainer.h
-functionparser.o: ../core/lastcontainer.h ../core/mounts.h
-functionparser.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
-functionparser.o: ../core/groups.h ../core/group.h ../core/loadavg.h
-functionparser.o: ../core/thumb.h ../core/basethread.h
+functionparser.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+functionparser.o: ../core/basethread.h ../core/synchro.h
+functionparser.o: ../notify/templatesnotify.h ../core/users.h
+functionparser.o: ../core/ugcontainer.h ../core/lastcontainer.h
+functionparser.o: ../templates/misc.h ../templates/htmltextstream.h
+functionparser.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h
+functionparser.o: ../core/users.h ../core/groups.h ../core/group.h
+functionparser.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
functionparser.o: ../core/threadmanager.h ../core/synchro.h ../core/cur.h
functionparser.o: ../core/log.h
functions.o: functions.h functionbase.h ../core/item.h ../db/db.h
@@ -339,27 +348,30 @@ functions.o: ../core/plugindata.h ../core/rebus.h mount.h
functions.o: ../templates/locale.h ../core/confparser.h ../core/request.h
functions.o: ../core/config.h ../core/system.h ../core/dirs.h
functions.o: ../core/dircontainer.h ../notify/notify.h ../notify/notifypool.h
-functions.o: ../templates/misc.h ../templates/localefilter.h
-functions.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-functions.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
-functions.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
+functions.o: ../templates/patterns.h ../templates/locale.h
+functions.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+functions.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+functions.o: ../../ezc/src/pattern.h ../../ezc/src/stringconv.h
functions.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
functions.o: ../notify/templatesnotify.h ../core/users.h
-functions.o: ../core/ugcontainer.h ../core/lastcontainer.h ../core/mounts.h
-functions.o: ../core/mountparser.h ../core/crypt.h run.h ../core/users.h
-functions.o: ../core/groups.h ../core/group.h ../core/loadavg.h
-functions.o: ../core/thumb.h ../core/basethread.h ../core/threadmanager.h
-functions.o: ../core/synchro.h functionparser.h ../core/cur.h adduser.h cat.h
-functions.o: chmod.h privchanger.h chown.h ckeditor.h cp.h default.h
-functions.o: download.h emacs.h last.h login.h logout.h ln.h ls.h mkdir.h
-functions.o: mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h sort.h
-functions.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
-functions.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h ../core/log.h
-functions.o: ../core/misc.h ../core/plugin.h ../core/pluginmsg.h
-functions.o: ../core/system.h ../core/sessionmanager.h
-functions.o: ../core/sessioncontainer.h ../functions/functions.h
-functions.o: ../templates/templates.h ../templates/patterncacher.h
-functions.o: ../templates/indexpatterns.h ../core/sessionmanager.h
+functions.o: ../core/ugcontainer.h ../core/lastcontainer.h
+functions.o: ../templates/misc.h ../templates/htmltextstream.h
+functions.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h run.h
+functions.o: ../core/users.h ../core/groups.h ../core/group.h
+functions.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+functions.o: ../core/threadmanager.h ../core/synchro.h functionparser.h
+functions.o: ../core/cur.h adduser.h cat.h chmod.h privchanger.h chown.h
+functions.o: ckeditor.h cp.h default.h download.h emacs.h last.h login.h
+functions.o: logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h priv.h
+functions.o: reload.h rm.h sort.h specialdefault.h stat.h subject.h
+functions.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
+functions.o: ../core/htmlfilter.h ../core/log.h ../core/misc.h
+functions.o: ../core/plugin.h ../core/pluginmsg.h ../core/system.h
+functions.o: ../core/sessionmanager.h ../core/sessioncontainer.h
+functions.o: ../functions/functions.h ../templates/templates.h
+functions.o: ../templates/patterncacher.h ../templates/indexpatterns.h
+functions.o: ../templates/patterns.h ../templates/changepatterns.h
+functions.o: ../core/sessionmanager.h
last.o: last.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
last.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
last.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -372,8 +384,8 @@ last.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
last.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
last.o: ../core/confparser.h ../core/request.h ../core/config.h
last.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-last.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-last.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+last.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+last.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
last.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
last.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
last.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -381,13 +393,13 @@ last.o: default.h download.h emacs.h login.h logout.h ln.h ls.h mkdir.h mv.h
last.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
last.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
last.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-last.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-last.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-last.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-last.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-last.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-last.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-last.o: ../core/threadmanager.h ../core/synchro.h
+last.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+last.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+last.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+last.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+last.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+last.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+last.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
ln.o: ln.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
ln.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h ../core/misc.h
ln.o: ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -400,8 +412,8 @@ ln.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
ln.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
ln.o: ../core/confparser.h ../core/request.h ../core/config.h
ln.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-ln.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-ln.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+ln.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+ln.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
ln.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
ln.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
ln.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -409,13 +421,14 @@ ln.o: last.h login.h logout.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h
ln.o: priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h subject.h
ln.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
ln.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-ln.o: ../templates/htmltextstream.h ../notify/notifythread.h
-ln.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-ln.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-ln.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-ln.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-ln.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
-ln.o: ../core/misc.h ../functions/functions.h
+ln.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+ln.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+ln.o: ../core/lastcontainer.h ../templates/misc.h
+ln.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+ln.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+ln.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+ln.o: ../core/threadmanager.h ../core/synchro.h ../core/misc.h
+ln.o: ../functions/functions.h
login.o: login.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
login.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
login.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -428,8 +441,8 @@ login.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
login.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
login.o: ../core/confparser.h ../core/request.h ../core/config.h
login.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-login.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-login.o: ../templates/localefilter.h ../templates/locale.h
+login.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+login.o: ../templates/locale.h ../templates/localefilter.h
login.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
login.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
login.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -437,13 +450,13 @@ login.o: default.h download.h emacs.h last.h logout.h ln.h ls.h mkdir.h mv.h
login.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
login.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
login.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-login.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-login.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-login.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-login.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-login.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-login.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-login.o: ../core/threadmanager.h ../core/synchro.h
+login.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+login.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+login.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+login.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+login.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+login.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+login.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
logout.o: logout.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
logout.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
logout.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -457,8 +470,8 @@ logout.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
logout.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
logout.o: ../core/confparser.h ../core/request.h ../core/config.h
logout.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-logout.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-logout.o: ../templates/localefilter.h ../templates/locale.h
+logout.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+logout.o: ../templates/locale.h ../templates/localefilter.h
logout.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
logout.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
logout.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -466,13 +479,13 @@ logout.o: default.h download.h emacs.h last.h login.h ln.h ls.h mkdir.h mv.h
logout.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
logout.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
logout.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-logout.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-logout.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-logout.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-logout.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-logout.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-logout.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-logout.o: ../core/threadmanager.h ../core/synchro.h
+logout.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+logout.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+logout.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+logout.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+logout.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+logout.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+logout.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
ls.o: ls.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
ls.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h ../core/misc.h
ls.o: ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -485,8 +498,8 @@ ls.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
ls.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
ls.o: ../core/confparser.h ../core/request.h ../core/config.h
ls.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-ls.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-ls.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+ls.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+ls.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
ls.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
ls.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
ls.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -494,12 +507,13 @@ ls.o: last.h login.h logout.h ln.h mkdir.h mv.h nicedit.h node.h passwd.h
ls.o: priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h subject.h
ls.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
ls.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-ls.o: ../templates/htmltextstream.h ../notify/notifythread.h
-ls.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-ls.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-ls.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-ls.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-ls.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+ls.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+ls.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+ls.o: ../core/lastcontainer.h ../templates/misc.h
+ls.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+ls.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+ls.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+ls.o: ../core/threadmanager.h ../core/synchro.h
mkdir.o: mkdir.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
mkdir.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
mkdir.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -512,8 +526,8 @@ mkdir.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
mkdir.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
mkdir.o: ../core/confparser.h ../core/request.h ../core/config.h
mkdir.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-mkdir.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-mkdir.o: ../templates/localefilter.h ../templates/locale.h
+mkdir.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+mkdir.o: ../templates/locale.h ../templates/localefilter.h
mkdir.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
mkdir.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
mkdir.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -521,13 +535,13 @@ mkdir.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h mv.h
mkdir.o: nicedit.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
mkdir.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
mkdir.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-mkdir.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-mkdir.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-mkdir.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-mkdir.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-mkdir.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-mkdir.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-mkdir.o: ../core/threadmanager.h ../core/synchro.h
+mkdir.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+mkdir.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+mkdir.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+mkdir.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+mkdir.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+mkdir.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+mkdir.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
mount.o: mount.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
mount.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
mount.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -540,8 +554,8 @@ mount.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
mount.o: ../core/plugindata.h ../core/rebus.h ../templates/locale.h
mount.o: ../core/confparser.h ../core/request.h ../core/config.h
mount.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-mount.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-mount.o: ../templates/localefilter.h ../templates/locale.h
+mount.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+mount.o: ../templates/locale.h ../templates/localefilter.h
mount.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
mount.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
mount.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -549,13 +563,13 @@ mount.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
mount.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
mount.o: sort.h specialdefault.h stat.h subject.h template.h tinymce.h
mount.o: uname.h upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-mount.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-mount.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-mount.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-mount.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-mount.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-mount.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-mount.o: ../core/threadmanager.h ../core/synchro.h
+mount.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+mount.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+mount.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+mount.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+mount.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+mount.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+mount.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
mv.o: mv.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
mv.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h ../core/misc.h
mv.o: ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -568,8 +582,8 @@ mv.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
mv.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
mv.o: ../core/confparser.h ../core/request.h ../core/config.h
mv.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-mv.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-mv.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+mv.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+mv.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
mv.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
mv.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
mv.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -577,12 +591,13 @@ mv.o: last.h login.h logout.h ln.h ls.h mkdir.h nicedit.h node.h passwd.h
mv.o: priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h subject.h
mv.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
mv.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-mv.o: ../templates/htmltextstream.h ../notify/notifythread.h
-mv.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-mv.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-mv.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-mv.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-mv.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+mv.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+mv.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+mv.o: ../core/lastcontainer.h ../templates/misc.h
+mv.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+mv.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+mv.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+mv.o: ../core/threadmanager.h ../core/synchro.h
nicedit.o: nicedit.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
nicedit.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
nicedit.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -596,8 +611,8 @@ nicedit.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
nicedit.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
nicedit.o: ../core/confparser.h ../core/request.h ../core/config.h
nicedit.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-nicedit.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-nicedit.o: ../templates/localefilter.h ../templates/locale.h
+nicedit.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+nicedit.o: ../templates/locale.h ../templates/localefilter.h
nicedit.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
nicedit.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
nicedit.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -605,13 +620,13 @@ nicedit.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
nicedit.o: mkdir.h mv.h node.h passwd.h priv.h reload.h rm.h run.h sort.h
nicedit.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
nicedit.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-nicedit.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-nicedit.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-nicedit.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-nicedit.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-nicedit.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-nicedit.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-nicedit.o: ../core/threadmanager.h ../core/synchro.h
+nicedit.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+nicedit.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+nicedit.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+nicedit.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+nicedit.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+nicedit.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+nicedit.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
node.o: node.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
node.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
node.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -624,8 +639,8 @@ node.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
node.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
node.o: ../core/confparser.h ../core/request.h ../core/config.h
node.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-node.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-node.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+node.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+node.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
node.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
node.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
node.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -633,13 +648,13 @@ node.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
node.o: mkdir.h mv.h nicedit.h passwd.h priv.h reload.h rm.h run.h sort.h
node.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
node.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-node.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-node.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-node.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-node.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-node.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-node.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-node.o: ../core/threadmanager.h ../core/synchro.h
+node.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+node.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+node.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+node.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+node.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+node.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+node.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
passwd.o: passwd.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
passwd.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
passwd.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -653,8 +668,8 @@ passwd.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
passwd.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
passwd.o: ../core/confparser.h ../core/request.h ../core/config.h
passwd.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-passwd.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-passwd.o: ../templates/localefilter.h ../templates/locale.h
+passwd.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+passwd.o: ../templates/locale.h ../templates/localefilter.h
passwd.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
passwd.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
passwd.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -662,14 +677,14 @@ passwd.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
passwd.o: mkdir.h mv.h nicedit.h node.h priv.h reload.h rm.h run.h sort.h
passwd.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
passwd.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-passwd.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-passwd.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-passwd.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-passwd.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-passwd.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-passwd.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-passwd.o: ../core/threadmanager.h ../core/synchro.h ../core/slog.h
-passwd.o: ../functions/functions.h
+passwd.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+passwd.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+passwd.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+passwd.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+passwd.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+passwd.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+passwd.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+passwd.o: ../core/slog.h ../functions/functions.h
priv.o: priv.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
priv.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
priv.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -682,8 +697,8 @@ priv.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
priv.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
priv.o: ../core/confparser.h ../core/request.h ../core/config.h
priv.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-priv.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-priv.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+priv.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+priv.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
priv.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
priv.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
priv.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -691,13 +706,13 @@ priv.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
priv.o: mkdir.h mv.h nicedit.h node.h passwd.h reload.h rm.h run.h sort.h
priv.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
priv.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-priv.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-priv.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-priv.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-priv.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-priv.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-priv.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-priv.o: ../core/threadmanager.h ../core/synchro.h
+priv.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+priv.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+priv.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+priv.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+priv.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+priv.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+priv.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
privchanger.o: privchanger.h ../core/request.h ../core/system.h
privchanger.o: ../core/dirs.h ../core/item.h ../core/dircontainer.h
privchanger.o: ../db/db.h ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
@@ -712,8 +727,8 @@ privchanger.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
privchanger.o: ../core/plugindata.h ../core/rebus.h mount.h functionbase.h
privchanger.o: ../core/config.h ../core/synchro.h ../notify/notify.h
privchanger.o: ../notify/notifypool.h ../templates/locale.h
-privchanger.o: ../core/confparser.h ../templates/misc.h
-privchanger.o: ../templates/localefilter.h ../templates/locale.h
+privchanger.o: ../core/confparser.h ../templates/patterns.h
+privchanger.o: ../templates/locale.h ../templates/localefilter.h
privchanger.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h
privchanger.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h
privchanger.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h chown.h
@@ -722,13 +737,14 @@ privchanger.o: logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h
privchanger.o: priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h
privchanger.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h
privchanger.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h
-privchanger.o: ../templates/htmltextstream.h ../notify/notifythread.h
-privchanger.o: ../core/basethread.h ../core/synchro.h
-privchanger.o: ../notify/templatesnotify.h ../core/users.h
-privchanger.o: ../core/ugcontainer.h ../core/lastcontainer.h ../core/mounts.h
-privchanger.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
-privchanger.o: ../core/groups.h ../core/group.h ../core/loadavg.h
-privchanger.o: ../core/thumb.h ../core/basethread.h ../core/threadmanager.h
+privchanger.o: ../notify/notifythread.h ../core/basethread.h
+privchanger.o: ../core/synchro.h ../notify/templatesnotify.h ../core/users.h
+privchanger.o: ../core/ugcontainer.h ../core/lastcontainer.h
+privchanger.o: ../templates/misc.h ../templates/htmltextstream.h
+privchanger.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h
+privchanger.o: ../core/users.h ../core/groups.h ../core/group.h
+privchanger.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+privchanger.o: ../core/threadmanager.h
reload.o: reload.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
reload.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
reload.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -742,8 +758,8 @@ reload.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
reload.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
reload.o: ../core/confparser.h ../core/request.h ../core/config.h
reload.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-reload.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-reload.o: ../templates/localefilter.h ../templates/locale.h
+reload.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+reload.o: ../templates/locale.h ../templates/localefilter.h
reload.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
reload.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
reload.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -751,16 +767,17 @@ reload.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
reload.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h rm.h run.h sort.h
reload.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
reload.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-reload.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-reload.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-reload.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-reload.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-reload.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-reload.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-reload.o: ../core/threadmanager.h ../core/synchro.h ../templates/templates.h
-reload.o: ../templates/patterncacher.h ../templates/indexpatterns.h
-reload.o: ../core/sessionmanager.h ../core/sessioncontainer.h
-reload.o: ../core/system.h
+reload.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+reload.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+reload.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+reload.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+reload.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+reload.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+reload.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+reload.o: ../templates/templates.h ../templates/patterncacher.h
+reload.o: ../templates/indexpatterns.h ../templates/patterns.h
+reload.o: ../templates/changepatterns.h ../core/sessionmanager.h
+reload.o: ../core/sessioncontainer.h ../core/system.h
rm.o: rm.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
rm.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h ../core/misc.h
rm.o: ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -773,8 +790,8 @@ rm.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
rm.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
rm.o: ../core/confparser.h ../core/request.h ../core/config.h
rm.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-rm.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-rm.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+rm.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+rm.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
rm.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
rm.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
rm.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -782,17 +799,18 @@ rm.o: last.h login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h
rm.o: passwd.h priv.h reload.h run.h sort.h specialdefault.h stat.h subject.h
rm.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
rm.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-rm.o: ../templates/htmltextstream.h ../notify/notifythread.h
-rm.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-rm.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-rm.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-rm.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-rm.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
-rm.o: ../core/plugin.h ../core/pluginmsg.h ../core/system.h
-rm.o: ../core/sessionmanager.h ../core/sessioncontainer.h
-rm.o: ../functions/functions.h ../templates/templates.h
-rm.o: ../templates/patterncacher.h ../templates/indexpatterns.h
-rm.o: ../core/sessionmanager.h ../core/misc.h
+rm.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+rm.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+rm.o: ../core/lastcontainer.h ../templates/misc.h
+rm.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+rm.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+rm.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+rm.o: ../core/threadmanager.h ../core/synchro.h ../core/plugin.h
+rm.o: ../core/pluginmsg.h ../core/system.h ../core/sessionmanager.h
+rm.o: ../core/sessioncontainer.h ../functions/functions.h
+rm.o: ../templates/templates.h ../templates/patterncacher.h
+rm.o: ../templates/indexpatterns.h ../templates/patterns.h
+rm.o: ../templates/changepatterns.h ../core/sessionmanager.h ../core/misc.h
run.o: run.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
run.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
run.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -805,8 +823,8 @@ run.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
run.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
run.o: ../core/confparser.h ../core/request.h ../core/config.h
run.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-run.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-run.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+run.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+run.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
run.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
run.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
run.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -814,12 +832,13 @@ run.o: last.h login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h
run.o: passwd.h priv.h reload.h rm.h sort.h specialdefault.h stat.h subject.h
run.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
run.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-run.o: ../templates/htmltextstream.h ../notify/notifythread.h
-run.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-run.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-run.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-run.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-run.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+run.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+run.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+run.o: ../core/lastcontainer.h ../templates/misc.h
+run.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+run.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+run.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+run.o: ../core/threadmanager.h ../core/synchro.h
sort.o: sort.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
sort.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
sort.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -832,8 +851,8 @@ sort.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
sort.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
sort.o: ../core/confparser.h ../core/request.h ../core/config.h
sort.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-sort.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-sort.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+sort.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+sort.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
sort.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
sort.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
sort.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -841,13 +860,13 @@ sort.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
sort.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
sort.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h
sort.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-sort.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-sort.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-sort.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-sort.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-sort.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-sort.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-sort.o: ../core/threadmanager.h ../core/synchro.h
+sort.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+sort.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+sort.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+sort.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+sort.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+sort.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+sort.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
specialdefault.o: specialdefault.h functionbase.h ../core/item.h ../db/db.h
specialdefault.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
specialdefault.o: ../core/textstream.h ../core/misc.h ../core/item.h
@@ -863,8 +882,8 @@ specialdefault.o: ../core/rebus.h mount.h ../templates/locale.h
specialdefault.o: ../core/confparser.h ../core/request.h ../core/config.h
specialdefault.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
specialdefault.o: ../notify/notify.h ../notify/notifypool.h
-specialdefault.o: ../templates/misc.h ../templates/localefilter.h
-specialdefault.o: ../templates/locale.h ../../ezc/src/ezc.h
+specialdefault.o: ../templates/patterns.h ../templates/locale.h
+specialdefault.o: ../templates/localefilter.h ../../ezc/src/ezc.h
specialdefault.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
specialdefault.o: ../../ezc/src/pattern.h functions.h functionparser.h
specialdefault.o: ../core/cur.h adduser.h cat.h chmod.h privchanger.h chown.h
@@ -873,13 +892,14 @@ specialdefault.o: logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h
specialdefault.o: priv.h reload.h rm.h run.h sort.h stat.h subject.h
specialdefault.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h
specialdefault.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-specialdefault.o: ../templates/htmltextstream.h ../notify/notifythread.h
-specialdefault.o: ../core/basethread.h ../core/synchro.h
-specialdefault.o: ../notify/templatesnotify.h ../core/users.h
-specialdefault.o: ../core/ugcontainer.h ../core/lastcontainer.h
-specialdefault.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h
-specialdefault.o: ../core/users.h ../core/groups.h ../core/group.h
-specialdefault.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+specialdefault.o: ../notify/notifythread.h ../core/basethread.h
+specialdefault.o: ../core/synchro.h ../notify/templatesnotify.h
+specialdefault.o: ../core/users.h ../core/ugcontainer.h
+specialdefault.o: ../core/lastcontainer.h ../templates/misc.h
+specialdefault.o: ../templates/htmltextstream.h ../core/mounts.h
+specialdefault.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+specialdefault.o: ../core/groups.h ../core/group.h ../core/loadavg.h
+specialdefault.o: ../core/thumb.h ../core/basethread.h
specialdefault.o: ../core/threadmanager.h ../core/synchro.h
stat.o: stat.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
stat.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
@@ -893,8 +913,8 @@ stat.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
stat.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
stat.o: ../core/confparser.h ../core/request.h ../core/config.h
stat.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-stat.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-stat.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+stat.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+stat.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
stat.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
stat.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
stat.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -902,13 +922,13 @@ stat.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
stat.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
stat.o: sort.h specialdefault.h subject.h template.h tinymce.h uname.h
stat.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-stat.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-stat.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-stat.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-stat.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-stat.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-stat.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-stat.o: ../core/threadmanager.h ../core/synchro.h
+stat.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+stat.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+stat.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+stat.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+stat.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+stat.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+stat.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
subject.o: subject.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
subject.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
subject.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -922,8 +942,8 @@ subject.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
subject.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
subject.o: ../core/confparser.h ../core/request.h ../core/config.h
subject.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-subject.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-subject.o: ../templates/localefilter.h ../templates/locale.h
+subject.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+subject.o: ../templates/locale.h ../templates/localefilter.h
subject.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
subject.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
subject.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -931,13 +951,13 @@ subject.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
subject.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
subject.o: sort.h specialdefault.h stat.h template.h tinymce.h uname.h
subject.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-subject.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-subject.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-subject.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-subject.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-subject.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-subject.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-subject.o: ../core/threadmanager.h ../core/synchro.h
+subject.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+subject.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+subject.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+subject.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+subject.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+subject.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+subject.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
template.o: template.h functionbase.h ../core/item.h ../db/db.h
template.o: ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
template.o: ../core/textstream.h ../core/misc.h ../core/item.h
@@ -952,22 +972,24 @@ template.o: ../core/plugindata.h ../core/rebus.h mount.h
template.o: ../templates/locale.h ../core/confparser.h ../core/request.h
template.o: ../core/config.h ../core/system.h ../core/dirs.h
template.o: ../core/dircontainer.h ../notify/notify.h ../notify/notifypool.h
-template.o: ../templates/misc.h ../templates/localefilter.h
-template.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-template.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h
-template.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h
-template.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h
-template.o: emacs.h last.h login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h
-template.o: node.h passwd.h priv.h reload.h rm.h run.h sort.h
-template.o: specialdefault.h stat.h subject.h tinymce.h uname.h upload.h
-template.o: uptime.h who.h vim.h ../core/htmlfilter.h
-template.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
+template.o: ../templates/patterns.h ../templates/locale.h
+template.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+template.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+template.o: ../../ezc/src/pattern.h functions.h functionparser.h
+template.o: ../core/cur.h adduser.h cat.h chmod.h privchanger.h chown.h
+template.o: ckeditor.h cp.h default.h download.h emacs.h last.h login.h
+template.o: logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h passwd.h priv.h
+template.o: reload.h rm.h run.h sort.h specialdefault.h stat.h subject.h
+template.o: tinymce.h uname.h upload.h uptime.h who.h vim.h
+template.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
template.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
template.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-template.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-template.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-template.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-template.o: ../core/threadmanager.h ../core/synchro.h ../core/misc.h
+template.o: ../core/lastcontainer.h ../templates/misc.h
+template.o: ../templates/htmltextstream.h ../core/mounts.h
+template.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+template.o: ../core/groups.h ../core/group.h ../core/loadavg.h
+template.o: ../core/thumb.h ../core/basethread.h ../core/threadmanager.h
+template.o: ../core/synchro.h ../core/misc.h
tinymce.o: tinymce.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
tinymce.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
tinymce.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -981,8 +1003,8 @@ tinymce.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
tinymce.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
tinymce.o: ../core/confparser.h ../core/request.h ../core/config.h
tinymce.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-tinymce.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-tinymce.o: ../templates/localefilter.h ../templates/locale.h
+tinymce.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+tinymce.o: ../templates/locale.h ../templates/localefilter.h
tinymce.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
tinymce.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
tinymce.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -990,13 +1012,13 @@ tinymce.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
tinymce.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
tinymce.o: sort.h specialdefault.h stat.h subject.h template.h uname.h
tinymce.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-tinymce.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-tinymce.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-tinymce.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-tinymce.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-tinymce.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-tinymce.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-tinymce.o: ../core/threadmanager.h ../core/synchro.h
+tinymce.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+tinymce.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+tinymce.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+tinymce.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+tinymce.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+tinymce.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+tinymce.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
uname.o: uname.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
uname.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
uname.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -1009,8 +1031,8 @@ uname.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
uname.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
uname.o: ../core/confparser.h ../core/request.h ../core/config.h
uname.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-uname.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-uname.o: ../templates/localefilter.h ../templates/locale.h
+uname.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+uname.o: ../templates/locale.h ../templates/localefilter.h
uname.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
uname.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
uname.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -1018,13 +1040,13 @@ uname.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
uname.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
uname.o: sort.h specialdefault.h stat.h subject.h template.h tinymce.h
uname.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h
-uname.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-uname.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-uname.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-uname.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-uname.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-uname.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-uname.o: ../core/threadmanager.h ../core/synchro.h
+uname.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+uname.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+uname.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+uname.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+uname.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+uname.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+uname.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
upload.o: upload.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
upload.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
upload.o: ../core/misc.h ../core/item.h ../core/requesttypes.h
@@ -1038,8 +1060,8 @@ upload.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
upload.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
upload.o: ../core/confparser.h ../core/request.h ../core/config.h
upload.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-upload.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-upload.o: ../templates/localefilter.h ../templates/locale.h
+upload.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+upload.o: ../templates/locale.h ../templates/localefilter.h
upload.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
upload.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
upload.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -1047,15 +1069,16 @@ upload.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
upload.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
upload.o: sort.h specialdefault.h stat.h subject.h template.h tinymce.h
upload.o: uname.h uptime.h who.h vim.h ../core/htmlfilter.h
-upload.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-upload.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-upload.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-upload.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-upload.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-upload.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-upload.o: ../core/threadmanager.h ../core/synchro.h ../core/misc.h
-upload.o: ../functions/functions.h ../templates/templates.h
+upload.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+upload.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+upload.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+upload.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+upload.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+upload.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+upload.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+upload.o: ../core/misc.h ../functions/functions.h ../templates/templates.h
upload.o: ../templates/patterncacher.h ../templates/indexpatterns.h
+upload.o: ../templates/patterns.h ../templates/changepatterns.h
upload.o: ../core/sessionmanager.h ../core/sessioncontainer.h
upload.o: ../core/system.h
uptime.o: uptime.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
@@ -1071,8 +1094,8 @@ uptime.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
uptime.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
uptime.o: ../core/confparser.h ../core/request.h ../core/config.h
uptime.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-uptime.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-uptime.o: ../templates/localefilter.h ../templates/locale.h
+uptime.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+uptime.o: ../templates/locale.h ../templates/localefilter.h
uptime.o: ../../ezc/src/ezc.h ../../ezc/src/utf8.h ../../ezc/src/generator.h
uptime.o: ../../ezc/src/pattern.h functions.h functionparser.h ../core/cur.h
uptime.o: adduser.h cat.h chmod.h privchanger.h chown.h ckeditor.h cp.h
@@ -1080,13 +1103,13 @@ uptime.o: default.h download.h emacs.h last.h login.h logout.h ln.h ls.h
uptime.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h reload.h rm.h run.h
uptime.o: sort.h specialdefault.h stat.h subject.h template.h tinymce.h
uptime.o: uname.h upload.h who.h vim.h ../core/htmlfilter.h
-uptime.o: ../../ezc/src/stringconv.h ../templates/htmltextstream.h
-uptime.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
-uptime.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
-uptime.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
-uptime.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
-uptime.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-uptime.o: ../core/threadmanager.h ../core/synchro.h
+uptime.o: ../../ezc/src/stringconv.h ../notify/notifythread.h
+uptime.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
+uptime.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
+uptime.o: ../templates/misc.h ../templates/htmltextstream.h ../core/mounts.h
+uptime.o: ../core/mountparser.h ../core/crypt.h ../core/users.h
+uptime.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
+uptime.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
vim.o: vim.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
vim.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
vim.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -1099,8 +1122,8 @@ vim.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
vim.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
vim.o: ../core/confparser.h ../core/request.h ../core/config.h
vim.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-vim.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-vim.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+vim.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+vim.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
vim.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
vim.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
vim.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -1108,12 +1131,13 @@ vim.o: last.h login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h
vim.o: passwd.h priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h
vim.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h
vim.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-vim.o: ../templates/htmltextstream.h ../notify/notifythread.h
-vim.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-vim.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-vim.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-vim.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-vim.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+vim.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+vim.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+vim.o: ../core/lastcontainer.h ../templates/misc.h
+vim.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+vim.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+vim.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+vim.o: ../core/threadmanager.h ../core/synchro.h
who.o: who.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h
who.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h
who.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h
@@ -1126,8 +1150,8 @@ who.o: ../templates/htmltextstream.h ../core/session.h ../core/user.h
who.o: ../core/plugindata.h ../core/rebus.h mount.h ../templates/locale.h
who.o: ../core/confparser.h ../core/request.h ../core/config.h
who.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
-who.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-who.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+who.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+who.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
who.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h ../../ezc/src/pattern.h
who.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h chmod.h
who.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h
@@ -1135,9 +1159,10 @@ who.o: last.h login.h logout.h ln.h ls.h mkdir.h mv.h nicedit.h node.h
who.o: passwd.h priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h
who.o: subject.h template.h tinymce.h uname.h upload.h uptime.h vim.h
who.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h
-who.o: ../templates/htmltextstream.h ../notify/notifythread.h
-who.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-who.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h
-who.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h
-who.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/thumb.h
-who.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h
+who.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+who.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h
+who.o: ../core/lastcontainer.h ../templates/misc.h
+who.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
+who.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h
+who.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
+who.o: ../core/threadmanager.h ../core/synchro.h
diff --git a/functions/functionbase.cpp b/functions/functionbase.cpp
index 3de6adf..e630960 100755
--- a/functions/functionbase.cpp
+++ b/functions/functionbase.cpp
@@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
- * Copyright (c) 2010, Tomasz Sowa
+ * Copyright (c) 2010-2011, Tomasz Sowa
* All rights reserved.
*
*/
@@ -14,8 +14,8 @@
FunctionBase::FunctionBase()
{
- id = -1;
follow_symlinks = true;
+ template_index = size_t(-1);
fun.user_id = -1;
fun.group_id = -1;
diff --git a/functions/functionbase.h b/functions/functionbase.h
index 93f7533..f842e94 100755
--- a/functions/functionbase.h
+++ b/functions/functionbase.h
@@ -2,7 +2,7 @@
* This file is a part of Winix
* and is not publicly distributed
*
- * Copyright (c) 2010, Tomasz Sowa
+ * Copyright (c) 2010-2011, Tomasz Sowa
* All rights reserved.
*
*/
@@ -32,11 +32,6 @@ class FunctionBase
{
public:
- // function id
- // it is set automatically when you add the function to functions list
- // is used to load a template (in templates)
- long id;
-
FunctionBase();
// user, group, permissions, url (function name)
@@ -45,6 +40,9 @@ public:
// auto follow sym links, default: true
bool follow_symlinks;
+ // html template index (for using with 'patterns' object)
+ size_t template_index;
+
virtual void Init();
virtual bool HasAccess();
virtual void MakePost();
diff --git a/functions/functions.cpp b/functions/functions.cpp
index a36bd48..7d6d409 100755
--- a/functions/functions.cpp
+++ b/functions/functions.cpp
@@ -124,6 +124,7 @@ Error Functions::CheckSpecialFile(const Item & item)
system->mounts.ReadMounts(item.content);
templates->ReadNewIndexTemplates();
+ templates->ReadNewChangeTemplates();
return WINIX_ERR_OK;
}
@@ -154,7 +155,6 @@ void Functions::Add(FunctionBase * fun)
return;
}
- fun->id = table.size();
SetObjects(fun);
table[fun->fun.url] = fun;
}
diff --git a/functions/upload.cpp b/functions/upload.cpp
index 9d93d37..eababd4 100755
--- a/functions/upload.cpp
+++ b/functions/upload.cpp
@@ -271,18 +271,14 @@ void Upload::CreateJSON()
{
// !! locale beda w zaleznosci od uzytkownika
size_t loc = TemplatesFunctions::locale.GetLang();
- size_t idu = static_cast(id);
- TemplatesFunctions::Patterns & patfun = TemplatesFunctions::patterns_fun;
+ Ezc::Pattern * pat = TemplatesFunctions::patterns.Get(template_index, loc);
- if( loc < patfun.size() && idu < patfun[loc].size() )
+ if( pat )
{
- templates->Generate(patfun[loc][idu]);
- cur->request->page_generated = true;
+ templates->Generate(*pat);
+ cur->request->page_generated = true;
cur->request->use_html_filter = false;
}
-
- // !! usunac
- //log << log1 << cur->request->page.Str() << logend;
}
diff --git a/html/fun_reload.html b/html/fun_reload.html
index f079b67..709f84a 100755
--- a/html/fun_reload.html
+++ b/html/fun_reload.html
@@ -11,6 +11,10 @@
{reload_tickets}
[end]
+[if winix_has_plugin "groupitem"]
+ {reload_groupitem}
+[end]
+
diff --git a/locale/en b/locale/en
index c988bf4..9055014 100755
--- a/locale/en
+++ b/locale/en
@@ -152,6 +152,7 @@ reload_header = Reload
reload_select = Choose an item to reload
reload_templates = html templates
reload_tickets = tickets config files
+reload_groupitem = groups config files
rm_header = Remove
diff --git a/locale/pl b/locale/pl
index 746305e..3cb32e6 100755
--- a/locale/pl
+++ b/locale/pl
@@ -170,6 +170,7 @@ reload_header = Przeładuj
reload_select = Wybierz pozycjÄ™
reload_templates = szablony html
reload_tickets = pliki konfiguracyjne ticketów
+reload_groupitem = pliki konfiguracyjne grup
rm_header = Usuń
diff --git a/main/Makefile.dep b/main/Makefile.dep
index a98a375..e5fb064 100755
--- a/main/Makefile.dep
+++ b/main/Makefile.dep
@@ -12,15 +12,15 @@ main.o: ../db/db.h ../db/dbbase.h ../db/dbconn.h ../db/dbtextstream.h
main.o: ../core/error.h ../db/dbitemquery.h ../core/item.h
main.o: ../db/dbitemcolumns.h ../core/user.h ../core/group.h
main.o: ../core/dircontainer.h ../core/ugcontainer.h ../core/log.h
-main.o: ../notify/notify.h ../notify/notifypool.h ../templates/misc.h
-main.o: ../templates/localefilter.h ../templates/locale.h ../../ezc/src/ezc.h
+main.o: ../notify/notify.h ../notify/notifypool.h ../templates/patterns.h
+main.o: ../templates/locale.h ../templates/localefilter.h ../../ezc/src/ezc.h
main.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
main.o: ../../ezc/src/pattern.h ../../ezc/src/functions.h
main.o: ../../ezc/src/funinfo.h ../../ezc/src/stringconv.h
-main.o: ../templates/htmltextstream.h ../notify/notifythread.h
-main.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h
-main.o: ../core/config.h ../core/users.h ../core/ugcontainer.h
-main.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h
+main.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h
+main.o: ../notify/templatesnotify.h ../core/config.h ../core/users.h
+main.o: ../core/ugcontainer.h ../core/lastcontainer.h ../templates/misc.h
+main.o: ../templates/htmltextstream.h ../core/mounts.h ../core/mountparser.h
main.o: ../core/crypt.h ../core/run.h ../core/users.h ../core/groups.h
main.o: ../core/group.h ../core/loadavg.h ../core/thumb.h
main.o: ../core/basethread.h ../core/threadmanager.h ../core/sessionmanager.h
@@ -40,7 +40,8 @@ main.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h
main.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h
main.o: ../functions/who.h ../functions/vim.h ../core/htmlfilter.h
main.o: ../templates/templates.h ../templates/patterncacher.h
-main.o: ../templates/indexpatterns.h ../core/sessionmanager.h
+main.o: ../templates/indexpatterns.h ../templates/patterns.h
+main.o: ../templates/changepatterns.h ../core/sessionmanager.h
main.o: ../core/compress.h ../core/postparser.h ../core/httpsimpleparser.h
main.o: ../core/cookieparser.h ../core/postmultiparser.h
main.o: ../core/acceptencodingparser.h ../core/acceptbaseparser.h
diff --git a/notify/Makefile.dep b/notify/Makefile.dep
index 52b89ea..9ae9b74 100755
--- a/notify/Makefile.dep
+++ b/notify/Makefile.dep
@@ -1,33 +1,35 @@
# DO NOT DELETE
notify.o: notify.h notifypool.h ../templates/locale.h ../core/confparser.h
-notify.o: ../templates/misc.h ../templates/localefilter.h
-notify.o: ../templates/locale.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
-notify.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
-notify.o: ../../ezc/src/item.h ../../ezc/src/funinfo.h
-notify.o: ../../ezc/src/functions.h ../../ezc/src/stringconv.h
-notify.o: ../templates/htmltextstream.h ../core/textstream.h ../core/misc.h
-notify.o: ../core/requesttypes.h ../core/user.h notifythread.h
+notify.o: ../templates/patterns.h ../templates/locale.h
+notify.o: ../templates/localefilter.h ../../ezc/src/ezc.h
+notify.o: ../../ezc/src/utf8.h ../../ezc/src/generator.h
+notify.o: ../../ezc/src/pattern.h ../../ezc/src/item.h
+notify.o: ../../ezc/src/funinfo.h ../../ezc/src/functions.h
+notify.o: ../../ezc/src/stringconv.h ../templates/misc.h
+notify.o: ../templates/htmltextstream.h ../core/textstream.h notifythread.h
notify.o: ../core/basethread.h ../core/synchro.h templatesnotify.h
notify.o: ../core/config.h ../core/confparser.h ../core/htmlfilter.h
notify.o: ../core/users.h ../core/user.h ../core/ugcontainer.h ../core/log.h
notify.o: ../core/textstream.h ../core/logmanipulators.h ../core/slog.h
-notify.o: ../core/cur.h ../core/request.h ../core/error.h ../core/config.h
-notify.o: ../templates/htmltextstream.h ../core/session.h
-notify.o: ../core/plugindata.h ../core/rebus.h ../core/mount.h
-notify.o: ../core/lastcontainer.h ../db/db.h ../db/dbbase.h ../db/dbconn.h
-notify.o: ../db/dbtextstream.h ../core/error.h ../db/dbitemquery.h
-notify.o: ../core/item.h ../db/dbitemcolumns.h ../core/group.h
-notify.o: ../core/dircontainer.h ../core/ugcontainer.h
-notify.o: ../templates/templates.h ../templates/patterncacher.h
-notify.o: ../templates/indexpatterns.h ../core/cur.h ../core/system.h
-notify.o: ../core/dirs.h ../core/dircontainer.h ../notify/notify.h
-notify.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h
-notify.o: ../core/run.h ../core/users.h ../core/groups.h ../core/group.h
-notify.o: ../core/loadavg.h ../core/thumb.h ../core/basethread.h
-notify.o: ../core/threadmanager.h ../core/sessionmanager.h
-notify.o: ../core/sessioncontainer.h ../core/system.h ../core/htmlfilter.h
-notify.o: ../core/request.h ../core/dirs.h ../core/synchro.h ../core/plugin.h
+notify.o: ../core/cur.h ../core/request.h ../core/requesttypes.h
+notify.o: ../core/error.h ../core/config.h ../templates/htmltextstream.h
+notify.o: ../core/session.h ../core/plugindata.h ../core/rebus.h
+notify.o: ../core/mount.h ../core/lastcontainer.h ../db/db.h ../db/dbbase.h
+notify.o: ../db/dbconn.h ../db/dbtextstream.h ../core/error.h
+notify.o: ../db/dbitemquery.h ../core/item.h ../db/dbitemcolumns.h
+notify.o: ../core/user.h ../core/group.h ../core/dircontainer.h
+notify.o: ../core/ugcontainer.h ../templates/misc.h ../templates/templates.h
+notify.o: ../templates/patterncacher.h ../templates/indexpatterns.h
+notify.o: ../templates/patterns.h ../templates/changepatterns.h ../core/cur.h
+notify.o: ../core/system.h ../core/dirs.h ../core/dircontainer.h
+notify.o: ../notify/notify.h ../core/mounts.h ../core/mountparser.h
+notify.o: ../core/crypt.h ../core/run.h ../core/users.h ../core/groups.h
+notify.o: ../core/group.h ../core/loadavg.h ../core/thumb.h
+notify.o: ../core/basethread.h ../core/threadmanager.h
+notify.o: ../core/sessionmanager.h ../core/sessioncontainer.h
+notify.o: ../core/system.h ../core/htmlfilter.h ../core/request.h
+notify.o: ../core/dirs.h ../core/synchro.h ../core/plugin.h
notify.o: ../core/pluginmsg.h ../core/sessionmanager.h
notify.o: ../functions/functions.h ../functions/functionbase.h
notify.o: ../functions/functionparser.h ../functions/adduser.h
@@ -48,31 +50,34 @@ notifythread.o: templatesnotify.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
notifythread.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
notifythread.o: ../../ezc/src/item.h ../../ezc/src/funinfo.h
notifythread.o: ../../ezc/src/functions.h ../../ezc/src/stringconv.h
-notifythread.o: ../core/textstream.h ../core/misc.h ../core/requesttypes.h
-notifythread.o: notifypool.h ../templates/locale.h ../core/confparser.h
-notifythread.o: ../templates/misc.h ../templates/localefilter.h
-notifythread.o: ../templates/locale.h ../templates/htmltextstream.h
-notifythread.o: ../core/user.h ../core/config.h ../core/confparser.h
-notifythread.o: ../core/htmlfilter.h ../core/users.h ../core/user.h
-notifythread.o: ../core/ugcontainer.h ../core/log.h ../core/textstream.h
-notifythread.o: ../core/logmanipulators.h ../core/slog.h ../core/cur.h
-notifythread.o: ../core/request.h ../core/error.h ../core/config.h
+notifythread.o: ../core/textstream.h ../templates/misc.h
+notifythread.o: ../templates/localefilter.h ../templates/locale.h
+notifythread.o: ../templates/htmltextstream.h notifypool.h
+notifythread.o: ../templates/locale.h ../core/confparser.h ../core/config.h
+notifythread.o: ../core/confparser.h ../core/htmlfilter.h ../core/users.h
+notifythread.o: ../core/user.h ../core/ugcontainer.h ../core/log.h
+notifythread.o: ../core/textstream.h ../core/logmanipulators.h ../core/slog.h
+notifythread.o: ../core/cur.h ../core/request.h ../core/requesttypes.h
+notifythread.o: ../core/error.h ../core/config.h
notifythread.o: ../templates/htmltextstream.h ../core/session.h
notifythread.o: ../core/plugindata.h ../core/rebus.h ../core/mount.h
notifythread.o: ../core/lastcontainer.h ../db/db.h ../db/dbbase.h
notifythread.o: ../db/dbconn.h ../db/dbtextstream.h ../core/error.h
notifythread.o: ../db/dbitemquery.h ../core/item.h ../db/dbitemcolumns.h
-notifythread.o: ../core/group.h ../core/dircontainer.h ../core/ugcontainer.h
+notifythread.o: ../core/user.h ../core/group.h ../core/dircontainer.h
+notifythread.o: ../core/ugcontainer.h ../templates/patterns.h
templatesnotify.o: templatesnotify.h ../../ezc/src/ezc.h ../../ezc/src/utf8.h
templatesnotify.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h
templatesnotify.o: ../../ezc/src/item.h ../../ezc/src/funinfo.h
templatesnotify.o: ../../ezc/src/functions.h ../../ezc/src/stringconv.h
-templatesnotify.o: ../core/textstream.h ../core/misc.h ../core/requesttypes.h
-templatesnotify.o: notifypool.h ../templates/locale.h ../core/confparser.h
+templatesnotify.o: ../core/textstream.h ../templates/misc.h
+templatesnotify.o: ../templates/localefilter.h ../templates/locale.h
+templatesnotify.o: ../templates/htmltextstream.h notifypool.h
+templatesnotify.o: ../templates/locale.h ../core/confparser.h
templatesnotify.o: ../core/plugin.h ../core/pluginmsg.h ../core/log.h
templatesnotify.o: ../core/textstream.h ../core/logmanipulators.h
templatesnotify.o: ../core/slog.h ../core/cur.h ../core/request.h
-templatesnotify.o: ../core/error.h ../core/config.h
+templatesnotify.o: ../core/requesttypes.h ../core/error.h ../core/config.h
templatesnotify.o: ../templates/htmltextstream.h ../core/session.h
templatesnotify.o: ../core/user.h ../core/plugindata.h ../core/rebus.h
templatesnotify.o: ../core/mount.h ../core/system.h ../core/sessionmanager.h
@@ -108,7 +113,7 @@ templatesnotify.o: ../functions/uname.h ../functions/upload.h
templatesnotify.o: ../functions/uptime.h ../functions/who.h
templatesnotify.o: ../functions/vim.h ../core/htmlfilter.h
templatesnotify.o: ../templates/templates.h ../templates/patterncacher.h
-templatesnotify.o: ../templates/indexpatterns.h ../templates/localefilter.h
-templatesnotify.o: ../templates/locale.h ../templates/htmltextstream.h
-templatesnotify.o: ../core/sessionmanager.h ../core/sessioncontainer.h
-templatesnotify.o: ../core/lastcontainer.h ../core/misc.h
+templatesnotify.o: ../templates/indexpatterns.h ../templates/patterns.h
+templatesnotify.o: ../templates/changepatterns.h ../core/sessionmanager.h
+templatesnotify.o: ../core/sessioncontainer.h ../core/lastcontainer.h
+templatesnotify.o: ../core/misc.h
diff --git a/notify/notify.cpp b/notify/notify.cpp
index 4387cf4..95f7e02 100755
--- a/notify/notify.cpp
+++ b/notify/notify.cpp
@@ -69,6 +69,11 @@ void Notify::Init()
notify_thread.SetSynchro(synchro);
thread_manager->Add(¬ify_thread);
+ patterns.SetUTF8(config->utf8);
+ patterns.SetDirectories(config->txt_templates_dir, config->txt_templates_dir_default);
+ patterns.SetLocale(&TemplatesFunctions::locale);
+ patterns.SetLocaleFilter(&TemplatesFunctions::locale_filter);
+
notify_template_cms = AddTemplate(L"notify_email_cms.txt");
plugin.Call(WINIX_NOTIFY_ADD_TEMPLATE);
@@ -78,29 +83,7 @@ void Notify::Init()
void Notify::ReadTemplates()
{
- if( templates_names.empty() )
- {
- patterns.clear();
- return;
- }
-
- patterns.resize(TemplatesFunctions::locale.Size());
-
- for(size_t i=0 ; iutf8);
- patterns[i][a].DeleteWhiteTextItems(false);
- patterns[i][a].Directory(config->txt_templates_dir, config->txt_templates_dir_default);
- patterns[i][a].ParseFile(templates_names[a]);
-
- TemplatesFunctions::locale_filter.Filter(patterns[i][a], TemplatesFunctions::locale, i);
- }
- }
-
+ patterns.Reload();
notify_thread.PatternsChanged();
}
@@ -132,10 +115,7 @@ void Notify::ItemChanged(const NotifyMsg & msg)
size_t Notify::AddTemplate(const std::wstring & file_name)
{
- size_t index = templates_names.size();
- templates_names.push_back(file_name);
-
-return index;
+ return patterns.Add(file_name, false);
}
diff --git a/notify/notify.h b/notify/notify.h
index 9b3818c..214a7e9 100755
--- a/notify/notify.h
+++ b/notify/notify.h
@@ -13,9 +13,12 @@
#include
#include
#include "notifypool.h"
-#include "templates/misc.h"
+#include "templates/patterns.h"
#include "notifythread.h"
+// !! skasowac?
+#include "templates/misc.h"
+
class Request;
class Config;
@@ -61,11 +64,7 @@ private:
size_t notify_template_cms;
- // templates file names
- std::vector templates_names;
-
- // vector table [language][file]
- TemplatesFunctions::Patterns patterns;
+ Patterns patterns;
void CreateItemLink(const Item & item, std::wstring & link, std::wstring & dir_link);
};
diff --git a/notify/notifythread.cpp b/notify/notifythread.cpp
index 4e9b082..07fa2f8 100755
--- a/notify/notifythread.cpp
+++ b/notify/notifythread.cpp
@@ -41,7 +41,7 @@ void NotifyThread::SetNotifyPool(NotifyPool * pool)
// first thread (objects are locked)
-void NotifyThread::SetPatterns(TemplatesFunctions::Patterns * pat)
+void NotifyThread::SetPatterns(Patterns * pat)
{
pat_global = pat;
}
@@ -163,24 +163,25 @@ void NotifyThread::SendMail()
size_t lang_index = TemplatesNotifyFunctions::notify_user_msg.lang;
size_t template_index = TemplatesNotifyFunctions::notify_msg.template_index;
- if( lang_index >= patterns.size() )
- return;
+ Lock();
+ // 'patterns' object can use logger or other stuff so we use Lock() before
+ Ezc::Pattern * pat = patterns.Get(template_index, lang_index);
- if( template_index >= patterns[lang_index].size() )
+ if( !pat )
+ log << log1 << "NotifyThread: I don't have a template with index: " << template_index
+ << " and locale index: " << lang_index << logend;
+
+ Unlock();
+
+ if( pat )
{
- Lock();
- log << log1 << "NotifyThread: incorrect template index: " << template_index << logend;
- Unlock();
- return;
+ generator.RecognizeSpecialChars(true);
+ generator.TrimWhite(true);
+ generator.SkipNewLine(true);
+ generator.Generate(notify_stream, *pat, TemplatesNotifyFunctions::ezc_functions);
+
+ SendMail(TemplatesNotifyFunctions::notify_user_msg.email, notify_stream.Str());
}
-
- generator.RecognizeSpecialChars(true);
- generator.TrimWhite(true);
- generator.SkipNewLine(true);
- generator.Generate(notify_stream, patterns[lang_index][template_index],
- TemplatesNotifyFunctions::ezc_functions);
-
- SendMail(TemplatesNotifyFunctions::notify_user_msg.email, notify_stream.Str());
}
diff --git a/notify/notifythread.h b/notify/notifythread.h
index 8df3021..04b6a57 100755
--- a/notify/notifythread.h
+++ b/notify/notifythread.h
@@ -13,9 +13,9 @@
#include "core/basethread.h"
#include "templatesnotify.h"
#include "ezc.h"
-#include "templates/misc.h"
#include "core/config.h"
#include "core/users.h"
+#include "templates/patterns.h"
@@ -30,7 +30,7 @@ public:
void SetConfig(Config * pconfig);
void SetUsers(Users * pusers);
void SetNotifyPool(NotifyPool * pool);
- void SetPatterns(TemplatesFunctions::Patterns * pat);
+ void SetPatterns(Patterns * pat);
void PatternsChanged();
private:
@@ -38,14 +38,14 @@ private:
Config * config;
Users * users;
NotifyPool * notify_pool;
- TemplatesFunctions::Patterns * pat_global;
+ Patterns * pat_global;
NotifyUserMsg msg;
typedef std::list NotifyUser;
NotifyUser notify_user;
std::string sendmail_command;
bool patterns_changed;
- TemplatesFunctions::Patterns patterns;
+ Patterns patterns;
TemplatesNotifyFunctions::NotifyStream notify_stream;
Ezc::Generator generator;
diff --git a/plugins/export/Makefile.dep b/plugins/export/Makefile.dep
index c35b72f..e9624cb 100755
--- a/plugins/export/Makefile.dep
+++ b/plugins/export/Makefile.dep
@@ -17,23 +17,23 @@ init.o: ../../db/dbconn.h ../../db/dbtextstream.h ../../core/error.h
init.o: ../../db/dbitemquery.h ../../core/item.h ../../db/dbitemcolumns.h
init.o: ../../core/user.h ../../core/group.h ../../core/dircontainer.h
init.o: ../../core/ugcontainer.h ../../notify/notify.h
-init.o: ../../notify/notifypool.h ../../templates/misc.h
-init.o: ../../templates/localefilter.h ../../templates/locale.h
+init.o: ../../notify/notifypool.h ../../templates/patterns.h
+init.o: ../../templates/locale.h ../../templates/localefilter.h
init.o: ../../../ezc/src/ezc.h ../../../ezc/src/utf8.h
init.o: ../../../ezc/src/generator.h ../../../ezc/src/pattern.h
init.o: ../../../ezc/src/functions.h ../../../ezc/src/funinfo.h
-init.o: ../../../ezc/src/stringconv.h ../../templates/htmltextstream.h
-init.o: ../../notify/notifythread.h ../../core/basethread.h
-init.o: ../../core/synchro.h ../../notify/templatesnotify.h
-init.o: ../../core/config.h ../../core/users.h ../../core/ugcontainer.h
-init.o: ../../core/lastcontainer.h ../../core/mounts.h
-init.o: ../../core/mountparser.h ../../core/crypt.h ../../core/run.h
-init.o: ../../core/users.h ../../core/groups.h ../../core/group.h
-init.o: ../../core/loadavg.h ../../core/thumb.h ../../core/basethread.h
-init.o: ../../core/threadmanager.h ../../core/sessionmanager.h
-init.o: ../../core/sessioncontainer.h ../../functions/functions.h
-init.o: ../../functions/functionbase.h ../../core/request.h
-init.o: ../../core/system.h ../../core/synchro.h
+init.o: ../../../ezc/src/stringconv.h ../../notify/notifythread.h
+init.o: ../../core/basethread.h ../../core/synchro.h
+init.o: ../../notify/templatesnotify.h ../../core/config.h ../../core/users.h
+init.o: ../../core/ugcontainer.h ../../core/lastcontainer.h
+init.o: ../../templates/misc.h ../../templates/htmltextstream.h
+init.o: ../../core/mounts.h ../../core/mountparser.h ../../core/crypt.h
+init.o: ../../core/run.h ../../core/users.h ../../core/groups.h
+init.o: ../../core/group.h ../../core/loadavg.h ../../core/thumb.h
+init.o: ../../core/basethread.h ../../core/threadmanager.h
+init.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h
+init.o: ../../functions/functions.h ../../functions/functionbase.h
+init.o: ../../core/request.h ../../core/system.h ../../core/synchro.h
init.o: ../../functions/functionparser.h ../../core/cur.h
init.o: ../../functions/adduser.h ../../functions/cat.h
init.o: ../../functions/chmod.h ../../functions/privchanger.h
@@ -52,5 +52,6 @@ init.o: ../../functions/tinymce.h ../../functions/uname.h
init.o: ../../functions/upload.h ../../functions/uptime.h
init.o: ../../functions/who.h ../../functions/vim.h ../../core/htmlfilter.h
init.o: ../../templates/templates.h ../../templates/patterncacher.h
-init.o: ../../templates/indexpatterns.h ../../core/sessionmanager.h
+init.o: ../../templates/indexpatterns.h ../../templates/patterns.h
+init.o: ../../templates/changepatterns.h ../../core/sessionmanager.h
init.o: exportthread.h message.h
diff --git a/plugins/gallery/Makefile.dep b/plugins/gallery/Makefile.dep
index fb42434..fc4a139 100755
--- a/plugins/gallery/Makefile.dep
+++ b/plugins/gallery/Makefile.dep
@@ -16,20 +16,20 @@ gallery.o: ../../core/mount.h ../../templates/locale.h
gallery.o: ../../core/confparser.h ../../core/request.h ../../core/config.h
gallery.o: ../../core/system.h ../../core/dirs.h ../../core/dircontainer.h
gallery.o: ../../notify/notify.h ../../notify/notifypool.h
-gallery.o: ../../templates/misc.h ../../templates/localefilter.h
-gallery.o: ../../templates/locale.h ../../../ezc/src/ezc.h
+gallery.o: ../../templates/patterns.h ../../templates/locale.h
+gallery.o: ../../templates/localefilter.h ../../../ezc/src/ezc.h
gallery.o: ../../../ezc/src/utf8.h ../../../ezc/src/generator.h
gallery.o: ../../../ezc/src/pattern.h ../../../ezc/src/functions.h
gallery.o: ../../../ezc/src/funinfo.h ../../../ezc/src/stringconv.h
-gallery.o: ../../templates/htmltextstream.h ../../notify/notifythread.h
-gallery.o: ../../core/basethread.h ../../core/synchro.h
-gallery.o: ../../notify/templatesnotify.h ../../core/users.h
-gallery.o: ../../core/ugcontainer.h ../../core/lastcontainer.h
-gallery.o: ../../core/mounts.h ../../core/mountparser.h ../../core/crypt.h
-gallery.o: ../../core/run.h ../../core/users.h ../../core/groups.h
-gallery.o: ../../core/group.h ../../core/loadavg.h ../../core/thumb.h
-gallery.o: ../../core/basethread.h ../../core/threadmanager.h
-gallery.o: ../../core/synchro.h galleryinfo.h
+gallery.o: ../../notify/notifythread.h ../../core/basethread.h
+gallery.o: ../../core/synchro.h ../../notify/templatesnotify.h
+gallery.o: ../../core/users.h ../../core/ugcontainer.h
+gallery.o: ../../core/lastcontainer.h ../../templates/misc.h
+gallery.o: ../../templates/htmltextstream.h ../../core/mounts.h
+gallery.o: ../../core/mountparser.h ../../core/crypt.h ../../core/run.h
+gallery.o: ../../core/users.h ../../core/groups.h ../../core/group.h
+gallery.o: ../../core/loadavg.h ../../core/thumb.h ../../core/basethread.h
+gallery.o: ../../core/threadmanager.h ../../core/synchro.h galleryinfo.h
galleryinfo.o: galleryinfo.h ../../core/item.h
init.o: gallery.h ../../functions/functionbase.h ../../core/item.h
init.o: ../../db/db.h ../../db/dbbase.h ../../db/dbconn.h
@@ -46,25 +46,25 @@ init.o: ../../core/rebus.h ../../core/mount.h ../../templates/locale.h
init.o: ../../core/confparser.h ../../core/request.h ../../core/config.h
init.o: ../../core/system.h ../../core/dirs.h ../../core/dircontainer.h
init.o: ../../notify/notify.h ../../notify/notifypool.h
-init.o: ../../templates/misc.h ../../templates/localefilter.h
-init.o: ../../templates/locale.h ../../../ezc/src/ezc.h
+init.o: ../../templates/patterns.h ../../templates/locale.h
+init.o: ../../templates/localefilter.h ../../../ezc/src/ezc.h
init.o: ../../../ezc/src/utf8.h ../../../ezc/src/generator.h
init.o: ../../../ezc/src/pattern.h ../../../ezc/src/functions.h
init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/stringconv.h
-init.o: ../../templates/htmltextstream.h ../../notify/notifythread.h
-init.o: ../../core/basethread.h ../../core/synchro.h
-init.o: ../../notify/templatesnotify.h ../../core/users.h
-init.o: ../../core/ugcontainer.h ../../core/lastcontainer.h
-init.o: ../../core/mounts.h ../../core/mountparser.h ../../core/crypt.h
-init.o: ../../core/run.h ../../core/users.h ../../core/groups.h
-init.o: ../../core/group.h ../../core/loadavg.h ../../core/thumb.h
-init.o: ../../core/basethread.h ../../core/threadmanager.h
-init.o: ../../core/synchro.h galleryinfo.h ../../core/log.h
-init.o: ../../core/plugin.h ../../core/pluginmsg.h ../../core/system.h
-init.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h
-init.o: ../../functions/functions.h ../../functions/functionbase.h
-init.o: ../../functions/functionparser.h ../../core/cur.h
-init.o: ../../functions/adduser.h ../../functions/cat.h
+init.o: ../../notify/notifythread.h ../../core/basethread.h
+init.o: ../../core/synchro.h ../../notify/templatesnotify.h
+init.o: ../../core/users.h ../../core/ugcontainer.h
+init.o: ../../core/lastcontainer.h ../../templates/misc.h
+init.o: ../../templates/htmltextstream.h ../../core/mounts.h
+init.o: ../../core/mountparser.h ../../core/crypt.h ../../core/run.h
+init.o: ../../core/users.h ../../core/groups.h ../../core/group.h
+init.o: ../../core/loadavg.h ../../core/thumb.h ../../core/basethread.h
+init.o: ../../core/threadmanager.h ../../core/synchro.h galleryinfo.h
+init.o: ../../core/log.h ../../core/plugin.h ../../core/pluginmsg.h
+init.o: ../../core/system.h ../../core/sessionmanager.h
+init.o: ../../core/sessioncontainer.h ../../functions/functions.h
+init.o: ../../functions/functionbase.h ../../functions/functionparser.h
+init.o: ../../core/cur.h ../../functions/adduser.h ../../functions/cat.h
init.o: ../../functions/chmod.h ../../functions/privchanger.h
init.o: ../../functions/chown.h ../../functions/ckeditor.h
init.o: ../../functions/cp.h ../../functions/default.h
@@ -81,7 +81,8 @@ init.o: ../../functions/tinymce.h ../../functions/uname.h
init.o: ../../functions/upload.h ../../functions/uptime.h
init.o: ../../functions/who.h ../../functions/vim.h ../../core/htmlfilter.h
init.o: ../../templates/templates.h ../../templates/patterncacher.h
-init.o: ../../templates/indexpatterns.h ../../core/sessionmanager.h
+init.o: ../../templates/indexpatterns.h ../../templates/patterns.h
+init.o: ../../templates/changepatterns.h ../../core/sessionmanager.h
templates.o: gallery.h ../../functions/functionbase.h ../../core/item.h
templates.o: ../../db/db.h ../../db/dbbase.h ../../db/dbconn.h
templates.o: ../../db/dbtextstream.h ../../core/textstream.h
@@ -99,25 +100,25 @@ templates.o: ../../core/mount.h ../../templates/locale.h
templates.o: ../../core/confparser.h ../../core/request.h ../../core/config.h
templates.o: ../../core/system.h ../../core/dirs.h ../../core/dircontainer.h
templates.o: ../../notify/notify.h ../../notify/notifypool.h
-templates.o: ../../templates/misc.h ../../templates/localefilter.h
-templates.o: ../../templates/locale.h ../../../ezc/src/ezc.h
+templates.o: ../../templates/patterns.h ../../templates/locale.h
+templates.o: ../../templates/localefilter.h ../../../ezc/src/ezc.h
templates.o: ../../../ezc/src/utf8.h ../../../ezc/src/generator.h
templates.o: ../../../ezc/src/pattern.h ../../../ezc/src/functions.h
templates.o: ../../../ezc/src/funinfo.h ../../../ezc/src/stringconv.h
-templates.o: ../../templates/htmltextstream.h ../../notify/notifythread.h
-templates.o: ../../core/basethread.h ../../core/synchro.h
-templates.o: ../../notify/templatesnotify.h ../../core/users.h
-templates.o: ../../core/ugcontainer.h ../../core/lastcontainer.h
-templates.o: ../../core/mounts.h ../../core/mountparser.h ../../core/crypt.h
-templates.o: ../../core/run.h ../../core/users.h ../../core/groups.h
-templates.o: ../../core/group.h ../../core/loadavg.h ../../core/thumb.h
-templates.o: ../../core/basethread.h ../../core/threadmanager.h
-templates.o: ../../core/synchro.h galleryinfo.h ../../core/misc.h
-templates.o: ../../core/plugin.h ../../core/pluginmsg.h ../../core/system.h
-templates.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h
-templates.o: ../../functions/functions.h ../../functions/functionbase.h
-templates.o: ../../functions/functionparser.h ../../core/cur.h
-templates.o: ../../functions/adduser.h ../../functions/cat.h
+templates.o: ../../notify/notifythread.h ../../core/basethread.h
+templates.o: ../../core/synchro.h ../../notify/templatesnotify.h
+templates.o: ../../core/users.h ../../core/ugcontainer.h
+templates.o: ../../core/lastcontainer.h ../../templates/misc.h
+templates.o: ../../templates/htmltextstream.h ../../core/mounts.h
+templates.o: ../../core/mountparser.h ../../core/crypt.h ../../core/run.h
+templates.o: ../../core/users.h ../../core/groups.h ../../core/group.h
+templates.o: ../../core/loadavg.h ../../core/thumb.h ../../core/basethread.h
+templates.o: ../../core/threadmanager.h ../../core/synchro.h galleryinfo.h
+templates.o: ../../core/misc.h ../../core/plugin.h ../../core/pluginmsg.h
+templates.o: ../../core/system.h ../../core/sessionmanager.h
+templates.o: ../../core/sessioncontainer.h ../../functions/functions.h
+templates.o: ../../functions/functionbase.h ../../functions/functionparser.h
+templates.o: ../../core/cur.h ../../functions/adduser.h ../../functions/cat.h
templates.o: ../../functions/chmod.h ../../functions/privchanger.h
templates.o: ../../functions/chown.h ../../functions/ckeditor.h
templates.o: ../../functions/cp.h ../../functions/default.h
@@ -136,4 +137,5 @@ templates.o: ../../functions/upload.h ../../functions/uptime.h
templates.o: ../../functions/who.h ../../functions/vim.h
templates.o: ../../core/htmlfilter.h ../../templates/templates.h
templates.o: ../../templates/patterncacher.h ../../templates/indexpatterns.h
+templates.o: ../../templates/patterns.h ../../templates/changepatterns.h
templates.o: ../../core/sessionmanager.h
diff --git a/plugins/groupitem/Makefile.dep b/plugins/groupitem/Makefile.dep
index 7e18ad1..b2662df 100755
--- a/plugins/groupitem/Makefile.dep
+++ b/plugins/groupitem/Makefile.dep
@@ -1,37 +1,67 @@
# DO NOT DELETE
-init.o: ../../core/log.h ../../core/textstream.h ../../core/misc.h
-init.o: ../../core/item.h ../../core/requesttypes.h
-init.o: ../../core/logmanipulators.h ../../core/slog.h ../../core/cur.h
-init.o: ../../core/request.h ../../core/error.h ../../core/config.h
-init.o: ../../core/confparser.h ../../core/htmlfilter.h
+groupinfo.o: groupinfo.h groups.h ../../core/confparser.h ../../core/item.h
+groupinfo.o: ../../core/system.h ../../core/dirs.h ../../core/item.h
+groupinfo.o: ../../core/dircontainer.h ../../db/db.h ../../db/dbbase.h
+groupinfo.o: ../../db/dbconn.h ../../db/dbtextstream.h
+groupinfo.o: ../../core/textstream.h ../../core/misc.h
+groupinfo.o: ../../core/requesttypes.h ../../core/error.h
+groupinfo.o: ../../db/dbitemquery.h ../../db/dbitemcolumns.h
+groupinfo.o: ../../core/user.h ../../core/group.h ../../core/dircontainer.h
+groupinfo.o: ../../core/ugcontainer.h ../../core/log.h
+groupinfo.o: ../../core/textstream.h ../../core/logmanipulators.h
+groupinfo.o: ../../core/slog.h ../../core/cur.h ../../core/request.h
+groupinfo.o: ../../core/error.h ../../core/config.h ../../core/confparser.h
+groupinfo.o: ../../core/htmlfilter.h ../../templates/htmltextstream.h
+groupinfo.o: ../../core/session.h ../../core/user.h ../../core/plugindata.h
+groupinfo.o: ../../core/rebus.h ../../core/mount.h ../../templates/locale.h
+groupinfo.o: ../../notify/notify.h ../../notify/notifypool.h
+groupinfo.o: ../../templates/patterns.h ../../templates/locale.h
+groupinfo.o: ../../templates/localefilter.h ../../../ezc/src/ezc.h
+groupinfo.o: ../../../ezc/src/utf8.h ../../../ezc/src/generator.h
+groupinfo.o: ../../../ezc/src/pattern.h ../../../ezc/src/functions.h
+groupinfo.o: ../../../ezc/src/funinfo.h ../../../ezc/src/stringconv.h
+groupinfo.o: ../../notify/notifythread.h ../../core/basethread.h
+groupinfo.o: ../../core/synchro.h ../../notify/templatesnotify.h
+groupinfo.o: ../../core/config.h ../../core/users.h ../../core/ugcontainer.h
+groupinfo.o: ../../core/lastcontainer.h ../../templates/misc.h
+groupinfo.o: ../../templates/htmltextstream.h ../../core/mounts.h
+groupinfo.o: ../../core/mountparser.h ../../core/crypt.h ../../core/run.h
+groupinfo.o: ../../core/users.h ../../core/loadavg.h ../../core/thumb.h
+groupinfo.o: ../../core/basethread.h ../../core/threadmanager.h
+groupinfo.o: ../../core/log.h
+groups.o: groups.h ../../core/log.h
+init.o: ../../core/log.h ../../core/plugin.h ../../core/pluginmsg.h
+init.o: ../../core/log.h ../../core/textstream.h ../../core/logmanipulators.h
+init.o: ../../core/slog.h ../../core/cur.h ../../core/request.h
+init.o: ../../core/requesttypes.h ../../core/item.h ../../core/error.h
+init.o: ../../core/config.h ../../core/confparser.h ../../core/htmlfilter.h
init.o: ../../templates/htmltextstream.h ../../core/textstream.h
-init.o: ../../core/session.h ../../core/user.h ../../core/plugindata.h
-init.o: ../../core/rebus.h ../../core/mount.h ../../templates/locale.h
-init.o: ../../core/confparser.h ../../core/plugin.h ../../core/pluginmsg.h
-init.o: ../../core/log.h ../../core/system.h ../../core/dirs.h
-init.o: ../../core/dircontainer.h ../../db/db.h ../../db/dbbase.h
-init.o: ../../db/dbconn.h ../../db/dbtextstream.h ../../core/error.h
-init.o: ../../db/dbitemquery.h ../../core/item.h ../../db/dbitemcolumns.h
-init.o: ../../core/user.h ../../core/group.h ../../core/dircontainer.h
-init.o: ../../core/ugcontainer.h ../../notify/notify.h
-init.o: ../../notify/notifypool.h ../../templates/misc.h
-init.o: ../../templates/localefilter.h ../../templates/locale.h
-init.o: ../../../ezc/src/ezc.h ../../../ezc/src/utf8.h
-init.o: ../../../ezc/src/generator.h ../../../ezc/src/pattern.h
-init.o: ../../../ezc/src/functions.h ../../../ezc/src/funinfo.h
-init.o: ../../../ezc/src/stringconv.h ../../templates/htmltextstream.h
+init.o: ../../core/misc.h ../../core/session.h ../../core/user.h
+init.o: ../../core/plugindata.h ../../core/rebus.h ../../core/mount.h
+init.o: ../../templates/locale.h ../../core/confparser.h ../../core/system.h
+init.o: ../../core/dirs.h ../../core/dircontainer.h ../../db/db.h
+init.o: ../../db/dbbase.h ../../db/dbconn.h ../../db/dbtextstream.h
+init.o: ../../core/error.h ../../db/dbitemquery.h ../../core/item.h
+init.o: ../../db/dbitemcolumns.h ../../core/user.h ../../core/group.h
+init.o: ../../core/dircontainer.h ../../core/ugcontainer.h
+init.o: ../../notify/notify.h ../../notify/notifypool.h
+init.o: ../../templates/patterns.h ../../templates/locale.h
+init.o: ../../templates/localefilter.h ../../../ezc/src/ezc.h
+init.o: ../../../ezc/src/utf8.h ../../../ezc/src/generator.h
+init.o: ../../../ezc/src/pattern.h ../../../ezc/src/functions.h
+init.o: ../../../ezc/src/funinfo.h ../../../ezc/src/stringconv.h
init.o: ../../notify/notifythread.h ../../core/basethread.h
init.o: ../../core/synchro.h ../../notify/templatesnotify.h
init.o: ../../core/config.h ../../core/users.h ../../core/ugcontainer.h
-init.o: ../../core/lastcontainer.h ../../core/mounts.h
+init.o: ../../core/lastcontainer.h ../../templates/misc.h
+init.o: ../../templates/htmltextstream.h ../../core/mounts.h
init.o: ../../core/mountparser.h ../../core/crypt.h ../../core/run.h
-init.o: ../../core/users.h ../../core/groups.h ../../core/group.h
-init.o: ../../core/loadavg.h ../../core/thumb.h ../../core/basethread.h
-init.o: ../../core/threadmanager.h ../../core/sessionmanager.h
-init.o: ../../core/sessioncontainer.h ../../functions/functions.h
-init.o: ../../functions/functionbase.h ../../core/request.h
-init.o: ../../core/system.h ../../core/synchro.h
+init.o: ../../core/users.h groups.h ../../core/loadavg.h ../../core/thumb.h
+init.o: ../../core/basethread.h ../../core/threadmanager.h
+init.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h
+init.o: ../../functions/functions.h ../../functions/functionbase.h
+init.o: ../../core/request.h ../../core/system.h ../../core/synchro.h
init.o: ../../functions/functionparser.h ../../core/cur.h
init.o: ../../functions/adduser.h ../../functions/cat.h
init.o: ../../functions/chmod.h ../../functions/privchanger.h
@@ -50,7 +80,9 @@ init.o: ../../functions/tinymce.h ../../functions/uname.h
init.o: ../../functions/upload.h ../../functions/uptime.h
init.o: ../../functions/who.h ../../functions/vim.h ../../core/htmlfilter.h
init.o: ../../templates/templates.h ../../templates/patterncacher.h
-init.o: ../../templates/indexpatterns.h ../../core/sessionmanager.h
+init.o: ../../templates/indexpatterns.h ../../templates/patterns.h
+init.o: ../../templates/changepatterns.h ../../core/sessionmanager.h
+init.o: groupinfo.h
templates.o: ../../templates/templates.h ../../../ezc/src/ezc.h
templates.o: ../../../ezc/src/utf8.h ../../../ezc/src/generator.h
templates.o: ../../../ezc/src/pattern.h ../../core/item.h
@@ -58,49 +90,52 @@ templates.o: ../../../ezc/src/functions.h ../../../ezc/src/funinfo.h
templates.o: ../../../ezc/src/stringconv.h ../../core/misc.h
templates.o: ../../core/requesttypes.h ../../templates/patterncacher.h
templates.o: ../../core/item.h ../../templates/indexpatterns.h
-templates.o: ../../templates/localefilter.h ../../templates/locale.h
-templates.o: ../../core/config.h ../../templates/htmltextstream.h
-templates.o: ../../core/cur.h ../../core/system.h ../../core/sessionmanager.h
-templates.o: ../../core/htmlfilter.h ../../db/db.h ../../db/dbbase.h
-templates.o: ../../db/dbconn.h ../../db/dbtextstream.h
+templates.o: ../../templates/patterns.h ../../templates/locale.h
+templates.o: ../../templates/changepatterns.h
+templates.o: ../../templates/htmltextstream.h ../../templates/localefilter.h
+templates.o: ../../core/config.h ../../core/cur.h ../../core/system.h
+templates.o: ../../core/dirs.h ../../core/dircontainer.h ../../db/db.h
+templates.o: ../../db/dbbase.h ../../db/dbconn.h ../../db/dbtextstream.h
templates.o: ../../core/textstream.h ../../core/error.h
templates.o: ../../db/dbitemquery.h ../../db/dbitemcolumns.h
templates.o: ../../core/user.h ../../core/group.h ../../core/dircontainer.h
-templates.o: ../../core/ugcontainer.h ../../core/log.h ../../core/plugin.h
-templates.o: ../../core/pluginmsg.h ../../core/plugindata.h
-templates.o: ../../core/config.h ../../core/confparser.h
-templates.o: ../../core/htmlfilter.h ../../core/request.h ../../core/error.h
-templates.o: ../../core/textstream.h ../../templates/htmltextstream.h
-templates.o: ../../core/system.h ../../core/dirs.h ../../core/dircontainer.h
-templates.o: ../../notify/notify.h ../../notify/notifypool.h
-templates.o: ../../templates/locale.h ../../core/confparser.h
-templates.o: ../../templates/misc.h ../../notify/notifythread.h
-templates.o: ../../core/basethread.h ../../core/synchro.h
-templates.o: ../../notify/templatesnotify.h ../../core/users.h
-templates.o: ../../core/user.h ../../core/ugcontainer.h
-templates.o: ../../core/lastcontainer.h ../../core/cur.h ../../core/session.h
-templates.o: ../../core/rebus.h ../../core/mount.h ../../core/mounts.h
-templates.o: ../../core/mountparser.h ../../core/crypt.h ../../core/run.h
-templates.o: ../../core/users.h ../../core/groups.h ../../core/group.h
+templates.o: ../../core/ugcontainer.h ../../core/log.h
+templates.o: ../../core/textstream.h ../../core/logmanipulators.h
+templates.o: ../../core/slog.h ../../core/cur.h ../../core/request.h
+templates.o: ../../core/error.h ../../core/config.h ../../core/confparser.h
+templates.o: ../../core/htmlfilter.h ../../templates/htmltextstream.h
+templates.o: ../../core/session.h ../../core/user.h ../../core/plugindata.h
+templates.o: ../../core/rebus.h ../../core/mount.h ../../templates/locale.h
+templates.o: ../../core/confparser.h ../../notify/notify.h
+templates.o: ../../notify/notifypool.h ../../templates/patterns.h
+templates.o: ../../notify/notifythread.h ../../core/basethread.h
+templates.o: ../../core/synchro.h ../../notify/templatesnotify.h
+templates.o: ../../core/users.h ../../core/ugcontainer.h
+templates.o: ../../core/lastcontainer.h ../../templates/misc.h
+templates.o: ../../core/mounts.h ../../core/mountparser.h ../../core/crypt.h
+templates.o: ../../core/run.h ../../core/users.h groups.h
templates.o: ../../core/loadavg.h ../../core/thumb.h ../../core/basethread.h
templates.o: ../../core/threadmanager.h ../../core/sessionmanager.h
-templates.o: ../../core/sessioncontainer.h ../../functions/functions.h
-templates.o: ../../functions/functionbase.h ../../core/request.h
-templates.o: ../../core/synchro.h ../../functions/functionparser.h
-templates.o: ../../functions/adduser.h ../../functions/cat.h
-templates.o: ../../functions/chmod.h ../../functions/privchanger.h
-templates.o: ../../functions/chown.h ../../functions/ckeditor.h
-templates.o: ../../functions/cp.h ../../functions/default.h
-templates.o: ../../functions/download.h ../../functions/emacs.h
-templates.o: ../../functions/last.h ../../functions/login.h
-templates.o: ../../functions/logout.h ../../functions/ln.h
-templates.o: ../../functions/ls.h ../../functions/mkdir.h
-templates.o: ../../functions/mv.h ../../functions/nicedit.h
-templates.o: ../../functions/node.h ../../functions/passwd.h
-templates.o: ../../functions/priv.h ../../functions/reload.h
-templates.o: ../../functions/rm.h ../../functions/sort.h
-templates.o: ../../functions/specialdefault.h ../../functions/stat.h
-templates.o: ../../functions/subject.h ../../functions/template.h
-templates.o: ../../functions/tinymce.h ../../functions/uname.h
-templates.o: ../../functions/upload.h ../../functions/uptime.h
-templates.o: ../../functions/who.h ../../functions/vim.h
+templates.o: ../../core/htmlfilter.h ../../core/plugin.h
+templates.o: ../../core/pluginmsg.h ../../core/system.h
+templates.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h
+templates.o: ../../functions/functions.h ../../functions/functionbase.h
+templates.o: ../../core/request.h ../../core/synchro.h
+templates.o: ../../functions/functionparser.h ../../functions/adduser.h
+templates.o: ../../functions/cat.h ../../functions/chmod.h
+templates.o: ../../functions/privchanger.h ../../functions/chown.h
+templates.o: ../../functions/ckeditor.h ../../functions/cp.h
+templates.o: ../../functions/default.h ../../functions/download.h
+templates.o: ../../functions/emacs.h ../../functions/last.h
+templates.o: ../../functions/login.h ../../functions/logout.h
+templates.o: ../../functions/ln.h ../../functions/ls.h
+templates.o: ../../functions/mkdir.h ../../functions/mv.h
+templates.o: ../../functions/nicedit.h ../../functions/node.h
+templates.o: ../../functions/passwd.h ../../functions/priv.h
+templates.o: ../../functions/reload.h ../../functions/rm.h
+templates.o: ../../functions/sort.h ../../functions/specialdefault.h
+templates.o: ../../functions/stat.h ../../functions/subject.h
+templates.o: ../../functions/template.h ../../functions/tinymce.h
+templates.o: ../../functions/uname.h ../../functions/upload.h
+templates.o: ../../functions/uptime.h ../../functions/who.h
+templates.o: ../../functions/vim.h groupinfo.h
diff --git a/plugins/groupitem/Makefile.o.dep b/plugins/groupitem/Makefile.o.dep
index e9002ba..1854e6f 100755
--- a/plugins/groupitem/Makefile.o.dep
+++ b/plugins/groupitem/Makefile.o.dep
@@ -1 +1 @@
-o = init.o templates.o
+o = groupinfo.o groups.o init.o templates.o
diff --git a/plugins/groupitem/groupinfo.cpp b/plugins/groupitem/groupinfo.cpp
new file mode 100755
index 0000000..222728f
--- /dev/null
+++ b/plugins/groupitem/groupinfo.cpp
@@ -0,0 +1,203 @@
+/*
+ * This file is a part of Winix
+ * and is not publicly distributed
+ *
+ * Copyright (c) 2011, Tomasz Sowa
+ * All rights reserved.
+ *
+ */
+
+#include "groupinfo.h"
+#include "core/log.h"
+#include "core/system.h"
+
+
+
+namespace GroupItem
+{
+
+
+GroupInfo::GroupInfo()
+{
+ mount_par_group_conf = -1;
+ mount_par_group_lang_conf = -1;
+}
+
+
+void GroupInfo::SetSystem(System * psystem)
+{
+ system = psystem;
+}
+
+
+Groups * GroupInfo::FindGroups(long dir_id)
+{
+ GroupsWrap::iterator i = groups_wrap.find(dir_id);
+
+ if( i == groups_wrap.end() )
+ return 0;
+
+ return &(i->second.groups);
+}
+
+
+
+bool GroupInfo::ParseGroups(const std::wstring & str, Groups & groups)
+{
+ groups.Clear();
+
+ if( conf_parser.ParseString(str) == ConfParser::ok )
+ {
+ ConfParser::Table::iterator i;
+
+ for(i=conf_parser.table.begin() ; i!=conf_parser.table.end() ; ++i)
+ {
+ groups.AddGroup();
+ log << log1 << "stworzylem nowa grupe" << logend;
+
+ for(size_t a=0 ; asecond.size() ; ++a)
+ {
+ groups.AddPath(i->second[a]);
+ log << log1 << " dodalem sciezke: " << i->second[a] << logend;
+ }
+ }
+ }
+
+return conf_parser.status == ConfParser::ok;
+}
+
+
+void GroupInfo::MarkAllGroupsToDelete()
+{
+ GroupsWrap::iterator i = groups_wrap.begin();
+
+ for( ; i != groups_wrap.end() ; ++i)
+ i->second.to_delete = true;
+}
+
+
+
+
+void GroupInfo::DeleteAllMarkedGroups()
+{
+ GroupsWrap::iterator inext;
+ GroupsWrap::iterator i = groups_wrap.begin();
+
+ while( i != groups_wrap.end() )
+ {
+ inext = i;
+ ++inext;
+
+ if( i->second.to_delete )
+ {
+ log << log3 << "GroupItem: deleting group for dir id: " << i->first << logend;
+ groups_wrap.erase(i);
+ }
+
+ i = inext;
+ }
+}
+
+
+
+bool GroupInfo::GetConfContent(const std::wstring & path)
+{
+ int status = system->FollowAllLinks(path, config_dir_tab, config_file, false, false, false);
+
+ if( status != 1 )
+ {
+ log << log1 << "GroupItem: problem with reading a config file: " << path << ", status: " << status << logend;
+ return false;
+ }
+
+return true;
+}
+
+
+
+
+// if skip_existing_configs is true then only new config files will be parsed
+void GroupInfo::ReadGroupsConf(Mounts & mounts, bool skip_existing_configs)
+{
+ Mounts::MountTab::const_iterator i;
+ const Mounts::MountTab * mtab = mounts.GetMountTab();
+
+ // loop through all mount points
+ for(i=mtab->begin() ; i!=mtab->end() ; ++i)
+ {
+ const Mount & mount = i->second;
+
+ if( mount.param[mount_par_group_conf].defined &&
+ mount.param[mount_par_group_conf].arg.size() == 1 )
+ {
+ const std::wstring & file_name = mount.param[mount_par_group_conf].arg[0];
+ GroupsWrap::iterator c = groups_wrap.find(mount.dir_id);
+ bool exists = (c != groups_wrap.end() && c->second.file_name == file_name);
+
+ if( exists )
+ c->second.to_delete = false;
+
+ if( !(skip_existing_configs && exists) )
+ {
+ if( GetConfContent(file_name) )
+ {
+ log << log3 << "GroupItem: parsing conf file: " << config_file.url << logend;
+ groups_wrap[mount.dir_id].file_name = file_name;
+
+ if( !ParseGroups(config_file.content, groups_wrap[mount.dir_id].groups) )
+ groups_wrap[mount.dir_id].to_delete = true;
+ }
+ else
+ {
+ if( exists )
+ c->second.to_delete = true;
+ }
+ }
+ }
+ }
+}
+
+
+
+// if skip_existing_configs is true then only new config files will be parsed
+void GroupInfo::ReadGroupsConfigs(bool skip_existing_configs)
+{
+ MarkAllGroupsToDelete();
+ ReadGroupsConf(system->mounts, skip_existing_configs);
+ DeleteAllMarkedGroups();
+}
+
+
+
+void GroupInfo::PrintGroups()
+{
+ GroupsWrap::iterator i = groups_wrap.begin();
+
+ for( ; i != groups_wrap.end() ; ++i)
+ {
+ log << "grupy dla dir_id: " << i->first << logend;
+
+ Groups & g = i->second.groups;
+
+ log << "rozmiar: " << g.Size() << logend;
+
+ for(size_t a=0 ; a
+#include
+#include "groups.h"
+#include "core/confparser.h"
+#include "core/item.h"
+#include "core/system.h"
+
+
+
+
+namespace GroupItem
+{
+
+struct GroupsWrapItem
+{
+ bool to_delete;
+ std::wstring file_name;
+ Groups groups;
+
+ GroupsWrapItem()
+ {
+ to_delete = false;
+ }
+};
+
+
+
+
+class GroupInfo
+{
+
+public:
+
+
+ GroupInfo();
+
+ void SetSystem(System * psystem);
+ void ReadGroupsConfigs(bool skip_existing_configs);
+ Groups * FindGroups(long dir_id); // can return a null pointer
+
+
+ int mount_par_group_conf;
+ int mount_par_group_lang_conf;
+
+ void PrintGroups();
+
+
+private:
+
+ System * system;
+
+ // map[dir_id] -> GroupsWrap
+ typedef std::map GroupsWrap;
+ GroupsWrap groups_wrap;
+
+ ConfParser conf_parser;
+ std::vector- config_dir_tab;
+ Item config_file;
+
+ void MarkAllGroupsToDelete();
+ void DeleteAllMarkedGroups();
+ bool GetConfContent(const std::wstring & path);
+ bool ParseGroupsConf(long mount_dir_id, const std::wstring & path);
+ bool ParseGroups(const std::wstring & str, Groups & groups);
+ void ReadGroupsConf(Mounts & mounts, bool skip_existing_configs);
+};
+
+
+}
+
+
+#endif
diff --git a/plugins/groupitem/groups.cpp b/plugins/groupitem/groups.cpp
new file mode 100755
index 0000000..ab33179
--- /dev/null
+++ b/plugins/groupitem/groups.cpp
@@ -0,0 +1,119 @@
+/*
+ * This file is a part of Winix
+ * and is not publicly distributed
+ *
+ * Copyright (c) 2011, Tomasz Sowa
+ * All rights reserved.
+ *
+ */
+
+#include "groups.h"
+#include "core/log.h"
+
+
+
+namespace GroupItem
+{
+
+
+size_t Groups::AddGroup()
+{
+ groups_tab.push_back(paths_names.size());
+
+return groups_tab.size()-1;
+}
+
+
+void Groups::AddPath(const std::wstring & path)
+{
+ if( groups_tab.empty() )
+ {
+ log << log1 << "GroupItem: cannot add a path (there are not any groups)" << logend;
+ return;
+ }
+
+ size_t group_index = groups_tab.size()-1;
+ std::pair res = paths_map.insert(std::make_pair(path, group_index));
+
+ if( !res.second )
+ return;
+
+ paths_names.push_back(&(res.first->first));
+}
+
+
+
+size_t Groups::Find(const std::wstring & path)
+{
+ log << "mapa: " << logend;
+
+ PathsMap::iterator a = paths_map.begin();
+
+ for( ; a != paths_map.end() ; ++a )
+ {
+ log << a->first << " -> " << a->second << logend;
+ }
+
+
+
+
+ PathsMap::iterator i = paths_map.find(path);
+
+ if( i == paths_map.end() )
+ return groups_tab.size();
+
+return i->second;
+}
+
+
+
+size_t Groups::Size()
+{
+ return groups_tab.size();
+}
+
+
+size_t Groups::GroupSize(size_t group_index)
+{
+ if( group_index >= groups_tab.size() )
+ return 0;
+
+ if( group_index+1 == groups_tab.size() )
+ return paths_names.size() - groups_tab[group_index];
+
+return groups_tab[group_index+1] - groups_tab[group_index];
+}
+
+
+const std::wstring & Groups::GroupPath(size_t group_index, size_t path_index)
+{
+ if( group_index >= groups_tab.size() )
+ return empty_str;
+
+ size_t index = groups_tab[group_index] + path_index;
+
+ if( index >= paths_names.size() )
+ return empty_str;
+
+return *paths_names[index];
+}
+
+
+
+
+void Groups::Clear()
+{
+ paths_map.clear();
+ groups_tab.clear();
+ paths_names.clear();
+}
+
+
+
+
+
+
+
+}
+
+
diff --git a/plugins/groupitem/groups.h b/plugins/groupitem/groups.h
new file mode 100755
index 0000000..c6a4f3c
--- /dev/null
+++ b/plugins/groupitem/groups.h
@@ -0,0 +1,105 @@
+/*
+ * This file is a part of Winix
+ * and is not publicly distributed
+ *
+ * Copyright (c) 2011, Tomasz Sowa
+ * All rights reserved.
+ *
+ */
+
+#ifndef headerfile_winix_plugins_groupitem_groups
+#define headerfile_winix_plugins_groupitem_groups
+
+#include
\n");
}
-/*
-std::wstring HtmlEscapeFormTxt(const std::wstring & in)
-{
- TextStream out;
-
- HtmlEscapeFormTxt(out, in);
-
-return out.Str();
-}
-*/
+
void print_date_nice(Info & i, const tm & rtm)
diff --git a/templates/misc.h b/templates/misc.h
index 62eee8d..b3f4209 100755
--- a/templates/misc.h
+++ b/templates/misc.h
@@ -16,11 +16,14 @@
#include "localefilter.h"
#include "ezc.h"
#include "htmltextstream.h"
-#include "core/user.h"
+
+class User;
namespace TemplatesFunctions
{
+
+
typedef Ezc::Functions EzcFun;
typedef Ezc::Generator EzcGen;
typedef Ezc::FunInfo Info;
@@ -32,54 +35,13 @@ HtmlTextStream::RawText R(const RawType & par)
}
-
-//void HtmlEscape(TextStream & out, const std::wstring & in);
void HtmlEscapeFormTxt(HtmlTextStream & out, const std::wstring & in);
-//std::wstring HtmlEscape(const std::wstring & in);
-//std::wstring HtmlEscapeFormTxt(const std::wstring & in);
-
-// table: [language][file]
-typedef std::vector > Patterns;
void print_date_nice(Info & i, const tm & rtm);
void print_user_name(Info & i, const User * puser, const std::wstring & guest_name);
-
-
-
-
-
-// those functions from here are used in the second thread too
-
-template
-void Read(Patterns & patterns, size_t pat, Locale & locale, LocaleFilter & locale_filter,
- Ezc::Functions & ezc_fun, const wchar_t * file, bool read_file_as_utf8,
- const std::wstring & templates_dir, const std::wstring & templates_dir_default,
- bool delete_white = false)
-{
- size_t i;
- size_t len = patterns.size();
-
- for(i=0 ; i 0 && pat_tab[i].file_name == file_name )
+ {
+ pat_tab[i].references += 1;
+ return i;
+ }
+ }
+
+ template_temp.to_delete = false;
+ template_temp.file_name = file_name;
+ template_temp.references = 1;
+ template_temp.patterns.clear();
+ pat_tab.push_back(template_temp);
+
+ if( read_pattern )
+ ReadPatterns(pat_tab.back());
+
+return pat_tab.size()-1;
+}
+
+
+size_t Patterns::Add(const std::wstring & file_name, bool read_pattern)
+{
+ return Add(file_name.c_str(), read_pattern);
+}
+
+
+
+void Patterns::ReadPatterns(Template & templ)
+{
+ size_t len = locale->Size();
+ templ.patterns.resize(len);
+
+ for(size_t i=0 ; iFilter(templ.patterns[i], *locale, i);
+ }
+}
+
+
+
+Ezc::Pattern * Patterns::Get(size_t index, size_t lang)
+{
+ if( index >= pat_tab.size() || pat_tab[index].references == 0 || lang >= pat_tab[index].patterns.size() )
+ return 0;
+
+return &pat_tab[index].patterns[lang];
+}
+
+
+const std::wstring & Patterns::GetFileName(size_t index)
+{
+ if( index >= pat_tab.size() || pat_tab[index].references == 0 )
+ return empty_str;
+
+return pat_tab[index].file_name;
+}
+
+
+void Patterns::Reload()
+{
+ for(size_t i=0 ; i 0 )
+ ReadPatterns(pat_tab[i]);
+}
+
+
+void Patterns::Clear()
+{
+ pat_tab.clear();
+}
+
+
+void Patterns::Erase(size_t index)
+{
+ if( index < pat_tab.size() )
+ {
+ pat_tab[index].references -= 1;
+
+ if( pat_tab[index].references == 0 )
+ {
+ log << log3 << "Patterns: removing pattern: " << pat_tab[index].file_name << logend;
+
+ pat_tab[index].file_name.clear();
+ pat_tab[index].patterns.clear();
+ // don't erase pat_tab.erase() here
+ // because indexes would be invalidated
+ // those gaps will be cleared when Clear() method is called
+ // normally in reload/templates winix function
+ }
+ }
+}
+
+
+size_t Patterns::Size()
+{
+ return pat_tab.size();
+}
diff --git a/templates/patterns.h b/templates/patterns.h
new file mode 100755
index 0000000..bd41d5e
--- /dev/null
+++ b/templates/patterns.h
@@ -0,0 +1,127 @@
+/*
+ * This file is a part of Winix
+ * and is not publicly distributed
+ *
+ * Copyright (c) 2011, Tomasz Sowa
+ * All rights reserved.
+ *
+ */
+
+#ifndef headerfile_winix_templates_patterns
+#define headerfile_winix_templates_patterns
+
+#include
+#include "locale.h"
+#include "localefilter.h"
+#include "misc.h"
+
+
+
+class Patterns
+{
+public:
+
+ Patterns();
+
+ void SetUTF8(bool _utf8);
+ void SetDeleteWhiteItems(bool del_white);
+ void SetDirectories(const std::wstring & tmpl_dir, const std::wstring & tmpl_dir_def);
+
+ /*
+ setting locale and locale_filter
+ this method should always be called on the beginning
+ */
+ void SetLocale(Locale * plocale);
+ void SetLocaleFilter(LocaleFilter * plocale_filter);
+
+ /*
+ setting ezc functions
+ you don't have to call this method
+ (in such a case functions will be search with O(log) by the Generator)
+ */
+ void SetEzcFunctions(TemplatesFunctions::EzcFun * fun);
+
+
+ /*
+ adding a new pattern and returning its index
+ if the pattern already exists the method returns its index only
+ and increment internal reference counter for such pattern
+
+ if read_pattern is false then the pattern is not read,
+ it will be read when you call Reload() method
+ */
+ size_t Add(const wchar_t * file_name, bool read_pattern = true);
+ size_t Add(const std::wstring & file_name, bool read_pattern = true);
+
+
+ /*
+ returning a pattern (if exists)
+ if the pattern does not exist return a null pointer
+ */
+ Ezc::Pattern * Get(size_t index, size_t lang);
+
+
+ /*
+ returning a file name of a pattern
+ or an empty string if the pattern does not exist
+ */
+ const std::wstring & GetFileName(size_t index);
+
+
+ /*
+ deleting all patterns
+ */
+ void Clear();
+
+
+ /*
+ decrementing internal reference counter and if zero then deletes the pattern
+ */
+ void Erase(size_t index);
+
+
+ /*
+ reloading all patterns
+ */
+ void Reload();
+
+
+ /*
+ returning how many patterns do we have
+ remember that we have one pattern for each language
+ so the real number of patterns is: locale->Size() * Size()
+ */
+ size_t Size();
+
+
+private:
+
+ bool utf8;
+ bool del_white_items;
+ std::wstring templates_dir, templates_dir_def;
+ Locale * locale;
+ LocaleFilter * locale_filter;
+
+ // can be null (not set directly)
+ TemplatesFunctions::EzcFun * ezc_fun;
+
+ struct Template
+ {
+ bool to_delete;
+ std::wstring file_name;
+ size_t references; // starts from 1 (zero means the pattern was deleted)
+ std::vector patterns; // table[lang]
+ };
+
+ typedef std::vector PatTab;
+ PatTab pat_tab;
+ Template template_temp;
+
+ // non-const for default assignment operator to be created
+ std::wstring empty_str;
+
+ void ReadPatterns(Template & templ);
+
+};
+
+#endif
diff --git a/templates/templates.cpp b/templates/templates.cpp
index 5257fd8..fd40e1d 100755
--- a/templates/templates.cpp
+++ b/templates/templates.cpp
@@ -18,15 +18,23 @@
namespace TemplatesFunctions
{
+size_t pat_index;
+size_t pat_err_404;
+size_t pat_err_per_denied;
+
+Patterns patterns; // all html patterns
IndexPatterns index_patterns; // patterns for main index template (those from mountpoint)
-Patterns patterns; // those patterns from enum Pat
-Patterns patterns_fun; // patterns for winix functions
+ // index_atterns uses patterns as a storage
+ChangePatterns change_patterns; // patterns for change_template mount option (storage is in 'patterns' too)
PatternCacher pattern_cacher; // patterns for user items (files with an executable bit set)
+
Locale locale;
EzcFun ezc_functions;
LocaleFilter locale_filter;
HTMLFilter html_filter;
+
+
// used by GenerateRunRaw()
std::vector empty_pars;
const std::wstring empty_string;
@@ -46,24 +54,26 @@ static EzcGen content_gen;
-Ezc::Pattern * content_for_function()
+Ezc::Pattern * GetPatternForFunction()
{
+static std::wstring fun_file;
+
if( !cur->request->function )
{
- log << log1 << "Templates: no function" << logend;
+ log << log1 << "Templates: cannot get a template for a function (there is not a function)" << logend;
return 0;
}
- const size_t loc_index = locale.GetLang();
- const size_t fun_id = static_cast(cur->request->function->id);
+ fun_file = config->templates_fun_prefix;
+ fun_file += cur->request->function->fun.url;
+ fun_file += config->templates_fun_postfix;
- if( loc_index >= patterns_fun.size() || fun_id >= patterns_fun[loc_index].size() )
- {
- log << log1 << "Templates: incorrect function index" << logend;
- return 0;
- }
+ Ezc::Pattern * p = change_patterns.Get(cur->mount->dir_id, fun_file, locale.GetLang());
-return &patterns_fun[loc_index][fun_id];
+ if( p )
+ return p;
+
+return patterns.Get(cur->request->function->template_index, locale.GetLang());
}
@@ -72,13 +82,6 @@ void content(Info & i)
{
Ezc::Pattern * p = 0;
- if( locale.GetLang() >= patterns.size() )
- {
- log << log1 << "Templates: there is no such a language in patterns" << logend;
- return;
- }
-
-
switch( cur->request->status )
{
//case WINIX_ERR_NO_ITEM: !! we need something like 'error::item_required'
@@ -92,14 +95,14 @@ Ezc::Pattern * p = 0;
case WINIX_ERR_CANT_CHANGE_GROUP:
case WINIX_ERR_CANT_CHANGE_PRIVILEGES:
// !! locale.GetLang() bedzie brane indywidualnie dla kazdego uzytkownika
- p = &patterns[locale.GetLang()][pat_err_per_denied];
+ p = patterns.Get(pat_err_per_denied, locale.GetLang());
break;
case WINIX_ERR_NO_ITEM:
case WINIX_ERR_NO_FUNCTION:
case WINIX_ERR_UNKNOWN_PARAM:
// !! locale.GetLang() bedzie brane indywidualnie dla kazdego uzytkownika
- p = &patterns[locale.GetLang()][pat_err_404];
+ p = patterns.Get(pat_err_404, locale.GetLang());
break;
//default:
@@ -111,7 +114,7 @@ Ezc::Pattern * p = 0;
//case WINIX_ERR_SPAM:
//case WINIX_ERR_INCORRECT_REBUS:
default:
- p = content_for_function();
+ p = GetPatternForFunction();
break;
}
@@ -119,7 +122,7 @@ Ezc::Pattern * p = 0;
if( p )
content_gen.Generate(i.out, *p);
else
- i.out << "";
+ log << log1 << "Templates: content: there are not any patterns";
}
@@ -522,25 +525,9 @@ void Templates::CreateFunctions()
-void Templates::ReadFile(TemplatesFunctions::Pat pat, const wchar_t * file)
-{
-using namespace TemplatesFunctions;
-
- Read(patterns, static_cast(pat), locale, locale_filter, ezc_functions, file, config->utf8,
- config->templates_dir, config->templates_dir_default);
-}
-void Templates::ReadFileFun(size_t index, const wchar_t * file)
-{
-using namespace TemplatesFunctions;
-
- Read(patterns_fun, index, locale, locale_filter, ezc_functions, file, config->utf8,
- config->templates_dir, config->templates_dir_default);
-}
-
-
-void Templates::SetLocale()
+void Templates::ReadLocale()
{
using namespace TemplatesFunctions;
@@ -550,10 +537,12 @@ using namespace TemplatesFunctions;
locale.SetLang(config->locale_default_index); // !! w przyszlosci locale beda ustawiane dla kazdego uzytkownika osobno
locale.SetLangDef(config->locale_default_index);
locale.Read(config->locale_dir, config->locale_dir_default);
+
+ log << log3 << "Templates: there are " << locale.Size() << " locales" << logend;
}
-void Templates::ReadFunctionsTemplates()
+void Templates::ReadTemplatesForFunctions()
{
using namespace TemplatesFunctions;
@@ -562,24 +551,58 @@ using namespace TemplatesFunctions;
for(; i != functions->End() ; ++i)
{
const std::wstring & fun_name = i->first;
- const size_t index = i->second->id;
- if( index < functions->FunctionsSize() )
+ fun_file = config->templates_fun_prefix;
+ fun_file += fun_name;
+ fun_file += config->templates_fun_postfix;
+
+ i->second->template_index = patterns.Add(fun_file);
+ }
+}
+
+
+void Templates::ReadIndexTemplates()
+{
+using namespace TemplatesFunctions;
+
+ Mounts::MountTab::const_iterator i;
+ const Mounts::MountTab * pmount_tab = TemplatesFunctions::system->mounts.GetMountTab();
+ const size_t html_id = (size_t)TemplatesFunctions::system->mounts.MountParHtmlTemplate();
+
+ // loop through all mount points
+ for(i=pmount_tab->begin() ; i!=pmount_tab->end() ; ++i)
+ {
+ const Mount & mount = i->second;
+
+ if( html_id < mount.param.size() && mount.param[html_id].defined )
{
- fun_file = config->templates_fun_prefix;
- fun_file += fun_name;
- fun_file += config->templates_fun_postfix;
- ReadFileFun(index, fun_file.c_str());
- }
- else
- {
- log << log1 << "Templates: function index too large, fun: "
- << fun_name << ", index: " << index << logend;
+ size_t len = mount.param[html_id].arg.size();
+
+ // loop through all html_templates() values
+ for(size_t a=0 ; atemplates_index.c_str());
- ReadFile(pat_err_404, L"err_404.html");
- ReadFile(pat_err_per_denied, L"err_per_denied.html");
-
- ReadFunctionsTemplates();
- index_patterns.ReloadPatterns(locale, locale_filter, false);
-
- SetHtmlFilter();
-}
-
-
-
-// reading only new index templates (with parsing)
-// those which are exists are not touched
-// the rest are deleted
-void Templates::ReadNewIndexTemplates()
-{
-using namespace TemplatesFunctions;
-
- index_patterns.MarkAllToDelete();
- ReadIndexFileNames(true);
- index_patterns.DeleteMarked();
-}
-
-
-// if add_pattern is true then pattern will be read (parsed)
-// if add_pattern is false then only file_name of the pattern will be remembered
-// you can next call ReadTemplates() to read those patterns
-void Templates::ReadIndexFileNames(bool add_pattern)
+void Templates::ReadChangeTemplates()
{
using namespace TemplatesFunctions;
Mounts::MountTab::const_iterator i;
const Mounts::MountTab * pmount_tab = TemplatesFunctions::system->mounts.GetMountTab();
+ const size_t change_id = (size_t)TemplatesFunctions::system->mounts.MountParChangeTemplate();
// loop through all mount points
for(i=pmount_tab->begin() ; i!=pmount_tab->end() ; ++i)
{
const Mount & mount = i->second;
- int html_id = TemplatesFunctions::system->mounts.MountParHtmlTemplate();
- if( size_t(html_id) >= mount.param.size() )
+ if( change_id < mount.param.size() && mount.param[change_id].defined )
{
- log << log1 << "Templates: something wrong in mount points, there is no"
- << " html template parameter" << logend;
- }
- else
- if( mount.param[html_id].defined )
- {
- size_t len = mount.param[html_id].arg.size();
- size_t a;
+ const std::vector & arg = mount.param[change_id].arg;
- // loop through all html_templates() values
- for(a=0 ; atemplates_index);
+ pat_err_404 = patterns.Add(L"err_404.html");
+ pat_err_per_denied = patterns.Add(L"err_per_denied.html");
+
+ ReadTemplatesForFunctions();
+ ReadIndexTemplates();
+ ReadChangeTemplates();
+
+ SetHtmlFilter();
+
+ log << log3 << "Templates: there are " << patterns.Size() << " patterns"
+ << " (" << (locale.Size() * patterns.Size()) << " for all locales)" << logend;
+}
+
+
+
+
+
+
+
void Templates::Init()
{
using namespace TemplatesFunctions;
+ patterns.SetUTF8(config->utf8);
+ patterns.SetDirectories(config->templates_dir, config->templates_dir_default);
+
pattern_cacher.SetWhenDelete(config->pattern_cacher_when_delete, config->pattern_cacher_how_many_delete);
CreateFunctions(); // create functions first (functions will be cached by patterns)
- ReadIndexFileNames();
ReadTemplates();
}
-// index_patterns and patterns for items are not cleared here
-void Templates::ClearPatterns()
-{
-using namespace TemplatesFunctions;
-
- ClearPatterns(patterns, pat_last);
- ClearPatterns(patterns_fun, functions->FunctionsSize());
-}
// clearing at the end of a request
@@ -734,44 +728,35 @@ using namespace TemplatesFunctions;
void Templates::Generate()
{
using namespace TemplatesFunctions;
-
- // !! locale beda w zaleznosci od uzytkownika
- if( locale.GetLang() >= patterns.size() )
- return;
Ezc::Pattern * index = 0;
const std::wstring * index_file_local = 0;
- if( cur->request->is_item )
- {
- if( !cur->request->item.html_template.empty() )
- index_file_local = &cur->request->item.html_template;
- }
- else
- {
- if( !cur->request->dir_tab.back()->html_template.empty() )
- index_file_local = &cur->request->dir_tab.back()->html_template;
- }
-
+ if( !cur->request->last_item->html_template.empty() )
+ index_file_local = &cur->request->last_item->html_template;
if( !index_file_local )
{
- const std::wstring & temp = TemplatesFunctions::system->mounts.pmount->FirstArg(
- TemplatesFunctions::system->mounts.MountParHtmlTemplate() );
+ Mounts & mounts = TemplatesFunctions::system->mounts;
+ const std::wstring & temp = cur->mount->FirstArg(mounts.MountParHtmlTemplate());
if( !temp.empty() )
index_file_local = &temp;
-
}
-
if( index_file_local && *index_file_local != config->templates_index )
- index = index_patterns.GetPattern(*index_file_local, locale.GetLang());
+ index = index_patterns.Get(*index_file_local, locale.GetLang());
if( !index )
- index = &patterns[locale.GetLang()][pat_index];
+ index = change_patterns.Get(cur->mount->dir_id, config->templates_index, locale.GetLang());
- generator.Generate(cur->request->page, *index);
+ if( !index )
+ index = patterns.Get(pat_index, locale.GetLang());;
+
+ if( index )
+ generator.Generate(cur->request->page, *index);
+ else
+ log << log1 << "Templates: I cannot find an index template" << logend;
}
@@ -804,7 +789,6 @@ using namespace TemplatesFunctions;
void Templates::SetConfig(Config * pconfig)
{
TemplatesFunctions::config = pconfig;
- TemplatesFunctions::index_patterns.SetConfig(pconfig);
}
@@ -842,8 +826,14 @@ void Templates::SetSessionManager(SessionManager * psession_manager)
Templates::Templates()
{
using namespace TemplatesFunctions;
- index_patterns.SetEzcFunctions(&ezc_functions);
+
+ patterns.SetEzcFunctions(&ezc_functions);
+ patterns.SetLocale(&locale);
+ patterns.SetLocaleFilter(&locale_filter);
+ index_patterns.SetPatterns(&patterns);
+ change_patterns.SetPatterns(&patterns);
pattern_cacher.SetEzcFunctions(&ezc_functions);
}
+
diff --git a/templates/templates.h b/templates/templates.h
index 06525cf..ec38d70 100755
--- a/templates/templates.h
+++ b/templates/templates.h
@@ -17,6 +17,8 @@
#include "patterncacher.h"
#include "indexpatterns.h"
#include "locale.h"
+#include "patterns.h"
+#include "changepatterns.h"
#include "htmltextstream.h"
#include "localefilter.h"
#include "core/config.h"
@@ -34,19 +36,14 @@ class Functions;
namespace TemplatesFunctions
{
+ extern size_t pat_index;
+ extern size_t pat_err_404;
+ extern size_t pat_err_per_denied;
- enum Pat
- {
- pat_index = 0, // first should be zero
- pat_err_404,
- pat_err_per_denied,
- pat_last // should be last
- };
-
- extern IndexPatterns index_patterns; // patterns for main index template
- extern Patterns patterns; // those patterns from enum Pat
- extern Patterns patterns_fun; // patterns for winix functions
- extern PatternCacher pattern_cacher; // patterns for user items (files with an executable bit set)
+ extern Patterns patterns;
+ extern IndexPatterns index_patterns;
+ extern ChangePatterns change_patterns;
+ extern PatternCacher pattern_cacher;
extern Locale locale;
extern EzcFun ezc_functions;
extern LocaleFilter locale_filter;
@@ -462,23 +459,21 @@ public:
void SetSessionManager(SessionManager * psession_manager);
void Init();
- void ClearPatterns();
void RequestEnd();
void ReadTemplates();
void ReadNewIndexTemplates();
- void ReadIndexFileNames(bool add_pattern = false);
+ void ReadNewChangeTemplates();
void Generate();
void GenerateRunRaw();
void Generate(Ezc::Pattern & pattern);
private:
- void ReadFile(TemplatesFunctions::Pat pat, const wchar_t * file);
- void ReadFileFun(size_t index, const wchar_t * file);
- void ReadFunctionsTemplates();
- void SetLocale();
+ void ReadTemplatesForFunctions();
+ void ReadIndexTemplates();
+ void ReadChangeTemplates();
+ void ReadLocale();
void SetHtmlFilter();
- void ClearPatterns(TemplatesFunctions::Patterns & patterns, size_t len);
void CreateFunctions(); // should be called before reading patterns (patterns will cache ezc functions)
TemplatesFunctions::EzcGen generator;