Subversion-Projekte lars-tiefland.content-management

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<?php

    /**
     * @package   Content-management
     * @author    Lars Tiefland <tiefland@weban.de>
     * @copyright 2010 Webagentur Niewerth
     * @license   propietary http://www.weban.de
     * @version   $Rev: 3361 $
     * @filesource
     * 
     */

    /**
     * 
     * @package   Content-management
     * @author    Lars Tiefland <tiefland@weban.de>
     * @copyright 2010 Webagentur Niewerth
     */

    // SVN: $Id: admin_user_rechte.php 3361 2011-02-24 15:34:41Z tiefland $

    $self = basename( $PHP_SELF );
    $Tab = "Access";
    require_once  "connect2.php";
    require_once  "webs.php";
    require_once  "Weban_Smarty.class.php";
    $GLOBALS["ui"] = new Weban_Smarty();
    $GLOBALS["ui"]->compile_dir = $_SERVER["DOCUMENT_ROOT"] .
        "/templates_c/";
    $GLOBALS["ui"]->use_sub_dirs = true;

    if ( $MySQL_Host_write )
    {
        //echo "schreibe in Haupt-DB";
        $w_conn = @mysql_connect( $MySQL_Host_write, $MySQL_User, $MySQL_Passwd );
        if ( !$w_conn )
        {
            $error = true;
            $meld =
                "Leider können keine Bentzer bearbeitet werden, da keine Verbindung zur Datenbank möglich ist.";
        }
        $r = @mysql_select_db( $database_name );
        if ( !$r )
        {
            $meld =
                "Leider können keine Bentzer bearbeitet werden, da keine Verbindung zur Datenbank möglich ist.";
            $error = true;
        }
    }
    else
    {
        $w_conn = $localhost_dbh;
    }
    if ( $w_conn )
    {
        if ( $action == "update" )
        {
            /*$query = "delete from user_properties where Access = $ID";
            $result = mysql_query( $query ) or die( mysql_errno() . ": " . mysql_error() );*/

            if ( isset( $modules ) )
            {
                foreach ( $modules as $tools )
                {
                    foreach ( $tools as $properties )
                    {
                        foreach ( $properties as $elem => $val )
                        {
                            $query = "
                                SELECT 
                                    * 
                                FROM 
                                    user_properties 
                                WHERE 
                                    Access=$ID 
                                AND 
                                    properties=$elem
                            ";
                            $result = mysql_query( $query );
                            $anz = mysql_num_rows( $result );
                            if ( $anz && !$val )
                            {
                                $query = "
                                    DELETE FROM 
                                        user_properties 
                                    WHERE 
                                        Access = $ID 
                                    AND 
                                        properties=$elem
                                ";
                            } elseif ( $val && !$anz )
                            {
                                $query = "
                                    INSERT INTO 
                                        user_properties 
                                    (
                                        Access,
                                        properties
                                    )
                                    VALUES 
                                    (
                                        $ID,
                                        $elem
                                    )
                                ";
                            }
                            $result = mysql_query( $query ) or die( mysql_errno
                                () . ": " . mysql_error() . "<hr>$query<hr>" );
                        }
                    }
                }
            }
            unset( $modules, $tools, $properties );
        }
        require_once  "get_rechte.php";

        if ( $ID )
        {
            $sql = "
                SELECT 
                    * 
                FROM 
                    user_properties 
                WHERE 
                    Access = $ID
            ";
            $result = mysql_query( $sql ) or die( mysql_errno() . ": " .
                mysql_error() );
            while ( $zeile = mysql_fetch_array( $result ) )
            {
                $user_properties[$zeile["properties"]] = 1;
            }

            $sql = "
                SELECT 
                    * 
                FROM 
                    Access 
                WHERE 
                    ID = $ID
            ";
            $result = mysql_query( $sql ) or die( mysql_errno() . ": " .
                mysql_error() );
            $zeile = mysql_fetch_array( $result );
            list( $user_name, $user_site ) = explode( "@", $zeile["user"] );
            $user = $zeile;
            $user["site"] = $user_site;
            $user["properties"] = $user_properties;
        }
        $query = "
            SELECT 
                * 
            FROM 
                modules 
            ORDER by 
                rang
        ";
        $result_modules = mysql_query( $query ) or die( mysql_errno() . ": " .
            mysql_error() );
        while ( $module = mysql_fetch_assoc( $result_modules ) )
        {
            if ( isset( $web_rechte[$module["interner_name"]] ) )
            {
                $query = "
                    SELECT 
                        tools.* 
                    FROM 
                        tools 
                    WHERE 
                        tools.modules = $module[ID] 
                    ORDER BY 
                        tools.rang
                ";
                $result_tools = mysql_query( $query ) or die( mysql_errno() .
                    ": " . mysql_error() );
                while ( $tool = mysql_fetch_assoc( $result_tools ) )
                {
                    if ( isset( $web_rechte[$module["interner_name"]][$tool["button_name"]] ) )
                    {
                        $query = "
                            SELECT 
                                properties.* 
                            FROM 
                                properties 
                            WHERE 
                                properties.tools = $tool[ID] 
                            AND
                                hidden = 'false' 
                            ORDER BY 
                                properties.rang
                        ";
                        $result_properties = mysql_query( $query ) or die( mysql_errno
                            () . ": " . mysql_error() );
                        while ( $property = mysql_fetch_assoc( $result_properties ) )
                        {
                            if ( isset( $web_rechte[$module["interner_name"]][$tool["button_name"]][$property["interner_name"]] ) )
                            {
                                if ( $web_rechte[$module["interner_name"]][$tool["button_name"]][$property["interner_name"]] )
                                {
                                    $property["web_name"] = $web_rechte[$module["interner_name"]][$tool["button_name"]][$property["interner_name"]];
                                    if ( ( $property["web_name"] ) )
                                    {
                                        if ( stristr( $property["web_name"],
                                            ";" ) )
                                        {
                                            $name = explode( ";", $property["web_name"] );
                                            if ( stristr( $name[0], ":" ) )
                                            {
                                                $property["name"] = $name[0];
                                            }
                                        }
                                        elseif ( $property["web_name"][strlen($property["web_name"])]==":" )
                                        {
                                            $property["name"]=$property["web_name"];
                                        }
                                    }
                                }
                                $tool["properties"][] = $property;
                            }
                        }
                        $module["tools"][] = $tool;
                    }
                }
                $modules[] = $module;
            }
        }
    }
    $GLOBALS["ui"]->assign( "modules", $modules );
    $GLOBALS["ui"]->assign( "user", $user );
    $GLOBALS["ui"]->assign( "webs", $webs );
    $GLOBALS["ui"]->assign( "meld", $meld );
    $GLOBALS["ui"]->assign( "error", $error );
    $GLOBALS["ui"]->display( "admin_user_rechte.tpl" );
?>