Seite 1 von 2
Mindestlänge in bestimmten Foren
Verfasst: 21.07.2011 16:43
von Secretly
Hallo,
gibt es die Möglichkeit, dass man beim Erstellen bzw. Bearbeiten von Foren einstellen kann, ob die Mindestlänge im jeweiligen Forum erreicht werden muss oder nicht? Ich habe in meinem Forum halt Bereiche wo es eine Mindestlänge geben soll und wo nicht. Daher ist die Option der allgemeinen Mindestlänge bei mir leider nicht sehr hilfreich
Für Tipps oder Hinweise wäre ich dankbar
Liebe Grüße Secretly
Re: Mindestlänge in bestimmten Foren
Verfasst: 28.07.2011 00:12
von Secretly
Ich hoffe ich werde nicht gesteinigt
http://www.phpbbhacks.com/download/1681 wäre ein Hack für Phpbb2 und ich weiß nicht, ob dieser die allgemeine Forenmindestlänge betrifft, welche bei Phpbb3 generell eingestellt werden kann oder es sich auf Foren beschränken lässt.
Außerdem habe ich noch
viewtopic.php?t=168173 gefunden, jedoch habe ich zig Foren und Unterforen, ich kann sie nicht alle in diesen Code einbauen.
Weder bei Google, Phpbbhacks oder dergleichen habe ich etwas passendes gefunden, gibt es wirklich gar keine Möglichkeit?
Re: Mindestlänge in bestimmten Foren
Verfasst: 03.08.2011 21:17
von Secretly
Ich habe den Hack für mein jetziges Wbblite zusammengesucht, kann man den vielleicht für Phpbb3 "umbauen" oder ähnliches? Leider kenne ich mich einfach noch nicht mit den Dateien und wo was ist, sonst würde ich es vielleicht irgendwie selbst versuchen, aber vielleicht hilft es jemanden der Lust hat so etwas zu basteln.
Code: Alles auswählen
acp/board.php
--------------
Suche:
isboard,invisible,
Füge DANACH ein:
mindpostlaeng,mindpostlaengzeichen
--------------
Suche:
'$isboard','$invisible'
Füge DANACH ein:
,'$mindpostlaeng','$mindpostlaengzeichen'
--------------
Suche:
isboard='$isboard', invisible='$invisible'
Füge DANACH ein:
, mindpostlaeng='$mindpostlaeng', mindpostlaengzeichen='$mindpostlaengzeichen'
--------------
Suche:
$sel_daysprune[$board['daysprune']]=" selected";
$sel_postorder[$board['postorder']]=" selected";
Füge DANACH ein:
$sel_mindpostlaeng[$board['mindpostlaeng']]=" selected";
$sel_mindpostlaengzeichen[$board['mindpostlaengzeichen']]=" selected";
##################################################################################
acp/templates/board_add.tpl
Suche:
<tr class="secondrow">
<td><b>Nach wieviel Klicks ist ein Thema "hot":</b><br>(0 = Forumstandard)</td>
<td><input type="text" name="hotthread_view" maxLength="5" value="0"></td>
</tr>
Füge DANACH ein:
<!-- Mindestpostingzeichenanzahl -->
<tr class="firstrow">
<td><b>Mindespostingzeichenanzahl aktivieren?</b></td>
<td><select name="mindpostlaeng">
<option value="1" selected>Ja</option>
<option value="0">Nein</option>
</select></td>
</tr>
<tr class="secondrow">
<td><b>Mindestpostingzeichen</b><br>(0 = Deaktiviert)</td>
<td><input type="text" name="mindpostlaengzeichen" value="0" maxLength="10"></td>
</tr>
<!-- Mindestpostingzeichenanzahl-->
##################################################################################
acp/templates/board_edit.tpl
Suche:
<tr class="secondrow">
<td><b>Nach wieviel Klicks ist ein Thema "hot":</b><br>(0 = Forumstandard)</td>
<td><input type="text" name="hotthread_view" value="$board[hotthread_view]" maxLength="5"></td>
</tr>
Füge DANACH ein:
<!-- Mindestpostingzeichenanzahl -->
<tr class="firstrow">
<td><b>Mindespostinganzahl aktivieren?</b></td>
<td><select name="mindpostlaeng">
<option value="1"$sel_mindpostlaeng[1]>Ja</option>
<option value="0"$sel_mindpostlaeng[0]>Nein</option>
</select></td>
</tr>
<tr class="secondrow">
<td><b>Mindestpostingzeichen</b><br>(0 = Deaktiviert)</td>
<td><input type="text" name="mindpostlaengzeichen" value="$board[mindpostlaengzeichen]" maxLength="10"></td>
</tr>
<!-- Mindestpostingzeichenanzahl-->
##################################################################################
newthread.php
Suche:
if(!$topic || !$message) eval ("\$error .= \"".$tpl->get("newthread_error1")."\";");
if(flood_control($wbbuserdata['userid'],$REMOTE_ADDR,$wbbuserdata['avoidfc'])) eval ("\$error .= \"".$tpl->get("newthread_error3")."\";");
if($wbbuserdata['maxpostimage']!=-1 && substr_count(strtolower($message),"[img]")>$wbbuserdata['maxpostimage']) eval ("\$error .= \"".$tpl->get("newthread_error4")."\";");
Füge DANACH ein:
#Mindestpostingzeichenanzahl
if($board['mindpostlaeng'] && $board['mindpostlaengzeichen'] != 0 && strlen($message) < $board['mindpostlaengzeichen']) eval ("\$error .= \"".$tpl->get("newthread_error5")."\";");
#Mindestpostingzeichenanzahl
##################################################################################
addreply.php
Suche:
if(!$message) eval ("\$error .= \"".$tpl->get("newthread_error1")."\";");
if(flood_control($wbbuserdata['userid'],$REMOTE_ADDR,$wbbuserdata['avoidfc'])) eval ("\$error .= \"".$tpl->get("newthread_error3")."\";");
if($wbbuserdata['maxpostimage']!=-1 && substr_count(strtolower($message),"[img]")>$wbbuserdata['maxpostimage']) eval ("\$error .= \"".$tpl->get("newthread_error4")."\";");
Füge DANACH ein:
#Mindestpostingzeichenanzahl
if($board['mindpostlaeng'] && $board['mindpostlaengzeichen'] != 0 && strlen($message) < $board['mindpostlaengzeichen']) eval ("\$error .= \"".$tpl->get("newthread_error5")."\";");
#Mindestpostingzeichenanzahl
ich wäre seeeehr dankbar

