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!


./index.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:
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:
<?php
/**
 * index.php: Startseite für Atrahor
 * @author LOGD-Core / Drachenserver-Team (Überarbeitung, Performance, Liverestzeit)
 * @version DS-E V/2
*/

require_once 'common.php';

if (
$session['loggedin'])
{
    
redirect('badnav.php');
}
//echo($_COOKIE["username"].$_COOKIE["passwort"]);
if(!empty($_COOKIE["username"]) && !empty($_COOKIE["passwort"]) && (!$session['message'] || $_GET['op']=='timeout'))
{
//    echo('test');
    
redirect('login.php');
    
}
//Falls mehrere URLs auf den gleichen Server zeigen aber nur eine Domain verwendet werden soll leitet
//dieses Codefragment den User auf die richtige Domain um und setzt den Cookie neu, so dass er nicht in
//einer Aktualisierungssperre landet
/*
$arr_server = parse_url(getsetting('server_address','localhost'));
$str_referer = ($_SERVER['HTTPS']?'https://':'http://').$_SERVER['HTTP_HOST'];
if(!LOCAL_TESTSERVER && !preg_match('/'.preg_quote($arr_server['host']).'/i',$str_referer))
{
    setcookie('lasthit',0,strtotime(date('r').'+365 days'));
    redirect(getsetting('server_address','localhost'));
}
*/

page_header(Ithil);
// Real Datum laden         Shaiya
$realdatum time();
$datum date('d.m',$realdatum);
$wann 1973;                             //Das Datum vor wie vielen Jahren? 
$start mktime(0,0,0,1,1,2006);         //Irgendwo solls ja anfange, ne? 
$jetzt time();                         //Momentane Zeit 
$diff getdate($jetzt-$start);            //Die Differenz  
$y $diff['year'] - $wann;                //und das Jahr 
// Real Datum ende
// Ausgabestring
$str_out '';

// In Var speichern, wird mehrfach verwendet
$str_townname getsetting('townname','Atrahor');
$int_maxonline getsetting('maxonline',10);

$str_out .= '`c`IWillkommen bei Legend of the Green Dragon in der Dragonslayer-Edition, schamlos abgekupfert von Seth Able\'s Legend of the Red Dragon.`n`n';
if (
getsetting('activategamedate','0')==1)
{
    
$str_out .= '`IWir schreiben den `y'.$datum.'.0'.$y.'`I.`0`n';

    
//$str_out .='`IWir schreiben den `y'.getgamedate().'`I.`0`n';
}
$date date("G:i");
$str_out .= '`IDie gegenwärtige Zeit in '.$str_townname.' ist `y'.$date.'`I.`0`n';
//$str_out .='`IDie gegenwärtige Zeit in '.$str_townname.' ist `y'.getgametime(true).'`I.`0`n';


//Next New Day in ... is by JT from logd.dragoncat.net
$time gametime();
// $tomorrow = strtotime(date("Y-m-d H:i:s",$time)." + 1 day");
$tomorrow mktime(0,0,0,date('m',$time),date('d',$time)+1,date('Y',$time));
// $tomorrow = strtotime(date("Y-m-d 00:00:00",$tomorrow));
$secstotomorrow $tomorrow-$time;
$realsecstotomorrow round($secstotomorrow / (int)getsetting("daysperday",4));

$calctime strtotime('1980-01-01 00:00:00 + '.$realsecstotomorrow.' seconds');

