Ja, Doppelpost... schlagt mich ^^
Ich habe mich mal dem Editor etwas gewidmet, da doch einige Sachen aufgetreten sind, die mir nicht ganz so gefallen. z.B. werden Führerlose Gilden nicht aufgeführt und man muss immer in die DB um das zu ändern. Auch der Leaderwechsel etc. musste man alles per DB machen, daher habe ich den Editor etwas modifiziert und erweitert.
I. gildentool.php anpassen
II. lib/gildentoolfunc.php anpassen
III. user.php anpassen
I
[php]
//Suche in der gildentool.php
case "showall":
showguilds_su("gildentool.php?");
break;
//Füge danach ein
case "showempty":
showemptyguilds_su("gildentool.php?");
break;
//Suche
addnav("Alle Gilden anzeigen",check_op("showall","gildentool.php?op=showall"));
//Füge danach ein
addnav("Führerlose Gilden anzeigen",check_op("showempty","gildentool.php?op=showempty"));//Erweiterung von Talcyr
[/php]
II
[php]
//Suche in lib/gildentoolfunc.php
function showguilds_su($prelink)
//Füge davor ein
//Erweiterung von Talcyr Anfang
function showemptyguilds_su($prelink)
{
global $session,$SQL_CACHE;
$sql['all'] = "SELECT ".(SQL_CACHE===true?"SQL_CACHE":"")." gilden.* FROM gilden LEFT JOIN accounts ON gilden.leaderid=accounts.acctid WHERE accounts.acctid IS NULL";
$result['all'] = db_query($sql['all']);
output(
"<table><tr>".
"<td>Name</td>".
"<td>Kürzel</td>".
"<td>Gründer</td>".
"<td>`^Gold</td>".
"<td>`%Edelsteine</td>".
"<td>Punkte</td>".
"<td>Mitglieder</td>".
"<td>Aktiviert?</td>".
"</tr>".
"<tr><td colspan='8'><hr></td></tr>",true
);
while($row['all'] = db_fetch_assoc($result['all']))
{
$row['counter'] = db_fetch_assoc(db_query("SELECT ".(SQL_CACHE===true?"SQL_CACHE":"")." COUNT(acctid) AS members FROM accounts WHERE memberid='".$row['all']['gildenid']."'"));
output(
"<tr>".
"<td>".$row['all']['gildenname']."</td>".
"<td>".$row['all']['gildenprefix']."</td>".
"<td>".$row['all']['login']."</td>".
"<td>`^".$row['all']['gold']."</td>".
"<td>`%".$row['all']['gems']."</td>".
"<td>".$row['all']['gildenpunkte']."</td>".
"<td>".$row['counter']['members']."</td>".
"<td>".($row['all']['active']?"Ja":"Nein")."</td>".
"</tr>",true
);
$nav = array(
$prelink."op=edit&id=".$row['all']['gildenid'], $prelink."op=activate&id=".$row['all']['gildenid']."&active=".$row['all']['active'],
$prelink."op=drop&id=".$row['all']['gildenid']
);
allownav($nav[0]);
allownav($nav[1]);
allownav($nav[2]);
output(
"<tr><td colspan='2'>Optionen:</td>".
"<td colspan='6'>`0`&[ ".
"`0<a href='".$nav[0]."'>`2Bearbeiten</a> `&| ".
"`0<a href='".$nav[1]."'>`^".($row['all']['active']?"Dea":"A")."ktivieren</a> `&| ".
"`0<a href='".$nav[2]."'>`\$Löschen</a>".
" `&]`0</td>".
"</tr>".
"<tr><td colspan='8'><hr></td></tr>",true
);
}
}
//Erweiterung von Talcyr Ende
//Suche
."<tr><td>Punkte</td>"
."<td><input type='text' size='5' name='gildenpunkte' value='".$edit_guild['gildenpunkte']."'/></td></tr>"
//Füge danach ein
."<tr><td>Leader ID</td>"
."<td><input type='text' size='5' name='leaderid' value='".$edit_guild['leaderid']."'/></td></tr>"
[/php]
III
[php]//Suche in der user.php
"bio"=>"Biographie,textarea,60,15",
//Füge danach ein
"Gildeninformationen,title",
"memberid"=>"GildenID,int",
"isleader"=>"LeaderID,enum,0,Nichts,1,Wächter,2,Leader",
"gildenactive"=>"Gildenaktiv,bool",
[/php]
Umbau fertig, damit sollte es funktionieren, wenn ich nichts vergessen habe.
Nun eine kurze Erklärung wie das genau funktioniert:
Beim Gildeneditor kann man nun die ID des Leaders abfragen und ändern. Gleichzeitig müssen aber auch die Daten im Usereditor geändert werden, d.h. Gildenaktiv auf Ja, die GildenID und die LeaderID auf 2 gesetzt werden, ansonsten wird es nicht funktionieren.
Einer meiner sinnvolleren Posts bisher finde ich ^^
|