예제 #1
0
 public function est_autorise()
 {
     if ($_SESSION['util']->profil == "1") {
         return 1;
     }
     $verif = new Autorisation_modules();
     if ($verif->charger($this->id, $_SESSION['util']->id) && $verif->autorise) {
         return 1;
     }
     return 0;
 }
 public function changePermissions($profil, $generalPermissions, $pluginsPermissions)
 {
     $this->verifyLoaded();
     if ($generalPermissions === null) {
         $generalPermissions = array();
     }
     if ($pluginsPermissions === null) {
         $pluginsPermissions = array();
     }
     $testProfil = new Profil();
     if (!$testProfil->charger_id($profil) && $profil != 0) {
         throw new TheliaAdminException('Incorrect parameter $profil : could not load Profil.', TheliaAdminException::PROFIL_NOT_FOUND);
     }
     if ($profil != 0) {
         $this->profil = $profil;
         $this->maj();
     }
     if ($this->profil != ProfilAdmin::ID_PROFIL_SUPERADMINISTRATEUR) {
         foreach ($this->query_liste("SELECT * FROM " . Autorisation::TABLE) as $row) {
             $autorisation_administrateur = new Autorisation_administrateur();
             $autorisation_administrateur->charger($row->id, $this->id);
             if (array_key_exists($row->id, $generalPermissions) && $generalPermissions[$row->id] == 'on') {
                 if (!$autorisation_administrateur->id) {
                     $autorisation_administrateur->administrateur = $this->id;
                     $autorisation_administrateur->autorisation = $row->id;
                     $autorisation_administrateur->lecture = 0;
                     $autorisation_administrateur->ecriture = 0;
                     $autorisation_administrateur->id = $autorisation_administrateur->add();
                 }
                 $autorisation_administrateur->lecture = 1;
                 $autorisation_administrateur->ecriture = 1;
                 $autorisation_administrateur->maj();
             } else {
                 if ($autorisation_administrateur->id) {
                     $autorisation_administrateur->lecture = 0;
                     $autorisation_administrateur->ecriture = 0;
                     $autorisation_administrateur->maj();
                 }
             }
         }
         foreach (ActionsAdminModules::instance()->lister(false, true) as $module) {
             if (ActionsAdminModules::instance()->est_administrable($module->nom)) {
                 $autorisation_modules = new Autorisation_modules();
                 $autorisation_modules->charger($module->id, $this->id);
                 if (array_key_exists($module->id, $pluginsPermissions) && $pluginsPermissions[$module->id] == 'on') {
                     if (!$autorisation_modules->id) {
                         $autorisation_modules->administrateur = $this->id;
                         $autorisation_modules->module = $module->id;
                         $autorisation_modules->id = $autorisation_modules->add();
                     }
                     $autorisation_modules->autorise = 1;
                     $autorisation_modules->maj();
                 } else {
                     if ($autorisation_modules->id) {
                         $autorisation_modules->autorise = 0;
                         $autorisation_modules->maj();
                     }
                 }
             }
         }
     }
     ActionsModules::instance()->appel_module("changePermissionsAdmin", new Administrateur($this->id));
     redirige('gestadm_droits.php?administrateur=' . $this->id);
 }
예제 #3
0
			<li style="height:25px; width:517px; border-left:1px solid #96A8B5;"><?php 
    echo trad('Description', 'admin');
    ?>
</li>
			<li style="height:25px; width:55px; border-left:1px solid #96A8B5;"><?php 
    echo trad('Acces', 'admin');
    ?>
</li>
	</ul>

	<div class="bordure_bottom">
	<?php 
    $liste = ActionsAdminModules::instance()->lister(false, true);
    $idx = 0;
    foreach ($liste as $module) {
        $autorisation_modules = new Autorisation_modules();
        $autorisation_modules->charger($module->id, $_GET['id']);
        try {
            if (ActionsAdminModules::instance()->est_administrable($module->nom)) {
                $fond = "ligne_" . ($idx % 2 ? 'fonce' : 'claire') . "_rub";
                $modulesdesc = new Modulesdesc();
                $modulesdesc->charger($module->id);
                ?>
					<ul class="<?php 
                echo $fond;
                ?>
">
						<li style="width:250px;"><?php 
                echo ActionsAdminModules::instance()->lire_titre_module($module);
                ?>
</li>
예제 #4
0
            $autorisation_administrateur->ecriture = 0;
        }
    } else {
        if ($autorisation->type == "2") {
        }
    }
    if ($autorisation_administrateur->id) {
        $autorisation_administrateur->maj();
    } else {
        $autorisation_administrateur->autorisation = $autorisation->id;
        $autorisation_administrateur->administrateur = $_GET['administrateur'];
        $autorisation_administrateur->add();
    }
} else {
    if ($_GET['type_droit'] == "2") {
        $autorisation_modules = new Autorisation_modules();
        $autorisation_modules->charger($_GET['module'], $_GET['administrateur']);
        if ($_GET['valeur'] == 1) {
            $autorisation_modules->autorise = 1;
        } else {
            $autorisation_modules->autorise = 0;
        }
        if ($autorisation_modules->id) {
            $autorisation_modules->maj();
        } else {
            $autorisation_modules->module = $_GET['module'];
            $autorisation_modules->administrateur = $_GET['administrateur'];
            $autorisation_modules->add();
        }
    }
}
예제 #5
0
                            <th><?php 
echo trad('Description', 'admin');
?>
</th>
                            <th><?php 
echo trad('Acces', 'admin');
?>
</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php 
$liste = ActionsAdminModules::instance()->lister(false, true);
foreach ($liste as $module) {
    if (ActionsAdminModules::instance()->est_administrable($module->nom)) {
        $autorisation_modules = new Autorisation_modules();
        $autorisation_modules->charger($module->id, $administrateur->id);
        $modulesdesc = new Modulesdesc();
        $modulesdesc->charger($module->id);
        ?>
                                    <tr>
                                        <td><?php 
        echo ActionsAdminModules::instance()->lire_titre_module($module);
        ?>
</td>
                                        <td><?php 
        echo $modulesdesc->description;
        ?>
</td>
                                        <td><input type="checkbox" name="droits_m[<?php 
        echo $module->id;