ymdp 0.0.7 → 0.0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. data/VERSION +1 -1
  2. data/bin/ymdp +51 -0
  3. data/lib/new_application/.base +11 -0
  4. data/lib/new_application/Gemfile +12 -0
  5. data/lib/new_application/Rakefile +3 -0
  6. data/lib/new_application/app/.gitignore +1 -0
  7. data/lib/new_application/app/assets/images/lightbox/lightbox_bg.png +0 -0
  8. data/lib/new_application/app/assets/javascripts/OpenMailIntl.js +291 -0
  9. data/lib/new_application/app/assets/javascripts/controls.js +965 -0
  10. data/lib/new_application/app/assets/javascripts/date.js +104 -0
  11. data/lib/new_application/app/assets/javascripts/dragdrop.js +974 -0
  12. data/lib/new_application/app/assets/javascripts/effects.js +1123 -0
  13. data/lib/new_application/app/assets/javascripts/lowpro.js +320 -0
  14. data/lib/new_application/app/assets/javascripts/prototype.js +4874 -0
  15. data/lib/new_application/app/assets/javascripts/scriptaculous.js +68 -0
  16. data/lib/new_application/app/assets/yrb/en-US/application_en-US.pres +7 -0
  17. data/lib/new_application/app/helpers/application_helper.rb +3 -0
  18. data/lib/new_application/app/javascripts/application.js +580 -0
  19. data/lib/new_application/app/javascripts/debug.js +138 -0
  20. data/lib/new_application/app/javascripts/flash.js +96 -0
  21. data/lib/new_application/app/javascripts/header.js +13 -0
  22. data/lib/new_application/app/javascripts/help.js +76 -0
  23. data/lib/new_application/app/javascripts/i18n.js +235 -0
  24. data/lib/new_application/app/javascripts/launcher.js +159 -0
  25. data/lib/new_application/app/javascripts/logger.js +61 -0
  26. data/lib/new_application/app/javascripts/tag_helper.js +178 -0
  27. data/lib/new_application/app/stylesheets/application.css +0 -0
  28. data/lib/new_application/app/stylesheets/ie.css +0 -0
  29. data/lib/new_application/app/stylesheets/ie6.css +0 -0
  30. data/lib/new_application/app/stylesheets/ie7.css +0 -0
  31. data/lib/new_application/app/stylesheets/ie8.css +0 -0
  32. data/lib/new_application/app/stylesheets/lightbox.css +30 -0
  33. data/lib/new_application/app/stylesheets/non_ie.css +0 -0
  34. data/lib/new_application/app/views/layouts/application.html.haml +35 -0
  35. data/lib/new_application/app/views/shared/_error.html.haml +8 -0
  36. data/lib/new_application/app/views/shared/_flash.html.haml +2 -0
  37. data/lib/new_application/app/views/shared/_javascripts.html.haml +22 -0
  38. data/lib/new_application/app/views/shared/_loading.html.haml +13 -0
  39. data/lib/new_application/app/views/shared/_stylesheets.html.haml +23 -0
  40. data/lib/new_application/config/categories.yml +6 -0
  41. data/lib/new_application/config/config.yml.example +30 -0
  42. data/lib/new_application/config/constants.rb +54 -0
  43. data/lib/new_application/config/servers.yml.example +9 -0
  44. data/lib/new_application/lib/init.rb +13 -0
  45. data/lib/new_application/lib/tasks/environment.rake +4 -0
  46. data/lib/new_application/lib/tasks/keys.rake +235 -0
  47. data/lib/new_application/lib/tasks/setup.rake +13 -0
  48. data/lib/new_application/lib/tasks/ymdp.rake +718 -0
  49. data/lib/new_application/script/build +9 -0
  50. data/lib/new_application/script/config +13 -0
  51. data/lib/new_application/script/destroy +18 -0
  52. data/lib/new_application/script/generate +4 -0
  53. data/lib/new_application/script/gitrm +17 -0
  54. data/lib/new_application/script/growl +6 -0
  55. data/lib/new_application/script/images +48 -0
  56. data/lib/new_application/script/jslint.js +5072 -0
  57. data/lib/new_application/script/langs +31 -0
  58. data/lib/new_application/script/translate +5 -0
  59. data/lib/new_application/script/ymdt +1895 -0
  60. data/lib/new_application/script/ymdt.old +1890 -0
  61. data/lib/new_application/script/yuicompressor-2.4.2.jar +0 -0
  62. data/lib/new_application/ymdp +8 -0
  63. data/ymdp.gemspec +64 -1
  64. metadata +65 -4