Re: Mindestlänge in bestimmten Foren
Verfasst: 20.08.2011 12:10
von Pumba
Eine solche Modifikation würde mich auch interessieren, da ich genau wie Secretly einige Bereiche habe, wo eine Mindestpostlänge gelten soll. Ich hab nun schon in vielen verschiedenen Mod-Sammlungen nachgeschaut, aber bisher nichts gefunden, womit man das erreichen könnte. Es wäre schön, wenn sich jemand bereit erklären würde, so etwas zu programmieren, bzw. bereits einen solchen Mod kennen würde und uns verrät, wo man ihn findet.
Besten Dank schon einmal im Voraus.

Re: Mindestlänge in bestimmten Foren
Verfasst: 01.09.2011 17:45
von so-calledKiddo
Ich würde mich meinen beiden Vorgängern da gern anschließen, ich bin ebenfalls auf der Suche nach einer solchen Mod!

Da ich nun mittlerweile auch schon einige Zeit das Internet durchforstet habe und auf diesen Beitrag gestoßen bin, dachte ich mir, schließ ich mich einfach an, in der Hoffnung unsere Hilferufe werden erhört. Man will den User ja ungern dazu verdonnern im Bereich für alltägliches Geplänkel an die 2000 Zeichen zu tippen.^^ Da es sich aber um ein Rollenspielboard handelt, wäre die Mindestpostinglänge zumindest für den Hauptbereich des Forums schon sehr wichtig.
Demnach wäre auch ich wirklich dankbar, wenn sich jemand in der Not finden würde, der in dieser Hinsicht einen kleinen Tipp, wenn nicht sogar die Hilfe für das Problem parat hätte.
Viele liebe Grüße, so-calledKiddo
Re: Mindestlänge in bestimmten Foren
Verfasst: 01.09.2011 23:21
von AmigaLink
Die Lösung für euer Problem habe ich hier gepostet. >>>
http://www.amigalink.de/viewtopic.php?f=38&t=1451 
Re: Mindestlänge in bestimmten Foren
Verfasst: 02.09.2011 00:30
von Secretly
Super Dankeschön, dass ist wirklich sehr hilfreich

Re: Mindestlänge in bestimmten Foren
Verfasst: 02.09.2011 00:36
von so-calledKiddo
Auch von mir vielen Dank!

Das sieht doch sehr vielversprechend aus.
Re: Mindestlänge in bestimmten Foren
Verfasst: 02.09.2011 16:54
von BNa
Danke für das Snippet. Nur eins:
Code: Alles auswählen
$no_limit_forums = array(2,3);
$config['min_post_chars'] = (in_array($forum_id, $no_limit_forums)) ? 0 : $config['min_post_chars'];
So kann man sich das explode sparen

Re: Mindestlänge in bestimmten Foren
Verfasst: 02.09.2011 18:22
von AmigaLink
BNa hat geschrieben:Danke für das Snippet. Nur eins:
Code: Alles auswählen
$no_limit_forums = array(2,3);
$config['min_post_chars'] = (in_array($forum_id, $no_limit_forums)) ? 0 : $config['min_post_chars'];
So kann man sich das explode sparen

Das ist vollkommen richtig. Und aus Sicht der Performance sogar ein paar Millisekunden schneller.

Ich wollte es aber, für Leute die NULL Ahnung von PHP haben, möglichst einfach halten. Deswegen habe ich den Umweg über explode() gemacht. Denn
$no_limit_forums = array(2,3);
sieht komplizierter aus als
$no_limit_forums = '2,3';
.

Ich werde es bei mir aber auch anpassen. Denn genau Betrachtet macht es -auch für leihen- keinen Unterschied. Von daher überwiegt der minimale Performance unterschied.