/* * This file is a part of Winix * and is not publicly distributed * * Copyright (c) 2011, Tomasz Sowa * All rights reserved. * */ #include "core/log.h" #include "core/plugin.h" #include "exportthread.h" extern "C" void Init(PluginInfo &); namespace Export { const wchar_t plugin_name[] = L"export"; int mount_par_export_conf = -1; ExportThread export_thread; Message msg; void AddMountParams(PluginInfo & info) { using TemplatesFunctions::system; mount_par_export_conf = system->mounts.AddMountPar(L"export_conf"); } void FstabChanged(PluginInfo & info) { } void InitPlugin(PluginInfo & info) { export_thread.SetUTF8(info.config->utf8); info.system->thread_manager.Add(&export_thread); } void SendFile(PluginInfo & info) { const Item * item = reinterpret_cast(info.p1); if( !item ) return; msg.type = WINIX_PL_EXPORT_TYPE_CREATE_FILE; msg.url = info.config->url_proto; msg.url += info.config->base_url; info.system->dirs.MakePath(item->parent_id, msg.url, false); msg.url += item->url; msg.path.clear(); log << log1 << "Export: bede sciagal takiego swiniaka: " << msg.url << logend; export_thread.AddMessage(msg); } void AddEzcFunctions(PluginInfo & info); } // namespace void Init(PluginInfo & info) { using namespace Export; // plugin.Assign(WINIX_TEMPLATES_CREATEFUNCTIONS, AddEzcFunctions); plugin.Assign(WINIX_ADD_MOUNTS, AddMountParams); // plugin.Assign(WINIX_FSTAB_CHANGED, FstabChanged); plugin.Assign(WINIX_FILE_ADDED, SendFile); plugin.Assign(WINIX_FILE_CHANGED, SendFile); plugin.Assign(WINIX_PLUGIN_INIT, InitPlugin); info.p1 = (void*)(plugin_name); }