From 489310ba1ccc58e64b8c2de1ecb98df9fc681d3d Mon Sep 17 00:00:00 2001 From: Tomasz Sowa Date: Fri, 9 Mar 2012 02:36:25 +0000 Subject: [PATCH] added: winix function: rmuser changed: UGContainer<> now uses std::list as a storage (previously it was using std::vector with pointers) removed: now we don't have the operator[] for UGContainer<> git-svn-id: svn://ttmath.org/publicrep/winix/trunk@816 e52654a7-88a9-db11-a3e9-0013d4bc506e --- core/Makefile.dep | 111 ++++++--- core/app.cpp | 1 + core/groups.cpp | 10 +- core/groups.h | 4 +- core/pluginmsg.h | 28 +-- core/session.cpp | 3 +- core/session.h | 5 +- core/sessionmanager.cpp | 44 +++- core/sessionmanager.h | 3 +- core/system.cpp | 5 + core/system.h | 3 + core/ugcontainer.h | 126 ++++++---- core/users.cpp | 61 ++++- core/users.h | 13 +- db/db.cpp | 34 ++- db/db.h | 2 + functions/Makefile.dep | 467 +++++++++++++++++++---------------- functions/Makefile.o.dep | 2 +- functions/adduser.cpp | 12 +- functions/env.cpp | 1 + functions/functions.cpp | 1 + functions/functions.h | 2 + functions/logout.cpp | 15 +- functions/logout.h | 3 - functions/pw.cpp | 4 +- functions/rmuser.cpp | 82 ++++++ functions/rmuser.h | 42 ++++ html/fun_passwd.html | 4 +- html/fun_rmuser.html | 27 ++ locale/en | 8 + locale/pl | 7 +- main/Makefile.dep | 24 +- notify/Makefile.dep | 18 +- notify/notify.cpp | 2 +- notify/notifythread.cpp | 8 +- plugins/export/Makefile.dep | 3 +- plugins/gallery/Makefile.dep | 21 +- plugins/group/Makefile.dep | 16 +- plugins/menu/Makefile.dep | 17 +- plugins/stats/Makefile.dep | 21 +- plugins/thread/Makefile.dep | 37 +-- plugins/ticket/Makefile.dep | 130 +++++----- static/basic/winix.css | 51 ++++ static/layout1/winix.css | 66 +++++ templates/Makefile.dep | 37 +-- templates/env.cpp | 52 ++-- templates/priv.cpp | 10 +- templates/sys.cpp | 28 +-- templates/templates.cpp | 4 +- templates/templates.h | 4 +- templates/user.cpp | 69 ++++-- 51 files changed, 1146 insertions(+), 602 deletions(-) create mode 100755 functions/rmuser.cpp create mode 100755 functions/rmuser.h create mode 100755 html/fun_rmuser.html diff --git a/core/Makefile.dep b/core/Makefile.dep index 189a831..6a46059 100755 --- a/core/Makefile.dep +++ b/core/Makefile.dep @@ -30,16 +30,17 @@ app.o: ../functions/ln.h ../functions/ls.h ../functions/man.h app.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h app.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h app.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -app.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h -app.o: ../functions/stat.h ../functions/subject.h ../functions/template.h -app.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h -app.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h -app.o: ../core/htmlfilter.h ../templates/templates.h -app.o: ../templates/patterncacher.h ../templates/indexpatterns.h -app.o: ../templates/patterns.h ../templates/changepatterns.h -app.o: ../templates/htmltextstream.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 +app.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h +app.o: ../functions/specialdefault.h ../functions/stat.h +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 ../templates/patterns.h +app.o: ../templates/changepatterns.h ../templates/htmltextstream.h +app.o: ../core/sessionmanager.h compress.h postparser.h httpsimpleparser.h +app.o: cookieparser.h postmultiparser.h acceptencodingparser.h +app.o: acceptbaseparser.h plugin.h pluginmsg.h basethread.o: basethread.h bbcodeparser.o: bbcodeparser.h htmlfilter.h compress.o: compress.h log.h textstream.h logmanipulators.h slog.h cur.h @@ -77,8 +78,9 @@ config.o: ../functions/ln.h ../functions/ls.h ../functions/man.h config.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h config.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h config.o: ../functions/priv.h ../functions/pw.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/rm.h ../functions/rmuser.h ../functions/sort.h +config.o: ../functions/specialdefault.h ../functions/stat.h +config.o: ../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 @@ -148,9 +150,9 @@ image.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h image.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h image.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h image.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h -image.o: ../functions/reload.h ../functions/rm.h ../functions/sort.h -image.o: ../functions/specialdefault.h ../functions/stat.h -image.o: ../functions/subject.h ../functions/template.h +image.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +image.o: ../functions/sort.h ../functions/specialdefault.h +image.o: ../functions/stat.h ../functions/subject.h ../functions/template.h image.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h image.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h image.o: ../core/htmlfilter.h ../templates/templates.h @@ -236,9 +238,9 @@ mounts.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h mounts.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h mounts.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h mounts.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h -mounts.o: ../functions/reload.h ../functions/rm.h ../functions/sort.h -mounts.o: ../functions/specialdefault.h ../functions/stat.h -mounts.o: ../functions/subject.h ../functions/template.h +mounts.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +mounts.o: ../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 @@ -274,9 +276,9 @@ plugin.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h plugin.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h plugin.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h plugin.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h -plugin.o: ../functions/reload.h ../functions/rm.h ../functions/sort.h -plugin.o: ../functions/specialdefault.h ../functions/stat.h -plugin.o: ../functions/subject.h ../functions/template.h +plugin.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +plugin.o: ../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 @@ -315,15 +317,16 @@ plugindata.o: ../functions/ls.h ../functions/man.h ../functions/meta.h plugindata.o: ../functions/mkdir.h ../functions/mv.h ../functions/nicedit.h plugindata.o: ../functions/node.h ../functions/passwd.h ../functions/priv.h plugindata.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h -plugindata.o: ../functions/sort.h ../functions/specialdefault.h -plugindata.o: ../functions/stat.h ../functions/subject.h -plugindata.o: ../functions/template.h ../functions/tinymce.h -plugindata.o: ../functions/uname.h ../functions/upload.h -plugindata.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h -plugindata.o: ../core/htmlfilter.h ../templates/templates.h -plugindata.o: ../templates/patterncacher.h ../templates/indexpatterns.h -plugindata.o: ../templates/patterns.h ../templates/changepatterns.h -plugindata.o: ../templates/htmltextstream.h ../core/sessionmanager.h +plugindata.o: ../functions/rmuser.h ../functions/sort.h +plugindata.o: ../functions/specialdefault.h ../functions/stat.h +plugindata.o: ../functions/subject.h ../functions/template.h +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 ../templates/patterns.h +plugindata.o: ../templates/changepatterns.h ../templates/htmltextstream.h +plugindata.o: ../core/sessionmanager.h postmultiparser.o: postmultiparser.h error.h requesttypes.h config.h postmultiparser.o: htmlfilter.h misc.h item.h log.h textstream.h postmultiparser.o: logmanipulators.h slog.h cur.h request.h @@ -364,7 +367,7 @@ request.o: ../functions/ln.h ../functions/ls.h ../functions/man.h request.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h request.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h request.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -request.o: ../functions/rm.h ../functions/sort.h +request.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h request.o: ../functions/specialdefault.h ../functions/stat.h request.o: ../functions/subject.h ../functions/template.h request.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h @@ -421,7 +424,7 @@ sessionmanager.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h sessionmanager.o: ../functions/mv.h ../functions/nicedit.h sessionmanager.o: ../functions/node.h ../functions/passwd.h sessionmanager.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -sessionmanager.o: ../functions/rm.h ../functions/sort.h +sessionmanager.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h sessionmanager.o: ../functions/specialdefault.h ../functions/stat.h sessionmanager.o: ../functions/subject.h ../functions/template.h sessionmanager.o: ../functions/tinymce.h ../functions/uname.h @@ -475,8 +478,9 @@ system.o: ../functions/ln.h ../functions/ls.h ../functions/man.h system.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h system.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h system.o: ../functions/priv.h ../functions/pw.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/rm.h ../functions/rmuser.h ../functions/sort.h +system.o: ../functions/specialdefault.h ../functions/stat.h +system.o: ../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 system.o: plugin.h pluginmsg.h sessionmanager.h sessioncontainer.h @@ -487,4 +491,41 @@ threadmanager.o: item.h error.h config.h htmlfilter.h threadmanager.o: ../templates/htmltextstream.h ../core/textstream.h misc.h threadmanager.o: session.h user.h plugindata.h rebus.h mount.h threadmanager.o: ../templates/locale.h -users.o: users.h +users.o: users.h sessionmanager.h sessioncontainer.h session.h item.h error.h +users.o: user.h plugindata.h rebus.h textstream.h cur.h request.h +users.o: requesttypes.h config.h htmlfilter.h ../templates/htmltextstream.h +users.o: ../core/textstream.h misc.h mount.h lastcontainer.h system.h dirs.h +users.o: dircontainer.h ../db/db.h ../db/dbbase.h ../db/dbconn.h +users.o: ../db/dbtextstream.h ../core/error.h ../db/dbitemquery.h +users.o: ../core/item.h ../db/dbitemcolumns.h ../core/user.h ../core/group.h +users.o: ../core/dircontainer.h ../core/ugcontainer.h log.h logmanipulators.h +users.o: slog.h ../templates/locale.h ../notify/notify.h +users.o: ../notify/notifypool.h ../templates/patterns.h ../templates/locale.h +users.o: ../templates/localefilter.h ../../ezc/src/ezc.h +users.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h +users.o: ../../ezc/src/functions.h ../../ezc/src/funinfo.h +users.o: ../../ezc/src/stringconv.h ../notify/notifythread.h +users.o: ../core/basethread.h synchro.h ../notify/templatesnotify.h +users.o: ../core/config.h ../core/users.h ugcontainer.h mounts.h +users.o: mountparser.h crypt.h run.h groups.h group.h loadavg.h image.h +users.o: basethread.h threadmanager.h plugin.h pluginmsg.h +users.o: ../functions/functions.h ../functions/functionbase.h +users.o: ../core/request.h ../core/system.h ../core/synchro.h +users.o: ../functions/functionparser.h ../core/cur.h ../functions/adduser.h +users.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h +users.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h +users.o: ../functions/default.h ../functions/download.h ../functions/emacs.h +users.o: ../functions/env.h ../functions/last.h ../functions/login.h +users.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h +users.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h +users.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h +users.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h +users.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +users.o: ../functions/sort.h ../functions/specialdefault.h +users.o: ../functions/stat.h ../functions/subject.h ../functions/template.h +users.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h +users.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h +users.o: ../core/htmlfilter.h ../templates/templates.h +users.o: ../templates/patterncacher.h ../templates/indexpatterns.h +users.o: ../templates/patterns.h ../templates/changepatterns.h +users.o: ../templates/htmltextstream.h ../core/sessionmanager.h diff --git a/core/app.cpp b/core/app.cpp index f3493ff..e779283 100755 --- a/core/app.cpp +++ b/core/app.cpp @@ -61,6 +61,7 @@ App::App() system.SetDb(&db); system.SetSynchro(&synchro); system.SetFunctions(&functions); + system.SetSessionManager(&session_manager); templates.SetConfig(&config); templates.SetCur(&cur); diff --git a/core/groups.cpp b/core/groups.cpp index 56c3985..221d113 100755 --- a/core/groups.cpp +++ b/core/groups.cpp @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -39,7 +39,7 @@ Group * Groups::GetGroup(long group_id) if( i == table.End() ) return 0; -return &(**i); +return &(*i); } @@ -50,7 +50,7 @@ Group * Groups::GetGroup(const std::wstring & name) if( i == table.End() ) return 0; -return &(**i); +return &(*i); } @@ -86,9 +86,9 @@ Groups::SizeType Groups::Size() } -Group & Groups::operator[](Groups::SizeType pos) +bool Groups::Remove(long group_id) { - return table[pos]; + return table.Remove(group_id); } diff --git a/core/groups.h b/core/groups.h index c77c5c9..f24d4ef 100755 --- a/core/groups.h +++ b/core/groups.h @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -38,7 +38,7 @@ public: Iterator Begin(); Iterator End(); SizeType Size(); - Group & operator[](SizeType pos); + bool Remove(long group_id); }; diff --git a/core/pluginmsg.h b/core/pluginmsg.h index 4964f1d..5892794 100755 --- a/core/pluginmsg.h +++ b/core/pluginmsg.h @@ -165,21 +165,9 @@ // from the session file #define WINIX_USER_LOGGED 30600 -// preparing a current user to logout -// send from 'logout' winix function -// !! IMPROVE ME this message can be sent when winix is making the shutdown -// (for sessions which are not mark as 'remember me') -// and when the SessionManager deletes a session (from the special thread) -#define WINIX_PREPARE_USER_LOGGED_OUT 30610 - -// a user has been logged out -// send from 'logout' winix function -// in l1 you have the old user_id -// !! IMPROVE ME this message can be sent when winix is making the shutdown -// (for sessions which are not mark as 'remember me') -// and when the SessionManager deletes a session (from the special thread) -#define WINIX_USER_LOGGED_OUT 30620 - +// a user is going to logout +// in p1 you have a pointer to User struct +#define WINIX_PREPARE_USER_TO_LOGOUT 30610 // here you add your own html templates // call TemplatesFunctions::patterns.Add(L"file_name.html") @@ -191,6 +179,16 @@ // in other cases after 'reload' function the indexes would be wrong #define WINIX_ADD_TEMPLATE 31000 +// a user will be removed +// in p1 you have a pointer to the User struct +// directly after this message a WINIX_USER_REMOVED will be sent +#define WINIX_PREPARE_TO_REMOVE_USER 31010 + +// a user has been removed +// in l1 you have the old user_id +#define WINIX_USER_REMOVED 31020 + + // values from 4000 - 4099 reserved for 'thread' plugin diff --git a/core/session.cpp b/core/session.cpp index 32c0bb8..ad57960 100755 --- a/core/session.cpp +++ b/core/session.cpp @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -44,6 +44,7 @@ void Session::Clear() remember_me = false; new_session = true; spam_score = 0; + remove_me = false; plugin_data.Resize(0); } diff --git a/core/session.h b/core/session.h index 311cbe7..60fdfe5 100755 --- a/core/session.h +++ b/core/session.h @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2011, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -61,6 +61,9 @@ struct Session int spam_score; + // if true then this session will be removed by SessionManager + // without checking the time expiration + bool remove_me; PluginData plugin_data; diff --git a/core/sessionmanager.cpp b/core/sessionmanager.cpp index d362f3f..6f0bd7a 100755 --- a/core/sessionmanager.cpp +++ b/core/sessionmanager.cpp @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -153,7 +153,7 @@ bool SessionManager::SetSessionFromCookie(const std::string & cookie) long id = Tol(cookie.c_str()); SessionContainer::Iterator s = session_tab.FindById(id); - if( s == session_tab.End() ) + if( s == session_tab.End() || s->remove_me ) return false; // that session is in the table @@ -220,6 +220,18 @@ SessionContainer::Iterator SessionManager::SessionEnd() void SessionManager::DeleteSessions() { + SessionContainer::Iterator i; + + for(i=session_tab.Begin() ; i!=session_tab.End() ; ++i) + { + if( i->puser && !i->remember_me ) + { + cur->session = &(*i); // for correctly setting a session data in plugins + plugin.Call(WINIX_PREPARE_USER_TO_LOGOUT, i->puser); + last_container->UserLogout(i->puser->id, i->id); + } + } + session_tab.Clear(); } @@ -300,7 +312,7 @@ void SessionManager::SaveSessions() for( ; i!=session_tab.End() ; ++i ) { - if( i->id != 0 && i->puser ) + if( i->id != 0 && i->puser && !i->remove_me ) { file << i->id << ' ' << i->puser->id << ' ' << i->remember_me << ' '; file << (long)i->time << ' ' << (long)i->last_time << std::endl; @@ -330,6 +342,30 @@ Session * SessionManager::GetCurSession() } +// returns how many sessions was marked to remove +size_t SessionManager::MarkAllSessionsToRemove(long user_id) +{ + size_t how_many = 0; + SessionContainer::Iterator i; + Session * old_session = cur->session; + + for(i=session_tab.Begin() ; i!=session_tab.End() ; ++i) + { + if( i->puser && i->puser->id == user_id ) + { + cur->session = &(*i); // for correctly setting a session data in plugins + plugin.Call(WINIX_PREPARE_USER_TO_LOGOUT, i->puser); + last_container->UserLogout(i->puser->id, i->id); + i->remove_me = true; + i->puser = 0; + how_many += 1; + } + } + + cur->session = old_session; + +return how_many; +} @@ -382,7 +418,7 @@ const int deleted_max_at_once = 10; } else { - if( IsSessionOutdated(*i->second) ) + if( i->second->remove_me || IsSessionOutdated(*i->second) ) { DeleteSession(i++); ++deleted; diff --git a/core/sessionmanager.h b/core/sessionmanager.h index 280980c..f506f24 100755 --- a/core/sessionmanager.h +++ b/core/sessionmanager.h @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -50,6 +50,7 @@ public: SessionContainer::Iterator SessionEnd(); size_t Size(); + size_t MarkAllSessionsToRemove(long user_id); private: diff --git a/core/system.cpp b/core/system.cpp index 4a5d33c..54a0535 100755 --- a/core/system.cpp +++ b/core/system.cpp @@ -45,6 +45,10 @@ void System::SetFunctions(Functions * pfunctions) functions = pfunctions; } +void System::SetSessionManager(SessionManager * sm) +{ + session_manager = sm; +} void System::Init() @@ -65,6 +69,7 @@ void System::Init() mounts.ReadMounts(); users.SetCur(cur); + users.SetSessionManager(session_manager); users.ReadUsers(db); users.SetTimeZoneOffset(config->time_zone_offset); groups.ReadGroups(db); // !! chwilowe przekazanie argumentu, db bedzie zmienione diff --git a/core/system.h b/core/system.h index 3e0a4b3..5feb176 100755 --- a/core/system.h +++ b/core/system.h @@ -28,6 +28,7 @@ class Functions; +class SessionManager; // file system @@ -73,6 +74,7 @@ public: void SetDb(Db * pdb); void SetSynchro(Synchro * psynchro); void SetFunctions(Functions * pfunctions); + void SetSessionManager(SessionManager * sm); void Init(); void AddParams(const ParamTab & param_tab, std::wstring & str, bool clear_str = true); @@ -158,6 +160,7 @@ private: Config * config; Synchro * synchro; Functions * functions; + SessionManager * session_manager; Item item_temp; std::wstring link_to_temp, name_temp; diff --git a/core/ugcontainer.h b/core/ugcontainer.h index 07af961..b28287e 100755 --- a/core/ugcontainer.h +++ b/core/ugcontainer.h @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -10,11 +10,8 @@ #ifndef headerfile_winix_core_ugcontainer #define headerfile_winix_core_ugcontainer -#include #include #include -#include - #include "log.h" @@ -24,21 +21,17 @@ class UGContainer { public: + UGContainer(); ~UGContainer(); - // we have to use a pointer (Type*) here - // because we are remembering some pointers to the items elsewhere - // so the pointers should not be invalidated - typedef typename std::vector Table; - typedef typename Table::iterator Iterator; - typedef typename Table::size_type SizeType; + typedef typename std::list Table; + typedef typename Table::iterator Iterator; + typedef typename Table::size_type SizeType; - typedef typename std::map TableId; - typedef typename std::map TableName; + typedef typename std::map TableId; + typedef typename std::map TableName; - UGContainer(); - Iterator Begin(); Iterator End(); SizeType Size(); @@ -52,17 +45,25 @@ public: Iterator FindId(long id); Iterator FindName(const std::wstring & name); - Type & operator[](SizeType pos); + bool Remove(long id); + private: - void AddIndexes(SizeType pos); + // don't copy these objects + UGContainer(const UGContainer &); + UGContainer & operator=(const UGContainer &); + + void AddIndexes(Iterator iter); void RebuildIndexes(); // main table Table table; + // table.size() has O(n) complexity + size_t table_size; + // indexes TableId table_id; TableName table_name; @@ -80,6 +81,23 @@ UGContainer::~UGContainer() template UGContainer::UGContainer() { + Clear(); +} + + +// is private +template +UGContainer::UGContainer(const UGContainer &) +{ + Clear(); +} + +// is private +template +UGContainer & UGContainer::operator=(const UGContainer &) +{ + Clear(); + return *this; } @@ -102,7 +120,7 @@ typename UGContainer::Iterator UGContainer::End() template typename UGContainer::SizeType UGContainer::Size() { - return table.size(); + return table_size; } @@ -121,12 +139,13 @@ typename UGContainer::Iterator UGContainer::PushBack(const Type & ty if( Is(type.id) || Is(type.name) ) return End(); - table.push_back(new Type(type)); - log << log2 << "UGCont: added, id: " << type.id << ", name: " << type.name << logend; - - AddIndexes( table.size() - 1 ); + table.push_back(type); + table_size += 1; + Iterator i = --table.end(); + log << log3 << "UGCont: added, id: " << type.id << ", name: " << type.name << logend; + AddIndexes(i); -return --table.end(); +return i; } @@ -134,9 +153,7 @@ return --table.end(); template void UGContainer::Clear() { - for(size_t i=0 ; i::Iterator UGContainer::FindId(long id) if( i == table_id.end() ) return table.end(); -return table.begin() + i->second; +return i->second; } @@ -190,18 +207,18 @@ typename UGContainer::Iterator UGContainer::FindName(const std::wstr if( i == table_name.end() ) return table.end(); -return table.begin() + i->second; +return i->second; } template -void UGContainer::AddIndexes(UGContainer::SizeType pos) +void UGContainer::AddIndexes(UGContainer::Iterator iter) { - table_id.insert( std::make_pair(table[pos]->id, pos) ); - table_name.insert( std::make_pair(table[pos]->name, pos) ); + table_id.insert( std::make_pair(iter->id, iter) ); + table_name.insert( std::make_pair(iter->name, iter) ); - log << log4 << "UGCont: added indexes to: id: " << table[pos]->id << ", name: " << table[pos]->name << logend; + log << log4 << "UGCont: added indexes to: id: " << iter->id << ", name: " << iter->name << logend; } @@ -209,30 +226,51 @@ void UGContainer::AddIndexes(UGContainer::SizeType pos) template void UGContainer::RebuildIndexes() { +Iterator i; + log << log4 << "UGCont: rebuilding indexes" << logend; table_id.clear(); table_name.clear(); - - SizeType i, len = table.size(); - - - for(i=0 ; i!=len ; ++i) - AddIndexes( i ); + + for(i=table.begin() ; i!=table.end() ; ++i) + AddIndexes(i); - log << log4 << "UGCont: indexes rebuilt, table.size: " << table.size() << ", table_id.size: " + log << log4 << "UGCont: indexes rebuilt, table.size: " << table_size << ", table_id.size: " << table_id.size() << ", table_name.size: " << table_name.size() << logend; } -template -Type & UGContainer::operator[](UGContainer::SizeType pos) -{ - if( pos >= table.size() ) - throw std::out_of_range("UGContainer: operator[]: index is out of range"); - return *table[pos]; + +template +bool UGContainer::Remove(long id) +{ + typename TableId::iterator i = table_id.find(id); + typename TableName::iterator n; + bool result = false; + + if( i != table_id.end() ) + { + for(n=table_name.begin() ; n != table_name.end() ; ++n) + { + if( n->second == i->second ) + { + table_name.erase(n); + log << log4 << "UGCont: removed index_id to: id: " << i->second->id << ", name: " << i->second->name << logend; + break; + } + } + + log << log4 << "UGCont: removed index_name to: id: " << i->second->id << ", name: " << i->second->name << logend; + log << log3 << "UGCont: removed: id: " << i->second->id << ", name: " << i->second->name << logend; + table.erase(i->second); + table_id.erase(i); + result = true; + } + +return result; } diff --git a/core/users.cpp b/core/users.cpp index 0354f8f..8d26f18 100755 --- a/core/users.cpp +++ b/core/users.cpp @@ -2,13 +2,15 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ #include #include "users.h" +#include "sessionmanager.h" +#include "plugin.h" @@ -25,6 +27,12 @@ void Users::SetCur(Cur * pcur) } +void Users::SetSessionManager(SessionManager * sm) +{ + session_manager = sm; +} + + void Users::Clear() { table.Clear(); @@ -45,7 +53,7 @@ void Users::SetTimeZoneOffset(int offset) for(i=table.Begin() ; i!=table.End() ; ++i) { - (*i)->time_zone_offset = offset; + i->time_zone_offset = offset; } } @@ -71,7 +79,7 @@ User * Users::GetUser(long user_id) if( i == table.End() ) return 0; -return &(**i); +return &(*i); } @@ -82,7 +90,7 @@ User * Users::GetUser(const std::wstring & name) if( i == table.End() ) return 0; -return &(**i); +return &(*i); } @@ -119,13 +127,28 @@ Users::SizeType Users::Size() } - -User & Users::operator[](Users::SizeType pos) +bool Users::Remove(long user_id) { - return table[pos]; + bool result = false; + User * puser = GetUser(user_id); + + if( puser ) + { + LogoutUser(user_id); + plugin.Call(WINIX_PREPARE_TO_REMOVE_USER, puser); + result = table.Remove(user_id); + + if( result ) + plugin.Call(WINIX_USER_REMOVED, user_id); + } + +return result; } + +// !! IMPROVE ME +// this method is too long bool Users::LoginUser(long user_id, bool remember_me, bool use_ses_log) { if( !cur->session ) @@ -191,6 +214,27 @@ return true; } +size_t Users::LogoutUser(long user_id) +{ + size_t how_many = 0; + User * puser = GetUser(user_id); + + if( puser ) + { + log << log2 << "Users: logging out user " << puser->name << ", id: " + << puser->id << " from all sessions" << logend; + + // WINIX_PREPARE_USER_TO_LOGOUT will be sent by MarkAllSessionsToRemove() + how_many = session_manager->MarkAllSessionsToRemove(user_id); + how_many_logged -= how_many; + + if( how_many ) + log << log3 << "Users: " << how_many << " user(s) were logged out" << logend; + } + +return how_many; +} + void Users::LogoutCurrentUser() @@ -201,13 +245,14 @@ void Users::LogoutCurrentUser() log << log2 << "Users: user " << cur->session->puser->name << ", id: " << cur->session->puser->id << " logged out" << logend; + plugin.Call(WINIX_PREPARE_USER_TO_LOGOUT, cur->session->puser); last.UserLogout(cur->session->puser->id, cur->session->id); if( how_many_logged > 0 ) // for safety how_many_logged -= 1; cur->session->puser = 0; - cur->session->remember_me = 0; + cur->session->remember_me = false; } diff --git a/core/users.h b/core/users.h index 2dd7d40..96d18fc 100755 --- a/core/users.h +++ b/core/users.h @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2010, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -17,6 +17,8 @@ #include "cur.h" #include "db/db.h" +class SessionManager; + class Users { @@ -24,6 +26,7 @@ typedef UGContainer Table; Table table; Cur * cur; + SessionManager * session_manager; long how_many_logged; public: @@ -36,6 +39,7 @@ public: Users(); void SetCur(Cur * pcur); + void SetSessionManager(SessionManager * sm); void Clear(); void ReadUsers(Db * db); @@ -48,10 +52,11 @@ public: Iterator Begin(); Iterator End(); SizeType Size(); - User & operator[](SizeType pos); + bool Remove(long user_id); - bool LoginUser(long user_id, bool remember_me, bool use_ses_log = false); - void LogoutCurrentUser(); + bool LoginUser(long user_id, bool remember_me, bool use_ses_log = false); + size_t LogoutUser(long user_id); + void LogoutCurrentUser(); void IncrementLoggedUsers(); long HowManyLogged(); diff --git a/db/db.cpp b/db/db.cpp index cca1425..f65866c 100755 --- a/db/db.cpp +++ b/db/db.cpp @@ -180,6 +180,32 @@ return DoCommand(query); } + +Error Db::ChangeUserEmail(long user_id, const std::wstring & email) +{ + query.Clear(); + query << R("update core.user set(email) = (") + << email + << R(") where id = ") + << user_id + << R(";"); + +return DoCommand(query); +} + + +Error Db::RemoveUser(long user_id) +{ + query.Clear(); + query << R("delete from core.user where id = ") + << user_id + << R(";"); + +return DoCommand(query); +} + + + //!! wywalic z nazwy 'Subject' nic nie jest robione z tytulem // ta metoda uzywana tez jest w EditParentUrlById() bool Db::AddItemCreateUrlSubject(Item & item) @@ -1579,7 +1605,7 @@ void Db::GetUsers(UGContainer & user_tab) log << log2 << "Db: user: id: " << u.id << ", name: " << u.name << ", super_user: " << u.super_user << logend; - iter = user_tab.PushBack( u ); + iter = user_tab.PushBack(u); if( iter == user_tab.End() ) log << log1 << "Db: can't add a user: " << u.name << logend; @@ -1591,8 +1617,8 @@ void Db::GetUsers(UGContainer & user_tab) if( !IsNull(r, i, cgroup_id) && group_id!=-1 && iter!=user_tab.End() ) { - (*iter)->groups.push_back(group_id); - log << log3 << "Db: user:" << (*iter)->name << " is a member of group_id: " << group_id << logend; + iter->groups.push_back(group_id); + log << log3 << "Db: user:" << iter->name << " is a member of group_id: " << group_id << logend; } } } @@ -1645,7 +1671,7 @@ void Db::GetGroups(UGContainer & group_tab) if( !IsNull(r, i, cuser_id) && user_id!=-1 && !group_tab.Empty() ) { - (*iter)->members.push_back(user_id); + iter->members.push_back(user_id); log << log3 << "Db: get group member: user_id: " << user_id << logend; } } diff --git a/db/db.h b/db/db.h index a620ee2..b321164 100755 --- a/db/db.h +++ b/db/db.h @@ -50,6 +50,8 @@ public: Error ChangeUserEnv(long user_id, const PT::Space & space); Error ChangeUserAdminEnv(long user_id, const PT::Space & space); Error ChangeUserStatus(long user_id, int status); + Error ChangeUserEmail(long user_id, const std::wstring & email); + Error RemoveUser(long user_id); Error AddItem(Item & item); Error EditItemById(Item & item, bool with_url = true); diff --git a/functions/Makefile.dep b/functions/Makefile.dep index 700c818..256eb13 100755 --- a/functions/Makefile.dep +++ b/functions/Makefile.dep @@ -19,22 +19,22 @@ adduser.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h adduser.o: functionparser.h ../core/cur.h cat.h chmod.h privchanger.h chown.h adduser.o: ckeditor.h cp.h default.h download.h emacs.h env.h last.h login.h adduser.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -adduser.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -adduser.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h -adduser.o: who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -adduser.o: ../core/threadmanager.h ../core/synchro.h ../core/slog.h -adduser.o: ../core/plugin.h ../core/pluginmsg.h ../core/system.h -adduser.o: ../core/sessionmanager.h ../core/sessioncontainer.h -adduser.o: ../functions/functions.h ../templates/templates.h -adduser.o: ../templates/patterncacher.h ../templates/indexpatterns.h -adduser.o: ../templates/patterns.h ../templates/changepatterns.h -adduser.o: ../templates/htmltextstream.h ../core/sessionmanager.h -adduser.o: ../core/misc.h +adduser.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +adduser.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +adduser.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +adduser.o: ../core/synchro.h ../core/slog.h ../core/plugin.h +adduser.o: ../core/pluginmsg.h ../core/system.h ../core/sessionmanager.h +adduser.o: ../core/sessioncontainer.h ../functions/functions.h +adduser.o: ../templates/templates.h ../templates/patterncacher.h +adduser.o: ../templates/indexpatterns.h ../templates/patterns.h +adduser.o: ../templates/changepatterns.h ../templates/htmltextstream.h +adduser.o: ../core/sessionmanager.h ../core/misc.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 @@ -52,9 +52,9 @@ cat.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h cat.o: functionparser.h ../core/cur.h adduser.h chmod.h privchanger.h chown.h cat.o: ckeditor.h cp.h default.h download.h emacs.h env.h last.h login.h cat.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h passwd.h -cat.o: priv.h pw.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: priv.h pw.h reload.h rm.h rmuser.h run.h sort.h specialdefault.h +cat.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h +cat.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 ../core/mounts.h ../core/mountparser.h @@ -79,15 +79,16 @@ chmod.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h chmod.o: functionparser.h ../core/cur.h adduser.h cat.h chown.h privchanger.h chmod.o: ckeditor.h cp.h default.h download.h emacs.h env.h last.h login.h chmod.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -chmod.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -chmod.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h -chmod.o: who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -chmod.o: ../core/threadmanager.h ../core/synchro.h +chmod.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +chmod.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +chmod.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +chmod.o: ../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 @@ -106,15 +107,16 @@ chown.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h chown.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h chown.o: ckeditor.h cp.h default.h download.h emacs.h env.h last.h login.h chown.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -chown.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -chown.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h -chown.o: who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -chown.o: ../core/threadmanager.h ../core/synchro.h +chown.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +chown.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +chown.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +chown.o: ../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 @@ -134,11 +136,11 @@ 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 env.h ckeditor.o: last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -ckeditor.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h -ckeditor.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h -ckeditor.o: 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: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.h +ckeditor.o: run.h sort.h specialdefault.h stat.h subject.h template.h +ckeditor.o: tinymce.h uname.h upload.h uptime.h who.h vim.h +ckeditor.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h +ckeditor.o: ../notify/notifythread.h ../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 @@ -161,7 +163,7 @@ cp.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h cp.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h cp.o: chown.h ckeditor.h default.h download.h emacs.h env.h last.h login.h cp.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h passwd.h -cp.o: priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h stat.h +cp.o: priv.h pw.h reload.h rm.h rmuser.h run.h sort.h specialdefault.h stat.h cp.o: subject.h 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: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h @@ -195,9 +197,9 @@ default.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h default.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h default.o: privchanger.h chown.h ckeditor.h cp.h download.h emacs.h env.h default.o: last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -default.o: nicedit.h node.h passwd.h priv.h pw.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: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h +default.o: sort.h specialdefault.h stat.h subject.h template.h tinymce.h +default.o: uname.h upload.h uptime.h who.h vim.h ../core/htmlfilter.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 @@ -224,11 +226,11 @@ 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 env.h download.o: last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -download.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h -download.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h -download.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h -download.o: ../../ezc/src/stringconv.h ../notify/notifythread.h -download.o: ../core/basethread.h ../core/synchro.h +download.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.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 @@ -252,15 +254,16 @@ emacs.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h emacs.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h emacs.o: chown.h ckeditor.h cp.h default.h download.h env.h last.h login.h emacs.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -emacs.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -emacs.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h -emacs.o: who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -emacs.o: ../core/threadmanager.h ../core/synchro.h ../templates/templates.h +emacs.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +emacs.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +emacs.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +emacs.o: ../core/synchro.h ../templates/templates.h emacs.o: ../templates/patterncacher.h ../templates/indexpatterns.h emacs.o: ../templates/patterns.h ../templates/changepatterns.h emacs.o: ../templates/htmltextstream.h ../core/sessionmanager.h @@ -281,9 +284,9 @@ env.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h env.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h env.o: chown.h ckeditor.h cp.h default.h download.h emacs.h last.h login.h env.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h passwd.h -env.o: priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h stat.h -env.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h vim.h -env.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h +env.o: priv.h pw.h reload.h rm.h rmuser.h run.h sort.h specialdefault.h +env.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h +env.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h env.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h env.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h env.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h @@ -310,12 +313,12 @@ functionbase.o: ../../ezc/src/pattern.h functions.h functionparser.h functionbase.o: ../core/cur.h adduser.h cat.h chmod.h privchanger.h chown.h functionbase.o: ckeditor.h cp.h default.h download.h emacs.h env.h last.h functionbase.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -functionbase.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h -functionbase.o: sort.h 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 ../notify/notifythread.h -functionbase.o: ../core/basethread.h ../core/synchro.h -functionbase.o: ../notify/templatesnotify.h ../core/users.h +functionbase.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.h +functionbase.o: run.h sort.h specialdefault.h stat.h subject.h template.h +functionbase.o: tinymce.h uname.h upload.h uptime.h who.h vim.h +functionbase.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h +functionbase.o: ../notify/notifythread.h ../core/basethread.h +functionbase.o: ../core/synchro.h ../notify/templatesnotify.h ../core/users.h functionbase.o: ../core/ugcontainer.h ../core/lastcontainer.h functionbase.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h functionbase.o: ../core/users.h ../core/groups.h ../core/group.h @@ -341,9 +344,9 @@ functionparser.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functionparser.o: functions.h adduser.h cat.h chmod.h privchanger.h chown.h functionparser.o: ckeditor.h cp.h default.h download.h emacs.h env.h last.h functionparser.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -functionparser.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h -functionparser.o: sort.h specialdefault.h stat.h subject.h template.h -functionparser.o: tinymce.h uname.h upload.h uptime.h who.h vim.h +functionparser.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h +functionparser.o: rmuser.h run.h sort.h specialdefault.h stat.h subject.h +functionparser.o: template.h tinymce.h uname.h upload.h uptime.h who.h vim.h functionparser.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h functionparser.o: ../notify/notifythread.h ../core/basethread.h functionparser.o: ../core/synchro.h ../notify/templatesnotify.h @@ -381,7 +384,7 @@ 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 env.h last.h login.h logout.h ln.h ls.h man.h functions.o: meta.h mkdir.h mv.h nicedit.h node.h passwd.h priv.h pw.h -functions.o: reload.h rm.h sort.h specialdefault.h stat.h subject.h +functions.o: reload.h rm.h rmuser.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 @@ -407,15 +410,16 @@ last.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h last.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h last.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h login.h last.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -last.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -last.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h -last.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -last.o: ../core/threadmanager.h ../core/synchro.h +last.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +last.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +last.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +last.o: ../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 @@ -433,9 +437,9 @@ ln.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h ln.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h ln.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h ln.o: login.h logout.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -ln.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h stat.h -ln.o: subject.h 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: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +ln.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h upload.h +ln.o: uptime.h who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 ../core/mounts.h ../core/mountparser.h @@ -461,21 +465,21 @@ login.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h login.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h login.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h login.o: logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -login.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -login.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h -login.o: who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -login.o: ../core/threadmanager.h ../core/synchro.h ../core/plugin.h -login.o: ../core/pluginmsg.h ../core/system.h ../core/sessionmanager.h -login.o: ../core/sessioncontainer.h ../functions/functions.h -login.o: ../templates/templates.h ../templates/patterncacher.h -login.o: ../templates/indexpatterns.h ../templates/patterns.h -login.o: ../templates/changepatterns.h ../templates/htmltextstream.h -login.o: ../core/sessionmanager.h +login.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +login.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +login.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +login.o: ../core/synchro.h ../core/plugin.h ../core/pluginmsg.h +login.o: ../core/system.h ../core/sessionmanager.h ../core/sessioncontainer.h +login.o: ../functions/functions.h ../templates/templates.h +login.o: ../templates/patterncacher.h ../templates/indexpatterns.h +login.o: ../templates/patterns.h ../templates/changepatterns.h +login.o: ../templates/htmltextstream.h ../core/sessionmanager.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 @@ -495,7 +499,7 @@ logout.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h logout.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h logout.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h logout.o: env.h last.h login.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h -logout.o: node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h +logout.o: node.h passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../notify/notifythread.h @@ -504,13 +508,7 @@ logout.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h logout.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h logout.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h logout.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h -logout.o: ../core/synchro.h ../core/plugin.h ../core/pluginmsg.h -logout.o: ../core/system.h ../core/sessionmanager.h -logout.o: ../core/sessioncontainer.h ../functions/functions.h -logout.o: ../templates/templates.h ../templates/patterncacher.h -logout.o: ../templates/indexpatterns.h ../templates/patterns.h -logout.o: ../templates/changepatterns.h ../templates/htmltextstream.h -logout.o: ../core/sessionmanager.h +logout.o: ../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 @@ -528,9 +526,9 @@ ls.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h ls.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h ls.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h ls.o: login.h logout.h ln.h man.h meta.h mkdir.h mv.h nicedit.h node.h -ls.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h stat.h -ls.o: subject.h 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: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +ls.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h upload.h +ls.o: uptime.h who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 ../core/mounts.h ../core/mountparser.h @@ -554,15 +552,15 @@ man.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h man.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h man.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h man.o: login.h logout.h ln.h ls.h meta.h mkdir.h mv.h nicedit.h node.h -man.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -man.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h -man.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h -man.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h -man.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h -man.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h -man.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h -man.o: ../core/loadavg.h ../core/image.h ../core/basethread.h -man.o: ../core/threadmanager.h ../core/synchro.h +man.o: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +man.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h +man.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h +man.o: ../../ezc/src/stringconv.h ../notify/notifythread.h +man.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h +man.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h +man.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h ../core/users.h +man.o: ../core/groups.h ../core/group.h ../core/loadavg.h ../core/image.h +man.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h meta.o: meta.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h meta.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h meta.o: ../core/misc.h ../core/item.h ../core/requesttypes.h ../core/error.h @@ -580,15 +578,16 @@ meta.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h meta.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h meta.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h meta.o: login.h logout.h ln.h ls.h man.h mkdir.h mv.h nicedit.h node.h -meta.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -meta.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h -meta.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h -meta.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h -meta.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h -meta.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h -meta.o: ../core/crypt.h ../core/users.h ../core/groups.h ../core/group.h -meta.o: ../core/loadavg.h ../core/image.h ../core/basethread.h -meta.o: ../core/threadmanager.h ../core/synchro.h ../core/log.h +meta.o: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +meta.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h +meta.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h +meta.o: ../../ezc/src/stringconv.h ../notify/notifythread.h +meta.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h +meta.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h +meta.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +meta.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +meta.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +meta.o: ../core/synchro.h ../core/log.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 @@ -607,21 +606,21 @@ mkdir.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h mkdir.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h mkdir.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h mkdir.o: login.h logout.h ln.h ls.h man.h meta.h mv.h nicedit.h node.h -mkdir.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -mkdir.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h -mkdir.o: who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -mkdir.o: ../core/threadmanager.h ../core/synchro.h ../core/plugin.h -mkdir.o: ../core/pluginmsg.h ../core/system.h ../core/sessionmanager.h -mkdir.o: ../core/sessioncontainer.h ../functions/functions.h -mkdir.o: ../templates/templates.h ../templates/patterncacher.h -mkdir.o: ../templates/indexpatterns.h ../templates/patterns.h -mkdir.o: ../templates/changepatterns.h ../templates/htmltextstream.h -mkdir.o: ../core/sessionmanager.h +mkdir.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +mkdir.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +mkdir.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +mkdir.o: ../core/synchro.h ../core/plugin.h ../core/pluginmsg.h +mkdir.o: ../core/system.h ../core/sessionmanager.h ../core/sessioncontainer.h +mkdir.o: ../functions/functions.h ../templates/templates.h +mkdir.o: ../templates/patterncacher.h ../templates/indexpatterns.h +mkdir.o: ../templates/patterns.h ../templates/changepatterns.h +mkdir.o: ../templates/htmltextstream.h ../core/sessionmanager.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 @@ -640,7 +639,7 @@ mount.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h mount.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h mount.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h mount.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h -mount.o: node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h +mount.o: node.h passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h mount.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h mount.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h mount.o: ../../ezc/src/stringconv.h ../notify/notifythread.h @@ -667,9 +666,9 @@ mv.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h mv.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h mv.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h mv.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h nicedit.h node.h -mv.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h stat.h -mv.o: subject.h 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: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +mv.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h upload.h +mv.o: uptime.h who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 ../core/mounts.h ../core/mountparser.h @@ -701,7 +700,7 @@ nicedit.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h nicedit.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h nicedit.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h nicedit.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -nicedit.o: node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h +nicedit.o: node.h passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../notify/notifythread.h @@ -728,15 +727,16 @@ node.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h node.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h node.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h node.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h -node.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -node.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h -node.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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/image.h ../core/basethread.h -node.o: ../core/threadmanager.h ../core/synchro.h +node.o: passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +node.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +node.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +node.o: ../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 @@ -756,7 +756,7 @@ passwd.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h passwd.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h passwd.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h passwd.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -passwd.o: nicedit.h node.h priv.h pw.h reload.h rm.h run.h sort.h +passwd.o: nicedit.h node.h priv.h pw.h reload.h rm.h rmuser.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 ../notify/notifythread.h @@ -783,9 +783,9 @@ priv.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h priv.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h priv.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h priv.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -priv.o: passwd.h pw.h reload.h rm.h run.h sort.h specialdefault.h stat.h -priv.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h vim.h -priv.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h +priv.o: passwd.h pw.h reload.h rm.h rmuser.h run.h sort.h specialdefault.h +priv.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h +priv.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 @@ -812,9 +812,9 @@ 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 privchanger.o: ckeditor.h cp.h default.h download.h emacs.h env.h last.h privchanger.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h -privchanger.o: node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h -privchanger.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h -privchanger.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h +privchanger.o: node.h passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h +privchanger.o: sort.h specialdefault.h stat.h subject.h template.h tinymce.h +privchanger.o: uname.h upload.h uptime.h who.h vim.h ../core/htmlfilter.h privchanger.o: ../../ezc/src/stringconv.h ../notify/notifythread.h privchanger.o: ../core/basethread.h ../core/synchro.h privchanger.o: ../notify/templatesnotify.h ../core/users.h @@ -839,9 +839,9 @@ pw.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h pw.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h pw.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h pw.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -pw.o: passwd.h priv.h reload.h rm.h run.h sort.h specialdefault.h stat.h -pw.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h vim.h -pw.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h +pw.o: passwd.h priv.h reload.h rm.h rmuser.h run.h sort.h specialdefault.h +pw.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h +pw.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h pw.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h pw.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h pw.o: ../core/lastcontainer.h ../core/mounts.h ../core/mountparser.h @@ -867,7 +867,7 @@ reload.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h reload.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h reload.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h reload.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -reload.o: nicedit.h node.h passwd.h priv.h pw.h rm.h run.h sort.h +reload.o: nicedit.h node.h passwd.h priv.h pw.h rm.h rmuser.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 ../notify/notifythread.h @@ -897,9 +897,9 @@ rm.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h rm.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h rm.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h rm.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -rm.o: passwd.h priv.h pw.h reload.h run.h sort.h specialdefault.h stat.h -rm.o: subject.h 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: passwd.h priv.h pw.h reload.h rmuser.h run.h sort.h specialdefault.h +rm.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h +rm.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 ../core/mounts.h ../core/mountparser.h @@ -912,6 +912,41 @@ rm.o: ../templates/templates.h ../templates/patterncacher.h rm.o: ../templates/indexpatterns.h ../templates/patterns.h rm.o: ../templates/changepatterns.h ../templates/htmltextstream.h rm.o: ../core/sessionmanager.h ../core/misc.h +rmuser.o: rmuser.h functionbase.h ../core/item.h ../db/db.h ../db/dbbase.h +rmuser.o: ../db/dbconn.h ../db/dbtextstream.h ../core/textstream.h +rmuser.o: ../core/misc.h ../core/item.h ../core/requesttypes.h +rmuser.o: ../core/error.h ../db/dbitemquery.h ../db/dbitemcolumns.h +rmuser.o: ../core/user.h ../core/group.h ../core/dircontainer.h +rmuser.o: ../core/ugcontainer.h ../core/log.h ../core/textstream.h +rmuser.o: ../core/logmanipulators.h ../core/slog.h ../core/cur.h +rmuser.o: ../core/request.h ../core/error.h ../core/config.h +rmuser.o: ../core/htmlfilter.h ../templates/htmltextstream.h +rmuser.o: ../core/session.h ../core/user.h ../core/plugindata.h +rmuser.o: ../core/rebus.h mount.h ../templates/locale.h ../core/request.h +rmuser.o: ../core/config.h ../core/system.h ../core/dirs.h +rmuser.o: ../core/dircontainer.h ../notify/notify.h ../notify/notifypool.h +rmuser.o: ../templates/patterns.h ../templates/locale.h +rmuser.o: ../templates/localefilter.h ../../ezc/src/ezc.h +rmuser.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h +rmuser.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h +rmuser.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h +rmuser.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h +rmuser.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h +rmuser.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h +rmuser.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h +rmuser.o: ../../ezc/src/stringconv.h ../notify/notifythread.h +rmuser.o: ../core/basethread.h ../core/synchro.h ../notify/templatesnotify.h +rmuser.o: ../core/users.h ../core/ugcontainer.h ../core/lastcontainer.h +rmuser.o: ../core/mounts.h ../core/mountparser.h ../core/crypt.h +rmuser.o: ../core/users.h ../core/groups.h ../core/group.h ../core/loadavg.h +rmuser.o: ../core/image.h ../core/basethread.h ../core/threadmanager.h +rmuser.o: ../core/synchro.h ../core/log.h ../core/misc.h ../core/plugin.h +rmuser.o: ../core/pluginmsg.h ../core/system.h ../core/sessionmanager.h +rmuser.o: ../core/sessioncontainer.h ../functions/functions.h +rmuser.o: ../templates/templates.h ../templates/patterncacher.h +rmuser.o: ../templates/indexpatterns.h ../templates/patterns.h +rmuser.o: ../templates/changepatterns.h ../templates/htmltextstream.h +rmuser.o: ../core/sessionmanager.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 @@ -929,9 +964,9 @@ run.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h run.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h run.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h run.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -run.o: passwd.h priv.h pw.h reload.h rm.h sort.h specialdefault.h stat.h -run.o: subject.h 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: passwd.h priv.h pw.h reload.h rm.h rmuser.h sort.h specialdefault.h +run.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h +run.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 ../core/mounts.h ../core/mountparser.h @@ -955,9 +990,9 @@ sort.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h sort.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h sort.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h sort.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -sort.o: passwd.h priv.h pw.h reload.h rm.h run.h specialdefault.h stat.h -sort.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h vim.h -sort.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h +sort.o: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h specialdefault.h +sort.o: stat.h subject.h template.h tinymce.h uname.h upload.h uptime.h who.h +sort.o: vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 @@ -991,8 +1026,8 @@ specialdefault.o: functions.h functionparser.h ../core/cur.h adduser.h cat.h specialdefault.o: chmod.h privchanger.h chown.h ckeditor.h cp.h default.h specialdefault.o: download.h emacs.h env.h last.h login.h logout.h ln.h ls.h specialdefault.o: man.h meta.h mkdir.h mv.h nicedit.h node.h passwd.h priv.h -specialdefault.o: pw.h reload.h rm.h run.h sort.h stat.h subject.h template.h -specialdefault.o: tinymce.h uname.h upload.h uptime.h who.h vim.h +specialdefault.o: pw.h reload.h rm.h rmuser.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: ../notify/notifythread.h ../core/basethread.h specialdefault.o: ../core/synchro.h ../notify/templatesnotify.h @@ -1019,9 +1054,9 @@ stat.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h stat.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h stat.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h stat.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -stat.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -stat.o: subject.h template.h tinymce.h uname.h upload.h uptime.h who.h vim.h -stat.o: ../core/htmlfilter.h ../../ezc/src/stringconv.h +stat.o: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +stat.o: specialdefault.h subject.h template.h tinymce.h uname.h upload.h +stat.o: uptime.h who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.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 @@ -1047,9 +1082,9 @@ subject.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h subject.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h subject.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h subject.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -subject.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h -subject.o: specialdefault.h stat.h template.h tinymce.h uname.h upload.h -subject.o: uptime.h who.h vim.h ../core/htmlfilter.h +subject.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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 @@ -1077,8 +1112,8 @@ 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 env.h last.h login.h logout.h ln.h ls.h man.h meta.h template.o: mkdir.h mv.h nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h -template.o: run.h sort.h specialdefault.h stat.h subject.h tinymce.h uname.h -template.o: upload.h uptime.h who.h vim.h ../core/htmlfilter.h +template.o: rmuser.h run.h sort.h specialdefault.h stat.h subject.h tinymce.h +template.o: uname.h upload.h uptime.h who.h vim.h ../core/htmlfilter.h template.o: ../../ezc/src/stringconv.h ../notify/notifythread.h template.o: ../core/basethread.h ../core/synchro.h template.o: ../notify/templatesnotify.h ../core/users.h ../core/ugcontainer.h @@ -1105,9 +1140,9 @@ tinymce.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h tinymce.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h tinymce.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h tinymce.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -tinymce.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h -tinymce.o: specialdefault.h stat.h subject.h template.h uname.h upload.h -tinymce.o: uptime.h who.h vim.h ../core/htmlfilter.h +tinymce.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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 @@ -1133,7 +1168,7 @@ uname.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h uname.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h uname.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h uname.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h -uname.o: node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h +uname.o: node.h passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h uname.o: specialdefault.h stat.h subject.h template.h tinymce.h upload.h uname.o: uptime.h who.h vim.h ../core/htmlfilter.h ../../ezc/src/stringconv.h uname.o: ../notify/notifythread.h ../core/basethread.h ../core/synchro.h @@ -1161,9 +1196,9 @@ upload.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h upload.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h upload.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h upload.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -upload.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h -upload.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h -upload.o: uptime.h who.h vim.h ../core/htmlfilter.h +upload.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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 @@ -1196,9 +1231,9 @@ uptime.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h uptime.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h uptime.o: privchanger.h chown.h ckeditor.h cp.h default.h download.h emacs.h uptime.o: env.h last.h login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h -uptime.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h run.h sort.h -uptime.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h -uptime.o: upload.h who.h vim.h ../core/htmlfilter.h +uptime.o: nicedit.h node.h passwd.h priv.h pw.h reload.h rm.h rmuser.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 ../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 @@ -1223,15 +1258,15 @@ vim.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h vim.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h vim.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h vim.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -vim.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -vim.o: stat.h 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: ../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 ../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/image.h ../core/basethread.h -vim.o: ../core/threadmanager.h ../core/synchro.h +vim.o: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +vim.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h +vim.o: upload.h uptime.h who.h ../core/htmlfilter.h +vim.o: ../../ezc/src/stringconv.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/image.h +vim.o: ../core/basethread.h ../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 @@ -1249,12 +1284,12 @@ who.o: ../../ezc/src/generator.h ../../ezc/src/pattern.h functions.h who.o: functionparser.h ../core/cur.h adduser.h cat.h chmod.h privchanger.h who.o: chown.h ckeditor.h cp.h default.h download.h emacs.h env.h last.h who.o: login.h logout.h ln.h ls.h man.h meta.h mkdir.h mv.h nicedit.h node.h -who.o: passwd.h priv.h pw.h reload.h rm.h run.h sort.h specialdefault.h -who.o: stat.h 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: ../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 ../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/image.h ../core/basethread.h -who.o: ../core/threadmanager.h ../core/synchro.h +who.o: passwd.h priv.h pw.h reload.h rm.h rmuser.h run.h sort.h +who.o: specialdefault.h stat.h subject.h template.h tinymce.h uname.h +who.o: upload.h uptime.h vim.h ../core/htmlfilter.h +who.o: ../../ezc/src/stringconv.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/image.h +who.o: ../core/basethread.h ../core/threadmanager.h ../core/synchro.h diff --git a/functions/Makefile.o.dep b/functions/Makefile.o.dep index 7ed47bc..77ccab5 100755 --- a/functions/Makefile.o.dep +++ b/functions/Makefile.o.dep @@ -1 +1 @@ -o = adduser.o cat.o chmod.o chown.o ckeditor.o cp.o default.o download.o emacs.o env.o functionbase.o functionparser.o functions.o last.o ln.o login.o logout.o ls.o man.o meta.o mkdir.o mount.o mv.o nicedit.o node.o passwd.o priv.o privchanger.o pw.o reload.o rm.o run.o sort.o specialdefault.o stat.o subject.o template.o tinymce.o uname.o upload.o uptime.o vim.o who.o +o = adduser.o cat.o chmod.o chown.o ckeditor.o cp.o default.o download.o emacs.o env.o functionbase.o functionparser.o functions.o last.o ln.o login.o logout.o ls.o man.o meta.o mkdir.o mount.o mv.o nicedit.o node.o passwd.o priv.o privchanger.o pw.o reload.o rm.o rmuser.o run.o sort.o specialdefault.o stat.o subject.o template.o tinymce.o uname.o upload.o uptime.o vim.o who.o diff --git a/functions/adduser.cpp b/functions/adduser.cpp index fa48323..d4232b4 100755 --- a/functions/adduser.cpp +++ b/functions/adduser.cpp @@ -87,8 +87,6 @@ return true; -// !! IMPROVE ME -// add some email validation here bool AddUser::IsEmailCorrect(const std::wstring & email, bool use_ses_log) { if( email.size() > WINIX_ACCOUNT_MAX_EMAIL_SIZE ) @@ -102,6 +100,16 @@ bool AddUser::IsEmailCorrect(const std::wstring & email, bool use_ses_log) return false; } + if( !ValidateEmail(email) ) + { + log << log2 << "AddUser: email: " << email << " does not seem to be correct" << logend; + + if( use_ses_log ) + slog << logerror << T(L"adduser_err_email_incorrect") << logend; + + return false; + } + return true; } diff --git a/functions/env.cpp b/functions/env.cpp index 6ede9f5..7ca5031 100755 --- a/functions/env.cpp +++ b/functions/env.cpp @@ -18,6 +18,7 @@ Env::Env() { fun.url = L"env"; puser = 0; + req_id = 0; } diff --git a/functions/functions.cpp b/functions/functions.cpp index b449707..9f6303e 100755 --- a/functions/functions.cpp +++ b/functions/functions.cpp @@ -203,6 +203,7 @@ void Functions::CreateFunctions() Add(fun_pw); Add(fun_reload); Add(fun_rm); + Add(fun_rmuser); Add(fun_run); Add(fun_sort); Add(fun_special_default); diff --git a/functions/functions.h b/functions/functions.h index bca5a9d..939e85d 100755 --- a/functions/functions.h +++ b/functions/functions.h @@ -40,6 +40,7 @@ #include "pw.h" #include "reload.h" #include "rm.h" +#include "rmuser.h" #include "run.h" #include "sort.h" #include "specialdefault.h" @@ -90,6 +91,7 @@ public: Fun::Pw fun_pw; Fun::Reload fun_reload; Fun::Rm fun_rm; + Fun::RmUser fun_rmuser; Fun::Run fun_run; Fun::Sort fun_sort; Fun::SpecialDefault fun_special_default; diff --git a/functions/logout.cpp b/functions/logout.cpp index 8f999f7..2564fad 100755 --- a/functions/logout.cpp +++ b/functions/logout.cpp @@ -8,7 +8,6 @@ */ #include "logout.h" -#include "core/plugin.h" @@ -22,24 +21,12 @@ Logout::Logout() } -void Logout::LogoutCurrentUser() -{ - if( cur->session && cur->session->puser ) - { - long user_id = cur->session->puser->id; - plugin.Call(WINIX_PREPARE_USER_LOGGED_OUT); - - system->users.LogoutCurrentUser(); - plugin.Call(WINIX_USER_LOGGED_OUT, user_id); - } -} - void Logout::MakeGet() { if( cur->session->puser ) { - LogoutCurrentUser(); + system->users.LogoutCurrentUser(); system->RedirectToLastItem(); } } diff --git a/functions/logout.h b/functions/logout.h index ab01e99..8040c9e 100755 --- a/functions/logout.h +++ b/functions/logout.h @@ -23,10 +23,7 @@ class Logout : public FunctionBase public: Logout(); - void MakeGet(); - void LogoutCurrentUser(); - private: diff --git a/functions/pw.cpp b/functions/pw.cpp index 9e9f6af..e054e55 100755 --- a/functions/pw.cpp +++ b/functions/pw.cpp @@ -107,8 +107,8 @@ void Pw::ActivateAccount() const std::wstring & login = cur->request->ParamValue(L"login"); long code = Tol(cur->request->ParamValue(L"code")); - if( ActivateAccount(login, code, true) ) - system->RedirectToLastItem(); + ActivateAccount(login, code, true); + system->RedirectToLastItem(); } diff --git a/functions/rmuser.cpp b/functions/rmuser.cpp new file mode 100755 index 0000000..5c5817e --- /dev/null +++ b/functions/rmuser.cpp @@ -0,0 +1,82 @@ +/* + * This file is a part of Winix + * and is not publicly distributed + * + * Copyright (c) 2012, Tomasz Sowa + * All rights reserved. + * + */ + +#include "rmuser.h" +#include "core/log.h" +#include "core/misc.h" +#include "core/plugin.h" +#include "functions/functions.h" + + + +namespace Fun +{ + +RmUser::RmUser() +{ + fun.url = L"rmuser"; +} + + +bool RmUser::HasAccess() +{ + return cur->session->puser && cur->session->puser->super_user; +} + + +bool RmUser::RemoveUser(long user_id) +{ + User * puser = system->users.GetUser(user_id); + bool result = false; + + if( puser ) + { + name = puser->name; + + if( system->users.Remove(user_id) ) + { + result = true; + log << log2 << "RmUser: user id: " << user_id << " name: " << name << " was removed" << logend; + + if( db->RemoveUser(user_id) != WINIX_ERR_OK ) + log << log1 << "RmUser: I cannot remove a user id: " << user_id << " from database" << logend; + } + } + +return result; +} + + +void RmUser::MakePost() +{ + if( cur->session->puser ) + { + long user_id; + + if( cur->session->puser->super_user ) + user_id = Tol(cur->request->PostVar(L"userid")); + else + user_id = cur->session->puser->id; + + RemoveUser(user_id); + } + + system->RedirectToLastItem(); +} + + +void RmUser::MakeGet() +{ +} + + + + +} // namespace + diff --git a/functions/rmuser.h b/functions/rmuser.h new file mode 100755 index 0000000..ab8aab4 --- /dev/null +++ b/functions/rmuser.h @@ -0,0 +1,42 @@ +/* + * This file is a part of Winix + * and is not publicly distributed + * + * Copyright (c) 2012, Tomasz Sowa + * All rights reserved. + * + */ + +#ifndef headerfile_winix_functions_rmuser +#define headerfile_winix_functions_rmuser + +#include "functionbase.h" + + +namespace Fun +{ + + +class RmUser : public FunctionBase +{ +public: + + RmUser(); + + bool HasAccess(); + void MakeGet(); + void MakePost(); + + bool RemoveUser(long user_id); + + +private: + + std::wstring name; + +}; + + +} // namespace + +#endif diff --git a/html/fun_passwd.html b/html/fun_passwd.html index 0a1beec..6e14d83 100755 --- a/html/fun_passwd.html +++ b/html/fun_passwd.html @@ -7,8 +7,8 @@ [if user_super_user]

