[2.1] Quickreply 1.5

rellek

relativ sensationell
Teammitglied
Diese Modifikation fügt am Ende eines Themas ein Feld für eine Schnellantwort ein.

So, das ist die langersehnte "1.3", die nun doch 1.5 heißt, weil sich ne Menge an der Technologie geändert hat.
Alles, was man früher (1.2) als gegeben hinnehmen musste, ist jetzt optional.

Features:
-- Komplett deaktivierbar
-- Optional vor Gästen versteckbar
-- Verstecken, wenn man keine Berechtigung zur Antwort hat (optional)
-- BBCode-Buttons-Anzeige (deaktivierbar)
-- Posticon-Anzeige (deaktivierbar)
-- Smily-Anzeige (deaktivierbar)
-- Wenn man als letztes auf diesen Thread geantwortet hat, Q-Reply verstecken
(NoSelfReply, optional)
-- (Optional) Anzeige auf jeder oder nur auf letzter Seite eines Themas
[Bräke angrins]
-- Wenn ein Gast schreiben darf, wird Eingabefeld für Benutzernamen angezeigt
-- Komplett auf Sprachvariablen basierend
-- Nur 2 Queries mehr im Thread

Getestet mit wBB 2.1.0 und 2.1.1

Sollte soweit stabil laufen.

Im Archiv gibt es auch für alles Anleitungen:
- Neuinstallation
- Update von der Ur-Version von jsh
- Update von der 1.2 von mir
- Deinstallation

Viel Freude damit.

Demo: Im Anhang
 

Anhänge

  • Quick-Reply1_5.zip
    14,7 KB · Aufrufe: 201
  • _ild1.jpg
    _ild1.jpg
    110,1 KB · Aufrufe: 213

rellek

relativ sensationell
Teammitglied
Hier noch die Optionalität für jeden User einzeln, abzustellen im Profil.

ACHTUNG:
Es wurde getestet, dass es funktioniert. Dennoch ist eine 100%ige Kompatibilität nicht gewährleistet!

1.Sprachvariabelnkategorie: usercp
Name: LANG_REGISTER_OPTIONS_QREPLYVIEW
Inhalt: Quick-Reply anzeigen?

2.Sprachvariabelnkategorie: usercp
Name: LANG_REGISTER_OPTIONS_QREPLYVIEW_DESC
Inhalt: Wenn diese Option gewählt ist, kannst du unter einem Thema direkt antworten.

# usercp_options_change.tpl #

Suche:
<tr align="left">
<td class="tablea"><span class="normalfont"><b>{$lang->items['LANG_REGISTER_OPTIONS_SHOWSIGNATURES']}</b></span><br /><span class="smallfont">{$lang->items['LANG_REGISTER_OPTIONS_SHOWSIGNATURES_DESC']}</span></td>
<td class="tablea"><select name="r_showsignatures">
<option value="1"$showsignatures[1]>{$lang->items['LANG_REGISTER_OPTIONS_YES']}</option>
<option value="0"$showsignatures[0]>{$lang->items['LANG_REGISTER_OPTIONS_NO']}</option>
</select></td>
</tr>


Füge darüber ein:
<tr align="left">
<td class="tableb"><span class="normalfont"><b>{$lang->items['LANG_REGISTER_OPTIONS_QREPLYVIEW']}</b></span><br /><span class="smallfont">{$lang->items['LANG_REGISTER_OPTIONS_QREPLYVIEW_DESC']}</span></td>
<td class="tablea"><select name="r_qreplyview">
<option value="1"$qreplyview[1]>{$lang->items['LANG_REGISTER_OPTIONS_YES']}</option>
<option value="0"$qreplyview[0]>{$lang->items['LANG_REGISTER_OPTIONS_NO']}</option>
</select></td>
</tr>

# usercp.php #

Suche:
if(isset($_POST['r_showsignatures'])) $r_showsignatures = wbb_trim($_POST['r_showsignatures']);

Füge darüber ein:
if(isset($_POST['r_qreplyview'])) $r_qreplyview = wbb_trim($_POST['r_qreplyview']);

