/**
  * Remove from a repository the specified mail address if given
  * else remove all notified mails
  *
  * @param GitRepository  $repository
  * @param String  $mail
  *
  *  @return Boolean
  */
 function removeMailByRepository($repository, $mail)
 {
     if ($this->dao->removeNotification($repository->getId(), $mail)) {
         $repository->loadNotifiedMails();
         return $repository->getBackend()->changeRepositoryMailingList($repository);
     } else {
         $GLOBALS['Response']->addFeedback('error', $GLOBALS['Language']->getText('plugin_git', 'dao_error_remove_notification'));
         return false;
     }
 }
示例#2
0
 /**
  * @deprecated Should use GitRepository::getInstanceFrom row instead.
  * @param GitRepository $repository
  * @param type $result
  */
 public function hydrateRepositoryObject(GitRepository $repository, $result)
 {
     $repository->setName($result[self::REPOSITORY_NAME]);
     $repository->setPath($result[self::REPOSITORY_PATH]);
     $repository->setId($result[self::REPOSITORY_ID]);
     $repository->setDescription($result[self::REPOSITORY_DESCRIPTION]);
     $repository->setParentId($result[self::REPOSITORY_PARENT]);
     $project = ProjectManager::instance()->getProject($result[self::FK_PROJECT_ID]);
     $repository->setProject($project);
     $repository->setCreationDate($result[self::REPOSITORY_CREATION_DATE]);
     $user = UserManager::instance()->getUserById($result[self::REPOSITORY_CREATION_USER_ID]);
     $repository->setCreator($user);
     $repository->setIsInitialized($result[self::REPOSITORY_IS_INITIALIZED]);
     $repository->setDeletionDate($result[self::REPOSITORY_DELETION_DATE]);
     $repository->setAccess($result[self::REPOSITORY_ACCESS]);
     $repository->setMailPrefix($result[self::REPOSITORY_MAIL_PREFIX]);
     $repository->setBackendType($result[self::REPOSITORY_BACKEND_TYPE]);
     $repository->setNamespace($result[self::REPOSITORY_NAMESPACE]);
     $repository->setBackupPath($result[self::REPOSITORY_BACKUP_PATH]);
     $repository->setScope($result[self::REPOSITORY_SCOPE]);
     $repository->setRemoteServerId($result[self::REMOTE_SERVER_ID]);
     $repository->setRemoteServerDisconnectDate($result[self::REMOTE_SERVER_DISCONNECT_DATE]);
     $repository->setRemoteProjectDeletionDate($result[self::REMOTE_SERVER_DELETE_DATE]);
     $repository->setRemoteServerMigrationStatus($result[self::REMOTE_SERVER_MIGRATION_STATUS]);
     $repository->loadNotifiedMails();
     /* Here just for reviewer test, will be replaced by real DB data in a future changeset*/
     $result[self::ENABLE_ONLINE_EDIT] = false;
     if ($result[self::ENABLE_ONLINE_EDIT] && GitConfig::instance()->isOnlineEditEnabled()) {
         $repository->enableOnlineEdit();
     }
 }
示例#3
0
 public function hydrateRepositoryObject(GitRepository $repository, $result)
 {
     $repository->setName($result[self::REPOSITORY_NAME]);
     $repository->setPath($result[self::REPOSITORY_PATH]);
     $repository->setId($result[self::REPOSITORY_ID]);
     $repository->setDescription($result[self::REPOSITORY_DESCRIPTION]);
     $repository->setParentId($result[self::REPOSITORY_PARENT]);
     $project = ProjectManager::instance()->getProject($result[self::FK_PROJECT_ID]);
     $repository->setProject($project);
     $repository->setCreationDate($result[self::REPOSITORY_CREATION_DATE]);
     $user = UserManager::instance()->getUserById($result[self::REPOSITORY_CREATION_USER_ID]);
     $repository->setCreator($user);
     $repository->setIsInitialized($result[self::REPOSITORY_IS_INITIALIZED]);
     $repository->setDeletionDate($result[self::REPOSITORY_DELETION_DATE]);
     $repository->setAccess($result[self::REPOSITORY_ACCESS]);
     $repository->setMailPrefix($result[self::REPOSITORY_MAIL_PREFIX]);
     $repository->setBackendType($result[self::REPOSITORY_BACKEND_TYPE]);
     $repository->setNamespace($result[self::REPOSITORY_NAMESPACE]);
     $repository->setScope($result[self::REPOSITORY_SCOPE]);
     $repository->loadNotifiedMails();
 }