@@ -0,0 +1,138 @@
1
+ var Debug;
2
+
3
+ Debug = {
4
+ on: false,
5
+ console: false,
6
+ alerts: false,
7
+ logs: false,
8
+ ajaxErrors: false,
9
+
10
+ consoleOn: function() {
11
+ return (typeof window['console'] !== 'undefined' && this.console);
12
+ },
13
+
14
+ alertsOn: function() {
15
+ return (Debug.on || Debug.logs);
16
+ },
17
+
18
+ logsOn: function() {
19
+ return (Debug.on || Debug.logs);
20
+ },
21
+
22
+ ajaxErrorsOn: function() {
23
+ return (Debug.on || Debug.ajaxErrors);
24
+ },
25
+
26
+ profile: function(name) {
27
+ if (this.consoleOn()) {
28
+ console.profile(name);
29
+ }
30
+ },
31
+
32
+ profileEnd: function(name) {
33
+ if (this.consoleOn()) {
34
+ console.profileEnd(name);
35
+ }
36
+ },
37
+
38
+ call: function(level, message, obj) {
39
+ try {
40
+ message = this.message(message, obj);
41
+
42
+ if (Debug.consoleOn()) {
43
+ console[level](message);
44
+ }
45
+ if (Debug.logsOn()) {
46
+ alert(message);
47
+ }
48
+ } catch(e) {
49
+ if (Debug.consoleOn()) {
50
+ console[level](e);
51
+ } else {
52
+ alert(e);
53
+ }
54
+ }
55
+ },
56
+
57
+ log: function(message, obj) {
58
+ this.call("log", message, obj);
59
+ },
60
+
61
+ error: function(message, obj) {
62
+ this.call("error", message, obj);
63
+ },
64
+
65
+ info: function(message, obj) {
66
+ this.call("info", message, obj);
67
+ },
68
+
69
+ warn: function(message, obj) {
70
+ this.call("warn", message, obj);
71
+ },
72
+
73
+ alert: this.log,
74
+
75
+ ajaxError: function(message, path, params, response) {
76
+ var m;
77
+ m = message + " path: " + path + "?" + Object.toQueryString(params);
78
+ m = m + ", response: " + Object.toJSON(response);
79
+
80
+ try {
81
+ $('error_details').update(m);
82
+ } catch(err) {
83
+ YAHOO.logger.error(err);
84
+ }
85
+
86
+ this.error(m);
87
+
88
+ if (Debug.ajaxErrorsOn()) {
89
+ alert(m);
90
+ }
91
+ if (Debug.logsOn()) {
92
+ YAHOO.logger.error(m);
93
+ }
94
+ },
95
+
96
+ message: function(message, obj) {
97
+ try {
98
+ message = this.timestamp() + " " + this.generalInfo() + " " + message;
99
+ if (obj) {
100
+ message = message + ", " + Object.toJSON(obj);
101
+ }
102
+ } catch(e) {
103
+ // alert(e);
104
+ }
105
+ return message;
106
+ },
107
+
108
+ timestamp: function() {
109
+ var time, year, month, date, hour, minute, second, timestamp, checktime;
110
+
111
+ checktime = function checkTime(i) {
112
+ if (i<10) {
113
+ i="0" + i;
114
+ }
115
+ return i;
116
+ };
117
+
118
+ time = new Date();
119
+ // year = time.getFullYear();
120
+ // month = time.getMonth() + 1;
121
+ // date = time.getDate();
122
+ hour = checktime(time.getHours());
123
+ minute = checktime(time.getMinutes());
124
+ second = checktime(time.getSeconds());
125
+
126
+ // timestamp = month + "/" + date + "/" + year + " " +
127
+
128
+ timestamp = hour + ":" + minute + ":" + second;
129
+
130
+ return timestamp;
131
+ },
132
+
133
+ generalInfo: function() {
134
+ return "[<%= @domain %>/<%= @server %>] [<%= @version %> <%= @sprint_name %>]";
135
+ }
136
+ };
137
+
138
+ Debug.console = true;
@@ -0,0 +1,96 @@
1
+ var FLASH, Flash;
2
+
3
+ /* set asset version */
4
+
5
+ FLASH = {
6
+ VERSION: "<%= @hash %>",
7
+ MESSAGE: "<%= @message %>",
8
+ DEPLOYED: <%= Time.now.to_i %>,
9
+ DEPLOYED_STRING: "<%= Time.now.to_s %>"
10
+ };
11
+
12
+
13
+ /* FLASH MESSAGE HANDLERS */
14
+
15
+ YAHOO.namespace("flash");
16
+
17
+ Flash = {};
18
+
19
+ Flash.timeout = 8;
20
+ Flash.duration = 0.25;
21
+
22
+ Flash.write = function(type, message) {
23
+ type = type || "notice";
24
+ if (message) {
25
+ $('flash_message').update(message);
26
+ Flash.setFlashClass('flash', type);
27
+
28
+ // blindDown if the flash is currently hidden
29
+ if ($('flash').getStyle("display") === "none") {
30
+ $('flash').blindDown({queue: "end", duration: Flash.duration});
31
+ }
32
+ YAHOO.oib.setTimeoutInSeconds(Flash.close, Flash.timeout);
33
+ }
34
+ };
35
+
36
+ Flash.close = function() {
37
+ Try.these(function() {
38
+ $('flash').blindUp({queue: "end", duration: Flash.duration});
39
+ });
40
+ };
41
+
42
+ Flash.setFlashClass = function(flash_id, type) {
43
+ if (type === "error") {
44
+ Try.these(function() {
45
+ $(flash_id).removeClassName('notice');
46
+ });
47
+ }
48
+ if (type === "notice") {
49
+ Try.these(function() {
50
+ $(flash_id).removeClassName('error');
51
+ });
52
+ }
53
+ Try.these(function() {
54
+ $(flash_id).addClassName(type);
55
+ });
56
+ };
57
+
58
+
59
+ Flash.error = function(message) {
60
+ YAHOO.logger.error(message);
61
+ Flash.write("error", message, true);
62
+ };
63
+
64
+ Flash.notice = function(message) {
65
+ Flash.write("notice", message, true);
66
+ };
67
+
68
+ Flash.success = Flash.notice;
69
+
70
+ Flash.t = {};
71
+ Flash.t.notice = function(key, args) {
72
+ var m;
73
+
74
+ m = I18n.t(key, args);
75
+ Flash.notice(m);
76
+ };
77
+ Flash.t.success = Flash.t.notice;
78
+
79
+ Flash.t.error = function(key, args) {
80
+ var m;
81
+
82
+ m = I18n.t(key, args);
83
+ Flash.error(m);
84
+ };
85
+
86
+
87
+ Flash.settingsChanged = function() {
88
+ Flash.t.success("SETTINGS_CHANGED");
89
+ };
90
+ Flash.problemSubmitting = function() {
91
+ Flash.t.error("PROBLEM_SUBMITTING");
92
+ };
93
+
94
+ YAHOO.flash = Flash;
95
+
96
+ /* ----------------------- */
@@ -0,0 +1,13 @@
1
+
2
+ /*
3
+ LOCAL NAMESPACES/CONSTANTS
4
+ */
5
+
6
+ YAHOO.constants.base_url = "http://<%= @server %>.otherinbox.com/";
7
+ YAHOO.constants.controller_url = "http://<%= @server %>.otherinbox.com/ymdp";
8
+
9
+ YAHOO.oib.page_loaded = false;
10
+
11
+ YAHOO.namespace("<%= @view %>");
12
+
13
+ document.observe("dom:loaded", YAHOO.oib.init);
@@ -0,0 +1,76 @@
1
+ // popup help text
2
+ //
3
+ var Help = function(content) {
4
+ try {
5
+ this.content = content;
6
+
7
+ // instance method
8
+ this.show = function(event) {
9
+ var x = event.clientX + 20;
10
+ var y = event.clientY - 10;
11
+ this.create(x,y);
12
+ };
13
+
14
+ this.create = function(x, y) {
15
+ try {
16
+ if (!$(this.css_id)) {
17
+ var popup = new Element('div', {
18
+ "id": this.css_id,
19
+ "class": "popup"
20
+ });
21
+ popup.update(this.content);
22
+ popup.setStyle({
23
+ "display": "none",
24
+ "left": x + "px",
25
+ "top": y + "px"
26
+ });
27
+ $$('body').first().insert(popup);
28
+ setTimeout("$(\"" + this.css_id + "\").show();", 500);
29
+ }
30
+ } catch(e) {
31
+ // alert(e);
32
+ }
33
+ };
34
+
35
+ this.destroy = function() {
36
+ setTimeout("$('" + this.css_id + "').remove();", 4000);
37
+ };
38
+
39
+ this.link = function(text) {
40
+ text = text || "?";
41
+ return Tags.linkToFunction(text, "", {
42
+ "onmouseover": "Help.show(event, " + this.id + ");",
43
+ "onmouseout": "Help.destroy(" + this.id + ")"
44
+ });
45
+ };
46
+
47
+ Help.popups = Help.popups || [];
48
+ Help.popups.push(this);
49
+
50
+ this.id = Help.popups.size() - 1;
51
+ this.css_id = "popup_" + this.id;
52
+ } catch(e) {
53
+ // alert(e);
54
+ }
55
+ };
56
+
57
+ Help.show = function(event, id) {
58
+ var help = Help.popups[id];
59
+ help.show(event);
60
+ };
61
+
62
+ Help.destroy = function(id) {
63
+ var help = Help.popups[id];
64
+ help.destroy();
65
+ };
66
+
67
+ Help.closeAll = function() {
68
+ $$('.popup').each(function(p) {
69
+ p.remove();
70
+ });
71
+ };
72
+
73
+ Help.init = function() {
74
+ // initialize any help popups. Overwrite this locally.
75
+ };
76
+
@@ -0,0 +1,235 @@
1
+ /*
2
+ I18N
3
+
4
+ global to every view.
5
+
6
+ Methods and constants dealing with internationalization.
7
+ */
8
+
9
+ var I18N, I18n;
10
+
11
+ /* set asset version */
12
+
13
+ I18N = {
14
+ VERSION: "<%= @hash %>",
15
+ MESSAGE: "<%= @message %>",
16
+ DEPLOYED: <%= Time.now.to_i %>,
17
+ DEPLOYED_STRING: "<%= Time.now.to_s %>"
18
+ };
19
+
20
+
21
+ I18n = {};
22
+
23
+ I18n.setResources = function() {
24
+ var scope, asset_path;
25
+
26
+ scope = "keys";
27
+
28
+ Debug.log("begin I18n.setResources for language " + I18n.currentLanguage);
29
+ try {
30
+ asset_path = "<%= @assets_directory %>/yrb/";
31
+ I18n[scope] = I18n[scope] || OpenMailIntl.getResources(asset_path, scope, I18n.currentLanguage);
32
+ if (I18n.currentLanguage !== "en-US") {
33
+ I18n.default_keys = OpenMailIntl.getResources(asset_path, scope, "en-US");
34
+ } else {
35
+ I18n.default_keys = I18n[scope];
36
+ }
37
+ } catch(err) {
38
+ Debug.error("error in I18n.setResources: " + err);
39
+ }
40
+ I18n.scope = scope;
41
+ Debug.log("end I18n.setResources");
42
+ };
43
+
44
+
45
+ // I18n.translate(key, [args])
46
+ // I18n.t(key, [args])
47
+ //
48
+ // Using .translate with a single key argument will return the simple translated string for that key
49
+ //
50
+ // Using a key argument with values after it will insert the values into the placeholders in
51
+ // the returned translated string
52
+ //
53
+ I18n.translate = function(key, args) {
54
+ key = key.toUpperCase();
55
+ key = key.replace(" ", "_");
56
+ if (args) {
57
+ var m;
58
+ m = I18n.translate_sentence(key, args);
59
+ } else
60
+ {
61
+ m = I18n.translate_phrase(key);
62
+ if (!m) {
63
+ m = I18n.default_keys[key];
64
+ }
65
+ }
66
+ return m;
67
+ };
68
+ I18n.t = I18n.translate;
69
+
70
+ I18n.translate_phrase = function(key) {
71
+ return I18n["keys"][key];
72
+ };
73
+
74
+ I18n.translate_sentence = function(key, args) {
75
+ return OpenMailIntl.formatMessage(I18n["keys"][key], args, I18n.currentLanguage);
76
+ };
77
+
78
+ // I18n.update(id, scope, key, args)
79
+ //
80
+ // updates an element with the given _id_ with the
81
+ // translation from scope, key and optional args
82
+ //
83
+ // only updates the element if the translation is not blank
84
+ //
85
+ I18n.update = function(id, key, args) {
86
+ Try.these(function() {
87
+ var message;
88
+ message = I18n.t(key, args);
89
+ if (message) {
90
+ $(id).update(message);
91
+ }
92
+ }, function() {
93
+ Debug.error("Error in i18n.update: " + Object.toJSON({
94
+ id: id,
95
+ key: key,
96
+ args: args
97
+ }));
98
+ });
99
+ };
100
+
101
+ // I18n.u(id, args)
102
+ //
103
+ // updates an element with a local YRB key of the same name
104
+ //
105
+ // given an id of "messages" it will look for a YRB key named "MESSAGES"
106
+ // within the local scope of the current view, and update the element with
107
+ // that translation
108
+ //
109
+ I18n.u = function(id, args) {
110
+ Try.these(
111
+ function() {
112
+ id.each(I18n.u);
113
+ },
114
+ function() {
115
+ var key;
116
+ key = id.toUpperCase();
117
+ I18n.update(id, key, args);
118
+ },
119
+ function() {
120
+ Debug.error("Error in i18n.u: " + Object.toJSON({
121
+ id: id,
122
+ args: args
123
+ }));
124
+ });
125
+ };
126
+
127
+
128
+ // I18n.updateValue(id, key, args)
129
+ //
130
+ // updates an element with the given _id_ with the
131
+ // translation from scope, key and optional args
132
+ //
133
+ // only updates the element if the translation is not blank
134
+ //
135
+ I18n.updateValue = function(id, key, args) {
136
+ Try.these(function() {
137
+ var message;
138
+ message = I18n.t(key, args);
139
+ if (message) {
140
+ $(id).value = message;
141
+ }
142
+ }, function() {
143
+ Debug.error("Error in i18n.updateValue: " + Object.toJSON({
144
+ id: id,
145
+ key: key,
146
+ args: args
147
+ }));
148
+ });
149
+ };
150
+
151
+
152
+ // I18n.v(id, args)
153
+ //
154
+ // updates the value of an element with a local YRB key of the same name
155
+ //
156
+ // given an id of "messages" it will look for a YRB key named "MESSAGES"
157
+ // within the local scope of the current view, and update the element's value with
158
+ // that translation
159
+ //
160
+ I18n.v = function(id, args) {
161
+ Try.these(
162
+ function() {
163
+ id.each(I18n.v);
164
+ },
165
+ function() {
166
+ var key;
167
+ key = id.toUpperCase();
168
+ I18n.updateValue(id, key, args);
169
+ },
170
+ function() {
171
+ Debug.error("Error in i18n.v: " + Object.toJSON({
172
+ id: id,
173
+ args: args
174
+ }));
175
+ });
176
+ };
177
+
178
+ I18n.translateError = function() {
179
+ I18n.update('error_1', 'ERROR_1');
180
+ I18n.update('error_2', 'ERROR_2');
181
+ I18n.update('retry', 'RETRY');
182
+ };
183
+
184
+ I18n.translateLoading = function() {
185
+ I18n.update('loading_heading', 'LOADING_HEADING');
186
+ I18n.update('loading_subhead', 'LOADING_SUBHEAD');
187
+ I18n.update('loading_paragraph_1', 'LOADING_PARAGRAPH_1');
188
+ };
189
+
190
+ I18n.addLanguageToBody = function() {
191
+ Try.these(function() {
192
+ $$('body').first().addClassName(I18n.currentLanguage);
193
+ });
194
+ };
195
+
196
+ I18n.findAndTranslateAll = function() {
197
+ Element.addMethods({
198
+ translate: function(element) {
199
+ element = $(element);
200
+
201
+ var e;
202
+ e = element.inspect();
203
+ if (e.match(/<input/)) {
204
+ I18n.v(element.identify());
205
+ } else {
206
+ if (e.match(/<img/)) {
207
+ I18n.src(element.identify());
208
+ } else {
209
+ I18n.u(element.identify());
210
+ }
211
+ }
212
+ }
213
+ });
214
+
215
+ $$('.t').each(function(element) {
216
+ try {
217
+ element.translate();
218
+ } catch(e) {
219
+ Debug.error("Translation error for element: " + e);
220
+ }
221
+ });
222
+ };
223
+
224
+ I18n.translateSidebar = function() {
225
+ I18n.u('faq_q1');
226
+ var link;
227
+ link = Tags.a(I18n.t('faq_link1'), {"href": 'http://go.otherinbox.com/q-stop-sender', "target": "_blank"});
228
+ I18n.u('faq_a1', [link]);
229
+
230
+ I18n.u('faq_q2');
231
+ link = Tags.a(I18n.t('faq_link2'), {"href": 'http://go.otherinbox.com/q-custom-sender', "target": "_blank"});
232
+ I18n.u('faq_a2', [link]);
233
+ };
234
+
235
+
@@ -0,0 +1,159 @@
1
+ /*
2
+ LAUNCHING
3
+
4
+ global to every view. launches new views and closes the current one.
5
+ */
6
+
7
+ /* set asset version */
8
+
9
+ var LAUNCHER, Launcher;
10
+
11
+ LAUNCHER = {
12
+ VERSION: "<%= @hash %>",
13
+ MESSAGE: "<%= @message %>",
14
+ DEPLOYED: <%= Time.now.to_i %>,
15
+ DEPLOYED_STRING: "<%= Time.now.to_s %>"
16
+ };
17
+
18
+ YAHOO.namespace("launcher");
19
+
20
+
21
+ YAHOO.launcher.launch = function(view, title, type) {
22
+ openmail.Application.getParameters(function(response) {
23
+ title = I18n.t("ORGANIZER");
24
+ // don't try to relaunch current tab
25
+ if (response.data === null || response.data.view !== view) {
26
+ openmail.Application.openView(
27
+ {
28
+ id: view,
29
+ view: view,
30
+ target: type,
31
+ title: title,
32
+ parameters: {
33
+ view: view
34
+ }
35
+ });
36
+ openmail.Application.closeView(null);
37
+ }
38
+ });
39
+ };
40
+
41
+
42
+ YAHOO.launcher.launchTab = function(view, title) {
43
+ Try.these(function () {
44
+ var translated_title;
45
+ translated_title = I18n.t(title);
46
+
47
+ if (translated_title) {
48
+ title = translated_title;
49
+ title[0] = title[0].capitalize();
50
+ }
51
+
52
+ });
53
+ YAHOO.launcher.launch(view, title, "tab");
54
+ };
55
+
56
+ // User must be signed in for this page, we'll
57
+ // sign them in if they don't have an OIB cookie
58
+ //
59
+ YAHOO.launcher.launchActiveTab = function(view, title) {
60
+ YAHOO.launcher.launchView(function() {
61
+ YAHOO.launcher.launchTab(view, title);
62
+ });
63
+ };
64
+
65
+
66
+ YAHOO.launcher.launchView = function(launch_view) {
67
+ // get Yahoo! user's guid and ymail_wssid
68
+ YAHOO.oib.getGuidAndYmailWssid(function(guid, ymail_wssid) {
69
+
70
+ // call /ymdp/verify and return data about the user
71
+ YAHOO.oib.verifyUser(function(user) {
72
+
73
+ // YAHOO.logger.info("Called switcher in state '" + YAHOO.constants.states[user.state] + "'");
74
+
75
+ YAHOO.oib.login = user.login;
76
+ var state;
77
+ state = parseInt(user.state, 10);
78
+
79
+ switch(YAHOO.constants.states[user.state]) {
80
+ case "inspect":
81
+ // inspect
82
+
83
+ // launch_view();
84
+ YAHOO.launcher.launchInspect();
85
+ break;
86
+ case "authorized":
87
+ // authorized but not yet 'signed in'
88
+ YAHOO.oib.signInUser();
89
+ break;
90
+ case "new_active":
91
+ // no messages processed yet
92
+ case "processing":
93
+ // activated but we have synced fewer than 80% of their messages
94
+ case "active":
95
+ // active, launch the view this method was intended for
96
+ launch_view();
97
+ break;
98
+ // case "inactive":
99
+ // inactive
100
+ default:
101
+ // other
102
+ YAHOO.launcher.launchAuthorize();
103
+ }
104
+ });
105
+ });
106
+ };
107
+
108
+
109
+
110
+ YAHOO.launcher.launchIdentity = function() {
111
+ YAHOO.launcher.launchActiveTab("identity", "My Account");
112
+ };
113
+
114
+ YAHOO.launcher.launchSettings = function() {
115
+ YAHOO.launcher.launchActiveTab("settings", "Settings");
116
+ // YAHOO.launcher.launchActiveTab("goodbye", "Settings");
117
+ };
118
+
119
+ YAHOO.launcher.launchInspect = function() {
120
+ YAHOO.launcher.launchTab("inspect", "Inspect");
121
+ };
122
+
123
+ YAHOO.launcher.launchAuthorize = function() {
124
+ YAHOO.launcher.launchTab("authorize", "Authorize");
125
+ };
126
+
127
+ YAHOO.launcher.launchDeactivate = function() {
128
+ YAHOO.launcher.launchHidden("deactivate", "Deactivate");
129
+ };
130
+
131
+ YAHOO.launcher.launchHidden = function(view, title) {
132
+ YAHOO.launcher.launch(view, title, "hidden");
133
+ };
134
+
135
+ YAHOO.launcher.l = function(view) {
136
+ view = "launch" + view.capitalize();
137
+ YAHOO.launcher[view]();
138
+ };
139
+
140
+ YAHOO.launcher.launchStatistics = function() {
141
+ YAHOO.launcher.launchTab("statistics", "Statistics");
142
+ };
143
+
144
+ YAHOO.launcher.launchGoodbye = function() {
145
+ YAHOO.launcher.launchTab("goodbye", "Goodbye");
146
+ };
147
+
148
+ YAHOO.launcher.relaunchAuthorize = YAHOO.launcher.launchAuthorize;
149
+
150
+ YAHOO.launcher.launchMaintenance = function() {
151
+ YAHOO.launcher.launchTab("maintenance", "Maintenance");
152
+ };
153
+
154
+ YAHOO.launcher.launchReauthorize = function() {
155
+ YAHOO.launcher.launchTab("reauthorize", "Reauthorize");
156
+ };
157
+
158
+ Launcher = YAHOO.launcher;
159
+