<?php
/***************************************************************************
- * Copyright (C) 2003-2008 Polytechnique.org *
+ * Copyright (C) 2003-2009 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
$account = new GoogleAppsAccount($user);
if ($account->activate_mail_redirection) {
require_once('emails.inc.php');
- $storage = new EmailStorage($user->id(), 'googleapps');
+ $storage = new EmailStorage($user, 'googleapps');
$storage->activate();
}
if ($account->active()) {
// Re-adds the email redirection (if the user did request it).
if ($account->activate_mail_redirection) {
- $storage = new EmailStorage($user->id, 'googleapps');
+ $storage = new EmailStorage($user, 'googleapps');
$storage->activate();
}
// TODO(vincent.zanotti): add the url of gappsd, when available.
class GoogleAppsAccount
{
- // User identification: user id, and forlife.
+ // User identification: user id, and hruid.
private $user;
public $g_account_name;
public $r_last_webmail;
public $reporting_date;
+ // Nicknames (aliases) registered for that user, lazily loaded.
+ public $nicknames;
+
// Pending requests in the gappsd job queue (cf. top note).
public $pending_create;
public $pending_delete;
return $this->g_status == 'disabled';
}
+ // Loads and returns the list of nicknames for the user.
+ public function nicknames()
+ {
+ if ($this->nicknames == null) {
+ $res = XDB::query(
+ "SELECT g_nickname
+ FROM gapps_nicknames
+ WHERE g_account_name = {?}
+ ORDER BY g_nickname",
+ $this->g_account_name);
+ $this->nicknames = $res->fetchColumn();
+ }
+ return $this->nicknames;
+ }
+
// Changes the GoogleApps password.
public function set_password($password) {
if (!$this->pending_update_suspension && !$this->pending_validation_unsuspend) {
require_once('validations.inc.php');
- $unsuspend = new GoogleAppsUnsuspendReq($this->user->id());
+ $unsuspend = new GoogleAppsUnsuspendReq($this->user);
$unsuspend->submit();
$this->pending_validation_unsuspend = true;
}