we can create links (hard links, symbolic links) now

added winix functions: ln

winix function 'default' can be used without redirecting now

added new tickets types: TypeProgress, TypeString, TypeMultistring, TypeImages, TypeFiles
now tickets are combined with files
added winix functions: showtickets

fixed mountpoints:
when the default root mount was created its parameter table was empty
and it caused accessing to a non-existing objects

fixed logger:
modifiers (log1, log2, log3) were incorrectly treated
added modifier: log4 (debug info)

now we are moving threads to a new plugin 'thread'
created directory: plugins/thread
(not finished yet)




git-svn-id: svn://ttmath.org/publicrep/winix/trunk@704 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2011-01-05 21:24:11 +00:00
parent bb83aed20d
commit 8154c403d8
113 changed files with 5840 additions and 2972 deletions

View File

@@ -52,12 +52,13 @@ dir.o: ../core/misc.h ../functions/functions.h ../functions/functionbase.h
dir.o: ../core/synchro.h ../functions/functionparser.h ../functions/adduser.h
dir.o: ../functions/cat.h ../functions/chmod.h ../functions/privchanger.h
dir.o: ../functions/chown.h ../functions/ckeditor.h ../functions/cp.h
dir.o: ../functions/createthread.h ../functions/default.h
dir.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
dir.o: ../functions/login.h ../functions/logout.h ../functions/ls.h
dir.o: ../functions/mkdir.h ../functions/mv.h ../functions/node.h
dir.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
dir.o: ../functions/run.h ../functions/specialdefault.h ../functions/stat.h
dir.o: ../functions/createthread.h ../functions/functionbase.h
dir.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
dir.o: ../functions/last.h ../functions/login.h ../functions/logout.h
dir.o: ../functions/ln.h ../functions/ls.h ../functions/mkdir.h
dir.o: ../functions/mv.h ../functions/node.h ../functions/priv.h
dir.o: ../functions/reload.h ../functions/rm.h ../functions/run.h
dir.o: ../functions/specialdefault.h ../functions/stat.h
dir.o: ../functions/subject.h ../functions/funthread.h
dir.o: ../functions/template.h ../functions/tinymce.h ../functions/uname.h
dir.o: ../functions/upload.h ../functions/uptime.h ../functions/who.h
@@ -266,8 +267,9 @@ priv.o: ../core/synchro.h ../functions/functionparser.h
priv.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
priv.o: ../functions/privchanger.h ../functions/chown.h
priv.o: ../functions/ckeditor.h ../functions/cp.h ../functions/createthread.h
priv.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
priv.o: ../functions/last.h ../functions/login.h ../functions/logout.h
priv.o: ../functions/functionbase.h ../functions/default.h
priv.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
priv.o: ../functions/login.h ../functions/logout.h ../functions/ln.h
priv.o: ../functions/ls.h ../functions/mkdir.h ../functions/mv.h
priv.o: ../functions/node.h ../functions/priv.h ../functions/reload.h
priv.o: ../functions/rm.h ../functions/run.h ../functions/specialdefault.h
@@ -404,9 +406,10 @@ templates.o: ../core/synchro.h ../functions/functionparser.h
templates.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
templates.o: ../functions/privchanger.h ../functions/chown.h
templates.o: ../functions/ckeditor.h ../functions/cp.h
templates.o: ../functions/createthread.h ../functions/default.h
templates.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
templates.o: ../functions/login.h ../functions/logout.h ../functions/ls.h
templates.o: ../functions/createthread.h ../functions/functionbase.h
templates.o: ../functions/default.h ../functions/download.h
templates.o: ../functions/emacs.h ../functions/last.h ../functions/login.h
templates.o: ../functions/logout.h ../functions/ln.h ../functions/ls.h
templates.o: ../functions/mkdir.h ../functions/mv.h ../functions/node.h
templates.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
templates.o: ../functions/run.h ../functions/specialdefault.h
@@ -444,13 +447,14 @@ thread.o: ../core/synchro.h ../functions/functionparser.h
thread.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
thread.o: ../functions/privchanger.h ../functions/chown.h
thread.o: ../functions/ckeditor.h ../functions/cp.h
thread.o: ../functions/createthread.h ../functions/default.h
thread.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
thread.o: ../functions/login.h ../functions/logout.h ../functions/ls.h
thread.o: ../functions/mkdir.h ../functions/mv.h ../functions/node.h
thread.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
thread.o: ../functions/run.h ../functions/specialdefault.h
thread.o: ../functions/stat.h ../functions/subject.h ../functions/funthread.h
thread.o: ../functions/createthread.h ../functions/functionbase.h
thread.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
thread.o: ../functions/last.h ../functions/login.h ../functions/logout.h
thread.o: ../functions/ln.h ../functions/ls.h ../functions/mkdir.h
thread.o: ../functions/mv.h ../functions/node.h ../functions/priv.h
thread.o: ../functions/reload.h ../functions/rm.h ../functions/run.h
thread.o: ../functions/specialdefault.h ../functions/stat.h
thread.o: ../functions/subject.h ../functions/funthread.h
thread.o: ../functions/template.h ../functions/tinymce.h ../functions/uname.h
thread.o: ../functions/upload.h ../functions/uptime.h ../functions/who.h
thread.o: ../functions/vim.h ../core/htmlfilter.h
@@ -581,12 +585,13 @@ winix.o: ../core/synchro.h ../functions/functionparser.h
winix.o: ../functions/adduser.h ../functions/cat.h ../functions/chmod.h
winix.o: ../functions/privchanger.h ../functions/chown.h
winix.o: ../functions/ckeditor.h ../functions/cp.h
winix.o: ../functions/createthread.h ../functions/default.h
winix.o: ../functions/download.h ../functions/emacs.h ../functions/last.h
winix.o: ../functions/login.h ../functions/logout.h ../functions/ls.h
winix.o: ../functions/mkdir.h ../functions/mv.h ../functions/node.h
winix.o: ../functions/priv.h ../functions/reload.h ../functions/rm.h
winix.o: ../functions/run.h ../functions/specialdefault.h ../functions/stat.h
winix.o: ../functions/createthread.h ../functions/functionbase.h
winix.o: ../functions/default.h ../functions/download.h ../functions/emacs.h
winix.o: ../functions/last.h ../functions/login.h ../functions/logout.h
winix.o: ../functions/ln.h ../functions/ls.h ../functions/mkdir.h
winix.o: ../functions/mv.h ../functions/node.h ../functions/priv.h
winix.o: ../functions/reload.h ../functions/rm.h ../functions/run.h
winix.o: ../functions/specialdefault.h ../functions/stat.h
winix.o: ../functions/subject.h ../functions/funthread.h
winix.o: ../functions/template.h ../functions/tinymce.h ../functions/uname.h
winix.o: ../functions/upload.h ../functions/uptime.h ../functions/who.h

