YourWBB


yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB 2.3.x » [WBB 2.3.x] Hacks und Addons » Abwesenheitshack v2.1.1 » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag 182.970 Views | | Thema zu Favoriten hinzufügen
Seiten (40): « erste ... « vorherige 3 4 5 6 7 8 9 10 11 [12] 13 14 15 16 17 18 19 20 21 nächste » ... letzte »
Neues Thema erstellen Antwort erstellen

Zum Ende der Seite springen Abwesenheitshack v2.1.1 22 Bewertungen - Durchschnitt: 7,5522 Bewertungen - Durchschnitt: 7,5522 Bewertungen - Durchschnitt: 7,55
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
steveman steveman ist männlich
Mitglied


images/avatars/avatar-2126.jpg

Dabei seit: 14.08.04
Beiträge: 86
Herkunft: Bayern
Forenversion: WBB 2.3.3

Antworten Zitieren Editieren Melden       UP

Hi,

wenn ich ins user cp gehe und dann auf "Abwesend melden" klicke erscheint bei mir folgende fehlermeldung:

Zitat:
template "usercp_away" doesnt exist


aber dieses template war beim download gar nicht dabei.
oder hab ich was falsch eingebaut?

mfg

__________________
Sig. gelöscht. Bitte Boardregel beachten.
17.04.05 12:52 steveman ist offline E-Mail WWW Finden Als Freund hinzufügen Füge steveman in deine Kontaktliste ein MSN Passport-Profil von steveman anzeigen
Speedrider Speedrider ist männlich
Mitglied


Dabei seit: 16.01.04
Beiträge: 689
Herkunft: Heidelberg
Forenversion: 2.3

Themenstarter Thema begonnen von Speedrider
Antworten Zitieren Editieren Melden       UP

Ich vermute. Du hast mehrere Templatepacks und diese haben als untergeordnetes pack nicht das standardtpack.

Das template wird über die setup.php importiert. Und gecacht auch.

__________________
Ich gebe keinen Support mehr für meine Hacks für das Wbb2, da ich nur noch in der Szene des Burning Board 3 zuständig bin.
Das neuste Projekt von Wbb3Mods.de
Erste Einblicke in das Incendium CMS 1.0
17.04.05 12:56 Speedrider ist offline E-Mail Finden Als Freund hinzufügen MSN Passport-Profil von Speedrider anzeigen
steveman steveman ist männlich
Mitglied


images/avatars/avatar-2126.jpg

Dabei seit: 14.08.04
Beiträge: 86
Herkunft: Bayern
Forenversion: WBB 2.3.3

Antworten Zitieren Editieren Melden       UP

ok danke. ich hab das template einfach nochmal in jedes templatepack eingefügt.

aber ich finde diese sprachvariable nicht.

__________________
Sig. gelöscht. Bitte Boardregel beachten.
17.04.05 13:47 steveman ist offline E-Mail WWW Finden Als Freund hinzufügen Füge steveman in deine Kontaktliste ein MSN Passport-Profil von steveman anzeigen
Speedrider Speedrider ist männlich
Mitglied


Dabei seit: 16.01.04
Beiträge: 689
Herkunft: Heidelberg
Forenversion: 2.3

Themenstarter Thema begonnen von Speedrider
Antworten Zitieren Editieren Melden       UP

In der Kategorie global.

__________________
Ich gebe keinen Support mehr für meine Hacks für das Wbb2, da ich nur noch in der Szene des Burning Board 3 zuständig bin.
Das neuste Projekt von Wbb3Mods.de
Erste Einblicke in das Incendium CMS 1.0
17.04.05 15:02 Speedrider ist offline E-Mail Finden Als Freund hinzufügen MSN Passport-Profil von Speedrider anzeigen
steveman steveman ist männlich
Mitglied


images/avatars/avatar-2126.jpg

Dabei seit: 14.08.04
Beiträge: 86
Herkunft: Bayern
Forenversion: WBB 2.3.3

Antworten Zitieren Editieren Melden       UP

ok danke.
der hacks funzt wunderbar.

mfg

__________________
Sig. gelöscht. Bitte Boardregel beachten.
17.04.05 16:42 steveman ist offline E-Mail WWW Finden Als Freund hinzufügen Füge steveman in deine Kontaktliste ein MSN Passport-Profil von steveman anzeigen
Houston Houston ist männlich
Mitglied


images/avatars/avatar-31.gif

Dabei seit: 16.01.04
Beiträge: 30
Herkunft: CSC Board
Forenversion: 2.3.4

Antworten Zitieren Editieren Melden       UP

Klasse Hack! Saubere Anleitung! respekt.

Ein Wunsch hätte ich. Wäre es möglich, übers ACP als Admin einen anderen User auf Abwesend/Anwesend zu schalten?

Wir haben heute erfahren, dass eine Moderatorin schwer verunglückt ist. Jetzt wollte ich sie auf abwesend schalten.

__________________
Lieben Gruß
Houston

Zu hässlich zum Ausgehen ?? Gehen Sie ins Internet.....am besten ins CSC großes Grinsen

CSC-Board - Wir machen Menschen glücklicher!
www.csc-board.com

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Houston: 18.04.05 17:11.

18.04.05 17:10 Houston ist offline E-Mail Finden Als Freund hinzufügen
Speedrider Speedrider ist männlich
Mitglied


Dabei seit: 16.01.04
Beiträge: 689
Herkunft: Heidelberg
Forenversion: 2.3

Themenstarter Thema begonnen von Speedrider
Antworten Zitieren Editieren Melden       UP

Derzeit nicht.

in der 2.2 jedoch schon.

__________________
Ich gebe keinen Support mehr für meine Hacks für das Wbb2, da ich nur noch in der Szene des Burning Board 3 zuständig bin.
Das neuste Projekt von Wbb3Mods.de
Erste Einblicke in das Incendium CMS 1.0
18.04.05 17:33 Speedrider ist offline E-Mail Finden Als Freund hinzufügen MSN Passport-Profil von Speedrider anzeigen
saugstauber saugstauber ist männlich
Mitglied


Dabei seit: 11.02.05
Beiträge: 11

Antworten Zitieren Editieren Melden       UP

Habe das Hack ebenfalls eingesetzt. Nur funzt es bei mir nicht. Habe ebenfalls die Version 2.3.0. Wenn ich in den User CP gehe, auf den vorhandenen Link zum Abwesend melden klicke, erscheint eine leere Seite. Was ist bei mir wohl da schiefgelaufen?

Gruß

Augen rollen
22.04.05 11:39 saugstauber ist offline E-Mail WWW Finden Als Freund hinzufügen
AngelOfMine AngelOfMine ist männlich
Mitglied


Dabei seit: 04.11.04
Beiträge: 115
Fähigkeiten: WBB2 Fortgeschritten
Herkunft: Bielefeld, NRW
Forenversion: 2.3

Antworten Zitieren Editieren Melden       UP

Kopier die entsprechende tpl-Datei von den Standardtemplates in dein Templatepack.

__________________
Liebe Grüße
Angel
22.04.05 11:51 AngelOfMine ist offline E-Mail WWW Finden Als Freund hinzufügen
saugstauber saugstauber ist männlich
Mitglied


Dabei seit: 11.02.05
Beiträge: 11

Antworten Zitieren Editieren Melden       UP

Danke, bin ich soeben auch drauf gekommen großes Grinsen

Gruß
22.04.05 12:26 saugstauber ist offline E-Mail WWW Finden Als Freund hinzufügen
Speedrider Speedrider ist männlich
Mitglied


Dabei seit: 16.01.04
Beiträge: 689
Herkunft: Heidelberg
Forenversion: 2.3

Themenstarter Thema begonnen von Speedrider
Antworten Zitieren Editieren Melden       UP

@staubstauber

Ein post ihn einem forum reicht auch.

Wenn du hier und ihn Mywbb postetst geht es auch nicht schneller.

__________________
Ich gebe keinen Support mehr für meine Hacks für das Wbb2, da ich nur noch in der Szene des Burning Board 3 zuständig bin.
Das neuste Projekt von Wbb3Mods.de
Erste Einblicke in das Incendium CMS 1.0
22.04.05 19:36 Speedrider ist offline E-Mail Finden Als Freund hinzufügen MSN Passport-Profil von Speedrider anzeigen
saugstauber saugstauber ist männlich
Mitglied


Dabei seit: 11.02.05
Beiträge: 11

Antworten Zitieren Editieren Melden       UP

Ja ist klar....du meintes bestimmt auch in und nicht ihn. Liegt vielleicht an dem nichtvorhandenen Hauptschulabschluss. Dennoch danke.


Gruß Augenzwinkern
22.04.05 23:00 saugstauber ist offline E-Mail WWW Finden Als Freund hinzufügen
Alluidh Alluidh ist männlich
Mitglied


images/avatars/avatar-369.gif

Dabei seit: 22.01.04
Beiträge: 558
Herkunft: NRW

Antworten Zitieren Editieren Melden       UP

Zitat:
Original von saugstauber
Ja ist klar....du meintes bestimmt auch in und nicht ihn. Liegt vielleicht an dem nichtvorhandenen Hauptschulabschluss. Dennoch danke.
Gruß Augenzwinkern

Sagen wir es einmal so ... ich habe keinen Hauptschulabschluss sondern 2 Studiengänge gesucht - Macht mich das nun zu etwas besserem als dich? Wenn du meinst du kannst hier was raushängen lassen, nur weil Speedrider einen Reschtschreibfehler in seinem Post hat, denn überleeg dir einmal genau wer du bist und wo du dich hier aufhälst, denn scheinbar war dein Schulabschluss nicht in der Lage, dir zu zeigen wie man einen Hack Fehlerfrei nach Anleitung einbaut

