/* * This file is a part of Winix * and is not publicly distributed * * Copyright (c) 2010, Tomasz Sowa * All rights reserved. * */ #ifndef headerfile_winix_functions_functionbase #define headerfile_winix_functions_functionbase #include #include #include "core/item.h" #include "db/db.h" #include "core/request.h" #include "core/config.h" #include "core/system.h" #include "core/synchro.h" #include "notify/notify.h" #include "utf8.h" class Functions; class Templates; class FunctionBase { public: // function id // it is set automatically when you add the function to functions list // is used to load a template (in templates) long id; FunctionBase(); // user, group, permissions, url (function name) Item fun; // auto follow sym links, default: true bool follow_symlinks; virtual void Init(); virtual bool HasAccess(); virtual void MakePost(); virtual void MakeGet(); void SetConfig(Config * pconfig); void SetCur(Cur * pcur); void SetDb(Db * pdb); void SetSystem(System * psystem); void SetFunctions(Functions * pfunctions); void SetTemplates(Templates * ptemplates); void SetSynchro(Synchro * psynchro); protected: Config * config; Cur * cur; Db * db; System * system; Functions * functions; Templates * templates; Synchro * synchro; }; #endif