PageRenderTime 54ms CodeModel.GetById 26ms RepoModel.GetById 0ms app.codeStats 1ms

/info/index.php

https://github.com/angelogarcia/chits
PHP | 312 lines | 229 code | 19 blank | 64 comment | 26 complexity | fc131dd7489c1df731b670c4a0692e58 MD5 | raw file
  1. <?
  2. ob_start();
  3. // buffer everything till the end
  4. // -------------------------------------------------------------------------------
  5. // Main Index Page
  6. // Type: internal
  7. // Author: Herman Tolentino MD
  8. // Description: this is level one script for GAME
  9. // everything starts from here!!!
  10. //
  11. // Version 0.9
  12. // 0.9 nothing done
  13. // -------------------------------------------------------------------------------
  14. // start session
  15. session_start();
  16. // expire page so no cookies will be stored
  17. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past
  18. header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified
  19. header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
  20. header("Pragma: no-cache"); // HTTP/1.0
  21. // standard class includes
  22. include "../class.mysqldb.php";
  23. include "../class.user.php";
  24. include "../class.site.php";
  25. include "../class.module.php";
  26. include "../class.datanode.php";
  27. // load PDF open source modules
  28. // courtesy of http://www.fpdf.org/
  29. include "../class.fpdf.php";
  30. include "../class.pdf.php";
  31. // very important setting for FPDF
  32. define(FPDF_FONTPATH,'../fonts/');
  33. include "../initsession.php";
  34. // initialize database connection
  35. $db = new MySQLDB;
  36. $conn = $db->connid();
  37. include "../modules/_dbselect.php";
  38. // these are the key modules for game engine
  39. $user = new User;
  40. $site = new Site;
  41. $module = new Module;
  42. // load language constants
  43. // for multilingualization
  44. // courtesy of the MBDS Project
  45. // http://www.mbdsnet.org/
  46. // to expand functionality, load/use class.language.php
  47. include "../lang.php";
  48. // check if any users exist
  49. if ($user->check_users()) {
  50. // redirect to welcome page
  51. header("location: ".$_SERVER["PHP_SELF"]."?page=WELCOME");
  52. }
  53. // load module class includes
  54. // this is server-generated code
  55. // do not edit or delete
  56. include "../modules/_modules.php";
  57. /*mysql_query("ALTER TABLE `m_patient` DROP PRIMARY KEY , ADD PRIMARY KEY (`patient_id`)");
  58. mysql_query("ALTER TABLE `m_consult` DROP PRIMARY KEY , ADD PRIMARY KEY (`consult_id`)");
  59. mysql_query("ALTER TABLE `m_family` DROP PRIMARY KEY , ADD PRIMARY KEY (`family_id`)");
  60. mysql_query("ALTER TABLE `m_consult_notes` DROP PRIMARY KEY , ADD PRIMARY KEY (`notes_id`)");
  61. mysql_query("ALTER TABLE `content` DROP PRIMARY KEY , ADD PRIMARY KEY (`content_id`)");
  62. mysql_query("ALTER TABLE `m_patient_mc` DROP PRIMARY KEY, ADD PRIMARY KEY(`mc_id`)");
  63. mysql_query("ALTER TABLE `m_patient_fp` DROP PRIMARY KEY, ADD PRIMARY KEY(`fp_id`)");
  64. mysql_query("ALTER TABLE `m_patient_ccdev` DROP PRIMARY KEY, ADD PRIMARY KEY(`ccdev_id`)");
  65. mysql_query("ALTER TABLE `m_patient_ntp` DROP PRIMARY KEY, ADD PRIMARY KEY(`ntp_id`)");
  66. mysql_query("ALTER TABLE `m_consult_appointments` DROP PRIMARY KEY, ADD PRIMARY KEY(`schedule_id`)");
  67. mysql_query("ALTER TABLE `m_dental_fhsis` DROP PRIMARY KEY, ADD PRIMARY KEY(`record_number`)");
  68. mysql_query("ALTER TABLE `m_lib_population` DROP PRIMARY KEY, ADD PRIMARY KEY(`population_id`)");
  69. mysql_query("ALTER TABLE `m_news` DROP PRIMARY KEY, ADD PRIMARY KEY(`news_id`)");
  70. mysql_query("ALTER TABLE `m_patient_fp_dropout` DROP PRIMARY KEY, ADD PRIMARY KEY(`dropout_id`)");
  71. mysql_query("ALTER TABLE `m_patient_fp_method` DROP PRIMARY KEY, ADD PRIMARY KEY(`fp_px_id`)");
  72. mysql_query("ALTER TABLE `m_patient_fp_method_service` DROP PRIMARY KEY, ADD PRIMARY KEY(`fp_service_id`)");
  73. mysql_query("ALTER TABLE `m_dental_other_services` DROP PRIMARY KEY, ADD PRIMARY KEY(`record_number`)");
  74. mysql_query("ALTER TABLE `m_dental_patient_ohc` DROP PRIMARY KEY, ADD PRIMARY KEY(`ohc_id`)");
  75. mysql_query("ALTER TABLE `m_dental_patient_ohc_table_a` DROP PRIMARY KEY, ADD PRIMARY KEY(`ohc_table_id`)");
  76. mysql_query("ALTER TABLE `m_dental_services` DROP PRIMARY KEY, ADD PRIMARY KEY(`service_id`)");
  77. */
  78. ?>
  79. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  80. <head>
  81. <meta http-equiv="Content-Type" content="text/html; charset=<?=$HTTP_SESSION_VARS["myencoding"]?>">
  82. <title><?=strtoupper($_SESSION["datanode"]["name"])?> Info Desktop</title>
  83. <style type="text/css">
  84. <!--
  85. td { font-size: 10pt; font-family: verdana, sans-serif }
  86. small { font-family: verdana, sans serif}
  87. .textbox { font-family: verdana, arial, sans serif; font-size: 10pt; }
  88. .whitetext { color: white; font-family: verdana, arial, sans serif; font-size: 10pt; }
  89. .error { font-family: verdana, arial, sans serif; font-size: 12pt; color: red; }
  90. .service { font-family: verdana, arial, sans serif; font-size: 12pt; font-weight: bold; color: #585858; }
  91. .pt_menu { font-family: verdana, arial, sans serif; padding-top: 0px; padding-bottom: 0px; font-size: 8pt; font-weight: bold; color: black; }
  92. .topmenu { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; padding-left: 4px; padding-right: 4px; }
  93. .topmenu:hover { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; background-color: #FFFF00; border: 1px solid black; padding-left: 3px; padding-right: 3px;}
  94. .groupmenu { font-family: verdana, arial, sans serif; font-size: 8pt; text-decoration: none; padding-left: 4px; padding-right: 4px; }
  95. .groupmenu:hover { font-family: verdana, arial, sans serif; font-size: 8pt; text-decoration: none; background-color: #CCCCFF; border: 1px solid black; padding-left: 3px; padding-right: 3px; }
  96. .fpmenu { font-family: verdana, arial, sans serif; font-size: 8pt; text-decoration: none; padding-left: 4px; padding-right: 4px; }
  97. .fpmenu:hover { font-family: verdana, arial, sans serif; font-size: 8pt; text-decoration: none; background-color: #99FF33; border: 1px solid black; padding-left: 3px; padding-right: 3px; }
  98. .complaintmenu { font-family: verdana, arial, sans serif; font-size: 8pt; text-decoration: none; padding-left: 4px; padding-right: 4px; }
  99. .complaintmenu:hover { font-family: verdana, arial, sans serif; font-size: 8pt; text-decoration: none; background-color: #99FF99; border: 1px solid black; padding-left: 3px; padding-right: 3px;}
  100. .sidemenu { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; padding-left: 3px; padding-right: 3px; }
  101. .sidemenu:hover { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; background-color: #66FF33; border: 1px solid black; padding-left: 2px; padding-right: 2px;}
  102. .catmenu { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; padding-left: 3px; padding-right: 3px; }
  103. .catmenu:hover { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; background-color: #99FFFF; border: 1px solid black; padding-left: 2px; padding-right: 2px;}
  104. .ptmenu { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; padding-left: 3px; padding-right: 3px; }
  105. .ptmenu:hover { font-family: verdana, arial, sans serif; font-size: 10pt; text-decoration: none; background-color: #FFFF33; border: 1px solid black; padding-left: 2px; padding-right: 2px;}
  106. .boxtitle { font-family: verdana, arial, sans serif; font-size: 8pt; font-weight: bold;}
  107. .tiny { font-family: arial, sans serif; font-size: 7pt; font-weight: bold; color: black; }
  108. .tinylight { font-family: verdana, arial, sans serif; font-size: 7pt; font-weight: normal; color: black; }
  109. .copyright { font-family: verdana, arial, sans serif; font-size: 7pt; font-weight: normal; color: black; }
  110. .admin { font-family: verdana, arial, sans serif; font-size: 14pt; font-weight: bold; color: #FF3300; }
  111. .module { font-family: verdana, arial, sans serif; font-size: 14pt; font-weight: bold; color: #9999FF; }
  112. .library { font-family: verdana, arial, sans serif; font-size: 14pt; font-weight: bold; color: #999999; }
  113. .patient { font-family: verdana, arial, sans serif; font-size: 14pt; font-weight: bold; color: #99CC66; }
  114. .newstitle { font-family: verdana, arial, sans serif; font-size: 12pt; font-weight: bold; color: #666699; }
  115. .newsbody { font-family: Georgia, Times New Roman, Serif; font-size: 12pt; font-weight: normal; color: black; }
  116. .tb_table_header { background-color: #15317E; color: white; text-align: center; }
  117. -->
  118. </style>
  119. </head>
  120. <script language="javascript" src="../popups.js"></script>
  121. <script language="JavaScript" src="../ts_picker4.js"></script>
  122. <script language="JavaScript" src="../js/functions.js"></script>
  123. <script language="JavaScript" src="../js/jquery.min.js"></script>
  124. <script language="JavaScript" src="../js/jquery.validate.min.js"></script>
  125. <body text="black" bgcolor="#FFFFCC" link="black" vlink="black">
  126. <?
  127. //echo "Print page module: ";
  128. //print_r($_GET);
  129. ?>
  130. <br/>
  131. <table border="0" cellspacing="0" bgcolor="#000000" style="border: 4px solid black" width="100%" cellpadding="0">
  132. <tr bgcolor="#FF0000">
  133. <td valign="top"><img src="../images/chitsbanner.png" border="0"></td>
  134. </tr>
  135. <tr>
  136. <td>
  137. </td>
  138. </tr>
  139. </table><br>
  140. <table bgcolor="#FFCC00" cellpadding="1" style="border: 1px solid black">
  141. <tr>
  142. <td>
  143. <?
  144. // horizontal menu
  145. if ($_SESSION["isadmin"]) {
  146. // display two-tier admin menu
  147. $site->displaymenu($_SESSION["validuser"],"ADMIN", $_SESSION["isadmin"]);
  148. } else {
  149. // display menus as top level menu
  150. $site->displaymenu($_SESSION["validuser"],"USER", $_SESSION["isadmin"]);
  151. }
  152. ?>
  153. </td>
  154. </tr>
  155. </table><br>
  156. <table style="border:1px solid black" bgcolor='white' width="100%" cellspacing="2" cellpadding="2">
  157. <tr>
  158. <td width="150" valign="top">
  159. <table>
  160. <tr>
  161. <td>
  162. <?
  163. if ($_POST["submitlogin"]) {
  164. $user = $user->process_auth($_POST["login"], $_POST["passwd"]);
  165. if (count($user)>0) {
  166. //print_r($user);
  167. $site->session_user($user);
  168. //$site->record_access($_SESSION["userid"],$HTTP_USER_AGENT,"ASC","login");
  169. header("location: ".$_SERVER["PHP_SELF"]);
  170. } else {
  171. // Invalid account
  172. header("location: ".$_SERVER["PHP_SELF"]."?errorinfo=001");
  173. }
  174. }
  175. if ($_POST["submitlogout"]) {
  176. $user->process_signoff();
  177. header("location: ".$_SERVER["PHP_SELF"]);
  178. }
  179. if (!$_SESSION["validuser"]) {
  180. $user->authenticate();
  181. } else {
  182. $user->signoff($_SESSION["user_first"], $_SESSION["user_last"], $_SESSION["datanode"]["name"], $_SESSION["isadmin"], $_SERVER["REMOTE_ADDR"], $_SESSION["userid"]);
  183. }
  184. ?>
  185. </td>
  186. </tr>
  187. <tr>
  188. <td>
  189. <?
  190. $menu_array = module::readconfig("../menu.xml", "menu");
  191. if ($_SESSION["isadmin"]) {
  192. $site->main_cat($_SESSION["validuser"], $_SESSION["isadmin"], $_GET, $menu_array);
  193. }
  194. ?>
  195. </td>
  196. </tr>
  197. <tr>
  198. <td>
  199. <?
  200. if ($_SESSION["isadmin"]) {
  201. $site->main_menu($_SESSION["validuser"], $_SESSION["isadmin"], $_GET["page"], $menu_array);
  202. }
  203. ?>
  204. </td>
  205. </tr>
  206. <tr>
  207. <td>
  208. <?
  209. $site->main_stats();
  210. ?>
  211. </td>
  212. </tr>
  213. </table>
  214. </td>
  215. <td width="450" valign="top">
  216. <br/>
  217. <blockquote>
  218. <?
  219. if ($_GET["menu_id"]) {
  220. // module below is server-generated code
  221. // do not edit
  222. include "../modules/_menu.php";
  223. } else {
  224. switch ($page) {
  225. case "WELCOME":
  226. $site->welcome();
  227. break;
  228. case "ABOUT":
  229. $site->print_about();
  230. break;
  231. case "HOWTO":
  232. $site->print_howto();
  233. break;
  234. case "CREDITS":
  235. $site->print_credits();
  236. break;
  237. case "ADMIN":
  238. if ($_SESSION["isadmin"]) {
  239. switch ($method) {
  240. case "CONTENT":
  241. $site->_content($menu_id, $_POST,$_GET, $_SESSION["validuser"], $_SESSION["isadmin"]);
  242. break;
  243. case "LOC":
  244. $user->_location($menu_id, $_POST,$_GET);
  245. break;
  246. case "ROLES":
  247. $user->_roles($menu_id, $_POST,$_GET);
  248. break;
  249. case "USER":
  250. default:
  251. $user->_game_user($menu_id, $_POST,$_GET);
  252. }
  253. } else {
  254. print "<font color='red'>You have no authorization for this page.</font>";
  255. }
  256. break;
  257. case "MODULES":
  258. if ($_SESSION["validuser"] && $_SESSION["isadmin"]) {
  259. $module->_module($_POST,$_GET, $HTTP_POST_FILES, $_SESSION["validuser"], $_SESSION["isadmin"]);
  260. } else {
  261. print "<font color='red'>You have no authorization for this page.</font>";
  262. }
  263. break;
  264. default:
  265. if ($errorinfo) {
  266. // since this the default page errors appear here
  267. // after page refresh
  268. // error codes are stored in errorcodes table
  269. $module->error_message($errorinfo);
  270. }
  271. if (module::in_menu($_GET["page"],array_values($menu_array[0]))) {
  272. $module->default_action($_GET["page"]);
  273. } else {
  274. $site->content($menu_id, $_POST, $_GET);
  275. }
  276. }
  277. }
  278. ?>
  279. </blockquote>
  280. <br/>
  281. </td>
  282. </tr>
  283. </table>
  284. <br/>
  285. <div align="center" class='copyright'>
  286. &copy;2004-2010 Generic Architecture for Modular Enterprise (GAME) Engine Version <?=$module->get_version()?> Herman Tolentino MD / UPCM Medical Informatics Unit / License - GPL<br>
  287. </div>
  288. </body>
  289. </html>
  290. <?
  291. //phpinfo();
  292. ob_end_flush();
  293. ?>