 
     @IBAction func coverImageTapped() {
         photoSaveCallback = { image in
-            self.coverImage.image = image
-            ProfileService().updateUserCoverImage(image, success: { user, responseConfig in
-                let nav = self.navigationController as? ElloNavigationController
-                nav?.setProfileData(user, responseConfig: responseConfig)
+            ElloHUD.showLoadingHud()
+            ProfileService().updateUserCoverImage(image, success: { _, _ in
+                ElloHUD.hideLoadingHud()
+                self.alertUserOfImageProcessing()
             }) { _, _ in
-                self.currentUser?.coverImageURL.map(self.coverImage.sd_setImageWithURL)
+                ElloHUD.hideLoadingHud()
             }
         }
         openImagePicker()


    @IBAction func avatarImageTapped() {
        photoSaveCallback = { image in
            self.avatarImage.image = image
            ProfileService().updateUserAvatarImage(image, success: { user, responseConfig in
                let nav = self.navigationController as? ElloNavigationController
                nav?.setProfileData(user, responseConfig: responseConfig)
            }) { _, _ in
                self.currentUser?.avatarURL.map(self.profileImage.sd_setImageWithURL)
            }
        }
        openImagePicker()

            imagePicker.delegate = self
            self.presentViewController(imagePicker, animated: true, completion: .None)
        }
    }

    private func alertUserOfImageProcessing() {
        let message = NSLocalizedString("Copy needed to explain caching of old avatar", comment: "Copy needed to explain caching of old avatar")
        let alert = AlertViewController(message: message, textAlignment: .Center, dismissable: true, type: .Normal)
        alert.addAction(AlertAction(title: "OK", style: .Light, handler: .None))
        presentViewController(alert, animated: true, completion: .None)
    }
}

