User Statusunabhängig in einen Forum Ignorieren
Hallo und Guten Tag,
Diese Anleitung soll für Menschen sein , die daran Interesse haben unabhängig von der jeweiligen Forensoftware User zu Ignorieren,unabhängig davon welchen Status die einzelnen User besitzen.
Es wird von daher auch möglich sein Moderatoren und Administratoren auf die Ignore Liste zu setzen oder User die Gruppen zugehören von denen es durch die Konfiguration der Forensoftware nicht erwünscht ist,dass diese Ignoriert werden.
Es muss also jeder der diese Anleitung nutz und angebotene Funktion nutzen will vorher abwägen,ob es Sinnig ist einen Administratoren oder Moderatoren auf die Ignore Liste zu setzen,weil dieses Vor- oder auch Nachteile des Anwenders haben kann.
Diese Anleitung wird für den Firefox sein und explizit für die Aktuelle phpBB 3 Forensoftware .
Ich gehe aber vorab noch auf die Forensoftware phpBB 2 ein und vBulletin für die es schon Add-Ons für den Firefox gibt und wo ich keinen weiteren Anlass sehe näher drauf einzugehen.Das Add-On für vBulletin gibt es hier vBulletin Add-on und für phpBB 2 ist es dieses phpBB 2 Add-on .
Kommen wir jetzt zu dem phpBB 3 ,dass Script welches dazu genutzt wird, wurde von PHerison für phpBB 3 modifiziert und zur Verfügung gestellt (Quellcode), so wie es hier genutzt und beschrieben wird.
Ich werde auch auf die Stellen eingehen,die jeder selber Modifizieren muss,um es in den entsprechenden Forum seiner Wahl nutzen zu können. Die Quelle der Herkunft meiner Information über das Script findet ihr hier .
Kommen wir nun vorab zu dem was wir noch benötigen,um das Script lauffähig zu machen.
Wir benötigen für den Firefox folgendes Add-On Greasemonkey , da es sonst nicht möglich ist das Script zu laden,weil der Firefox dieses Add-On benötigt um überhaupt Scripts Laden zu können,die wir nutzen wollen.
Ein Texteditor der ist bei jedem Windows mit On Bord und somit wird hier keine weitere Software benötigt. Der Texteditor wird dazu benötigt,damit der Quellcode dort in das .txt Dokument eingefügt werden und bearbeitet werden kann.
Und den Firefox selber den wir hier bekommen.
Nachdem wir jetzt den Firefox installiert haben,dass Add-on Greasemonkey in den Firefox hinzugefügt wurde und wir uns ein .txt Dokument geöffnet haben benötigen wir noch den Quellcode.
Das wäre dieser hier
Den Quellcode müssen wir jetzt Kopieren und in das .txt Dokument einfügen.
Diese Zeilen müssen in dem Script an die URL des entsprechende Forum angepasst werden
Dieses sollten dann immer mit der URL des jeweiligen Forums angepasst werden,um dort auch mit dem Script die Ignore Funktion nutzen zu können.
Dieses könnte dann so aussehen,wenn man es für administrator.de anpassen würde
Jetzt sollte nach der Modifikation bitte noch folgende Zeile hinzugefügt werden,da wir ja für die Modifikation selber gerade stehen wollen und niemand anderen die Verantwortung in die Schuhe schieben wollen für die Modifikation die wir gemacht haben.
Das sieht hier vorher so aus
und sollte nach unserer Bearbeitung so aussehen
Das .txt Dokument können wir jetzt speichern und dann sollten es so umbenennen,dass wir erkennen für welches Forum es gedacht sein soll,dieses könnte dann so aussehen user_hide_for_httpwwwadministrator.user.js. Wichtig hierbei ist es das aus der Dateiendung von dem .txt Dokument aus einen .txt jetzt ein .js wird,weil es sonst nicht funktionieren wird.
Damit hätten wir jetzt das Script fertig und müssen es nur noch in den Firefox einbinden damit wir es nutzen können,dass ist sehr einfach und das Add-On Greasemonkey wird uns dabei helfen.
Wir starten jetzt den Firefox und haben sichergestellt,dass das Add-On Greasemonkey installiert wurde und unser Script fertig ist und die Dateiendung .js aufweist.
Nun klicken wir oben Links im Firefox auf "Datei" suchen uns im Menü die Option "Datei öffnen...." heraus und klicken es an,dann gehen wir in den Verzeichnispfad wo wir unser Script abgelegt haben und öffnen es.
Das Add-on Greasemonkey wird seinen Dienst tun und es geht ein Pop-up Fenster auf indem wir gefragt werden,ob wir das Script installieren möchten,dieses bestätigen wir und können ab sofort unser Script in dem Forum nutzen für welches wir es Modifiziert haben.
Die Funktion innerhalb eines Forums zu nutzen ist recht einfach.Es sind in der User Darstellung von einem Beitrag bei jedem User ein graues X zu sehen,auf welches man nur Klicken muss und der User wird damit auf die Ignore Liste des Scriptes gesetzt und nach einer Aktualisierung werden wir den User nicht mehr lesen müssen.
Falls wir doch mal einen Ignorierten User lesen wollen steht uns nach dem Ignorieren die Option "Toggle Display" zur Verfügung auf welche nur geklickt werden muss um einen Beitrag wieder sichtbar zu machen.
Ich hoffe ich konnte mit dieser Anleitung ein paar Menschen glücklicher machen und verbleibe mit einem
freundlichen Gruß
Hightop One
Diese Anleitung soll für Menschen sein , die daran Interesse haben unabhängig von der jeweiligen Forensoftware User zu Ignorieren,unabhängig davon welchen Status die einzelnen User besitzen.
Es wird von daher auch möglich sein Moderatoren und Administratoren auf die Ignore Liste zu setzen oder User die Gruppen zugehören von denen es durch die Konfiguration der Forensoftware nicht erwünscht ist,dass diese Ignoriert werden.
Es muss also jeder der diese Anleitung nutz und angebotene Funktion nutzen will vorher abwägen,ob es Sinnig ist einen Administratoren oder Moderatoren auf die Ignore Liste zu setzen,weil dieses Vor- oder auch Nachteile des Anwenders haben kann.
Diese Anleitung wird für den Firefox sein und explizit für die Aktuelle phpBB 3 Forensoftware .
Ich gehe aber vorab noch auf die Forensoftware phpBB 2 ein und vBulletin für die es schon Add-Ons für den Firefox gibt und wo ich keinen weiteren Anlass sehe näher drauf einzugehen.Das Add-On für vBulletin gibt es hier vBulletin Add-on und für phpBB 2 ist es dieses phpBB 2 Add-on .
Kommen wir jetzt zu dem phpBB 3 ,dass Script welches dazu genutzt wird, wurde von PHerison für phpBB 3 modifiziert und zur Verfügung gestellt (Quellcode), so wie es hier genutzt und beschrieben wird.
Ich werde auch auf die Stellen eingehen,die jeder selber Modifizieren muss,um es in den entsprechenden Forum seiner Wahl nutzen zu können. Die Quelle der Herkunft meiner Information über das Script findet ihr hier .
Kommen wir nun vorab zu dem was wir noch benötigen,um das Script lauffähig zu machen.
Wir benötigen für den Firefox folgendes Add-On Greasemonkey , da es sonst nicht möglich ist das Script zu laden,weil der Firefox dieses Add-On benötigt um überhaupt Scripts Laden zu können,die wir nutzen wollen.
Ein Texteditor der ist bei jedem Windows mit On Bord und somit wird hier keine weitere Software benötigt. Der Texteditor wird dazu benötigt,damit der Quellcode dort in das .txt Dokument eingefügt werden und bearbeitet werden kann.
Und den Firefox selber den wir hier bekommen.
Nachdem wir jetzt den Firefox installiert haben,dass Add-on Greasemonkey in den Firefox hinzugefügt wurde und wir uns ein .txt Dokument geöffnet haben benötigen wir noch den Quellcode.
Das wäre dieser hier
// ==UserScript==
// @name User Hide for http://www.geoclub.de
// @include *.geoclub.de/viewtopic.php*
// @include *.geoclub.de/ftopic*.html
// @description Hides/unhides a user's posts and quotes
// @exclude
// ==/UserScript==
// original file by Unarmed
// found at: http://s93731204.onlinehome.us/firefox/greasemonkey/phpbb.ignore.user.js
// modified for geoclub.de by London Rain
// modified for phpBB3 by PHerison
(function() {
// Get stored hidden users from cookie
var users = ;
var cookieName = "phpUserHide";
for (var i = 0; i < document.cookie.split('; ').length; i++) {
var oneCookie = document.cookie.split('; ')[i].split('=');
if (oneCookie == cookieName) {
users = oneCookie[1].split(', ');
break;
}
}
// Cursor functions
var curPointer = function(event) {
event.target.style.cursor = 'pointer';
event.preventDefault();
};
var curDefault = function(event) {
event.target.style.cursor = 'default';
event.preventDefault();
};
// Add or remove a user from the cookie
var addRemoveUser = function(event) {
// Parse current cookie
for(j = 0; j < document.cookie.split('; ').length; j++ ) {
var oneCookie = document.cookie.split('; ')[j].split('=');
if (oneCookie == cookieName) {
users = oneCookie[1].split(', ');
break;
}
}
var user = escape(event.target.nextSibling.innerHTML)
notFound = true;
for (var j = 0; j < users.length; j++) {
if (users[j] == user) {
users.splice(j, 1);
notFound = false;
}
}
if (notFound)
users.push(user);
if (users.length > 0) {
var date = new Date();
var days = 365;
date.setTime(date.getTime() + (days*24*60*60*1000));
var expires = '; expires=' + date.toGMTString();
var value = users.join(', ');
document.cookie = cookieName + '=' + value + expires + '; path=/';
} else {
document.cookie = cookieName + '=;expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/';
}
window.alert(unescape(user) + ' has been ' + (notFound ? 'added to' : 'removed from')
+ ' your hide list\n'
+ 'You must refresh the page to view the changes.');
event.preventDefault();
};
// Toggle display of user's post
var togglePost = function(event) {
var displayState = event.target.getAttribute('displaystate');
if (displayState == 'none')
displayState = '';
else
displayState = 'none';
event.target.setAttribute('displaystate', displayState);
containingRow = event.target.parentNode.parentNode.parentNode.parentNode;
containingRow.firstChild.nextSibling.firstChild.nextSibling.nextSibling.style.display = displayState;
event.preventDefault();
};
// Toggle display of user's quote
var toggleQuote = function(event) {
var displayState = event.target.getAttribute('displaystate');
if (displayState == 'none')
displayState = '';
else
displayState = 'none';
event.target.setAttribute('displaystate', displayState);
// Jump to quotecontent-<div>
var containingRow = event.target.parentNode.nextSibling;
containingRow.style.display = displayState;
event.preventDefault();
};
// Find all the usernames in the page
var results = document.evaluate("//b[@class='postauthor']", document, null, XPathResult.ANY_TYPE, null);
var resultNodes = ;
var aResult;
while (aResult = results.iterateNext())
resultNodes.push(aResult);
// Loop through every user post on the page
for (var i in resultNodes) {
// containingRow = <table>
var containingRow = resultNodes[i].parentNode.parentNode.parentNode.parentNode;
// the info <tr> in the containing <table>
var infoRow = resultNodes[i].parentNode.parentNode;
// the message <tr> in the containing <table>
var msgRow = resultNodes[i].parentNode.parentNode.nextSibling.nextSibling;
// the postinfo <tr> in the containing <table>
var appendixRow = resultNodes[i].parentNode.parentNode.nextSibling.nextSibling.nextSibling.nextSibling;
// the username <td> in the containing <table>
var elem = resultNodes[i].parentNode;
// Format whitespace
var user = escape(resultNodes[i].innerHTML);
// Flag whether the user is in our hide list
var notFound = true;
for (var j = 0; j < users.length; j++) {
if (users[j] == user) {
notFound = false;
}
}
// Add relevant event handlers to user's name and a toggler node
var toggler = document.createElement('span');
toggler.setAttribute('title', "click to add or remove this user from your hide list");
toggler.appendChild(document.createTextNode('[X] '));
toggler.style.fontSize = "7pt";
toggler.addEventListener('mouseover', curPointer, true);
toggler.addEventListener('mouseout', curDefault, true);
toggler.addEventListener('click', addRemoveUser, true);
// <td> with Username
elem.insertBefore(toggler, resultNodes[i]);
// If this user isn't in our hide list, skip to the next user
if (notFound)
continue;
// Create a span to control toggling
var span = document.createElement('span');
span.appendChild(document.createTextNode('Toggle Display'));
span.setAttribute('class', 'gensmallbold');
span.style.textDecoration = 'underline';
span.setAttribute('displaystate', 'none');
span.addEventListener('mouseover', curPointer, true);
span.addEventListener('mouseout', curDefault, true);
span.addEventListener('click', togglePost, true);
// Insert a <br> after the username and the span
elem.appendChild(document.createElement('br'));
elem.appendChild(span);
var elemWidth = elem.offsetWidth; // user <td> width to restore later
msgRow.style.display = 'none'; // hide message <tr>
elem.style.width = (elemWidth-4) + 'px'; // 4 = padding-right-value: 2px; + padding-left-value: 2px;
elem.nextSibling.nextSibling.style.width = "0%"; // remove width-information from following <td>
}
// Find all the usernames quoted in the page
var results = document.evaluate("//div[@class='quotetitle']", document, null, XPathResult.ANY_TYPE, null);
var resultNodes = ;
var aResult;
while (aResult = results.iterateNext())
{
resultNodes.push(aResult);
}
// Loop through every user quote on the page
for (var i in resultNodes) {
// Find username
var usermatch = resultNodes[i].innerHTML.match(/(.*) hat geschrieben:$/);
if (usermatch)
var user = escape(usermatch[1]);
else
continue;
// Flag whether the user is in our hide list
var notFound = true;
for (var j = 0; j < users.length; j++) {
if (users[j] == user) {
notFound = false;
}
}
// If this user isn't in our hide list, skip to the next user
if (notFound)
continue;
// Create a span to control toggling
var span = document.createElement('span');
span.appendChild(document.createTextNode('Toggle Display'));
span.setAttribute('class', 'gensmallbold');
span.style.textDecoration = 'underline';
span.setAttribute('displaystate', 'none');
span.addEventListener('mouseover', curPointer, true);
span.addEventListener('mouseout', curDefault, true);
span.addEventListener('click', toggleQuote, true);
resultNodes[i].appendChild(document.createTextNode(' ')); // space between username and toggler
resultNodes[i].appendChild(span);
// Hide the quote
resultNodes[i].nextSibling.style.display = 'none';
}
})();
Den Quellcode müssen wir jetzt Kopieren und in das .txt Dokument einfügen.
Diese Zeilen müssen in dem Script an die URL des entsprechende Forum angepasst werden
// ==UserScript==
// @name User Hide for http://www.geoclub.de
// @include *.geoclub.de/viewtopic.php*
// @include *.geoclub.de/ftopic*.html
Dieses sollten dann immer mit der URL des jeweiligen Forums angepasst werden,um dort auch mit dem Script die Ignore Funktion nutzen zu können.
Dieses könnte dann so aussehen,wenn man es für administrator.de anpassen würde
// ==UserScript==
// @name User Hide for https://administrator.de
// @include *.administrator.de/viewtopic.php*
// @include *.administrator.de/ftopic*.html
Jetzt sollte nach der Modifikation bitte noch folgende Zeile hinzugefügt werden,da wir ja für die Modifikation selber gerade stehen wollen und niemand anderen die Verantwortung in die Schuhe schieben wollen für die Modifikation die wir gemacht haben.
Das sieht hier vorher so aus
// original file by Unarmed
// found at: http://s93731204.onlinehome.us/firefox/greasemonkey/phpbb.ignore.user.js
// modified for geoclub.de by London Rain
// modified for phpBB3 by PHerison
und sollte nach unserer Bearbeitung so aussehen
// original file by Unarmed
// found at: http://s93731204.onlinehome.us/firefox/greasemonkey/phpbb.ignore.user.js
// modified for geoclub.de by London Rain
// modified for administrator.de by Hightop One
// modified for phpBB3 by PHerison
Das .txt Dokument können wir jetzt speichern und dann sollten es so umbenennen,dass wir erkennen für welches Forum es gedacht sein soll,dieses könnte dann so aussehen user_hide_for_httpwwwadministrator.user.js. Wichtig hierbei ist es das aus der Dateiendung von dem .txt Dokument aus einen .txt jetzt ein .js wird,weil es sonst nicht funktionieren wird.
Damit hätten wir jetzt das Script fertig und müssen es nur noch in den Firefox einbinden damit wir es nutzen können,dass ist sehr einfach und das Add-On Greasemonkey wird uns dabei helfen.
Wir starten jetzt den Firefox und haben sichergestellt,dass das Add-On Greasemonkey installiert wurde und unser Script fertig ist und die Dateiendung .js aufweist.
Nun klicken wir oben Links im Firefox auf "Datei" suchen uns im Menü die Option "Datei öffnen...." heraus und klicken es an,dann gehen wir in den Verzeichnispfad wo wir unser Script abgelegt haben und öffnen es.
Das Add-on Greasemonkey wird seinen Dienst tun und es geht ein Pop-up Fenster auf indem wir gefragt werden,ob wir das Script installieren möchten,dieses bestätigen wir und können ab sofort unser Script in dem Forum nutzen für welches wir es Modifiziert haben.
Die Funktion innerhalb eines Forums zu nutzen ist recht einfach.Es sind in der User Darstellung von einem Beitrag bei jedem User ein graues X zu sehen,auf welches man nur Klicken muss und der User wird damit auf die Ignore Liste des Scriptes gesetzt und nach einer Aktualisierung werden wir den User nicht mehr lesen müssen.
Falls wir doch mal einen Ignorierten User lesen wollen steht uns nach dem Ignorieren die Option "Toggle Display" zur Verfügung auf welche nur geklickt werden muss um einen Beitrag wieder sichtbar zu machen.
Ich hoffe ich konnte mit dieser Anleitung ein paar Menschen glücklicher machen und verbleibe mit einem
freundlichen Gruß
Hightop One
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 106375
Url: https://administrator.de/contentid/106375
Ausgedruckt am: 24.11.2024 um 12:11 Uhr
4 Kommentare
Neuester Kommentar