diff options
author | Evan Prodromou <evan@controlyourself.ca> | 2009-02-05 12:04:06 -0500 |
---|---|---|
committer | Evan Prodromou <evan@controlyourself.ca> | 2009-02-05 12:04:06 -0500 |
commit | 7ea136ee1ba350a64b95cd86a386f3e0d0e339d8 (patch) | |
tree | 0535eb11056eaa414175bc3cba7f7f55f97d2d13 /classes/User_group.php | |
parent | 68a3139d0b86a2a716b24a481e677aa5d4699396 (diff) | |
parent | 4ced74dc9105884fc05d4ab48e8d0162204f8c6a (diff) |
Merge branch '0.7.x' of git://gitorious.org/laconica/sgmurphy-clone into sgmurphy-clone/0.7.x
Conflicts:
actions/avatarsettings.php
Diffstat (limited to 'classes/User_group.php')
-rwxr-xr-x | classes/User_group.php | 77 |
1 files changed, 6 insertions, 71 deletions
diff --git a/classes/User_group.php b/classes/User_group.php index 522dd8143..340d7f67a 100755 --- a/classes/User_group.php +++ b/classes/User_group.php @@ -88,81 +88,16 @@ class User_group extends Memcached_DataObject return $members; } - function setOriginal($filename, $type) + function setOriginal($filename) { + $imagefile = new ImageFile($this->id, common_avatar_path($filename)); + $orig = clone($this); $this->original_logo = common_avatar_url($filename); - $this->homepage_logo = common_avatar_url($this->scale($filename, - AVATAR_PROFILE_SIZE, - $type)); - $this->stream_logo = common_avatar_url($this->scale($filename, - AVATAR_STREAM_SIZE, - $type)); - $this->mini_logo = common_avatar_url($this->scale($filename, - AVATAR_MINI_SIZE, - $type)); + $this->homepage_logo = common_avatar_url($imagefile->resize(AVATAR_PROFILE_SIZE)); + $this->stream_logo = common_avatar_url($imagefile->resize(AVATAR_STREAM_SIZE)); + $this->mini_logo = common_avatar_url($imagefile->resize(AVATAR_MINI_SIZE)); common_debug(common_log_objstring($this)); return $this->update($orig); } - - function scale($filename, $size, $type) - { - $filepath = common_avatar_path($filename); - - if (!file_exists($filepath)) { - $this->serverError(_('Lost our file.')); - return; - } - - $info = @getimagesize($filepath); - - switch ($type) { - case IMAGETYPE_GIF: - $image_src = imagecreatefromgif($filepath); - break; - case IMAGETYPE_JPEG: - $image_src = imagecreatefromjpeg($filepath); - break; - case IMAGETYPE_PNG: - $image_src = imagecreatefrompng($filepath); - break; - default: - $this->serverError(_('Unknown file type')); - return; - } - - $image_dest = imagecreatetruecolor($size, $size); - - $background = imagecolorallocate($image_dest, 0, 0, 0); - ImageColorTransparent($image_dest, $background); - imagealphablending($image_dest, false); - - imagecopyresized($image_dest, $image_src, - 0, 0, 0, 0, - $size, $size, $info[0], $info[1]); - - $outname = common_avatar_filename($this->id, - image_type_to_extension($type), - $size, - common_timestamp()); - - $outpath = common_avatar_path($outname); - - switch ($type) { - case IMAGETYPE_GIF: - imagegif($image_dest, $outpath); - break; - case IMAGETYPE_JPEG: - imagejpeg($image_dest, $outpath); - break; - case IMAGETYPE_PNG: - imagepng($image_dest, $outpath); - break; - default: - $this->serverError(_('Unknown file type')); - return; - } - - return $outname; - } } |