/** * method that save a picture before save a element in the database * @param string columnname(fieldname) in the database * @return boolean true if the operation succeded , else false */ private function savePictures($field) { $now = time(); //we define a name for the file $extension = "." . myTools::getExtension($this->arrayFields[$field]["currentValue"]); //we define the extension //we loop on the differents formats foreach ($this->arrayFields[$field]["pictureField"] as $key => $value) { if (!in_array($extension, $value["formats"])) { return false; } //we do the good transformation looking at the xml switch ($value["resizeType"]) { case "resizeHomo": //if the file doesn't exists in a directory, it is not a big deal if (!file_exists("../tmp/" . $this->arrayFields[$field]["currentValue"])) { return true; } $imgHandler = new imgSaver(str_replace(".", "", $extension), "../tmp/" . $this->arrayFields[$field]["currentValue"]); if (!$imgHandler->init() || !$imgHandler->handleImage()) { return false; } $imgHandler->resizeHomo((int) $value["ratio"], "pictureSave"); if (!$imgHandler->saveImg("../" . (string) $value["path"] . $now, "pictureSave")) { return false; } break; case "resizeFix": //if the file doesn't exists in a directory, it is not a big deal if (!file_exists("../tmp/" . $this->arrayFields[$field]["currentValue"])) { return true; } $imgHandler = new imgSaver(str_replace(".", "", $extension), "../tmp/" . $this->arrayFields[$field]["currentValue"]); if (!$imgHandler->init() || !$imgHandler->handleImage()) { return false; } $imgHandler->resizeFix((int) $value["width"], (int) $value["height"], "pictureSave"); if (!$imgHandler->saveImg("../" . (string) $value["path"] . $now, "pictureSave")) { return false; } break; case "resizeHomoW": //if the file doesn't exists in a directory, it is not a big deal if (!file_exists("../tmp/" . $this->arrayFields[$field]["currentValue"])) { return true; } $imgHandler = new imgSaver(str_replace(".", "", $extension), "../tmp/" . $this->arrayFields[$field]["currentValue"]); if (!$imgHandler->init() || !$imgHandler->handleImage()) { return false; } $imgHandler->resizeHomoW((int) $value["width"], "pictureSave"); if (!$imgHandler->saveImg("../" . (string) $value["path"] . $now, "pictureSave")) { return false; } break; case "resizeHomoH": //if the file doesn't exists in a directory, it is not a big deal if (!file_exists("../tmp/" . $this->arrayFields[$field]["currentValue"])) { return true; } $imgHandler = new imgSaver(str_replace(".", "", $extension), "../tmp/" . $this->arrayFields[$field]["currentValue"]); if (!$imgHandler->init() || !$imgHandler->handleImage()) { return false; } $imgHandler->resizeHomoH((int) $value["height"], "pictureSave"); if (!$imgHandler->saveImg("../" . (string) $value["path"] . $now, "pictureSave")) { return false; } break; default: //if the file doesn't exists in a directory, it is not a big deal if (!file_exists("../tmp/" . $this->arrayFields[$field]["currentValue"])) { return true; } $imgHandler = new imgSaver(str_replace(".", "", $extension), "../tmp/" . $this->arrayFields[$field]["currentValue"]); if (!$imgHandler->init() || !$imgHandler->handleImage()) { return false; } $imgHandler->noResize("pictureSave"); if (!$imgHandler->saveImg("../" . (string) $value["path"] . $now, "pictureSave")) { return false; } break; } } $this->arrayFields[$field]["currentValue"] = $now . $extension; return true; }