summaryrefslogtreecommitdiff
path: root/include/functions.php
diff options
context:
space:
mode:
Diffstat (limited to 'include/functions.php')
-rw-r--r--include/functions.php42
1 files changed, 42 insertions, 0 deletions
diff --git a/include/functions.php b/include/functions.php
index e2357f6c0..1ae5bbbe2 100644
--- a/include/functions.php
+++ b/include/functions.php
@@ -508,8 +508,50 @@
}
}
}
+ return $icon_file;
}
}
+
+ function calculate_avg_color($iconFile) {
+
+ require_once "lib/floIcon.php";
+
+ $imgInfo = @getimagesize($iconFile);
+
+ if(strtolower($imgInfo['mime'])=='image/vnd.microsoft.icon') {
+ $ico = new floIcon();
+ @$ico->readICO($iconFile);
+ //TODO: error logging
+ if(count($ico->images)==0)
+ return null;
+ else {
+ $image = @$ico->images[count($ico->images)-1]->getImageResource();
+ }
+ $type = "ico";
+ }
+ elseif(strtolower($imgInfo['mime'])=='image/png') {
+ $image = imagecreatefrompng($iconFile);
+ $type = 'png';
+ }
+ elseif(strtolower($imgInfo['mime'])=='image/jpeg') {
+ $image = imagecreatefromjpeg($iconFile);
+ $type = 'jpg';
+ }
+ elseif(strtolower($imgInfo['mime'])=='image/gif') {
+ $image = imagecreatefromgif($iconFile);
+ $type = 'gif';
+ }
+ //TODO: error logging
+ if (is_null($image))
+ return null;
+ $width = imagesx($image);
+ $height = imagesy($image);
+ $pixel = imagecreatetruecolor(1, 1);
+ imagecopyresampled($pixel, $image, 0, 0, 0, 0, 1, 1, $width, $height);
+ $rgb = imagecolorat($pixel, 0, 0);
+ $color = imagecolorsforindex($pixel, $rgb);
+ return $color;
+ }
function print_select($id, $default, $values, $attributes = "") {
print "<select name=\"$id\" id=\"$id\" $attributes>";