View File

@@ -36,6 +36,12 @@ void dir_without_slash(Info & i)
}
void dir_is_root(Info & i)
{
i.res = request->dir_tab.size() == 1;
}
void dir_parent(Info & i)
{
if( request->dir_tab.empty() )
@@ -253,50 +259,16 @@ void dir_tab_link(Info & i)
}
static Item dir_last_default_item;
static size_t dir_last_default_item_reqid = 0;
static std::wstring dir_last_path;
void dir_last_default_item_init()
void dir_last_link_to(Info & i)
{
if( dir_last_default_item_reqid == request->id )
return;
dir_last_default_item_reqid = request->id;
dir_last_default_item.Clear();
if( request->dir_tab.empty() )
return;
long default_item = request->dir_tab.back()->default_item;
if( default_item == -1 )
return;
// !! tutaj nie musimy odczytywac wszystkiego (contentu itp)
if( db->GetItemById(default_item, dir_last_default_item) != WINIX_ERR_OK )
dir_last_default_item.Clear();
i.out << request->dir_tab.back()->link_to;
}
void dir_last_default_item_dir(Info & i)
void dir_last_is_link_redirect(Info & i)
{
dir_last_default_item_init();
if( dir_last_default_item.parent_id != -1 )
if( system->dirs.MakePath(dir_last_default_item.parent_id, dir_last_path) )
i.out << dir_last_path;
}
void dir_last_default_item_url(Info & i)
{
dir_last_default_item_init();
i.out << dir_last_default_item.url;
i.res = request->dir_tab.back()->link_redirect == 1;
}

View File

@@ -181,6 +181,12 @@ void item_filetype_is_image(Info & i)
}
void item_has_static_file(Info & i)
{
i.res = request->item.file_type != WINIX_ITEM_FILETYPE_NONE && !request->item.file_path.empty();
}
void item_has_thumb(Info & i)
{
i.res = request->item.has_thumb;
@@ -312,6 +318,40 @@ void item_has_html_template(Info & i)
}
void item_type_is_dir(Info & i)
{
i.res = request->item.type == Item::dir;
}
void item_type_is_file(Info & i)
{
i.res = request->item.type == Item::file;
}
void item_type_is_symlink(Info & i)
{
i.res = request->item.type == Item::symlink;
}
void item_is_link_to(Info & i)
{
i.res = !request->item.link_to.empty();
}
void item_link_to(Info & i)
{
i.out << request->item.link_to;
}
void item_is_link_redirect(Info & i)
{
i.res = request->item.link_redirect == 1;
}
@@ -570,8 +610,64 @@ void item_tab_can_use_emacs(Info & i)
}
void item_tab_has_static_file(Info & i)
{
if( item_index < request->item_tab.size() )
{
i.res = request->item_tab[item_index].file_type != WINIX_ITEM_FILETYPE_NONE &&
!request->item_tab[item_index].file_path.empty();
}
}
void item_tab_has_thumb(Info & i)
{
if( item_index < request->item_tab.size() )
i.res = request->item_tab[item_index].has_thumb;
}
void item_tab_type_is_dir(Info & i)
{
if( item_index < request->item_tab.size() )
i.res = request->item_tab[item_index].type == Item::dir;
}
void item_tab_type_is_file(Info & i)
{
if( item_index < request->item_tab.size() )
i.res = request->item_tab[item_index].type == Item::file;
}
void item_tab_type_is_symlink(Info & i)
{
if( item_index < request->item_tab.size() )
i.res = request->item_tab[item_index].type == Item::symlink;
}
void item_tab_is_link_to(Info & i)
{
if( item_index < request->item_tab.size() )
i.res = !request->item_tab[item_index].link_to.empty();
}
void item_tab_link_to(Info & i)
{
if( item_index < request->item_tab.size() )
i.out << request->item_tab[item_index].link_to;
}
void item_tab_is_link_redirect(Info & i)
{
if( item_index < request->item_tab.size() )
i.res = request->item_tab[item_index].link_redirect == 1;
}
} // namespace TemplatesFunctions

View File

