Example #1
0
 function savePicture()
 {
     $entityTypeId = $this->input->post('entityTypeId');
     $entityId = $this->input->post('entityId');
     $config = getEntityGalleryConfig($entityTypeId);
     if (!$this->safety->allowByControllerName($config['controller'])) {
         return errorForbidden();
     }
     $result = savePicture($config, $entityTypeId, $entityId);
     if ($result['code'] != true) {
         return loadViewAjax(false, $result['result']);
     }
     $files = $this->Files_Model->selectEntityGallery($entityTypeId, $entityId, $result['fileId'], true);
     return loadViewAjax(true, array('files' => $files));
 }
     $result4 = mysql_query("UPDATE {$table2} SET FileName = '{$new_filename}' WHERE pic_id = '{$pic_id}'");
 }
 //die Datei-Attribute werden für die hochgeladene Original-(jpg)Bilddatei auf 0700 gesetzt:
 $fileOri = $pic_path . "/" . $new_filename;
 clearstatcache();
 chmod($fileOri, 0700);
 clearstatcache();
 /*
 $end1 = microtime();
 list($start1msec, $start1sec) = explode(" ",$start1);
 list($end1msec, $end1sec) = explode(" ",$end1);
 $runtime1 = ($end1sec + $end1msec) - ($start1sec + $start1msec);
 echo "Zeit f&uuml;r Bildupload: ".$runtime1."<BR>";
 */
 //Funktions-Parameter: Bild-ID, Anzahl der Scenen; User-ID; Ausrichtung
 savePicture($pic_id, $z, $user_id, $Orientation);
 //Parameter sollten reichen, da sich alles weitere erzeugen l&auml;�t
 /*
 $end2 = microtime();
 list($end2msec, $end2sec) = explode(" ",$end2);
 $runtime2 = ($end2sec + $end2msec) - ($start1sec + $start1msec);
 echo "Zeit bis Bilddatenspeicherung: ".$runtime2."<BR>";	
 */
 //Aus Preformance-Gr&uuml;nden werden die Histogramme aus den HQ-Bildern gewonnen:
 $result3 = mysql_query("SELECT * FROM {$table2} WHERE pic_id = '{$pic_id}'");
 $FNHQ = mysql_result($result3, isset($i3), 'FileNameHQ');
 $FileName = $FNHQ;
 //Parameter: Bild-ID, Name der HQ-Datei (z.B. 21456_hq.jpg), Server-Root
 generateHistogram($pic_id, $FileName, $sr);
 /*
 $end3 = microtime();
     $new_filename = $tmp_filename;
     //jpg-Dateien behalten ihren eindeutigen Dateinamen
     //2, 4, 5 und 7 sind Spiegelungen, nur 3, 6 und 8 sind reine Rotationen:
     //Erzeugung der lagerichtigen Kopie in /rotated:
     if ($Orientation == '3' or $Orientation == '6' or $Orientation == '8') {
         $rot_filename = createQuickPreview($Orientation, $new_filename, $sr);
     }
     $result4 = mysql_query("UPDATE {$table2} SET FileName = '{$new_filename}' WHERE pic_id = '{$pic_id}'");
     //die Datei-Attribute werden fuer die hochgeladene Original-(jpg)Bilddatei auf 0700 gesetzt:
     $fileOri = $pic_path . "/" . $new_filename;
     clearstatcache();
     chmod($fileOri, 0700);
     clearstatcache();
 }
 //Funktions-Parameter: Bild-ID, Anzahl der Szenen; User-ID; Ausrichtung
 savePicture($pic_id, '1', $uid, $Orientation, $sr);
 //Parameter sollten reichen, da sich alles weitere erzeugen laesst
 //Aus Preformance-Gruenden werden die Histogramme aus den HQ-Bildern gewonnen:
 $result3 = mysql_query("SELECT * FROM {$table2} WHERE pic_id = '{$pic_id}'");
 $FNHQ = mysql_result($result3, isset($i3), 'FileNameHQ');
 $md5sum = mysql_result($result3, isset($i3), 'md5sum');
 //wird bei der Doublettenpruefung benoetigt
 $FileName = $FNHQ;
 //Parameter: Bild-ID, Name der HQ-Datei (z.B. 21456_hq.jpg), Server-Root
 generateHistogram($pic_id, $FileName, $sr);
 //Meta-Daten aus dem Bild auslesen und in die Tabelle pictures schreiben:
 //Parameter: Bild-ID, Server-Root, ermittelte Bildausrichtung
 extractExifData($pic_id, $sr, $Orientation);
 //  +++  loeschen der soeben in die DB aufgenommene Datei aus dem Upload-Ordner, aber nur, wenn sich die Originaldatei lesen laesst:  +++
 $fh = fopen($pic_path . '/' . $new_filename, 'r');
 if ($fh) {
     publishPicture($cid, 0);
     break;
 case 'movepic':
     movePic($cid[0]);
     break;
 case 'movepicres':
     movePicResult($cid);
     break;
 case "edit":
     editPicture($cid[0]);
     break;
 case "remove":
     removePicture();
     break;
 case "save":
     savePicture();
     break;
 case "comments":
     showComments();
     break;
 case "publishcmt":
     publishComment($id, 1);
     break;
 case "unpublishcmt":
     publishComment($id, 0);
     break;
 case "removecmt":
     removeComment();
     break;
 case "showupload":
     showUpload();
Example #5
0
 function savePicture($testId)
 {
     if (!$this->safety->allowByControllerName('testing/edit')) {
         return errorForbidden();
     }
     $this->deletePicture($testId);
     $result = savePicture(config_item('testPicture'));
     if ($result['code'] != true) {
         return loadViewAjax(false, $result['result']);
     }
     $testPictureFileId = $result['fileId'];
     $this->Testing_Model->savePicture($testId, $testPictureFileId);
     $data = $this->Testing_Model->get($testId, true);
     return loadViewAjax(true, $data['testPicture']);
 }