Suche:
showsignatures='".intval($r_showsignatures)."',

Füge davor ein:
qreplyview='".intval($r_qreplyview)."',

Suche;
$r_showsignatures = $wbbuserdata['showsignatures'];

Füge darüber ein:
$r_qreplyview = $wbbuserdata['qreplyview'];

Suche:
if(isset($r_showsignatures)) $showsignatures[$r_showsignatures]=" selected=\"selected\"";

Füge darüber ein:
if(isset($r_qreplyview)) $qreplyview[$r_qreplyview]=" selected=\"selected\"";

# thread.tpl #

Suche:
$quickreply

und ersetzen mit:
<if($wbbuserdata[qreplyview] == 1)>
<then>
$quickreply
</then>
</if>

Folgenden Query ausführen (X durch Boardnummer ersetzen):
ALTER TABLE `bbX_users` ADD `qreplyview` INT( 11 ) NOT NULL default '1' ;
Wenn er standardmäßig aus sein soll, folgenden Query:
ALTER TABLE `bbX_users` ADD `qreplyview` INT( 11 ) NOT NULL default '0' ;
und wenn es schon zu spät ist (schon den falschen Query ausgeführt):
ALTER TABLE `bbX_users` CHANGE `qreplyview` `qreplyview` TINYINT( 11 ) DEFAULT 'Y' NOT NULL;
Y = 1 = ja; 0 = nein

fertig ...
 

rellek

relativ sensationell
Teammitglied
!!! WER EINEN LAUFZEITFEHLER HAT !!!

Original von RIPDoc
Moin,

wegen dem Fehler "Objekt erwartet"!!

suche im Template thread_quickreply:
Code:
<td align="left"><textarea name="message" rows="20" cols="80" onchange="getActiveText(this)" onclick="getActiveText(this)" onfocus="getActiveText(this)">$message</textarea></td>

und ersetze es mit:
Code:
<td align="left"><textarea name="message" rows="20" cols="80">$message</textarea></td>

dann suche im Template bbcode_script:

Code:
<if($filename=="addreply.php" || $filename=="editpost.php")>
<then>
var postmaxchars = $postmaxchars;
function validate(theform) {
 if (theform.message.value=="") {
  alert("{$lang->items['LANG_POSTINGS_JS_ERROR2']}");
  return false;
 }
 return messagetolong(theform);
}
</then>
</if>

und füge darunter ein:
Code:
<if($filename=="quickreply.php" || $filename=="quickreply_config.php")>
<then>
var postmaxchars = $postmaxchars;
function validate(theform) {
 if (theform.message.value=="") {
  alert("{$lang->items['LANG_POSTINGS_JS_ERROR2']}");
  return false;
 }
 return messagetolong(theform);
}
</then>
</if>

Done... Have Phun ;)
 

rellek

relativ sensationell
Teammitglied
das html aktiviert ist.

template: thread_quickreply, suche:
Code:
</form>

davor einfügen:
Code:
<input type="hidden" name="disablehtml" value="1" />
 
also bei mir ich bin Admin und hatte HTML-Schreibrechte, ging aber auch nicht.

Habe deien Code nei und funktzt ohne Probleme

thx:yes:

dragon :yo
 

Deacon Frost

The Bl00d-G0d La Magra<br />(Boardberater)
Is ja COOOOOOOOL! Die Option, dass die User das wahlweise im Profil deaktivieren können funzt auch im 2.2.! 8)

KLASSE! Vielen Dank! :yo
 
Hi wollte mal Fragen ob es schon was neues zu dem Datei Anhängen gibt , wolltest du doch noch machen?

Ich hoffe das es sich dann nicht mit dem Attachment Hack von Merides in die Quere kommt?

Gruss
 

rellek

relativ sensationell
Teammitglied
hallo,

wenn ich den bald(tm) mal mache, dann wird die wbb-funktion verwendet werden, wenn merides also die attachments umgecodet hat, wirds so funktionieren...
 
Das heist also wenn du machst funzt es auch mit dem Attachment Hack von Merides und es können dort mehrer angehängt werden?

Habe ich das so richtig verstanden?

Gruss
 
Oben