-rw-r--r-- | content/fireflix.js | 52 |
1 files changed, 35 insertions, 17 deletions
diff --git a/content/fireflix.js b/content/fireflix.js index 9518480..82c7b0c 100644 --- a/content/fireflix.js +++ b/content/fireflix.js | |||
@@ -14,2 +14,9 @@ var fireflix = { | |||
14 | init: function() { | 14 | init: function() { |
15 | this.cmd_auth_auth = document.getElementById('cmd_auth_auth'); | ||
16 | this.cmd_auth_done = document.getElementById('cmd_auth_done'); | ||
17 | this.cmd_auth_unauth = document.getElementById('cmd_auth_unauth'); | ||
18 | this.menu_auth_done = document.getElementById('menu_auth_done'); | ||
19 | this.b_auth = document.getElementById('b_auth'); | ||
20 | this.b_auth_done = document.getElementById('b_auth_done'); | ||
21 | this.auth_info = document.getElementById('auth_info'); | ||
15 | this.loc_strings = document.getElementById('loc_strings'); | 22 | this.loc_strings = document.getElementById('loc_strings'); |
@@ -29,12 +36,22 @@ var fireflix = { | |||
29 | document.getElementById('uploadlist').view = this.uploads; | 36 | document.getElementById('uploadlist').view = this.uploads; |
30 | this.flickr.no_auth_info_label = document.getElementById('auth_info').value; | 37 | this.no_auth_info_label = this.auth_info.value; |
38 | this.set_auth_state(this.flickr.token,false); | ||
31 | if(this.flickr.token) { | 39 | if(this.flickr.token) { |
32 | this.refresh_stuff(); | 40 | this.refresh_stuff(); |
33 | document.getElementById('auth_info').value = | ||
34 | this.flickr.user.fullname+' ['+this.flickr.user.username+']'; | ||
35 | document.getElementById('auth_info').disabled = false; | ||
36 | document.getElementById('b_auth').hidden = true; | ||
37 | } | 41 | } |
38 | }, | 42 | }, |
39 | on_auth: function() { | 43 | set_auth_state: function(au,inp) { /* authorized, in progress */ |
44 | this.cmd_auth_unauth.disabled = !au; | ||
45 | this.b_auth.hidden = au || inp; | ||
46 | this.b_auth_done.hidden = !inp; | ||
47 | this.menu_auth_done.hidden = !inp; | ||
48 | this.cmd_auth_done.setAttribute('disabled',!inp); | ||
49 | this.auth_info.disabled = !au; | ||
50 | if(au) { | ||
51 | this.auth_info.value = this.flickr.user.fullname+' ['+this.flickr.user.username+']'; /* TODO: move to locale */ | ||
52 | }else{ | ||
53 | this.auth_info.value = this.no_auth_info_label; | ||
54 | } | ||
55 | }, | ||
56 | on_cmd_auth: function() { | ||
40 | var _this = this; | 57 | var _this = this; |
@@ -42,4 +59,3 @@ var fireflix = { | |||
42 | function() { | 59 | function() { |
43 | document.getElementById('b_auth').hidden = true; | 60 | _this.set_auth_state(_this.flickr.token,true); |
44 | document.getElementById('b_auth_done').hidden = false; | ||
45 | }, function(x,s,c,m) { | 61 | }, function(x,s,c,m) { |
@@ -49,4 +65,4 @@ var fireflix = { | |||
49 | }, | 65 | }, |
50 | on_auth_done: function() { | 66 | on_cmd_auth_done: function() { |
51 | document.getElementById('b_auth_done').hidden = true; | 67 | this.set_auth_state(this.flickr.token,false); |
52 | var _this = this; | 68 | var _this = this; |
@@ -56,7 +72,7 @@ var fireflix = { | |||
56 | _this.refresh_stuff(); | 72 | _this.refresh_stuff(); |
57 | document.getElementById('auth_info').value = | 73 | _this.set_auth_state(_this.flickr.token,false); |
74 | _this.auth_info.value = | ||
58 | _this.flickr.user.fullname+' ['+_this.flickr.user.username+']'; | 75 | _this.flickr.user.fullname+' ['+_this.flickr.user.username+']'; |
59 | document.getElementById('auth_info').disabled = false; | ||
60 | }, function(x,s,c,m) { | 76 | }, function(x,s,c,m) { |
61 | document.getElementById('b_auth').hidden = false; | 77 | _this.set_auth_state(_this.flickr.token,false); /* XXX: no reset token? */ |
62 | _this.flickr_failure(x,s,c,m); | 78 | _this.flickr_failure(x,s,c,m); |
@@ -65,2 +81,6 @@ var fireflix = { | |||
65 | }, | 81 | }, |
82 | on_cmd_auth_unauth: function() { | ||
83 | this.flickr.reset_token(); | ||
84 | this.set_auth_state(false,false); | ||
85 | }, | ||
66 | 86 | ||
@@ -868,8 +888,6 @@ var fireflix = { | |||
868 | this.flickr.reset_token(); | 888 | this.flickr.reset_token(); |
869 | document.getElementById('auth_info').value = this.no_auth_info_label; | 889 | this.set_auth_state(false,false); |
870 | document.getElementById('auth_info').disabled = true; | ||
871 | document.getElementById('b_auth').hidden = false; | ||
872 | return; | 890 | return; |
873 | } | 891 | } |
874 | // TODO: is that beauty | 892 | // TODO: is that beauty? |
875 | alert('flickr api call failed\n'+c+' '+m); | 893 | alert('flickr api call failed\n'+c+' '+m); |