Großschreibung ("Schreien") unterbinden?

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt, um einen neuen Mod zu entwickeln, geht's in [3.0.x] Mods in Entwicklung weiter.
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.
buddha1
Mitglied
Beiträge: 13
Registriert: 20.09.2008 14:26

Großschreibung ("Schreien") unterbinden?

Beitrag von buddha1 »

Hallo!
Betreibe ein Forum und da stört mich momentan vor allem das STÄNDIGE SCHREIEN EINIGER USER oder andere, die meinen nach jedem Satz hundert Ausrufezeichen zu machen!!!!!!!!!!!!!!!!!!!!!!
Gibt es irgendeinen Mod der vor allem das Schreien verhindert?
Danke..
Gruß
Benutzeravatar
sepp71
Mitglied
Beiträge: 919
Registriert: 23.12.2006 00:03

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von sepp71 »

Uah, das würd' mich auch nerven.
Tut mir leid, dass ich nur zu den unwichtigeren Ausrufezeichen raten kann: Geht das nicht mit der Wortzensur? Mehrere Ausrufezeichen durch eines ersetzen?
Zum anderen Teil: Verwarnen oder disziplinierend nachfragen ("Wer schreit denn hier so rum?")?
Sepp

Edit: Oder ab dem dritten Ausrufezeichen durch einen Text ersetzen, wie z.B. [schrei rum] oder so? Das könnte ja durchaus in Kombination auftreten.
Benutzeravatar
ups
Mitglied
Beiträge: 990
Registriert: 06.12.2006 14:57
Wohnort: Basel/Freiburg Land

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von ups »

mit der wortzensur müßte das gehen
einfach ein stern hinter dem ! setzen (!*) und als ausgabe (!) setzen

wegen der großschreibung, da gibts sicherlich irgendwo ein script der die shift taste ausschaltet, ebenso die rechte maustaste. ich denke da findet sich sicher was bei google.

oder als variante: den/die user verbannen für 1-2 tage....das kühlt die meisten ab und ist eher zu empfehlen

ups
[FINAL] Impressum Dinseprinz 0.1.8 http://www.phpbb.de/community/viewtopic ... 52&start=0
[Final] Linkverzeichnis Mod Phpbb Annuaire v0.2.1 http://www.phpbb.de/community/viewtopic ... 17&start=0
Benutzeravatar
sepp71
Mitglied
Beiträge: 919
Registriert: 23.12.2006 00:03

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von sepp71 »

Der Lösungsvorschlag von ups hat es bei mir nicht gebracht:
Ich habs nicht nur mit Gründer bzw. Admin, sondern auch mit einem normalen Testuser versucht - die Ausrufezeichen wurden nicht vollständig zensiert.

Wenn man als Code

Code: Alles auswählen

*!!* 
=> ! benutzt, gibt es lustige Effekte, weil die Zahl der Ausrufezeichen halbiert wird (immer zwei werden zu einem). Mit ungeraden Zahlen kommt die Wortzensur nicht zurecht (*!!!*), auch dann nicht, wenn man zuerst die Wortzensur für drei Ausrufezeichen und dann die für zwei anwendet.
Schade.
Hat jemand noch einen Formulierungsidee? (Eine Mod wäre mir dafür dann aber wohl doch zu aufwendig).


Sepp
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von BNa »

Function Prattchet (thx to Rudy)

Ersetzt zB.
!!!!!!!!!!!!!!!!!! mit !
??????????????? mit ?
usf.

öffne

viewtopic.php

finde

Code: Alles auswählen

// Output the posts
$first_unread = $post_unread = false;
for ($i = 0, $end = sizeof($post_list); $i < $end; ++$i)
{ 
davor füge ein

Code: Alles auswählen

  function pratchett($text) {
    $text = preg_replace('/([\?!])[\s]+([\?!])/', '$1$2', $text); // 1
    $text = preg_replace('/!1+/', '!', $text); // 2
    $text = preg_replace('/\?[ß\/]+/', '?', $text); // 3
    $text = preg_replace('/\?[\']{2,}/', '?\'', $text); //4
    $text = preg_replace('/\?+/', '?', $text); // 5
    $text = preg_replace('/\!+/', '!', $text); // 6
    $text = preg_replace('/(\?\')+/', '?\'', $text); //7
    $text = preg_replace('/(\?!)+|(!\?)+/', '?!', $text); //8
    return $text;
  } 
Rudy hat geschrieben:1) Filtert die Leerzeichen heraus
2) ersetzt die zu schnell ausgelassenen Shifts beim Ausrufezeichen !!!!!!!!!!!!!!!!!!1111
3) ersetzt die zu schnell ausgelassenen Shifts beim Fragezeichen, deutsche und englische ???????????ßßß und ?????????///// Tastaturbelegung
4) ersetzt die zu schnell ausgelassenen Shifts beim Fragezeichen für die Italienische Tastatur, ist heikler, da es das Apostroph ist
5) und 6) ersetzen die mehrfachen ? und !
7) ersetzt für italienische Tastatur die mehrfachen ?', wenn jemand sowas getippt hat: ?'''??????' und es gefiltert zu ?'?' wurde
8 ) ersetzt ?!?!?!?! und !?!?!?! durch ?!
finde

