Quellcode der Dragonslayer-Edition
Quellcode der Dragonslayer-Edition: 0.9.7(DS V3) Ithil-Edition


Anmerkung: Dies ist nur ein Auszug aus dem Source. Ein etwas älteres, abgespecktes Release der Dragonslayer-Edition ist für jeden Interessenten frei zum Download verfügbar. 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(DS V3) Ithil-Edition