Προσθήκη νέο BBcode στο phpBB

Μια περιοχή για το phpBB, την δημοφιλή δωρεάν πλατφόρμα για forums

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
EkLekTos
WebDev Moderator
Δημοσιεύσεις: 7421
Εγγραφή: 07 Απρ 2005 15:44
Τοποθεσία: Inside the Effects
Επικοινωνία:

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από EkLekTos » 26 Μαρ 2007 05:12

Έχω δει στο freestuff και σε άλλα site που κάποιες φορές όταν θέλουν να γράψουν κάτι άσχετο με το θέμα χρησμιοποιούνε το παρακάτω tag [offtopic]text[/offtopic] , σκέφτηκα λοιπόν χωρίς να έχω να έχω γνώσεις προγραμματισμού php και με ότι θυμάμαι από παλιά που ασχολιούμουν με phpbb να κάτσω να προσπαθήσω να φτιάξω αυτό το mod για το phpBB. Μπορεί σε κάποιους να φανεί χαζό αλλά μπορώ να πω πως μου πήρε πολύ ωρα να το φτάσω στο 99% και λέω στο 99% γιατί μια λεπτομέρια δεν λειτουργεί, αλλά αυτό θα το δούμε παρακάτω.
Τα αρχεία που θα κάνουμε επεξεργασία είναι τα ακόλουθα
root/includes/bbcode.php
root/posting.php
root/templates/theme/bbcode.tpl
root/templates/theme/posting_body.tpl
root/language/lang_xxx/lang_main.php

Πριν κάνουμε οτιδήποτε κρατάμε backup των αρχείων που θα επεξεργαστούμε

Ανοίγουμε ---

root/includes/bbcode.php

Βρίσκουμε ---

Κώδικας: Επιλογή όλων

// [QUOTE] and [/QUOTE] for posting replies with quote, or just for quoting stuff.
	$text = str_replace("[quote:$uid]", $bbcode_tpl['quote_open'], $text);
	$text = str_replace("[/quote:$uid]", $bbcode_tpl['quote_close'], $text);
Απο κάτω προσθέτουμε ---

Κώδικας: Επιλογή όλων

// [OFF] and [/OFF] for posting offtopic text.
$text = str_replace("[offtopic]", $bbcode_tpl['offtopic_open'], $text);
$text = str_replace("[/offtopic]", $bbcode_tpl['offtopic_close'], $text); 
-------- Αποθηκεύουμε και κλείνουμε --------
Ανοίγουμε ---

root/posting.php

Βρίσκουμε ---

Κώδικας: Επιλογή όλων

"L_BBCODE_F_HELP" => $lang['bbcode_f_help'],
Aπό κάτω προσθέτουμε ---

Κώδικας: Επιλογή όλων

'L_BBCODE_X_HELP' => $lang['bbcode_x_help'],
-------- Αποθηκεύουμε και κλείνουμε --------
Ανοίγουμε ---
root/templates/theme/bbcode.tpl

Βρίσκουμε ---

Κώδικας: Επιλογή όλων

<!-- BEGIN email --><a href="mailto&#58;&#123;EMAIL&#125;">&#123;EMAIL&#125;</a><!-- END email -->
Aπό κάτω προσθέτουμε ---

Κώδικας: Επιλογή όλων

<!-- BEGIN offtopic_open -->
<table width="50%" border="0" align="left" cellpadding="3" cellspacing="5">
   <tr>   
      <td><span class="quote"><b>Offtopic</b></span></td>
   </tr>
   <tr>
      <td class="quote"><font color="brown">
<!-- END offtopic_open -->
<!-- BEGIN offtopic_close -->
</font>
      </td>
   </tr>
   <td><span class="quote"><b>End Offtopic</b></span></td>
</table><span class="postbody">
<!-- END offtopic_close --> 
-------- Αποθηκεύουμε και κλείνουμε --------
Ανοίγουμε ---

root/templates/theme/posting_body.tpl

Βρίσκουμε ---

Κώδικας: Επιλογή όλων

f_help = "&#123;L_BBCODE_F_HELP&#125;";
Απο κάτω προσθέτουμε ---

Κώδικας: Επιλογή όλων

x_help = "&#123;L_BBCODE_X_HELP&#125;";

Βρίσκουμε ---

bbtags = new

Κώδικας: Επιλογή όλων

Array&#40;'&#91;b&#93;','&#91;/b&#93;','&#91;i&#93;','&#91;/i&#93;','&#91;u&#93;','&#91;/u&#93;','&#91;quote&#93;','&#91;/quote&#93;','&#91;code&#93;','&#91;/code&#93;','&#91;list&#93;','&#91;/list&#93;','&#91;list=&#93;','&#91;/list&#93;','&#91;img&#93;','&#91;/img&#93;','&#91;url&#93;','&#91;/url&#93;'&#41;;
Προσθέτουμε στην ίδια γραμμή μετά το '[/url]' ---

