Categories | Question details Back To List | ||
dhtmlxWindow Login page hi, how to used dhtmlxwindow for the login form scenario. this my case . i have an application used dhtmlxlayout for main application (app.php) in app.php should check the session of the user , if the session is invalid the login form displayed, after user enter user and password correctly login form closed and return to the app.php with the new session. script that i already used : app.php <?php include_once("classes/CConnection.php"); include_once("classes/CParam.php"); include_once("classes/CSql.php"); $appId = $_GET['appId']; $context = $_GET['context']; $session = 0; $param = new CParam("include/config.ini"); $db = new CConnection(); $db->setDriver("mysql"); $param->loadConfig(); $section = "rad_database"; $param->setSection($section); $serverName = $param->getParamValue("server"); $dbName = $param->getParamValue("dbname"); $userName = $param->getParamValue("username"); $password = $param->getParamValue("password"); $port = $param->getParamValue("port"); $db->setServerName($serverName); $db->setPort($port); $db->setUserName($userName); $db->setPassword($password); $db->setDbName($dbName); $db->connect(); $db->setIsDebug(false); $conn = $db->getConn(); $sql = "select * from radapplication where app_id = $appId"; $rs = $conn->Execute($sql); //print_r($rs); $radapp = $rs->FetchNextObject(); $header = $radpp->HEADER_IMAGE; ?> <html> <head> <title><?php echo $radapp->APP_NAME?> </title> <link rel="stylesheet" type="text/css" href="lib/dhtmlx/dhtmlxLayout/dhtmlxlayout.css"> <link rel="stylesheet" type="text/css" href="lib/dhtmlx/dhtmlxLayout/skins/dhtmlxlayout_dhx_blue.css"> <link rel="stylesheet" type="text/css" href="lib/dhtmlx/dhtmlxWindows/dhtmlxwindows.css"> <link rel="stylesheet" type="text/css" href="lib/dhtmlx/dhtmlxTree/dhtmlxtree.css"> <link rel="stylesheet" type="text/css" href="lib/dhtmlx/dhtmlxWindows/skins/dhtmlxwindows_dhx_blue.css"> <link rel="stylesheet" type="text/css" href="lib/dhtmlx/dhtmlxToolbar/skins/dhtmlxtoolbar_dhx_blue.css"> <link rel="stylesheet" type="text/css" href="lib/dhtmlx/dhtmlxAccordion/skins/dhtmlxaccordion_dhx_blue.css"> <script src="lib/dhtmlx/dhtmlxcommon.js"></script> <script src="lib/dhtmlx/dhtmlxLayout/dhtmlxlayout.js"></script> <script src="lib/dhtmlx/dhtmlxWindows/dhtmlxwindows.js"></script> <script src="lib/dhtmlx/dhtmlxTree/dhtmlxtree.js"></script> <script src="lib/dhtmlx/dhtmlxToolbar/dhtmlxtoolbar.js"></script> <script src="lib/dhtmlx/dhtmlxWindows/ext/dhtmlxwindows_wmn.js"></script> <script src="lib/dhtmlx/dhtmlxWindows/ext/dhtmlxwindows_wtb.js"></script> <script src="lib/dhtmlx/dhtmlxWindows/ext/dhtmlxwindows_sb.js"></script> <script src="lib/dhtmlx/dhtmlxAccordion/dhtmlxaccordion.js"></script> <script> function intwindow(){ var dhxWins= new dhtmlXWindows(); dhxWins.setSkin("dhx_blue"); var win = dhxWins.createWindow('login', 0, 100, 450, 400); win.denyResize(); win.denyMove(); win.denyPark(); win.setModal(true); win.button("close").disable(); // disable "close" button win.setText("CCF LOGIN"); dhxWins.window('login').attachURL("login.php?appId=<?php echo $appId; ?>&context=<?php $context?>",true); dhxWins.window('login').center(); } function submit2(){ var user = document.getElementById("username").value; alert('user = '+user); } </script> </head> <body style="width: 100%; height: 100%; margin: 0px; overflow: hidden;"> <?php if($session == 1){ ?> <script> var radapp = new dhtmlXLayoutObject(document.body, <?php echo "\"".$radapp->APP_LAYOUT ."\"" ;?>); radapp.cells("a").setText("<?php echo " ".$radapp->HEADER_IMAGE." ";?>"); radapp.cells("a").setHeight(60); radapp.cells("a").fixSize(true, true); var webBar = radapp.cells("a").attachToolbar(); webBar.setIconsPath("lib/dhtmlx/dhtmlxToolbar/images/"); webBar.addButton("new", 0, "", "new.gif"); webBar.setItemToolTip("new", "New"); webBar.addButton("save", 1, "Save", "save.gif"); webBar.setItemToolTip("save", "Save"); webBar.addButton("open", 2, "Open"); webBar.addSeparator("sep0", 3); var printOpts = Array(Array('print_page', 'obj', 'Page'), Array('print_selection', 'obj', 'Selection'), Array('print_sep0', 'sep'), Array('print_custom', 'obj', 'Custom...')); webBar.addButtonSelect("print", 18, "", printOpts, "print.gif"); radapp.cells("b").setText("TEST"); //radapp.cells("b").hideHeader(); radapp.cells("b").setWidth(250); var radAccord = radapp.cells("b").attachAccordion(); radAccord.setIconsPath("lib/dhtmlx/dhtmlxAccordion/imgs/"); radAccord.addItem("a1", "MENU"); radAccord.addItem("a2", "Customer"); radAccord.addItem("a3", "History"); radAccord.cells("a1").open(); var radMenuTree = radAccord.cells("a1").attachTree(); radMenuTree.setImagePath("lib/dhtmlx/dhtmlxTree/imgs/csh_bluebooks/"); radMenuTree.loadXML("tree.xml"); radMenuTree.setOnClickHandler(doOnClick); radapp.cells("c").setText("BODY"); radapp.cells("c").hideHeader(); var status = radapp.attachStatusBar(); function doOnClick(nodeId){ var myUrl = radMenuTree.getUserData(nodeId,"url"); //window.open(myUrl); myUrl += "&appId=<?php echo $context;?>&SID=<?php echo strip_tags(SID); ?>" alert(radMenuTree.getItemText(nodeId)); alert(myUrl); status.setText("Current Transaction : "+radMenuTree.getItemText(nodeId)); radapp.cells("c").attachURL(myUrl); } </script> <?php }else{ ?> <script> //alert('Login'); intwindow(); </script> <script> var radapp = new dhtmlXLayoutObject(document.body, <?php echo "\"".$radapp->APP_LAYOUT ."\"" ;?>); radapp.cells("a").setText("<?php echo " ".$radapp->HEADER_IMAGE." ";?>"); radapp.cells("a").setHeight(60); radapp.cells("a").fixSize(true, true); var webBar = radapp.cells("a").attachToolbar(); webBar.setIconsPath("lib/dhtmlx/dhtmlxToolbar/images/"); webBar.addButton("new", 0, "", "new.gif"); webBar.setItemToolTip("new", "New"); webBar.addButton("save", 1, "Save", "save.gif"); webBar.setItemToolTip("save", "Save"); webBar.addButton("open", 2, "Open"); webBar.addSeparator("sep0", 3); var printOpts = Array(Array('print_page', 'obj', 'Page'), Array('print_selection', 'obj', 'Selection'), Array('print_sep0', 'sep'), Array('print_custom', 'obj', 'Custom...')); webBar.addButtonSelect("print", 18, "", printOpts, "print.gif"); radapp.cells("b").setText("CCF V3.0"); //radapp.cells("b").hideHeader(); radapp.cells("b").setWidth(250); var radAccord = radapp.cells("b").attachAccordion(); radAccord.setIconsPath("lib/dhtmlx/dhtmlxAccordion/imgs/"); radAccord.addItem("a1", "MENU"); radAccord.addItem("a2", "LIHAT DATA PELANGGAN"); radAccord.addItem("a3", "History"); radAccord.cells("a1").open(); radapp.cells("c").setText("BODY"); radapp.cells("c").hideHeader(); var status = radapp.attachStatusBar(); </script> <?php } ?> </body> </html> login.php for example thereis form input username and password if checking success window login closed and in the app.php the value of $session must be 1 or (later i can used php session to handled it ). Answer posted by Support on Apr 27, 2009 08:35 >>window login closed on successful login, login.php must contain next line <script> parent.dhxWins.window("login").close() </script> >>and in the app.php the value of $session must be 1 or Technically, you need to reload page, right? It can be initiated by adding, the next line to successful login.php output <script> parent.document.location.href = "app.php?logged=true"; </script> |