YourWBB


yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB Lite 1.0.x » [WBB Lite 1.0.x] Allg. Fragen und Probleme » Problem mit dem PM-Mitteilung für Userchange-Hack » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag 1.463 Views | | Thema zu Favoriten hinzufügen

Neues Thema erstellen Antwort erstellen

Dieses Thema wurde als unerledigt markiert. Thread unerledigt

Zum Ende der Seite springen Problem mit dem PM-Mitteilung für Userchange-Hack
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Baer
Mitglied


images/avatars/avatar-5854.jpg

Dabei seit: 21.10.11
Beiträge: 29

 Problem mit dem PM-Mitteilung für Userchange-Hack Antworten Zitieren Editieren Melden       UP

Dies ist eine vorgefertigte Schablone.
Bitte fülle soviel aus, wie dir nur Möglich ist, du kannst auch gerne noch mehr Angaben machen.


Problembeschreibung:
Also der Hack an sich funktioniert, es gibt auch keine Errormeldungen und doch gibt es ein Problem mit diesem Hack.

Du hast 1 neue Nachricht(en) (1 ungelesene, 4 Nachricht(en) insgesamt.)
Du hast auf dem Account von Lucius Malfoy eine neue Nachricht!

Das wird angezeigt. Also, er zeigt die Mitteilung für einen anderen Chara nur dann an, wenn der andere Chara auch eine PM hat. Ansonsten wird diese Mitteilung nicht angezeigt.

Du hast 0 neue Nachricht(en) (0 ungelesene, 4 Nachricht(en) insgesamt.)
Du hast auf dem Account von Lucius Malfoy eine neue Nachricht!

So sollte es aber aussehen.


Fehlermeldung:


Link zum Forum und Screenshot (KEINE Bilderhoster, per Dateianhang):
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:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
<?php
$filename="index.php";

require("./global.php");

if(isset($_COOKIE['boardvisit'])) $boardvisit=decode_cookie($_COOKIE['boardvisit']);
else $boardvisit=array();

if(isset($_COOKIE['threadvisit'])) $threadvisit=decode_cookie($_COOKIE['threadvisit']);
else $threadvisit=array();

$boardcache=array();
$permissioncache=array();
$modcache=array();

$activtime=time()-60*$useronlinetimeout;