Κώδικας: Επιλογή όλων

,'&#91;offtopic&#93;','&#91;/offtopic&#93;'
Βρίσκουμε ---

Κώδικας: Επιλογή όλων

<td><span class="genmed"> 
			  <input type="button" class="button" accesskey="w" name="addbbcode16" value="URL" style="text-decoration&#58; underline; width&#58; 40px" onClick="bbstyle&#40;16&#41;" onMouseOver="helpline&#40;'w'&#41;" />
			  </span></td>
Απο κάτω προσθέτουμε ---

Κώδικας: Επιλογή όλων

<td><span class="genmed"> 
			  <input type="button" class="button" accesskey="x" name="addbbcode18" value="Offtopic" style="text-decoration&#58; width&#58; 60px" onClick="bbstyle&#40;18&#41;" onMouseOver="helpline&#40;'x'&#41;" />
			  </span></td>
Βρίσκουμε ---

Κώδικας: Επιλογή όλων

<select name="addbbcode18" onChange="bbfontstyle&#40;'&#91;color=' + this.form.addbbcode18.options&#91;this.form.addbbcode18.selectedIndex&#93;.value + '&#93;', '&#91;/color&#93;'&#41;;this.selectedIndex=0;" onMouseOver="helpline&#40;'s'&#41;">
Το αντικαθιστούμε με ---

Κώδικας: Επιλογή όλων

<select name="addbbcode20" onChange="bbfontstyle&#40;'&#91;color=' + this.form.addbbcode20.options&#91;this.form.addbbcode20.selectedIndex&#93;.value + '&#93;', '&#91;/color&#93;'&#41;;this.selectedIndex=0;" onMouseOver="helpline&#40;'s'&#41;">
Βρίσκουμε ---

Κώδικας: Επιλογή όλων

</select> &nbsp;&#123;L_FONT_SIZE&#125;&#58;<select name="addbbcode20" onChange="bbfontstyle&#40;'&#91;size=' + this.form.addbbcode20.options&#91;this.form.addbbcode20.selectedIndex&#93;.value + '&#93;', '&#91;/size&#93;'&#41;;this.selectedIndex=0;" onMouseOver="helpline&#40;'f'&#41;">
Το αντικαθιστούμε με ---

Κώδικας: Επιλογή όλων

</select> &nbsp;&#123;L_FONT_SIZE&#125;&#58;<select name="addbbcode22" onChange="bbfontstyle&#40;'&#91;size=' + this.form.addbbcode22.options&#91;this.form.addbbcode22.selectedIndex&#93;.value + '&#93;', '&#91;/size&#93;'&#41;;this.selectedIndex=0;" onMouseOver="helpline&#40;'f'&#41;">
-------- Αποθηκεύουμε και κλείνουμε --------
Ανοίγουμε ---

root/language/lang_xxx/lang_main.php

Βρίσμουμε ---

Κώδικας: Επιλογή όλων

$lang&#91;'bbcode_f_help'&#93; = 'Font size&#58; &#91;size=x-small&#93;small text&#91;/size&#93;';
Από κάτω προσθέτουμε ---

Κώδικας: Επιλογή όλων

$lang&#91;'bbcode_x_help'&#93; = 'Offtopic text&#58; &#91;offtopic&#93;text&#91;/offtopic&#93;';
-------- Αποθηκεύουμε, κλείνουμε και ανεβάζουμε στο server τα αρχεία στους σωστούς φακέλους --------

Πριν κάνουμε οτιδήποτε κρατάμε backup των αρχείων που θα επεξεργαστούμε

Δείτε DEMO

Το πρόβλημα με το mod είναι πως όταν ανοίγεις νέο θέμα και πάει το ποντίκι πάνω στο button Offtopic θα έπρεπε να φαινόταν info για το button το οποιο δεν πέτυχα, αλλά θα το προσπαθήσω και τις επόμενες μέρες και να το φτάσω και στο 100%. Παρόλα αυτά ελπίζω να σας άρεσε .
Ευχαριστώ. :P
* Apple Technical Support Specialist *
* Apple Sales & Product Professional Certificate since 2011 * Εικόνα
Follow me @Twitter

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3393
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από mrpc » 26 Μαρ 2007 05:27

Έγινε βοήθημα ;)

Άβαταρ μέλους
EkLekTos
WebDev Moderator
Δημοσιεύσεις: 7421
Εγγραφή: 07 Απρ 2005 15:44
Τοποθεσία: Inside the Effects
Επικοινωνία:

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από EkLekTos » 26 Μαρ 2007 22:54

