Added new API call: "getProjectByIdentifier"

This commit is contained in:
Frederic Guillot 2016-06-26 12:34:20 -04:00
parent b48c0cecbb
commit c110dffefe
No known key found for this signature in database
GPG Key ID: 92D77191BA7FBC99
3 changed files with 12 additions and 3 deletions

View File

@ -4,14 +4,15 @@ Version 1.0.31 (unreleased)
New features:
* Added application and project roles validation for API procedure calls
* Added new API call: "getProjectByIdentifier"
Improvements:
* Added argument owner_id and identifier to project API calls
* Rewrite integration tests to run with Docker containers
* Use the same task form layout everywhere
* Remove some tasks dropdown menus that are now available with task edit form
* Make embedded documentation available in multiple languages
* Removed some tasks dropdown menus that are now available with task edit form
* Make embedded documentation readable in multiple languages (if a translation is available)
Bug fixes:

View File

@ -25,6 +25,13 @@ class ProjectProcedure extends BaseProcedure
return $this->formatProject($project);
}
public function getProjectByIdentifier($identifier)
{
$project = $this->formatProject($this->projectModel->getByIdentifier($identifier));
ProjectAuthorization::getInstance($this->container)->check($this->getClassName(), 'getProjectByIdentifier', $project['id']);
return $this->formatProject($project);
}
public function getAllProjects()
{
return $this->formatProjects($this->projectModel->getAll());

View File

@ -93,7 +93,8 @@ class ProjectProcedureTest extends BaseProcedureTest
$this->assertNotFalse($projectId);
$project = $this->app->getProjectById($projectId);
$project = $this->app->getProjectByIdentifier('MYPROJECTWITHIDENTIFIER');
$this->assertEquals($projectId, $project['id']);
$this->assertEquals('My project with an identifier', $project['name']);
$this->assertEquals('MYPROJECTWITHIDENTIFIER', $project['identifier']);
}