summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--js/treeview.js71
-rw-r--r--stylesheets/style.css3
2 files changed, 47 insertions, 27 deletions
diff --git a/js/treeview.js b/js/treeview.js
index 78ad620b..c9bd55f8 100644
--- a/js/treeview.js
+++ b/js/treeview.js
@@ -11,35 +11,54 @@
*
*/
+if (active_page == 'thread' || active_page == 'ukko' || active_page == 'index')
+$(function() {
+ if (window.Options && Options.get_tab('general')) {
+ var selector = '#treeview-global>input';
+ Options.extend_tab("general", "<label id='treeview-global'><input type='checkbox' /> "+_('Use tree view by default')+"</label>");
+ }
+ $(selector).on('change', function () {
+ if (localStorage.treeview === 'true') {
+ localStorage.treeview = 'false';
+ } else {
+ localStorage.treeview = 'true';
+ }
+ });
+ if (localStorage.treeview === 'true') {
+ $(selector).attr('checked', 'checked');
+ }
+});
+
if (active_page == 'thread')
$(function() {
+ var treeview = function() {
+ $('.post.reply').each(function(){
+ var references = [];
+ $(this).find('.body a').each(function(){
+ if ($(this).html().match('^&gt;&gt;[0-9]+$')) {
+ references.push(parseInt($(this).html().replace('&gt;&gt;', '')));
+ }
+ });
+ var maxref = references.reduce(function(a,b) { return a > b ? a : b; }, 0);
+
+ var parent_post = $("#reply_"+maxref);
+ if (parent_post.length == 0) return;
+
+ var margin = parseInt(parent_post.css("margin-left"))+32;
+
+ var post = $(this);
+ var br = post.next();
+
+ post.detach().css("margin-left", margin).insertAfter(parent_post.next());
+ br.detach().insertAfter(post);
+ });
+ }
+ if (localStorage.treeview === 'true') {
+ treeview();
+ }
+
$('hr:first').before('<div id="treeview" style="text-align:right"><a class="unimportant" href="javascript:void(0)"></a></div>');
$('div#treeview a')
.text(_('Tree view'))
- .click(function(e) {
- e.preventDefault();
-
- $('.post.reply').each(function(){
- var references = [];
- $(this).find('.body a').each(function(){
- if ($(this).html().match('^&gt;&gt;[0-9]+$')) {
- references.push(parseInt($(this).html().replace('&gt;&gt;', '')));
- }
- });
-
- var maxref = references.reduce(function(a,b) { return a > b ? a : b; }, 0);
-
- var parent_post = $("#reply_"+maxref);
- if (parent_post.length == 0) return;
-
- var margin = parseInt(parent_post.css("margin-left"))+32;
-
- var post = $(this);
- var br = post.next();
-
- post.detach().css("margin-left", margin).insertAfter(parent_post.next());
- br.detach().insertAfter(post);
-
- });
- });
+ .click(function(e) { treeview(); e.preventDefault(); });
});
diff --git a/stylesheets/style.css b/stylesheets/style.css
index 2565ba4f..d2cc0572 100644
--- a/stylesheets/style.css
+++ b/stylesheets/style.css
@@ -825,7 +825,7 @@ div.thread:hover {
#options_div {
width: 600px;
- height: 300px;
+ height: 320px;
}
#alert_div {
@@ -892,6 +892,7 @@ div.thread:hover {
right: 0px;
text-align: left;
font-size: 12px;
+ overflow-y: auto;
}
.options_tab h2 {