Boardregelnhack V5_FINAL[wBB2.1.4] (mit bbcodes)

GLURAK
Titel: Boardregelnhack V5_FINAL[wBB2.1.4] (mit bbcodes)
Version: 5.0
Beschreibung: Demo:
ACP Option
Ausgabe (wenn neu markiert)
Rules posten (mit bbcodes)
Boardregeln Ausgabe (rules.php)

Dieser Hack fügt eine zusätzliche Seite im Board hinzu in der die Boardregeln des Boards stehen, die der User lesen muss damit er weiter im Board surfen kann, sonst hat er keinen Zutritt (abfrage). Sie können die Board Regeln jederzeit im ACP editieren und neu markieren d.h. die Abfrage kommt erneut bei allen Usern.
Hinweise & Anmerkungen:
Was ist neu ?
  • Man kann jetzt beim Erstellen der Boardregeln die BBCODES (BBCodes Buttons) verwenden.
  • HTML kann man immer noch verwenden, aber die <br /> sind jetzt nicht mehr nötig
  • Einige Rechtschreibfehler würden verbessert
  • Die Readme Datei ist jetzt viel kürzer (nur noch zwei Dateien zum editieren)
  • Diverse Fehler bei der Installation sind jetzt ausgeschlossen
  • Fehler bei der Registrierung gefixt (wenn Aktivierungslinks versendet wurde)

Achtung: Wer updatet soll dann bitte den zweiten Schritt der Readme machen.. also die global öffnen und editieren.. falls ihr noch etwas altes in der global.php von mir habt löscht es einfachen und fügt den neuen Code ein

Bei dem die BBcodes im ACP nicht gehen der soll bitte entweder aufs wBB2.1.4 updaten oder die rules_javascript.php von extra ordner im ordner cache/templates/acp selber manuell hochladen...

Das Copright könnt ihr aus der Template entfernen, allerdings nicht den HTML Kommentar!
Ich bitte um Feedback von jeden der es downgeloadet hat und eingebaut hat
----
Demo: http://www.anime-stream.board.de

weiter zum Download
Despoiler
alles prima!
einbau funktioniert ohne probleme!

danke für den hack! Augenzwinkern
Oob24
hab mir unten in der anleitung dieses update angeschaut.finde den eintrag nicht in meiner misc.php
GLURAK
Dann poste mir deine misc.php
außerdem ist das nicht so wichtig..
lass eben deine misc.php so wie die ist
Triple HHH
Ich habe mal versucht es neu einzubauen.
Ich hatte zwar noch eine alte Version drin,aber die habe ich eonfach schnell ausgebaut.(bis zum letzten Rest großes Grinsen )
Also ich habe es wie gesagt neu eingebaut und alles klappt perfekt!
Vielen Dank!
Masterog
Argh, habs auch mal installiert, aber bei mir gab es probleme unglücklich
Im ACP wird es korrekt verzeichnet, auhc den Text kann ich eingeben.
Aber ich komm nicht mehr in mein Forum. Statt dessen kommt ne Fehlermeldung, dass das template rule_message nicht existiert...
Ich habs aber hochgeladen und gecachet. Es wird auch in den templates angezeigt... was kann ich falsch gemacht haben?

EDIT: hat sich erledigt ^^
Nur noch ne Frage: Bekommt man das Addon problemlos wieder deinstalliert?
GLURAK
Ja schon warum hast du den eingebaut wenn du den gleich danach deinstallieren willst?
sehe dinn sin nicht aber naja
Zitat:
template rule_message nicht existiert

heißt das die template fehlt also importieren und cachen ..
hat sich aber erledigt wie gesagt..
wenn du den regelnhack deinstallieren möchtest muss du einfach nur die readme rückwerts lesen und folgende einträge aus der mysql datenbank löschen
die tabelle bbx_acprules löschen
die spalte readrules in der bbx_users löschen
in der tabelle bbx_acpmenuitems alles was mit regeln zu tun hat löschen sowie in der bbx_options
Masterog
Zitat:
Ja schon warum hast du den eingebaut wenn du den gleich danach deinstallieren willst?
Nein nein, ich will das nich direkt deinstallieren.
ich wollte nur die Gelegenheit nutzen und die Frage gleich mitstellen ^^

