initial commit.
This commit is contained in:
81
public/javascripts/spacedeck_avatars.js
Normal file
81
public/javascripts/spacedeck_avatars.js
Normal file
@@ -0,0 +1,81 @@
|
||||
|
||||
var SpacedeckAvatars = {
|
||||
data: {
|
||||
uploading_avatar: false,
|
||||
uploading_folder_avatar: false,
|
||||
uploading_cover: false
|
||||
},
|
||||
|
||||
methods: {
|
||||
save_avatar_image: function(input, object_type, object) {
|
||||
if (input.files.length > 0) {
|
||||
var f = input.files[0];
|
||||
|
||||
var finished = function() {
|
||||
this.uploading_avatar = false;
|
||||
this.uploading_cover = false;
|
||||
this.uploading_folder_avatar = false;
|
||||
}.bind(this);
|
||||
|
||||
if (!_.include(["image/jpeg","image/jpg","image/png","image/gif"], f.type)) {
|
||||
alert("Unsupported file type. Please upload JPEG, PNG or GIF.");
|
||||
finished();
|
||||
return;
|
||||
}
|
||||
|
||||
if (f.size > 1024*1024*3) {
|
||||
alert("File must be smaller than 3 megabytes.");
|
||||
finished();
|
||||
return;
|
||||
}
|
||||
|
||||
save_avatar_file(object_type, object, f, function(res) {
|
||||
finished();
|
||||
this.uploading_avatar = false;
|
||||
this.uploading_cover = false;
|
||||
|
||||
var newUri = res.avatar_thumb_uri;
|
||||
object.avatar_thumb_uri = newUri + "?cachebuster=" + Math.random();
|
||||
}.bind(this), function(error) {
|
||||
alert("Upload failed: " + error);
|
||||
finished();
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
save_space_avatar_image: function(viewmodel) {
|
||||
this.uploading_avatar = true;
|
||||
var func = this.save_avatar_image.bind(this);
|
||||
func(viewmodel.$event.target, "space", this.active_space);
|
||||
},
|
||||
save_folder_avatar_image: function(viewmodel) {
|
||||
this.uploading_folder_avatar = true;
|
||||
var func = this.save_avatar_image.bind(this);
|
||||
func(viewmodel.$event.target, "space", this.active_folder);
|
||||
},
|
||||
save_user_avatar_image: function(viewmodel) {
|
||||
this.uploading_avatar = true;
|
||||
var func = this.save_avatar_image.bind(this);
|
||||
func(viewmodel.$event.target, "user", viewmodel.$root.user);
|
||||
},
|
||||
|
||||
delete_user_avatar_image: function() {
|
||||
this.user.avatar_original_uri = "";
|
||||
this.user.avatar_thumb_uri = "";
|
||||
save_user(this.user,function(updated) {
|
||||
}.bind(this));
|
||||
},
|
||||
|
||||
save_user_background_image: function(viewmodel) {
|
||||
var input = viewmodel.$event.target;
|
||||
|
||||
this.uploading_cover = true;
|
||||
|
||||
var f = input.files[0];
|
||||
save_user_background_file(this.user, f, function(res) {
|
||||
this.user.background_original_uri = res.background_original_uri;
|
||||
this.uploading_cover = false;
|
||||
}.bind(this));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user