start options rewrite

This commit is contained in:
James Campos 2011-06-05 19:05:44 -07:00
parent 6385d96a4a
commit e1cc3079b4
2 changed files with 51 additions and 68 deletions

View File

@ -111,11 +111,9 @@
'Comment Expansion': [true, 'Expand too long comments'],
'Thread Expansion': [true, 'View all replies'],
'Thread Navigation': [true, 'Navigate to previous / next thread']
},
textarea: {
flavors: ['http://regex.info/exif.cgi?url=', 'http://iqdb.org/?url=', 'http://tineye.com/search?url=', '#http://saucenao.com/search.php?db=999&url='].join('\n')
}
},
flavors: ['http://regex.info/exif.cgi?url=', 'http://iqdb.org/?url=', 'http://tineye.com/search?url=', '#http://saucenao.com/search.php?db=999&url='].join('\n'),
updater: {
checkbox: {
'Verbose': [true, 'Show countdown timer, new post count'],
@ -956,23 +954,35 @@
}
},
dialog: function() {
var dialog, hiddenNum, hiddenThreads, html, input, _i, _len, _ref;
var arr, checked, description, dialog, hiddenNum, hiddenThreads, html, input, key, li, main, obj, ul, _i, _len, _ref, _ref2;
hiddenThreads = $.getValue("hiddenThreads/" + g.BOARD + "/", {});
hiddenNum = Object.keys(g.hiddenReplies).length + Object.keys(hiddenThreads).length;
html = " <div class=move>Options <a name=close>X</a></div> <hr> <div class=column><ul id=monitor><li>Monitoring</li></ul><ul id=img><li>Imaging</li></ul></div> <div class=column><ul id=post><li>Posting</li></ul><ul id=quote><li>Quoting</li></ul><ul id=hide><li>Hiding</li></ul></div> <div class=column><ul id=misc><li>Enhancing</li></ul></div> <br clear=left> <hr> <div id=floaty> <div><input type=button value='hidden: " + hiddenNum + "'></div> <div><a name=flavors>Sauce flavors</a></div> </div> <div id=credits> <div><a href=https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=2DBVZBUAM4DHC&lc=US&item_name=Aeosynth&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted><img alt=Donate src=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAAAaCAYAAAA67jspAAAEsUlEQVRo3u2a/W9TVRjH9yf0T+hPRhONMzNm2gB1S8SOIBshKpCwDsWXDdYSYGQbWwtMBBnddC8yda2L8mKDbWQbyuJW2ND5tg7IIFk2OlARNKaLmhj9wft4nudwTntv77p1PeGn2+ST7Xk5z3Pv95x7etvbgoIlvKCnCCwWpyDfFxUa3QYwewrgzxsA//1jYcbfdwFunQX42rM84UnoS9UA81MA/yYtcuGvOYAJ39KFJ7FvRtis3bbIh7uji4tOYv/Yz7aPGQsV/Da+sOgk9uRBto1ctVDJT/3mokPkMTYjYwC/f2OhmqF1kLG6tdGtoP16QRnBj4NQUPSKDnvZTvAFOiCZGFLaK1ewPx7ffesZ9+tXOZx5BLSxl0G7M6QM74GjUmSnu5GwrawhX3mNX2mvXIh/FeYTf6z9/vWdaALUOLV3n3WA9uV60G6eBu2XASU43Q0k7sj5D6UvcTksRY9fOpExBnOR5Ew0a22MYx7WM4tnq1Ne00z9I5EPTGumH68yLlaC1r+Cr3LaTgZLQRtaC9r4dtB+jipBbCPJ6bDO791/iPyB7jbpC/Z1yokQYJ5ZPV/rUV1u5MzxrHXQJ+LGmLtuP/mNNe0uDyTiJ9VocaWFa8s0Tgn++bMpfqgH7VY4L+IXeuWBG2O+tw5z4dhftIOhdrJtK6vp/0i4Cwo37OJiMTu9HoIxzHHv8ZPtrNxLOcnrJ2UdjAe6WqWN8cT3feD1taQmjvXHuiIP644M9si65dWNeeugTb/LxH5Oapu2wkv0jFaBdiPEtpgTyyLQeYSvoN3NGTGv7wBf4SwHbburlm89g10yJxJ+m5/06w1kB0PH7k1gLSSv9el8Zj2QeKxHiit82IMmaUud9OGEoC/xXS/ZWN84bllMNGToKgUH3F+MnGOXwLdshU6zS3KuLyfcu/dxUTvezIjZXTv4Hh7rJriQO3Q5IwPv3BNmj66e70jLgj2SU73kE/UFogaC42m78vnJFv1FnkAKnuN5a7PvsTuSRoAvysw1lYJ/Vpyd82sAxtmlOdkE2tWWRSms2M5XbXifzh9o3csFXl1NNsbpZDfXmua5PTsXrGf0YQ26KrZ5yOc7yIXz1u+SY7AebVXd9br+eDyYb2Qp54qgNhB7YXEdpeCfPgoQLVKGWCHCnj/1BLTVu6Q/1u4k/1zoSX7CpW7KEbk2x0u6PGM9M5/Rdq7fSHbI/4z0YR/0TR5fkdFf5GAserhUqR4EaiwFDz9I94kqiAUcGR940gk1l+jynRUv8jetss3g97rAXlLJV3dVha4exo090n1iXPnGDYScXJYrcuQd0GtrIXpoFflELh4H+m2OrXxSuoqVaUKEH0p9+JGiKyD6hoMd/PMZ+D2rYe79woz8+Y8eBu+ra8D2FD9Re8kWyjXWa6srzeqLtRbTWKyD4xHMmex8XOagT/QJNa2S/d3uddJvHKMM3SdNFPyTB9Q3seCgtsYvsEh0vHWxUI/pt4Uo+MDTABerLFSCmmb9TnxkE8CE30IFqOWSnvrgg+PpoEU+oIY5Pdc8x+4UZk8D3B62yAXUDLVb9tP7YXZZTHUA3BkD+GPGwgzUBjUa3qTw9ykWSn4I9D+H+C08gjS7eAAAAABJRU5ErkJggg==></a></div> <div><a href=http://chat.now.im/x/aeos>support throd</a> | <a href=https://github.com/aeosynth/4chan-x/issues>github</a> | <a href=http://userscripts.org/scripts/show/51412>uso</a></div> </div> <div><textarea style='display: none;' name=flavors>" + ($.config('flavors')) + "</textarea></div> ";
html = " <div class=move>Options <a name=close>X</a></div> <hr> <div id=main> </div> <hr> <div id=floaty> <div><input type=button value='hidden: " + hiddenNum + "'></div> <div><a name=flavors>Sauce flavors</a></div> </div> <div id=credits> <div><a href=https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=2DBVZBUAM4DHC&lc=US&item_name=Aeosynth&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donate_LG%2egif%3aNonHosted><img alt=Donate src=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAAAaCAYAAAA67jspAAAEsUlEQVRo3u2a/W9TVRjH9yf0T+hPRhONMzNm2gB1S8SOIBshKpCwDsWXDdYSYGQbWwtMBBnddC8yda2L8mKDbWQbyuJW2ND5tg7IIFk2OlARNKaLmhj9wft4nudwTntv77p1PeGn2+ST7Xk5z3Pv95x7etvbgoIlvKCnCCwWpyDfFxUa3QYwewrgzxsA//1jYcbfdwFunQX42rM84UnoS9UA81MA/yYtcuGvOYAJ39KFJ7FvRtis3bbIh7uji4tOYv/Yz7aPGQsV/Da+sOgk9uRBto1ctVDJT/3mokPkMTYjYwC/f2OhmqF1kLG6tdGtoP16QRnBj4NQUPSKDnvZTvAFOiCZGFLaK1ewPx7ffesZ9+tXOZx5BLSxl0G7M6QM74GjUmSnu5GwrawhX3mNX2mvXIh/FeYTf6z9/vWdaALUOLV3n3WA9uV60G6eBu2XASU43Q0k7sj5D6UvcTksRY9fOpExBnOR5Ew0a22MYx7WM4tnq1Ne00z9I5EPTGumH68yLlaC1r+Cr3LaTgZLQRtaC9r4dtB+jipBbCPJ6bDO791/iPyB7jbpC/Z1yokQYJ5ZPV/rUV1u5MzxrHXQJ+LGmLtuP/mNNe0uDyTiJ9VocaWFa8s0Tgn++bMpfqgH7VY4L+IXeuWBG2O+tw5z4dhftIOhdrJtK6vp/0i4Cwo37OJiMTu9HoIxzHHv8ZPtrNxLOcnrJ2UdjAe6WqWN8cT3feD1taQmjvXHuiIP644M9si65dWNeeugTb/LxH5Oapu2wkv0jFaBdiPEtpgTyyLQeYSvoN3NGTGv7wBf4SwHbburlm89g10yJxJ+m5/06w1kB0PH7k1gLSSv9el8Zj2QeKxHiit82IMmaUud9OGEoC/xXS/ZWN84bllMNGToKgUH3F+MnGOXwLdshU6zS3KuLyfcu/dxUTvezIjZXTv4Hh7rJriQO3Q5IwPv3BNmj66e70jLgj2SU73kE/UFogaC42m78vnJFv1FnkAKnuN5a7PvsTuSRoAvysw1lYJ/Vpyd82sAxtmlOdkE2tWWRSms2M5XbXifzh9o3csFXl1NNsbpZDfXmua5PTsXrGf0YQ26KrZ5yOc7yIXz1u+SY7AebVXd9br+eDyYb2Qp54qgNhB7YXEdpeCfPgoQLVKGWCHCnj/1BLTVu6Q/1u4k/1zoSX7CpW7KEbk2x0u6PGM9M5/Rdq7fSHbI/4z0YR/0TR5fkdFf5GAserhUqR4EaiwFDz9I94kqiAUcGR940gk1l+jynRUv8jetss3g97rAXlLJV3dVha4exo090n1iXPnGDYScXJYrcuQd0GtrIXpoFflELh4H+m2OrXxSuoqVaUKEH0p9+JGiKyD6hoMd/PMZ+D2rYe79woz8+Y8eBu+ra8D2FD9Re8kWyjXWa6srzeqLtRbTWKyD4xHMmex8XOagT/QJNa2S/d3uddJvHKMM3SdNFPyTB9Q3seCgtsYvsEh0vHWxUI/pt4Uo+MDTABerLFSCmmb9TnxkE8CE30IFqOWSnvrgg+PpoEU+oIY5Pdc8x+4UZk8D3B62yAXUDLVb9tP7YXZZTHUA3BkD+GPGwgzUBjUa3qTw9ykWSn4I9D+H+C08gjS7eAAAAABJRU5ErkJggg==></a></div> <div><a href=http://chat.now.im/x/aeos>support throd</a> | <a href=https://github.com/aeosynth/4chan-x/issues>github</a> | <a href=http://userscripts.org/scripts/show/51412>uso</a></div> </div> <div><textarea style='display: none;' name=flavors>" + ($.config('flavors')) + "</textarea></div> ";
dialog = ui.dialog('options', {
top: '25%',
left: '25%'
}, html);
options.append(config.main.monitor, $('#monitor', dialog));
options.append(config.main.img, $('#img', dialog));
options.append(config.main.post, $('#post', dialog));
options.append(config.main.quote, $('#quote', dialog));
options.append(config.main.hide, $('#hide', dialog));
options.append(config.main.misc, $('#misc', dialog));
_ref = $$('input[type=checkbox]', dialog);
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
input = _ref[_i];
main = $('#main', dialog);
_ref = config.main;
for (key in _ref) {
obj = _ref[key];
ul = $.el('ul', {
textContent: key
});
for (key in obj) {
arr = obj[key];
checked = $.config(key) ? "checked" : "";
description = arr[1];
li = $.el('li', {
innerHTML: "<label><input type=checkbox name='" + key + "' " + checked + ">" + key + "</label><span class=description>" + description + "</span>"
});
$.append(ul, li);
}
$.append(main, ul);
}
_ref2 = $$('input[type=checkbox]', dialog);
for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
input = _ref2[_i];
$.bind(input, 'click', $.cb.checked);
}
$.bind($('input[type=button]', dialog), 'click', options.cb.clearHidden);
@ -980,19 +990,6 @@
$.bind($('textarea', dialog), 'change', $.cb.value);
return $.append(d.body, dialog);
},
append: function(conf, id) {
var checked, li, name, title, _results;
_results = [];
for (name in conf) {
title = conf[name][1];
checked = $.config(name) ? "checked" : "";
li = $.el('li', {
innerHTML: "<label title=\"" + title + "\"><input name='" + name + "' " + checked + " type=checkbox>" + name + "</label>"
});
_results.push($.append(id, li));
}
return _results;
},
flavors: function() {
var ta;
ta = $('#options textarea');
@ -2634,18 +2631,10 @@
#options .move, #credits {\
text-align: right;\
}\
.column {\
float: left;\
margin: 0 10px;\
}\
#options ul {\
list-style: none;\
margin: 0;\
padding: 0;\
}\
#options li:first-child {\
text-decoration: underline;\
}\
#floaty {\
float: left;\
}\
@ -2653,6 +2642,10 @@
height: 100px;\
width: 100%;\
}\
#options #main {\
overflow: auto;\
height: 500px;\
}\
\
#qr {\
position: fixed;\

