mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-13 21:13:26 +00:00
Add basket converter
This commit is contained in:
@@ -9,6 +9,7 @@
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
use Alchemy\Phrasea\Model\Entities\Basket;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Silex\Application;
|
||||
|
||||
@@ -203,7 +204,7 @@ interface API_V1_Interface
|
||||
* BASKET_ID : required INT
|
||||
*
|
||||
*/
|
||||
public function delete_basket(Request $request, $basket_id);
|
||||
public function delete_basket(Request $request, Basket $basket);
|
||||
|
||||
/**
|
||||
* Route : /baskets/BASKET_ID/content/FORMAT/
|
||||
@@ -214,7 +215,7 @@ interface API_V1_Interface
|
||||
* BASKET_ID : required INT
|
||||
*
|
||||
*/
|
||||
public function get_basket(Request $request, $basket_id);
|
||||
public function get_basket(Request $request, Basket $basket);
|
||||
|
||||
/**
|
||||
* Route : /baskets/BASKET_ID/title/FORMAT/
|
||||
@@ -225,7 +226,7 @@ interface API_V1_Interface
|
||||
* BASKET_ID : required INT
|
||||
*
|
||||
*/
|
||||
public function set_basket_title(Request $request, $basket_id);
|
||||
public function set_basket_title(Request $request, Basket $basket);
|
||||
|
||||
/**
|
||||
* Route : /baskets/BASKET_ID/description/FORMAT/
|
||||
@@ -236,7 +237,7 @@ interface API_V1_Interface
|
||||
* BASKET_ID : required INT
|
||||
*
|
||||
*/
|
||||
public function set_basket_description(Request $request, $basket_id);
|
||||
public function set_basket_description(Request $request, Basket $basket);
|
||||
|
||||
/**
|
||||
* Route : /publications/list/FORMAT/
|
||||
|
@@ -1297,17 +1297,12 @@ class API_V1_adapter extends API_V1_Abstract
|
||||
* Delete a basket
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $basket_id
|
||||
* @param Basket $basket
|
||||
* @return array
|
||||
*/
|
||||
public function delete_basket(Request $request, $basket_id)
|
||||
public function delete_basket(Request $request, Basket $basket)
|
||||
{
|
||||
$repository = $this->app['EM']->getRepository('Alchemy\Phrasea\Model\Entities\Basket');
|
||||
|
||||
/* @var $repository Alchemy\Phrasea\Model\Repositories\BasketRepository */
|
||||
|
||||
$Basket = $repository->findUserBasket($this->app, $basket_id, $this->app['authentication']->getUser(), true);
|
||||
$this->app['EM']->remove($Basket);
|
||||
$this->app['EM']->remove($basket);
|
||||
$this->app['EM']->flush();
|
||||
|
||||
return $this->search_baskets($request);
|
||||
@@ -1317,23 +1312,17 @@ class API_V1_adapter extends API_V1_Abstract
|
||||
* Retrieve a basket
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $basket_id
|
||||
* @param Basket $basket
|
||||
* @return API_V1_result
|
||||
*/
|
||||
public function get_basket(Request $request, $basket_id)
|
||||
public function get_basket(Request $request, Basket $basket)
|
||||
{
|
||||
$result = new API_V1_result($this->app, $request, $this);
|
||||
|
||||
$repository = $this->app['EM']->getRepository('Alchemy\Phrasea\Model\Entities\Basket');
|
||||
|
||||
/* @var $repository Alchemy\Phrasea\Model\Repositories\BasketRepository */
|
||||
|
||||
$Basket = $repository->findUserBasket($this->app, $basket_id, $this->app['authentication']->getUser(), false);
|
||||
|
||||
$result->set_datas(
|
||||
array(
|
||||
"basket" => $this->list_basket($Basket),
|
||||
"basket_elements" => $this->list_basket_content($Basket)
|
||||
"basket" => $this->list_basket($basket),
|
||||
"basket_elements" => $this->list_basket_content($basket)
|
||||
)
|
||||
);
|
||||
|
||||
@@ -1414,26 +1403,19 @@ class API_V1_adapter extends API_V1_Abstract
|
||||
* Change the name of one basket
|
||||
*
|
||||
* @param Request $request
|
||||
* @param int $basket_id
|
||||
* @param Basket $basket
|
||||
* @return API_V1_result
|
||||
*/
|
||||
public function set_basket_title(Request $request, $basket_id)
|
||||
public function set_basket_title(Request $request, Basket $basket)
|
||||
{
|
||||
$result = new API_V1_result($this->app, $request, $this);
|
||||
|
||||
$name = $request->get('name');
|
||||
$basket->setName($request->get('name'));
|
||||
|
||||
$repository = $this->app['EM']->getRepository('Alchemy\Phrasea\Model\Entities\Basket');
|
||||
|
||||
/* @var $repository Alchemy\Phrasea\Model\Repositories\BasketRepository */
|
||||
|
||||
$Basket = $repository->findUserBasket($this->app, $basket_id, $this->app['authentication']->getUser(), true);
|
||||
$Basket->setName($name);
|
||||
|
||||
$this->app['EM']->merge($Basket);
|
||||
$this->app['EM']->persist($basket);
|
||||
$this->app['EM']->flush();
|
||||
|
||||
$result->set_datas(array("basket" => $this->list_basket($Basket)));
|
||||
$result->set_datas(array("basket" => $this->list_basket($basket)));
|
||||
|
||||
return $result;
|
||||
}
|
||||
@@ -1442,26 +1424,19 @@ class API_V1_adapter extends API_V1_Abstract
|
||||
* Change the description of one basket
|
||||
*
|
||||
* @param Request $request
|
||||
* @param type $basket_id
|
||||
* @param Basket $basket
|
||||
* @return API_V1_result
|
||||
*/
|
||||
public function set_basket_description(Request $request, $basket_id)
|
||||
public function set_basket_description(Request $request, Basket $basket)
|
||||
{
|
||||
$result = new API_V1_result($this->app, $request, $this);
|
||||
|
||||
$desc = $request->get('description');
|
||||
$basket->setDescription($request->get('description'));
|
||||
|
||||
$repository = $this->app['EM']->getRepository('Alchemy\Phrasea\Model\Entities\Basket');
|
||||
|
||||
/* @var $repository Alchemy\Phrasea\Model\Repositories\BasketRepository */
|
||||
|
||||
$Basket = $repository->findUserBasket($this->app, $basket_id, $this->app['authentication']->getUser(), true);
|
||||
$Basket->setDescription($desc);
|
||||
|
||||
$this->app['EM']->merge($Basket);
|
||||
$this->app['EM']->persist($basket);
|
||||
$this->app['EM']->flush();
|
||||
|
||||
$result->set_datas(array("basket" => $this->list_basket($Basket)));
|
||||
$result->set_datas(array("basket" => $this->list_basket($basket)));
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
Reference in New Issue
Block a user