Subversion-Projekte lars-tiefland.content-management

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<?php
    $self = basename( $PHP_SELF );
    $DB = "webs";
    require_once  "connect.php";
    // -------------------------
    // Sonderrechte abchecken
    if ( $site != "weban.de" )
    {
        trigger_error( "Sie sind nicht berechtigt dieses Tool zu nutzen!",
            E_USER_ERROR );
    }
    // -------------------------
    function getTables( $db = "mediaran_de" )
    {
        $buffer = array();
        $result = mysql_query( "show tables from $db" );
        while ( $zeile = mysql_fetch_assoc( $result ) )
        {
            $buffer[] = $db . "." . $zeile["Tables_in_" . $db];
        }
        return $buffer;
    }
    function getCreateCmd( $table )
    {
        $result = mysql_query( "SHOW CREATE TABLE $table" );
        if ( $zeile = mysql_fetch_assoc( $result ) )
        {
            return $zeile["Create Table"];
        }
    }
    // -------------------------
    unset( $_POST["pwdcheck"] );
    if ( $action == "delete" )
    {
        if ( $ID )
        {
            $condition = array();
            foreach ( $ID as $elem )
            {
                array_push( $condition, " ID = '$elem'" );
            }
            $cond = join( " or ", $condition );
            $query = "DELETE FROM $DB WHERE $cond";
            $result = mysql_query( "$query" ) or die( mysql_errno() . ": " .
                mysql_error() );
            header( "Location: " . $self );
        }
    }
    if ( $action == "update" )
    {
        if ( !$ID )
        { // insert Dummy-Entry
            $query = "insert into $DB (erstellt_am,erstellt_von) VALUES (NOW(),'$PHP_AUTH_USER')";
            $result = mysql_query( $query ) or die( mysql_errno() . ": " .
                mysql_error() . "<hr>" . $query . "<hr>" );
            $ID = mysql_insert_id();
            if ( $_POST["create_db"] == "create" )
            {
                $db=$_POST["datenbank"];
                mysql_query( "create database $db;" );
                mysql_query( "use $db;" );
                unset( $_POST["create_db"] );
                // Shop-Tabellen erstellen
                foreach ( getTables( $_POST["sourceDatenbank"] ) as
                    $table )
                {
                    mysql_query( getCreateCmd( $table ) );
                }
            }
            mysql_query( "use $database_name;" );
            unset( $_POST["tables"] );
            unset( $_POST["sourceDatenbank"] );
        }
        unset( $_POST["action"] );
        unset( $_POST["ID"] );
        unset( $_POST["tables"] );
        foreach ( array_keys( $_POST ) as $elem )
        {
            if ( $elem[0] == "_" )
            {
                unset( $_POST[$elem] );
                $button = $$elem;
                $elem = substr( $elem, 1 );
                $Pfad = $_POST[$elem . "_Pfad"];
                unset( $_POST[$elem . "_Pfad"] );
                $image = $$elem;
                $image_name = $elem . "_name";
                $image_name = urlencode( $$image_name );
                switch ( $button )
                {
                    case 0:
                        break;
                    case 1:
                        $_POST[$elem] = '';
                        break;
                    case 2:
                        //$image_name=$ID."_".$image_name;
                        $image_name = $ID . strrchr( $image_name, "." );
                        $_POST[$elem] = $image_name;
                        copy( $image, $Pfad . $image_name );
                        break;
                    default:
                        break;
                }
            }
        }
        $names = array();
        foreach ( array_keys( $_POST ) as $elem )
        {
            array_push( $names, "$elem='$_POST[$elem]'" );
        }
        $query = "update $DB set " . join( $names, ', ' );
        $query = $query .
            ", letzte_Aenderung_am=NOW(), letzte_Aenderung_von='$PHP_AUTH_USER' where ID = '$ID'";
        $result = mysql_query( $query ) or die( mysql_errno() . ": " .
            mysql_error() . "<hr>$query<hr>" );
        header( "Location: " . $self );
    }
    require_once  "Weban_Smarty.class.php";
    $GLOBALS["ui"] = new Weban_Smarty();
    if ( !$action )
    {
        $action = "select_edit";
    }
    if ( !$sort )
    {
        $sort = 'Name';
    }
    $sort = 'domain';
    $GLOBALS["ui"]->assign( "action", $action );
    $query = "SELECT * FROM $DB ";
    if ( $action == "edit" && $_GET["ID"] )
    {
        $query .= " WHERE ID=" . $_GET["ID"];
    } elseif ( $action == "edit" && !$_GET["ID"] )
    {
        unset( $query );
    }
    else
    {
        $query .= " ORDER BY $sort";
    }
    if ( $query )
    {
        $result = mysql_query( $query ) or die( mysql_errno() . ": " .
            mysql_error() . "<br>$query" );
        while ( $row = mysql_fetch_assoc( $result ) )
        {
            foreach ( array( "domain_logo" => "Domain-Logos",
                "hintegrundbild" => "hintergrundbild" ) as $img_name => $img_Path )
            {
                $img = $row[$img_name];
                unset( $row[$img_name] );
                $image_Path = "images/$img_Path/";
                $img_full = $image_Path . $img;
                $row[$img_name]["name"] = $img;
                if ( $img && file_exists( $img_full ) )
                {
                    $row[$img_name]["size"] = filesize( $img_full );
                    $row[$img_name]["img_size"] = GetImageSize( $img_full );
                }
            }
            $webs[] = $row;
        }
    }
    $GLOBALS["ui"]->assign( "webs", $webs );
    $GLOBALS["ui"]->display( "admin_webs.tpl" );
?>