Code: Alles auswählen

        'MESSAGE'            => $message, 
ersetze mit

Code: Alles auswählen

        'MESSAGE'            => pratchett($message), 
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von BNa »

Function Fix Shouting (thx to Boris)

Ersetzt konsequente GROSSSCHREIBUNG

öffne

viewtopic.php

finde

Code: Alles auswählen

// Output the posts
$first_unread = $post_unread = false;
for ($i = 0, $end = sizeof($post_list); $i < $end; ++$i)
{ 
davor füge ein

Code: Alles auswählen

    function fix_shouting($content)
    {
        $new_content    =    '';
        $content        =    preg_replace("/\r\n|\r|\n/", "\n", $content);

        $encoding        =    mb_detect_encoding($content);
        // $encoding         =    'ISO-8859-1';

        $lines            =    explode("\n", $content);

        foreach($lines AS $line)
        {
            $line    =    trim($line);

            // Wenn die Zeile nichts enthält (außer Umbrüche), brauchen wir nichts zu machen
            if($line != '')
            {
                $words    =    explode(" ", $line);

                foreach($words AS $word)
                {
                    if(mb_strtoupper(trim($word), $encoding) === trim($word))
                        $new_content .= mb_strtolower(trim($word), $encoding) . ' ';
                    else
                        $new_content .=     trim($word). ' ';
                }
            }

            $new_content .=    "\n";
        }
        unset($content, $encoding, $lines, $line, $words, $word);

        return $new_content;
    }  
finde

Code: Alles auswählen

        'MESSAGE'            => $message, 
ersetze mit

Code: Alles auswählen

        'MESSAGE'            => fix_shouting($message), 
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von BNa »

Diese beiden Snippets können auch gemixt werden, siehe hier
http://www.4seven.de/forum/6test/viewto ... p=236#p236

Da steht im Original eigentlich
Hallo !!!!!!!
HALLOO HAAAALLLOOOOOO ????!!!!
Hallo ??????
user: test / pw: testuser
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von Miriam »

Idee:

finde in der /includes/functions_content.php
  • Code: Alles auswählen

        if (sizeof($censors))
        {
            return preg_replace($censors['match'], $censors['replace'], $text);
        } 
Danach füge ein:
  • Code: Alles auswählen

        //Ausrufezeichen auf 1x "!" reduzieren
        $suchmuster = '/\!{1,}/';
        $ersetzung = '!';
        $text = preg_replace($suchmuster, $ersetzung, $text); 
Edit: Zu spät. :cry:
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
BNa
Valued Contributor
Beiträge: 3169
Registriert: 12.04.2010 23:51
Kontaktdaten:

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von BNa »

Miriam hat geschrieben:Edit: Zu spät.
Warum? Möglicherweise ist ja Deine Lösung in Verbindung mit dem klassischen censor_text und deren Engine performanter.
Einfach mal probieren. Das allerdings nur, wenn man reine !!!!!!! unterbinden will.
Benutzeravatar
sepp71
Mitglied
Beiträge: 919
Registriert: 23.12.2006 00:03

Re: Großschreibung ("Schreien") unterbinden?

Beitrag von sepp71 »

Herzlichen Dank Euch beiden! Wahnsinn, was Ihr da aufgetrieben habt (und peinlich, dass ich das nicht selbst gefunden hatte :oops: )
Da habe ich mit der Lektüre und dem Einbau nun etwas zu tun - natürlich melde ich mich mit meinem Ergebnis zurück.

Sepp
Antworten

Zurück zu „[3.0.x] Mod Suche/Anfragen“