$nextdattime date('G \\S\\t\\u\\n\\d\\e\\n, i \\M\\i\\n\\u\\t\\e\\n, s \\S\\e\\k\\u\\n\\d\\e\\n\\ \\(\\E\\c\\h\\t\\z\\e\\i\\t\\)',$calctime);
$str_out .='`INächster neuer Tagesabschnitt in: `0<div id="index_time">`y'.$nextdattime.'`0</div>`n`n';
$str_out .='
<script language="javascript" type="text/javascript">
/*Kleines Schmankerl by Alucard
    www.atrahor.de
*/
var index_time_div = document.getElementById("index_time");
var index_time_day = Math.ceil(24/'
.(int)getsetting("daysperday",4).');
var index_dest_time = 0;
</script>
<script language="javascript" type="text/javascript" src="'
.TEMPLATE_PATH.'stuff.js"></script>
<script language="javascript" type="text/javascript">
if( index_time_div ){
    index_set_time('
.date('G, i, s',$calctime).');
}
</script>
'
;
$str_out.='`mWill`Skom`Tmen `useid ihr, an einem geheimnis`Tvol`Slen O`mrt!!`n
`mWill`Skom`Tmen `uin Ithil, dem verfl`Tucht`Sen Do`mrf!!  `n
`n
Klein und unscheinbar wirkt das Dorf von außen, aber Du kennst die Geschichten der Ahnen, die besagen, dass hinter diesem Dorf mehr steckt als man auf Anhieb vermuten mag. Niemand der wieder heraus kam erzählt etwas über die Geheimnisse des Dorfes, als wären sie alle davon überzeugt worden, dass es wichtig ist das Geheimnis zu wahren, oder haben sie einfach nur Angst man könnte sie jagen, würden sie etwas erzählen?`n
Glaubt man der Geschichte verwandelt sich das Dorf jeden Monat zu Vollmond in ein Dämonendorf, in dem Wesen aus allen bekannten Mythen und Sagen zuflucht finden, doch was ist die restliche Zeit des Monats mit diesen Wesen? Verwandeln sich die einfachen Bauern des Dorfs wie Werwölfe bei jedem Vollmond in die Sagengestalten? Oder ist es nur der Schein von außen der das Dorf so unscheinbar wirken lässt und nur bei Vollmond sein wahres Gesicht zeigt? `n
Bist Du Mutig genug Ithil zu betreten und es selbst her raus zu finden?`n`n'
;
$newplayer=stripslashes(getsetting('newplayer',''));
if (
$newplayer!='')
{
$str_out .='`IAls letztes ist `y'.$newplayer.'`I zu uns gekommen!`0`n';
}

$dkcounter number_format( (int)getsetting('dkcounterges',0) , ' '' ' );
$newdk=stripslashes(getsetting('newdragonkill',''));
if (
$dkcounter>&& $newdk!='')
{
    
$str_out .='`IInsgesamt haben unsere Helden bereits `y'.$dkcounter.'`I Heldentaten vollbracht, `ndie letzte vollbrachte `y'.$newdk.'`I!`0`n`n';
}

$guild=stripslashes(getsetting('dgtopguild',''));
if (
$guild!='')
{
    
$str_out .='`IDie angesehenste Gilde '.getsetting('townname','Atrahor').'s ist zur Zeit: `y'.$guild.'`I!`0`n`n';
}



$fuerst=stripslashes(getsetting('fuerst',''));
if (
$fuerst!='')
{
    
$str_out .='`IZurzeit hat`0`b`y '.$fuerst.'`0`b`I das Amt des Fürsten von '.$str_townname.' inne.`n';
    
//$str_out .='`IDen Fürstentitel '.$str_townname.'s trägt zur Zeit: `0`b`y'.$fuerst.'`0`b`I!`0`n`n';
}

if(
getsetting('wartung',0) > 0) {
    
$str_out .='`b`^Der Server befindet sich im Moment im Wartungsmodus, um Änderungen am Spiel oder dem Server störungsfrei vornehmen zu können.`0`b`^`nBitte warte, bis sich dies ändert.`n`n`0';
}

$result db_fetch_assoc(db_query("SELECT COUNT(*) AS onlinecount FROM accounts WHERE locked=0 AND ".user_get_online() ));
$onlinecount $result['onlinecount'];

// do not check if playerlimit is not reached!
if (( $onlinecount >= $int_maxonline && $int_maxonline!=0) || getsetting('wartung',0) > )
{
    
$id=$_COOKIE['lgi'];
    
$sql "SELECT superuser,uniqueid FROM accounts WHERE uniqueid='$id' AND superuser>0";
    
$result db_query($sql);
    if (
db_num_rows($result)>0)
    {
        
$row db_fetch_assoc($result);
        
$is_superuser=$row['superuser'];
    }
    else
    {
        
$is_superuser=0;
    }
}
else
{
    
$is_superuser 0;
}

if ( (
$onlinecount<$int_maxonline || $int_maxonline==|| $is_superuser) )
{
        
/*$str_out .='`mWill`Skom`Tmen `useid ihr, an einem geheimnis`Tvol`Slen O`mrt!!`n
`mWill`Skom`Tmen `uin Ithil, dem verfl`Tucht`Sen Do`mrf!!  `n
`n
Von außen ein normales Bauerndorf, doch das ist nur Illusion, denn`n
wenn du es betrittst, verändert sich alles. Die Menschen die du sahst, nehmen`n
jetzt ihre wahre Gestalt an. Es ist egal welcher Rasse, hier leben alle.`n';*/
    
    
$str_out .='`n`n`tGib deinen Namen und dein Passwort ein, um '.$str_townname.' zu betreten.`n
    (Falls kein Loginfeld sichtbar ist: Lies bitte die <a href="petition.php?op=faq" target="_blank" onClick="window.open(\'petition.php?op=faq\',\'petitionphpopfaq\',\'scrollbars=yes,resizable=yes,width=550,height=300\');return false;">FAQ</a> bzw. schreibe eine Anfrage.)`n`n`0'
;
    if (
$_GET['op']=='timeout' )
    {
        
$session['message'].='`nDeine Sessionzeit ist abgelaufen. Bitte neu einloggen.`n';
        if (!isset(
$_COOKIE['PHPSESSID']))
        {
            
$session['message'].=' Es scheint, als ob die Cookies dieser Seite von deinem System blockiert werden.  Zumindest Sessioncookies müssen für diese Seite zugelassen werden.`n';
        }
    }
    if (
$session['message']!='')
    {
        
$str_out .= '`b`$'.$session['message'].'`0`b`n';
    }
    
    