{passwd_login}:

[else] diff --git a/html/fun_rmuser.html b/html/fun_rmuser.html new file mode 100755 index 0000000..2a0f045 --- /dev/null +++ b/html/fun_rmuser.html @@ -0,0 +1,27 @@ +

{rmuser_header}

+ +[if user_logged] + +
+
+ {rmuser_legend} + + [if user_super_user] + +

{rmuser_selectuser}:

+ + + [else] +

{rmuser_removecurrent}

+ + [end] + + +
+
+ +[end] diff --git a/locale/en b/locale/en index 5fbe1cf..8e08dba 100755 --- a/locale/en +++ b/locale/en @@ -214,6 +214,13 @@ rm_cannot_remove_root_dir = You cannot remove the root directory rm_content_use_r_option = Content of a directory can be removed only with 'r' parameter +rmuser_header = Remove user +rmuser_legend = Remove user form +rmuser_selectuser = Select a user +rmuser_submit = Remove +rmuser_removecurrent = Are you really want to remove your account from our service? + + thread_create_new = Create a new thread thread_tab_title = Thread title thread_tab_author = Author @@ -330,6 +337,7 @@ adduser_err_password_too_big2 = characters adduser_err_email_too_big = Email cannot be longer than adduser_err_email_too_big2 = characters adduser_auto_activate = Automatically activate this account +adduser_err_email_incorrect = This email is not correct mount_header = Mount points diff --git a/locale/pl b/locale/pl index c4db81a..267e58a 100755 --- a/locale/pl +++ b/locale/pl @@ -234,7 +234,11 @@ rm_use_r_option = To jest katalog, aby go usunąć musisz użyć parametru 'r' rm_cannot_remove_root_dir = Nie możesz usunąć głównego katalogu rm_content_use_r_option = Zawartość katalogu może zostać usunięta tylko z użyciem parametru 'r' - +rmuser_header = Usuń użytkownika +rmuser_legend = Formularz usunięcia użytkownika +rmuser_selectuser = Wybierz użytkownika +rmuser_submit = Usuń +rmuser_removecurrent = Naprawdę chcesz usunąć swoje konto z naszego serwisu? thread_create_new = Załóż nowy wątek thread_tab_title = Tytuł wątku @@ -350,6 +354,7 @@ adduser_err_password_too_big2 = znaków adduser_err_email_too_big = Adres email nie może być większy niż adduser_err_email_too_big2 = znaków adduser_auto_activate = Automatically activate this account +adduser_err_email_incorrect = Podany email jest nieprawidłowy mount_header = Punkty montowania diff --git a/main/Makefile.dep b/main/Makefile.dep index 53a829f..e4820e4 100755 --- a/main/Makefile.dep +++ b/main/Makefile.dep @@ -35,15 +35,15 @@ main.o: ../functions/ln.h ../functions/ls.h ../functions/man.h main.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h main.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h main.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -main.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h -main.o: ../functions/stat.h ../functions/subject.h ../functions/template.h -main.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h -main.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h -main.o: ../core/htmlfilter.h ../templates/templates.h -main.o: ../templates/patterncacher.h ../templates/indexpatterns.h -main.o: ../templates/patterns.h ../templates/changepatterns.h -main.o: ../templates/htmltextstream.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 -main.o: ../core/plugin.h ../core/pluginmsg.h +main.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h +main.o: ../functions/specialdefault.h ../functions/stat.h +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 ../templates/patterns.h +main.o: ../templates/changepatterns.h ../templates/htmltextstream.h +main.o: ../core/sessionmanager.h ../core/compress.h ../core/postparser.h +main.o: ../core/httpsimpleparser.h ../core/cookieparser.h +main.o: ../core/postmultiparser.h ../core/acceptencodingparser.h +main.o: ../core/acceptbaseparser.h ../core/plugin.h ../core/pluginmsg.h diff --git a/notify/Makefile.dep b/notify/Makefile.dep index e4b60ba..314b007 100755 --- a/notify/Makefile.dep +++ b/notify/Makefile.dep @@ -40,9 +40,9 @@ notify.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h notify.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h notify.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h notify.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h -notify.o: ../functions/reload.h ../functions/rm.h ../functions/sort.h -notify.o: ../functions/specialdefault.h ../functions/stat.h -notify.o: ../functions/subject.h ../functions/template.h +notify.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +notify.o: ../functions/sort.h ../functions/specialdefault.h +notify.o: ../functions/stat.h ../functions/subject.h ../functions/template.h notify.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h notify.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h notifypool.o: notifypool.h ../templates/locale.h @@ -106,12 +106,12 @@ templatesnotify.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h templatesnotify.o: ../functions/nicedit.h ../functions/node.h templatesnotify.o: ../functions/passwd.h ../functions/priv.h templatesnotify.o: ../functions/pw.h ../functions/reload.h ../functions/rm.h -templatesnotify.o: ../functions/sort.h ../functions/specialdefault.h -templatesnotify.o: ../functions/stat.h ../functions/subject.h -templatesnotify.o: ../functions/template.h ../functions/tinymce.h -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: ../functions/rmuser.h ../functions/sort.h +templatesnotify.o: ../functions/specialdefault.h ../functions/stat.h +templatesnotify.o: ../functions/subject.h ../functions/template.h +templatesnotify.o: ../functions/tinymce.h ../functions/uname.h +templatesnotify.o: ../functions/upload.h ../functions/uptime.h +templatesnotify.o: ../functions/who.h ../functions/vim.h ../core/htmlfilter.h templatesnotify.o: ../templates/templates.h ../templates/patterncacher.h templatesnotify.o: ../templates/indexpatterns.h ../templates/patterns.h templatesnotify.o: ../templates/changepatterns.h ../core/sessionmanager.h diff --git a/notify/notify.cpp b/notify/notify.cpp index d1dd864..49c99ce 100755 --- a/notify/notify.cpp +++ b/notify/notify.cpp @@ -114,7 +114,7 @@ void Notify::ActivateAccount(const std::wstring & name, const std::wstring & ema msg.code = WINIX_NOTIFY_CODE_CONFIRM_ACCOUNT; msg.name = name; msg.email = email; - msg.lang = 0; + msg.lang = 0; // !! IMPROVE ME a better language can be chose msg.activate_code = code; msg.template_index = notify_template_activate_account; CreateActivateLink(name, code, msg.item_link); diff --git a/notify/notifythread.cpp b/notify/notifythread.cpp index 85a3bf2..4da48dc 100755 --- a/notify/notifythread.cpp +++ b/notify/notifythread.cpp @@ -107,11 +107,11 @@ bool res = false; { for(i=users->Begin() ; i != users->End() ; ++i) { - if( ((*i)->notify & TemplatesNotifyFunctions::notify_msg.code) != 0 ) + if( (i->notify & TemplatesNotifyFunctions::notify_msg.code) != 0 ) { - msg.name = (*i)->name; - msg.email = (*i)->email; - msg.lang = config->locale_default_index; // !! bedzie osobno dla kazdego uzytkownika + msg.name = i->name; + msg.email = i->email; + msg.lang = config->locale_default_index; // !! IMPROVE ME bedzie osobno dla kazdego uzytkownika notify_user.push_back(msg); res = true; diff --git a/plugins/export/Makefile.dep b/plugins/export/Makefile.dep index 25417f7..8b9c9d9 100755 --- a/plugins/export/Makefile.dep +++ b/plugins/export/Makefile.dep @@ -94,7 +94,8 @@ init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h init.o: ../../functions/passwd.h ../../functions/priv.h ../../functions/pw.h -init.o: ../../functions/reload.h ../../functions/rm.h ../../functions/sort.h +init.o: ../../functions/reload.h ../../functions/rm.h +init.o: ../../functions/rmuser.h ../../functions/sort.h init.o: ../../functions/specialdefault.h ../../functions/stat.h init.o: ../../functions/subject.h ../../functions/template.h init.o: ../../functions/tinymce.h ../../functions/uname.h diff --git a/plugins/gallery/Makefile.dep b/plugins/gallery/Makefile.dep index 183f4d2..cc68eec 100755 --- a/plugins/gallery/Makefile.dep +++ b/plugins/gallery/Makefile.dep @@ -69,7 +69,8 @@ init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h init.o: ../../functions/passwd.h ../../functions/priv.h ../../functions/pw.h -init.o: ../../functions/reload.h ../../functions/rm.h ../../functions/sort.h +init.o: ../../functions/reload.h ../../functions/rm.h +init.o: ../../functions/rmuser.h ../../functions/sort.h init.o: ../../functions/specialdefault.h ../../functions/stat.h init.o: ../../functions/subject.h ../../functions/template.h init.o: ../../functions/tinymce.h ../../functions/uname.h @@ -125,13 +126,13 @@ templates.o: ../../functions/mv.h ../../functions/nicedit.h templates.o: ../../functions/node.h ../../functions/passwd.h templates.o: ../../functions/priv.h ../../functions/pw.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 ../../core/htmlfilter.h -templates.o: ../../templates/templates.h ../../templates/patterncacher.h -templates.o: ../../templates/indexpatterns.h ../../templates/patterns.h -templates.o: ../../templates/changepatterns.h +templates.o: ../../functions/rmuser.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 ../../templates/templates.h +templates.o: ../../templates/patterncacher.h ../../templates/indexpatterns.h +templates.o: ../../templates/patterns.h ../../templates/changepatterns.h templates.o: ../../templates/htmltextstream.h ../../core/sessionmanager.h diff --git a/plugins/group/Makefile.dep b/plugins/group/Makefile.dep index 3da29f3..eb3eb7f 100755 --- a/plugins/group/Makefile.dep +++ b/plugins/group/Makefile.dep @@ -69,7 +69,8 @@ init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h init.o: ../../functions/passwd.h ../../functions/priv.h ../../functions/pw.h -init.o: ../../functions/reload.h ../../functions/rm.h ../../functions/sort.h +init.o: ../../functions/reload.h ../../functions/rm.h +init.o: ../../functions/rmuser.h ../../functions/sort.h init.o: ../../functions/specialdefault.h ../../functions/stat.h init.o: ../../functions/subject.h ../../functions/template.h init.o: ../../functions/tinymce.h ../../functions/uname.h @@ -129,9 +130,10 @@ templates.o: ../../functions/mv.h ../../functions/nicedit.h templates.o: ../../functions/node.h ../../functions/passwd.h templates.o: ../../functions/priv.h ../../functions/pw.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 ../../core/misc.h +templates.o: ../../functions/rmuser.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 groupinfo.h +templates.o: ../../core/misc.h diff --git a/plugins/menu/Makefile.dep b/plugins/menu/Makefile.dep index ca50f1d..dab3175 100755 --- a/plugins/menu/Makefile.dep +++ b/plugins/menu/Makefile.dep @@ -63,7 +63,8 @@ init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h init.o: ../../functions/passwd.h ../../functions/priv.h ../../functions/pw.h -init.o: ../../functions/reload.h ../../functions/rm.h ../../functions/sort.h +init.o: ../../functions/reload.h ../../functions/rm.h +init.o: ../../functions/rmuser.h ../../functions/sort.h init.o: ../../functions/specialdefault.h ../../functions/stat.h init.o: ../../functions/subject.h ../../functions/template.h init.o: ../../functions/tinymce.h ../../functions/uname.h @@ -123,10 +124,10 @@ templates.o: ../../functions/mv.h ../../functions/nicedit.h templates.o: ../../functions/node.h ../../functions/passwd.h templates.o: ../../functions/priv.h ../../functions/pw.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 ../../core/log.h ../../core/misc.h cache.h -templates.o: ../../core/dirs.h +templates.o: ../../functions/rmuser.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 ../../core/log.h +templates.o: ../../core/misc.h cache.h ../../core/dirs.h diff --git a/plugins/stats/Makefile.dep b/plugins/stats/Makefile.dep index c171979..3bec505 100755 --- a/plugins/stats/Makefile.dep +++ b/plugins/stats/Makefile.dep @@ -42,7 +42,8 @@ init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h init.o: ../../functions/passwd.h ../../functions/priv.h ../../functions/pw.h -init.o: ../../functions/reload.h ../../functions/rm.h ../../functions/sort.h +init.o: ../../functions/reload.h ../../functions/rm.h +init.o: ../../functions/rmuser.h ../../functions/sort.h init.o: ../../functions/specialdefault.h ../../functions/stat.h init.o: ../../functions/subject.h ../../functions/template.h init.o: ../../functions/tinymce.h ../../functions/uname.h @@ -105,14 +106,14 @@ templates.o: ../../functions/mv.h ../../functions/nicedit.h templates.o: ../../functions/node.h ../../functions/passwd.h templates.o: ../../functions/priv.h ../../functions/pw.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 ../../core/htmlfilter.h -templates.o: ../../templates/templates.h ../../templates/patterncacher.h -templates.o: ../../templates/indexpatterns.h ../../templates/patterns.h -templates.o: ../../templates/changepatterns.h +templates.o: ../../functions/rmuser.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 ../../templates/templates.h +templates.o: ../../templates/patterncacher.h ../../templates/indexpatterns.h +templates.o: ../../templates/patterns.h ../../templates/changepatterns.h templates.o: ../../templates/htmltextstream.h ../../core/sessionmanager.h templates.o: ../../core/misc.h stats.h ../../templates/misc.h diff --git a/plugins/thread/Makefile.dep b/plugins/thread/Makefile.dep index b73b8cb..d63a14f 100755 --- a/plugins/thread/Makefile.dep +++ b/plugins/thread/Makefile.dep @@ -47,13 +47,13 @@ createthread.o: ../../functions/mkdir.h ../../functions/mv.h createthread.o: ../../functions/nicedit.h ../../functions/node.h createthread.o: ../../functions/passwd.h ../../functions/priv.h createthread.o: ../../functions/pw.h ../../functions/reload.h -createthread.o: ../../functions/rm.h ../../functions/sort.h -createthread.o: ../../functions/specialdefault.h ../../functions/stat.h -createthread.o: ../../functions/subject.h ../../functions/template.h -createthread.o: ../../functions/tinymce.h ../../functions/uname.h -createthread.o: ../../functions/upload.h ../../functions/uptime.h -createthread.o: ../../functions/who.h ../../functions/vim.h -createthread.o: ../../core/htmlfilter.h +createthread.o: ../../functions/rm.h ../../functions/rmuser.h +createthread.o: ../../functions/sort.h ../../functions/specialdefault.h +createthread.o: ../../functions/stat.h ../../functions/subject.h +createthread.o: ../../functions/template.h ../../functions/tinymce.h +createthread.o: ../../functions/uname.h ../../functions/upload.h +createthread.o: ../../functions/uptime.h ../../functions/who.h +createthread.o: ../../functions/vim.h ../../core/htmlfilter.h funthread.o: ../../core/misc.h ../../core/item.h ../../core/requesttypes.h funthread.o: funthread.h ../../functions/functionbase.h ../../core/item.h funthread.o: ../../db/db.h ../../db/dbbase.h ../../db/dbconn.h @@ -127,7 +127,8 @@ init.o: ../../functions/logout.h ../../functions/ln.h ../../functions/ls.h init.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h init.o: ../../functions/mv.h ../../functions/nicedit.h ../../functions/node.h init.o: ../../functions/passwd.h ../../functions/priv.h ../../functions/pw.h -init.o: ../../functions/reload.h ../../functions/rm.h ../../functions/sort.h +init.o: ../../functions/reload.h ../../functions/rm.h +init.o: ../../functions/rmuser.h ../../functions/sort.h init.o: ../../functions/specialdefault.h ../../functions/stat.h init.o: ../../functions/subject.h ../../functions/template.h init.o: ../../functions/tinymce.h ../../functions/uname.h @@ -177,7 +178,7 @@ reply.o: ../../functions/man.h ../../functions/meta.h ../../functions/mkdir.h reply.o: ../../functions/mv.h ../../functions/nicedit.h reply.o: ../../functions/node.h ../../functions/passwd.h reply.o: ../../functions/priv.h ../../functions/pw.h ../../functions/reload.h -reply.o: ../../functions/rm.h ../../functions/sort.h +reply.o: ../../functions/rm.h ../../functions/rmuser.h ../../functions/sort.h reply.o: ../../functions/specialdefault.h ../../functions/stat.h reply.o: ../../functions/subject.h ../../functions/template.h reply.o: ../../functions/tinymce.h ../../functions/uname.h @@ -268,15 +269,15 @@ templates.o: ../../functions/mv.h ../../functions/nicedit.h templates.o: ../../functions/node.h ../../functions/passwd.h templates.o: ../../functions/priv.h ../../functions/pw.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 ../../core/htmlfilter.h -templates.o: ../../templates/templates.h ../../templates/patterncacher.h -templates.o: ../../templates/indexpatterns.h ../../templates/patterns.h -templates.o: ../../templates/changepatterns.h +templates.o: ../../functions/rmuser.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 ../../templates/templates.h +templates.o: ../../templates/patterncacher.h ../../templates/indexpatterns.h +templates.o: ../../templates/patterns.h ../../templates/changepatterns.h templates.o: ../../templates/htmltextstream.h ../../core/sessionmanager.h threadinfo.o: threadinfo.h ../../core/item.h ../../core/system.h threadinfo.o: ../../core/dirs.h ../../core/item.h ../../core/dircontainer.h diff --git a/plugins/ticket/Makefile.dep b/plugins/ticket/Makefile.dep index 85faad2..f825e95 100755 --- a/plugins/ticket/Makefile.dep +++ b/plugins/ticket/Makefile.dep @@ -46,14 +46,14 @@ createticket.o: ../../functions/mkdir.h ../../functions/mv.h createticket.o: ../../functions/nicedit.h ../../functions/node.h createticket.o: ../../functions/passwd.h ../../functions/priv.h createticket.o: ../../functions/pw.h ../../functions/reload.h -createticket.o: ../../functions/rm.h ../../functions/sort.h -createticket.o: ../../functions/specialdefault.h ../../functions/stat.h -createticket.o: ../../functions/subject.h ../../functions/template.h -createticket.o: ../../functions/tinymce.h ../../functions/uname.h -createticket.o: ../../functions/upload.h ../../functions/uptime.h -createticket.o: ../../functions/who.h ../../functions/vim.h -createticket.o: ../../core/htmlfilter.h sessiondata.h ../../core/plugindata.h -createticket.o: ../../functions/rm.h +createticket.o: ../../functions/rm.h ../../functions/rmuser.h +createticket.o: ../../functions/sort.h ../../functions/specialdefault.h +createticket.o: ../../functions/stat.h ../../functions/subject.h +createticket.o: ../../functions/template.h ../../functions/tinymce.h +createticket.o: ../../functions/uname.h ../../functions/upload.h +createticket.o: ../../functions/uptime.h ../../functions/who.h +createticket.o: ../../functions/vim.h ../../core/htmlfilter.h sessiondata.h +createticket.o: ../../core/plugindata.h ../../functions/rm.h editticket.o: editticket.h tdb.h ticket.h ../../db/dbbase.h ../../db/dbconn.h editticket.o: ../../db/dbtextstream.h ../../core/textstream.h editticket.o: ../../core/misc.h ../../core/item.h ../../core/requesttypes.h @@ -97,14 +97,15 @@ editticket.o: ../../functions/mv.h ../../functions/nicedit.h editticket.o: ../../functions/node.h ../../functions/passwd.h editticket.o: ../../functions/priv.h ../../functions/pw.h editticket.o: ../../functions/reload.h ../../functions/rm.h -editticket.o: ../../functions/sort.h ../../functions/specialdefault.h -editticket.o: ../../functions/stat.h ../../functions/subject.h -editticket.o: ../../functions/template.h ../../functions/tinymce.h -editticket.o: ../../functions/uname.h ../../functions/upload.h -editticket.o: ../../functions/uptime.h ../../functions/who.h -editticket.o: ../../functions/vim.h ../../core/htmlfilter.h -editticket.o: ../../functions/functionbase.h ../../core/synchro.h -editticket.o: sessiondata.h ../../core/plugindata.h ../../functions/rm.h +editticket.o: ../../functions/rmuser.h ../../functions/sort.h +editticket.o: ../../functions/specialdefault.h ../../functions/stat.h +editticket.o: ../../functions/subject.h ../../functions/template.h +editticket.o: ../../functions/tinymce.h ../../functions/uname.h +editticket.o: ../../functions/upload.h ../../functions/uptime.h +editticket.o: ../../functions/who.h ../../functions/vim.h +editticket.o: ../../core/htmlfilter.h ../../functions/functionbase.h +editticket.o: ../../core/synchro.h sessiondata.h ../../core/plugindata.h +editticket.o: ../../functions/rm.h funticket.o: funticket.h tdb.h ticket.h ../../db/dbbase.h ../../db/dbconn.h funticket.o: ../../db/dbtextstream.h ../../core/textstream.h funticket.o: ../../core/misc.h ../../core/item.h ../../core/requesttypes.h @@ -148,18 +149,18 @@ funticket.o: ../../functions/mv.h ../../functions/nicedit.h funticket.o: ../../functions/node.h ../../functions/passwd.h funticket.o: ../../functions/priv.h ../../functions/pw.h funticket.o: ../../functions/reload.h ../../functions/rm.h -funticket.o: ../../functions/sort.h ../../functions/specialdefault.h -funticket.o: ../../functions/stat.h ../../functions/subject.h -funticket.o: ../../functions/template.h ../../functions/tinymce.h -funticket.o: ../../functions/uname.h ../../functions/upload.h -funticket.o: ../../functions/uptime.h ../../functions/who.h -funticket.o: ../../functions/vim.h ../../core/htmlfilter.h -funticket.o: ../../functions/functionbase.h ../../core/synchro.h -funticket.o: ../../core/plugin.h pluginmsg.h ../../core/system.h -funticket.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h -funticket.o: ../../templates/templates.h ../../templates/patterncacher.h -funticket.o: ../../templates/indexpatterns.h ../../templates/patterns.h -funticket.o: ../../templates/changepatterns.h +funticket.o: ../../functions/rmuser.h ../../functions/sort.h +funticket.o: ../../functions/specialdefault.h ../../functions/stat.h +funticket.o: ../../functions/subject.h ../../functions/template.h +funticket.o: ../../functions/tinymce.h ../../functions/uname.h +funticket.o: ../../functions/upload.h ../../functions/uptime.h +funticket.o: ../../functions/who.h ../../functions/vim.h +funticket.o: ../../core/htmlfilter.h ../../functions/functionbase.h +funticket.o: ../../core/synchro.h ../../core/plugin.h pluginmsg.h +funticket.o: ../../core/system.h ../../core/sessionmanager.h +funticket.o: ../../core/sessioncontainer.h ../../templates/templates.h +funticket.o: ../../templates/patterncacher.h ../../templates/indexpatterns.h +funticket.o: ../../templates/patterns.h ../../templates/changepatterns.h funticket.o: ../../templates/htmltextstream.h ../../core/sessionmanager.h funticket.o: ../../plugins/thread/pluginmsg.h init.o: tdb.h ticket.h ../../db/dbbase.h ../../db/dbconn.h @@ -201,7 +202,8 @@ init.o: ../../functions/ls.h ../../functions/man.h ../../functions/meta.h init.o: ../../functions/mkdir.h ../../functions/mv.h init.o: ../../functions/nicedit.h ../../functions/node.h init.o: ../../functions/passwd.h ../../functions/priv.h ../../functions/pw.h -init.o: ../../functions/reload.h ../../functions/rm.h ../../functions/sort.h +init.o: ../../functions/reload.h ../../functions/rm.h +init.o: ../../functions/rmuser.h ../../functions/sort.h init.o: ../../functions/specialdefault.h ../../functions/stat.h init.o: ../../functions/subject.h ../../functions/template.h init.o: ../../functions/tinymce.h ../../functions/uname.h @@ -264,17 +266,18 @@ showtickets.o: ../../functions/mv.h ../../functions/nicedit.h showtickets.o: ../../functions/node.h ../../functions/passwd.h showtickets.o: ../../functions/priv.h ../../functions/pw.h showtickets.o: ../../functions/reload.h ../../functions/rm.h -showtickets.o: ../../functions/sort.h ../../functions/specialdefault.h -showtickets.o: ../../functions/stat.h ../../functions/subject.h -showtickets.o: ../../functions/template.h ../../functions/tinymce.h -showtickets.o: ../../functions/uname.h ../../functions/upload.h -showtickets.o: ../../functions/uptime.h ../../functions/who.h -showtickets.o: ../../functions/vim.h ../../core/htmlfilter.h -showtickets.o: ../../functions/functionbase.h ../../core/synchro.h -showtickets.o: pluginmsg.h ../../plugins/thread/pluginmsg.h -showtickets.o: ../../core/plugin.h ../../core/system.h -showtickets.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h -showtickets.o: ../../templates/templates.h ../../templates/patterncacher.h +showtickets.o: ../../functions/rmuser.h ../../functions/sort.h +showtickets.o: ../../functions/specialdefault.h ../../functions/stat.h +showtickets.o: ../../functions/subject.h ../../functions/template.h +showtickets.o: ../../functions/tinymce.h ../../functions/uname.h +showtickets.o: ../../functions/upload.h ../../functions/uptime.h +showtickets.o: ../../functions/who.h ../../functions/vim.h +showtickets.o: ../../core/htmlfilter.h ../../functions/functionbase.h +showtickets.o: ../../core/synchro.h pluginmsg.h +showtickets.o: ../../plugins/thread/pluginmsg.h ../../core/plugin.h +showtickets.o: ../../core/system.h ../../core/sessionmanager.h +showtickets.o: ../../core/sessioncontainer.h ../../templates/templates.h +showtickets.o: ../../templates/patterncacher.h showtickets.o: ../../templates/indexpatterns.h ../../templates/patterns.h showtickets.o: ../../templates/changepatterns.h showtickets.o: ../../templates/htmltextstream.h ../../core/sessionmanager.h @@ -324,20 +327,20 @@ templates.o: ../../functions/mv.h ../../functions/nicedit.h templates.o: ../../functions/node.h ../../functions/passwd.h templates.o: ../../functions/priv.h ../../functions/pw.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 ../../core/htmlfilter.h tdb.h -templates.o: ../../db/dbbase.h ../../db/dbconn.h ../../db/dbtextstream.h -templates.o: ../../core/error.h editticket.h ../../functions/functionbase.h -templates.o: ../../core/synchro.h createticket.h ../../core/misc.h -templates.o: ../../core/plugin.h pluginmsg.h ../../core/system.h -templates.o: ../../core/sessionmanager.h ../../core/sessioncontainer.h -templates.o: ../../templates/templates.h ../../templates/patterncacher.h -templates.o: ../../templates/indexpatterns.h ../../templates/patterns.h -templates.o: ../../templates/changepatterns.h +templates.o: ../../functions/rmuser.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 tdb.h ../../db/dbbase.h +templates.o: ../../db/dbconn.h ../../db/dbtextstream.h ../../core/error.h +templates.o: editticket.h ../../functions/functionbase.h ../../core/synchro.h +templates.o: createticket.h ../../core/misc.h ../../core/plugin.h pluginmsg.h +templates.o: ../../core/system.h ../../core/sessionmanager.h +templates.o: ../../core/sessioncontainer.h ../../templates/templates.h +templates.o: ../../templates/patterncacher.h ../../templates/indexpatterns.h +templates.o: ../../templates/patterns.h ../../templates/changepatterns.h templates.o: ../../templates/htmltextstream.h ../../core/sessionmanager.h templates.o: sessiondata.h ../../core/plugindata.h ../../functions/rm.h templates.o: ../../plugins/thread/pluginmsg.h ../../templates/miscspace.h @@ -383,12 +386,13 @@ ticketinfo.o: ../../functions/mv.h ../../functions/nicedit.h ticketinfo.o: ../../functions/node.h ../../functions/passwd.h ticketinfo.o: ../../functions/priv.h ../../functions/pw.h ticketinfo.o: ../../functions/reload.h ../../functions/rm.h -ticketinfo.o: ../../functions/sort.h ../../functions/specialdefault.h -ticketinfo.o: ../../functions/stat.h ../../functions/subject.h -ticketinfo.o: ../../functions/template.h ../../functions/tinymce.h -ticketinfo.o: ../../functions/uname.h ../../functions/upload.h -ticketinfo.o: ../../functions/uptime.h ../../functions/who.h -ticketinfo.o: ../../functions/vim.h ../../core/htmlfilter.h tdb.h -ticketinfo.o: ../../db/dbbase.h ../../db/dbconn.h ../../db/dbtextstream.h -ticketinfo.o: ../../core/error.h ../../core/log.h ../../core/misc.h -ticketinfo.o: sessiondata.h ../../core/plugindata.h ../../functions/rm.h +ticketinfo.o: ../../functions/rmuser.h ../../functions/sort.h +ticketinfo.o: ../../functions/specialdefault.h ../../functions/stat.h +ticketinfo.o: ../../functions/subject.h ../../functions/template.h +ticketinfo.o: ../../functions/tinymce.h ../../functions/uname.h +ticketinfo.o: ../../functions/upload.h ../../functions/uptime.h +ticketinfo.o: ../../functions/who.h ../../functions/vim.h +ticketinfo.o: ../../core/htmlfilter.h tdb.h ../../db/dbbase.h +ticketinfo.o: ../../db/dbconn.h ../../db/dbtextstream.h ../../core/error.h +ticketinfo.o: ../../core/log.h ../../core/misc.h sessiondata.h +ticketinfo.o: ../../core/plugindata.h ../../functions/rm.h diff --git a/static/basic/winix.css b/static/basic/winix.css index b362d79..37daa52 100755 --- a/static/basic/winix.css +++ b/static/basic/winix.css @@ -113,6 +113,12 @@ table { margin-left: 3em; } +table tr.roweven { +background: #F8F8F8; +} + +table tr.rowodd { +} table th { font-weight: bold; @@ -122,6 +128,51 @@ padding-right: 2em; table td { padding-right: 2em; } + + +table.tablea { +border: none; +} + +table.tablea th, table.tablea td { +border: none; +} + + +table.tableb { +border: none; +} + +table.tableb th { +border: none; +border-bottom: 1px solid #AEAEAE; +} + +table.tableb td { +border: none; +} + + + + +table.tablec { +border: none; +border: 1px solid #AEAEAE; +} + +table.tablec th { +border: none; +border-bottom: 1px solid #AEAEAE; +border-left: 1px dotted #AEAEAE; +border-right: 1px dotted #AEAEAE; +} + +table.tablec td { +border: none; +border-left: 1px dotted #AEAEAE; +border-right: 1px dotted #AEAEAE; +} + p { margin: 0.5em 0 0.5em 0; diff --git a/static/layout1/winix.css b/static/layout1/winix.css index 1fb83e2..b65d420 100755 --- a/static/layout1/winix.css +++ b/static/layout1/winix.css @@ -530,6 +530,72 @@ padding: 0.2em; } +table { +margin-left: 3em; +} + +table tr.roweven { +background: #F8F8F8; +} + +table tr.rowodd { +} + +table th { +font-weight: bold; +padding-right: 2em; +} + +table td { +padding-right: 2em; +} + + +table.tablea { +border: none; +} + +table.tablea th, table.tablea td { +border: none; +} + + +table.tableb { +border: none; +} + +table.tableb th { +border: none; +border-bottom: 1px solid #AEAEAE; +} + +table.tableb td { +border: none; +} + + + + +table.tablec { +border: none; +border: 1px solid #AEAEAE; +} + +table.tablec th { +border: none; +border-bottom: 1px solid #AEAEAE; +border-left: 1px dotted #AEAEAE; +border-right: 1px dotted #AEAEAE; +} + +table.tablec td { +border: none; +border-left: 1px dotted #AEAEAE; +border-right: 1px dotted #AEAEAE; +} + + + table { margin: 0.5em 0 1em 0; border-collapse: collapse; diff --git a/templates/Makefile.dep b/templates/Makefile.dep index dc78ad0..8db01f4 100755 --- a/templates/Makefile.dep +++ b/templates/Makefile.dep @@ -91,10 +91,11 @@ dir.o: ../functions/ln.h ../functions/ls.h ../functions/man.h dir.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h dir.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h dir.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -dir.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h -dir.o: ../functions/stat.h ../functions/subject.h ../functions/template.h -dir.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h -dir.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h +dir.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h +dir.o: ../functions/specialdefault.h ../functions/stat.h +dir.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h +dir.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h +dir.o: ../functions/who.h ../functions/vim.h doc.o: templates.h ../../ezc/src/ezc.h ../../ezc/src/generator.h doc.o: ../../ezc/src/pattern.h ../../ezc/src/item.h ../../ezc/src/funinfo.h doc.o: ../../ezc/src/functions.h ../../ezc/src/stringconv.h misc.h @@ -153,10 +154,11 @@ env.o: ../functions/ln.h ../functions/ls.h ../functions/man.h env.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h env.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h env.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -env.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h -env.o: ../functions/stat.h ../functions/subject.h ../functions/template.h -env.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h -env.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h +env.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h +env.o: ../functions/specialdefault.h ../functions/stat.h +env.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h +env.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h +env.o: ../functions/who.h ../functions/vim.h filters.o: templates.h ../../ezc/src/ezc.h ../../ezc/src/generator.h filters.o: ../../ezc/src/pattern.h ../../ezc/src/item.h filters.o: ../../ezc/src/funinfo.h ../../ezc/src/functions.h @@ -359,8 +361,8 @@ man.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h man.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h man.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h man.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h -man.o: ../functions/reload.h ../functions/rm.h ../functions/sort.h -man.o: ../functions/specialdefault.h ../functions/stat.h +man.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +man.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h man.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h man.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h man.o: ../functions/who.h ../functions/vim.h @@ -488,8 +490,8 @@ priv.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h priv.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h priv.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h priv.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h -priv.o: ../functions/reload.h ../functions/rm.h ../functions/sort.h -priv.o: ../functions/specialdefault.h ../functions/stat.h +priv.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +priv.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h priv.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h priv.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h priv.o: ../functions/who.h ../functions/vim.h @@ -601,8 +603,8 @@ sys.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h sys.o: ../functions/man.h ../functions/meta.h ../functions/mkdir.h sys.o: ../functions/mv.h ../functions/nicedit.h ../functions/node.h sys.o: ../functions/passwd.h ../functions/priv.h ../functions/pw.h -sys.o: ../functions/reload.h ../functions/rm.h ../functions/sort.h -sys.o: ../functions/specialdefault.h ../functions/stat.h +sys.o: ../functions/reload.h ../functions/rm.h ../functions/rmuser.h +sys.o: ../functions/sort.h ../functions/specialdefault.h ../functions/stat.h sys.o: ../functions/subject.h ../functions/template.h ../functions/tinymce.h sys.o: ../functions/uname.h ../functions/upload.h ../functions/uptime.h sys.o: ../functions/who.h ../functions/vim.h ../templates/templates.h @@ -672,7 +674,7 @@ templates.o: ../functions/ln.h ../functions/ls.h ../functions/man.h templates.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h templates.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h templates.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -templates.o: ../functions/rm.h ../functions/sort.h +templates.o: ../functions/rm.h ../functions/rmuser.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 @@ -813,8 +815,9 @@ winix.o: ../functions/ln.h ../functions/ls.h ../functions/man.h winix.o: ../functions/meta.h ../functions/mkdir.h ../functions/mv.h winix.o: ../functions/nicedit.h ../functions/node.h ../functions/passwd.h winix.o: ../functions/priv.h ../functions/pw.h ../functions/reload.h -winix.o: ../functions/rm.h ../functions/sort.h ../functions/specialdefault.h -winix.o: ../functions/stat.h ../functions/subject.h ../functions/template.h +winix.o: ../functions/rm.h ../functions/rmuser.h ../functions/sort.h +winix.o: ../functions/specialdefault.h ../functions/stat.h +winix.o: ../functions/subject.h ../functions/template.h winix.o: ../functions/tinymce.h ../functions/uname.h ../functions/upload.h winix.o: ../functions/uptime.h ../functions/who.h ../functions/vim.h winix.o: ../templates/templates.h ../core/misc.h diff --git a/templates/env.cpp b/templates/env.cpp index f91c871..6401f85 100755 --- a/templates/env.cpp +++ b/templates/env.cpp @@ -59,47 +59,65 @@ void env_user_name(Info & i) -static size_t user_index = 0; +static Users::Iterator user_iter; +static size_t user_reqid = 0; +static size_t user_index; // only information +bool env_user_tab_init() +{ + if( user_reqid != cur->request->id ) + { + user_reqid = cur->request->id; + user_iter = system->users.End(); + } + +return user_iter != system->users.End(); +} + void env_user_tab(Info & i) { + env_user_tab_init(); + if( cur->session->puser && cur->session->puser->super_user ) { user_index = i.iter; - i.res = user_index < system->users.Size(); + + if( i.iter == 0 ) + user_iter = system->users.Begin(); + else + if( user_iter != system->users.End() ) + ++user_iter; + + i.res = user_iter != system->users.End(); } } -bool evn_user_tab_has_access() -{ - return cur->session->puser && - cur->session->puser->super_user && - user_index < system->users.Size(); -} - - - void env_user_tab_id(Info & i) { - if( evn_user_tab_has_access() ) - i.out << system->users[user_index].id; + if( env_user_tab_init() ) + i.out << user_iter->id; } void env_user_tab_name(Info & i) { - if( evn_user_tab_has_access() ) - i.out << system->users[user_index].name; + if( env_user_tab_init() ) + i.out << user_iter->name; } void env_user_tab_is_current(Info & i) { - if( evn_user_tab_has_access() && functions->fun_env.GetUser() ) - i.res = (system->users[user_index].id == functions->fun_env.GetUser()->id ); + if( env_user_tab_init() ) + { + User * puser = functions->fun_env.GetUser(); + + if( puser ) + i.res = (user_iter->id == puser->id ); + } } diff --git a/templates/priv.cpp b/templates/priv.cpp index 4f8da30..a5b710f 100755 --- a/templates/priv.cpp +++ b/templates/priv.cpp @@ -38,8 +38,8 @@ void priv_user_tab_init(Item & item) if( cur->session->puser->super_user ) { // super user is allowed to change to any user - for(size_t i=0 ; iusers.Size() ; ++i) - priv_user_table.push_back( system->users[i].id ); + for(Users::Iterator i=system->users.Begin() ; i != system->users.End() ; ++i) + priv_user_table.push_back(i->id); // as well to nobody (-1) priv_user_table.push_back(-1); @@ -143,8 +143,8 @@ void priv_group_tab_init(Item & item) if( cur->session->puser->super_user ) { // super user is allowed to change to any group - for(size_t i=0 ; igroups.Size() ; ++i) - priv_group_table.push_back( system->groups[i].id ); + for(Groups::Iterator i=system->groups.Begin() ; i != system->groups.End() ; ++i) + priv_group_table.push_back(i->id); // as well to nogroup (-1) priv_group_table.push_back(-1); @@ -156,7 +156,7 @@ void priv_group_tab_init(Item & item) // owner of the item -- is allowed to change only to a group in which he belongs to for(size_t i=0 ; isession->puser->groups.size() ; ++i) { - priv_group_table.push_back( cur->session->puser->groups[i] ); + priv_group_table.push_back(cur->session->puser->groups[i]); if( item.group_id == cur->session->puser->groups[i] ) was_current_group = true; diff --git a/templates/sys.cpp b/templates/sys.cpp index cf3002b..5f9e320 100755 --- a/templates/sys.cpp +++ b/templates/sys.cpp @@ -2,7 +2,7 @@ * This file is a part of Winix * and is not publicly distributed * - * Copyright (c) 2008-2011, Tomasz Sowa + * Copyright (c) 2008-2012, Tomasz Sowa * All rights reserved. * */ @@ -67,32 +67,6 @@ void sys_plugin_tab_name(Info & i) -static size_t sys_user_index = 0; - -void sys_user_tab(Info & i) -{ - sys_user_index = i.iter; - i.res = sys_user_index < system->users.Size(); -} - - -void sys_user_tab_is_current(Info & i) -{ - if( !cur->session->puser ) - return; - - if( sys_user_index < system->users.Size() ) - i.res = (cur->session->puser->id == system->users[sys_user_index].id); -} - - -void sys_user_tab_name(Info & i) -{ - if( sys_user_index < system->users.Size() ) - i.out << system->users[sys_user_index].name; -} - - } // namespace TemplatesFunctions diff --git a/templates/templates.cpp b/templates/templates.cpp index 2fef901..747523b 100755 --- a/templates/templates.cpp +++ b/templates/templates.cpp @@ -472,9 +472,6 @@ void Templates::CreateFunctions() ezc_functions.Insert("sys_plugin_tab", sys_plugin_tab); ezc_functions.Insert("sys_plugin_tab_has_name", sys_plugin_tab_has_name); ezc_functions.Insert("sys_plugin_tab_name", sys_plugin_tab_name); - ezc_functions.Insert("sys_user_tab", sys_user_tab); - ezc_functions.Insert("sys_user_tab_is_current", sys_user_tab_is_current); - ezc_functions.Insert("sys_user_tab_name", sys_user_tab_name); /* @@ -494,6 +491,7 @@ void Templates::CreateFunctions() /* user */ + ezc_functions.Insert("user_id", user_id); ezc_functions.Insert("user_name", user_name); ezc_functions.Insert("user_logged", user_logged); ezc_functions.Insert("user_super_user", user_super_user); diff --git a/templates/templates.h b/templates/templates.h index 3f223ce..f05f41d 100755 --- a/templates/templates.h +++ b/templates/templates.h @@ -390,9 +390,6 @@ namespace TemplatesFunctions void sys_plugin_tab(Info & i); void sys_plugin_tab_has_name(Info & i); void sys_plugin_tab_name(Info & i); - void sys_user_tab(Info & i); - void sys_user_tab_is_current(Info & i); - void sys_user_tab_name(Info & i); /* @@ -412,6 +409,7 @@ namespace TemplatesFunctions /* user */ + void user_id(Info & i); void user_name(Info & i); void user_logged(Info & i); void user_super_user(Info & i); diff --git a/templates/user.cpp b/templates/user.cpp index 668360e..01b67c3 100755 --- a/templates/user.cpp +++ b/templates/user.cpp @@ -25,12 +25,16 @@ void user_logged(Info & i) } +void user_id(Info & i) +{ + if( cur->session->puser ) + i.out << cur->session->puser->id; +} + void user_name(Info & i) { - if( !cur->session->puser ) - return; - - i.out << cur->session->puser->name; + if( cur->session->puser ) + i.out << cur->session->puser->name; } @@ -108,12 +112,35 @@ void user_can_use_raw(Info & i) -static size_t user_index = 0; +static Users::Iterator user_iter; +static size_t user_reqid = 0; +static size_t user_index; // only information + + +bool user_tab_init() +{ + if( user_reqid != cur->request->id ) + { + user_reqid = cur->request->id; + user_iter = system->users.Begin(); + } + +return user_iter != system->users.End(); +} + void user_tab(Info & i) { + user_tab_init(); user_index = i.iter; - i.res = user_index < system->users.Size(); + + if( i.iter == 0 ) + user_iter = system->users.Begin(); + else + if( user_iter != system->users.End() ) + ++user_iter; + + i.res = user_iter != system->users.End(); } @@ -124,49 +151,47 @@ void user_tab_index(Info & i) void user_tab_id(Info & i) { - if( user_index < system->users.Size() ) - i.out << system->users[user_index].id; + if( user_tab_init() ) + i.out << user_iter->id; } void user_tab_name(Info & i) { - if( user_index < system->users.Size() ) - i.out << system->users[user_index].name; + if( user_tab_init() ) + i.out << user_iter->name; } void user_tab_is_super_user(Info & i) { - if( user_index < system->users.Size() ) - i.res = system->users[user_index].super_user; + if( user_tab_init() ) + i.res = user_iter->super_user; } void user_tab_is_active(Info & i) { - if( user_index < system->users.Size() ) - i.res = system->users[user_index].status == WINIX_ACCOUNT_READY; + if( user_tab_init() ) + i.res = user_iter->status == WINIX_ACCOUNT_READY; } void user_tab_is_suspended(Info & i) { - if( user_index < system->users.Size() ) - i.res = system->users[user_index].status == WINIX_ACCOUNT_SUSPENDED; + if( user_tab_init() ) + i.res = user_iter->status == WINIX_ACCOUNT_SUSPENDED; } void user_tab_is_blocked(Info & i) { - if( user_index < system->users.Size() ) - i.res = system->users[user_index].status == WINIX_ACCOUNT_BLOCKED; + if( user_tab_init() ) + i.res = user_iter->status == WINIX_ACCOUNT_BLOCKED; } - - void user_tab_is_current(Info & i) { - if( user_index < system->users.Size() && cur->session->puser ) - i.res = (system->users[user_index].id == cur->session->puser->id); + if( user_tab_init() && cur->session->puser ) + i.res = (user_iter->id == cur->session->puser->id); } } // namespace TemplatesFunctions