su_check(access_control::SU_RIGHT_EDITORCOLORS,true); page_header("Farbverwaltung"); addnav("G?Zurück zur Grotte","superuser.php"); addnav("W?Zurück zum Weltlichen","village.php"); if ($_GET['op']=="del") { cache_release('appoencode'); $sql = "UPDATE appoencode SET active='0' WHERE id='{$_GET['id']}'"; db_query($sql); $_GET['op']=""; cache_reset_('appoencode','sql'); } if ($_GET['op']=="undel") { cache_release('appoencode'); $sql = "UPDATE appoencode SET active='1' WHERE id='{$_GET['id']}'"; db_query($sql); $_GET['op']=""; cache_reset_('appoencode','sql'); } if ($_GET['op']=="forbid") { cache_release('appoencode'); $sql = "UPDATE appoencode SET allowed='0' WHERE id='{$_GET['id']}'"; db_query($sql); $_GET['op']=""; cache_reset_('appoencode','sql'); } if ($_GET['op']=="allow") { cache_release('appoencode'); $sql = "UPDATE appoencode SET allowed='1' WHERE id='{$_GET['id']}'"; db_query($sql); $_GET['op']=""; cache_reset_('appoencode','sql'); } if ($_GET['op']=="kill") { cache_release('appoencode'); $sql = "DELETE FROM appoencode WHERE id='{$_GET['id']}'"; db_query($sql); $_GET['op']=""; cache_reset_('appoencode','sql'); } if ($_GET['op']=="") { if (!empty($_GET['saveorder'])) { //cache_release('appoencode'); asort($_POST['order']); $keys = array_keys($_POST['order']); $i = 0; foreach ($keys AS $key) { $i++; $sql = 'UPDATE appoencode SET listorder="'.$i.'" WHERE id="'.$key.'"'; db_query($sql); } //cache_reset_('appoencode','sql'); } addnav("Neue Farbe einfügen","su_colors.php?op=add"); addnav("CSS schreiben","su_colors.php?op=writecss"); addpregnav('/su_colors.php\?sort=(listorder|id|color|code)/'); addnav('','su_colors.php?saveorder=1'); $str_output .= "
Sortieren nach [Sortierung ] | [ID ] | [Farbe ] | [Code ]
"; if($_GET['sort']!='') { $_SESSION['sort_by'] = mixed_check_parameter($_GET['sort']); } elseif($_SESSION['sort_by']=='') { $_SESSION['sort_by'] = 'listorder'; } else { $_SESSION['sort_by'] = $_SESSION['sort_by']; } $str_sql = "SELECT * FROM appoencode ORDER BY ".$_SESSION['sort_by']." ASC"; $db_result = db_query($str_sql); $db_rows=db_num_rows($db_result); while($row = db_fetch_assoc($db_result)) { addnav("","su_colors.php?op=edit&id={$row['id']}"); addnav("","su_colors.php?op=kill&id={$row['id']}"); addnav("","su_colors.php?op=allow&id={$row['id']}"); addnav("","su_colors.php?op=forbid&id={$row['id']}"); addnav("","su_colors.php?op=del&id={$row['id']}"); addnav("","su_colors.php?op=undel&id={$row['id']}"); $order_options = ''; for ($i=1; $i<=$db_rows; $i++) { $order_options .= ''; } $str_class = ($str_class == 'trdark')?'trlight':'trdark'; $str_output .= " "; if (empty($row['color'])) { $row['color']=NULL; } if (empty($row['tag'])) { $row['tag']=NULL; } if (empty($row['style'])) { $row['style']=NULL; } $str_output .= " "; $rows++; } $str_class = ($str_class=='trdark'?'trlight':'trdark'); $str_output.=''; $str_output .= "
Aktionen Farbtag HEX-Farbe Zusatztag Style Sort.
[Edit | Del | ". (($row['allowed'])?"Verbieten | ":"Erlauben | "). (($row['active'])?"Deakt.]":"Akt.]"). "{$row['code']} ".(!empty($row['color']) ? '`'.$row['code'] : '')." {$row['color']}`0 {$row['tag']} {$row['style']}
"; } elseif ($_GET['op']=="add") { $str_output .= "Neue farben hinzufügen:`n"; addnav("Zurück zur Farbverwaltung","su_colors.php"); output($str_output); colorform(array()); } elseif ($_GET['op']=="edit") { addnav("Zurück zur Farbverwaltung","su_colors.php"); $sql = "SELECT * FROM appoencode WHERE id='{$_GET['id']}'"; $result = db_query($sql); if (db_num_rows($result)<=0) { $str_output .= "`iFarbe nicht gefunden.`i"; } else { $str_output .= "Farbeneditor:`n"; $row = db_fetch_assoc($result); output($str_output); colorform($row); } } elseif ($_GET['op']=="writecss") { addnav("Zurück zur Farbverwaltung","su_colors.php"); $str_out = write_appoencode_css(); $str_file = './templates/colors.css'; $fhandler = fopen($str_file,'w+'); fwrite($fhandler,$str_out); fclose($fhandler); } elseif ($_GET['op']=="save") { $keys=''; $vals=''; $sql=''; $i=0; if(is_array($_POST['color'])) { foreach($_POST['color'] as $key => $val) { if (is_array($val)) { $val = addslashes(serialize($val)); } if ($_GET['id']>"") { if (empty($val)) { $sql.=($i>0?",":"")."$key=NULL"; } else { $sql.=($i>0?",":"")."$key='$val'"; } } else { $keys.=($i>0?",":"")."$key"; if (empty($val)) { $vals.=($i>0?",":"")."NULL"; } else { $vals.=($i>0?",":"")."'$val'"; } } $i++; } if ($_GET['id']>"") { $sql="UPDATE appoencode SET $sql WHERE id='{$_GET['id']}'"; } else { $sql="INSERT INTO appoencode ($keys) VALUES ($vals)"; } db_query($sql); if (!db_error(LINK)) { cache_release('appoencode'); //Cache löschen cache_reset_('appoencode','sql'); $str_output .= "Farbe gespeichert!"; } else { $str_output .= "Fehler beim Speichern: $sql"; } } addnav("Zurück zur Farbverwaltung","su_colors.php"); } function colorform($color) { global $output; if (empty($color['color'])) { $color['color']=''; } if (empty($color['tag'])) { $color['tag']=''; } if (empty($color['style'])) { $color['style']=''; } $str_output .= form_header("su_colors.php?op=save&id={$color['id']}"); $str_output .="
Farbtag:
".(!empty($color['color']) ? appoencode('`'.$color['code']) : '')."HEX-Farbe:
Zusatztag:
Style:
"; $output .= $str_output; } output ($str_output); page_footer(); ?>