// Online Seit
    
$str_out.=onlineseit();
    
    
$encoded_password_transfer_script 'onSubmit="document.forms.loginform.hidden_pw.value = calcMD5(document.forms.loginform.password.value);document.forms.loginform.password.value=\'\';"';
    
$str_out .= "
    <noscript><b style=\"color: #FF0000;\">Javascript wird zur korrekten Funktionsweise benötigt. Bitte aktiviere es! Tipps und Hinweise hierzu findest du in der <a href='petition.php?op=faq' target='_blank'>FAQ</a>.</b></noscript>
    <div id=\"NOT_COMP\" style=\"display: none;\"><br /><br /><br /><b style=\"color: #FF0000;\">Dein Browser erfüllt leider nicht die Anforderungen des Spiels. Weitere Informationen hierzu findest du in der <a href='petition.php?op=faq' target='_blank'>FAQ</a>.</b></div>
    <div id=\"JSLIB_SAFARI\" style=\"display: none;\">`n`n`#Lieber Safari-Benutzer,`nda wir keine Möglichkeit haben, die Funktionalität im Safari-Browser zu gewährleisten, ist der Login leider nicht für dich verfügbar.`nMozilla Firefox wird hingegen unterstützt: `0<a href='http://www.firefox-browser.de/mac.php' target='_blank'>Firefox für MAC</a></div>
    <div id=\"LOGIN_FORM\" style=\"display: none;\"><form action='login.php' name='loginform' method='POST' 
$encoded_password_transfer_script>
    <input type='hidden' name='hidden_pw' />"
    
.templatereplace("login",array("username"=>"<u>N</u>ame","password"=>"<u>P</u>asswort","button"=>"Einloggen","dauerlogin"=>"Automatisch <br> einloggen"))
    .
