added: export plugin

the possibility to export only non static files in a directory



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@870 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
Tomasz Sowa 2012-08-03 10:55:14 +00:00
parent 5a5fe1b0cc
commit b5c155b927
3 changed files with 12 additions and 5 deletions

View File

@ -7,6 +7,10 @@
<form action="[doc_base_url][dir][if item_is][item_url]/[end]export" method="post"> <form action="[doc_base_url][dir][if item_is][item_url]/[end]export" method="post">
<fieldset> <fieldset>
<input type="checkbox" name="onlynonstatic" id="nonstaticfiles"><label for="nonstaticfiles">Export only non static files</label>
<br><br>
<input type="submit" value="Export"> <input type="submit" value="Export">
</fieldset> </fieldset>

View File

@ -52,7 +52,7 @@ void FunExport::ExportFile(const Item & item)
} }
void FunExport::ExportDir(const Item & dir) void FunExport::ExportDir(const Item & dir, bool only_non_static_files)
{ {
export_info->SendDir(dir); export_info->SendDir(dir);
@ -64,7 +64,9 @@ void FunExport::ExportDir(const Item & dir)
iq_dir.sel_file = true; iq_dir.sel_file = true;
iq_dir.WhereParentId(dir.id); iq_dir.WhereParentId(dir.id);
iq_dir.WhereType(Item::file); iq_dir.WhereType(Item::file);
//iq_dir.WhereFileType(WINIX_ITEM_FILETYPE_NONE);
if( only_non_static_files )
iq_dir.WhereFileType(WINIX_ITEM_FILETYPE_NONE);
db->GetItems(dir_items, iq_dir); db->GetItems(dir_items, iq_dir);
@ -79,7 +81,7 @@ void FunExport::ExportDir(const Item & dir)
for( ; i != system->dirs.ParentEnd() ; i = system->dirs.NextChild(i) ) for( ; i != system->dirs.ParentEnd() ; i = system->dirs.NextChild(i) )
{ {
ExportDir(*i->second); ExportDir(*i->second, only_non_static_files);
} }
} }
@ -87,11 +89,12 @@ void FunExport::ExportDir(const Item & dir)
void FunExport::Export() void FunExport::Export()
{ {
export_info->ResetRecurrenceCheck(); export_info->ResetRecurrenceCheck();
bool onlynonstatic = cur->request->IsPostVar(L"onlynonstatic");
if( cur->request->is_item ) if( cur->request->is_item )
ExportFile(cur->request->item); ExportFile(cur->request->item);
else else
ExportDir(*cur->request->dir_tab.back()); ExportDir(*cur->request->dir_tab.back(), onlynonstatic);
} }

View File

@ -33,7 +33,7 @@ public:
void ExportFile(const Item & item); void ExportFile(const Item & item);
void ExportDir(const Item & dir); void ExportDir(const Item & dir, bool only_non_static_files = false);
private: private: