From e1dce46c9c0f0987c975637a8dee85404dc66240 Mon Sep 17 00:00:00 2001 From: Romain Neutron Date: Mon, 19 Dec 2011 18:24:16 +0100 Subject: [PATCH] Basket route --- lib/Alchemy/Phrasea/Application/Prod.php | 2 +- lib/Alchemy/Phrasea/Controller/Prod/Basket.php | 6 +++++- lib/conf.d/Doctrine/Entities.BasketElement.dcm.yml | 2 +- templates/web/prod/basket_element.twig | 4 ++-- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/lib/Alchemy/Phrasea/Application/Prod.php b/lib/Alchemy/Phrasea/Application/Prod.php index 8052554773..36a23f4417 100644 --- a/lib/Alchemy/Phrasea/Application/Prod.php +++ b/lib/Alchemy/Phrasea/Application/Prod.php @@ -98,7 +98,7 @@ return call_user_func(function() , 'message' => $e->getMessage() ); - $json = $app['Core']['Serializer']->serialize('json', $datas); + $json = $app['Core']['Serializer']->serialize($datas, 'json'); return new Response($json, 200, array('Content-Type' => 'application/json')); } diff --git a/lib/Alchemy/Phrasea/Controller/Prod/Basket.php b/lib/Alchemy/Phrasea/Controller/Prod/Basket.php index fc8467431c..d0620af44d 100644 --- a/lib/Alchemy/Phrasea/Controller/Prod/Basket.php +++ b/lib/Alchemy/Phrasea/Controller/Prod/Basket.php @@ -185,6 +185,8 @@ class Basket implements ControllerProviderInterface $em = $app['Core']->getEntityManager(); + $n = 0; + foreach (explode(';', $request->get('lst')) as $sbas_rec) { $sbas_rec = explode('_', $sbas_rec); @@ -205,10 +207,12 @@ class Basket implements ControllerProviderInterface $basket_element = new \Entities\BasketElement(); $basket_element->setRecord($record); + $basket_element->setBasket($basket); $em->persist($basket_element); $basket->addBasketElement($basket_element); + $n++; } catch (\Exception_NotFound $e) { @@ -221,7 +225,7 @@ class Basket implements ControllerProviderInterface $data = array( 'success' => true - , 'message' => _('Basket has been deleted') + , 'message' => sprintf(_('%d records added'), $n) ); if ($request->getRequestFormat() == 'json') diff --git a/lib/conf.d/Doctrine/Entities.BasketElement.dcm.yml b/lib/conf.d/Doctrine/Entities.BasketElement.dcm.yml index d5d45ceec4..1aa2ca936f 100644 --- a/lib/conf.d/Doctrine/Entities.BasketElement.dcm.yml +++ b/lib/conf.d/Doctrine/Entities.BasketElement.dcm.yml @@ -36,4 +36,4 @@ Entities\BasketElement: targetEntity: ValidationData mappedBy: basket_element lifecycleCallbacks: - postPersist: [ setLastInBasket ] + prePersist: [ setLastInBasket ] diff --git a/templates/web/prod/basket_element.twig b/templates/web/prod/basket_element.twig index a0fd5d81bf..0e2aa05930 100644 --- a/templates/web/prod/basket_element.twig +++ b/templates/web/prod/basket_element.twig @@ -11,7 +11,7 @@
+ class="CHIM diapo CHIM_{{record.get_serialize_key()}}" style="height:{{box_height}}px;"> {% if user.getPrefs('basket_title_display') == '1' %}
{{record.get_title()}} @@ -27,7 +27,7 @@
{{thumbnail.format(record.get_thumbnail,82,82, '', session, true)}}
- X {% if user.getPrefs('basket_caption_display') == '1' %}