'</form></div>`c
    <script language="JavaScript" type="text/javascript" src="templates/md5.js"></script>
    <script type="text/javascript" language="JavaScript">

                var is_c = LOTGD.compCheck();
                document.getElementById("NOT_COMP").style.display = (is_c ? "none" : "block");
                if( Browser.isSafari ){
                    document.getElementById("JSLIB_SAFARI").style.display = "block";
                }
                document.getElementById("LOGIN_FORM").style.display = "block";//(is_c ? "block" : "none");
                document.forms.loginform.name.focus();
            </script>'
;
    
// Without this, I had one user constantly get 'badnav.php' :/  Everyone else worked, but he didn't
    
addnav('','login.php');
}
else
{
    
$str_out .='`b`^Der Server ist im Moment ausgelastet, die maximale Anzahl an Usern ist bereits online.`0`b`^`nBitte warte, bis wieder ein Platz frei ist.`n`n`0';
    if (
$_GET['op']=='timeout')
    {
        
$session['message'].='`nDeine Sessionzeit ist abgelaufen. Bitte neu einloggen.`n';
        if (!isset(
$_COOKIE['PHPSESSID']))
        {
            
$session['message'].=' Es scheint, als ob die Cookies dieser Seite von deinem System blockiert werden.  Zumindest Sessioncookies müssen für diese Seite zugelassen werden.`n';
        }
    }
    if (
$session['message']!='')
    {
        
$str_out .='`b`$'.$session['message'].'`b`n';
    }
    
$str_out .=templatereplace('full').'`c';
}


$str_out .='`n`c`b`&'.getsetting('loginbanner','').'`0`b`c`n';
$session['message']='';
$str_out .='`c`t'.$str_townname.' läuft unter: `y'.GAME_VERSION.'`0`c';

// Ausgabe
output($str_out);

// Hotkeys auf Startseite?
$bool_hotkeys false;
$int_ref=intval($_GET['r']);
$str_ref=($int_ref>0?'?r='.$int_ref:'');
$str_ref2=($int_ref>0?'&r='.$int_ref:'');
clearnav();
addnav('Neu hier?');
addnav('`yCharakter erstellen`0','create_rules.php'.$str_ref,false,false,false,$bool_hotkeys);
if(
getsetting('demouser_public',0)>0)
{
    
addnav('Schnupperzugang','demouser.php'.$str_ref,false,false,false,$bool_hotkeys);
}
addnav('Über LotGD','about.php'.$str_ref,false,false,false,$bool_hotkeys);
addnav('F.A.Q.','petition.php?op=faq',false,true,false,$bool_hotkeys);
addnav('Das Spiel');
addnav('Liste der Einwohner','list.php'.$str_ref,false,false,false,$bool_hotkeys);
addnav('Passwort vergessen?','create.php?op=forgot'.$str_ref2,false,false,false,$bool_hotkeys);
addnav('Sonstiges in '.getsetting('townname','Atrahor'));
addnav('Impressum''about.php?op=impressum'.$str_ref2,false,false,false,$bool_hotkeys);
addnav('Partner & Sonstiges');
addnav('Partner & Sonstiges','banner.php?op=partner');
addnav('Banner','banner.php?op=banner');
addnav('Forum','http://forum.ithil-lotgd.de',false,false,true,$bool_hotkeys);
addnav('Homepage','http://hp.ithil-lotgd.de',false,false,true,$bool_hotkeys);
//addnav($str_townname.' Forum',getsetting('forum','http://forum.atrahor.de'),false,false,true,$bool_hotkeys);
//addnav('Die LoGD-Welt');
//addnav('LoGD Netz','logdnet.php?op=list'.$str_ref2);
//addnav('DragonPrime','http://www.dragonprime.net',false,false,true);

if(date('m') == 12 || date('m') == || date('m') == 2)
    echo(
schneeflocken());
    
//echo(schneeflocken_blut());


page_footer();
?>
0.9.7(DS V3) Ithil-Edition