Quellcode der Dragonslayer-Edition
Quellcode der Dragonslayer-Edition : 0.9.7(Dragonslayer Edition V/3)


Anmerkung: Dies ist nur ein Auszug aus dem Source. Ein etwas älteres, abgespecktes Release ist für jeden Interessenten frei zum Download verfügbar. Allerdings würden wir uns über eine Anfrage freuen, in der die Serveradresse bzw. sonstiger Verwendungszweck aufgeführt sind, da wir gern wissen würden wohin unsere Version geht. Was wir uns unbedingt verbitten, ist Diebstahl unserer Arbeit ohne Nennung des Copyrights.
Falls beim Lesen des Source ein Bug entdeckt werden sollte, bitten wir um sofortige Meldung per Anfrage!


./logs.php

zurück
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:
<?php

require_once('common.php');

page_header('Multi');

$access_control->su_check(access_control::SU_RIGHT_MULTI,true);

if (
$_GET['op']=='multi')
{
    if (!empty(
$_POST['setupban']) && count($_POST['userid'])>0)
    {

        
$str_lnk 'su_bans.php?op=edit_ban&ids[]='.implode('&ids[]=',$_POST['userid']).'&ret='.urlencode('logs.php?op=multi');

        
redirect($str_lnk);

    }
    elseif (!empty(
$_POST['deleteuser']) && count($_POST['userid'])>0) {

        
$str_lnk 'su_delete.php?ids[]='.implode('&ids[]=',$_POST['userid']).'&ret='.urlencode('logs.php?op=multi');

        
redirect($str_lnk);

    }

    else
    {
        
output('`n');
    }

    require_once(
LIB_PATH.'board.lib.php');

    if(
$_GET['board_action'] == 'add') {
        
board_add('multi_ex');
    }

    
board_view('multi_ex',2,'`&Aktuelle Ausnahmen von der Multiregelung:','',false,true);
    
output('`n`n`&Ausnahme aufnehmen (Alle davon betroffenen Accounts + Bis-Datum!):`n');
    
board_view_form('Speichern!','');
    
output('`n');

    
$in_ip $in_id '';
    if (
$_GET['searchby']!='id') {

        
$sql 'SELECT lastip FROM accounts WHERE lastip!="" GROUP BY lastip HAVING COUNT(*) > 1';
        
$result db_query($sql);
        while (
$row db_fetch_assoc($result)) {
            
$in_ip .= ',"'.$row['lastip'].'"';
        }

    }
    if (
$_GET['searchby']!='ip') {

        
$sql 'SELECT uniqueid FROM accounts WHERE uniqueid!="" GROUP BY uniqueid HAVING COUNT(*) > 1';
        
$result db_query($sql);
        while (
$row db_fetch_assoc($result)) {
            
$in_id .= ',"'.$row['uniqueid'].'"';
        }
    }

    
$minaccs = ($_POST['minaccs']) ? $_POST['minaccs'] : $_GET['minaccs'];
    
$minaccs = ($minaccs) ? $minaccs 3;

    
$ip $id $users = array();
    
$sql 'SELECT a.acctid,name,lastip,uniqueid,dragonkills,level,laston,referer,guildid
            FROM accounts a
            LEFT JOIN account_extra_info aei USING(acctid)
            WHERE (lastip IN (-1'
.$in_ip.') OR uniqueid IN (-1'.$in_id.')) ORDER BY dragonkills ASC, level ASC';
    
$result db_query($sql);
    while (
$row db_fetch_assoc($result))
    {
        if ((!isset(
$id[$row['uniqueid']]) || $_GET['searchby']=='ip') && (!isset($ip[$row['lastip']]) || $_GET['searchby']=='id'))
        {
            if (
$_GET['searchby']!='id'$ip[$row['lastip']] = count($users);
            if (
$_GET['searchby']!='ip'$id[$row['uniqueid']] = count($users);
            
$users[] = array($row);
        }
        elseif (isset(
$id[$row['uniqueid']]))
        {
            
$ip[$row['lastip']] = $id[$row['uniqueid']];
            
$users[$id[$row['uniqueid']]][] = $row;
        }
        else
        {
            
$id[$row['uniqueid']] = $ip[$row['lastip']];
            
$users[$ip[$row['lastip']]][] = $row;
        }
    }

    
addnav('','logs.php?op=multi&searchby='.$_GET['searchby']);

    
output('`n`bMultiaccounts`b`nNaaa, wer spielt denn hier noch wen?`n`n');
    
output('<form method="POST" action="logs.php?op=multi&amp;searchby='.$_GET['searchby'].'">Spieler mit ',true);
    
output('<select onchange="this.form.submit()" name="minaccs" size="1">',true);
    
output('<option value="2" '.(($minaccs==2)?'selected="selected"':'').'>2</option>',true);
    
output('<option value="3" '.(($minaccs==3)?'selected="selected"':'').'>3</option>',true);
    
output('<option value="4" '.(($minaccs==4)?'selected="selected"':'').'>4</option>',true);
    
output('</select></form>',true);
    
output(' oder mehr Multiaccounts suchen nach: ');

    
// Max. Multi-Gruppen / Seite
    
$int_max_pp 200000;
    
// Aktuelle Gruppenzahl
    
$int_grp_counter 0;

    if (
$_GET['searchby']!='ip') {
        
output('<a href="logs.php?op=multi&amp;searchby=ip&amp;minaccs='.$minaccs.'">IP</a> ',true);
        
addnav('','logs.php?op=multi&searchby=ip&minaccs='.$minaccs);
    }
    else
    {
        
output('`&`bIP`b`0 ');
    }
    if (
$_GET['searchby']!='id') {
        
output('<a href="logs.php?op=multi&amp;searchby=id&amp;minaccs='.$minaccs.'">ID</a> ',true);
        
addnav('','logs.php?op=multi&searchby=id&minaccs='.$minaccs);
    }
    else
    {
        
output('`&`bID`b`0 ');
    }
    if (!empty(
$_GET['searchby'])) {
        
output('<a href="logs.php?op=multi&amp;searchby=&amp;minaccs='.$minaccs.'">Beidem</a> ',true);
        
addnav('','logs.php?op=multi&searchby=&minaccs='.$minaccs);
    }
    else
    {
        
output('`&`bBeidem`b`0 ');
    }

    
$counter 0;

    
output('<table><tr><td>',true);
    foreach (
$users AS $list)
    {

        if (
count($list)<$minaccs)
        {
            continue;
        }

        
$int_grp_counter++;

        if(
$int_grp_counter >= $int_max_pp)
        {

            break;
        }

        
$tmpstr $linkstr =  '';
        
$ips $ids $accts = array();
        foreach (
$list AS $item)
        {
            
$tmpstr .= ('<tr><td><input type="checkbox" name="userid[]" value="'.$item['acctid'].'"><input type="hidden" name="multi_id[]" value="'.$item['acctid'].'"></td>
                            <td>'
.$item['acctid'].'</td>
                            <td>'
.$item['name'].'`0</td>
                            <td>'
.$item['lastip'].'</td>
                            <td>'
.$item['uniqueid'].'</td>
                            <td>'
.$item['dragonkills'].'</td>
                            <td>'
.$item['level'].'</td>
                            <td>'
.$item['laston'].'</td>
                            <td>'
.$item['referer'].'</td>
                            <td>'
.$item['guildid'].'</td>
                            </tr>'
);
            
$linkstr .= '&multi_id[]='.$item['acctid'];
            
$counter++;
        }
        
output('<form action="logs.php?op=multi&amp;searchby='.$_GET['searchby'].'" method="post">',true);
        
addnav('','logs.php?op=multi&searchby='.$_GET['searchby']);
        
output("<table align='center' class='input' width='100%'><tr><td>&nbsp;</td>
                        <td>`bAcctID`b</td>
                        <td>`bName`b</td>
                        <td>`bIP`b</td>
                        <td>`bID`b</td>
                        <td>`bDK`b</td>
                        <td>`bLevel`b</td>
                        <td>`bZuletzt da`b</td>
                        <td>`bGew. von`b</td>
                        <td>`bG-ID`b</td>
                        </tr>"
,true);
        
output($tmpstr,true);

        
$linkstr 'multi.php?'.$linkstr;

        
output('<tr><td colspan="6" align="left">
                        <input type="submit" name="deleteuser" value="löschen">
                        <input type="submit" name="setupban" value="Accounts bannen">
                        <a href="#" onclick="'
.popup($linkstr).';return false;">Analyse</a>
                    </td></tr>'
,true);
        
output('</table>`n`n',true);
        
output('</form>',true);
        
addnav('',$linkstr);
    }
    
output('</td></tr></table>',true);
    
output('`b'.$counter.'`b Multis`n');
    
addnav('Aktualisieren','logs.php?op=multi&searchby='.$_GET['searchby'].'&minaccs='.$minaccs);
    
addnav('Zurück','logs.php');
}
else
{
    
redirect('logs.php?op=multi');
}
grotto_nav();

page_footer();
?>
0.9.7(Dragonslayer Edition V/3)