Smilies Kategorie |
|
Danke für die Mühe haumi..und nur keinen Stress..
Rom wurde auch nicht an einem Tag erbaut..
|
|
06.09.2010 14:22 |
|
|
haumi
Boardbetreiber
[meine Galerie]
Dabei seit: 06.06.2009
Beiträge: 3.441
Herkunft: NRW
Postid: 4963
|
|
Hier nun die kleine Ergänzung:
Erstelle eine neue Sprachvariable:
Kategorie: acp_global
Sprachvariable: LANG_ACP_GLOBAL_MENU_SMILIE_SORT
Textinhalt: Smilies einlesen und sortieren
Führe im acp unter SQL Abfragen -->SQL-Abfrage(n) eingeben: folgende SQL-Abfrage durch:
INSERT INTO bb1_acpmenuitems (itemgroupid, link, languageitem, conditiontype, showorder, acpmode) VALUES ('11','smilie_sort.php', 'SMILIE_SORT', 'OR', 5, 2)
Danach sollte im ACP der neue Menüpunkt: Smilies einlesen und sortieren zu sehen sein.
Wenn denn die Datei smilie_sort.php aus dem Anhang in das acp-Verzeichnis liegt, dann sollte das ganze funktionieren.
Fürs wbblite:
Öffne acp/templates/menu.htm und suche:
code: |
1:
|
<p><a href="smiliepack.php?action=version&sid=$session[hash]" target="main">Versionsüberprüfung</a></p> |
|
füge darunter ein:
code: |
1:
|
<p><a href="smilie_sort.php?action=view&sid=$session[hash]" target="main">smilies einlesen und sortieren</a></p> |
|
Auch hier gilt wie immer:
alle zu ändernden templates und php-Dateien vorher sichern,
damit man bei einem Fehler den alten Zustand wieder herstellen kann!!
Eine Garantie wird auch nicht übernommen.
Wenn etwas unklar sein sollte bitte hier fragen bevor man etwas falsch macht.
Es wird auch Hilfe gegeben wenn etwas nicht so ganz geklappt hat.
Urheber ist haumi - aber jeder kann es frei verwenden und nach belieben abändern.
Es folgt aber noch eine genaus Beschreibung einschl. Anleitung - auch für das wbblite.
LG
haumi
__________________
Gelassen das hinnehmen, was nicht zu ändern ist,
engagiert angehen was man gestalten kann.
|
|
06.09.2010 20:08 |
|
|
|
Danke haumi !
Habe es auch eingebaut und nach einem kleinen Gedankenfehler meinerseits funktionierte es natürlich auch bestens.
Winki
__________________
|
|
14.12.2010 12:17 |
|
|
|
Zitat: |
Original von haumi
Hallo darkfleeter
ich habe fast überall den Smilie-Kategorien v1.0 by Merides eingebaut.
Wo er zu finden ist steht leider nicht in der Anleitung aber yourwbb oder mywbb wird da bestimmt was haben.
Weitere eigene Sachen.
Wenn man die Smilies im Ordner wbb2/images/smilies in Ordner reinpackt z. b.
standard
willkommen
sonstiges
etc.
dann gibt es eine kleine Erweiterung, wo du im ACP nur auf ein Knöpfchen drückst und das Programm legt je Ordner eine Kategorie an.
Anschließend werden diese Ordner nacheinander geöffnet und je Smilie eine Datensatz in der Datenbank angelegt, wobei die Zuordnung zur Kategorie etc auch sofort mit vergeben wird.
Dann werden die Ordnungsnummern in Blöcken je Kategorie vergeben.
z. B.
1 - 200 für alphabet
201 - 400 für Blumen
401 - 600 für sonstiges etc.
Den Nummernblocksprung kann man nach belieben einstellen - ich habs wie beschrieben auf 200 stehen.
Da nun Kategorien und Smilies alphabetisch sortiert werden, empfiehlt es sich den Standardordner als 1_ standard zu wählen (siehe hier im Board) damit diese Smilies die Nummern 1 - xxx bekommen und somit in der Shoutbox und bei der Beitragserstellung angezeigt werden.
Sollte durch die alphabetische Sortierung die Reihenfolge der Anzeige nicht korrekt sein, so muss man einmalig diese Reihenfolge anpassen und danach wird die immer so übernommen.
Solltest du Interesse haben und es sind noch Sachen unklar dann schreib mal ne PN und dann können wir mal telefonieren.
Da lassen sich alle Fragen beantworten und Unklarheiten beseitigen.
LG
haumi |
|
Hi,
habe den Hack gefunden, nur bin ich mir bei dem Teil nicht so sicher, ist für das wbb 2.2 und man soll die acp/smilie.php austauschen. :( Nur hat die sich nicht geändert, von 2.2 und 2.36pl2?
Derzeit habe ich noch Advanced Smilies 1.2 drinne, aber das Teil hat nicht die Funktion mit der Ordnungsnummer drinne. :(
__________________
lg,
Venus. :)
|
|
04.07.2011 17:33 |
|
|
|
Also den Smilie in Kategorien habe ich nun auch eingebaut.
Sprachvariable - wie von haumi beschrieben - sowie smilie_sort.php ist auch drinnen.
Im ACP erscheint auch der Punkt Smilies einlesen und sortieren.
Beim Hochladen wurden auch einige Kategorien erstellt , will ich die Kategorien bearbeiten und mir die Smilies anzeigen lassen ist alles leer.
Will ich einen Smilie bearbeiten und gehe auf "speichern" kommt nur eine weiße Seite.
Die Smilies sind zwar im Board zu sehen , leider aber keine Kategorien.
Will ich auf "mehr Smilies" klicken , erhalte ich eine Fehlermeldung:
SQL-DATABASE ERROR
Database error in WoltLab Burning Board (2.3.6): Invalid SQL: SELECT smiliepath, smilietitle, smiliecode,catname FROM bb1_smilies WHERE catname='' ORDER BY smilieid ASC LIMIT -24, 24
mysql error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-24, 24' at line 1
mysql error number: 1064
mysql version: 4.1.22-nmm-1-log
php version: 4.4.9-nmm4
Date: 22.07.2011 @ 18:09
Script: /wbb2/misc.php?action=moresmilies
Referer: http://hartz4-treffpunkt.de/wbb2/addreply.php?threadid=61
__________________
|
|
22.07.2011 18:20 |
|
|
|
Also bei Bayouma klappt es auch , haben ja denselben Hoster
Daten sind bereits bei dir
__________________
|
|
22.07.2011 22:47 |
|
|
|
Danke dir für deine schnelle Hilfe
Edit: Im Acp kann ich noch keine Smilies bearbeiten , sobald ich auf speichern gehe kommt wieder die weiße Seite.Aber ich denke das ist erstmal nur ein Schönheitsfehler und der kann warten
__________________
|
|
23.07.2011 11:14 |
|
|
|
Hi,
warum willst du die Smilies im ACP nach dem hochladen bearbeiten?
Die Ordnungsnummern kannst du nicht verändern, weil sie fortlaufend vergeben werden.
Wenn, dann musst du sie im Smilie Ordner im FTP/PC beabeiten und neu hochladen.
Habe seit der Umstellung vor 3 Monaten eine weisse Seite.
Gruß katze2ooo
__________________
|
|
23.07.2011 11:56 |
|
|
|
Ich wollte nur einfach ein paar Smilies ändern die meiner Meinung nach in diesen Kats nichts zu suchen haben. Aber gut , ich schrieb ja bereits das es derzeit nur ein Schönheitsfehler ist , ich kannte den Hack vorher nicht
__________________
|
|
23.07.2011 14:46 |
|
|
|
Erstmal hallo habe ein wbb2.3.6 und habe alles so eingebaut wie beschrieben aber bekomme nur fehler.
Wenn ich auf smilies gehe bekomme ich den Fehler.
SQL-DATABASE ERROR
Database error in WoltLab Burning Board (2.3.6): Invalid SQL: SELECT smiliepath, smilietitle, smiliecode,catname FROM bb1_smilies WHERE catname='' ORDER BY smilieid ASC LIMIT -24, 24
mysql error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-24, 24' at line 1
mysql error number: 1064
mysql version: 5.1.49-3
php version: 5.3.3-7+squeeze3
Date: 29.11.2011 @ 21:28
Script: /misc.php?action=moresmilies
Referer: http://treff.wbb-hilfe.de/newthread.php?boardid=1
wenn ich auf bearbeiten gehe sehe ich keine Smilies in der Kategorie
Was hebe ich falsch gemacht kann wer helfen?
LG
nafets41
|
|
29.11.2011 21:32 |
|
|
haumi
Boardbetreiber
[meine Galerie]
Dabei seit: 06.06.2009
Beiträge: 3.441
Herkunft: NRW
Postid: 10064
|
|
da muss der code in der misc.php ergänzt werden.
Ich habs auf dem PC werde es in wenigen min. hier einstellen.
So in der misc.php musst du alles was zwischen
/** more smilies popup **/
und
/** whoposted popup **/
steht gegen folgenden Code tauschen.
Es sind zwar nur 2 Zeilen aber die jetzt raussuchen dauert etwas länger.
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:
|
if($action=="moresmilies") {
$lang->load("MISC");
$all_smilies = $lang->items['LANG_MISC_CATEGORIE_ALL_SMILIE'];
if(isset($_GET['catname'])) $catname=$_GET['catname'];
elseif(isset($_POST['catname'])) $catname=$_POST['catname'];
else $catname="";
if($catname=="")
{
$standard = $db->query_first("SELECT * FROM bb".$n."_smilies_categorie WHERE standard=1");
$catname=$standard['catname'];
}
$sel_cate[$catname]=" selected="selected"";
if($catname==$all_smilies){
list($smiliecount) = $db->query_first("SELECT COUNT(*) FROM bb".$n."_smilies");
$smiliecount2=$smiliecount;
}else{
list($smiliecount2) = $db->query_first("SELECT COUNT(*) FROM bb".$n."_smilies");
list($smiliecount) = $db->query_first("SELECT COUNT(*) FROM bb".$n."_smilies WHERE catname='$catname'");
}
$smilie_categorie="<option value="$all_smilies" selected="selected">$all_smilies($smiliecount2)</option>";
$result = $db->query("SELECT * FROM bb".$n."_smilies_categorie ORDER BY catorder ASC");
while($row = $db->fetch_array($result))
{
if($row['catname']==$catname) $smilie_categorie.="<option value="$row[catname]"$sel_cate[$catname]>$row[catname]($row[counter])</option>";
else $smilie_categorie.="<option value="$row[catname]">$row[catname]($row[counter])</option>";
}
if(isset($_GET['page']))
{
$page=intval($_GET['page']);
if($page==0) $page=1;
}else $page=1;
if(isset($_POST['smilieseite'])) $page=$_POST['smilieseite'];
$smiliesperpage="24";
$pages = ceil($smiliecount/$smiliesperpage);
if($page>$pages) $page=$pages;
if($pages>1 && $catname<>$all_smilies) $pagelink=makepage_smilies($smiliecount,"misc.php?action=moresmilies&catname=$catname".$SID_ARG_2ND,$page,$smiliesperpage);
elseif($pages>1 && $catname==$all_smilies) $pagelink=makepage_smilies($smiliecount,"misc.php?action=moresmilies&catname=$all_smilies".$SID_ARG_2ND,$page,$smiliesperpage);
else $pagelink="";
$rightorleft = "left";
if($showsmiliesrandom==1)
{
if($catname==$all_smilies) $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies ORDER BY RAND()",0,$smiliesperpage,$smiliesperpage*($page-1));
else $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies WHERE catname='$catname' ORDER BY RAND()",0,$smiliesperpage,$smiliesperpage*($page-1));
}else{
if($catname==$all_smilies) $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies ORDER BY smilieorder ASC",0,abs($smiliesperpage),abs($smiliesperpage*($page-1)));
else $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies WHERE catname='$catname' ORDER BY smilieid ASC",0,abs($smiliesperpage),abs($smiliesperpage*($page-1)));
}
$j=0;
$popup_smiliesbits="";
while($row = $db->fetch_array($result))
{
$row['smilietitle']=getlangvar($row['smilietitle'], $lang);
$row['smiliename']=htmlconverter($row['smiliecode']);
$row['smiliecode']=addcslashes($row['smiliecode'], "'\");
$row['smiliepath'] = replaceImagefolder($row['smiliepath']);
eval ("\$popup_smiliesbits .= "".$tpl->get("popup_smiliesbits")."";");
if ($rightorleft == "left")
{
$j++;
$rightorleft = "right";
}else $rightorleft = "left";
}
$j++;
$tdclass=getone($j,"tableb","tablea");
if($rightorleft == "right") $popup_smiliesbits .= "<td class="$tdclass"> </td><td class="$tdclass"> </td></tr>";
eval("\$tpl->output("".$tpl->get("popup_smilies")."");");
}
|
|
Es betrifft die Zeilen (so sollte es bei dir aussehen)
code: |
1:
2:
3:
4:
|
if($catname==$all_smilies) $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies ORDER BY smilieorder ASC",0,$smiliesperpage,$smiliesperpage*($page-1));
else $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies WHERE catname='$catname' ORDER BY smilieid ASC",0,$smiliesperpage,$smiliesperpage*($page-1));
|
|
da mysql versucht negative Smilieids auszulesen ORDER BY smilieid ASC LIMIT -24, 24
habe ich den Absolutwert in den beiden Zeilen gebildet, so das es jetzt wie unten aussehen soll:
code: |
1:
2:
|
if($catname==$all_smilies) $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies ORDER BY smilieorder ASC",0,abs($smiliesperpage),abs($smiliesperpage*($page-1)));
else $result = $db->unbuffered_query("SELECT smiliepath, smilietitle, smiliecode,catname FROM bb".$n."_smilies WHERE catname='$catname' ORDER BY smilieorder ASC",0,abs($smiliesperpage),abs($smiliesperpage*($page-1))); |
|
Es sollte genügen diese beiden Zeilen auszutauschen.
Anmerkung von mir:
Sollten die Smilies im ACP und auch im Board nicht (korrekt) angezeigt werden,
So öffne einmal die global.php und einmal die acp/global.php und suche:
code: |
1:
|
@set_magic_quotes_runtime(0); |
|
füge jeweils darunter ein
code: |
1:
|
while (list($var,$val) = each($_REQUEST)) ${$var} = $val; |
|
LG
haumi
__________________
Gelassen das hinnehmen, was nicht zu ändern ist,
engagiert angehen was man gestalten kann.
|
|
29.11.2011 22:10 |
|
|
|
Super Super
Es geht danke Dir
Lg
nafets41
|
|
30.11.2011 19:48 |
|
|
|
Problem erledigt.
Vielen Dank für die Anleitung. alles hat jetzt geklappt :-)
|
|
08.02.2012 06:56 |
|
|
|