Αν κάποιος δεν έχει βάλει άλλα mod στην σελίδα τους ανεβάζω τα αρχεία έτσι ώστε απλά να κάνει αντικατάσταση των αρχείων και όχι χειροκίνητα τις αλλαγές.
Κρατήστε BACKUP πριν οτιδήποτε
Συνημμένα
Offtopic_Mod_phpBB.rar
(34.59 KiB) Μεταφορτώθηκε 775 φορές
* Apple Technical Support Specialist *
* Apple Sales & Product Professional Certificate since 2011 * Εικόνα
Follow me @Twitter

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από panosru » 26 Μαρ 2007 23:33

Oraios megale! Protino na mpei kai sto FS!

Άβαταρ μέλους
EkLekTos
WebDev Moderator
Δημοσιεύσεις: 7421
Εγγραφή: 07 Απρ 2005 15:44
Τοποθεσία: Inside the Effects
Επικοινωνία:

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από EkLekTos » 26 Μαρ 2007 23:35

Thanks Πάνο
Και εγώ το προτείνω γιατί όσο να'ναι το χρησιμοποιώ κιόλας εδώ :P

Edit: Βασικά η ιδέα μου ήρθε από το ποστ μου χθες http://www.freestuff.gr/forums/viewtopi ... 596#260596 :P
* Apple Technical Support Specialist *
* Apple Sales & Product Professional Certificate since 2011 * Εικόνα
Follow me @Twitter

panosru
WebDev Moderator
Δημοσιεύσεις: 1885
Εγγραφή: 13 Σεπ 2005 16:13
Τοποθεσία: Camp

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από panosru » 26 Μαρ 2007 23:39

Oson afora to 1% pou sou emhne tha to koitakso molis teleiosei to setup ton windows ston disko (epidi os synithos olo kai kapoia ***** tha kano kai tha katastrepso to symban :P)

Άβαταρ μέλους
EkLekTos
WebDev Moderator
Δημοσιεύσεις: 7421
Εγγραφή: 07 Απρ 2005 15:44
Τοποθεσία: Inside the Effects
Επικοινωνία:

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από EkLekTos » 27 Μαρ 2007 00:14

Ναι αν μπορείς γιατί στο onMouseOver ενώ τα έχω δηλώσει σωστά έπρεπε όταν πήγαινε το ποντίκι πάνω κουμπί να τράβαγε και να έδειχνε από το lang_main αυτό Offtopic text: [offtopic]text[/offtopic] ... Πολύ ώρα χθες το πάλευα αλλά αν είσαι φτωχός προγραμματιστικά είσαι άξιος της μοίρας σου όπως εγώ :P:P
* Apple Technical Support Specialist *
* Apple Sales & Product Professional Certificate since 2011 * Εικόνα
Follow me @Twitter

Άβαταρ μέλους
EkLekTos
WebDev Moderator
Δημοσιεύσεις: 7421
Εγγραφή: 07 Απρ 2005 15:44
Τοποθεσία: Inside the Effects
Επικοινωνία:

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από EkLekTos » 27 Μαρ 2007 02:46

Updated v0.2
Πριν έπρεπε να γράψεις [offtopic]text[/offtopic] σκέφτηκα λοιπόν να του προσθέσω άλλη μια παραλλαγή για αυτούς που βαριούνται να το γράψουν όλο, ακόμα θα μπορείτε να γράψετε [off]text[/off] ή και ακόμα (με ie μόνο) alt+x (ξέχασα να το αναφέρω στο προιγούμενο ποστ).

Ανοίγουμε ---

root/includes/bbcode.php

Βρίσκουμε ---

Κώδικας: Επιλογή όλων

// &#91;OFF&#93; and &#91;/OFF&#93; for posting offtopic text.
$text = str_replace&#40;"&#91;offtopic&#93;", $bbcode_tpl&#91;'offtopic_open'&#93;, $text&#41;;
$text = str_replace&#40;"&#91;/offtopic&#93;", $bbcode_tpl&#91;'offtopic_close'&#93;, $text&#41;;
Απο κάτω προσθέτουμε ---

Κώδικας: Επιλογή όλων

$text = str_replace&#40;"&#91;off&#93;", $bbcode_tpl&#91;'offtopic_open'&#93;, $text&#41;;
$text = str_replace&#40;"&#91;/off&#93;", $bbcode_tpl&#91;'offtopic_close'&#93;, $text&#41;;
-------- Αποθηκεύουμε και κλείνουμε --------

Ανοίγουμε ---