Langsam sollte hier wirklich glasklar die Linie gezogen werden: Wer sich nicht im Rahmen einer menschlichen Diskussion benehmen kann, der fliegt raus und Ende. Ist dir klar das wegen Leute wie dir immer weniger Hacks released werden und die Dinge lieber im Hintergrund und an ensprechende Personen weitergegeben werden?

Es gibt erheblich mehr Hacks als hier oder auf anderen Hackboards angeboten werden - Überlege einmal warum

Alluidh
23.04.05 07:51 Alluidh ist offline E-Mail WWW Finden Als Freund hinzufügen Füge Alluidh in deine Kontaktliste ein
saugstauber saugstauber ist männlich
Mitglied


Dabei seit: 11.02.05
Beiträge: 11

Antworten Zitieren Editieren Melden       UP

Das mag ja auch sein, dennoch muss ich mir nicht sagen lassen, wo und wieviel ich zu einem Thema poste. Wenn ich hier keine klare Antwort zu meinem Problem bekomme und ich daher noch in anderen Foren dieses Problem schildere, so ist dies doch meine persönliche Angelegenheit. Dies mal so hier eingebracht.

Zudem hatte ich auch geschrieben, dass ich den Fehler selbst gefunden hatte, warum das Hack nicht lief.

Zu dem, warum du meinst, Leute, die ihre Meinung vertreten, hier zu löschen, finde ich alles andere als angebracht. User, die Fragen stellen, und da bin ich mit Sicherheit nicht der einzige, haben es auch nicht nötig, sich von Leuten diffamieren zu lassen, nur weil sie in der Lage sind PHP-Scripte zu verfassen.

Zudem bin ich Industriekaufmann, habe auch nicht die Zeit und das Engagement, mir die Scripte selbst zu erstellen, darum bin ich, wie viele andere auch froh, das es Schreiber gibt, die da mehr Zeit haben. Trotz allem muss man sich dann nicht etwaigen Erziehungsmethoden unterziehen. Ich bin keine 14 Jahre mehr.
Das ich seinen Hauptschulabschluss erwähnt hatte (steht in der Installationsanleitung) war wohl etwas überzogen, tut mir leid und ich entschuldige mich auch dafür...habe ich keine Probleme mit aber es sollte doch auch mal gesagt sein, das solch ein Verhalten gegenüber Ratsuchenden auch nicht angebracht ist. Denn man weiss nie, wen man vor sich hat.


Zitat:
denn scheinbar war dein Schulabschluss nicht in der Lage, dir zu zeigen wie man einen Hack Fehlerfrei nach Anleitung einbaut


Na, sagen wir es mal so, in der Anleitung steht zumindest nichts davon, dass das usercp_away.tpl kopiert und in das verwendete Style eingesetzt werden muss.

Lassen wir bitte die weitere Diskussion. Das Thema ist für mir durch.

Lieben Gruß

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von saugstauber: 23.04.05 13:18.

23.04.05 10:47 saugstauber ist offline E-Mail WWW Finden Als Freund hinzufügen
luminanz luminanz ist männlich
Mitglied


images/avatars/avatar-4148.gif

Dabei seit: 13.10.04
Beiträge: 124
Herkunft: NRW
Forenversion: 2.3; 2.0

Antworten Zitieren Editieren Melden       UP

hm, hier kommt meine fehlermeldung:

