*
* File Name : charts.html
* Last Update : 2011-01-07
*/
include('glob/start.php');
create_thispage($thispage['id'],$thispage['uri'],$thispage['title']);
foreach($page['children'][PAGE_PARENT_ID] as $val) {
$c_submenu .= '
'.$page[$val]['title'].' ';
}
/////////////////////V I E W
if(!$a){
/////////// A C T I O N
if($form=='vote'){
$varpost = array('chartsid','charts_action','rating','games');
foreach ($varpost as $val){
$post[$val] = $_POST[$val];
}
if($post['charts_action']=='Abstimmen'){
if(!$usecookies){
$post['error'] = 'Cookies müssen aktiviert sein.';
}else{
foreach($post['games'] as $key=>$val){
//////IP-KONTROLLE - start
if(!$_COOKIE['mostwanted-'.$post['chartsid'].'-'.$val] && mysqli_fetch_object($sm_db->query("SELECT id FROM charts_d WHERE charts_id='$chartsid' and opt='$val' and date_format(date, '%Y%m%d')='$datetag' and (count_vid='$post_count_vid' or ip='".$_SERVER['REMOTE_ADDR']."')"))){
setcookie('mostwanted-'.$post['chartsid'].'-'.$val, 'yes', time()+3600*24*CHARTSBLOCK);
// L O G F I L E
$logfile = fopen ("charts_d_mehrfachabstimmer.txt", "a");
flock ($logfile, 2) or die ("Kann die Zieldatei ".$logfile." nicht locken.");
fputs ($logfile, date ("d.m.y H:i:s", mktime ())." | COUNT_VID: ".$post_count_vid.", IP: ".$_SERVER['REMOTE_ADDR']."
Charts: $chartsid, Stimme: ".$val.", Punkte: ".$post['rating'][$key]."
");
fclose ($logfile);
}
//////IP-KONTROLLE - end
if($val!=0) {
if($_COOKIE['mostwanted-'.$post['chartsid'].'-'.$val]=='yes') {
$post['error_charts'][$val] = 'bereits abgestimmt!';
}else{
if(!mysqli_num_rows($sm_db->query("SELECT id FROM charts_data WHERE charts_id='".$post['chartsid']."' and opt='$val'"))){
$result2 = $sm_db->query("INSERT INTO charts_data (charts_id, opt) VALUES ('".$post['chartsid']."', '$val')");
}
$result = $sm_db->query("UPDATE charts_data SET votes=votes+1, rating=rating+'".$post['rating'][$key].".' WHERE charts_id='".$post['chartsid']."' and opt='$val'");
setcookie('mostwanted-'.$post['chartsid'].'-'.$val, 'yes', time()+3600*24*CHARTSBLOCK);
//////IP-KONTROLLE - start
$result_ip = $sm_db->query("INSERT INTO charts_d (charts_id, count_vid, date, ip, opt, points) VALUES ('".$post['chartsid']."', '$post_count_vid', now(), '".$_SERVER['REMOTE_ADDR']."', '$val', '".$post['rating'][$key]."')");
//////IP-KONTROLLE - end
}
}
}
}
}
}
/////////// G E N E R A T E
$today = getdate();
$ynow = $today[year];
$mnow = (($today[mon]<10)?'0':NULL).$today[mon];
$result = $sm_db->query("SELECT * FROM charts_index WHERE date_format(date, '%Y-%m')='$ynow-$mnow' and status='1'") or mysql_die($sm_db);
$db = mysqli_fetch_assoc($result);
$chartsid = $db['id'];
$c_body .= (($post['error'])?'Fehler: '.$post['error'].'
':NULL).'
Hitlist '.$monthtitle[$mnow].' '.$ynow.'
';
//// N O
if(!$chartsid){
$c_body .= '
Es liegt noch keine aktuelle Hitlist zur Abstimmung vor
';
//// F O R M
}else if($form=='vote'){
$result = $sm_db->query("SELECT opt, rating/votes as points FROM charts_data WHERE charts_id='$chartsid' and votes>='".CHARTSMINVOTES."' ORDER BY votes DESC, points DESC LIMIT 10") or mysql_die($sm_db);
while($result && $db = mysqli_fetch_assoc($result)){
$res['order'][$db['opt']] = $db['points'];
for($r=1;$r<=5;$r++){
$res['rating'][$db['opt']] .= '
';
}
}
//// V O T E
}else{
$result = $sm_db->query("SELECT opt FROM charts_data WHERE charts_id='$chartsid'") or mysql_die($sm_db);
$c_body .= '
Macht mit beim Trendbarometer der angesagtesten Rennspiele. Die Teilnahme ist kinderleicht. Jeden Monat stellen wir mit eurer Hilfe eine Liste mit insgesamt zehn Titeln zusammen deren Veröffentlichung Ihr bereits sehnsüchtig erwartet oder von denen Ihr nicht genug bekommen könnt und die ihr immer und immer wieder spielt. Ihr bewertet diese Spiele dann mit einem Rating von 1 (niedrigste Wertung) bis 5 (höchste Wertung). Nach der Anzahl der Bewertungen ergibt sich dann die Platzierung.
';
}
///////////////////// A R C H I V E
}else if($a==2){
$gaga = array('01'=>'Jan','02'=>'Feb','03'=>'Mär','04'=>'Apr','05'=>'Mai','06'=>'Jun','07'=>'Jul','08'=>'Aug','09'=>'Sep','10'=>'Okt','11'=>'Nov','12'=>'Dez');
$result = $sm_db->query("SELECT id, date_format(date, '%Y-%m') as resdateon FROM charts_index WHERE date<=now()-INTERVAL 1 MONTH and status='1' GROUP BY resdateon") or mysql_die($sm_db); $querynum2++;
while($result && $db = mysqli_fetch_assoc($result)){
$resdate[substr($db['resdateon'], 0, 4)][substr($db['resdateon'], 5)] = $db['id'];
}
if($b){
$m = substr($b, 5);
$y = substr($b, 0, 4);
}
if(!array_key_exists($y, $resdate)) $y = end(array_keys($resdate));
if(!$resdate[$y][$m]) $m = end(array_keys($resdate[$y]));
$c_submenu2 .= '
';
if($id = $resdate[$y][$m]){
$c_body .= '
Hitlist '.$monthtitle[$m].' '.$y.'
';
$result = $sm_db->query("SELECT opt, rating/votes as points FROM charts_data WHERE charts_id='$id' and votes>='".CHARTSMINVOTES."' ORDER BY votes DESC, points DESC LIMIT 10") or mysql_die($sm_db);
while($result && $db = mysqli_fetch_assoc($result)){
$res['order'][$db['opt']] = $db['points'];
for($r=1;$r<=5;$r++){
$res['rating'][$db['opt']] .= '
';
}
}
}
}
////////////////////////// O U T P U T
if(arsort($res['order'])){
$c_body .= '
';
foreach($res['order'] as $key=>$val) {
$i++;
$c_body .= '
| '.$i.'. |
'.(($games_online[$key])?''.$games_title[$key].'':$games_title[$key]).' |
'.$res['rating'][$key].' ('.number_format($val,2,',','.').') '.(($post['error_charts'][$key])?' '.$post['error_charts'][$key].'':NULL).' |
';
}
$c_body .= '
';
}
include('glob/end.php');
?>