summaryrefslogtreecommitdiff
path: root/js/forced-anon.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/forced-anon.js')
-rw-r--r--js/forced-anon.js85
1 files changed, 85 insertions, 0 deletions
diff --git a/js/forced-anon.js b/js/forced-anon.js
new file mode 100644
index 00000000..9b9df1eb
--- /dev/null
+++ b/js/forced-anon.js
@@ -0,0 +1,85 @@
+/*
+ * forced-anon.js
+ * https://github.com/savetheinternet/Tinyboard-Tools/blob/master/js/forced-anon.js
+ *
+ * Released under the MIT license
+ * Copyright (c) 2012 Michael Save <savetheinternet@tinyboard.org>
+ *
+ * Usage:
+ * $config['additional_javascript'][] = 'js/jquery.min.js';
+ * $config['additional_javascript'][] = 'js/forced-anon.js';
+ *
+ */
+
+$(document).ready(function() {
+ var force_anon = function() {
+ if($(this).children('a.capcode').length == 0) {
+ var id = $(this).parent().children('a.post_no:eq(1)').text();
+
+ if($(this).children('a.email').length != 0)
+ var p = $(this).children('a.email');
+ else
+ var p = $(this);
+
+ old_info[id] = {'name': p.children('span.name').text(), 'trip': p.children('span.trip').text()};
+
+ p.children('span.name').text('Anonymous');
+ if(p.children('span.trip').length != 0)
+ p.children('span.trip').text('');
+ }
+ };
+
+ var enable_fa = function() {
+ $('p.intro label').each(force_anon);
+ };
+
+ var disable_fa = function() {
+ $('p.intro label').each(function() {
+ if($(this).children('a.capcode').length == 0) {
+ var id = $(this).parent().children('a.post_no:eq(1)').text();
+
+ if(old_info[id]) {
+ if($(this).children('a.email').length != 0)
+ var p = $(this).children('a.email');
+ else
+ var p = $(this);
+
+ p.children('span.name').text(old_info[id]['name']);
+ if(p.children('span.trip').length != 0)
+ p.children('span.trip').text(old_info[id]['trip']);
+ }
+ }
+ });
+ };
+
+ old_info = {};
+ forced_anon = localStorage['forcedanon'] ? true : false;
+
+ $('hr:first').before('<div id="forced-anon" style="text-align:right"><a class="unimportant" href="javascript:void(0)">-</a></div>');
+ $('div#forced-anon a').text('Forced anonymity (' + (forced_anon ? 'enabled' : 'disabled') + ')');
+
+ $('div#forced-anon a').click(function() {
+ forced_anon = !forced_anon;
+
+ if(forced_anon) {
+ $('div#forced-anon a').text('Forced anonymity (enabled)');
+ localStorage.forcedanon = true;
+ enable_fa();
+ } else {
+ $('div#forced-anon a').text('Forced anonymity (disabled)');
+ delete localStorage.forcedanon;
+ disable_fa();
+ }
+
+ return false;
+ });
+
+ if(forced_anon)
+ enable_fa();
+
+ $(document).bind('new_post', function(e, post) {
+ if(forced_anon)
+ $(post).find('p.intro label').each(force_anon);
+ });
+});
+