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

/admin/MisparimEdit.php

https://gitlab.com/EdwinHuijsing/learnhebrew
PHP | 200 lines | 178 code | 13 blank | 9 comment | 15 complexity | 5e6251011c69f000c7c3a45ad57cc450 MD5 | raw file
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <?php
  3. require ("includes/configure.php");
  4. $xmlFileName = "mispar.xml";
  5. $Path = "/var/www/html/hebrewa/";
  6. $xmlFullPath = DIR_FS_XML . "mispar.xml";
  7. require (DIR_FS_FUNCTIONS . "xml.php");
  8. require (DIR_FS_FUNCTIONS . "functions.php");
  9. session_name('Private');
  10. session_start();
  11. function F_Soort(){
  12. $xml = $_SESSION['xml'];
  13. $tempXml = SoortXmlMisparim(simplexml_load_string($xml));
  14. $_SESSION['xml'] = $tempXml;
  15. WOS();
  16. }
  17. function WOS() {
  18. $xml = simplexml_load_string($_SESSION["xml"]);
  19. echo "<form method=\"post\" action=\"\" name=\"ext\">\n";
  20. echo "<input type=\"hidden\" name=\"ext\" value=\"exty\">\n";
  21. echo "<input type=\"submit\" value=\"exit\">\n</form>";
  22. echo "<table border=\"1\" cellpadding=\"0\">\n";
  23. foreach ($xml as $key=>$valueP) {
  24. echo "\t<tr>\n";
  25. echo "\t<form method=\"GET\" action=\"\" name=\"Form1\">\n";
  26. foreach ($valueP as $key=>$value) {
  27. switch ($value->getname()) {
  28. case Number:
  29. $Lenght= 1;
  30. Break;
  31. case il:
  32. $Lenght= 10;
  33. Break;
  34. case ilm:
  35. $Lenght= 10;
  36. Break;
  37. case ilf:
  38. $Lenght= 10;
  39. Break;
  40. case ilPh:
  41. $Lenght= 10;
  42. Break;
  43. case ilPhM:
  44. $Lenght= 10;
  45. Break;
  46. case ilPhF:
  47. $Lenght= 10;
  48. Break;
  49. }
  50. echo "\t\t<td><input type=\"text\" name=\"". $value->getname() . "\" value=\"" . $value . "\" size=\"" . $Lenght . "\"></td>\n";
  51. }
  52. echo "\t\t<td><input type=\"submit\" name=\"upd\" value=\"Submit\"></td>\n";
  53. echo "\t</form>\n";
  54. echo "\t</tr>\n";
  55. }
  56. echo "<tr><form>\n";
  57. echo "<td><input type=\"text\" name=\"Number\" value=\"\" size=\"1\"></td>\n";
  58. echo "<td><input type=\"text\" name=\"il\" value=\"\" size=\"10\"></td>\n";
  59. echo "<td><input type=\"text\" name=\"ilm\" value=\"\" size=\"10\"></td>\n";
  60. echo "<td><input type=\"text\" name=\"ilf\" value=\"\" size=\"10\"></td>\n";
  61. echo "<td><input type=\"text\" name=\"ilPh\" value=\"\" size=\"10\"></td>\n";
  62. echo "<td><input type=\"text\" name=\"ilPhM\" value=\"\" size=\"10\"></td>\n";
  63. echo "<td><input type=\"text\" name=\"ilPhF\" value=\"\" size=\"10\"></td>\n";
  64. echo "<td><input type=\"submit\" name=\"add\" value=\"Add\"></td>\n";
  65. echo "<input type=\"hidden\" name=\"upd\" value=\"less\">\n";
  66. echo "<form>\n</tr>\n";
  67. } // eof WOS
  68. function F_Update($ReadRequest) {
  69. $xml = simplexml_load_string($_SESSION["xml"]);
  70. //workaround xpath is not posible @ this moment on the local server
  71. $cCount = 0;
  72. $line = null;
  73. $found = false;
  74. $Number = intval($ReadRequest['Number']);
  75. $max = count($xml);
  76. while ($found==FALSE && $cCount<=$max) {
  77. if (intval($xml->{mispar}[$cCount]->attributes() )== $Number) {
  78. $line = $cCount;
  79. $found = TRUE;
  80. }
  81. $cCount++;
  82. }// eof workaround
  83. $xml->{mispar}[$line]->{il} = $ReadRequest['il'];
  84. $xml->{mispar}[$line]->{ilm} = $ReadRequest['ilm'];
  85. $xml->{mispar}[$line]->{ilf} = $ReadRequest['ilf'];
  86. $xml->{mispar}[$line]->{ilPh} = $ReadRequest['ilPh'];
  87. $xml->{mispar}[$line]->{ilPhM} = $ReadRequest['ilPhM'];
  88. $xml->{mispar}[$line]->{ilPhF} = $ReadRequest['ilPhF'];
  89. $_SESSION["xml"] = RecursiveXML($xml);
  90. WOS();
  91. } // eof F_Update
  92. function F_Add($ReadRequest) {
  93. $xml = simplexml_load_string($_SESSION["xml"]);
  94. $Add_Parrent = $xml->addChild('mispar');
  95. $Add_Parrent->addAttribute('id', $ReadRequest['Number']);
  96. $Add_Child = $Add_Parrent->addChild('Number', $ReadRequest['Number']);
  97. $Add_Child = $Add_Parrent->addChild('il', $ReadRequest['il']);
  98. $Add_Child = $Add_Parrent->addChild('ilm', $ReadRequest['ilm']);
  99. $Add_Child = $Add_Parrent->addChild('ilf', $ReadRequest['ilf']);
  100. $Add_Child = $Add_Parrent->addChild('ilPh', $ReadRequest['ilPh']);
  101. $Add_Child = $Add_Parrent->addChild('ilPhM', $ReadRequest['ilPhM']);
  102. $Add_Child = $Add_Parrent->addChild('ilPhF', $ReadRequest['ilPhF']);
  103. $_SESSION["xml"] = RecursiveXML($xml);
  104. WOS();
  105. } // eof F_Add
  106. function ReadStr() {
  107. $ReadRequest = array();
  108. $ReadRequest['Number'] = intval($_REQUEST['Number']);
  109. $ReadRequest['il'] = $_REQUEST['il'];
  110. $ReadRequest['ilm'] = $_REQUEST['ilm'];
  111. $ReadRequest['ilf'] = $_REQUEST['ilf'];
  112. $ReadRequest['ilPh'] = $_REQUEST['ilPh'];
  113. $ReadRequest['ilPhM'] = $_REQUEST['ilPhM'];
  114. $ReadRequest['ilPhF'] = $_REQUEST['ilPhF'];
  115. Return $ReadRequest;
  116. }
  117. function UnsetStr() {
  118. /* unset($ReadRequest['Number'];
  119. unset($ReadRequest['il'];
  120. unset($ReadRequest['ilm'];
  121. unset($ReadRequest['ilf'];
  122. unset($ReadRequest['ilPh'];
  123. unset($ReadRequest['ilPhM'];
  124. unset($ReadRequest['ilPhF'];*/
  125. }
  126. function F_SaveFile($file, $fullSourcePath) {
  127. $xml = $_SESSION['xml'];
  128. $newfile = "";
  129. $newfile = DIR_FS_SITEBAK . "Misparim/" . $file. "." . date("Ymd_Hi_s") .".bak";
  130. if (copy($fullSourcePath, $newfile) ) {
  131. $file_handle = fopen($newfile,"w") or die("Bestand niet schrijfbaar");
  132. $content .="<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\n";
  133. $content .="<!DOCTYPE misparim SYSTEM \"misparim.dtd\">";
  134. $content .= $xml;
  135. fwrite($file_handle, $content);
  136. fclose($file_handle);
  137. }else{
  138. echo "failed to copy $newfile...\n<br>";
  139. }
  140. unset($_REQUEST["ext"]);
  141. unset($_SESSION["xml"]);
  142. unset($newfile);
  143. }
  144. function F_LoadFile($useFile) {
  145. unset($handel);
  146. if (file_exists($useFile) ) {
  147. $xml = simplexml_load_file($useFile);
  148. $_SESSION['xml'] = RecursiveXML($xml);
  149. unset($userFile);
  150. unset($handel);
  151. unset($xml);
  152. WOS();
  153. }else{
  154. echo "bestand bestaat niet";
  155. }
  156. }
  157. echo "<html>\n<head>\n\t<title></title>\n\t<meta http-equiv=Content-Type content=\"text/html; charset=UTF-8\">\n";
  158. echo "\t<link rel=\"stylesheet\" type=\"text/css\" href=\"stylesheet.css\">\n</head>\n<body>\n";
  159. echo "Begin";
  160. if (isset($_REQUEST["ext"]) == false) {
  161. if (empty($_SESSION['xml']) ) F_LoadFile($xmlFullPath);
  162. } else {
  163. switch ($_REQUEST) {
  164. case (isset($_REQUEST["ext"] ) ):
  165. // unset($_SESSION["xml"]);
  166. F_SaveFile($xmlFileName, $xmlFullPath);
  167. echo "EXIT";
  168. Break;
  169. case (isset($_REQUEST['upd']) && $_REQUEST['upd']==="Submit"):
  170. $ReadRequest = ReadStr();
  171. F_Update($ReadRequest);
  172. Break;
  173. case (isset($_REQUEST['add']) && $_REQUEST['add']==="Add"):
  174. $ReadRequest = ReadStr();
  175. F_Add($ReadRequest);
  176. Break;
  177. case (isset($_REQUEST['srt']) && $_REQUEST['srt']==="Srt"):
  178. F_Soort();
  179. Break;
  180. default :
  181. if (empty($_SESSION['xml']) ) F_LoadFile($xmlFullPath);
  182. break;
  183. }
  184. }
  185. echo "end";
  186. echo "</table>\n</body>\n</html>\n";
  187. ?>