Quellcodeviewer der Dragonslayer-Edition
Quellcodeviewer der Dragonslayer-Edition : 0.9.7+jt ext (GER)


Anmerkung: Dies ist nur ein Auszug aus dem Source. Um das jeweils aktuelle, vollständige Release zu erhalten, ist eine Anfrage mit gültiger Email-Adresse erforderlich. Ebenso sollte darin die Serveradresse bzw. sonstiger Verwendungszweck aufgeführt sein. 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!


./viewpetition.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:
<?php

// 11092004

/*********************************************************************
 * MODIFIZIERT durch
 * Admin @ Dreythal
 * Dezember 2014
*********************************************************************/

require_once 'common.php';
isnewday(2);

if (
addcommentary())
{
    
$sql 'UPDATE petitions SET lastact="NOW()" WHERE petitionid="'.$_GET['id'].'"';
    
db_query($sql);
}

$statuses=array(0=>'`%ungelesen`0','`6gelesen`0','`+geschlossen`0');

if (
$_GET['op']=='del')
{
    
$sql 'DELETE FROM petitions WHERE petitionid="'.$_GET['id'].'"';
    
db_query($sql);
    
$sql 'DELETE FROM commentary WHERE section="Anfrage Nr. '.$_GET['id'].'"';
    
db_query($sql);
    
$sql 'DELETE FROM petitionmail WHERE petitionid="'.$_GET['id'].'"';
    
db_query($sql);
    
$_GET['op']='';
}

elseif (
$_GET['op']=='sendmessage')
{
    
$sql 'SELECT author,body FROM petitions WHERE petitionid="'.$_GET['id'].'"';
    
$row db_fetch_assoc(db_query($sql));
    
$_POST['subject']=closetags(str_replace("`n","",$_POST['subject']),'`c`i`b');
    
$_POST['body']=str_replace("`n","\n",$_POST['body']);
    
$_POST['body']=str_replace("\r\n","\n",$_POST['body']);
    
$_POST['body']=str_replace("\r","\n",$_POST['body']);
    
$_POST['body']=substr($_POST['body'],0,(int)getsetting("mailsizelimit",1024));
    
$_POST['body'] = closetags($_POST['body'],'`c`i`b');
    
systemmail($row['author'],$_POST['subject'],$_POST['body']);
    
petitionmail($_POST['subject'],$_POST['body'],$_GET['id'],$session['user']['acctid'],1,$row['author'],db_insert_id(LINK));
    
redirect('viewpetition.php?op=view&id='.$_GET['id']);
}

page_header('Anfragenregister');

addnav('Zurück...');
addnav('G?... in die Grotte','superuser.php');
addnav('D?... nach Dreythal','village.php');

