]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/avatar.php
paginate on showstream
[quix0rs-gnu-social.git] / actions / avatar.php
index 53595af12653c67d345324f69c8a6c447e0c15f4..9c736cd3b6fd65001372f013f45e7ab9479818c9 100644 (file)
@@ -62,11 +62,9 @@ class AvatarAction extends SettingsAction {
                common_element('input', array('name' => 'avatarfile',
                                                                          'type' => 'file',
                                                                          'id' => 'avatarfile'));
-               common_element('input', array('name' => 'submit',
-                                                                         'type' => 'submit',
-                                                                         'id' => 'submit',
-                                                                         'value' =>_t('Upload')));
+               common_submit('submit', _t('Upload'));
                common_element_end('form');
+               common_show_footer();
        }
 
        function handle_post() {
@@ -107,7 +105,7 @@ class AvatarAction extends SettingsAction {
 
                $user = common_current_user();
 
-               $filename = common_avatar_filename($user, image_type_to_extension($info[2]));
+               $filename = common_avatar_filename($user, image_type_to_extension($info[2]), NULL, common_timestamp());
                $filepath = common_avatar_path($filename);
 
                if (!move_uploaded_file($_FILES['avatarfile']['tmp_name'], $filepath)) {
@@ -128,7 +126,10 @@ class AvatarAction extends SettingsAction {
                $avatar->created = DB_DataObject_Cast::dateTime(); # current time
 
                foreach (array(AVATAR_PROFILE_SIZE, AVATAR_STREAM_SIZE, AVATAR_MINI_SIZE) as $size) {
-                       $scaled[] = $this->scale_avatar($user, $avatar, $size);
+                       # We don't need a scaled one if the original is already of that size!
+                       if ($avatar->width != $size && $avatar->height != $size) {
+                               $scaled[] = $this->scale_avatar($user, $avatar, $size);
+                       }
                }
 
                # XXX: start a transaction here
@@ -138,7 +139,6 @@ class AvatarAction extends SettingsAction {
                        common_server_error(_t('Error deleting old avatars.'));
                        return;
                }
-
                if (!$avatar->insert()) {
                        @unlink($filepath);
                        common_server_error(_t('Error inserting avatar.'));
@@ -166,9 +166,9 @@ class AvatarAction extends SettingsAction {
                imagecopyresampled($image_s, $image_a, 0, 0, 0, 0,
                                                   $size, $size, $square, $square);
 
-               $ext = ($avatar->mediattype == 'image/jpeg') ? ".jpg" : ".png";
+               $ext = ($avatar->mediattype == 'image/jpeg') ? ".jpeg" : ".png";
 
-               $filename = common_avatar_filename($user, $ext, $size);
+               $filename = common_avatar_filename($user, $ext, $size, common_timestamp());
 
                if ($avatar->mediatype == 'image/jpeg') {
                        imagejpeg($image_s, common_avatar_path($filename));