# License, or (at your option) any later version.
#
# GPL: http://www.gnu.org/licenses/gpl.txt
#
##################################################
// Part of the User Management category
if (!defined('EXPONENT')) {
    exit('');
}
if (exponent_permissions_check('user_management', exponent_core_makeLocation('administrationmodule'))) {
    if (!defined('SYS_USERS')) {
        require_once BASE . 'subsystems/users.php';
    }
    if (isset($_POST['id'])) {
        // Existing user profile edit
        $g = exponent_users_getGroupById($_POST['id']);
        $g = exponent_users_groupUpdate($_POST, $g);
        exponent_users_saveGroup($g);
        exponent_flow_redirect();
    } else {
        if (exponent_users_getGroupByName($_POST['name']) != null) {
            $i18n = exponent_lang_loadFile('modules/administrationmodule/actions/gmgr_savegroup.php');
            $post = $_POST;
            $post['_formError'] = $i18n['name_taken'];
            exponent_sessions_set('last_POST', $post);
            header('Location: ' . $_SERVER['HTTP_REFERER']);
        } else {
            $g = exponent_users_groupUpdate($_POST, null);
            exponent_users_saveGroup($g);
            exponent_flow_redirect();
        }
 function form($object)
 {
     $i18n = exponent_lang_loadFile('datatypes/formbuilder_form.php');
     global $db;
     if (!defined('SYS_FORMS')) {
         require_once BASE . 'subsystems/forms.php';
     }
     if (!defined('SYS_USERS')) {
         require_once BASE . 'subsystems/users.php';
     }
     //global $user;
     exponent_forms_initialize();
     $form = new form();
     if (!isset($object->id)) {
         $object->name = '';
         $object->description = '';
         $object->is_email = 0;
         $object->is_saved = 1;
         $object->response = $i18n['default_response'];
         $object->resetbtn = $i18n['default_resetbtn'];
         $object->submitbtn = $i18n['default_submitbtn'];
         $object->subject = $i18n['default_subject'];
     } else {
         $form->meta('id', $object->id);
     }
     $form->register('name', $i18n['name'], new textcontrol($object->name));
     $form->register('description', $i18n['description'], new texteditorcontrol($object->description));
     $form->register('response', $i18n['response'], new htmleditorcontrol($object->response));
     $form->register(null, '', new htmlcontrol('<br><br><b>' . $i18n['button_header'] . '</b><br><hr><br>'));
     $form->register('submitbtn', $i18n['submitbtn'], new textcontrol($object->submitbtn));
     $form->register('resetbtn', $i18n['resetbtn'], new textcontrol($object->resetbtn));
     $form->register(null, '', new htmlcontrol('<br><br><b>' . $i18n['email_header'] . '</b><br><hr><br>'));
     $form->register('is_email', $i18n['is_email'], new checkboxcontrol($object->is_email, false));
     $userlist = array();
     $users = exponent_users_getAllUsers();
     foreach ($users as $locuser) {
         $userlist[$locuser->id] = $locuser->username;
     }
     $defaults = array();
     foreach ($db->selectObjects('formbuilder_address', 'form_id=' . $object->id . ' and user_id != 0') as $address) {
         $locuser = exponent_users_getUserById($address->user_id);
         $defaults[$locuser->id] = $locuser->username;
     }
     $form->register('users', $i18n['users'], new listbuildercontrol($defaults, $userlist));
     $groups = exponent_users_getAllGroups();
     $grouplist = array();
     $defaults = array();
     foreach ($groups as $group) {
         $grouplist[$group->id] = $group->name;
     }
     if ($grouplist != null) {
         foreach ($db->selectObjects('formbuilder_address', 'form_id=' . $object->id . ' and group_id != 0') as $address) {
             $group = exponent_users_getGroupById($address->group_id);
             $defaults[$group->id] = $group->name;
         }
         $form->register('groups', $i18n['groups'], new listbuildercontrol($defaults, $grouplist));
     }
     $defaults = array();
     foreach ($db->selectObjects('formbuilder_address', 'form_id=' . $object->id . " and email != ''") as $address) {
         $defaults[$address->email] = $address->email;
     }
     $form->register('addresses', $i18n['addresses'], new listbuildercontrol($defaults, null));
     $form->register('subject', $i18n['subject'], new textcontrol($object->subject));
     $form->register(null, '', new htmlcontrol('<br /><br /><b>' . $i18n['database_header'] . '</b><br /><hr size="1" /><br />'));
     $form->register('is_saved', $i18n['is_saved'], new checkboxcontrol($object->is_saved, false));
     $form->register(null, '', new htmlcontrol('<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;' . $i18n['warning_data_loss'] . '<br />'));
     if ($object->is_saved == 1) {
         $form->controls['is_saved']->disabled = true;
         $form->meta('is_saved', '1');
     }
     $form->register(null, '', new htmlcontrol('<br /><br /><br />'));
     $form->register('submit', '', new buttongroupcontrol($i18n['save'], '', $i18n['cancel']));
     return $form;
 }
#
# Exponent is free software; you can redistribute
# it and/or modify it under the terms of the GNU
# General Public License as published by the Free
# Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# GPL: http://www.gnu.org/licenses/gpl.txt
#
##################################################
if (!defined('EXPONENT')) {
    exit('');
}
if (exponent_permissions_check('administrate', $loc)) {
    $groups = explode(';', $_POST['permdata']);
    if (!defined('SYS_USERS')) {
        include_once BASE . 'subsystems/users.php';
    }
    foreach ($groups as $group_str) {
        $perms = explode(':', $group_str);
        $g = exponent_users_getGroupById($perms[0]);
        exponent_permissions_revokeAllGroup($g, $loc);
        for ($i = 1; $i < count($perms); $i++) {
            exponent_permissions_grantGroup($g, $perms[$i], $loc);
        }
    }
    exponent_permissions_triggerRefresh();
    exponent_flow_redirect();
} else {
    echo SITE_403_HTML;
}
# it and/or modify it under the terms of the GNU
# General Public License as published by the Free
# Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# GPL: http://www.gnu.org/licenses/gpl.txt
#
##################################################
// Part of the User Management category
if (!defined('EXPONENT')) {
    exit('');
}
if (exponent_permissions_check('user_management', exponent_core_makeLocation('administrationmodule'))) {
    if (!defined('SYS_USERS')) {
        require_once BASE . 'subsystems/users.php';
    }
    if (!defined('SYS_FORMS')) {
        require_once BASE . 'subsystems/forms.php';
    }
    exponent_forms_initialize();
    $g = exponent_users_getGroupById(intval($_GET['id']));
    $form = exponent_users_groupForm($g);
    $form->meta('module', 'administrationmodule');
    $form->meta('action', 'gmgr_savegroup');
    $template = new template('administrationmodule', '_gmgr_editprofile', $loc);
    $template->assign('form_html', $form->toHTML());
    $template->assign('is_edit', $g != null);
    $template->output();
} else {
    echo SITE_403_HTML;
}
Ejemplo n.º 5
0
         $banned[$b->user_id] = $b->user_id;
     } else {
         $banned[$b->user_id] = $b->owner;
     }
 }
 if (isset($_POST['replyto'])) {
     $recipients[] = $_POST['replyto'];
 }
 $gr = array();
 if (isset($_POST['group_recipients'])) {
     $gr = listbuildercontrol::parseData($_POST, 'group_recipients');
     foreach ($gr as $ginfo) {
         $toks = explode('_', $ginfo);
         $gid = $toks[1];
         if ($toks[0] == 'group') {
             foreach (exponent_users_getUsersInGroup(exponent_users_getGroupById($gid)) as $u) {
                 if (!in_array($u->id, $banned)) {
                     $recipients[] = $u->id;
                 }
             }
         } else {
             $list = $db->selectObject('inbox_contactlist', 'id=' . $gid);
             if ($list->owner == $user->id) {
                 foreach ($db->selectObjects('inbox_contactlist_member', 'list_id=' . $list->id) as $m) {
                     if (!in_array($u->id, $banned)) {
                         $recipients[] = $m->user_id;
                     }
                 }
             }
         }
     }