File indexing completed on 2024-12-15 05:22:32
0001 <?php 0002 /** 0003 * ocs-webserver 0004 * 0005 * Copyright 2016 by pling GmbH. 0006 * 0007 * This file is part of ocs-webserver. 0008 * 0009 * This program is free software: you can redistribute it and/or modify 0010 * it under the terms of the GNU Affero General Public License as 0011 * published by the Free Software Foundation, either version 3 of the 0012 * License, or (at your option) any later version. 0013 * 0014 * This program is distributed in the hope that it will be useful, 0015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0017 * GNU Affero General Public License for more details. 0018 * 0019 * You should have received a copy of the GNU Affero General Public License 0020 * along with this program. If not, see <http://www.gnu.org/licenses/>. 0021 **/ 0022 0023 header("HTTP/1.1 503 Service Unavailable"); 0024 exit(1); 0025 0026 date_default_timezone_set("Europe/Berlin"); 0027 setlocale(LC_ALL, 'de_DE@euro'); 0028 // Define path to application directory 0029 defined('APPLICATION_PATH') 0030 || define('APPLICATION_PATH', realpath(dirname(__FILE__))); 0031 0032 0033 // Define application environment 0034 defined('APPLICATION_ENV') 0035 || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production')); 0036 0037 defined('IMAGES_UPLOAD_PATH') 0038 || define('IMAGES_UPLOAD_PATH', APPLICATION_PATH . '/img/'); 0039 0040 0041 // Ensure library/ is on include_path 0042 set_include_path(implode("/", array( 0043 APPLICATION_PATH . '/../library', 0044 get_include_path(), 0045 ))); 0046 0047 0048 require_once 'Zend/Loader/Autoloader.php'; 0049 0050 $loader = Zend_Loader_Autoloader::getInstance(); 0051 $loader->setFallbackAutoloader(true); 0052 0053 $upload = new Zend_File_Transfer_Adapter_Http(); 0054 $upload->addValidator('Count', false, 1); 0055 $upload->addValidator('IsImage', false); 0056 $upload->addValidator('Size', false, array('min' => '2kB', 'max' => '2MB')); 0057 $upload->addValidator('ImageSize', false, 0058 array( 0059 'minwidth' => 50, 0060 'maxwidth' => 2000, 0061 'minheight' => 50, 0062 'maxheight' => 2000 0063 ) 0064 ); 0065 //$upload->addFilter('Rename',array('target' => IMAGES_UPLOAD_PATH,'overwrite' => true)); 0066 //$upload->addFilter('Rename',IMAGES_UPLOAD_PATH); 0067 0068 if (true == $upload->receive()) { 0069 0070 $file_source = $upload->getFileName(); 0071 $file_destination = IMAGES_UPLOAD_PATH . basename($upload->getFileName()); 0072 0073 if (rename($file_source, $file_destination)) { 0074 header("HTTP/1.0 200 OK"); 0075 print basename($upload->getFileName()); 0076 exit(0); 0077 } 0078 0079 } 0080 header("HTTP/1.0 500 Server Error"); 0081 print implode("\n<br>", $upload->getMessages());