Vielen Dank großes Grinsen
Erazor
Kann ich hier von V3 auf die V5 updaten? Ich hab nirgends ne V4 gefunden. verwirrt

Sorry für die etwas blöde Frage Augenzwinkern
Triple HHH
v4 gabs nur für das wbb2.2
Aber keine Ahnung,ob man von v3 zu v5 updaten kann.
Ich hatte auch v3,aber ich habe es deinatlliert und v5 ganz neugemacht.
dragonchampion
ich finds aus der MISC net:

Mein Code:

wäre einer so net den umzuschreiben:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
216:
217:
218:
219:
220:
221:
222:
223:
224:
225:
226:
227:
228:
229:
230:
231:
232:
<?php
$filename="misc.php";

require("./global.php");
require("./acp/lib/class_parse.php");

if(isset($_REQUEST['action'])) $action=$_REQUEST['action'];
else $action="";
	
if($action=="finduser") {
 $lang->load("MISC");
 $options="";
 if(isset($_POST['send'])) {
  $result=$db->unbuffered_query("SELECT username FROM bb".$n."_users WHERE username LIKE '%".addslashes(wbb_trim($_POST['username']))."%'");	
  while($row=$db->fetch_array($result)) {
   $row['username']=htmlconverter($row['username']);
   $options.=makeoption($row['username'],$row['username']);	
  }
 }
 
 eval("\$tpl->output(\"".$tpl->get("finduser")."\");");	
}

if($action=="moresmilies") {
 $lang->load("MISC");
 $rightorleft = "left";
 if($showsmiliesrandom==1) $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode FROM bb".$n."_smilies ORDER BY RAND()");
 else $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode FROM bb".$n."_smilies ORDER BY smilieorder ASC");
 $j=0;
 $popup_smiliesbits="";
 while($row = $db->fetch_array($result)) {
  $row['smilietitle']=getlangvar($row['smilietitle'], $lang);
  $row['smiliename']=htmlconverter($row['smiliecode']);
  $row['smiliecode']=addcslashes($row['smiliecode'], "'\\");
  $row['smiliepath'] = replaceImagefolder($row['smiliepath']);
  
  eval ("\$popup_smiliesbits .= \"".$tpl->get("popup_smiliesbits")."\";");
   
  if ($rightorleft == "left") {
   $j++;
   $rightorleft = "right";
  }
  else $rightorleft = "left";
 }
 
 if($rightorleft == "right") $popup_smiliesbits .= "<td>&nbsp;</td><td>&nbsp;</td></tr>";	
 
 eval("\$tpl->output(\"".$tpl->get("popup_smilies")."\");");	
}

