Example #1
0
// detailconsult can be accessed without user_id (-> display current user)
if (($action == 'detailconsult') && (! $params['user_id'])) $params['user_id'] = $obm['uid'];

get_user_action();
$perm->check_permissions($module, $action);

update_last_visit('user', $params['user_id'], $action);

page_close();

$customFields = new OBM_Form_Field('user');

// get Profile list (name and id)
$params['profiles'] = get_all_profiles(false);

$params = get_user_params_mail_server_id($params);
///////////////////////////////////////////////////////////////////////////////
// External calls (main menu not displayed)                                  //
///////////////////////////////////////////////////////////////////////////////
if ($action == 'ext_get_ids') {
  $display['search'] = html_user_search_form($params);
  if ($_SESSION['set_display'] == 'yes') {
    $display['result'] = dis_user_search_list($params);
  } else {
    $display['msg'] .= display_info_msg($l_no_display);
  }

} elseif ($action == 'ext_get_id') {
///////////////////////////////////////////////////////////////////////////////
  $display['search'] = html_user_search_form($params);
  if ($_SESSION['set_display'] == 'yes') {
Example #2
0
  /**
   * Set default values for user data.
   * @param $data An associative array returns by _buildInternalUserData.
   * @param $login A login.
   * @param $domain_id A valid domain identifier.
   * @return Array User data with default value sets, or false.
   */
  function _setDefaultUserData ($data, $login, $domain_id)
  {
    global $obm, $cgp_use;

    if (!is_array($data))
      return false;

    $backup['obm_domain_id'] = $obm['domain_id'];
    $obm['domain_id'] = $domain_id;

    foreach ($this->_sqlMap as $key => $key_obm)
    {
      $add = true;
      $value = null;
      if (!array_key_exists($key_obm, $data) || is_null($data[$key_obm]))
      {
        switch ($key)
        {
          case 'userobm_perms':
            $value = DEFAULT_USEROBM_PROFILE;
            break;
          case 'userobm_status':
            $value = DEFAULT_USEROBM_STATUS;
            break;
          case 'userobm_hidden':
            $value = DEFAULT_USEROBM_HIDDEN;
            break;
          case 'userobm_archive':
            $value = DEFAULT_USEROBM_ARCHIVE;
            break;
          case 'userobm_local':
            $value = DEFAULT_USEROBM_LOCAL;
            break;
          case 'userobm_domain_id':
            $value = $domain_id;
            break;
          case 'userobm_login':
            $value = $login;
            break;
          default:
            $add = false;
            break;
        }
      }
      if ($add && !is_null($value))
        $data[$key_obm] = $value;
    }

    //
    // Post. We can not do this during previous loop, because default
    // settings could not be already setted.
    //

    // If email is set, must have a valid mail server.
    if ( $cgp_use['service']['mail']
      && array_key_exists($this->_sqlMap['userobm_email'], $data))
    {
      $params['mail_server_id'] = 'auto';
      $params = get_user_params_mail_server_id($params);
      $data[$this->_sqlMap['userobm_mail_server_id']] = $params['mail_server_id'];
      $data[$this->_sqlMap['userobm_mail_perms']] = 1;
    }
    else
    {
      $data[$this->_sqlMap['userobm_mail_server_id']] = null;
      $data[$this->_sqlMap['userobm_mail_perms']] = null;
    }

    // Force profile to null (no need here).
    if (array_key_exists($this->_sqlMap['userobm_perms'], $data))
    {
      if (!array_key_exists('profiles', $data))
      {
        $data['profiles'] = Array(
            $data[$this->_sqlMap['userobm_perms']] => Array(),
          );
      }
    }

    // User login should be just its username (no more @domain extension).
    if (array_key_exists($this->_sqlMap['userobm_login'], $data))
    {
      $data[$this->_sqlMap['userobm_login']] = $login;
    }

    $obm['domain_id'] = $backup['obm_domain_id'];
    unset($backup);

    return $data;
  }