Parse error: parse error, unexpected ';' in /www/htdocs/innohepp/wbb23/thread.php(32cool : eval()'d code on line 102

thread.php

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:
361:
362:
363:
364:
365:
366:
367:
368:
369:
370:
371:
372:
373:
374:
375:
376:
377:
378:
379:
380:
381:
382:
383:
384:
385:
386:
387:
388:
389:
390:
391:
392:
393:
394:
395:
396:
397:
398:
399:
400:
401:
402:
403:
404:
405:
406:
407:
408:
409:
410:
411:
412:
413:
414:
415:
416:
417:
418:
419:
420:
421:
422:
423:
424:
425:
426:
427:
428:
429:
430:
431:
432:
433:
434:
435:
436:
437:
438:
439:
440:
441:
442:
443:
444:
445:
446:
447:
448:
449:
450:
451:
452:
453:
454:
455:
456:
457:
458:
459:
460:
461:
462:
463:
464:
465:
466:
467:
468:
469:
470:
471:
472:
473:
474:
475:
476:
477:
478:
479:
480:
481:
482:
483:
484:
485:
486:
487:
488:
489:
490:
491:
492:
493:
494:
495:
496:
497:
498:
499:
500:
501:
502:
503:
504:
505:
506:
507:
508:
509:
510:
511:
512:
513:
514:
515:
516:
517:
518:
519:
520:
521:
522:
523:
524:
525:
526:
527:
528:
529:
530:
531:
532:
533:
534:
535:
536:
537:
538:
539:
540:
541:
542:
543:
544:
545:
546:
547:
548:
549:
550:
551:
552:
553:
554:
555:
556:
557:
558:
559:
560:
561:
562:
563:
564:
565:
566:
567:
568:
569:
570:
571:
572:
573:
574:
575:
576:
577:
578:
579:
580:
581:
582:
583:
584:
585:
586:
587:
588:
589:
590:
591:
592:
593:
594:
595:
596:
597:
598:
599:
600:
601:
602:
603:
604:
605:
606:
607:
608:
609:
610:
611:
612:
613:
614:
615:
616:
617:
618:
619:
620:
621:
622:
623:
624:
625:
626:
627:
628:
629:
630:
631:
632:
633:
634:
635:
636:
637:
638:
639:
640:
641:
642:
643:
644:
645:
646:
647:
648:
649:
650:
651:
652:
653:
654:
655:
656:
657:
658:
659:
660:
661:
662:
663:
664:
665:
666:
667:
668:
669:
670:
671:
672:
673:
674:
675:
676:
677:
678:
679:
680:
681:
682:
683:
684:
685:
686:
687:
688:
689:
690:
691:
692:
693:
694:
695:
696:
697:
698:
699:
700:
701:
702:
703:
704:
705:
706:
707:
708:
709:
710:
711:
712:
713:
714:
715:
716:
717:
718:
719:
720:
721:
722:
723:
724:
725:
726:
727:
728:
729:
730:
731:
732:
733:
734:
735:
736:
737:
738:
739:
740:
741:
742:
743:
744:
745:
746:
747:
748:
749:
750:
751:
752:
753:
754:
755:
756:
757:
758:
759:
760:
761:
762:
763:
764:
765:
766:
767:
768:
769:
770:
771:
772:
773:
774:
775:
776:
777:
778:
779:
780:
781:
782:
783:
784:
785:
786:
787:
788:
789:
790:
791:
792:
793:
794:
795:
796:
797:
798:
799:
800:
801:
802:
803:
804:
805:
806:
807:
808:
809:
810:
811:
812:
813:
814:
815:
816:
817:
818:
819:
820:
821:
822:
823:
824:
825:
826:
827:
828:
829:
830:
831:
832:
833:
834:
835:
836:
837:
838:
839:
840:
841:
842:
843:
844:
845:
846:
847:
848:
849:
850:
851:
852:
853:
854:
855:
856:
857:
858:
859:
860:
861:
862:
863:
864:
865:
866:
867:
868:
869:
870:
871:
872:
873:
874:
875:
876:
877:
878:
879:
880:
881:
882:
883:
884:
885:
886:
887:
888:
889:
890:
891:
892:
893:
894:
895:
896:
897:
898:
899:
900:
901:
902:
903:
904:
905:
906:
907:
908:
909:
910:
911:
912:
913:
914:
915:
916:
917:
918:
919:
920:
921:
922:
923:
924:
925:
926:
927:
928:
929:
930:
931:
932:
933:
934:
935:
936:
937:
938:
939:
940:
941:
942:
943:
944:
945:
946:
947:
948:
949:
950:
951:
952:
953:
954:
955:
956:
957:
958:
959:
960:
961:
962:
963:
964:
965:
966:
967:
968:
969:
970:
971:
972:
973:
974:
975:
976:
977:
978:
979:
980:
981:
982:
983:
984:
985:
986:
987:
988:
989:
990:
991:
992:
993:
994:
995:
996:
997:
998:
999:
1000:
1001:
<?php
// ************************************************************************************//
// * WoltLab Burning Board 2
// ************************************************************************************//
// * Copyright (c) 2001-2004 WoltLab GmbH
// * Web           http://www.woltlab.de/
// * License       http://www.woltlab.de/products/burning_board/license_en.php
// *               http://www.woltlab.de/products/burning_board/license.php
// ************************************************************************************//
// * WoltLab Burning Board 2 is NOT free software.
// * You may not redistribute this package or any of it's files.
// ************************************************************************************//
// * $Date: 2004-12-29 12:33:17 +0100 (Wed, 29 Dec 2004) $
// * $Author: Burntime $
// * $Rev: 1525 $
// ************************************************************************************//


$filename = 'thread.php';

require('./global.php');
require('./acp/lib/class_parse.php');
$lang->load('THREAD,MEMBERS');
list($oboardid)=$db->query_first("SELECT boardid FROM bb".$n."_threads WHERE threadid = '$threadid'");
list($mpostid)=$db->query_first("SELECT min(postid) FROM bb".$n."_posts WHERE threadid = '$threadid'");
list($hboardid)=$db->query_first("SELECT hang_boardid FROM bb".$n."_hang WHERE hang_id = '1'");
if($hboardid==$oboardid){
    $boardok='1';
    $result2=$db->query_first("SELECT * FROM bb".$n."_hang WHERE hang_threadid = '$threadid'");
$hang_raterbisher=$result2[hang_raterbisher];$hang_won=$result2[hang_won];$hang_ratername=$result2[hang_ratername];$hang_text=$result2[hang_text];$hang_posterid=$result2[hang_posterid];
}

if ((!isset($postid) && !isset($threadid)) || $thread['closed'] == 3) error($lang->get("LANG_GLOBAL_ERROR_FALSELINK", array('$adminmail' => $adminmail)));
if (!checkpermissions("can_read_thread")) access_error();






/** Thread Class **/
class Thread {
	/**
	* @var integer threadid
	*/
	var $threadid = 0;

	/**
	* @var string pagelink
	*/
	var $pagelink = "";

	/**
	* @var integer page
	*/
	var $page = 0;

	/**
	* @var integer pages
	*/
	var $pages = 0;

	/**
	* @var string postids
	*/
	var $postids = ""; 

	/**
	* @var string orderby
	*/
	var $orderBy = "";

	/**
	* @var array userfieldcache
	*/
	var $userfieldcache = array();

	/**
	* @var object parse
	*/
	var $parse;
	
	/**
	* @var array attachmentArray
	*/
	var $attachmentArray = array();
	
	/**
	* @var boolean readAttachments
	*/
	var $readAttachments = false;
	
	/**
	* parse a message and generate postbit
	*
	* @param array posts
	* @param integer count
	* @param integer indentwidth
	*
	* @return string postbit
	*/
	function makePostBit($posts, $count, $indentwidth = 0) {
	    global $guthaben;
		global $thread, $board, $tpl, $wbbuserdata, $style, $lang, $session, $userratings, $showuserratinginthread, $showuserlevels, $showonlineinthread, $useronlinetimeout, $showregdateinthread, $showuserfieldsinthread, $showgenderinthread, $showavatar, $_GET, $showthreadstarter, $showuserpostsinthread, $allowsigsmilies, $allowsightml, $allowsigbbcode, $max_sig_image, $authormarking, $picmaxwidth, $picmaxheight, $allowflashavatar, $thumbnailsperrow, $SID_ARG_1ST, $SID_ARG_2ND, $SID_ARG_2ND_UN, $hang_raterbisher, $hang_ratername, $hang_text, $hang_posterid, $hang_won, $mpostid, $hang_won, $boardok;
		if ($this->userfieldcache) reset($this->userfieldcache);
		$userrating = '';
		$signature = '';
		$lastedit = '';
		$user_online = '';
		$userfields = '';
		$useravatar = '';
		$rankimages = '';
		$setvisible = '';
		$userlevel = '';
		$posts['username'] = htmlconverter($posts['username']);
		$username = $posts['username'];
		
		/** mod / admin option -> set visible post **/
		if ($posts['visible'] == 0 && $posts['posttime'] != $thread['starttime']) $invisible = 1;
		else $invisible = 0;
		
		$tdclass = getone($count, 'tableb', 'tablea');
		
		// use postcache if possible
		if ($posts['cache']) $posts['message'] = $this->parse->parseCache($posts['cache']);
		else $posts['message'] = $this->parse->doparse($posts['message'], $posts['allowsmilies'], $posts['allowhtml'], $posts['allowbbcode'], $posts['allowimages']);
				
		$posts['posttopic'] = htmlconverter(textwrap($posts['posttopic']));
		if ($posts['iconid']) $posticon = makeimgtag($posts['iconpath'], getlangvar($posts['icontitle'], $lang), 0);
		else $posticon = '';
		if ($posts['posttime'] > $thread['lastvisit']) $newpost = 1;
		else $newpost = 0;
		
		$postdate = formatdate($wbbuserdata['dateformat'], $posts['posttime'], 1);
		$posttime = formatdate($wbbuserdata['timeformat'], $posts['posttime']);
		
		
		// show attachments
		$attachments = '';
		$attachment_thumbnailCount = 0;
		$attachmentbit = '';
		$attachmentbit_img = '';
		$attachmentbit_img_small = '';
		$attachmentbit_img_thumbnails = '';
		
		if (isset($this->attachmentArray[$posts['postid']]) && count($this->attachmentArray[$posts['postid']])) {
			unset($LANG_THREAD_ATTACHMENT_IMAGE_THUMBNAIL);
			unset($LANG_THREAD_ATTACHMENT_IMAGE_SMALL);
			unset($LANG_THREAD_ATTACHMENT_IMAGE);
			unset($LANG_THREAD_ATTACHMENT);
			
			foreach ($this->attachmentArray[$posts['postid']] as $attachment) {
				$attachment['attachmentextension'] = htmlconverter($attachment['attachmentextension']);
				$attachment['attachmentname'] = htmlconverter($attachment['attachmentname']);
				
				// attachment is an image, display it directly
				if (checkpermissions('can_download_attachments') == 1 && $wbbuserdata['showimages'] == 1 && $wbbuserdata['can_download_attachments'] == 1 && ($attachment['attachmentextension'] == 'gif' || $attachment['attachmentextension'] == 'jpg' || $attachment['attachmentextension'] == 'jpeg'  || $attachment['attachmentextension'] == 'png')) {
					if ($attachment['thumbnailextension'] != '') {
						$attachment_thumbnailCount++;
						if ($attachment_thumbnailCount && ($attachment_thumbnailCount % $thumbnailsperrow) == 0) $thumbnailNewline = true;
						else $thumbnailNewline = false;
						if (!isset($LANG_THREAD_ATTACHMENT_IMAGE_THUMBNAIL)) $LANG_THREAD_ATTACHMENT_IMAGE_THUMBNAIL = $lang->get("LANG_THREAD_ATTACHMENT_IMAGE_SMALL", array('$username' => $username));
						else $LANG_THREAD_ATTACHMENT_IMAGE_THUMBNAIL = $lang->get("LANG_THREAD_ATTACHMENTS_IMAGE_SMALL", array('$username' => $username));
						
						eval("\$attachmentbit_img_thumbnails .= \"".$tpl->get("thread_attachmentbit_show_thumbnail")."\";");
					}
					else {
						$imgsize = @getimagesize("./attachments/attachment-$attachment[attachmentid].$attachment[attachmentextension]");
						
						if (($picmaxwidth != 0 && $imgsize[0] > $picmaxwidth) || ($picmaxheight != 0 && $imgsize[1] > $picmaxheight)) {
							if ($picmaxwidth != 0) $div1 = $picmaxwidth / $imgsize[0];
							else $div1 = 1;
							if ($picmaxheight != 0) $div2 = $picmaxheight / $imgsize[1];
							else $div2 = 1;
							
							if ($div1 < $div2) {
								$attachment['imgwidth'] = $picmaxwidth;
								$attachment['imgheight'] = round($imgsize[1] * $div1);
							}
							else {
								$attachment['imgheight'] = $picmaxheight;
								$attachment['imgwidth'] = round($imgsize[0] * $div2);	
							}
							
							if (!isset($LANG_THREAD_ATTACHMENT_IMAGE_SMALL)) $LANG_THREAD_ATTACHMENT_IMAGE_SMALL = $lang->get("LANG_THREAD_ATTACHMENT_IMAGE_SMALL", array('$username' => $username));
							else $LANG_THREAD_ATTACHMENT_IMAGE_SMALL = $lang->get("LANG_THREAD_ATTACHMENTS_IMAGE_SMALL", array('$username' => $username));
							
							eval("\$attachmentbit_img_small .= \"".$tpl->get("thread_attachmentbit_show_small")."\";");
						}
						else {
							if (!isset($LANG_THREAD_ATTACHMENT_IMAGE)) $LANG_THREAD_ATTACHMENT_IMAGE = $lang->get("LANG_THREAD_ATTACHMENT_IMAGE", array('$username' => $username));
							else $LANG_THREAD_ATTACHMENT_IMAGE = $lang->get("LANG_THREAD_ATTACHMENTS_IMAGE", array('$username' => $username));
							
							eval("\$attachmentbit_img .= \"".$tpl->get("thread_attachmentbit_show")."\";");
						}
					}
				}
				else {
					if (!file_exists($style['imagefolder']."/filetypes/".$attachment['attachmentextension'].".gif")) $extensionimage = "unknown";
					else $extensionimage = $attachment['attachmentextension'];
					$attachment['attachmentsize'] = ceil($attachment['attachmentsize'] / 1024);
					if ($attachment['counter'] >= 1000) $attachment['counter'] = number_format($attachment['counter'], 0, "", $lang->get("LANG_GLOBAL_THOUSANDS_SEP")); 
					$LANG_THREAD_ATTACHMENT_INFO = $lang->get("LANG_THREAD_ATTACHMENT_INFO", array('$attachmentsize' => $attachment['attachmentsize'], '$counter' => $attachment['counter']));
					if (!isset($LANG_THREAD_ATTACHMENT)) $LANG_THREAD_ATTACHMENT = $lang->get('LANG_THREAD_ATTACHMENT');
					else  $LANG_THREAD_ATTACHMENT = $lang->get('LANG_THREAD_ATTACHMENTS');
					
					eval("\$attachmentbit .= \"".$tpl->get("thread_attachmentbit")."\";");
				}				
			}
			eval("\$attachments = \"".$tpl->get("thread_attachments")."\";");
		}
		
		if ($posts['editorid']) {
			$editdate = formatdate($wbbuserdata['dateformat'], $posts['edittime'], 1);
			$edittime = formatdate($wbbuserdata['timeformat'], $posts['edittime']);
			$posts['editor'] = htmlconverter($posts['editor']);
			
			$LANG_THREAD_EDITOR = $lang->get("LANG_THREAD_EDITOR", array('$editcount' => $posts['editcount'], '$editor' => $posts['editor'], '$editdate' => $editdate, '$edittime' => $edittime));
		}
		
		if ($posts['userid']) {
			$posts['homepage'] = htmlconverter($posts['homepage']);
			$posts['email'] = getASCIICodeString($posts['email']);
			
			$rankimages = formatRI($posts['rankimages']);
			if ($posts['title']) $posts['ranktitle'] = htmlconverter($posts['title']);
			else $posts['ranktitle'] = getlangvar($posts['ranktitle'], $lang);
			
			if ($userratings == 1 && $showuserratinginthread == 1) $userrating = userrating($posts['ratingcount'], $posts['ratingpoints'], $posts['userid']);
			if ($showuserlevels == 1) $userlevel = userlevel($posts['userposts'], $posts['regdate']);
			
			if ($showonlineinthread == 1) {
				if (($posts['invisible'] == 0 || $wbbuserdata['a_can_view_ghosts'] == 1) && $posts['lastactivity'] >= time() - $useronlinetimeout * 60) {
					$user_online = 1;
					$LANG_MEMBERS_USERONLINE = $lang->get("LANG_MEMBERS_USERONLINE", array('$username' => $username));
				}
				else {
					$user_online = 0;
					$LANG_MEMBERS_USERONLINE = $lang->get("LANG_MEMBERS_USEROFFLINE", array('$username' => $username));
				}
			}
			
			if ($showregdateinthread == 1) $posts['regdate'] = formatdate($wbbuserdata['dateformat'], $posts['regdate']);
			
			if ($showuserfieldsinthread == 1 && is_array($this->userfieldcache) && count($this->userfieldcache)) {
				while (list($key, $val) = each($this->userfieldcache)) {
					$fieldcontent = textwrap($posts["field".$val['profilefieldid']], 20);
					if ($fieldcontent && $fieldcontent != "0000-00-00") {
						if ($val['fieldtype'] == "multiselect") $fieldcontent = str_replace("\n", "; ", $fieldcontent);
						elseif ($val['fieldtype'] == "date") {
							$row_datearray = explode("-", $fieldcontent);
							if ($row_datearray[0] == "0000") $fieldcontent = $row_datearray[2].".".$row_datearray[1].".";
							else $fieldcontent = $row_datearray[2].".".$row_datearray[1].".".$row_datearray[0];
						}
						$fieldcontent = htmlconverter($fieldcontent);
						eval("\$userfields .= \"".$tpl->get("thread_userfields")."\";");
					}
				}
			}
			
			if ($showgenderinthread == 0) $posts['gender'] = 0;
			if ($posts['gender'] == 1) $LANG_THREAD_MALE = $lang->get("LANG_THREAD_MALE", array('$username' => $username));
			if ($posts['gender'] == 2) $LANG_THREAD_FEMALE = $lang->get("LANG_THREAD_FEMALE", array('$username' => $username));
			
			if ($posts['showemail'] == 1 || $posts['usercanemail'] == 1) $LANG_MEMBERS_SENDEMAIL = $lang->get("LANG_MEMBERS_SENDEMAIL", array('$username' => $username));
			if ($posts['homepage']) $LANG_MEMBERS_HOMEPAGE = $lang->get("LANG_MEMBERS_HOMEPAGE", array('$username' => $username));
			
			$LANG_MEMBERS_SEARCH = $lang->get("LANG_MEMBERS_SEARCH", array('$username' => $username));
			$LANG_MEMBERS_BUDDY = $lang->get("LANG_MEMBERS_BUDDY", array('$username' => $username));
			
			if ($posts['receivepm'] == 1 && $wbbuserdata['can_use_pms'] == 1) $LANG_MEMBERS_PM = $lang->get("LANG_MEMBERS_PM", array('$username' => $username));
			
			if ($posts['icq']) $LANG_MEMBERS_ICQ = $lang->get("LANG_MEMBERS_ICQ", array('$username' => $username));
			if ($posts['aim']) {
				$posts['aim'] = htmlconverter($posts['aim']);
				$aim = $posts['aim'];
				$LANG_MEMBERS_AIM = $lang->get("LANG_MEMBERS_AIM", array('$username' => $username, '$aim' => $aim));
			}
			if ($posts['yim']) {
				$posts['yim'] = htmlconverter($posts['yim']);
				$yim = $posts['yim'];
				$LANG_MEMBERS_YIM = $lang->get("LANG_MEMBERS_YIM", array('$username' => $username, '$yim' => $yim));
			}
			if ($posts['msn']) {
				$posts['msn'] = htmlconverter($posts['msn']);
				$LANG_MEMBERS_MSN = $lang->get("LANG_MEMBERS_MSN", array('$username' => $username));
			}
			
			if ($posts['avatarid'] && $showavatar == 1 && $wbbuserdata['showavatars'] == 1) {
				$avatarname = "images/avatars/avatar-$posts[avatarid].".htmlconverter($posts['avatarextension']);
				$avatarwidth = $posts['width'];
				$avatarheight = $posts['height'];
				if ($posts['avatarextension'] == "swf" && $allowflashavatar == 1) eval("\$useravatar = \"".$tpl->get("avatar_flash")."\";");
				elseif ($posts['avatarextension'] != "swf") eval("\$useravatar = \"".$tpl->get("avatar_image")."\";");
			}
			
			if ($authormarking == 1 && $posts['useronlinemarking'] != '') $posts['username'] = sprintf($posts['useronlinemarking'], $posts['username']);
			if (isset($_GET['hilightuser']) && $_GET['hilightuser'] == $posts['userid']) $posts['username'] = "<span class=\"highlight\">".$posts['username']."</span>";
			
			if ($showthreadstarter == 1 && $thread['starterid'] == $posts['userid'] && $thread['starttime'] != $posts['posttime']) {
				$threadstarter = 1;
				$LANG_THREAD_THREADSTARTER_ALT = $lang->get("LANG_THREAD_THREADSTARTER_ALT", array('$starter' => $posts['username']));
			}
			else $threadstarter = 0;
			
			if ($posts['showsignature'] == 1 && !$posts['disablesignature'] && $wbbuserdata['showsignatures'] == 1 && $posts['signature']) {
				$posts['signature'] = $this->parse->doparse($posts['signature'], $posts['allowsigsmilies'], $posts['allowsightml'], $posts['allowsigbbcode'], $posts['allowsigimages']);
				eval("\$signature = \"".$tpl->get("thread_signature")."\";");
			}
			
			if ($showuserpostsinthread == 1 && $posts['userposts'] >= 1000) $posts['userposts'] = number_format($posts['userposts'], 0, "", $lang->get("LANG_GLOBAL_THOUSANDS_SEP"));

/** Abwesendheitshack by Speedrider Anfang**/
$LANG_MEMBERS_USERAWAY = $lang->get("LANG_AWAY_MEMBERS_ONLINE_AWAY", array('$username' => $username));
$datefrom = explode("-",$posts[away_from]);
                        $dateto = explode("-",$posts[away_to]);

                        $away_message = $posts['away_message'];
                        $away = $posts['away'];
/** Abwesendheitshack by Speedrider Ende**/
 
		}
		
/* Guthaben A */
$waehrung = $guthaben['waehrung'];
$user_guthaben = number_format($posts['guthaben'],0,",",".");
/* Guthaben E */
		
if(($boardok=='1')&&($hang_posterid==$posts[userid])&&($mpostid==$posts[postid])&&($hang_won<>1)){eval ("\$hangin = \"".$tpl->get("hang_thread")."\";");}

/* Begin User-Map by Viktor */
                if($posts['place']) {
                  $LANG_GLOBAL_USER_MAP_POSTBIT = $lang->get("LANG_GLOBAL_USER_MAP_POSTBIT", array('$username_map' => $username));
                  eval ("\$mod_map_thread_postbit = \"".$tpl->get("mod_map_thread_postbit")."\";");
                }
                /* Begin User-Map by Viktor */

		eval("\$postbit = \"".$tpl->get("thread_postbit")."\";");
		return $postbit;
	}
	
	
	/**
	* jump to last post
	*
	* @return void
	*/
	function lastpost() {
		global $visible, $SID_ARG_2ND_UN, $db, $n, $url2board;
		$result = $db->query_first("SELECT postid FROM bb".$n."_posts WHERE threadid = '".$this->threadid."' $visible ORDER BY posttime DESC", 1);
		header("Location: thread.php?postid=".$result['postid'].$SID_ARG_2ND_UN."#post$result[postid]");
		exit;	
	}
	
	/**
	* jump to first new post
	*
	* @param integer lastvisit
	*
	* @return void
	*/
	function firstnew($lastvisit) {
		global $visible, $db, $n, $SID_ARG_2ND_UN, $threadid, $url2board;
		$result = $db->query_first("SELECT postid FROM bb".$n."_posts WHERE threadid='".$this->threadid."' AND posttime>'".$lastvisit."' $visible ORDER BY posttime ASC", 1);
		if ($result['postid']) header("Location: thread.php?postid=".$result['postid'].$SID_ARG_2ND_UN."#post$result[postid]");
		else header("Location: thread.php?goto=lastpost&threadid=".$threadid.$SID_ARG_2ND_UN);
		exit;
	}
	
	
	/**
	* jump to next newest thread
	*
	* @return void
	*/
	function nextnewest() {
		global $db, $n, $thread, $boardid, $tpl, $lang, $threadid, $wbbuserdata, $REMOTE_ADDR;
		$result = $db->query_first("SELECT threadid FROM bb".$n."_threads WHERE visible = 1 AND lastposttime>'$thread[lastposttime]' AND closed <> 3 AND boardid = '$boardid' ORDER BY lastposttime ASC", 1);
		if (!$result['threadid']) error($lang->get("LANG_THREAD_ERROR_NONEXTNEWEST"));
		$threadid = $result['threadid'];
		$this->threadid = $threadid;
		
		$select = ", v.id AS isvoted";
		$join = " LEFT JOIN bb".$n."_votes v ON (v.id=t.threadid AND v.votemode=2 AND ".(($wbbuserdata['userid']) ? ("v.userid='".$wbbuserdata['userid']."'") : ("v.ipaddress='".addslashes($REMOTE_ADDR)."'")).")";
		
		if ($wbbuserdata['userid']) {
			$select .= ", tv.lastvisit, s.emailnotify, s.countemails";	
			$join .= " LEFT JOIN bb".$n."_threadvisit tv ON (tv.threadid=t.threadid AND tv.userid='".$wbbuserdata['userid']."')
			LEFT JOIN bb".$n."_subscribethreads s ON (s.userid='".$wbbuserdata['userid']."' AND s.threadid=t.threadid)";
		}
		
		$thread = $db->query_first("SELECT t.*".$select." FROM bb".$n."_threads t".$join." WHERE t.threadid = '".$this->threadid."'");
	}
	
	/**
	* jump to next oldest thread
	*
	* @return void
	*/
	function nextoldest() {
		global $db, $n, $thread, $boardid, $tpl, $lang, $threadid, $wbbuserdata, $REMOTE_ADDR;
		$result = $db->query_first("SELECT threadid FROM bb".$n."_threads WHERE visible = 1 AND lastposttime<'$thread[lastposttime]' AND closed <> 3 AND boardid = '$boardid' ORDER BY lastposttime DESC", 1);
		if (!$result['threadid']) error($lang->get("LANG_THREAD_ERROR_NONEXTOLDEST"));
		$threadid = $result['threadid'];
		$this->threadid = $threadid;
		$thread = $db->query_first("SELECT * FROM bb".$n."_threads WHERE threadid = '$threadid'");
		
		$select = ", v.id AS isvoted";
		$join = " LEFT JOIN bb".$n."_votes v ON (v.id=t.threadid AND v.votemode=2 AND ".(($wbbuserdata['userid']) ? ("v.userid='".$wbbuserdata['userid']."'") : ("v.ipaddress='".addslashes($REMOTE_ADDR)."'")).")";
		
		if ($wbbuserdata['userid']) {
			$select .= ", tv.lastvisit, s.emailnotify, s.countemails";	
			$join .= " LEFT JOIN bb".$n."_threadvisit tv ON (tv.threadid=t.threadid AND tv.userid='".$wbbuserdata['userid']."')
			LEFT JOIN bb".$n."_subscribethreads s ON (s.userid='".$wbbuserdata['userid']."' AND s.threadid=t.threadid)";
		}
		
		$thread = $db->query_first("SELECT t.*".$select." FROM bb".$n."_threads t".$join." WHERE t.threadid = '".$this->threadid."'");	
	}
	
	/**
	* create links to further pages
	*
	* @return void
	*/
	function makePagelink() {
		global $SID_ARG_2ND, $threadview, $hilight, $hilightuser, $showpagelinks;
		$this->pagelink = makepagelink("thread.php?threadid=".$this->threadid."&amp;threadview=$threadview&amp;hilight=".urlencode($hilight)."&amp;hilightuser=$hilightuser".$SID_ARG_2ND, $this->page, $this->pages, $showpagelinks - 1);
	}
	
	
	/**
	* read post information from database
	*
	* @return resource result
	*/
	function readPosts() {
		global $docensor, $board, $wbbuserdata, $hilight, $usecode, $showuserfieldsinthread, $db, $n, $showavatar, $authormarking, $lang; 
		$this->parse = &new parse($docensor, 75, $wbbuserdata['showimages'], $hilight, $usecode);
		
		if ($this->readAttachments) {
			$result = $db->unbuffered_query("SELECT postid, attachmentid, attachmentname, attachmentextension, attachmentsize, counter, thumbnailextension FROM bb".$n."_attachments WHERE postid IN (0".$this->postids.") ORDER BY uploadtime");
			while ($row = $db->fetch_array($result)) {
				$this->attachmentArray[$row['postid']][$row['attachmentid']] = $row;
			}
		}
		
		if ($showuserfieldsinthread == 1) {
			$userfields = ", uf.*";
			$userfieldsjoin = "LEFT JOIN bb".$n."_userfields uf ON (uf.userid=p.userid)";
			$result = $db->unbuffered_query("SELECT profilefieldid, title, fieldtype FROM bb".$n."_profilefields WHERE showinthread=1".(($wbbuserdata['a_can_view_hidden'] == 0) ? (" AND hidden=0") : (""))." ORDER BY fieldorder ASC");
			while ($row = $db->fetch_array($result)) {
				$row['title'] = getlangvar($row['title'], $lang);
				$this->userfieldcache[] = $row;
			}
		}
		else {
			$userfields = '';
			$userfieldsjoin = '';
		}
		
		if ($showavatar == 1) {
			$avatar = ", av.avatarid, av.avatarextension, av.width, av.height";
			$avatarjoin = "LEFT JOIN bb".$n."_avatars av ON (u.avatarid=av.avatarid)";
		}
		else {
			$avatar = '';
			$avatarjoin = '';	
		}
		
		if ($authormarking == 1) {
			$marking = ", g.useronlinemarking";
			$markingjoin = "LEFT JOIN bb".$n."_groups g ON (u.useronlinegroupid=g.groupid)";
		}
		else {
			$marking = '';
			$markingjoin = '';	
		}
		
		
		$result = $db->query("SELECT p.*, pc.cache,
		u.userposts, u.regdate, u.signature, u.email, u.homepage, u.icq, u.aim, u.yim, u.msn, u.showemail, u.receivepm, u.usercanemail, u.ratingcount, u.ratingpoints, u.gender, u.invisible, u.title, u.lastactivity, u.allowsigsmilies, u.allowsightml, u.allowsigbbcode, u.allowsigimages, u.disablesignature,u.guthaben,u.away_message, u.away_from, u.away_to, u.away,
		r.ranktitle, r.rankimages,
		i.iconpath, i.icontitle
		$userfields
		$avatar
		$marking
                ,mp.place
		FROM bb".$n."_posts p 
		LEFT JOIN bb".$n."_users u USING (userid)
		LEFT JOIN bb".$n."_ranks r USING (rankid)
		LEFT JOIN bb".$n."_icons i ON (p.iconid=i.iconid)
		LEFT JOIN bb".$n."_postcache pc ON (p.postid=pc.postid)
		$userfieldsjoin
		$avatarjoin
		$markingjoin

LEFT JOIN bb".$n."_map_mod_user mp ON (p.userid=mp.user_id)
		WHERE p.postid IN (0".$this->postids.")".$this->orderBy);
		
		return $result;
	}
}














/** FlatThread Class **/
class FlatThread extends Thread {
	
	/**
	* constructor
	*
	* @param integer threadid
	*/
	function FlatThread($threadid) {
		$this->threadid = $threadid;
	}
	
	/**
	* get and stores the pagenumber of a certain message
	*
	* @param integer postid
	*
	* @return void
	*/
	function gotoPost($postid) {
		global $db, $n, $visible, $postorder, $postsperpage, $_GET;
		if ($postorder == 0) $result = $db->query_first("SELECT COUNT(*) AS posts FROM bb".$n."_posts WHERE threadid='".$this->threadid."' AND postid<='$postid' $visible");
		else $result = $db->query_first("SELECT COUNT(*) AS posts FROM bb".$n."_posts WHERE threadid='$threadid' AND postid>='$postid' $visible");
		$_GET['page'] = ceil($result['posts'] / $postsperpage);
	}
	
	
	/**
	* parse messages and returns complete postbit
	*
	* @return string postbit
	*/
	function start() {
		global $postorder, $db;
		$this->getPostIds();	
		
		$this->orderBy = "ORDER BY p.posttime ".(($postorder) ? ("DESC") : ("ASC"));
		
		$count = 0;
		$postbit = '';
		$result = $this->readPosts();
		while ($row = $db->fetch_array($result)) $postbit .= $this->makePostBit($row, $count++);
		
		return $postbit;	
	}
	
	
	/**
	* get and stores the postids of the current page
	*
	* @return void
	*/
	function getPostIds() {
		global $visible, $db, $n, $_GET, $postsperpage, $postorder, $thread;
		$postcount = $thread['replycount'] + 1;
		
		if (isset($_GET['page'])) {
			$this->page = intval($_GET['page']);
			if ($this->page == 0) $this->page = 1;
		}
		else $this->page = 1;
		
		$this->pages = ceil($postcount / $postsperpage);
		if ($this->pages > 1) $this->makePagelink();
		
		$result = $db->unbuffered_query("SELECT postid, attachments FROM bb".$n."_posts WHERE threadid = '".$this->threadid."' $visible ORDER BY posttime ".(($postorder) ? ("DESC") : ("ASC")), 0, $postsperpage, $postsperpage * ($this->page - 1));
		while ($row = $db->fetch_array($result)) {
			$this->postids .= ",".$row['postid'];
			if ($row['attachments']) $this->readAttachments = true;
		}
	}
}












/** ThreadedThread Class **/
class ThreadedThread extends Thread {
	
	/**
	* @var integer offset
	*/
	var $offset = 0;

	/**
	* @var integer offset2
	*/
	var $offset2 = 0;

	/**
	* @var array cache
	*/
	var $cache = array();

	/**
	* @var array list
	*/
	var $list = array();

	/**
	* @var integer max
	*/
	var $max = -1;

	/**
	* @var integer total
	*/
	var $total = 0;

	/**
	* @var integer cout
	*/
	var $count = 0;

	/**
	* @var string postbitlist
	*/
	var $postbitlist = '';
	
	
	/**
	* constructor
	*
	* @param integer threadid
	*/
	function ThreadedThread($threadid) {
		$this->threadid = $threadid;
	}	
	
	
	/**
	* get and stores the pagenumber of a certain message
	*
	* @param integer postid
	*
	* @return void
	*/
	function gotoPost($postid) {
		global $_GET, $postsperpage, $db, $n, $visible;	
		
		$result = $db->query("SELECT postid, parentpostid, attachments FROM bb".$n."_posts WHERE threadid='".$this->threadid."' $visible ORDER BY posttime ASC");
		$this->total = $db->num_rows($result);
		while ($row = $db->fetch_array($result)) {
			$this->cache[$row['parentpostid']][$row['postid']] = 1;
			if ($row['attachments']) $this->readAttachments = true;
		}
		
		$this->countPosts($postid);
		$_GET['page'] = ceil($this->count / $postsperpage);
	}
	
	
	/**
	* get and stores the number of a certain message in threaded view
	* 
	* @param integer postid
	* @param integer count
	* @param integer parentid
	*
	* @return void
	*/
	function countPosts($finalpostid, $count = 0, $parentid = 0) {
		if (!isset($this->cache[$parentid])) return $count;
		reset($this->cache[$parentid]);
		
		while (list($postid, ) = each($this->cache[$parentid])) {
			$count++;
			if ($postid == $finalpostid) {
				$this->count = $count;
				break;
			}
			$count = $this->countPosts($finalpostid, $count, $postid); 	
		}
		
		return $count;	
	}
	
	/**
	* parse messages and returns complete postbit
	*
	* @return string postbit
	*/
	function start() {
		global $db, $n, $postsperpage, $_GET, $visible;
		
		if (isset($_GET['page'])) {
			$this->page = intval($_GET['page']);
			if ($this->page == 0) $this->page = 1;
		}
		else $this->page = 1;
		
		$this->offset = $postsperpage * ($this->page - 1);
		$this->offset2 = $this->offset + $postsperpage;
		
		if (count($this->cache) == 0) {
			$result = $db->query("SELECT postid, parentpostid, attachments FROM bb".$n."_posts WHERE threadid='".$this->threadid."' $visible ORDER BY posttime ASC");
			$this->total = $db->num_rows($result);
			while ($row = $db->fetch_array($result)) {
				$this->cache[$row['parentpostid']][$row['postid']] = 1;
				if ($row['attachments']) $this->readAttachments = true;
			}
		}
		
		$this->pages = ceil($this->total / $postsperpage);
		if ($this->pages > 1) $this->makePagelink();
		
		reset($this->cache);
		$this->generate();
		if ($this->max > 0) $this->sync();
		$result = $this->readPosts();
		
		while ($posts = $db->fetch_array($result)) {
			$temp = $this->list[$posts['postid']];
			$this->list[$posts['postid']] = $posts;
			$this->list[$posts['postid']]['depth'] = $temp;	
		}
		
		$count = 0;
		$postbit = '';
		reset($this->list);
		while (list($postid, ) = each($this->list)) {
			$postbit .= $this->makePostBit($this->list[$postid], $count++, $this->list[$postid]['depth'] * 15);
			$this->postbitlist .= $this->makePostBitList($this->list[$postid], $this->list[$postid]['depth'] * 15);
		}
		return $postbit;
	}
	
	
	/**
	* calculates the depth of the threaded view
	*
	* @param integer parentid
	* @param integer count
	* @param integer depth
	*
	* @return integer count
	*/
	function generate($parentid = 0, $count = 0, $depth = 0) {
		if (!isset($this->cache[$parentid])) return $count;
		reset($this->cache[$parentid]);
		
		while (list($postid, ) = each($this->cache[$parentid])) {
			if ($count >= $this->offset && $count < $this->offset2) {
				if ($this->max == -1) $this->max = $depth;
				if ($depth < $this->max) $this->max = $depth;
				
				$this->list[$postid] = $depth;
				$this->postids .= ",".$postid;	
			}	
			$count++;
			$count = $this->generate($postid, $count, $depth + 1); 	
		}
		
		return $count;
	}
	
	
	/**
	* generates a postlist
	* 
	* @param array posts
	* @param integer imgwidth
	*
	* @return string postlist
	*/
	function makePostBitList($posts, $imgwidth = 0) {
		global $tpl, $wbbuserdata, $lang, $SID_ARG_1ST, $SID_ARG_2ND, $SID_ARG_2ND_UN, $style, $thread;
		
		$postdate = formatdate($wbbuserdata['dateformat'], $posts['posttime']);
		$posttime = formatdate($wbbuserdata['timeformat'], $posts['posttime']);
		
		if (!$posts['posttopic']) $posts['posttopic'] = "RE: ".$thread['topic']; 
		$posts['posttopic'] = htmlconverter(textwrap($posts['posttopic']));
		$posts['username'] = htmlconverter(textwrap($posts['username'], 30));
		
		if ($posts['posttime'] > $thread['lastvisit']) $newpost = 1;
		else $newpost = 0;
		
		
		eval("\$postbit = \"".$tpl->get("thread_postbitlist")."\";");
		return $postbit;
	}
	
	/**
	* calculates the depth of the threaded view
	*
	* @return void
	*/
	function sync() {
		reset($this->list);
		while (list($postid, $depth) = each($this->list)) $this->list[$postid] = $depth - $this->max;
	}	
}













if (checkmodpermissions()) $visible = '';
else $visible = "AND visible=1";

if (isset($_REQUEST['threadview'])) $threadview = intval($_REQUEST['threadview']);
else $threadview = $wbbuserdata['threadview'];

if (isset($_REQUEST['hilight'])) $hilight = urldecode($_REQUEST['hilight']);
else $hilight = '';

if (isset($_REQUEST['hilightuser'])) $hilightuser = intval($_REQUEST['hilightuser']);
else $hilightuser = 0;

if (!isset($_REQUEST['goto'])) $_REQUEST['goto'] = '';

if ($threadview == 1) $t = &new ThreadedThread($threadid);
else $t = &new FlatThread($threadid);

/* goto actions 1 */
if ($_REQUEST['goto'] == "lastpost") $t->lastpost();
if ($_REQUEST['goto'] == "nextnewest") $t->nextnewest();
if ($_REQUEST['goto'] == "nextoldest") $t->nextoldest();

/* threadvisit */
if ($board['lastvisit'] > $thread['lastvisit']) $thread['lastvisit'] = $board['lastvisit'];
if ($wbbuserdata['lastvisit'] > $thread['lastvisit']) $thread['lastvisit'] = $wbbuserdata['lastvisit'];

/* goto actions 2 */
if ($_REQUEST['goto'] == "firstnew") $t->firstnew($thread['lastvisit']);
if ($_REQUEST['goto'] == "firstnew_thread") $t->firstnew($wbbuserdata['lastvisit']);


if ($wbbuserdata['umaxposts']) $postsperpage = $wbbuserdata['umaxposts'];
elseif ($board['postsperpage']) $postsperpage = $board['postsperpage'];
else $postsperpage = $default_postsperpage;
$postorder = $board['postorder'];

if (isset($postid)) $t->gotoPost($postid);

$db->unbuffered_query("UPDATE bb".$n."_threads SET views=views+1 WHERE threadid='$threadid'", 1);
if ($wbbuserdata['userid'] && $thread['lastposttime'] > $thread['lastvisit']) $db->unbuffered_query("REPLACE INTO bb".$n."_threadvisit (threadid,userid,lastvisit) VALUES ('".$threadid."','".$wbbuserdata['userid']."','".time()."')", 1);


$boardnavcache = array();
if ($showboardjump == 1) $boardjump = makeboardjump($boardid);
$navbar = getNavbar($board['parentlist']);
eval("\$navbar .= \"".$tpl->get("navbar_board")."\";");

$postbit = $t->start();
$thread_poll = '';
if ($thread['pollid']) {
	if (checkmodpermissions("m_can_edit_poll")) eval("\$mod_poll_edit = \"".$tpl->get("thread_poll_edit")."\";");
	unset($votecheck);
	
	$poll = $db->query_first("SELECT * FROM bb".$n."_polls WHERE pollid='$thread[pollid]'");
	$poll['question'] = htmlconverter($poll['question']);
	
	if ($poll['timeout'] == 0) $timeout = time() + 1;
	else $timeout = $poll['starttime'] + $poll['timeout'] * 86400;
	if ($_REQUEST['preresult'] != 1 && checkpermissions("can_vote_poll") == 1 && $timeout >= time()) {
		if ($wbbuserdata['userid']) $votecheck = $db->query_first("SELECT id AS pollid FROM bb".$n."_votes WHERE id='$thread[pollid]' AND votemode=1 AND userid='$wbbuserdata[userid]'");
		else $votecheck = $db->query_first("SELECT id AS pollid FROM bb".$n."_votes WHERE id='$thread[pollid]' AND votemode=1 AND ipaddress='$REMOTE_ADDR'");
	} 
	
	// already voted; show result
	if ($_REQUEST['preresult'] == 1 || $votecheck['pollid'] || !checkpermissions("can_vote_poll") || $timeout < time()) {
		$votes = 0;
		unset($polloption);
		$totalvotes = 0;
		$polloptions = array();
		$result = $db->unbuffered_query("SELECT * FROM bb".$n."_polloptions WHERE pollid='$thread[pollid]' ORDER BY votes DESC");
		while ($row = $db->fetch_array($result)) {
			$totalvotes += $row['votes'];
			$polloptions[] = $row;
		}
		
		$i = 1;
		if (count($polloptions)) {
			while (list($key, $row) = each($polloptions)) {
				$row['polloption'] = htmlconverter(textwrap($row['polloption']));
				if ($totalvotes) {
					$percent_float = $row['votes'] * 100 / $totalvotes;
					$percent = number_format($percent_float, 2);
					$percent_int = floor($percent_float) * 3;
					$percent_int += 1;	
				}
				else $percent = $percent_int = 0; 
				eval("\$thread_poll_resultbit .= \"".$tpl->get("thread_poll_resultbit")."\";");
				if ($i == 5) $i = 0;
				$i++;
			}
		}
		
		$lang->items['LANG_THREAD_POLL_VOTES'] = $lang->get("LANG_THREAD_POLL_VOTES", array('$totalvotes' => $totalvotes));
		eval("\$thread_poll = \"".$tpl->get("thread_poll_result")."\";");
	}
	else {
		if ($poll['choicecount'] > 1) $inputtype = "checkbox";
		else $inputtype = "radio";
		
		$result = $db->unbuffered_query("SELECT * FROM bb".$n."_polloptions WHERE pollid='$thread[pollid]' ORDER BY showorder ASC");
		while ($row = $db->fetch_array($result)) {
			$row['polloption'] = htmlconverter(textwrap($row['polloption']));
			eval("\$thread_pollbit .= \"".$tpl->get("thread_pollbit")."\";");
		}
		
		eval("\$thread_poll = \"".$tpl->get("thread_poll")."\";");
	}
}

if ($board['allowratings'] == 1) {
	$colors = createGradient($style['gradientleft'], $style['gradientmiddle'], $style['gradientright']);
	if ($thread['voted'] && $thread['voted'] >= $showvotes) $threadrating = threadrating($thread['votepoints'], $thread['voted']);
}
else $threadrating = '';

if ($board['closed'] == 0) eval("\$newthread = \"".$tpl->get("board_newthread")."\";");
if ($thread['closed'] != 0) eval("\$addreply = \"".$tpl->get("thread_closed")."\";");
elseif ($board['closed'] == 0) eval("\$addreply = \"".$tpl->get("thread_addreply")."\";");

/* Ähnliche Themen */
$threadtopic = addslashes($thread['topic']);
/* Ähnliche Themen Ende */

$thread['topic'] = htmlconverter(textwrap($thread['topic']));

if ($board['emailnotify'] == 1 && $board['countemails'] != 0) $db->unbuffered_query("UPDATE bb".$n."_subscribeboards SET countemails=0 WHERE userid = '".$wbbuserdata['userid']."' AND boardid = '".$boardid."'", 1);
if ($thread['emailnotify'] == 1 && $thread['countemails'] != 0) $db->unbuffered_query("UPDATE bb".$n."_subscribethreads SET countemails=0 WHERE userid = '".$wbbuserdata['userid']."' AND threadid = '".$threadid."'", 1);

/* Ähnlich Themen */
function GetAccessableForums() {
	global $db, $n, $wbbuserdata, $boardcache;
	
	if (!isset($boardcache) || !is_array($boardcache)) $boardcache = array();
	$result = $db->query("SELECT boardid,boardorder,parentid,parentlist FROM bb".$n."_boards ORDER BY parentid ASC, boardorder ASC");
	while ($row = $db->fetch_array($result)) {
		$boardcache[$row['parentid']][$row['boardorder']][$row['boardid']] = $row;
	}

	$boardpermissions = getPermissions();
	$boardids = '';
	foreach ($boardcache as $key => $val) {
		foreach ($val as $key2 => $val2) {
			foreach ($val2 as $row) if ((!isset($boardpermissions[$row['boardid']]['can_view_board']) || $boardpermissions[$row['boardid']]['can_view_board'] != 0) && (!isset($boardpermissions[$row['boardid']]['can_enter_board']) || $boardpermissions[$row['boardid']]['can_enter_board'] != 0) && (!isset($boardpermissions[$row['boardid']]['can_read_thread']) || $boardpermissions[$row['boardid']]['can_read_thread'] != 0)) $boardids .= ",".$row['boardid'];
		}	
	}
	return $boardids;
}

$similar = $db->query("SELECT t.threadid, t.boardid, x.title, x.boardid, t.prefix, t.topic, t.starttime, t.starterid, t.starter, t.lastposttime, t.lastposterid, t.lastposter, t.replycount, t.views, t.attachments, t.closed, t.important, t.pollid FROM bb".$n."_threads t, bb".$n."_boards x LEFT JOIN bb".$n."_boards b ON (t.boardid=b.boardid) WHERE t.visible='1' AND t.closed <> 3 AND t.threadid <> $threadid AND b.password='' AND t.boardid=x.boardid AND t.boardid IN (0".GetAccessableForums().") AND t.topic LIKE '%$threadtopic%' ORDER BY t.lastposttime DESC LIMIT 0, 5;");
if($db->num_rows($similar)) {
	$i = "0";
	while ($row = $db->fetch_array($similar)) {
		$i++;
		$tdclass = getone($i, "tablea", "tableb");
		$started = formatdate($wbbuserdata['dateformat'], $row['starttime'],1);
		$started .= " <span class=\"time\">".formatdate($wbbuserdata['timeformat'], $row['starttime'])."</span>";
		$lastreply = formatdate($wbbuserdata['dateformat'], $row['lastposttime'],1);
		$lastreply .= " <span class=\"time\">".formatdate($wbbuserdata['timeformat'], $row['lastposttime'])."</span>";
		if ($row['replycount'] >= 1000) $row['replycount'] = number_format($row['replycount'], 0, "", $lang->get("LANG_GLOBAL_THOUSANDS_SEP"));
		if ($row['views'] >= 1000) $row['views'] = number_format($row['views'], 0, "", $lang->get("LANG_GLOBAL_THOUSANDS_SEP"));
		if (strlen($row['topic']) > 60) $row['topic'] = substr($row['topic'], 0, 54).' [...]';
		eval("\$similar_thread_bit .= \"".$tpl->get("thread_similarthread_bit")."\";");
	}
	eval("\$similar_thread = \"".$tpl->get("thread_similarthread")."\";");
}
/* Ähnliche Themen Ende */

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


thread_postbit

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:
<table cellpadding="0" cellspacing="0" border="0" style="width:100%"><tr><if($indentwidth!=0)><then><td><img src="{$style['imagefolder']}/spacer.gif" height="10" width="$indentwidth" border="0" alt="" title="" /></td></then></if><td width="100%"><table cellpadding="{$style['tableincellpadding']}" cellspacing="{$style['tableincellspacing']}" border="{$style['tableinborder']}" style="width:100%" class="tableinborder">
 <tr align="left">	
  <td class="$tdclass" valign="top"><a name="post$posts[postid]" id="post$posts[postid]"></a>
   <table style="width:100%" cellpadding="4" cellspacing="0" border="0" class="{$tdclass}_fc">
    <tr>
     <td style="width:100%" class="smallfont"><if($posts['userid'])><then><span class="normalfont"><b><a href="profile.php?userid=$posts[userid]{$SID_ARG_2ND}">$posts[username]</a></b>$mod_map_thread_postbit</span> <if($posts['gender'] == 1)><then><img src="{$style['imagefolder']}/male.gif" border="0" alt="{$LANG_THREAD_MALE}" title="{$LANG_THREAD_MALE}" /></then></if>
     <if($posts['gender'] == 2)><then><img src="{$style['imagefolder']}/female.gif" border="0" alt="{$LANG_THREAD_FEMALE}" title="{$LANG_THREAD_FEMALE}" /></then></if><br />
      $posts[ranktitle]
        <if($rankimages!="")><then><br />$rankimages</then></if>
        <if($useravatar!="")><then><br /><br />$useravatar</then></if><br /><br />
	<if($showregdateinthread==1)><then>{$lang->items['LANG_THREAD_REGDATE']} $posts[regdate]<br /></then></if>
	<if($showuserpostsinthread==1)><then>{$lang->items['LANG_THREAD_USERPOSTS']} $posts[userposts]<br /></then></if>
<if($guthaben['show_gutinthread'])><then>{$lang->items['LANG_THREAD_GUTHABEN']} $user_guthaben $waehrung<br /></then></if>
<if($guthaben['show_ktointhread'])><then>{$lang->items['LANG_THREAD_KONTONUMMER']} $posts[userid]<br /></then></if>
	$userfields
	$userrating
	<if($userlevel)><then><br />$userlevel</then></if>
	<if($threadstarter==1)><then><br />{$lang->items['LANG_THREAD_THREADSTARTER']} <img src="{$style['imagefolder']}/threadstarter.gif" border="0" alt="{$LANG_THREAD_THREADSTARTER_ALT}" title="{$LANG_THREAD_THREADSTARTER_ALT}" /></then></if>
	 </then>
	 <else><span class="normalfont"><b>$posts[username]</b></span><br /><span class="smallfont">{$lang->items['LANG_THREAD_UNREGISTERED']}</span></else>
	 </if>
<br /><br /><if($away==1 && $wbbuserdata['can_see_away_message']==1)><then>{$lang->items['LANG_AWAY_THREAD_FROM']} $datefrom[2].$datefrom[1].$datefrom[0] <br />{$lang->items['LANG_AWAY_THREAD_TO']} $dateto[2].$dateto[1].$dateto[0] {$lang->items['LANG_AWAY_THREAD_END']}
                          {$lang->items['LANG_AWAY_MESSAGE']}  $away_message
                          </then></if>
     <br /><img src="{$style['imagefolder']}/spacer.gif" width="159" height="1" border="0" alt="" title="" /></td>
    </tr>
   </table>
  </td>
  <td class="$tdclass" valign="top" style="width:100%">
   <table style="width:100%" cellpadding="4" cellspacing="0" border="0" class="{$tdclass}_fc">
    <tr>
     <td style="width:100%" class="normalfont" align="left">
      <table style="width:100%" cellpadding="4" cellspacing="0" border="0" class="{$tdclass}_fc">
       <tr>
        <td><span class="smallfont">$posticon <b>$posts[posttopic]</b></span></td>
        <td align="right" nowrap="nowrap"><a href="addreply.php?postid=$posts[postid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/replypost.gif" border="0" alt="{$lang->items['LANG_THREAD_REPLYPOST']}" title="{$lang->items['LANG_THREAD_REPLYPOST']}" /></a> <a href="addreply.php?action=quote&amp;postid=$posts[postid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/quote.gif" border="0" alt="{$lang->items['LANG_THREAD_QUOTE']}" title="{$lang->items['LANG_THREAD_QUOTE']}" /></a> <a href="editpost.php?postid=$posts[postid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/editpost.gif" border="0" alt="{$lang->items['LANG_THREAD_EDITPOST']}" title="{$lang->items['LANG_THREAD_EDITPOST']}" /></a> <a href="report.php?postid=$posts[postid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/report.gif" border="0" alt="{$lang->items['LANG_THREAD_REPORT']}" title="{$lang->items['LANG_THREAD_REPORT']}" /></a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<if($wbbuserdata['a_can_view_ipaddress']==1)><then><a href="misc.php?action=viewip&amp;postid=$posts[postid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/ip.gif" border="0" alt="{$lang->items['LANG_THREAD_VIEWIP']}" title="{$lang->items['LANG_THREAD_VIEWIP']}" /></a> </then></if><a href="javascript:self.scrollTo(0,0);"><img src="{$style['imagefolder']}/goup.gif" border="0" alt="{$lang->items['LANG_THREAD_GOUP']}" title="{$lang->items['LANG_THREAD_GOUP']}" /></a></td>
       </tr>
      </table><hr size="{$style['tableincellspacing']}" class="threadline" />
      $posts[message]
      $hangin
      $attachments
      $signature
      <if($posts['editorid'])><then><p><span class="smallfont">{$LANG_THREAD_EDITOR}</span></p></then></if>
      <if($invisible==1)><then><p align="right"><span class="normalfont">{$lang->items['LANG_THREAD_INVISIBLE']}</span></p></then></if>
     </td>
    </tr>
   </table>
  </td>
 </tr>
 <tr>
  <td class="$tdclass" align="center" nowrap="nowrap"><span class="smallfont">
   <if($newpost==1)>
    <then><a href="thread.php?postid=$posts[postid]#post$posts[postid]"><img src="{$style['imagefolder']}/posticonnew.gif" border="0" alt="{$lang->items['LANG_THREAD_NEWPOST']}" title="{$lang->items['LANG_THREAD_NEWPOST']}" /></a></then>
    <else><a href="thread.php?postid=$posts[postid]#post$posts[postid]"><img src="{$style['imagefolder']}/posticon.gif" border="0" alt="" title="" /></a></else>
   </if>  
   $postdate <span class="time">$posttime</span></span></td>
  <td class="$tdclass" align="left" style="width:100%" valign="middle"><span class="smallfont">
   <if($posts['userid'])>
    <then>
     <if($showonlineinthread==1)>
      <then>
       <if($away==0 || $wbbuserdata['can_see_away_message']==0)>
       <then>
       <if($user_online==1)>
        <then><img src="{$style['imagefolder']}/user_online.gif" border="0" alt="{$LANG_MEMBERS_USERONLINE}" title="{$LANG_MEMBERS_USERONLINE}" /></then>
        <else><img src="{$style['imagefolder']}/user_offline.gif" border="0" alt="{$LANG_MEMBERS_USERONLINE}" title="{$LANG_MEMBERS_USERONLINE}" /></else>
       </if>
       </then>
       <else><img src="{$style['imagefolder']}/user_away.gif" border="0" alt="{$LANG_MEMBERS_USERAWAY}" title="{$LANG_MEMBERS_USERAWAY}" /></else>
       </if>    
     <if($posts['showemail']==1)>
      <then><a href="mailto:$posts[email]"><img src="{$style['imagefolder']}/email.gif" border="0" alt="{$LANG_MEMBERS_SENDEMAIL}" title="{$LANG_MEMBERS_SENDEMAIL}" /></a></then>
      <else>
       <if($posts['usercanemail']==1)>
        <then><a href="formmail.php?userid=$posts[userid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/email.gif" border="0" alt="{$LANG_MEMBERS_SENDEMAIL}" title="{$LANG_MEMBERS_SENDEMAIL}" /></a></then>
       </if>
      </else>
     </if>
     
     <if($posts['homepage'])>
      <then><a href="$posts[homepage]" target="_blank"><img src="{$style['imagefolder']}/www.gif" border="0" alt="{$LANG_MEMBERS_HOMEPAGE}" title="{$LANG_MEMBERS_HOMEPAGE}" /></a></then>
     </if>
   
     <a href="search.php?action=user&amp;userid=$posts[userid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/search.gif" border="0" alt="{$LANG_MEMBERS_SEARCH}" title="{$LANG_MEMBERS_SEARCH}" /></a>
  
     <a href="usercp.php?action=buddy&amp;add=$posts[userid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/homie.gif" border="0" alt="{$LANG_MEMBERS_BUDDY}" title="{$LANG_MEMBERS_BUDDY}" /></a>
    
     <if($posts['receivepm']==1 && $wbbuserdata['can_use_pms']==1)><then><a href="pms.php?action=newpm&amp;userid=$posts[userid]{$SID_ARG_2ND}"><img src="{$style['imagefolder']}/pm.gif" border="0" alt="{$LANG_MEMBERS_PM}" title="{$LANG_MEMBERS_PM}" /></a></then></if>
     
     <if($posts['icq'])><then><a href="http://web.icq.com/whitepages/add_me/1,,,00.icq?uin=$posts[icq]&amp;action=add"><img src="http://web.icq.com/whitepages/online?icq=$posts[icq]&amp;img=5" width="18" height="18" border="0" alt="{$LANG_MEMBERS_ICQ}" title="{$LANG_MEMBERS_ICQ}" /></a></then></if>
     
     <if($posts['aim'])><then><a href="aim:goim?screenname=$posts[aim]&amp;message=Hi.+Are+you+there?"><img src="{$style['imagefolder']}/aim.gif" border="0" alt="{$LANG_MEMBERS_AIM}" title="{$LANG_MEMBERS_AIM}" /></a></then></if>
     
     <if($posts['yim'])><then><a href="http://edit.yahoo.com/config/send_webmesg?.target=$posts[yim]&amp;.src=pg"><img src="{$style['imagefolder']}/yim.gif" border="0" alt="{$LANG_MEMBERS_YIM}" title="{$LANG_MEMBERS_YIM}" /></a></then></if>
     
     <if($posts['msn'])><then><a href="http://members.msn.com/?mem=$posts[msn]"><img src="{$style['imagefolder']}/msn.gif" border="0" alt="{$LANG_MEMBERS_MSN}" title="{$LANG_MEMBERS_MSN}" /></a></then></if>
     
    </then>
   </if> 
  </span></td>
 </tr>
</table></td></tr></table>


woran könnt es liegen? ich vermut ma das template.. aber hab des alte neu eingespielt un dann wieder verändert.. hm

__________________
großes Grinsen Frauen und Technik.. ist´s kein Herd... is Ende großes Grinsen
23.04.05 12:48 luminanz ist offline E-Mail Finden Als Freund hinzufügen
zeitter1 zeitter1 ist männlich
Mitglied


Dabei seit: 06.09.04
Beiträge: 102
Forenversion: 2.3.0

Antworten Zitieren Editieren Melden       UP

HuHU also wenn ich mich abwesend melden will sagt der das ihm ein tpl fehlt aber es wurden auch keine mitgleifert ich habe folgende dateien im ordner

acp_tpl
german_away
setup
away_tpls.style
rechte.wbb
user_awag (bild)
usercp_away (bild)
ind ne install (anleitung)
dann die demo und update.

??? wo sind die tpls ???
26.04.05 07:31 zeitter1 ist offline E-Mail WWW Finden Als Freund hinzufügen
Simps-O-Rama
Mitglied


Dabei seit: 19.06.04
Beiträge: 3.165

Antworten Zitieren Editieren Melden       UP

In away_tpls.style sind wahrsch. die Templates drinnen. Importiere diese Datei einfach unter "Style importieren" und dann siehst du die Templates.
26.04.05 08:32 Simps-O-Rama ist offline E-Mail Finden Als Freund hinzufügen
AngelOfMine AngelOfMine ist männlich
Mitglied


Dabei seit: 04.11.04
Beiträge: 115
Fähigkeiten: WBB2 Fortgeschritten
Herkunft: Bielefeld, NRW
Forenversion: 2.3

Antworten Zitieren Editieren Melden       UP

@zeitter
Die Templates sind da. Hast auch du evtl. ein eigenes Templatepack erstellt? Die Templates landen automatisch im Standard-Templateverzeichnis und müssen ggf. noch in dein eigenes Teplatepack kopiert werden...

__________________
Liebe Grüße
Angel
26.04.05 09:44 AngelOfMine ist offline E-Mail WWW Finden Als Freund hinzufügen
Speedrider Speedrider ist männlich
Mitglied


Dabei seit: 16.01.04
Beiträge: 689
Herkunft: Heidelberg
Forenversion: 2.3

Themenstarter Thema begonnen von Speedrider
Antworten Zitieren Editieren Melden       UP

@luminanz


Ich konnte leider keinen Fehler finden.

Bau am besten ihn beiden Sachen alles nochmal aus udn bei denn Hack nochmal Gründlich ein und kontrollier es abendzu mal.

__________________
Ich gebe keinen Support mehr für meine Hacks für das Wbb2, da ich nur noch in der Szene des Burning Board 3 zuständig bin.
Das neuste Projekt von Wbb3Mods.de
Erste Einblicke in das Incendium CMS 1.0
27.04.05 19:50 Speedrider ist offline E-Mail Finden Als Freund hinzufügen MSN Passport-Profil von Speedrider anzeigen
fuchs.van.fuchs
Mitglied


Dabei seit: 24.04.05
Beiträge: 2

Antworten Zitieren Editieren Melden       UP

Danke für den Hack der funktioniert wunderbar! großes Grinsen großes Grinsen großes Grinsen

Schöne Grüße aus dem Hinterland!
10.05.05 14:54 fuchs.van.fuchs ist offline E-Mail Finden Als Freund hinzufügen
Seiten (40): « erste ... « vorherige 3 4 5 6 7 8 9 10 11 [12] 13 14 15 16 17 18 19 20 21 nächste » ... letzte » Baumstruktur | Brettstruktur
Gehe zu:

Neues Thema erstellen Antwort erstellen

yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB 2.3.x » [WBB 2.3.x] Hacks und Addons » Abwesenheitshack v2.1.1