if($action=="whoposted") {
 if(!isset($threadid)) eval("error(\"".$lang->get4eval("LANG_GLOBAL_ERROR_FALSELINK")."\");");
 $lang->load("MISC");
  
 $posts = $db->unbuffered_query("SELECT
  COUNT(p.postid) AS posts, p.userid, u.username
  FROM bb".$n."_posts p
  LEFT JOIN bb".$n."_users u USING (userid)
  WHERE threadid='$threadid'
  GROUP BY p.userid
  ORDER BY posts DESC, u.username ASC");
 $posters="";
 $counter=0;
 $totalposts=0;
 while ($post = $db->fetch_array($posts)) {
  $totalposts += $post['posts'];
  if($post['userid']) {
   $authorname = makehreftag("profile.php?userid=$post[userid]&amp;sid=$session[hash]","<b>".htmlconverter($post['username'])."</b>","_blank");
   $post['posts'] = makehreftag("thread.php?threadid=$threadid&amp;sid=$session[hash]&amp;hilightuser=$post[userid]","<b>$post[posts]</b>","_blank");
  }
  else $authorname = $lang->items['LANG_MISC_WHOPOSTED_GUESTS'];
  eval("\$posters .= \"".$tpl->get("whopostedbit")."\";");
  $counter++;
 }

 if($totalposts>=1000) $totalposts = number_format($totalposts, 0, "", $lang->get("LANG_GLOBAL_THOUSANDS_SEP"));	
 eval ("\$lang->items['LANG_MISC_WHOPOSTED_POSTS_TOTAL'] = \"".$lang->get4eval("LANG_MISC_WHOPOSTED_POSTS_TOTAL")."\";");
 eval("\$tpl->output(\"".$tpl->get("whoposted")."\");");	
}

if($action=="viewip") {
 if(!isset($postid)) eval("error(\"".$lang->get4eval("LANG_GLOBAL_ERROR_FALSELINK")."\");");
 if($wbbuserdata['a_can_view_ipaddress']!=1) access_error();
 $lang->load("MISC");

 $navbar=getNavbar($board['parentlist']);
 eval ("\$navbar .= \"".$tpl->get("navbar_board")."\";");
 $post['host']=htmlconverter(@gethostbyaddr($post['ipaddress']));
 
 $moreips="";
 if($post['userid']) {
  $result=$db->unbuffered_query("SELECT DISTINCT ipaddress FROM bb".$n."_posts WHERE userid='$post[userid]' AND ipaddress<>'".addslashes($post['ipaddress'])."' ORDER BY posttime DESC",0,10);
  while($row=$db->fetch_array($result)) $moreips.=htmlconverter($row['ipaddress'])."<br />";
 }
 
 $thread['topic']=htmlconverter(textwrap($thread['topic']));
 $post['username']=htmlconverter($post['username']);
 $post['ipaddress']=htmlconverter($post['ipaddress']);
 
 eval ("\$lang->items[LANG_MISC_VIEWIP_POSTED_BY] = \"".$lang->get4eval("LANG_MISC_VIEWIP_POSTED_BY")."\";");
 eval("\$tpl->output(\"".$tpl->get("viewip")."\");");	
}

if($action=="faq") {
 $lang->load("FAQ");
 
 eval("\$tpl->output(\"".$tpl->get("faq")."\");");
}

if($action=="faq2") {
 $lang->load("FAQ");
 
 eval ("\$lang->items[LANG_FAQ_EMAIL_EXP] = \"".$lang->get4eval("LANG_FAQ_EMAIL_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_PM_EXP] = \"".$lang->get4eval("LANG_FAQ_PM_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_CALENDAR_EXP] = \"".$lang->get4eval("LANG_FAQ_CALENDAR_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_MEMBERLIST_EXP] = \"".$lang->get4eval("LANG_FAQ_MEMBERLIST_EXP")."\";");
 
 eval("\$tpl->output(\"".$tpl->get("faq2")."\");");
}

if($action=="faq3") {
 $lang->load("FAQ");
 
 eval ("\$lang->items[LANG_FAQ_FORMAT_EXP] = \"".$lang->get4eval("LANG_FAQ_FORMAT_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_SMILIES_EXP] = \"".$lang->get4eval("LANG_FAQ_SMILIES_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_NOTIFICATION_EXP] = \"".$lang->get4eval("LANG_FAQ_NOTIFICATION_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_EDIT_EXP] = \"".$lang->get4eval("LANG_FAQ_EDIT_EXP")."\";");
 eval("\$tpl->output(\"".$tpl->get("faq3")."\");");
}

if($action=="faq1") {
 $lang->load("FAQ");
 $count=0;
 $rankbit="";
 $result=$db->unbuffered_query("SELECT r.*, g.title FROM bb".$n."_ranks r LEFT JOIN bb".$n."_groups g USING(groupid) ORDER BY r.groupid DESC, r.needposts ASC");
 while($row=$db->fetch_array($result)) {
  $tdclass=getone($count,"tablea","tableb");
  
  $row['title']=getlangvar($row['title'], $lang);
  $row['ranktitle']=getlangvar($row['ranktitle'], $lang);
  
  $row['rankimages']=formatRI($row['rankimages']);
  eval ("\$rankbit .= \"".$tpl->get("faq1_rankbit")."\";");	
  $count++;	
 }
 
 eval ("\$lang->items[LANG_FAQ_COOKIES_EXP] = \"".$lang->get4eval("LANG_FAQ_COOKIES_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_PROFILE_EXP] = \"".$lang->get4eval("LANG_FAQ_PROFILE_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_PASSWORD_EXP] = \"".$lang->get4eval("LANG_FAQ_PASSWORD_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_SIGNATUR_EXP] = \"".$lang->get4eval("LANG_FAQ_SIGNATUR_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_BUDDY_EXP] = \"".$lang->get4eval("LANG_FAQ_BUDDY_EXP")."\";");
 eval ("\$lang->items[LANG_FAQ_FAVORITES_EXP] = \"".$lang->get4eval("LANG_FAQ_FAVORITES_EXP")."\";");
 eval("\$tpl->output(\"".$tpl->get("faq1")."\");");	
}

if($action=="userrating") {
 $lang->load("MISC");
 if(isset($_GET['userid'])) $userid=intval($_GET['userid']);
 elseif(isset($_POST['userid'])) $userid=intval($_POST['userid']);
 else {
  eval("\$tpl->output(\"".$tpl->get("userrating_error")."\");");
  exit();
 }
 
 if($wbbuserdata['can_rate_users']==0 || $userid==$wbbuserdata['userid']) {
  eval("\$tpl->output(\"".$tpl->get("userrating_error")."\");");
  exit();	
 }
 
 if($wbbuserdata['userid']) $result=$db->query_first("SELECT id FROM bb".$n."_votes WHERE id='$userid' AND votemode=3 AND userid='$wbbuserdata[userid]'");
 else $result=$db->query_first("SELECT id FROM bb".$n."_votes WHERE id='$userid' AND votemode=3 AND ipaddress='".addslashes($REMOTE_ADDR)."'");
 if($result['id']) {
  eval("\$tpl->output(\"".$tpl->get("userrating_error")."\");");
  exit();	
 }
 
 $user=$db->query_first("SELECT userid, username FROM bb".$n."_users WHERE userid='$userid'");
 if(!$user['userid']) {
  eval("\$tpl->output(\"".$tpl->get("userrating_error")."\");");
  exit();	
 }
 
 if(isset($_POST['send'])) {
  $ratingpoints=intval($_POST['ratingpoints']);
  
  if($ratingpoints>=0 && $ratingpoints<=10) {
   $db->unbuffered_query("UPDATE bb".$n."_users SET ratingcount=ratingcount+1, ratingpoints=ratingpoints+'$ratingpoints' WHERE userid='$userid'",1);	
   $db->unbuffered_query("INSERT INTO bb".$n."_votes (id,votemode,userid,ipaddress) VALUES ('$userid','3','$wbbuserdata[userid]','".addslashes($REMOTE_ADDR)."')",1);
  }
  eval("\$tpl->output(\"".$tpl->get("window_close")."\");");
  exit();	
 }
 
 $user['username']=htmlconverter($user['username']);
 eval("\$tpl->output(\"".$tpl->get("userrating_window")."\");");
}

if($action=="showsmilies") {
 $lang->load("FAQ");
 if($showsmiliesrandom==1) $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode FROM bb".$n."_smilies ORDER BY RAND()");
 else $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode FROM bb".$n."_smilies ORDER BY smilieorder ASC");
 
 $smiliebit="";	
 while($row=$db->fetch_array($result)) {
  $row['smilietitle']=getlangvar($row['smilietitle'], $lang);
  $row['smiliecode']=htmlconverter($row['smiliecode']);
  $row['smiliepath'] = replaceImagefolder($row['smiliepath']);
  
  eval ("\$smiliebit .= \"".$tpl->get("faq_showsmiliesbit")."\";");	
 }
 eval("\$tpl->output(\"".$tpl->get("faq_showsmilies")."\");");
}

if($action=="bbcode"){
 $lang->load("FAQ");
 $parse = new parse(0,75,1,"",0);
 $count=1;
 $faq_bbcode_links_bit="";
 $faq_bbcode_content="";
 $result = $db->query("SELECT bbcodeexample, bbcodeexplanation FROM bb".$n."_bbcodes ORDER BY bbcodeid");
 while($row=$db->fetch_array($result)){
  $name = getlangvar($row['bbcodeexample'], $lang);
  $description = getlangvar($row['bbcodeexplanation'], $lang);
  $parsed = $parse->doparse(rehtmlconverter($name),0,0,1,1);
  eval ("\$content = \"".$lang->get4eval("LANG_FAQ_BBCODES_CONTENT")."\";");
  eval ("\$faq_bbcode_links_bit .= \"".$tpl->get("faq_bbcode_links")."\";");
  eval ("\$faq_bbcode_content .= \"".$tpl->get("faq_bbcode_content")."\";");
  $count++;
 }
 eval("\$tpl->output(\"".$tpl->get("faq_bbcode")."\");");
}
?>
Erazor
Boah, dazu hätte ich nun wirklich keine Lust. Naja, ich denke Glurak hat da bestimmt ne Lösung für all diejenigen welche die V3 nutzen verwirrt cool
GLURAK
@dragonchampion
Bist du dir sicher das du irgendein Boardregeln Hack drinnen hast?!
Falls ja hast du eben die Original misc.php hochgeladen, was völlig egal ist an der misc.php musst du für die v5 nichts mehr machen!
Updatest du oder installierst du den Regeln Hack neu?
Falls du den neu installierst, kannst du mir sicher sagen warum du die update Anleitung befolgst oder smile ? Wie gesagt an der misc.php musst du nichts machen nur an der global.php und einige templates, steht alles in der Readme.... :n8
@Erazor die update sollte genau so klappen...
dragonchampion
ne ich wills neu einabuen, finds aber net, sorry Augen rollen

dragon großes Grinsen

/Edit: sorry, habs überlesen
GLURAK
...... :n8

zuerst lesen dann posten
Erazor
Update hat leider nicht funktioniert, irgendwie hat's mir das ACP total zerschossen. Augen rollen

Naja, egal, das Forum war erst zu Testzwecken online. Hab nun die V. 2.2 Beta 3 installiert. Sollte die V5 auch auf dem 2.2 funktionieren? Oder wird es eine V5 für das 2.2 geben?

Gruss Erazor
jonas
ähhhhhhmmmmmmm.....

des hat total mein ACP kaputt gemacht....

schau mal:
www.jonas.yourboardhosting.de/acp ....

was soll ich jetzt machen??
Erazor
Genau das ist bei mir auch passiert. Spiel dein Backup drüber und gut ist. Augenzwinkern
jonas
aber ich will den hack....

und an den ACP-datein hab ich ja nix geändert.....

von der DB hab ich kein backup......nur von den dateien....
GLURAK
@jonas warum sendest du mir bitte eine PN?
Das hier in Thread reicht doch!
@Erazor schau mal hier http://www.y******.info/database.php?act...ntryid=831&sid=
Zum Problem, ich glaube kaum das es an meinen Hack liegt da ich an der acp/templates/login.htm überhaupts NICHTS mache.
Keine Ahnung wie du das gemacht hast.. irgendwie hast du deine ACP Templates verschrottet.. am besten ladest du dir das Original wBB2.1.4 runter und ladest danach alle acp/templates im acp/templates Ordner hoch...
danach ladest du die acp_tpl.php von wbbzip Archiv=>extra Ordner im acp Ordner hoch und führst diese dann aus ( www.bla.de/acp/acp_tpl.php )