root/templates/theme/posting_body.tpl

Βρίσκουμε ---

Κώδικας: Επιλογή όλων

bbtags = new Array
Στην ίδια γραμμή βρίσκουμε ---

Κώδικας: Επιλογή όλων

bbtags = new Array&#40;'&#91;b&#93;','&#91;/b&#93;','&#91;i&#93;','&#91;/i&#93;','&#91;u&#93;','&#91;/u&#93;','&#91;quote&#93;','&#91;/quote&#93;','&#91;code&#93;','&#91;/code&#93;','&#91;list&#93;','&#91;/list&#93;','&#91;list=&#93;','&#91;/list&#93;','&#91;img&#93;','&#91;/img&#93;','&#91;url&#93;','&#91;/url&#93;','&#91;offtopic&#93;','&#91;/offtopic&#93;'
Μετά το '[offtopic]','[/offtopic]' προσθέτουμε στην ίδια γραμμή ---

Κώδικας: Επιλογή όλων

,'&#91;off&#93;','&#91;/off&#93;'
-------- Αποθηκεύουμε, κλείνουμε και ανεβάζουμε στον server τα αρχεία --------
:)
* Apple Technical Support Specialist *
* Apple Sales & Product Professional Certificate since 2011 * Εικόνα
Follow me @Twitter

Άβαταρ μέλους
EkLekTos
WebDev Moderator
Δημοσιεύσεις: 7421
Εγγραφή: 07 Απρ 2005 15:44
Τοποθεσία: Inside the Effects
Επικοινωνία:

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από EkLekTos » 27 Μαρ 2007 04:32

Updated v0.3
Έγιναν κάποιες αλλαγές στην εμφάνιση του πίνακα έτσι ώστε μην αποσπά την προσοχή του ο χρήστης, επίσης διορθώθηκε ένα λάθος, όταν συνέχιζες κανονικό κείμενο μετά το offtopic το έβγαζε απο δίπλα και όχι από κάτω (πιστεύω το έφτιαξα λίγο μπακάλικα :P ) επίσης οι διαστάσεις του πίνακα είναι ανάλογη με το κείμενο, πχ αν το κείμενο ειναι 2 λέξεις δεν θα σου βγει ο πίνακας όλο το ποστ αλλά όσο χρείζεται για αυτές τις 2 λέξεις.

Ανοίγουμε ---

root/templates/theme/bbcode.tpl

Βρίσκουμε ---

Κώδικας: Επιλογή όλων

<!-- BEGIN offtopic_open -->
<table width="50%" border="0" align="left" cellpadding="3" cellspacing="5">
   <tr>   
      <td><span class="quote"><b>Offtopic</b></span></td>
   </tr>
   <tr>
      <td class="quote"><font color="brown">
<!-- END offtopic_open -->
<!-- BEGIN offtopic_close -->
</font>
      </td>
   </tr>
   <td><span class="quote"><b>End Offtopic</b></span></td>
</table><span class="postbody">
<!-- END offtopic_close -->
Το αντικαθιστούμε με ---

Κώδικας: Επιλογή όλων

<!-- BEGIN offtopic_open -->
<table width="keyword" border="0" align="left" cellpadding="3" cellspacing="5">
   <tr>   
      <td><span class="quote"style="float&#58;left;filter&#58;alpha&#40;opacity=70&#41;;-moz-opacity&#58;.70;opacity&#58;.70;"><font size="1"><b>Offtopic start</b></span></td>
   </font></tr>
   <tr>
      <td class="quote"><span style="float&#58;left;filter&#58;alpha&#40;opacity=43&#41;;-moz-opacity&#58;.43;opacity&#58;.43;"><font size="1" color="#082136">
<!-- END offtopic_open -->
<!-- BEGIN offtopic_close -->
</font></span>
      </td>
   </tr>
   <td><span class="quote"style="float&#58;left;filter&#58;alpha&#40;opacity=70&#41;;-moz-opacity&#58;.70;opacity&#58;.70;"><font size="1"><b>Offtopic end</b></span></td>
</font></table><span class="postbody">
<br></br>
<br></br>
<!-- END offtopic_close --> 
Δείτε DEMO
* Apple Technical Support Specialist *
* Apple Sales & Product Professional Certificate since 2011 * Εικόνα
Follow me @Twitter

mariosal
Honorary Member
Δημοσιεύσεις: 1473
Εγγραφή: 09 Νοέμ 2007 23:55

Προσθήκη νέο BBcode στο phpBB

Δημοσίευση από mariosal » 10 Φεβ 2008 11:35

Τέλειο! Your are a god! Thank you dear, lol.

Απάντηση

Επιστροφή στο “phpBB”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης