LoGD Standardrelease steht hier zum Download zur Verfügung!

Zeige Source: /ticker.php

Hier klicken für den Source, ODER
Weitere Dateien, von denen du den Quelltext sehen kannst:
(Das Lesen des Source, um sich spielerische Vorteile zu verschaffen, ist nicht erlaubt. Solltest du Schwachstellen oder Fehler entdecken, bist du als Spieler verpflichtet, diese zu melden.)

Source von: /ticker.php

<?php
require_once "common.php";
addcommentary();
session_write_close();
popup_header("Newsticker");
if (
$session[user][loggedin]){
output(($session[user][superuser2]>=7?" [<a href='ticker.php?op=add'>Newsticker erstellen</a>]`n":""),true);
function 
tickeritem($subject$body$author$date){
    
output("<font size=\"3\">`b`& $subject`0</font>",true);
    
output("`n`n`n`0".$author."`0 - `#".$date."`0`n`c",true);
   
output("`2 `n$body`0",true);
    
output("<hr>",true);
}
function 
pollitem($id,$subject,$body){
    global 
$session;
    
$sql "SELECT count(resultid) AS c, MAX(choice) AS choice FROM pollresults WHERE tickeritem='$id' AND account='{$session['user']['acctid']}'";
    
$result db_query($sql);
    
$row db_fetch_assoc($result);
    
$choice $row['choice'];
    
$body unserialize($body);
    if (
$row['c']==&& 0){
        
output("<form action='ticker.php?op=vote' method='POST'>",true);
        
output("<input type='hidden' name='tickeritem' value='$id'>",true);
        
output("`bUmfrage: $subject`b`n",true);
        
output(stripslashes($body['body']));
        while (list(
$key,$val)=each($body['opt'])){
            if (
trim($val)!=""){
                
output("`n<input type='radio' name='choice' value='$key'>",true);
                
output(stripslashes($val));
            }
        }
        
output("`n`0<input type='submit' class='button' value='Abstimmen'>",true);
        
output("</form>",true);
    }else{
        
output("<form action='ticker.php?op=vote' method='POST'>",true);
        
output("<input type='hidden' name='tickeritem' value='$id'>",true);
        
output("`bUmfrage: $subject`b`n",true);
        
output(stripslashes($body['body']));
        
$sql "SELECT count(resultid) AS c, choice FROM pollresults WHERE tickeritem='$id' GROUP BY choice ORDER BY choice";
        
$result db_query($sql);
        
$choices=array();
        
$totalanswers=0;
        
$maxitem 0;
        for (
$i=0;$i<db_num_rows($result);$i++){
            
$row db_fetch_assoc($result);
            
$choices[$row['choice']]=$row['c'];
            
$totalanswers+=$row['c'];
            if (
$row['c']>$maxitem$maxitem $row['c'];
        }
        while (list(
$key,$val)=each($body['opt'])){
            if (
trim($val)!=""){
                if (
$totalanswers<=0$totalanswers=1;
                
$percent round($choices[$key] / $totalanswers 100,1);
                
output("`n<input type='radio' name='choice' value='$key'".($choice==$key?" checked":"").">",true);
                
output(stripslashes($val)." (".(int)$choices[$key]." - $percent%)");
                if (
$maxitem==0){ $width=1; } else { $width round(($choices[$key]/$maxitem) * 400,0); }
                
$width max($width,1);
                
output("`n<img src='images/rule.gif' width='$width' height='2' alt='$percent'>",true);
                
//output(stripslashes($val)."`n");
            
}
        }
        
output("`n`0<input type='submit' class='button' value='Abstimmen'></form>",true);
    }
    
output("<hr>",true);
}
if (
$_GET[op]=="vote"){
    
$sql "DELETE FROM pollresults WHERE tickeritem='{$_POST['tickeritem']}' AND account='{$session['user']['acctid']}'";
    
db_query($sql);
    
$sql "INSERT INTO pollresults (choice,account,tickeritem) VALUES ('{$_POST['choice']}','{$session['user']['acctid']}','{$_POST['tickeritem']}')";
    
db_query($sql);
    
header("Location: ticker.php");
    exit();
}
if (
$_GET[op]=="addpoll"){
    if(
$session['user']['superuser2']>=7){
        if (
$_POST['subject']=="" || $_POST['body']==""){
            
output("<form action='ticker.php?op=addpoll' method='POST'>",true);
            
addnav("","ticker.php?op=add");
            
output("<input type='text' size='50' name='subject' value=\"".HTMLEntities(stripslashes($_POST[subject]))."\">`n",true);
            
output("<textarea class='input' name='body' cols='37' rows='5'>".HTMLEntities(stripslashes($_POST[body]))."</textarea>`n",true);
            
output("Opt <input name='opt[]'>`n",true);
            
output("Opt <input name='opt[]'>`n",true);
            
output("Opt <input name='opt[]'>`n",true);
            
output("Opt <input name='opt[]'>`n",true);
            
output("Opt <input name='opt[]'>`n",true);
            
output("Opt <input name='opt[]'>`n",true);
            
output("<input type='submit' class='button' value='Hinzufügen'></form>",true);
        }else{
            
$body = array("body"=>$_POST['body'],"opt"=>$_POST['opt']);
            
$sql "INSERT INTO ticker (tickertitle,tickerbody,tickerdate,tickertype) VALUES (\"$_POST[subject]\",\"".addslashes(serialize($body))."\",now(),1)";
            
db_query($sql);
            
header("Location: ticker.php");
            exit();
        }
    }else{
        if (
$session[user][loggedin]){
            
//$session[user][hitpoints]=0;
            //$session[user][alive]=0;
            
$session[user][experience]=round($session[user][experience]*0.9,0);
            
addnews($session[user][name]." wurde für den Versuch, die Gründer zu betrügen, bestraft.");
            
output("Du hast versucht die Gründer zu betrügen. Du wurdest mit Vergessen bestraft. Einiges von dem, was du einmal gewusst hast, weisst du nun nicht mehr.");
            
saveuser();
        }
    }
}
if (
$_GET[op]=="add"){
    if (
$session[user][superuser2]>=7){
        if (
$_POST[subject]=="" || $_POST[body]==""){
            
output("<form action='ticker.php?op=add' method='POST'>",true);
            
addnav("","ticker.php?op=add");
            
output("<input type='text' size='50' name='subject' value=\"".HTMLEntities(stripslashes($_POST[subject]))."\">`n",true);
            
output("<textarea class='input' name='body' cols='37' rows='5'>".HTMLEntities(stripslashes($_POST[body]))."</textarea>`n",true);
            
output("<input type='submit' class='button' value='Hinzufügen'></form>",true);
        }else{
            
$sql "INSERT INTO ticker (tickertitle,tickerbody,tickerdate,tickerauthor) VALUES (\"$_POST[subject]\",\"$_POST[body]\",now(),'".$session[user][acctid]."')";
            
db_query($sql);
            
header("Location: ticker.php");
            exit();
        }
    }else{
        if (
$session[user][loggedin]){
            
//$session[user][hitpoints]=0;
            //$session[user][alive]=0;
            
$session[user][experience]=round($session[user][experience]*0.9,0);
            
addnews($session[user][name]." wurde für den Versuch, die Gründer zu betrügen, bestraft.");
            
output("Du hast versucht die Gründer zu betrügen. Du wurdest mit Vergessen bestraft. Einiges von dem, was du einmal gewusst hast, weisst du nun nicht mehr.");
            
saveuser();
        }
    }
}
if (
$_GET[op]=="del"){
    if (
$session[user][superuser2]>=7){
            
$sql "DELETE FROM ticker WHERE tickeritem=\"$_GET[id]\"";
            
db_query($sql);
            
header("Location: ticker.php");
            exit();
    }else{
        if (
$session[user][loggedin]){
            
//$session[user][hitpoints]=0;
            //$session[user][alive]=0;
            
$session[user][experience]=round($session[user][experience]*0.9,0);
            
addnews($session[user][name]." wurde für den Versuch, die Gründer zu betrügen, bestraft.");
            
output("Du hast versucht die Gründer zu betrügen. Du wurdest mit Vergessen bestraft. Einiges von dem, was du einmal gewusst hast, weisst du nun nicht mehr.");
            
saveuser();
        }
    }
}

if (
$_GET[op]=="edit"){
    if (
$session[user][superuser2]>=7){
        
$sql "SELECT * FROM ticker WHERE tickeritem='$_GET[id]'";
        
$result db_query($sql);
        
$row db_fetch_assoc($result);
        
rawoutput("<form action='ticker.php?op=save&id=$_GET[id]' method='POST'>",true);
        
addnav("","ticker.php?op=save&id=$_GET[id]");
        
rawoutput("<input type='text' size='50' name='subject' value='$row[tickertitle]'>",true);
        
rawoutput("<input type='text' size='50' name='name' value='$row[tickerauthor]'>(Autor ID)",true);
        
rawoutput("<textarea class='input' name='body' cols='37' rows='5'>$row[tickerbody]</textarea><br>",true);
        
rawoutput("<input type='hidden' name='id' value='$_GET[id]'><input type='submit' class='button' value='Eintrag ändern'></form>",true);
        
rawoutput("</form>",true);
    }
}

if (
$_GET[op]=="save"){
    
$title $_POST[subject];
    
$body $_POST[body];
    
$autor $_POST[name];
    
$sql "UPDATE ticker SET tickertitle='$title', tickerbody='$body',tickerauthor='$autor' WHERE tickeritem='$_POST[id]'";
    
db_query($sql);
    
header("Location: ticker.php");
    exit();
}

$sql "SELECT * FROM ticker ORDER BY tickerdate DESC limit 20";

if (
$_GET[op]==""){
    
//month archiv [Code from 1.0.2 by Day]
    
$count getsetting("tickeritems"5);
    
$m $_GET["month"];
   if (
$m ""){
      
$sql "SELECT " .("ticker") . ".*,name AS tickerauthorname FROM " .("ticker") . " LEFT JOIN " .("accounts") . " ON " .("accounts") . ".acctid = " .("ticker") . ".tickerauthor WHERE tickerdate >= '{$m}-01' AND tickerdate <= '{$m}-31' ORDER BY tickerdate DESC";
      
$result db_query($sql);
   }else{
      
$sql "SELECT " .("ticker") . ".*,name AS tickerauthorname FROM " .("ticker") . " LEFT JOIN " .("accounts") . " ON " .("accounts") . ".acctid = " .("ticker") . ".tickerauthor ORDER BY tickerdate DESC limit $count";
      
$result db_query($sql);
   }
   for (
$i=0;$i<db_num_rows($result);$i++){
      
$row db_fetch_assoc($result);
      if (!isset(
$session['user']['lastticker']))
         
$session['user']['lastticker']=0;
      if (
$row['tickerauthorname']=="")
         
$row['tickerauthorname']="`@Die Gründer`0";
      if (
$row['tickertype']==0){
            
// onClick=\"return confirm('Bist du sicher, dass dieser Eintrag geänder werden soll?');\"
         
tickeritem($row['tickertitle'].' '.($session[user][superuser2]>=7?"`b[<a href='ticker.php?op=del&id=$row[tickeritem]' onClick=\"return confirm('Bist du sicher, dass dieser Eintrag gelöscht werden soll?');\">Del</a>][<a href='ticker.php?op=edit&id=$row[tickeritem]'>Edit</a>]":"`b"), $row['tickerbody'],
                 
$row['tickerauthorname'], $row['tickerdate']);
      }else{
         
pollitem($row['tickeritem'], $row['tickertitle'].' '.($session[user][superuser2]>=7?"`b[<a href='ticker.php?op=del&id=$row[tickeritem]' onClick=\"return confirm('Bist du sicher, dass dieser Eintrag gelöscht werden soll?');\">Del</a>][<a href='ticker.php?op=edit&id=$row[tickeritem]'>Edit</a>]":"`b"), $row['tickerbody'],
               
$row['tickerauthorname'], $row['tickerdate']);
      }
   }

   
output('`&');
   
$result db_query("SELECT mid(tickerdate,1,7) AS d, count(*) AS c FROM ".("ticker")." GROUP BY d ORDER BY d DESC");
   
$row db_fetch_assoc($result);
   
rawoutput("<form action='ticker.php' method='GET'>");
   
rawoutput('ticker Archiv: ');
   
rawoutput("<select name='month' onChange='this.form.submit();' >");
   
rawoutput("<option value=''>--Current--</option>");
   while (
$row db_fetch_assoc($result)){
      
$time strtotime("{$row['d']}-01");
      
$m date("M",$time);
      
rawoutput ("<option value='{$row['d']}'>$m".date(", Y",$time)." ({$row['c']})</option>");
   }
   
rawoutput("</select>");
   
rawoutput("<input type='submit' value='&gt;' class='button'>");
   
rawoutput("</form>");
   
//end
    //output("`0Kommentare und Fehler:`n");
    //viewcommentary("ticker");
}

$session[needtoviewticker]=false;

    
$sql "SELECT tickerdate FROM ticker ORDER BY tickeritem DESC LIMIT 1";
    
$result db_query($sql);
    
$row db_fetch_assoc($result);
    
$session[user][lastticker]=$row[tickerdate];
}
if (
$session[user][loggedout]){
output("Pssst! :P");
}
popup_footer();
?>