@@ -145,6 +145,7 @@ void Templates::CreateFunctions()
*/
ezc_functions.Insert("dir", dir);
ezc_functions.Insert("dir_without_slash", dir_without_slash);
ezc_functions.Insert("dir_is_root", dir_is_root);
ezc_functions.Insert("dir_parent", dir_parent);
ezc_functions.Insert("dir_parent_without_slash", dir_parent_without_slash);
ezc_functions.Insert("dir_can_read_exec", dir_can_read_exec);
@@ -164,8 +165,8 @@ void Templates::CreateFunctions()
ezc_functions.Insert("dir_tab_url", dir_tab_url);
ezc_functions.Insert("dir_tab_link", dir_tab_link);
ezc_functions.Insert("dir_last_default_item_dir", dir_last_default_item_dir);
ezc_functions.Insert("dir_last_default_item_url", dir_last_default_item_url);
ezc_functions.Insert("dir_last_link_to", dir_last_link_to);
ezc_functions.Insert("dir_last_is_link_redirect", dir_last_is_link_redirect);
ezc_functions.Insert("dir_last_subject", dir_last_subject);
ezc_functions.Insert("dir_last_user", dir_last_user);
ezc_functions.Insert("dir_last_url", dir_last_url);
@@ -210,6 +211,7 @@ void Templates::CreateFunctions()
ezc_functions.Insert("item_link", item_link);
ezc_functions.Insert("item_filetype_is_none", item_filetype_is_none);
ezc_functions.Insert("item_filetype_is_image", item_filetype_is_image);
ezc_functions.Insert("item_has_static_file", item_has_static_file);
ezc_functions.Insert("item_has_thumb", item_has_thumb);
ezc_functions.Insert("item_can_read", item_can_read);
@@ -227,7 +229,12 @@ void Templates::CreateFunctions()
ezc_functions.Insert("item_guest_name", item_guest_name);
ezc_functions.Insert("item_html_template", item_html_template);
ezc_functions.Insert("item_has_html_template", item_has_html_template);
ezc_functions.Insert("item_type_is_dir", item_type_is_dir);
ezc_functions.Insert("item_type_is_file", item_type_is_file);
ezc_functions.Insert("item_type_is_symlink", item_type_is_symlink);
ezc_functions.Insert("item_is_link_to", item_is_link_to);
ezc_functions.Insert("item_link_to", item_link_to);
ezc_functions.Insert("item_is_link_redirect", item_is_link_redirect);
ezc_functions.Insert("item_tab", item_tab);
ezc_functions.Insert("item_tab_id", item_tab_id);
@@ -253,6 +260,14 @@ void Templates::CreateFunctions()
ezc_functions.Insert("item_tab_dates_equal", item_tab_dates_equal);
ezc_functions.Insert("item_tab_run", item_tab_run);
ezc_functions.Insert("item_tab_can_use_emacs", item_tab_can_use_emacs);
ezc_functions.Insert("item_tab_has_static_file", item_tab_has_static_file);
ezc_functions.Insert("item_tab_has_thumb", item_tab_has_thumb);
ezc_functions.Insert("item_tab_type_is_dir", item_tab_type_is_dir);
ezc_functions.Insert("item_tab_type_is_file", item_tab_type_is_file);
ezc_functions.Insert("item_tab_type_is_symlink", item_tab_type_is_symlink);
ezc_functions.Insert("item_tab_is_link_to", item_tab_is_link_to);
ezc_functions.Insert("item_tab_link_to", item_tab_link_to);
ezc_functions.Insert("item_tab_is_link_redirect", item_tab_is_link_redirect);
/*
@@ -539,6 +554,12 @@ using namespace TemplatesFunctions;
const Mount & mount = i->second;
int html_id = TemplatesFunctions::system->mounts.MountParHtmlTemplate();
if( size_t(html_id) >= mount.param.size() )
{
log << log1 << "Templates: something wrong in mount points, there is no"
<< " html template parameter" << logend;
}
else
if( mount.param[html_id].defined )
{
size_t len = mount.param[html_id].arg.size();

View File

@@ -75,6 +75,7 @@ namespace TemplatesFunctions
*/
void dir(Info & i);
void dir_without_slash(Info & i);
void dir_is_root(Info & i);
void dir_parent(Info & i);
void dir_parent_without_slash(Info & i);
void dir_can_read_exec(Info & i);
@@ -94,8 +95,8 @@ namespace TemplatesFunctions
void dir_tab_url(Info & i);
void dir_tab_link(Info & i);
void dir_last_default_item_dir(Info &);
void dir_last_default_item_url(Info & i);
void dir_last_link_to(Info &);
void dir_last_is_link_redirect(Info & i);
void dir_last_subject(Info & i);
void dir_last_user(Info & i);
void dir_last_url(Info & i);
@@ -142,6 +143,7 @@ namespace TemplatesFunctions
void item_link(Info & i);
void item_filetype_is_none(Info & i);
void item_filetype_is_image(Info & i);
void item_has_static_file(Info & i);
void item_has_thumb(Info & i);
void item_can_read(Info & i);
void item_can_write(Info & i);
@@ -158,7 +160,12 @@ namespace TemplatesFunctions
void item_guest_name(Info & i);
void item_html_template(Info & i);
void item_has_html_template(Info & i);
void item_type_is_dir(Info & i);
void item_type_is_file(Info & i);
void item_type_is_symlink(Info & i);
void item_is_link_to(Info & i);
void item_link_to(Info & i);
void item_is_link_redirect(Info & i);
void item_tab(Info & i);
void item_tab_id(Info & i);
@@ -184,6 +191,14 @@ namespace TemplatesFunctions
void item_tab_dates_equal(Info & i);
void item_tab_run(Info & i);
void item_tab_can_use_emacs(Info & i);
void item_tab_has_static_file(Info & i);
void item_tab_has_thumb(Info & i);
void item_tab_type_is_dir(Info & i);
void item_tab_type_is_file(Info & i);
void item_tab_type_is_symlink(Info & i);
void item_tab_is_link_to(Info & i);
void item_tab_link_to(Info & i);
void item_tab_is_link_redirect(Info & i);
/*