View File

@ -43,13 +43,12 @@ config =
'Comment Expansion': [true, 'Expand too long comments']
'Thread Expansion': [true, 'View all replies']
'Thread Navigation': [true, 'Navigate to previous / next thread']
textarea:
flavors: [
'http://regex.info/exif.cgi?url='
'http://iqdb.org/?url='
'http://tineye.com/search?url='
'#http://saucenao.com/search.php?db=999&url='
].join '\n'
flavors: [
'http://regex.info/exif.cgi?url='
'http://iqdb.org/?url='
'http://tineye.com/search?url='
'#http://saucenao.com/search.php?db=999&url='
].join '\n'
updater:
checkbox:
'Verbose': [true, 'Show countdown timer, new post count']
@ -724,10 +723,8 @@ options =
html = "
<div class=move>Options <a name=close>X</a></div>
<hr>
<div class=column><ul id=monitor><li>Monitoring</li></ul><ul id=img><li>Imaging</li></ul></div>
<div class=column><ul id=post><li>Posting</li></ul><ul id=quote><li>Quoting</li></ul><ul id=hide><li>Hiding</li></ul></div>
<div class=column><ul id=misc><li>Enhancing</li></ul></div>
<br clear=left>
<div id=main>
</div>
<hr>
<div id=floaty>
<div><input type=button value='hidden: #{hiddenNum}'></div>
@ -741,12 +738,17 @@ options =
"
dialog = ui.dialog 'options', top: '25%', left: '25%', html
options.append config.main.monitor, $('#monitor', dialog)
options.append config.main.img, $('#img', dialog)
options.append config.main.post, $('#post', dialog)
options.append config.main.quote, $('#quote', dialog)
options.append config.main.hide, $('#hide', dialog)
options.append config.main.misc, $('#misc', dialog)
main = $('#main', dialog)
for key, obj of config.main
ul = $.el 'ul',
textContent: key
for key, arr of obj
checked = if $.config key then "checked" else ""
description = arr[1]
li = $.el 'li',
innerHTML: "<label><input type=checkbox name='#{key}' #{checked}>#{key}</label><span class=description>#{description}</span>"
$.append ul, li
$.append main, ul
for input in $$ 'input[type=checkbox]', dialog
$.bind input, 'click', $.cb.checked
$.bind $('input[type=button]', dialog), 'click', options.cb.clearHidden
@ -754,14 +756,6 @@ options =
$.bind $('textarea', dialog), 'change', $.cb.value
$.append d.body, dialog
append: (conf, id) ->
for name of conf
title = conf[name][1]
checked = if $.config name then "checked" else ""
li = $.el 'li',
innerHTML: "<label title=\"#{title}\"><input name='#{name}' #{checked} type=checkbox>#{name}</label>"
$.append id, li
flavors: ->
ta = $ '#options textarea'
if ta.style.display then $.show ta else $.hide ta
@ -1989,18 +1983,10 @@ main =
#options .move, #credits {
text-align: right;
}
.column {
float: left;
margin: 0 10px;
}
#options ul {
list-style: none;
margin: 0;
padding: 0;
}
#options li:first-child {
text-decoration: underline;
}
#floaty {
float: left;
}
@ -2008,6 +1994,10 @@ main =
height: 100px;
width: 100%;
}
#options #main {
overflow: auto;
height: 500px;
}
#qr {
position: fixed;