<?php
-# Copyright (C) 2007 Jason Woofenden
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# This program is in the public domain within the United States. Additionally,
+# we waive copyright and related rights in the work worldwide through the CC0
+# 1.0 Universal public domain dedication, which can be found at
+# http://creativecommons.org/publicdomain/zero/1.0/
# This file contains functions to accept files being uplodad with the <input
# Example:
#
# <form action="foo.php" enctype="multipart/form-data" method="post">
-# <input type="hidden" name="MAX_FILE_SIZE" value="2097152" />
-# <input type="file" name="photo" />
-# <input type="submit" name="save" value="Save" />
+# <input type="hidden" name="MAX_FILE_SIZE" value="2097152">
+# <input type="file" name="photo">
+# <input type="submit" name="save" value="Save">
# </form>
#
# #######
}
# replace symbols with underscores
- $filename = ereg_replace('[^a-z0-9_.]', '_', $filename);
+ $filename = preg_replace('|[^a-z0-9_.]|', '_', $filename);
# remove dots from the beginning (no invisible files)
- $filename = ereg_replace('^\.*', '', $filename);
+ $filename = preg_replace('|^\.*|', '', $filename);
if(strlen($filename > 80)) {
$filename = substr($filename, -80);
# the client's name appended. Otherwise $path will be used as the filename
# exactly as is, even if extensions differ between the client's name and $path.
#
-# where user uploads "c:\foo\Bar baz.PDF" at <input name="in" type="file" />
+# where user uploads "c:\foo\Bar baz.PDF" at <input name="in" type="file">
# save_uploaded_file('in', 'uploaded_pdfs/'); yeilds:
# "uploaded_pdfs/bar_baz.pdf"
# save_uploaded_file('in', 'uploaded_pdfs/prefix.'); yeilds:
# standard places (like /usr/bin or /usr/local bin) and PHP's PATH environment
# variable is not set appropriately.
function path_to($prog, $or_die = true) {
- $prog = ereg_replace('[^a-zA-Z0-9_.-]', '', $prog);
- $prog = ereg_replace('^[-.]*', '', $prog);
+ $prog = preg_replace('|[^a-z0-9_.-]|i', '', $prog);
+ $prog = preg_replace('|^[-.]*|', '', $prog);
if($prog == '') {
die('Invalid argument to path_to()');
}
$new_filename .= '.png';
}
- imagemagick_convert($filename, $new_filename, "$convert -colorspace RGB", 'GIF to PNG conversion');
+ imagemagick_convert($filename, $new_filename, "-colorspace sRGB", 'GIF to PNG conversion');
unlink($filename);
return $new_filename;
function exec_or_die($command, $doing_what) {
exec($command, $dummy, $ret);
if($ret != 0) {
- $base = basename(ereg_replace(' .*', '', $command));
+ $base = basename(preg_replace('| .*|', '', $command));
die("$doing_what failed. $base called exit($ret)");
}
}
}
function format_int_70($str) {
- $str = ereg_replace('[^0-9]', '', $str);
+ $str = preg_replace('|[^0-9]|', '', $str);
if($str == '') {
$str = '70';
}
# Like save_uploaded_file() (above) except that it converts all images to PNG
-# or JPEG, converts to RGB colorspace, and optionally scales and/or creates a
+# or JPEG, converts to sRGB colorspace, and optionally scales and/or creates a
# thumbnail. And, if $path ends with a period, the correct extension will be
# appended.
#
# and names, call convert_uploaded_image().
function save_uploaded_image($key, $path, $image_width = 0, $image_height = 0, $thumbnail_width = 0, $thumbnail_height = 0) {
$image_w_h_thumb_w_h = convert_uploaded_image($key, $path, $image_width, $image_height, $thumbnail_width, $thumbnail_height);
- return ereg_replace(' .*', '', $image_w_h_thumb_w_h);
+ return preg_replace('| .*|', '', $image_w_h_thumb_w_h);
}
function ext_to_web_image_ext($in) {
$filename = $path;
}
- $convert_params = '-colorspace RGB';
+ $convert_params = '-colorspace sRGB -auto-orient';
if($image_width > 0 && $image_height > 0) {
$convert_params .= " -geometry ${image_width}x$image_height";
}