PageRenderTime 28ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/ collman/editImages.php

http://collman.googlecode.com/
PHP | 298 lines | 208 code | 58 blank | 32 comment | 35 complexity | c5eed5be3d0b82d80c5eae07b3b95163 MD5 | raw file
  1. <?php
  2. //=========== HEADER STUFF ========
  3. $Title = "Edit Images";
  4. $PageName = "Edit Images";
  5. $JavaScript = "ajaxValidator.js"; //ajax script updates locality information
  6. // $JavaScript = "localityInfo.js"; //ajax script updates locality information
  7. // $JavaScriptA = "validateInfo.js"; //ajax script validates Scientific Name
  8. // $JavaScriptB = "namesInfo.js"; //ajax script validates Scientific Name
  9. require("ta_header.inc");
  10. if($session->logged_in){
  11. echo "<p style=\"color:white;font-size:14px;position:absolute;top:50px;right:20px;\">Logged in:<strong>$session->username</strong><br />";
  12. echo "[<a style='color:white;' href=\"login_process.php\">Logout</a>]";
  13. }
  14. else {
  15. include("ta_loginform.inc");
  16. exit;
  17. }
  18. //===== OPEN DATABASE ============
  19. include("ta_opendb.inc");
  20. include("ta_fn_dropdownfield.inc");
  21. //Security level handling
  22. if ($session->userlevel == 9) {
  23. $userlevel = "Administrator"; }
  24. elseif ($session->userlevel == 1) {
  25. $userlevel = "Guest"; }
  26. else
  27. $userlevel = "User";
  28. //============ POST/GET VARIABLES ============
  29. $FormData =$_REQUEST['FormData'];
  30. $Category = $_REQUEST['Category'];
  31. $Task = $_REQUEST['Task'];
  32. $OrderBy = $_REQUEST['OrderBy'];
  33. $imageID = $_REQUEST['imageID'];
  34. $imageNumber = $_REQUEST['imageNumber'];
  35. $catalogNumber = $_REQUEST['catalogNumber'];
  36. $fieldNumber = $_REQUEST['fieldNumber'];
  37. $imageSubject = $_REQUEST['imageSubject'];
  38. $imageContent = $_REQUEST['imageContent'];
  39. $imageCategory= $_REQUEST['imageCategory'];
  40. $imageColor = $_REQUEST['imageColor'];
  41. $imageArchive = $_REQUEST['imageArchive'];
  42. $imageArchiveID = $_REQUEST['imageArchiveID'];
  43. $imageCopyright = $_REQUEST['imageCopyright'];
  44. $imageCopyrightHolder = $_REQUEST['imageCopyrightHolder'];
  45. $imageArtist = $_REQUEST['imageArtist'];
  46. $imageSecondArtist = $_REQUEST['imageSecondArtist'];
  47. $textDateImageMade = $_REQUEST['textDateImageMade'];
  48. $dateImageMade = $_REQUEST['dateImageMade'];
  49. $imageInformation = $_REQUEST['imageInformation'];
  50. $originalImageFile = $_REQUEST['originalImageFile'];
  51. $imageFile = $_REQUEST['imageFile'];
  52. $imageFileCompressed = $_REQUEST['imageFileCompressed'];
  53. $flagNotPublic = $_REQUEST['flagNotPublic'];
  54. $timeStamp = $_REQUEST['timeStamp'];
  55. $enteredBy = $_REQUEST['enteredBy'];
  56. $lastModified= $_REQUEST['lastModified'];
  57. $modifiedBy= $_REQUEST['modifiedBy'];
  58. $imageRemarks= $_REQUEST['imageRemarks'];
  59. // thispage
  60. $idxfield = "imageNumber";
  61. $tablename = "images";
  62. //If no initial value
  63. if ($FormData == "Initiate") {
  64. $sql = mysqli_query($dbcnx, "SELECT $idxfield FROM $tablename ORDER BY $idxfield DESC LIMIT 1");
  65. if($row=mysqli_fetch_row($sql)){
  66. $FormData = $row[0];
  67. }
  68. }
  69. if (empty($imageNumber)) {
  70. $imageNumber=$FormData;
  71. }
  72. if(empty($Category)) {$Category ='imageNumber';}
  73. if(empty($OrderBy)) {$OrderBy ='imageNumber';}
  74. //===== IN CASE MODIFY REQUESTED: MODIFY ===========
  75. if ($Task == "Modify") {
  76. $imageNumber = $FormData;
  77. // Get and show Old data
  78. $sql= mysqli_query($dbcnx, "SELECT imageNumber, catalogNumber, fieldNumber from $tablename WHERE $idxfield ='$imageNumber'");
  79. if($row = mysqli_fetch_array($sql)){
  80. //VALIDATION OF FORM IN HERE
  81. echo "<p style='color:white;background-color:red;font-size:12px;'>Image updated from ".$row[0]; }
  82. // Update operation
  83. if (isset($imageColor)){$imageColor = 1;}
  84. if (isset($flagNotPublic)) {$flagNotPublic = 1;}
  85. mysqli_query($dbcnx, "UPDATE $tablename SET catalogNumber ='$catalogNumber', fieldNumber = '$fieldNumber', imageSubject='$imageSubject', imageCategory='$imageCategory', imageContent = '$imageContent', imageColor ='$imageColor', imageArchive='$imageArchive', imageArchiveID ='$imageArchiveID', imageCopyright ='$imageCopyright', imageCopyrightHolder='$imageCopyrightHolder', imageArtist = '$imageArtist', imageSecondArtist = '$imageSecondArtist', textDateImageMade = '$textDateImageMade', dateImageMade='$dateImageMade', imageInformation='$imageInformation', originalImageFile='$originalImageFile', imageFile='$imageFile', imageFileCompressed='$imageFileCompressed', flagNotPublic='$flagNotPublic', lastModified = CURRENT_TIMESTAMP, modifiedBy ='".$session->username."', imageRemarks = '$imageRemarks' WHERE imageNumber = '$imageNumber'");
  86. // Get and show NEW Data
  87. $sql= mysqli_query($dbcnx, "SELECT catalogNumber from $tablename WHERE $idxfield ='$imageNumber'");
  88. if($row = mysqli_fetch_row($sql)){
  89. echo " to ".$row[0]."</p>"; }
  90. } //if task
  91. //==== DISPLAY EDITABLE FORM ========================
  92. if(isset($_REQUEST['FormData'])){
  93. $res = mysqli_query($dbcnx, "SELECT * FROM $tablename WHERE $Category = $FormData ORDER BY $OrderBy") or die(mysql_error());
  94. if($inf = mysqli_fetch_array($res)){
  95. //announcement line will not show on one line in print
  96. echo "<div style=\"font-size:0.8em;color:blue;\">";
  97. echo "<div class=\"lefthalf\">Editing Image: ". $inf["imageNumber"]." as $userlevel</div>";
  98. echo "<div class=\"righthalf\">Search field = $Category, Sorted by $OrderBy</div>";
  99. echo "</div>";
  100. echo "<div class=\"spacer\">&nbsp;</div>";
  101. $sql= mysqli_query($dbcnx, "SELECT scientificName FROM objects WHERE catalogNumber = '".$inf["catalogNumber"]."'");
  102. if($row = mysqli_fetch_row($sql)){
  103. $headline = $row[0];
  104. echo "<div class=\"infohead\" id=\"infohead\">Image: ".$headline."</div>";
  105. // echo "<div class=\"infohead\" id=\"infohead\">Family: ".$row[0]."</div>";
  106. }
  107. //FORM ITSELF
  108. echo "<form class=\"main\" method=\"POST\" name=\"frmImageEdit\" action=\"$_SERVER[PHP_SELF]?FormData=".$inf["imageNumber"]."\">";
  109. //IMAGE NUMBER etc in one row
  110. echo "<p><label for =\"imageNumber\" style=\"font-size:1.4em;font-weight:600;\">Image No: </label><input style=\"text-align:left;font-size:1.4em;font-weight:600;border:0;background-color:#cccccc;\" type=\"text\" name=\"imageNumber\" size=\"4\" value='".$inf["imageNumber"]."' readonly></a>";
  111. inputfield("catalogNumber","Cat No","text","16","16","".$inf['catalogNumber']."");
  112. inputfield("fieldNumber","Field No","text","16","16","".$inf['fieldNumber']."");
  113. echo "<br />";
  114. inputfield("imageSubject","Subject","text","16","16","".$inf['imageSubject']."");
  115. dropdownfield("imageContent","lk_imagecontents","Content","".$inf['imageContent']."");
  116. dropdownfield("imageCategory","lk_imagecategories","Image Category","".$inf['imageContent']."");
  117. if ($inf["imageColor"] == '1') {
  118. echo "<label for=\"imageColor\">Color :</label><input type=\"checkbox\" name=\"imageColor\" checked onkeypress=\"return handleEnter(this, event)\">\n";
  119. }
  120. else {
  121. echo "<label for=\"imageColor\">Color :</label><input type=\"checkbox\" name=\"imageColor\" onkeypress=\"return handleEnter(this, event)\">\n";
  122. }
  123. echo "<br />\n";
  124. inputfield("imageArchive","Archive","text","25","25","".$inf['imageArchive']."");
  125. inputfield("imageArchiveID","Archive ID","text","25","25","".$inf['imageArchiveID']."");
  126. inputfield("imageCopyright","Copyright","text","16","16","".$inf['imageCopyright']."");
  127. inputfield("imageCopyrightHolder","Copyright Holder","text","25","25","".$inf['imageCopyrightHolder']."");
  128. echo "<br />\n";
  129. inputfield("imageArtist","Artist","text","25","25","".$inf['imageArtist']."");
  130. inputfield("imageSecondArtist","Second Artist","text","25","25","".$inf['imageSecondArtist']."");
  131. inputfield("textDateImageMade","Date (text)","text","16","16","".$inf['textDateImageMade']."");
  132. inputfield("dateImageMade","Date","text","16","16","".$inf['dateImageMade']."");
  133. echo "<br />\n";
  134. inputfield("imageInformation","Image Data","text","100","100","".$inf['imageInformation']."");
  135. echo "<br />\n";
  136. inputfield("originalImageFile","Image File","text","50","50","".$inf['originalImageFile']."");
  137. inputfield("imageFile","Image File","text","50","50","".$inf['imageFile']."");
  138. echo "<br />\n";
  139. inputfield("imageFileCompressed","Compressed File","text","50","50","".$inf['imageFileCompressed']."");
  140. if ($inf["flagNotPublic"] == '1') {
  141. echo "<label for=\"flagNotPublic\">Not Public :</label><input type=\"checkbox\" name=\"flagNotPublic\" value='".$inf["flagNotPublic"]."' checked onkeypress=\"return handleEnter(this, event)\">\n";
  142. }
  143. else {
  144. echo "<label for=\"flagNotPublic\">Not Public :</label><input type=\"checkbox\" name=\"flagNotPublic\" value='".$inf["flagNotPublic"]."' onkeypress=\"return handleEnter(this, event)\">\n";
  145. }
  146. echo "<br />";
  147. echo "<label for=\"timeStamp\">Time Stamp :</label><input type=\"text\" name=\"timeStamp\" size=\"20\" value='".$inf["timeStamp"]."' onkeypress=\"return handleEnter(this, event)\" readonly>";
  148. echo "<label for=\"enteredBy\">Entered By: </label><input type=\"text\" name=\"enteredBy\" size=\"30\" value='".$inf["enteredBy"]."' onkeypress=\"return handleEnter(this, event)\" readonly>";
  149. if (!$inf["lastModified"] == NULL) {
  150. echo "<label for=\"lastModified\">Last Modified: </label><input type=\"text\" name=\"lastModified\" size=\"20\" value='".$inf["lastModified"]."' onkeypress=\"return handleEnter(this, event)\" readonly>";
  151. echo "<label for=\"modifiedBy\">Modified By: </label><input type=\"text\" name=\"modifiedBy\" size=\"30\" value='".$inf["modifiedBy"]."' onkeypress=\"return handleEnter(this, event)\" readonly>";
  152. }
  153. echo "</p><p><label for=\"imageRemarks\" style=\"float:left\">Image Remarks: </label><textarea name=\"imageRemarks\" wrap=\"virtual\" cols=\"130\" rows=\"2\" >".$inf["imageRemarks"]."</textarea></p>";
  154. echo "<p><input type=\"submit\" value=\"Modify\" name=\"Task\"><input type=\"reset\" name=\"Cancel\" value=\"Reset\"></p></form>";
  155. ;}
  156. }
  157. //========== IMAGE DISPLAY =============================
  158. include ("ta_fn_convertimage.inc");
  159. echo "<div id='divimagedisplay'>";
  160. // $sql = mysqli_query($dbcnx,"SELECT SQL_CACHE imageFile, imageNumber FROM images ORDER BY imageNumber DESC LIMIT 1");
  161. // $row = mysqli_fetch_array($sql);
  162. $outimage =&convertimage("images\\".$inf["imageFile"]."", 300);
  163. $urlstring= "displayImages.php?Category=imageFile&Precision==&FormData=".$inf["imageFile"]."&Ordering=imageNumber&MaxRecs=1&Submit=Submit";
  164. echo "<p><a href='".$urlstring."' target='_blank'><img style='width:300px;margin-left: 20px;margin-bottom: 10px;' src='thumbs/".$outimage."' /></a>";
  165. echo "</div>"; //imagedisplay
  166. // End of Most Recent Image =========================
  167. //============== BLOCK OF LOOKUPDATA ==============
  168. echo "<div class=\"lookup\" id=\"lookup\">";
  169. echo "<div id=\"divConfirmation\"></div>";
  170. //SHOW REFERENCES
  171. $sql = mysqli_query($dbcnx, "select * from citedObjects WHERE catalogNumber ='".$inf["catalogNumber"]."'");
  172. if ($row = mysqli_fetch_array($sql)) {
  173. echo "<div class=\"info\" id=\"divReferenceInfo\">Citations: ";
  174. do {
  175. printf("<a href='editCitations.php?FormData=%s'>%s</a> |\n",$row[0],$row[0]);
  176. }
  177. while ($row = mysqli_fetch_array($sql));
  178. echo "</div>"; //divReferenceInfo
  179. }
  180. //SHOW INTERNAL COMMENTS
  181. $sql = mysqli_query($dbcnx, "SELECT commentID, commentText, timeStamp FROM comments WHERE itemNumber ='".$inf["catalogNumber"]."'");
  182. if ($row = mysqli_fetch_array($sql)) {
  183. echo "<div class=\"info\" id=\"divCommentInfo\">Comments: ";
  184. do {
  185. printf("<a href='editComments.php?FormData=%s'>%s</a> (%s. Time stamp: %s)\n",$row[0],$row[0],$row[1],$row[2]);
  186. }
  187. while ($row = mysqli_fetch_array($sql));
  188. echo "</div>"; //divCommentInfo
  189. }
  190. echo "</div>"; //lookups
  191. include("ta_citedobjectslist.inc");
  192. // ==================BOX AT BOTTOM======================
  193. echo "<div class=\"bottombox\" id=\"bottombox\">";
  194. $infvalue = "".$inf['imageNumber']."";
  195. $findlabel = "Find Image";
  196. recnavigator($idxfield,$tablename,$infvalue,"".$OrderBy."");
  197. /******SOMETHING NOT WORKING */
  198. echo "<form style=\"font-family:arial;\" method=\"GET\" name=\"frmSortObject\" action=\"$_SERVER[PHP_SELF]\">";
  199. echo "<label for=\"OrderBy\"> Sort by: <select id=\"OrderBy\" name=\"OrderBy\"><option value='catalogNumber'>Catalog No</option>";
  200. echo "<option value='genus'>Genus</option>";
  201. echo "<option value='individualCount'>N Specimens</option>";
  202. echo "<option value='typeStatus'>Type status</option>";
  203. echo "<option value='fieldNumber'>Field No</option>";
  204. echo "<option value='lastModified'>Date Last Modified</option></select>";
  205. echo "<input type=\"hidden\" value=\"catalogNumber\" name=\"Category\">";
  206. echo "<input type=\"hidden\" value=\"".$inf["catalogNumber"]."\" name=\"FormData\">";
  207. echo "<input type=\"submit\" value=\"Order\" name=\"Task\"></form>";
  208. findform($findlabel,$idxfield);
  209. //======Links to output lists
  210. echo "LIST : ";
  211. echo "<a href=\"objectListing.php?Category=objects.genus&FormData=".$inf["genus"]."&OrderBy=scientificName&Direction=ASC\">CONGENERIC</a>";
  212. echo " | ";
  213. echo "<a href=\"objectListing.php?Category=scientificName&FormData=".$inf["scientificName"]."&OrderBy=scientificName&Direction=ASC\">CONSPECIFIC</a>";
  214. if (isset ($family)){
  215. echo " | ";
  216. echo "<a href=\"objectListing.php?Category=family&FormData=".$family."&OrderBy=scientificName&Direction=ASC\">ALL ".strtoupper($family)."</a>";
  217. }
  218. //======End output lists
  219. echo "</div>\n"; //bottombox
  220. //echo "</div>\n"; //class content
  221. ?>
  222. <script type="text/javascript">
  223. var options1 = {
  224. script:"as_names.php?",
  225. varname:"input",
  226. minchars:1
  227. };
  228. var as1 = new AutoSuggest('identifiedBy', options1);
  229. var options2 = {
  230. script:"as_fieldNumbers.php?",
  231. varname:"input",
  232. minchars:3
  233. };
  234. var as2 = new AutoSuggest('fieldNumber', options2);
  235. </script>
  236. <?php
  237. echo "</body>";
  238. echo "</html>";
  239. //include ("ta_footer.inc");
  240. ?>