             }
         }
 
-        PHPhotoLibrary.requestAuthorization { status in
-
-            switch status {
-
-            case .Authorized:
-                openCameraRoll()
-
-            default:
-                self.alertCanNotAccessCameraRoll()
-            }
-        }
+        proposeToAccess(.Photos, agreed: openCameraRoll, rejected: {
+            self.alertCanNotAccessCameraRoll()
+        })
     }
 
     func uploadAvatarAndGotoPickSkills() {


    @IBAction func tryOpenCameraRoll(sender: UIButton) {

        let openCameraRoll: () -> Void = { [weak self] in
            if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.SavedPhotosAlbum) {
                let imagePicker = UIImagePickerController()
                imagePicker.delegate = self


import UIKit
import AVFoundation
import Proposer

class RegisterPickAvatarViewController: UIViewController {
    
