function fn_change_usergroup_status($status, $user_id, $usergroup_id, $force_notification = array()) { $data = array('user_id' => $user_id, 'usergroup_id' => $usergroup_id, 'status' => $status); $result = db_query("REPLACE INTO ?:usergroup_links SET ?u", $data); if (!empty($force_notification['C'])) { fn_send_usergroup_status_notification($user_id, (array) $usergroup_id, $status); } return $result; }
// if ($mode == 'm_delete') { if (!empty($_REQUEST['usergroup_ids'])) { fn_delete_usergroups($_REQUEST['usergroup_ids']); } $suffix .= '.manage'; } if ($mode == 'bulk_update_status') { if (!empty($_REQUEST['link_ids'])) { $new_status = $action == 'approve' ? 'A' : 'D'; db_query("UPDATE ?:usergroup_links SET status = ?s WHERE link_id IN(?n)", $new_status, $_REQUEST['link_ids']); $force_notification = fn_get_notification_rules($_REQUEST); if (!empty($force_notification['C'])) { $usergroup_links = db_get_hash_multi_array("SELECT * FROM ?:usergroup_links WHERE link_id IN(?n)", array('user_id', 'usergroup_id'), $_REQUEST['link_ids']); foreach ($usergroup_links as $u_id => $val) { fn_send_usergroup_status_notification($u_id, array_keys($val), $new_status); } } } $suffix = ".requests"; } if ($mode == 'delete') { if (!empty($_REQUEST['usergroup_id'])) { fn_delete_usergroups((array) $_REQUEST['usergroup_id']); } return array(CONTROLLER_STATUS_REDIRECT, 'usergroups.manage'); } if ($mode == 'update_status') { $user_data = fn_get_user_info($_REQUEST['user_id']); if (empty($user_data) || Registry::get('runtime.company_id') && $user_data['is_root'] == 'Y' || defined('RESTRICTED_ADMIN') && ($auth['user_id'] == $_REQUEST['user_id'] || fn_is_restricted_admin(array('user_id' => $_REQUEST['user_id'])))) { fn_set_notification('E', __('error'), __('access_denied'));