コード例 #1
0
ファイル: download_function.php プロジェクト: bash-t/admidio
     // get recordset of parent folder from databse
     $parentFolder = new TableFolder($gDb);
     $parentFolder->getFolderForDownload($targetFolder->getValue('fol_fol_id_parent'));
 }
 //Formularinhalt aufbereiten
 if ($targetFolder->getValue('fol_fol_id_parent') && $parentFolder->getValue('fol_public') == 0) {
     $publicFlag = $targetFolder->getValue('fol_public');
 } else {
     if (isset($_POST['fol_public']) == false || $_POST['fol_public'] == 0) {
         $publicFlag = 1;
     } else {
         $publicFlag = 0;
     }
 }
 //setze schon einmal das Public_Flag
 $targetFolder->editPublicFlagOnFolder($publicFlag);
 $rolesArray = null;
 //Nur wenn der Ordner oeffentlich nicht zugaenglich ist
 //werden die Rollenbrechtigungen gespeichert.
 //Ansonsten wird ein leeres Rollenset gespeichert...
 if ($publicFlag == 0) {
     //Rollenberechtigungen aufbereiten
     if (array_key_exists('AllowedRoles', $_POST)) {
         $sentAllowedRoles = $_POST['AllowedRoles'];
         //fuege alle neuen Rollen hinzu
         foreach ($sentAllowedRoles as $newRole) {
             $rolesArray[] = array('rol_id' => $newRole, 'rol_name' => '');
         }
     }
 }
 //jetzt noch die Rollenberechtigungen in die DB schreiben
コード例 #2
0
    if ($getFolderId === 0 || !is_array($_POST['adm_allowed_roles'])) {
        // FolderId ist zum hinzufuegen erforderlich
        $gMessage->show($gL10n->get('SYS_INVALID_PAGE_VIEW'));
    }
    try {
        // get recordset of current folder from database
        $targetFolder = new TableFolder($gDb);
        $targetFolder->getFolderForDownload($getFolderId);
        if ($targetFolder->getValue('fol_fol_id_parent')) {
            // get recordset of parent folder from database
            $parentFolder = new TableFolder($gDb);
            $parentFolder->getFolderForDownload($targetFolder->getValue('fol_fol_id_parent'));
        }
        if (in_array('0', $_POST['adm_allowed_roles'], true)) {
            // set flag public for this folder and all child folders
            $targetFolder->editPublicFlagOnFolder(1);
            // if all users have access then delete all existing roles
            $targetFolder->setRolesOnFolder(array());
        } else {
            // set flag public for this folder and all child folders
            $targetFolder->editPublicFlagOnFolder(0);
            // save all set roles in the database
            $targetFolder->setRolesOnFolder($_POST['adm_allowed_roles']);
        }
        $targetFolder->save();
        $gMessage->setForwardUrl($g_root_path . '/adm_program/system/back.php');
        $gMessage->show($gL10n->get('SYS_SAVE_DATA'));
    } catch (AdmException $e) {
        $e->showHtml();
    }
}