summaryrefslogtreecommitdiff
path: root/public/assets/javascripts
diff options
context:
space:
mode:
Diffstat (limited to 'public/assets/javascripts')
-rw-r--r--public/assets/javascripts/app.js2
-rw-r--r--public/assets/javascripts/ui/EditProfileModal.js34
-rw-r--r--public/assets/javascripts/ui/Router.js (renamed from public/assets/javascripts/ui/MasterView.js)2
-rw-r--r--public/assets/javascripts/ui/SignUpModal.js2
-rw-r--r--public/assets/javascripts/vendor/ModalFormView.js (renamed from public/assets/javascripts/ui/ModalFormView.js)10
-rw-r--r--public/assets/javascripts/vendor/ModalView.js (renamed from public/assets/javascripts/ui/ModalView.js)2
6 files changed, 44 insertions, 8 deletions
diff --git a/public/assets/javascripts/app.js b/public/assets/javascripts/app.js
index b541d47..310dc69 100644
--- a/public/assets/javascripts/app.js
+++ b/public/assets/javascripts/app.js
@@ -19,7 +19,7 @@ var app = new function(){}
app.init = function () {
app.tube = new Tube ()
- app.master = new MasterView()
+ app.router = new Router ()
}
app.launch = function () {
diff --git a/public/assets/javascripts/ui/EditProfileModal.js b/public/assets/javascripts/ui/EditProfileModal.js
index 5b79a31..6b89ad8 100644
--- a/public/assets/javascripts/ui/EditProfileModal.js
+++ b/public/assets/javascripts/ui/EditProfileModal.js
@@ -2,6 +2,7 @@
var EditProfileModal = ModalFormView.extend({
el: ".mediaDrawer.editProfile",
action: "/api/profile",
+ method: "put",
load: function(){
this.reset()
@@ -12,13 +13,44 @@ var EditProfileModal = ModalFormView.extend({
this.$("[name='" + i + "']").val(data[i])
}
+ this.$("#profile_username").html(data.username)
+
+ if (data.photo && data.photo.length) {
+ this.$("#load_avatar").attr("src", data.photo)
+ }
+ else {
+ this.$("#load_avatar").hide()
+ }
+
this.show()
}, this))
},
+
+ validate: function(){
+ var errors = []
+
+ var email = this.$("#profile_email").val()
+ var pw0 = this.$("#profile_old_password").val()
+ var pw1 = this.$("#profile_new_password").val()
+ var pw2 = this.$("#profile_new_password2").val()
+
+ if (pw1.length) {
+ if (! pw0.length) {
+ errors.push("Please enter your old password.")
+ }
+ if (pw1 !== pw2) {
+ errors.push("New passwords don't match");
+ }
+ }
+ if (email.length && email.indexOf("@") === -1) {
+ errors.push("Please enter a valid email address");
+ }
+
+ return errors
+ },
success: function(){
window.location.href = "/profile"
}
})
-
diff --git a/public/assets/javascripts/ui/MasterView.js b/public/assets/javascripts/ui/Router.js
index 5aca4e0..a518e27 100644
--- a/public/assets/javascripts/ui/MasterView.js
+++ b/public/assets/javascripts/ui/Router.js
@@ -1,5 +1,5 @@
-var MasterView = View.extend({
+var Router = View.extend({
el: "body",
events: {
diff --git a/public/assets/javascripts/ui/SignUpModal.js b/public/assets/javascripts/ui/SignUpModal.js
index 95b5837..5c651ee 100644
--- a/public/assets/javascripts/ui/SignUpModal.js
+++ b/public/assets/javascripts/ui/SignUpModal.js
@@ -1,5 +1,3 @@
-
-
var SignUpModal = ModalFormView.extend({
el: ".mediaDrawer.signup",
action: "/auth/signup",
diff --git a/public/assets/javascripts/ui/ModalFormView.js b/public/assets/javascripts/vendor/ModalFormView.js
index 608b8c1..16d63b2 100644
--- a/public/assets/javascripts/ui/ModalFormView.js
+++ b/public/assets/javascripts/vendor/ModalFormView.js
@@ -1,6 +1,8 @@
var ModalFormView = ModalView.extend({
+ method: "put",
+
events: {
"submit form": "submit"
},
@@ -45,12 +47,16 @@ var ModalFormView = ModalView.extend({
var fields = this.$form.serializeArray()
fields.forEach(function(pair){
- if (pair.name == "password" && pair.value.length > 0) {
+ if (pair.name.indexOf("password") !== -1 && pair.value.length > 0) {
pair.value = SHA1.hex('lol$' + pair.value + '$vvalls')
}
})
- var request = $.post(this.action, $.param(fields));
+ var request = $.ajax({
+ url: this.action,
+ type: this.method,
+ data: $.param(fields)
+ });
request.done($.proxy(function (response) {
if (response.error) {
this.$errors.show();
diff --git a/public/assets/javascripts/ui/ModalView.js b/public/assets/javascripts/vendor/ModalView.js
index 80ce8d0..b90b3c4 100644
--- a/public/assets/javascripts/ui/ModalView.js
+++ b/public/assets/javascripts/vendor/ModalView.js
@@ -21,7 +21,7 @@ var ModalView = View.extend({
window.location.pathname = "/"
}
else {
- history.pushState(null, document.title, app.master.originalPath)
+ history.pushState(null, document.title, app.router.originalPath)
this.hide()
}
}