$result = $db->query("
SELECT
u.icon,
b.*".ifelse($showlastposttitle==1,", t.topic, i.*")."
FROM bb".$n."_boards b
LEFT JOIN bb".$n."_users u ON (u.userid=b.lastposterid)
".ifelse($showlastposttitle==1,"LEFT JOIN bb".$n."_threads t ON (t.threadid=b.lastthreadid)
LEFT JOIN bb".$n."_icons i USING (iconid)")."
ORDEr by b.parentid ASC, b.boardorder ASC");
while ($row = $db->fetch_array($result)) $boardcache[$row['parentid']][$row['boardorder']][$row['boardid']] = $row;


$result = $db->query("SELECT boardid, threadid, lastposttime FROM bb".$n."_threads WHERE visible = 1 AND lastposttime > '$wbbuserdata[lastvisit]' AND closed <> 3");
while($row=$db->fetch_array($result)) $visitcache[$row['boardid']][$row['threadid']]=$row['lastposttime'];

$result = $db->query("SELECT * FROM bb".$n."_permissions WHERE groupid = '$wbbuserdata[groupid]'");
while ($row = $db->fetch_array($result)) $permissioncache[$row['boardid']] = $row;

$result = $db->query("SELECT bb".$n."_moderators.*, username FROM bb".$n."_moderators LEFT JOIN bb".$n."_users USING (userid) ORDER BY username ASC");
while ($row = $db->fetch_array($result)) $modcache[$row['boardid']][] = $row;

$boardbit = makeboardbit(0);

$index_pms="";
$quicklogin="";
$index_useronline="";
$index_stats="";

/* ############## STATS ############## */
if($showstats==1) {
 $members=$db->query_first("SELECT COUNT(*) AS members, MAX(userid) AS userid FROM bb".$n."_users WHERE activation = 1");
 $newestmember=$db->query_first("SELECT userid, username FROM bb".$n."_users WHERE userid = '$members[userid]'");
 $posts=$db->query_first("SELECT COUNT(*) AS posts FROM bb".$n."_posts");
 $threads=$db->query_first("SELECT COUNT(*) AS threads FROM bb".$n."_threads");

 $installdays = (time() - $installdate) / 86400;
 if ($installdays < 1) $postperday = $posts['posts'];
 else $postperday = sprintf("%.2f",($posts['posts'] / $installdays));

 eval ("\$index_stats = \"".$tpl->get("index_stats")."\";");
}
/* ############## USERONLINE ############## */
if($showuseronline==1) {
 $guestcount=0;
 $membercount=0;
 $useronlinebit = '';
 $result = $db->query("SELECT bb".$n."_sessions.userid, username, groupid, invisible, avatarid FROM bb".$n."_sessions LEFT JOIN bb".$n."_users USING (userid) WHERE bb".$n."_sessions.lastactivity >= '".(time()-60*$useronlinetimeout)."' ORDER BY username ASC");
 while($row = $db->fetch_array($result)) {
  if($row['userid']==0) {
   $guestcount++;
   continue;
  }
  $membercount++;
  	if(!$row['invisible']) {
		###### Username-Style Hack ######
		$uname = $row['username'];
		$grp_id_query = $db->query_first("SELECT groupid FROM bb".$n."_users WHERE username LIKE '".$uname."'");
		$grp_id = $grp_id_query['groupid'];
		$group_style_query = $db->query_first("SELECT groupstyle FROM bb".$n."_groups WHERE groupid LIKE '".$grp_id."'");
		$group_style = $group_style_query['groupstyle'];
		$row['username'] = stripslashes(sprintf($group_style, $row['username']));
		###### Username-Style Hack End ######

  		if(isset($useronlinebit) && $useronlinebit != '') $useronlinebit .= ', ';
 /*UserOnline Hover-Ava*/
 $showava="";
 $avaqry = $db->query_first("SELECT * FROM bb".$n."_avatars WHERE avatarid='$row[avatarid]'");
 if($avaqry['avatarid'] && $showavatar==1 && $wbbuserdata['showavatars']==1) {
 $showava=" onMouseOver=\"return overlib('<img src=images/avatars/avatar-$avaqry[avatarid].$avaqry[avatarextension]>',RIGHT,ol_fgcolor='{tabletitlecolor}',ol_bgcolor='{tableinbordercolor}',ol_width='$avaqry[width]');\" onMouseOut=\"return nd();\"";
 }
 /*UserOnline Hover-Ava*/

  		eval ("\$useronlinebit .= \"".$tpl->get("index_useronline")."\";");
  	}
 }
 $totaluseronline = $membercount+$guestcount;
/* ############## Wer war da? (normale Darstellung) ############## */
if($show_wwhd_global){
 if($wbbuserdata['canview_wwhd'] == 1) {
 $wwhd_useron = $db->query_first("SELECT COUNT(*) FROM bb".$n."_sessions_day");
 $wwhd_useron = $wwhd_useron[0];
 $wwhd_ghosts = $db->query_first("SELECT COUNT(*) FROM bb".$n."_sessions_day WHERE invisible = '1'");
 $wwhd_ghosts = $wwhd_ghosts[0];

 if($wwhd_insert_current == '1') $fl = "letzte";
 else $fl = "erste";
 if($wwhd_useron[0] <> '1') $pl = "en";
 else $pl = "";
 if($wwhd_ghosts[0] <> '1') $gpl = "er";
 else $gpl = "";

 $result=$db->query("SELECT d.userid, d.time,u.* FROM bb".$n."_sessions_day d LEFT JOIN bb".$n."_users u USING(userid) ORDER BY $wwhd_order");
 while($wwhd=$db->fetch_array($result)) {
 $zeit = formatdate($timeformat,$wwhd['time']);
 $werwarda1++;
 $ghost = "";
		$uname = ($wwhd['username']);
		$gridf = $db->query_first("SELECT groupid FROM bb".$n."_users WHERE username LIKE '".$uname."'");
		$autorgrid = ($gridf['groupid']);
		$autornamecolorfrage = $db->query_first("Select postcolor From bb".$n."_groups WHERE groupid LIKE '".$autorgrid."'");
		$autornamecolor = ($autornamecolorfrage['postcolor']);
		if($autornamecolor != "") {
 			$wwhd['username'] = '</font><smallfont color="'.$autornamecolor.'">'.$wwhd['username'].'</font><smallfont>';
		} 
 if($wwhd['invisible'] == '0') $user = "<a href=\"profile.php?userid=$wwhd[userid]\">$wwhd[username]</a></b> ($zeit)";
 elseif($wbbuserdata['canuseacp'] == '1') $user ="<a href=\"profile.php?userid=$wwhd[userid]\">$wwhd[username]</a></b> ($zeit, Geist)";
 else $user = "(Geist)";

 if(isset($wwhd_bit) && $wwhd_bit != '') $wwhd_bit .= ', ';
 eval ("\$wwhd_bit .=\"".$tpl->get("index_wwhd")."\";"); 
}

 eval ("\$index_wwhd .=\"".$tpl->get("index_wwhdi")."\";");  
} 
}
 if($totaluseronline>$rekord) {
  $rekord=$totaluseronline;
  $rekordtime=time();
  $db->unbuffered_query("UPDATE bb".$n."_options SET value='$rekord' WHERE varname='rekord'",1);
  $db->unbuffered_query("UPDATE bb".$n."_options SET value='$rekordtime' WHERE varname='rekordtime'",1);
  require ("./acp/lib/class_options.php");
  $option=new options("acp/lib");
  $option->write();
 }
 $rekorddate = formatdate($dateformat,$rekordtime);
 $rekordtime = formatdate($timeformat,$rekordtime);
 eval ("\$index_useronline = \"".$tpl->get("index_showuseronline")."\";");
}


if(!$wbbuserdata['userid']) {
 eval ("\$welcome = \"".$tpl->get("index_welcome")."\";");
 eval ("\$quicklogin = \"".$tpl->get("index_quicklogin")."\";");
}
else {
 $currenttime=formatdate($timeformat,time());
 $toffset=ifelse($default_timezoneoffset>=0,"+").$default_timezoneoffset;
 $lastvisitdate = formatdate($dateformat,$wbbuserdata['lastvisit']);
 $lastvisittime = formatdate($timeformat,$wbbuserdata['lastvisit']);

  #### Anfang Helmchenheader ####
 $gruppennamenfrage = $db->query_first("SELECT title from bb".$n."_groups WHERE groupid Like '".$wbbuserdata['groupid']."'");
 $ugr = ($gruppennamenfrage['title']);
 $reg = formatdate($dateformat,$wbbuserdata['regdate']);
 $posts = ($wbbuserdata['userposts']);
 $posts2 = $db->query_first("SELECT COUNT(postid) AS posts FROM bb".$n."_posts"); 
 $anzahlposts = ($posts2['posts']);
 $threads2 = $db->query_first("SELECT COUNT(threadid) AS threads FROM bb".$n."_threads");
 $anzahlthreads = ($threads2['threads']);
 $counttotal=0;
 $countunread=0;
 $countnew=0;
 $result = $db->query("SELECT view, sendtime FROM bb".$n."_privatemessage WHERE deletepm <> 1 AND recipientid = '$wbbuserdata[userid]'");
 while($row=$db->fetch_array($result)) {
  $counttotal++;
  if($row['view']==0) {
   $countunread++;
   if($row['sendtime']>$wbbuserdata['lastvisit']) $countnew++;
if($countnew>0) eval ("\$new_notnew = \"".$tpl->get("index_newpm")."\";");
  else eval ("\$new_notnew = \"".$tpl->get("index_nonewpm")."\";");
$result=mysql_query("SELECT * FROM bb".$n."_users WHERE userid='$wbbuserdata[userid]' AND parentid != '0'") or die(mysql_error());
if(mysql_num_rows($result)>='1'){
	$check_ca=mysql_fetch_array($result);
	$parentid=$check_ca[parentid];
		$result2=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$parentid' AND view = '0' AND deletepm='0'") or die(mysql_error());
		$anzahl_pm=mysql_num_rows($result2);
			if($anzahl_pm=='1'){
				$result3=mysql_query("SELECT username FROM bb".$n."_users WHERE userid='$parentid'") or die(mysql_error());
				$which_account=mysql_fetch_array($result3);
				$mainaccount=$which_account[username];
				$new_pm_info="Du hast auf dem Account von <b>$mainaccount</b> eine neue Nachricht!<br>";
				eval ("\$new_pms_zm = \"".$tpl->get("index_pms_zm")."\";");
			}
			if($anzahl_pm>'1'){
				$result3=mysql_query("SELECT username FROM bb".$n."_users WHERE userid='$parentid'") or die(mysql_error());
				$which_account=mysql_fetch_array($result3);
				$mainaccount=$which_account[username];
				$new_pm_info="Du hast auf dem Account von <b>$mainaccount</b> $anzahl_pm neue Nachrichten!<br>";
				eval ("\$new_pms_zm = \"".$tpl->get("index_pms_zm")."\";");
		}
	$result3=mysql_query("SELECT * FROM bb".$n."_users WHERE parentid='$parentid' ORDER BY username ASC") or die(mysql_error());
	if(mysql_num_rows($result3)>'1'){
		while($check_c2a=mysql_fetch_array($result3)){
		$which_username=$check_c2a[username];
		$which_userid=$check_c2a[userid];
			if($which_userid != $wbbuserdata[userid]){
				$result4=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$which_userid' AND view = '0' AND deletepm='0'") or die(mysql_error());
				$anzahl_pm=mysql_num_rows($result4);
					if($anzahl_pm=='1'){
						$new_pm_info="Du hast auf dem Account von <b>$which_username</b> eine neue Nachricht!<br>";
					}
					elseif($anzahl_pm>'1'){
						$new_pm_info="Du hast auf dem Account von <b>$which_username</b> $anzahl_pm neue Nachrichten!<br>";
					}
					else{
						$new_pm_info='';
					}
			eval ("\$new_pms_zz .= \"".$tpl->get("index_pms_zz")."\";");
			}
		}
	}
}
$result2=mysql_query("SELECT * FROM bb".$n."_users WHERE parentid='$wbbuserdata[userid]'") or die(mysql_error());
if(mysql_num_rows($result2)>='1'){
		while($check_sa=$db->fetch_array($result2)){
			$other_userid=$check_sa[userid];
			$other_username=$check_sa[username];
				$result3=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$other_userid' AND view = '0' AND deletepm='0'") or die(mysql_error());
				$anzahl_pm=mysql_num_rows($result3);
					if($anzahl_pm=='1'){
						$new_pm_info="Du hast auf dem Account von <b>$other_username</b> eine neue Nachricht!<br>";
					}
					elseif($anzahl_pm>'1'){
						$new_pm_info="Du hast auf dem Account von <b>$other_username</b> $anzahl_pm neue Nachrichten!<br>";
					}
					else{
						$new_pm_info='';
					}
		eval ("\$new_pms_mz .= \"".$tpl->get("index_pms_mz")."\";");
		}
}
  eval ("\$index_hello2 = \"".$tpl->get("index_hello2")."\";");
  }
 }
 if($wbbuserdata['avatarid'] && $wbbuserdata['showavatars']==1) {
 	$a_e_f = $db->query_first("SELECT avatarextension FROM bb".$n."_avatars WHERE avatarid LIKE ".$wbbuserdata['avatarid']."");
 	$avatarname="images/avatars/avatar-".$wbbuserdata['avatarid'].".".$a_e_f['avatarextension']."";
 	$avatarwidth=$user_info['width'];
 	$avatarheight=$user_info['height'];
 	eval ("\$useravatar = \"".$tpl->get("avatar_image")."\";");
 } else {
   eval ("\$useravatar = \"".$tpl->get("noavatar_image")."\";");
 }
 $install_date=formatdate($dateformat." ".$timeformat,$installdate);
 $uthreadsfrage = $db->query_first("SELECT COUNT(threadid)as anzahl FROM bb".$n."_threads WHERE starterid LIKE '".$wbbuserdata['userid']."'");
 $uthreads = $uthreadsfrage['anzahl'];
 $install_date=formatdate($dateformat." ".$timeformat,$installdate);
 eval ("\$welcome = \"".$tpl->get("index_hello2")."\";"); 
 #### Ende Helmchenheader ####
 # original: eval ("\$welcome = \"".$tpl->get("index_hello")."\";");

 if($wbbuserdata['canusepms']==1 && $showpmonindex==1) {
  $counttotal=0; $countunread=0; $countnew=0;
  $result = $db->query("SELECT view, sendtime FROM bb".$n."_privatemessage WHERE deletepm <> 1 AND recipientid = '$wbbuserdata[userid]'");
  while($row=$db->fetch_array($result)) {
   $counttotal++;
   if($row['view']==0) {
    $countunread++;
    if($row['sendtime']>$wbbuserdata['lastvisit']) $countnew++;
   }
  }

  if($countnew>0) eval ("\$new_notnew = \"".$tpl->get("index_newpm")."\";");
  else eval ("\$new_notnew = \"".$tpl->get("index_nonewpm")."\";");
  eval ("\$index_pms = \"".$tpl->get("index_pms")."\";");
 }
}

 #geburtstage
 $currentdate = formatdate("m-d", time());
 $currentyear = intval(formatdate("Y", time()));
 $result = $db->unbuffered_query("SELECT userid, username, birthday FROM bb".$n."_users WHERE birthday LIKE '%-$currentdate' ORDER BY username ASC");
 while($row = $db->fetch_array($result)) {
  $birthyear = intval(substr($row['birthday'], 0, 4));
  $age = $currentyear-$birthyear;
  if($age<1 || $age>200) $age="";
  else $age="&nbsp;($age)";
  eval("\$index_birthdaybit .= \"".$tpl->get("index_birthdaybit")."\";"); 
 } 
 if($index_birthdaybit!="") eval ("\$birthday = \"".$tpl->get("index_birthday")."\";");
 #geburtstage ende

eval("\$tpl->output(\"".$tpl->get("index")."\");");
?>


Das ist die index.php um die es geht.

Was wurde zuletzt geändert oder eingebaut?
PM-Mitteilung für Userchance in der Index.php (Abschnitt Helmheader)

$new_pms_zm $new_pms_zz $new_pms_mz <-- in die index_hello2

Edit: wenn ich den Hack ganz normal in der index_php einbaue (also da wo er eingentlich hingehört, funktioniert er zwar, aber auf dem Hauptaccount wird mir die Meldung das ein anderer Acc eine PM hat dann doppelt angezeigt

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Baer: 22.12.12 23:14.

22.12.12 22:25 Baer ist offline E-Mail Finden Als Freund hinzufügen
Beckebans Beckebans ist männlich
Alternativ Mitglied


images/avatars/avatar-5856.jpg

Dabei seit: 10.07.05
Beiträge: 481
Fähigkeiten: WBB Lite 1 Fortgeschritten
Herkunft: Paderborn
Forenversion: Lite 1.0

Antworten Zitieren Editieren Melden       UP

Dann bau den mal so ein, dass er funktioniert (aber doppelt anzeigt) und lad die index.php hier hoch. Ich denke, das ist einfacher zu beheben.

Ist das ein Hack oder haste das selbst geschrieben?

__________________
Meine Hacks:

- Userpage
- Geburtstagsliste
- Beitrag bedanken
- User verlinken
- PHP-Fehler anzeigen
- Umfragedauer
- Neue Beiträge während Eigenem
- Gruppenspezifische Mitgliederliste
- und weitere...

22.12.12 23:47 Beckebans ist offline E-Mail WWW Finden Als Freund hinzufügen
Baer
Mitglied


images/avatars/avatar-5854.jpg

Dabei seit: 21.10.11
Beiträge: 29

Themenstarter Thema begonnen von Baer
Antworten Zitieren Editieren Melden       UP

Hat niemand eine Antwort auf meine Frage unglücklich

Hier nochmal die geänderte index.php mit dem Hack im Abschnitt Helmheader und im Abschnitt reguläre PMs

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:
233:
234:
235:
236:
237:
238:
239:
240:
241:
242:
243:
244:
245:
246:
247:
248:
249:
250:
251:
252:
253:
254:
255:
256:
257:
258:
259:
260:
261:
262:
263:
264:
265:
266:
267:
268:
269:
270:
271:
272:
273:
274:
275:
276:
277:
278:
279:
280:
281:
282:
283:
284:
285:
286:
287:
288:
289:
290:
291:
292:
293:
294:
295:
296:
297:
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327:
328:
329:
330:
331:
332:
333:
334:
335:
336:
337:
338:
339:
340:
341:
342:
343:
344:
345:
346:
347:
348:
349:
350:
351:
352:
353:
354:
355:
356:
357:
358:
359:
360:
<?php
$filename="index.php";

require("./global.php");

if(isset($_COOKIE['boardvisit'])) $boardvisit=decode_cookie($_COOKIE['boardvisit']);
else $boardvisit=array();

if(isset($_COOKIE['threadvisit'])) $threadvisit=decode_cookie($_COOKIE['threadvisit']);
else $threadvisit=array();

$boardcache=array();
$permissioncache=array();
$modcache=array();

$activtime=time()-60*$useronlinetimeout;

$result = $db->query("
SELECT
u.icon,
b.*".ifelse($showlastposttitle==1,", t.topic, i.*")."
FROM bb".$n."_boards b
LEFT JOIN bb".$n."_users u ON (u.userid=b.lastposterid)
".ifelse($showlastposttitle==1,"LEFT JOIN bb".$n."_threads t ON (t.threadid=b.lastthreadid)
LEFT JOIN bb".$n."_icons i USING (iconid)")."
ORDEr by b.parentid ASC, b.boardorder ASC");
while ($row = $db->fetch_array($result)) $boardcache[$row['parentid']][$row['boardorder']][$row['boardid']] = $row;


$result = $db->query("SELECT boardid, threadid, lastposttime FROM bb".$n."_threads WHERE visible = 1 AND lastposttime > '$wbbuserdata[lastvisit]' AND closed <> 3");
while($row=$db->fetch_array($result)) $visitcache[$row['boardid']][$row['threadid']]=$row['lastposttime'];

$result = $db->query("SELECT * FROM bb".$n."_permissions WHERE groupid = '$wbbuserdata[groupid]'");
while ($row = $db->fetch_array($result)) $permissioncache[$row['boardid']] = $row;

$result = $db->query("SELECT bb".$n."_moderators.*, username FROM bb".$n."_moderators LEFT JOIN bb".$n."_users USING (userid) ORDER BY username ASC");
while ($row = $db->fetch_array($result)) $modcache[$row['boardid']][] = $row;

$boardbit = makeboardbit(0);

$index_pms="";
$quicklogin="";
$index_useronline="";
$index_stats="";

/* ############## STATS ############## */
if($showstats==1) {
 $members=$db->query_first("SELECT COUNT(*) AS members, MAX(userid) AS userid FROM bb".$n."_users WHERE activation = 1");
 $newestmember=$db->query_first("SELECT userid, username FROM bb".$n."_users WHERE userid = '$members[userid]'");
 $posts=$db->query_first("SELECT COUNT(*) AS posts FROM bb".$n."_posts");
 $threads=$db->query_first("SELECT COUNT(*) AS threads FROM bb".$n."_threads");

 $installdays = (time() - $installdate) / 86400;
 if ($installdays < 1) $postperday = $posts['posts'];
 else $postperday = sprintf("%.2f",($posts['posts'] / $installdays));

 eval ("\$index_stats = \"".$tpl->get("index_stats")."\";");
}
/* ############## USERONLINE ############## */
if($showuseronline==1) {
 $guestcount=0;
 $membercount=0;
 $useronlinebit = '';
 $result = $db->query("SELECT bb".$n."_sessions.userid, username, groupid, invisible, avatarid FROM bb".$n."_sessions LEFT JOIN bb".$n."_users USING (userid) WHERE bb".$n."_sessions.lastactivity >= '".(time()-60*$useronlinetimeout)."' ORDER BY username ASC");
 while($row = $db->fetch_array($result)) {
  if($row['userid']==0) {
   $guestcount++;
   continue;
  }
  $membercount++;
  	if(!$row['invisible']) {
		###### Username-Style Hack ######
		$uname = $row['username'];
		$grp_id_query = $db->query_first("SELECT groupid FROM bb".$n."_users WHERE username LIKE '".$uname."'");
		$grp_id = $grp_id_query['groupid'];
		$group_style_query = $db->query_first("SELECT groupstyle FROM bb".$n."_groups WHERE groupid LIKE '".$grp_id."'");
		$group_style = $group_style_query['groupstyle'];
		$row['username'] = stripslashes(sprintf($group_style, $row['username']));
		###### Username-Style Hack End ######

  		if(isset($useronlinebit) && $useronlinebit != '') $useronlinebit .= ', ';
 /*UserOnline Hover-Ava*/
 $showava="";
 $avaqry = $db->query_first("SELECT * FROM bb".$n."_avatars WHERE avatarid='$row[avatarid]'");
 if($avaqry['avatarid'] && $showavatar==1 && $wbbuserdata['showavatars']==1) {
 $showava=" onMouseOver=\"return overlib('<img src=images/avatars/avatar-$avaqry[avatarid].$avaqry[avatarextension]>',RIGHT,ol_fgcolor='{tabletitlecolor}',ol_bgcolor='{tableinbordercolor}',ol_width='$avaqry[width]');\" onMouseOut=\"return nd();\"";
 }
 /*UserOnline Hover-Ava*/

  		eval ("\$useronlinebit .= \"".$tpl->get("index_useronline")."\";");
  	}
 }
 $totaluseronline = $membercount+$guestcount;
/* ############## Wer war da? (normale Darstellung) ############## */
if($show_wwhd_global){
 if($wbbuserdata['canview_wwhd'] == 1) {
 $wwhd_useron = $db->query_first("SELECT COUNT(*) FROM bb".$n."_sessions_day");
 $wwhd_useron = $wwhd_useron[0];
 $wwhd_ghosts = $db->query_first("SELECT COUNT(*) FROM bb".$n."_sessions_day WHERE invisible = '1'");
 $wwhd_ghosts = $wwhd_ghosts[0];

 if($wwhd_insert_current == '1') $fl = "letzte";
 else $fl = "erste";
 if($wwhd_useron[0] <> '1') $pl = "en";
 else $pl = "";
 if($wwhd_ghosts[0] <> '1') $gpl = "er";
 else $gpl = "";

 $result=$db->query("SELECT d.userid, d.time,u.* FROM bb".$n."_sessions_day d LEFT JOIN bb".$n."_users u USING(userid) ORDER BY $wwhd_order");
 while($wwhd=$db->fetch_array($result)) {
 $zeit = formatdate($timeformat,$wwhd['time']);
 $werwarda1++;
 $ghost = "";
		$uname = ($wwhd['username']);
		$gridf = $db->query_first("SELECT groupid FROM bb".$n."_users WHERE username LIKE '".$uname."'");
		$autorgrid = ($gridf['groupid']);
		$autornamecolorfrage = $db->query_first("Select postcolor From bb".$n."_groups WHERE groupid LIKE '".$autorgrid."'");
		$autornamecolor = ($autornamecolorfrage['postcolor']);
		if($autornamecolor != "") {
 			$wwhd['username'] = '</font><smallfont color="'.$autornamecolor.'">'.$wwhd['username'].'</font><smallfont>';
		} 
 if($wwhd['invisible'] == '0') $user = "<a href=\"profile.php?userid=$wwhd[userid]\">$wwhd[username]</a></b> ($zeit)";
 elseif($wbbuserdata['canuseacp'] == '1') $user ="<a href=\"profile.php?userid=$wwhd[userid]\">$wwhd[username]</a></b> ($zeit, Geist)";
 else $user = "(Geist)";

 if(isset($wwhd_bit) && $wwhd_bit != '') $wwhd_bit .= ', ';
 eval ("\$wwhd_bit .=\"".$tpl->get("index_wwhd")."\";"); 
}

 eval ("\$index_wwhd .=\"".$tpl->get("index_wwhdi")."\";");  
} 
}
 if($totaluseronline>$rekord) {
  $rekord=$totaluseronline;
  $rekordtime=time();
  $db->unbuffered_query("UPDATE bb".$n."_options SET value='$rekord' WHERE varname='rekord'",1);
  $db->unbuffered_query("UPDATE bb".$n."_options SET value='$rekordtime' WHERE varname='rekordtime'",1);
  require ("./acp/lib/class_options.php");
  $option=new options("acp/lib");
  $option->write();
 }
 $rekorddate = formatdate($dateformat,$rekordtime);
 $rekordtime = formatdate($timeformat,$rekordtime);
 eval ("\$index_useronline = \"".$tpl->get("index_showuseronline")."\";");
}


if(!$wbbuserdata['userid']) {
 eval ("\$welcome = \"".$tpl->get("index_welcome")."\";");
 eval ("\$quicklogin = \"".$tpl->get("index_quicklogin")."\";");
}
else {
 $currenttime=formatdate($timeformat,time());
 $toffset=ifelse($default_timezoneoffset>=0,"+").$default_timezoneoffset;
 $lastvisitdate = formatdate($dateformat,$wbbuserdata['lastvisit']);
 $lastvisittime = formatdate($timeformat,$wbbuserdata['lastvisit']);

  #### Anfang Helmchenheader ####
 $gruppennamenfrage = $db->query_first("SELECT title from bb".$n."_groups WHERE groupid Like '".$wbbuserdata['groupid']."'");
 $ugr = ($gruppennamenfrage['title']);
 $reg = formatdate($dateformat,$wbbuserdata['regdate']);
 $posts = ($wbbuserdata['userposts']);
 $posts2 = $db->query_first("SELECT COUNT(postid) AS posts FROM bb".$n."_posts"); 
 $anzahlposts = ($posts2['posts']);
 $threads2 = $db->query_first("SELECT COUNT(threadid) AS threads FROM bb".$n."_threads");
 $anzahlthreads = ($threads2['threads']);
 $counttotal=0;
 $countunread=0;
 $countnew=0;

//PMs
 $result = $db->query("SELECT view, sendtime FROM bb".$n."_privatemessage WHERE deletepm <> 1 AND recipientid = '$wbbuserdata[userid]'");
 while($row=$db->fetch_array($result)) {
  $counttotal++;
  if($row['view']==0) {
   $countunread++;
   if($row['sendtime']>$wbbuserdata['lastvisit']) $countnew++;
if($countnew>0) eval ("\$new_notnew = \"".$tpl->get("index_newpm")."\";");
  else eval ("\$new_notnew = \"".$tpl->get("index_nonewpm")."\";");

$result=mysql_query("SELECT * FROM bb".$n."_users WHERE userid='$wbbuserdata[userid]' AND parentid != '0'") or die(mysql_error());
if(mysql_num_rows($result)>='1'){
	$check_ca=mysql_fetch_array($result);
	$parentid=$check_ca[parentid];
		$result2=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$parentid' AND view = '0' AND deletepm='0'") or die(mysql_error());
		$anzahl_pm=mysql_num_rows($result2);
			if($anzahl_pm=='1'){
				$result3=mysql_query("SELECT username FROM bb".$n."_users WHERE userid='$parentid'") or die(mysql_error());
				$which_account=mysql_fetch_array($result3);
				$mainaccount=$which_account[username];
				$new_pm_info="Du hast auf dem Account von <b>$mainaccount</b> eine neue Nachricht!<br>";
				eval ("\$new_pms_zm = \"".$tpl->get("index_pms_zm")."\";");
			}
			if($anzahl_pm>'1'){
				$result3=mysql_query("SELECT username FROM bb".$n."_users WHERE userid='$parentid'") or die(mysql_error());
				$which_account=mysql_fetch_array($result3);
				$mainaccount=$which_account[username];
				$new_pm_info="Du hast auf dem Account von <b>$mainaccount</b> $anzahl_pm neue Nachrichten!<br>";
				eval ("\$new_pms_zm = \"".$tpl->get("index_pms_zm")."\";");
		}
	$result3=mysql_query("SELECT * FROM bb".$n."_users WHERE parentid='$parentid' ORDER BY username ASC") or die(mysql_error());
	if(mysql_num_rows($result3)>'1'){
		while($check_c2a=mysql_fetch_array($result3)){
		$which_username=$check_c2a[username];
		$which_userid=$check_c2a[userid];
			if($which_userid != $wbbuserdata[userid]){
				$result4=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$which_userid' AND view = '0' AND deletepm='0'") or die(mysql_error());
				$anzahl_pm=mysql_num_rows($result4);
					if($anzahl_pm=='1'){
						$new_pm_info="Du hast auf dem Account von <b>$which_username</b> eine neue Nachricht!<br>";
					}
					elseif($anzahl_pm>'1'){
						$new_pm_info="Du hast auf dem Account von <b>$which_username</b> $anzahl_pm neue Nachrichten!<br>";
					}
					else{
						$new_pm_info='';
					}
			eval ("\$new_pms_zz .= \"".$tpl->get("index_pms_zz")."\";");
			}
		}
	}
}
$result2=mysql_query("SELECT * FROM bb".$n."_users WHERE parentid='$wbbuserdata[userid]'") or die(mysql_error());
if(mysql_num_rows($result2)>='1'){
		while($check_sa=$db->fetch_array($result2)){
			$other_userid=$check_sa[userid];
			$other_username=$check_sa[username];
				$result3=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$other_userid' AND view = '0' AND deletepm='0'") or die(mysql_error());
				$anzahl_pm=mysql_num_rows($result3);
					if($anzahl_pm=='1'){
						$new_pm_info="Du hast auf dem Account von <b>$other_username</b> eine neue Nachricht!<br>";
					}
					elseif($anzahl_pm>'1'){
						$new_pm_info="Du hast auf dem Account von <b>$other_username</b> $anzahl_pm neue Nachrichten!<br>";
					}
					else{
						$new_pm_info='';
					}
		eval ("\$new_pms_mz .= \"".$tpl->get("index_pms_mz")."\";");
		}
}

  eval ("\$index_hello2 = \"".$tpl->get("index_hello2")."\";");
  }
 }
//pms ende

 if($wbbuserdata['avatarid'] && $wbbuserdata['showavatars']==1) {
 	$a_e_f = $db->query_first("SELECT avatarextension FROM bb".$n."_avatars WHERE avatarid LIKE ".$wbbuserdata['avatarid']."");
 	$avatarname="images/avatars/avatar-".$wbbuserdata['avatarid'].".".$a_e_f['avatarextension']."";
 	$avatarwidth=$user_info['width'];
 	$avatarheight=$user_info['height'];
 	eval ("\$useravatar = \"".$tpl->get("avatar_image")."\";");
 } else {
   eval ("\$useravatar = \"".$tpl->get("noavatar_image")."\";");
 }
 $install_date=formatdate($dateformat." ".$timeformat,$installdate);
 $uthreadsfrage = $db->query_first("SELECT COUNT(threadid)as anzahl FROM bb".$n."_threads WHERE starterid LIKE '".$wbbuserdata['userid']."'");
 $uthreads = $uthreadsfrage['anzahl'];
 $install_date=formatdate($dateformat." ".$timeformat,$installdate);
 eval ("\$welcome = \"".$tpl->get("index_hello2")."\";"); 
 #### Ende Helmchenheader ####
 # original: eval ("\$welcome = \"".$tpl->get("index_hello")."\";");

 if($wbbuserdata['canusepms']==1 && $showpmonindex==1) {
  $counttotal=0; $countunread=0; $countnew=0;
  $result = $db->query("SELECT view, sendtime FROM bb".$n."_privatemessage WHERE deletepm <> 1 AND recipientid = '$wbbuserdata[userid]'");
  while($row=$db->fetch_array($result)) {
   $counttotal++;
   if($row['view']==0) {
    $countunread++;
    if($row['sendtime']>$wbbuserdata['lastvisit']) $countnew++;
   }
  }

  if($countnew>0) eval ("\$new_notnew = \"".$tpl->get("index_newpm")."\";");
  else eval ("\$new_notnew = \"".$tpl->get("index_nonewpm")."\";");
$result=mysql_query("SELECT * FROM bb".$n."_users WHERE userid='$wbbuserdata[userid]' AND parentid != '0'") or die(mysql_error());
if(mysql_num_rows($result)>='1'){
	$check_ca=mysql_fetch_array($result);
	$parentid=$check_ca[parentid];
		$result2=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$parentid' AND view = '0' AND deletepm='0'") or die(mysql_error());
		$anzahl_pm=mysql_num_rows($result2);
			if($anzahl_pm=='1'){
				$result3=mysql_query("SELECT username FROM bb".$n."_users WHERE userid='$parentid'") or die(mysql_error());
				$which_account=mysql_fetch_array($result3);
				$mainaccount=$which_account[username];
				$new_pm_info="Du hast auf dem Account von <b>$mainaccount</b> eine neue Nachricht!<br>";
				eval ("\$new_pms_zm = \"".$tpl->get("index_pms_zm")."\";");
			}
			if($anzahl_pm>'1'){
				$result3=mysql_query("SELECT username FROM bb".$n."_users WHERE userid='$parentid'") or die(mysql_error());
				$which_account=mysql_fetch_array($result3);
				$mainaccount=$which_account[username];
				$new_pm_info="Du hast auf dem Account von <b>$mainaccount</b> $anzahl_pm neue Nachrichten!<br>";
				eval ("\$new_pms_zm = \"".$tpl->get("index_pms_zm")."\";");
		}
	$result3=mysql_query("SELECT * FROM bb".$n."_users WHERE parentid='$parentid' ORDER BY username ASC") or die(mysql_error());
	if(mysql_num_rows($result3)>'1'){
		while($check_c2a=mysql_fetch_array($result3)){
		$which_username=$check_c2a[username];
		$which_userid=$check_c2a[userid];
			if($which_userid != $wbbuserdata[userid]){
				$result4=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$which_userid' AND view = '0' AND deletepm='0'") or die(mysql_error());
				$anzahl_pm=mysql_num_rows($result4);
					if($anzahl_pm=='1'){
						$new_pm_info="Du hast auf dem Account von <b>$which_username</b> eine neue Nachricht!<br>";
					}
					elseif($anzahl_pm>'1'){
						$new_pm_info="Du hast auf dem Account von <b>$which_username</b> $anzahl_pm neue Nachrichten!<br>";
					}
					else{
						$new_pm_info='';
					}
			eval ("\$new_pms_zz .= \"".$tpl->get("index_pms_zz")."\";");
			}
		}
	}
}
$result2=mysql_query("SELECT * FROM bb".$n."_users WHERE parentid='$wbbuserdata[userid]'") or die(mysql_error());
if(mysql_num_rows($result2)>='1'){
		while($check_sa=$db->fetch_array($result2)){
			$other_userid=$check_sa[userid];
			$other_username=$check_sa[username];
				$result3=mysql_query("SELECT * FROM bb".$n."_privatemessage WHERE recipientid='$other_userid' AND view = '0' AND deletepm='0'") or die(mysql_error());
				$anzahl_pm=mysql_num_rows($result3);
					if($anzahl_pm=='1'){
						$new_pm_info="Du hast auf dem Account von <b>$other_username</b> eine neue Nachricht!<br>";
					}
					elseif($anzahl_pm>'1'){
						$new_pm_info="Du hast auf dem Account von <b>$other_username</b> $anzahl_pm neue Nachrichten!<br>";
					}
					else{
						$new_pm_info='';
					}
		eval ("\$new_pms_mz .= \"".$tpl->get("index_pms_mz")."\";");
		}
}
  eval ("\$index_pms = \"".$tpl->get("index_pms")."\";");
 }
}

 #geburtstage
 $currentdate = formatdate("m-d", time());
 $currentyear = intval(formatdate("Y", time()));
 $result = $db->unbuffered_query("SELECT userid, username, birthday FROM bb".$n."_users WHERE birthday LIKE '%-$currentdate' ORDER BY username ASC");
 while($row = $db->fetch_array($result)) {
  $birthyear = intval(substr($row['birthday'], 0, 4));
  $age = $currentyear-$birthyear;
  if($age<1 || $age>200) $age="";
  else $age="&nbsp;($age)";
  eval("\$index_birthdaybit .= \"".$tpl->get("index_birthdaybit")."\";"); 
 } 
 if($index_birthdaybit!="") eval ("\$birthday = \"".$tpl->get("index_birthday")."\";");
 #geburtstage ende

eval("\$tpl->output(\"".$tpl->get("index")."\");");
?>

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Baer: 04.01.13 01:56.

23.12.12 00:01 Baer ist offline E-Mail Finden Als Freund hinzufügen
Baumstruktur | Brettstruktur
Gehe zu:

Neues Thema erstellen Antwort erstellen

yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB Lite 1.0.x » [WBB Lite 1.0.x] Allg. Fragen und Probleme » Problem mit dem PM-Mitteilung für Userchange-Hack