summaryrefslogtreecommitdiff
path: root/static
diff options
context:
space:
mode:
authorScott Ostler <sostler@deathmachine.local>2010-02-22 22:29:02 -0500
committerScott Ostler <sostler@deathmachine.local>2010-02-22 22:29:02 -0500
commit8a981f390c286cb9c5935290e7846df903148278 (patch)
tree35a8589c0a4a64747ee3651510d668bf3c3f8939 /static
parentd5ddcebc328d4bf8825c2e9f186caa46d94096ab (diff)
Avatar-uploading
Diffstat (limited to 'static')
-rwxr-xr-xstatic/js/home.js3
-rwxr-xr-xstatic/js/pichat.js38
2 files changed, 36 insertions, 5 deletions
diff --git a/static/js/home.js b/static/js/home.js
index b37bc8d..59d4c3d 100755
--- a/static/js/home.js
+++ b/static/js/home.js
@@ -145,14 +145,13 @@ function initBigHand(id){
}
function login() {
- //$('#passwordInput, #loginSubmit').blur();
var nick = $('#nickInput').val();
var password = $('#passwordInput').val();
var rememberme = $('#remembermeInput').attr('checked') ? 'yes' : '';
var hash = hex_sha1(nick + '$' + password + '$dumpfm');
var onSuccess = function(json) {
- location.href = "/chat";
+ location.href = location.href;
};
var onError = function(resp, textStatus, errorThrown) {
diff --git a/static/js/pichat.js b/static/js/pichat.js
index d3da949..06c859d 100755
--- a/static/js/pichat.js
+++ b/static/js/pichat.js
@@ -225,7 +225,7 @@ function initProfile() {
$('.logged-dump .content').each(function() {
var t = $(this);
t.html(buildMsgContent(t.text()));
- });
+ });
var onSubmit = function(attr, newVal, oldVal) {
newVal = $.trim(newVal);
@@ -260,6 +260,10 @@ function initProfile() {
'callbackShowErrors': false };
$('#contact.editable, #bio.editable').editInPlace(textareaOpts);
+ if ($('#upload').length > 0) {
+ setupUploadAvatar('upload');
+ }
+
};
function initLog() {
@@ -267,7 +271,6 @@ function initLog() {
var t = $(this);
t.html(buildMsgContent(t.text()));
});
-
}
// TODO
@@ -275,13 +278,42 @@ function favoriteImage() {};
function setupUpload(elementId, roomKey) {
new AjaxUpload(elementId, {
- action: '/upload',
+ action: '/upload/message',
autoSubmit: true,
name: 'image',
data: { room: roomKey }
});
}
+function setupUploadAvatar(elementId) {
+ // NOTE: AjaxUpload responses aren't converted from JSON.
+ var onSubmit = function(file, error) {
+ $('#spinner').show();
+ };
+ var onComplete = function(file, resp) {
+ $('#spinner').hide();
+ if (resp == 'INVALID_REQUEST') {
+ location.href = location.href;
+ } else if (resp == 'NOT_LOGGED_IN') {
+ location.href = location.href;
+ } else if (resp == 'INVALID_IMAGE') {
+ alert("Sorry, dump.fm can't deal with your image. Pick another :(");
+ return;
+ }
+ var s = '<img id="avatarPic" src="' + resp + '" width="150" />';
+ $('#avatarPic').replaceWith(s).show();
+ $('#avatar').text(resp);
+ };
+ new AjaxUpload(elementId, {
+ action: '/upload/avatar',
+ autoSubmit: true,
+ name: 'image',
+ onSubmit: onSubmit,
+ onComplete: onComplete
+ });
+}
+
+
// scrolling stuff
// this code keeps the div scrolled to the bottom, but will also let the user scroll up, without jumping down