if (
$_GET['op']=='')
{
    
$sql "SELECT petitionid FROM petitions WHERE status=2 AND date<'".date("d.m.Y, H:i",strtotime(date("r")."-7 days"))."'";
    
$result db_query($sql);

    while (
$row db_fetch_assoc($result))
    
db_query('DELETE FROM petitionmail WHERE petitionid="'.$row['petitionid'].'"');

    
$sql "DELETE FROM petitions WHERE status=2 AND date<'".date("d.m.Y, H:i",strtotime("-7 days"))."'";
    
db_query($sql);

    if (
$_GET['setstat']!='')
    {
        
$sql 'UPDATE petitions SET status="'.$_GET['setstat'].'" WHERE petitionid="'.$_GET['id'].'"';
        
db_query($sql);
    }

    
$sql "SELECT petitions.petitionid,petitions.lastact,accounts.name,petitions.date,petitions.status,petitions.body, IF(petitionmail.petitionid > 0,COUNT(*),0) AS petmails FROM petitions LEFT JOIN petitionmail USING(petitionid) LEFT JOIN accounts ON accounts.acctid=petitions.author GROUP BY petitions.petitionid ORDER BY petitions.status ASC, petitions.lastact DESC, petitions.date DESC";

    
$result db_query($sql);

    
addnav('Anfrageregister...');
    
addnav('... aktualisieren','viewpetition.php');

    
output('<table border="1" align="center" cellpadding="3" cellspacing="3" bgcolor="transparent" width="100%">
            <tr class="trhead">
            <td><b>`cNr.`c</b></td>
            <td><b>`cAnfrage`c</b></td>
            <td><b>`cmarkieren als`c</b></td>
            <td><b>Absender</b></td>
            <td><b>Datum</b></td>
            <td><b>Status</b></td>
            <td><b>`cKommentare`c</b></td></tr>'
,true);

    for (
$i=0;$i<db_num_rows($result);$i++)
    {
        
$row db_fetch_assoc($result);
        
$sql 'SELECT count(commentid) AS c FROM commentary WHERE section=" Anfrage Nr. '.$row['petitionid'].'"';
        
$res db_query($sql);
        
$counter db_fetch_assoc($res);

        
output('<tr><td>`c'.$row['petitionid'].'`c</td>
                    <td>`c<a href="viewpetition.php?op=view&id='
.$row['petitionid'].'">`6lesen`0</a>
                        <a href="viewpetition.php?op=del&id='
.$row['petitionid'].'" onClick="return confirm(\'Diese Anfrage wirklich löschen?\');">`alöschen`0</a>`c</td>
                    <td>`c<a href="viewpetition.php?setstat=0&id='
.$row['petitionid'].'">`%ungelesen`0</a>
                        <a href="viewpetition.php?setstat=1&id='
.$row['petitionid'].'">`6gelesen`0</a>
                        <a href="viewpetition.php?setstat=2&id='
.$row['petitionid'].'">`+geschlossen`0</a>`c</td><td>`l',true);

        if (
$row['name']=='')
        {
output(preg_replace("'[^a-zA-Z0-91234567890\\[\\]= @.!,?-]'","",substr($row['body'],0,strpos($row['body'],"[email"))));}

        else
        {
output($row['name']);}

        
output('`0</td><td>`l'.date('d.m.Y, H:i',strtotime($row['date'])).' Uhr`0</td>
                     <td>'
.$statuses[$row['status']].' '.($row['lastact']>max($session['lastlogoff'],$session['petitions'][$row['petitionid']])?'`l*`0':'').'</td>
                     <td>`c'
.$counter['c'].'`c</td></tr>',true);

        
addnav('','viewpetition.php?op=view&id='.$row['petitionid'].'');
        
addnav('','viewpetition.php?op=del&id='.$row['petitionid'].'');
        
addnav('','viewpetition.php?setstat=0&id='.$row['petitionid'].'');
        
addnav('','viewpetition.php?setstat=1&id='.$row['petitionid'].'');
        
addnav('','viewpetition.php?setstat=2&id='.$row['petitionid'].'');
    }

    
output('</table>`n',true);
    
output('`i`cGeschlossene Anfragen werden nach 7 Tagen automatisch gelöscht.`c`i`n`n
            `bHilfestellung:`b
            `nUngelesen: Niemand arbeitet bisher an diesem Problem.
            `nGelesen: Es arbeitet jemand an diesem Problem.
            `nGeschlossen: Diese Anfrage wurde bearbeitet. Es sollte keine weitere Arbeit mehr nötig sein.`n`n

            Wenn eine Anfrage gelesen wird, wird sie automatisch als gelesen markiert, wenn sie nicht schon als geschlossen markiert war. Wenn du ein Problem nicht lösen kannst, markiere die Anfrage wieder als ungelesen, damit ein anderer dem Spieler helfen kann. Wenn eine Anfrage erfolgreich bearbeitet wurde, markiere sie als geschlossen. Sie wird nach 7 Tagen dann automatisch gelöscht.'
);
}

elseif(
$_GET['op']=='view')
{
    
addnav('Zeige...');

    if (
$_GET['viewpageinfo']==1)
    {
addnav('D?... Details nicht mehr','viewpetition.php?op=view&id='.$_GET['id'].'');}

    else
    {
addnav('D?... Details','viewpetition.php?op=view&id='.$_GET['id'].'&viewpageinfo=1');}

    
addnav('A?... Anfragen','viewpetition.php');

    
addnav('Anfrage...');
    
addnav('s?... schließen','viewpetition.php?setstat=2&id='.$_GET['id'].'');
    
addnav('u?... ungelesen markieren','viewpetition.php?setstat=0&id='.$_GET['id'].'');
    
addnav('g?... gelesen markieren','viewpetition.php?setstat=1&id='.$_GET['id'].'');

    
$sql "SELECT accounts.name,accounts.login,accounts.acctid,petitions.date,petitions.status,petitionid,body,pageinfo FROM petitions LEFT JOIN accounts ON accounts.acctid=petitions.author WHERE petitionid='$_GET[id]' ORDER BY date ASC";

    
$result db_query($sql);
    
$row db_fetch_assoc($result);
    
$session['petitions'][$_GET['id']] = date('d.m.Y, H:i');

    if (
$row['acctid']>0)
    {
        
addnav('Spieler...');
        
addnav('b?... bearbeiten','user.php?op=edit&userid='.$row['acctid'].'&returnpetition='.$_GET['id'].'');
    }

    
output('<table cellpadding="3" cellspacing="3"><tr><td>`b`%Absender:`b`0</td><td>',true);

    
$row['body']=stripslashes($row['body']);

    if (
$row['login']>'')
    
output('<a href="mail.php?op=write&to="'.rawurlencode($row['login']).'"&body='.URLEncode('\n\n----- Deine Anfrage -----\n'.$row['body']).'&subject=RE:+Hilfeanfrage\' target="_blank" onClick="'.popup('mail.php?op=write&to='.rawurlencode($row['login']).'&body='.URLEncode('\n\n----- Deine Anfrage -----\n'.$row['body']).'&subject=RE:+Hilfeanfrage').';return false;"><img src="images/newscroll.GIF" width="16" height="16" title="Nachricht schreiben"></a>',true);

    
output('`l'.$row['name'].'`0</td></tr>',true);
    
output('<tr><td>`b`%Datum:`b`0</td><td>`l'.date('d.m.Y, H:i',strtotime($row['date'])).' Uhr`0</td></tr>',true);
    
output('<tr><td valign="top">`b`%Nachricht:`b`0</td><td>',true);

    
$body HTMLEntities($row['body']);
    
$body preg_replace("'([[:alnum:]_.-]+[@][[:alnum:]_.-]{2,}([.][[:alnum:]_.-]{2,})+)'i","<a href='mailto:\\1?subject=RE: Hilfeanfrage&body=".str_replace("+"," ",URLEncode("\n\n----- Deine Anfrage -----\n".$row['body']))."'>\\1</a>",$body);
    
$body preg_replace("'([\\[][[:alnum:]_.-]+[\\]])'i","<span class='colLtRed'>\\1</span>",$body);
    
$output.=''.nl2br($body).'';

    
output('</td></tr></table>',true);

    
output('`n`@Kommentare:`n');

    
viewcommentary('Anfrage Nr. '.$_GET['id'].'','Hinzufügen',20);

    if (
$row['login']!='')
    {
        
$answerbody '

 
~~~ Spieleranfrage ~~~ 
'
.$row['body'];
        
$answersubject 'RE: Hilfeanfrage';

        
output('<hr />`i`n`c`b`oBisheriger Schrifverkehr`b`c`n`0',true);

        
$sql 'SELECT petitionmail.*, accounts.login FROM petitionmail LEFT JOIN accounts ON petitionmail.msgfrom=accounts.acctid WHERE petitionid="'.$_GET['id'].'" ORDER BY sent DESC';

        
$result db_query($sql);

        while (
$row2 db_fetch_assoc($result))
        {
            
output('<table border="1" align="center" cellpadding="3" cellspacing="3" bgcolor="transparent" width="100%">
                    <tr><td>`b`%Datum:`b`0</td><td>`l'
.date('d.m.Y, H:i',strtotime($row2['sent'])).' Uhr`0</td></tr>
                    <tr><td>`b`%Absender:`b`0</td><td>`l'
.$row2['login'].'`0</td></tr>
                    <tr><td>`b`%Betreff:`b`0</td><td>`l'
.$row2['subject'].'`0</td></tr>
                    <tr><td valign="top">`b`%Text:`b`0</td><td width="100%">`l'
,true);
            
output(str_replace("\n","`n",$row2['body']));
            
output('`0</td></tr></table>`n',true);

            
$answerbody '


~~~ Antwort aus der Administration ~~~
'
.$row2['body'];
            
$answersubject 'RE: '.$row2['subject'];
        }

        
output('<form action="viewpetition.php?op=sendmessage&id='.$_GET['id'].'" method="post">',true);
        
output('<table align="center" cellpadding="3" cellspacing="3" bgcolor="transparent" width="100%">
                <tr><td>`b`%Betreff:`b`0</td><td><input type="text" name="subject" value="'
.$answersubject.'"></td></tr>
                <tr><td valign="top">`b`%Text:`b`0</td><td><textarea name="body" class="input" cols="40" rows="9">'
.$answerbody.'</textarea>`n
                <input type="submit" class="button" style="cursor: pointer;" value="Nachricht abschicken"></form>`n'
,true);

        
output('`0</td></tr></table>',true);
        
addnav('','viewpetition.php?op=sendmessage&id='.$_GET['id']);

        
$sql 'UPDATE petitionmail SET seen="1" WHERE petitionid="'.$_GET['id'].'"';
        
db_query($sql);
    }

    if (
$_GET['viewpageinfo'])
    {
        
output('`n`n`@Seiten Info:`&`n`n');

        
$row['pageinfo']=stripslashes($row['pageinfo']);
        
$body HTMLEntities($row['pageinfo']);
        
$body preg_replace("'([[:alnum:]_.-]+[@][[:alnum:]_.-]{2,}([.][[:alnum:]_.-]{2,})+)'i","<a href='mailto:\\1?subject=RE: Hilfeanfrage&body=".str_replace("+"," ",URLEncode("\n\n----- Deine Anfrage -----\n".$row['body']))."'>\\1</a>",$body);
        
$body preg_replace("'([\\[][[:alnum:]_.-]+[\\]])'i","<span class='colLtRed'>\\1</span>",$body);
        
$output.=''.nl2br($body).'';
    }

    if (
$row['status']==0)
    {
        
$sql 'UPDATE petitions SET status="1" WHERE petitionid="'.$_GET['id'].'"';
        
$result db_query($sql);
    }
}

page_footer();
?>
0.9.7+jt ext (GER)