/* * This file is a part of CMSLU -- Content Management System like Unix * and is not publicly distributed * * Copyright (c) 2008-2009, Tomasz Sowa * All rights reserved. * */ #ifndef headerfilecmslucontentcontent #define headerfilecmslucontentcontent #include #include #include #include "../core/item.h" #include "../templates/templates.h" #include "../core/thread.h" #include "../core/ticket.h" #include "../core/done.h" class Content { Templates templates; std::string temp; void CheckSpecialFile(); void PrepareUrl(Item & item); void SetDefaultFunctionForFile(); void SetDefaultFunctionForDir(); void SetDefaultFunction(); bool DirsHaveReadExecPerm(); void MakeStandardFunction(); void SetUser(Item & item); bool CheckRebus(); void MakePost(); void FunCat(); void FunLogout(); void FunLs(); void FunEmacs(); void FunPriv(); void FunRmDirRecursive(); void FunRmDir(); void FunRm(); void FunNode(); void FunMkdir(); void FunDefault(); void FunRun(); void PostFunRun(); void FunWho(); void FunLast(); void FunReloadTemplates(); void FunReload(); static bool FunThreadSort(const Thread & t1, const Thread & t2); void FunThread(); void FunCreateThread(); bool FunUploadCheckAccess(); void FunUpload(); bool ReadItemUrlSubject(Item & item, Item::Type item_type); bool ReadItem(Item & item, Item::Type item_type); void CheckAccessToItems(); void PostFunLogin(); void ReadItemContentWithType(Item & item); bool FunEmacsCheckAccess(); void PostFunEmacsAdd(); void PostFunEmacsEdit(bool with_url); bool PostEmacsCheckAbuse(bool adding); void PostFunEmacsModifyMountPoint(bool adding); void PostFunEmacs(); bool FunMkdirCheckAccess(); void PostFunMkdir(bool add_to_dir_table = false, int privileges = 0755 ); void Mkdir(Item & item, bool add_to_dir_table); long PostFunDefaultParsePath(); void PostFunDefault(); void PostFunPriv(); void PostFunPriv(Item & item); bool FunCreateThreadCheckAccess(); bool FunCreateThreadCheckAbuse(); void ReadThread(Thread & thread); void AddThread(); void PostFunCreateThreadLogAndRedirect(); void PostFunCreateThread(); void UploadSaveFile(); void PostFunUpload(); bool FunCreateTicketCheckAccess(); void FunCreateTicket(); bool FunCreateTicketCheckAbuse(const Done & done); void PostFunCreateTicketLogAndRedirect(); void PostFunCreateTicket(); void FunTicket(); void TicketDeleteFirst(); bool FunEditTicketCheckAccess(); void PostFunEditTicketLogAndRedirect(); void EditTicketModTicket(); void EditTicketModDir(); void EditTicketModFirstItem(); void PostFunEditTicket(); void FunEditTicket(); void AddTicket(); void ReadTicket(Ticket & ticket); void ReadTicketType(Ticket & ticket); void ReadTicketStatus(Ticket & ticket); void ReadTicketPriority(Ticket & ticket); void ReadTicketCategory(Ticket & ticket); void ReadTicketExpected(Ticket & ticket); void ReadTicketProgress(Ticket & ticket); void RedirectTo(const Item & item); void RedirectTo(long item_id); void RedirectToLastDir(); void CheckGetPostTimes(time_t difference = 10); // bool CreateFile(const std::string & path, const std::string & content); void MakePage(); public: bool Init(); void ReadAdditionalInfo(); void Make(); }; #endif