summaryrefslogtreecommitdiff
path: root/public/assets/javascripts/ui/site/ProfileView.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/javascripts/ui/site/ProfileView.js')
-rw-r--r--public/assets/javascripts/ui/site/ProfileView.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/public/assets/javascripts/ui/site/ProfileView.js b/public/assets/javascripts/ui/site/ProfileView.js
index f3b35d9..8471abc 100644
--- a/public/assets/javascripts/ui/site/ProfileView.js
+++ b/public/assets/javascripts/ui/site/ProfileView.js
@@ -1,6 +1,12 @@
var ProfileView = View.extend({
+ el: ".profilepage",
+
+ events: {
+ "change #profile_avatar": "uploadAvatar",
+ },
+
initialize: function() {
},
@@ -12,6 +18,28 @@ var ProfileView = View.extend({
$(".bio").addClass(choice(classes));
this.projectList = new ProjectList ()
+ },
+
+ uploadAvatar: function(){
+ var fd = new FormData(), hasCSRF = false
+ var files = this.$("#profile_avatar")[0].files
+ if (! files.length) return
+
+ fd.append("avatar", files[0]);
+ fd.append("_csrf", $("[name=_csrf]").val())
+
+ var request = $.ajax({
+ url: "/api/profile",
+ type: "put",
+ data: fd,
+ dataType: "json",
+ processData: false,
+ contentType: false,
+ })
+
+ request.done($.proxy(function (response) {
+ window.location.href = "/profile"
+ }, this));
}
})