Guest User

Untitled

a guest
Jan 5th, 2014
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name            IgnoreScript
  3. // @description     helps to ignore people
  4. // @namespace       SumpfiScripts
  5. // @include         http://forum.worldofplayers.de/*
  6. // @version         0.5
  7. // ==/UserScript==
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14. /*****************************
  15. Syntax:
  16.  
  17.  
  18. ["NAME"]  
  19. User NAME wird komplett ignoriert
  20. Achtung: blöcke mit Komma trennen, hinter dem letzten Block kein
  21.  
  22.  
  23.  
  24. Level Einstellung (wie stark man jemanden ignorieren möchte):
  25.  
  26. ["NAME", NUM]
  27. Für NUM ganze Zahlen zwischen 0 und 3 einsetzen
  28.  
  29. 0 nur Umfragen werden ignoriert
  30. 1 alle Threads werden ignoriert
  31. 2 alle Posts werden ignoriert
  32. 3 alle Erwähnungen (Zitate, oder sonstige Vorkommen des geblockten Namens) werden ignoriert
  33.  
  34.  
  35. Feine Einstellung:
  36. ["NAME", polls, threads, posts, text]
  37. für polls/threads/posts/text jeweils true(an) oder false(aus) einsetzen
  38. Man kann auch nur die ersten paar Parameter spezifizieren, die restlichen werden dann automatisch als false interpretiert
  39.  
  40. Bsp:
  41. ["Hans", true, false, true]
  42. ignoriert alle Umpfragen  und posts von Hans, zeigt aber seine Threads und etwaige Zitate an
  43.  
  44. */
  45.  
  46. /*
  47.     Umlaute bitte nach dieser Tabelle codieren
  48.     Ä = %C4
  49.     Ö = %D6
  50.     Ü = %DC
  51.     ä = %E4
  52.     ö = %F6
  53.     ü = %FC
  54.     ß = %DF
  55.    
  56. */
  57. var userList = [
  58.     ["UserA"],
  59.     ["UserB",0],
  60.     ["UserC",1],
  61.     ["UserD",false,false,true],
  62.     ["UserE"]
  63.    
  64. ];
  65.  
  66.  
  67. //     Zepto.js
  68. //     (c) 2010-2014 Thomas Fuchs
  69. //     Zepto.js may be freely distributed under the MIT license.
  70. var Zepto=function(){function _(e){return e==null?String(e):N[C.call(e)]||"object"}function D(e){return _(e)=="function"}function P(e){return e!=null&&e==e.window}function H(e){return e!=null&&e.nodeType==e.DOCUMENT_NODE}function B(e){return _(e)=="object"}function j(e){return B(e)&&!P(e)&&Object.getPrototypeOf(e)==Object.prototype}function F(e){return e instanceof Array}function I(e){return typeof e.length=="number"}function q(e){return o.call(e,function(e){return e!=null})}function R(e){return e.length>0?n.fn.concat.apply([],e):e}function U(e){return e.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}function z(e){return e in f?f[e]:f[e]=new RegExp("(^|\\s)"+e+"(\\s|$)")}function W(e,t){return typeof t=="number"&&!l[U(e)]?t+"px":t}function X(e){var t,n;if(!a[e]){t=u.createElement(e);u.body.appendChild(t);n=getComputedStyle(t,"").getPropertyValue("display");t.parentNode.removeChild(t);n=="none"&&(n="block");a[e]=n}return a[e]}function V(e){return"children"in e?s.call(e.children):n.map(e.childNodes,function(e){if(e.nodeType==1)return e})}function $(n,r,i){for(t in r)if(i&&(j(r[t])||F(r[t]))){if(j(r[t])&&!j(n[t]))n[t]={};if(F(r[t])&&!F(n[t]))n[t]=[];$(n[t],r[t],i)}else if(r[t]!==e)n[t]=r[t]}function J(e,t){return t==null?n(e):n(e).filter(t)}function K(e,t,n,r){return D(t)?t.call(e,n,r):t}function Q(e,t,n){n==null?e.removeAttribute(t):e.setAttribute(t,n)}function G(t,n){var r=t.className,i=r&&r.baseVal!==e;if(n===e)return i?r.baseVal:r;i?r.baseVal=n:t.className=n}function Y(e){var t;try{return e?e=="true"||(e=="false"?false:e=="null"?null:!/^0/.test(e)&&!isNaN(t=Number(e))?t:/^[\[\{]/.test(e)?n.parseJSON(e):e):e}catch(r){return e}}function Z(e,t){t(e);for(var n in e.childNodes)Z(e.childNodes[n],t)}var e,t,n,r,i=[],s=i.slice,o=i.filter,u=window.document,a={},f={},l={"column-count":1,columns:1,"font-weight":1,"line-height":1,opacity:1,"z-index":1,zoom:1},c=/^\s*<(\w+|!)[^>]*>/,h=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,p=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/^(?:body|html)$/i,v=/([A-Z])/g,m=["val","css","html","text","data","width","height","offset"],g=["after","prepend","before","append"],y=u.createElement("table"),b=u.createElement("tr"),w={tr:u.createElement("tbody"),tbody:y,thead:y,tfoot:y,td:b,th:b,"*":u.createElement("div")},E=/complete|loaded|interactive/,S=/^\.([\w-]+)$/,x=/^#([\w-]*)$/,T=/^[\w-]*$/,N={},C=N.toString,k={},L,A,O=u.createElement("div"),M={tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"};k.matches=function(e,t){if(!t||!e||e.nodeType!==1)return false;var n=e.webkitMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.matchesSelector;if(n)return n.call(e,t);var r,i=e.parentNode,s=!i;if(s)(i=O).appendChild(e);r=~k.qsa(i,t).indexOf(e);s&&O.removeChild(e);return r};L=function(e){return e.replace(/-+(.)?/g,function(e,t){return t?t.toUpperCase():""})};A=function(e){return o.call(e,function(t,n){return e.indexOf(t)==n})};k.fragment=function(t,r,i){var o,a,f;if(h.test(t))o=n(u.createElement(RegExp.$1));if(!o){if(t.replace)t=t.replace(p,"<$1></$2>");if(r===e)r=c.test(t)&&RegExp.$1;if(!(r in w))r="*";f=w[r];f.innerHTML=""+t;o=n.each(s.call(f.childNodes),function(){f.removeChild(this)})}if(j(i)){a=n(o);n.each(i,function(e,t){if(m.indexOf(e)>-1)a[e](t);else a.attr(e,t)})}return o};k.Z=function(e,t){e=e||[];e.__proto__=n.fn;e.selector=t||"";return e};k.isZ=function(e){return e instanceof k.Z};k.init=function(t,r){var i;if(!t)return k.Z();else if(typeof t=="string"){t=t.trim();if(t[0]=="<"&&c.test(t))i=k.fragment(t,RegExp.$1,r),t=null;else if(r!==e)return n(r).find(t);else i=k.qsa(u,t)}else if(D(t))return n(u).ready(t);else if(k.isZ(t))return t;else{if(F(t))i=q(t);else if(B(t))i=[t],t=null;else if(c.test(t))i=k.fragment(t.trim(),RegExp.$1,r),t=null;else if(r!==e)return n(r).find(t);else i=k.qsa(u,t)}return k.Z(i,t)};n=function(e,t){return k.init(e,t)};n.extend=function(e){var t,n=s.call(arguments,1);if(typeof e=="boolean"){t=e;e=n.shift()}n.forEach(function(n){$(e,n,t)});return e};k.qsa=function(e,t){var n,r=t[0]=="#",i=!r&&t[0]==".",o=r||i?t.slice(1):t,u=T.test(o);return H(e)&&u&&r?(n=e.getElementById(o))?[n]:[]:e.nodeType!==1&&e.nodeType!==9?[]:s.call(u&&!r?i?e.getElementsByClassName(o):e.getElementsByTagName(t):e.querySelectorAll(t))};n.contains=function(e,t){return e!==t&&e.contains(t)};n.type=_;n.isFunction=D;n.isWindow=P;n.isArray=F;n.isPlainObject=j;n.isEmptyObject=function(e){var t;for(t in e)return false;return true};n.inArray=function(e,t,n){return i.indexOf.call(t,e,n)};n.camelCase=L;n.trim=function(e){return e==null?"":String.prototype.trim.call(e)};n.uuid=0;n.support={};n.expr={};n.map=function(e,t){var n,r=[],i,s;if(I(e))for(i=0;i<e.length;i++){n=t(e[i],i);if(n!=null)r.push(n)}else for(s in e){n=t(e[s],s);if(n!=null)r.push(n)}return R(r)};n.each=function(e,t){var n,r;if(I(e)){for(n=0;n<e.length;n++)if(t.call(e[n],n,e[n])===false)return e}else{for(r in e)if(t.call(e[r],r,e[r])===false)return e}return e};n.grep=function(e,t){return o.call(e,t)};if(window.JSON)n.parseJSON=JSON.parse;n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){N["[object "+t+"]"]=t.toLowerCase()});n.fn={forEach:i.forEach,reduce:i.reduce,push:i.push,sort:i.sort,indexOf:i.indexOf,concat:i.concat,map:function(e){return n(n.map(this,function(t,n){return e.call(t,n,t)}))},slice:function(){return n(s.apply(this,arguments))},ready:function(e){if(E.test(u.readyState)&&u.body)e(n);else u.addEventListener("DOMContentLoaded",function(){e(n)},false);return this},get:function(t){return t===e?s.call(this):this[t>=0?t:t+this.length]},toArray:function(){return this.get()},size:function(){return this.length},remove:function(){return this.each(function(){if(this.parentNode!=null)this.parentNode.removeChild(this)})},each:function(e){i.every.call(this,function(t,n){return e.call(t,n,t)!==false});return this},filter:function(e){if(D(e))return this.not(this.not(e));return n(o.call(this,function(t){return k.matches(t,e)}))},add:function(e,t){return n(A(this.concat(n(e,t))))},is:function(e){return this.length>0&&k.matches(this[0],e)},not:function(t){var r=[];if(D(t)&&t.call!==e)this.each(function(e){if(!t.call(this,e))r.push(this)});else{var i=typeof t=="string"?this.filter(t):I(t)&&D(t.item)?s.call(t):n(t);this.forEach(function(e){if(i.indexOf(e)<0)r.push(e)})}return n(r)},has:function(e){return this.filter(function(){return B(e)?n.contains(this,e):n(this).find(e).size()})},eq:function(e){return e===-1?this.slice(e):this.slice(e,+e+1)},first:function(){var e=this[0];return e&&!B(e)?e:n(e)},last:function(){var e=this[this.length-1];return e&&!B(e)?e:n(e)},find:function(e){var t,r=this;if(typeof e=="object")t=n(e).filter(function(){var e=this;return i.some.call(r,function(t){return n.contains(t,e)})});else if(this.length==1)t=n(k.qsa(this[0],e));else t=this.map(function(){return k.qsa(this,e)});return t},closest:function(e,t){var r=this[0],i=false;if(typeof e=="object")i=n(e);while(r&&!(i?i.indexOf(r)>=0:k.matches(r,e)))r=r!==t&&!H(r)&&r.parentNode;return n(r)},parents:function(e){var t=[],r=this;while(r.length>0)r=n.map(r,function(e){if((e=e.parentNode)&&!H(e)&&t.indexOf(e)<0){t.push(e);return e}});return J(t,e)},parent:function(e){return J(A(this.pluck("parentNode")),e)},children:function(e){return J(this.map(function(){return V(this)}),e)},contents:function(){return this.map(function(){return s.call(this.childNodes)})},siblings:function(e){return J(this.map(function(e,t){return o.call(V(t.parentNode),function(e){return e!==t})}),e)},empty:function(){return this.each(function(){this.innerHTML=""})},pluck:function(e){return n.map(this,function(t){return t[e]})},show:function(){return this.each(function(){this.style.display=="none"&&(this.style.display="");if(getComputedStyle(this,"").getPropertyValue("display")=="none")this.style.display=X(this.nodeName)})},replaceWith:function(e){return this.before(e).remove()},wrap:function(e){var t=D(e);if(this[0]&&!t)var r=n(e).get(0),i=r.parentNode||this.length>1;return this.each(function(s){n(this).wrapAll(t?e.call(this,s):i?r.cloneNode(true):r)})},wrapAll:function(e){if(this[0]){n(this[0]).before(e=n(e));var t;while((t=e.children()).length)e=t.first();n(e).append(this)}return this},wrapInner:function(e){var t=D(e);return this.each(function(r){var i=n(this),s=i.contents(),o=t?e.call(this,r):e;s.length?s.wrapAll(o):i.append(o)})},unwrap:function(){this.parent().each(function(){n(this).replaceWith(n(this).children())});return this},clone:function(){return this.map(function(){return this.cloneNode(true)})},hide:function(){return this.css("display","none")},toggle:function(t){return this.each(function(){var r=n(this);(t===e?r.css("display")=="none":t)?r.show():r.hide()})},prev:function(e){return n(this.pluck("previousElementSibling")).filter(e||"*")},next:function(e){return n(this.pluck("nextElementSibling")).filter(e||"*")},html:function(e){return arguments.length===0?this.length>0?this[0].innerHTML:null:this.each(function(t){var r=this.innerHTML;n(this).empty().append(K(this,e,t,r))})},text:function(t){return arguments.length===0?this.length>0?this[0].textContent:null:this.each(function(){this.textContent=t===e?"":""+t})},attr:function(n,r){var i;return typeof n=="string"&&r===e?this.length==0||this[0].nodeType!==1?e:n=="value"&&this[0].nodeName=="INPUT"?this.val():!(i=this[0].getAttribute(n))&&n in this[0]?this[0][n]:i:this.each(function(e){if(this.nodeType!==1)return;if(B(n))for(t in n)Q(this,t,n[t]);else Q(this,n,K(this,r,e,this.getAttribute(n)))})},removeAttr:function(e){return this.each(function(){this.nodeType===1&&Q(this,e)})},prop:function(t,n){t=M[t]||t;return n===e?this[0]&&this[0][t]:this.each(function(e){this[t]=K(this,n,e,this[t])})},data:function(t,n){var r=this.attr("data-"+t.replace(v,"-$1").toLowerCase(),n);return r!==null?Y(r):e},val:function(e){return arguments.length===0?this[0]&&(this[0].multiple?n(this[0]).find("option").filter(function(){return this.selected}).pluck("value"):this[0].value):this.each(function(t){this.value=K(this,e,t,this.value)})},offset:function(e){if(e)return this.each(function(t){var r=n(this),i=K(this,e,t,r.offset()),s=r.offsetParent().offset(),o={top:i.top-s.top,left:i.left-s.left};if(r.css("position")=="static")o["position"]="relative";r.css(o)});if(this.length==0)return null;var t=this[0].getBoundingClientRect();return{left:t.left+window.pageXOffset,top:t.top+window.pageYOffset,width:Math.round(t.width),height:Math.round(t.height)}},css:function(e,r){if(arguments.length<2){var i=this[0],s=getComputedStyle(i,"");if(!i)return;if(typeof e=="string")return i.style[L(e)]||s.getPropertyValue(e);else if(F(e)){var o={};n.each(F(e)?e:[e],function(e,t){o[t]=i.style[L(t)]||s.getPropertyValue(t)});return o}}var u="";if(_(e)=="string"){if(!r&&r!==0)this.each(function(){this.style.removeProperty(U(e))});else u=U(e)+":"+W(e,r)}else{for(t in e)if(!e[t]&&e[t]!==0)this.each(function(){this.style.removeProperty(U(t))});else u+=U(t)+":"+W(t,e[t])+";"}return this.each(function(){this.style.cssText+=";"+u})},index:function(e){return e?this.indexOf(n(e)[0]):this.parent().children().indexOf(this[0])},hasClass:function(e){if(!e)return false;return i.some.call(this,function(e){return this.test(G(e))},z(e))},addClass:function(e){if(!e)return this;return this.each(function(t){r=[];var i=G(this),s=K(this,e,t,i);s.split(/\s+/g).forEach(function(e){if(!n(this).hasClass(e))r.push(e)},this);r.length&&G(this,i+(i?" ":"")+r.join(" "))})},removeClass:function(t){return this.each(function(n){if(t===e)return G(this,"");r=G(this);K(this,t,n,r).split(/\s+/g).forEach(function(e){r=r.replace(z(e)," ")});G(this,r.trim())})},toggleClass:function(t,r){if(!t)return this;return this.each(function(i){var s=n(this),o=K(this,t,i,G(this));o.split(/\s+/g).forEach(function(t){(r===e?!s.hasClass(t):r)?s.addClass(t):s.removeClass(t)})})},scrollTop:function(t){if(!this.length)return;var n="scrollTop"in this[0];if(t===e)return n?this[0].scrollTop:this[0].pageYOffset;return this.each(n?function(){this.scrollTop=t}:function(){this.scrollTo(this.scrollX,t)})},scrollLeft:function(t){if(!this.length)return;var n="scrollLeft"in this[0];if(t===e)return n?this[0].scrollLeft:this[0].pageXOffset;return this.each(n?function(){this.scrollLeft=t}:function(){this.scrollTo(t,this.scrollY)})},position:function(){if(!this.length)return;var e=this[0],t=this.offsetParent(),r=this.offset(),i=d.test(t[0].nodeName)?{top:0,left:0}:t.offset();r.top-=parseFloat(n(e).css("margin-top"))||0;r.left-=parseFloat(n(e).css("margin-left"))||0;i.top+=parseFloat(n(t[0]).css("border-top-width"))||0;i.left+=parseFloat(n(t[0]).css("border-left-width"))||0;return{top:r.top-i.top,left:r.left-i.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||u.body;while(e&&!d.test(e.nodeName)&&n(e).css("position")=="static")e=e.offsetParent;return e})}};n.fn.detach=n.fn.remove;["width","height"].forEach(function(t){var r=t.replace(/./,function(e){return e[0].toUpperCase()});n.fn[t]=function(i){var s,o=this[0];if(i===e)return P(o)?o["inner"+r]:H(o)?o.documentElement["scroll"+r]:(s=this.offset())&&s[t];else return this.each(function(e){o=n(this);o.css(t,K(this,i,e,o[t]()))})}});g.forEach(function(e,t){var r=t%2;n.fn[e]=function(){var e,i=n.map(arguments,function(t){e=_(t);return e=="object"||e=="array"||t==null?t:k.fragment(t)}),s,o=this.length>1;if(i.length<1)return this;return this.each(function(e,u){s=r?u:u.parentNode;u=t==0?u.nextSibling:t==1?u.firstChild:t==2?u:null;i.forEach(function(e){if(o)e=e.cloneNode(true);else if(!s)return n(e).remove();Z(s.insertBefore(e,u),function(e){if(e.nodeName!=null&&e.nodeName.toUpperCase()==="SCRIPT"&&(!e.type||e.type==="text/javascript")&&!e.src)window["eval"].call(window,e.innerHTML)})})})};n.fn[r?e+"To":"insert"+(t?"Before":"After")]=function(t){n(t)[e](this);return this}});k.Z.prototype=n.fn;k.uniq=A;k.deserializeValue=Y;n.zepto=k;return n}();window.Zepto=Zepto;window.$===undefined&&(window.$=Zepto)
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78. var userTable = {
  79.     items: {},
  80.     addUser: function (usr) { this.items[usr.name] = usr; },
  81.     hasUser: function (name) { return this.items.hasOwnProperty(name); },
  82.     getUser: function (name) { return this.items[name]; },
  83.     getUsers: function () {
  84.         var users = [];
  85.         for (var i in this.items)
  86.         {
  87.             if(this.hasUser(i))
  88.             {
  89.                 users.push(this.getUser(i));
  90.             }            
  91.         }
  92.         return users;
  93.     }
  94. };
  95.  
  96. var THREADS = "threads";
  97. var POSTS = "posts";
  98. var MENTION = "mention";
  99. var POLLS = "polls";
  100.  
  101.    
  102.  
  103. var users=[];
  104.  
  105.  
  106. function initUsers()
  107. {
  108.     for (var i = 0; i < userList.length; i++)
  109.     {
  110.         users.push(construct(user,userList[i]));
  111.     }
  112. }
  113.  
  114. function construct(constructor, args) {
  115.     function F() {
  116.         return constructor.apply(this, args);
  117.     }
  118.     F.prototype = constructor.prototype;
  119.     return new F();
  120. }
  121. function user(name, ignorePolls, ignoreThreads, ignorePosts, ignoreMention)
  122. {
  123.     var defaults = true;
  124.     if (typeof (ignorePolls) === "undefined") ignorePolls = defaults; else defaults = false;
  125.  
  126.     if (typeof (ignorePolls) === "number") {
  127.         defaults = false;
  128.        
  129.         switch (ignorePolls) {
  130.             default:
  131.             case 3:
  132.                 ignoreMention = true;              
  133.             case 2:
  134.                 ignorePosts = true;
  135.             case 1:
  136.                 ignoreThreads = true;
  137.             case 0:
  138.                 ignorePolls = true;
  139.                 break;
  140.         }
  141.     }
  142.  
  143.     if (typeof (ignoreThreads) === "undefined") ignoreThreads = defaults; else defaults = false;
  144.     if (typeof (ignorePosts) === "undefined") ignorePosts = defaults; else defaults = false;
  145.     if (typeof (ignoreMention) === "undefined") ignoreMention = defaults;
  146.  
  147.     this.name = name;
  148.     this[POLLS] = ignorePolls;
  149.     this[THREADS]    = ignoreThreads;
  150.     this[POSTS]      = ignorePosts;
  151.     this[MENTION] = ignoreMention;
  152.  
  153.     this.regex = RegExp(this.name, "g");
  154.     userTable.addUser(this);
  155. }
  156.  
  157. $("html").hide();
  158. $(document).ready(Init);
  159.  
  160. function Init()
  161. {
  162.     initUsers();
  163.    
  164.     if (document.URL.indexOf("forum/forums") != -1)
  165.     {
  166.        
  167.         $(".threadbit").each(function ()
  168.         {
  169.             var current = $(this);            
  170.             var threadHidden = false;
  171.            
  172.             var name =  $(this).find(".threadauthor.td").text();
  173.             threadHidden = performHide(name, THREADS, current);
  174.  
  175.             if (!threadHidden) {
  176.                 var content = $(this).find(".postedby .username");
  177.                 var postedBy = content.text();
  178.              
  179.  
  180.                 performIgnoreMethod(postedBy, MENTION, function () {
  181.                    
  182.                     content.html(content.html().replace(postedBy, getRandomName()));
  183.                 });
  184.  
  185.                 $(this).find(".threadsmilie img[title=Poll]").each(function () {
  186.                    
  187.                     performHide(name, POLLS, current);
  188.                 });
  189.             }
  190.         });
  191.         $(".commalist .username").each(function () {
  192.             var name = $(this).text();
  193.             performHide(name, MENTION, $(this).parent());
  194.         });
  195.  
  196.     }
  197.     else if (document.URL.indexOf("forum/threads") != -1)
  198.     {
  199.         ignorePosts(".postbitlegacy, .postbitignored",
  200.             ".username",
  201.             ".bbcode_container .bbcode_postedby strong",
  202.             ".postcontent.restore ");      
  203.     }
  204.     else if (document.URL.indexOf("forum/newreply") != -1)
  205.     {
  206.         ignorePosts("#postlist > li",
  207.             ".username",
  208.             ".bbcode_container .bbcode_postedby strong",
  209.             ".restore");
  210.  
  211.     }
  212.    
  213.     $("html").show();
  214.    
  215. }
  216. function ignorePosts(postAdr, usernameAdr, postedByAdr, postContentAdr)
  217. {
  218.     $(postAdr).each(function () {
  219.         var current = $(this);
  220.         var name = $(this).find(usernameAdr).text();
  221.         var postHidden = false;
  222.  
  223.         postHidden = performHide(name, POSTS, current);
  224.  
  225.  
  226.         if (!postHidden) {
  227.             $(this).find(postedByAdr).each(function () {
  228.                 performHide($(this).text(), MENTION, $(this).parent().parent().parent());
  229.             });
  230.  
  231.             var postContent = $(this).find(postContentAdr);
  232.             var content = $(postContent).html();
  233.             var contentChanged = false;
  234.  
  235.  
  236.             for (var i = 0; i < users.length; i++) {
  237.                 if (users[i].mention) {
  238.                     if (content.indexOf(users[i].name) != -1) {
  239.                         content = content.replace(users[i].regex, getRandomName());
  240.                         contentChanged = true;
  241.                     }
  242.                 }
  243.             }
  244.             if (contentChanged)
  245.                 $(postContent).html(content);
  246.         }
  247.     });
  248. }
  249. function getRandom(max)
  250. {
  251.     return Math.floor((Math.random() * max));
  252. }
  253. function getRandomName()
  254. {
  255.     var nameParts1 = ["Wasser", "Doof", "Socken", "Kartoffel"];
  256.     var nameParts2 = ["nase","kopf","nascher"];
  257.  
  258.     var rand1= getRandom(nameParts1.length);
  259.     var rand2 = getRandom(nameParts2.length);
  260.  
  261.     return nameParts1[rand1]+nameParts2[rand2];
  262. }
  263.  
  264. function performIgnoreMethod(name,type,callback)
  265. {
  266.     name = name.trim();
  267.  
  268.     if (userTable.hasUser(name)) {
  269.         var usr = userTable.getUser(name);
  270.         if (usr[type]) {
  271.             callback();
  272.             return true;
  273.         }
  274.        
  275.     }
  276.     return false;
  277. }
  278.  
  279. function performHide(name, type, obj)
  280. {
  281.     return performIgnoreMethod(name, type, function () { $(obj).hide()});
  282. }
Advertisement
Add Comment
Please, Sign In to add comment