[DEV] Remove Inner Quotes Button (0.0.1)

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
Nuramon
Mitglied
Beiträge: 250
Registriert: 05.02.2012 21:45
Wohnort: Solingen
Kontaktdaten:

[DEV] Remove Inner Quotes Button (0.0.1)

Beitrag von Nuramon »

Mod Name: Remove Inner Quotes Button
Mod Version:: 0.0.1
Autor: Nuramon

Mod Beschreibung::
  • Ein einfacher Button, um innere Zitate in verschachtelten Zitaten zu entfernen.
    Es ist ein einfaches Feature um Usern zu helfen, keine Posts mit kaputten BBCodes zu schreiben ;)
    (Japs, ich habe festgestellt, dass ziemlich viele User von Standard-Foren es nicht hinkriegen, die Tags richtig zu benutzen. Sie löschen einfach die erste Zeile und lassen völlig kaputten Code stehen^^)
    Also wenn das Forum eine maximale Zahl an verschachtelten Zitaten hat, dann ist dieser Button noch nützlicher. User können einfach die Zitate, die zu viel sind, per Klick entfernen.
Features:
  • Button, um alle inneren Zitate nach dem ersten zu entfernen.
Screenshots:
Vorher:
[ externes Bild ]
Nachher:
[ externes Bild ]

Vielleicht geplante Features:
Ich hab ein paar Ideen in meinem Kopf, wie man das ganze hier noch erweitern könnte und so einen ganzen MOD draus macht.
Aber irgendwie fehlt mir der Antrieb, für mich brauche ich das nicht. Wenn aber wer Interesse an einem der Dinge hat oder es für sehr sinnvoll erachtet, dann nur zu, ich mach das gerne (:
  • zusätzliche Buttons, um erst ab dem zweiten (dritten, vierten, ...) verschachtelten Zitat zu entfernen.
  • Das Script in den OnLoad einbinden, sodass schon beim Öffnen des Posting-Editors die inneren Zitate gar nicht mehr drin stehen.
  • -> Konfigurierbare Tiefe der Zitate im ACP
  • -> Konfigurierbare Ja/Nein-Option des Users, ob er das automatische rauslöschen für sich haben möchte
  • -> Konfigurierbare Tiefe der automatischen Entfernung, vom User selbst festlegbar
  • Die BBCode-Reihenfolge mit den Tags überprüfen, um eine ErrorBox anzuzeigen, falls das Script die Quotes nicht löschen kann, weil Tags fehlen oder ähnliches
Installationsanweisung: (für prosilver)

open styles/prosilver/posting_editor.html

Find:

Code: Alles auswählen

	<div id="message-box">
		<textarea <!-- IF S_UCP_ACTION and not S_PRIVMSGS and not S_EDIT_DRAFT -->name="signature" id="signature" style="height: 9em;"<!-- ELSE -->name="message" id="message"<!-- ENDIF --> rows="15" cols="76" tabindex="4" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onfocus="initInsertions();" class="inputbox">{MESSAGE}{DRAFT_MESSAGE}{SIGNATURE}</textarea>
	</div>
Add AFTER:

Code: Alles auswählen

	<div>
		<input type="button" class="btnlite" name="delZitate" value="Innere Zitate entfernen"
			onclick="
				///// Some Variables ////////////////////////////////////////////////
				var textarea = document.getElementsByName('message')[0];
				var text = textarea.value;
				var inside = 0;


				///// Replace the quotes throw number of depth  /////////////////////
				for(var i=0; i<text.length; i++) {
					if(text.indexOf('[quote')==i) {
						text = text.replace('[quote', '[' + inside + '-rep');
						inside++;
					}
					else if(text.indexOf('[/quote')==i) {
						inside--;
						text = text.replace('[/quote', '[/' + inside + '-rep');
						if(inside<0) {
							inside = 0;
						}
					}
				}

				///// Replace all with depth 1 or more //////////////////////////////
				while(text.indexOf('[1-rep') != -1) {
					var start = text.indexOf('[1-rep');
					var end = text.indexOf('[/1-rep');
					text = text.substring(0,start) + text.substr(end+8);
				}

				///// Convert the outer quote(s) back ///////////////////////////////
				while(text.indexOf('0-rep') != -1) {
					text = text.replace('0-rep', 'quote');
				}

				while(text.indexOf('\n\n\n') != -1) {
					text = text.replace('\n\n\n', '\n\n');
				}

				///// Running throw the text to remove all \n after each quote //////
				var endtext = '';
				for(var i=0; i<text.length; i++) {
					if(text.indexOf('[quote') == i) {
						endtext += text.substring(0,i+5);
						text = text.substr(i+5);
						while(text.indexOf(']') == text.indexOf(']\n')) {
							text = text.replace(']\n', ']');
						}
						i = 0;
					}
				}
				endtext += text;
				text = endtext;

				textarea.value = text;	" />
	</div>
Das Pinke Forum
Das Pinke Forum - werde Teil einer freundlichen Community, die dir bei Fragen rund um Liebe, Sex, Ernährung, Schule oder bei Problemen aller Art zur Seite steht! Verfasse Beiträge, erstelle Threads und lern nette Leute kennen; kostenlos und toll betreut.
Benutzeravatar
Nuramon
Mitglied
Beiträge: 250
Registriert: 05.02.2012 21:45
Wohnort: Solingen
Kontaktdaten:

Re: [DEV] Remove Inner Quotes Button (0.0.1)

Beitrag von Nuramon »

Kein Interesse an sowas?
Schade eigentlich...
Das Pinke Forum
Das Pinke Forum - werde Teil einer freundlichen Community, die dir bei Fragen rund um Liebe, Sex, Ernährung, Schule oder bei Problemen aller Art zur Seite steht! Verfasse Beiträge, erstelle Threads und lern nette Leute kennen; kostenlos und toll betreut.
Antworten

Zurück zu „[3.0.x] Mods in Entwicklung“