00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include <string>
00014
00015 #include "openLogger.h"
00016 using namespace std;
00017 #include "services_lite.hpp"
00018
00019
00020 string baseUrl;
00021
00022 #include "w3intranet.h"
00023
00024 class services_List: public list_base
00025 {
00026 public:
00027
00028 services_List(cgiScript&sc,Session_Obj & session):list_base(sc,session){;}
00029 ~services_List(){;}
00030
00031 bool list_display( void )
00032 {
00033 bool breturn = true;
00034
00035 hotCol=-2;
00036 editLink = listTemplate.getParagraph("hotcolumn");
00037 editLink = editLink.replace("$prog$","services_liteUI.meta");
00038 emitFilter( "services_liteUI.meta",
00039 "<B>Search by Menu Name:</B>" );
00040 string heading =
00041 "<a class='sortcol' href='services_liteUI.meta?sort=id'>id</a>|"
00042 "<a class='sortcol' href='services_liteUI.meta?sort=sequence'>sequence</a>|"
00043 "<a class='sortcol' href='services_liteUI.meta?sort=tree_depth'>tree_depth</a>|"
00044 "<a class='sortcol' href='services_liteUI.meta?sort=enabled'>enabled</a>|"
00045 "<a class='sortcol' href='services_liteUI.meta?sort=cat_name'>cat_name</a>|"
00046 "<a class='sortcol' href='services_liteUI.meta?sort=menu_name'>menu_name</a>|"
00047 "<a class='sortcol' href='services_liteUI.meta?sort=uri'>uri</a>"
00048 ;
00049 emitHeadings(heading);
00050 getFilteredData(
00051 "id, "
00052 "sequence, "
00053 "tree_depth, "
00054 "enabled, "
00055 "cat_name, "
00056 "menu_name, "
00057 "uri "
00058 ,"services",
00059 "menu_name like '$filter$%'" );
00060 emitData();
00061 emitNavigation("services_liteUI.meta");
00062 emitEnd();
00063 return breturn;
00064 }
00065 };
00066
00067 class services_form: public services_Obj, public forms_base
00068 {
00069 public:
00070 services_form(cgiScript & script):services_Obj(),forms_base(script){setKey(*this);}
00071 virtual ~services_form(){;}
00072
00073 void form_id_transfer( void )
00074 {
00075 llongFXfer( "id", id );
00076 }
00077 void form_data_transfer( void )
00078 {
00079 intFXfer( "sequence", sequence);
00080 intFXfer( "tree_depth", tree_depth);
00081 boolFXfer( "enabled", enabled);
00082 stringFXfer( "cat_name", cat_name);
00083 stringFXfer( "menu_name", menu_name);
00084 stringFXfer( "uri", uri);
00085 stringFXfer( "target", target);
00086 intFXfer( "prog_enum", prog_enum);
00087 }
00088
00089 bool dbf_action( string mode, changeMap & changes )
00090 {
00091 return db_action( mode, changes );
00092 }
00093
00094
00095 bool form_display( void )
00096 {
00097 bool breturn = true;
00098 ocString sql;
00099
00100 script << makeTop("services_liteUI.meta", "Services")
00101 << formTemplate.getParagraph("advanced_begin");
00102 script << makeStaticBox("id", "id", id ,"8");
00103 script << "<br class='clearall'>" << endl;
00104 script << makeTextBox("Target", "target", target ,"125","35");
00105 script << "<br class='clearall'>" << endl;
00106 script << makeTextBox("Program enumeration", "prog_enum", prog_enum ,"8","8");
00107 script << "<br class='clearall'>" << endl;
00108
00109 script << formTemplate.getParagraph("advanced_end");
00110 script << makeTextBox("sequence", "sequence", sequence ,"8","8");
00111
00112 script << makeTextBox("Tree depth", "tree_depth", tree_depth ,"4","4");
00113 script << "<br class='clearall'>" << endl;
00114 script << makeBoolBox("Enabled?", "enabled", enabled );
00115 script << "<br class='clearall'>" << endl;
00116 script << makeTextBox("Cat name", "cat_name", cat_name ,"255", "35");
00117 script << "<br class='clearall'>" << endl;
00118 script << makeTextBox("Menu name", "menu_name", menu_name ,"255","35");
00119 script << "<br class='clearall'>" << endl;
00120 script << makeTextBox("URL", "uri", uri ,"512" ,"55");
00121 script << "<br class='clearall'>" << endl;
00122
00123 script << makeButtons( key() );
00124 script << makeBottom( m_result ) << endl;
00125 return breturn;
00126 }
00127 };
00128
00129 bool intraMain(page & pg ,cgiScript & script)
00130 {
00131
00132 services_form myFrm(script);
00133 services_List mylist(script,oLogin.Session());
00134
00135 myFrm.loadControlTemplates("Templates/divform.htmp");
00136 myFrm.form_action();
00137 myFrm.form_display();
00138
00139 mylist.loadListTemplates("Templates/navlist.htmp");
00140 mylist.list_display();
00141
00142 return true;
00143 }
00144
00145
00146 int main(int argc, char ** argv)
00147 {
00148 baseUrl = "services_liteUI.meta";
00149
00150 cgiScript script("text/html",false);
00151 bool isSignedOn = check(script);
00152 script.closeHeader();
00153 page pg(script);
00154 script.ScriptName() =
00155 ocString( script.ScriptName().c_str()).replace("services_liteUI.meta","Services").c_str();
00156 writelog( "load page" );
00157 if( pg.load() )
00158 {
00159 writelog( "instance of page control" );
00160 page_control ctrl(pg);
00161 ctrl.addOp ( "servicelist", new servicelist_functor(pg,script,isSignedOn) );
00162 ctrl.addOp ( "userinterface", new form_functor(pg,script,isSignedOn) );
00163 writelog( "page control emit" );
00164 ctrl.emit();
00165 }
00166 else
00167 {
00168 script << "<html><head><title>Page Unavailable</title></head>" << endl
00169 << "<body><h1>Sorry</h1>" << endl
00170 << "<p>The page you requested "
00171 << script.ScriptName()
00172 << " is not available</p></body></html>";
00173 }
00174 return 0;
00175 }
00176
00177
00178 #include "read_write_base.cpp"
00179 #include "forms_base.cpp"