Refactor basket_adapter

This commit is contained in:
Romain Neutron
2011-12-26 12:09:26 +01:00
parent 0e6757e2db
commit cbad5d5371
6 changed files with 101 additions and 1149 deletions

View File

@@ -15,6 +15,9 @@
* @link www.phraseanet.com * @link www.phraseanet.com
*/ */
require_once dirname(__FILE__) . "/../../lib/bootstrap.php"; require_once dirname(__FILE__) . "/../../lib/bootstrap.php";
$Core = bootstrap::getCore();
$em = $Core->getEntityManager();
$appbox = appbox::get_instance(); $appbox = appbox::get_instance();
$session = $appbox->get_session(); $session = $appbox->get_session();
phrasea::headers(); phrasea::headers();
@@ -236,12 +239,16 @@ $user = User_Adapter::getInstance($usr_id, $appbox);
{ {
$parm['lst'] = array(); $parm['lst'] = array();
$basket = basket_adapter::getInstance($appbox, $parm['SSTTID'], $usr_id); $repository = $em->getRepository('\Entities\Basket');
/* @var $repository \Repositories\BasketRepository */
foreach ($basket->get_elements() as $basket_element) $Basket = $repository->findUserBasket($Core->getRequest()->get('SSTTID'), $Core->getAuthenticatedUser());
foreach ($Basket->get_elements() as $basket_element)
{ {
$record = $basket_element->get_record(); /* @var $basket_element \Entities\BasketElement */
$parm['lst'][] = $record->get_sbas_id() . '_' . $record->get_record_id(); $record = $basket_element->getRecord();
$parm['lst'][] = $record->get_serialize_key();
} }
$parm['lst'] = implode(';', $parm['lst']); $parm['lst'] = implode(';', $parm['lst']);
} }

View File

@@ -14,7 +14,7 @@
* @license http://opensource.org/licenses/gpl-3.0 GPLv3 * @license http://opensource.org/licenses/gpl-3.0 GPLv3
* @link www.phraseanet.com * @link www.phraseanet.com
*/ */
require_once dirname(__FILE__) . "/../../lib/bootstrap.php"; $Core = require_once dirname(__FILE__) . "/../../lib/bootstrap.php";
$appbox = appbox::get_instance(); $appbox = appbox::get_instance();
$session = $appbox->get_session(); $session = $appbox->get_session();
$registry = $appbox->get_registry(); $registry = $appbox->get_registry();
@@ -46,11 +46,20 @@ if ($parm['ACT'] === null)
if ($parm['SSTTID'] != '' && ($parm['lst'] == null || $parm['lst'] == '')) if ($parm['SSTTID'] != '' && ($parm['lst'] == null || $parm['lst'] == ''))
{ {
$basket = basket_adapter::getInstance($appbox, $parm['SSTTID'], $usr_id); $em = $Core->getEntityManager();
foreach ($basket->get_elements() as $basket_element) $repository = $em->getRepository('\Entities\Basket');
/* @var $repository \Repositories\BasketRepository */
$Basket = $repository->findUserBasket(
$Core->getRequest()->get('SSTTID')
, $Core->getAuthenticatedUser()
);
foreach ($Basket->getElements() as $basket_element)
{ {
$parm['lst'] .= $basket_element->get_record()->get_serialize_key() . ';'; $parm['lst'] .= $basket_element->getRecord()->get_serialize_key() . ';';
} }
} }

View File

@@ -1365,7 +1365,7 @@ function edit_applyMultiDesc(evt)
, ,
success : function(data){ success : function(data){
if(p4.edit.what == 'GRP' || p4.edit.what == 'SSEL') if(p4.edit.what == 'GRP' || p4.edit.what == 'SSEL')
refreshBaskets('current'); return p4.WorkZone.refresh('current');
$("#Edit_copyPreset_dlg").remove(); $("#Edit_copyPreset_dlg").remove();
$('#EDITWINDOW').hide(); $('#EDITWINDOW').hide();
hideOverlay(2); hideOverlay(2);

File diff suppressed because it is too large Load Diff

View File

@@ -108,59 +108,6 @@ switch ($action)
$output = 1; $output = 1;
break; break;
// case 'BASKETS':
// require ($registry->get('GV_RootPath') . 'lib/classes/deprecated/prodUtils.php');
// $parm = $request->get_parms('id', 'sort');
// $baskets = new basketCollection($appbox, $usr_id);
//
// $twig = new supertwig();
// $twig->addFilter(array('get_collection_logo' => 'collection::getLogo'));
//
// $output = $twig->render('prod/baskets.html', array(
// 'basket_collection' => $baskets,
// 'selected_ssel' => $parm['id'],
// 'srt' => $parm['sort']
// )
// );
// break;
// case 'BASKETNAME':
// require ($registry->get('GV_RootPath') . 'lib/classes/deprecated/prodUtils.php');
// $parm = $request->get_parms('ssel_id');
// $basket = basket_adapter::getInstance($appbox, $parm['ssel_id'], $usr_id);
// $output = p4string::jsonencode(array('name' => $basket->get_name(), 'description' => $basket->get_description()));
// break;
case 'BASKETRENAME':
require ($registry->get('GV_RootPath') . 'lib/classes/deprecated/prodUtils.php');
$parm = $request->get_parms('ssel_id', 'name', 'description');
$basket = basket_adapter::getInstance($appbox, $parm['ssel_id'], $usr_id);
$basket->set_name($parm['name']);
$basket->set_description($parm['description']);
// $output = $basket->save();
break;
case 'GETBASKET':
require ($registry->get('GV_RootPath') . 'lib/classes/deprecated/prodUtils.php');
$twig = new supertwig();
$twig->addFilter(array('nl2br' => 'nl2br'));
$parm = $request->get_parms('id', 'ord');
$basket = basket_adapter::getInstance($appbox, $parm['id'], $usr_id);
$basket->set_read();
$order = $parm['ord'];
if (trim($order) == '' || !in_array($order, array('asc', 'desc', 'nat')))
$order = $user->getPrefs('bask_val_order');
else
$user->setPrefs('bask_val_order', $order);
$basket->sort($order);
$output = p4string::jsonencode(array('content' => $twig->render('prod/basket.twig', array('basket' => $basket, 'ordre' => $order))));
break;
case 'DELETE': case 'DELETE':
require ($registry->get('GV_RootPath') . 'lib/classes/deprecated/prodUtils.php'); require ($registry->get('GV_RootPath') . 'lib/classes/deprecated/prodUtils.php');
$parm = $request->get_parms('lst'); $parm = $request->get_parms('lst');
@@ -178,11 +125,6 @@ switch ($action)
break; break;
case 'REORDER_DATAS':
$parm = $request->get_parms('ssel_id');
$basket = basket_adapter::getInstance($appbox, $parm['ssel_id'], $usr_id);
$output = $basket->getOrderDatas();
break;
case 'SAVE_ORDER_DATAS': case 'SAVE_ORDER_DATAS':
$parm = $request->get_parms('ssel_id', 'value'); $parm = $request->get_parms('ssel_id', 'value');
$basket = basket_adapter::getInstance($appbox, $parm['ssel_id'], $usr_id); $basket = basket_adapter::getInstance($appbox, $parm['ssel_id'], $usr_id);
@@ -281,17 +223,6 @@ switch ($action)
$basket = basket_adapter::getInstance($appbox, $parm['dest'], $usr_id); $basket = basket_adapter::getInstance($appbox, $parm['dest'], $usr_id);
$output = p4string::jsonencode($basket->push_list($parm['lst'], false)); $output = p4string::jsonencode($basket->push_list($parm['lst'], false));
break; break;
case 'DELFROMBASK':
$parm = $request->get_parms('ssel_id', 'sselcont_id');
$basket = basket_adapter::getInstance($appbox, $parm['ssel_id'], $usr_id);
$output = p4string::jsonencode($basket->remove_from_ssel($parm['sselcont_id']));
break;
case 'DELBASK':
$parm = $request->get_parms('ssel');
$basket = basket_adapter::getInstance($appbox, $parm['ssel'], $usr_id);
$output = $basket->delete();
unset($basket);
break;
case 'MOVCHU2CHU': case 'MOVCHU2CHU':
$parm = $request->get_parms('from', 'dest', 'sselcont'); $parm = $request->get_parms('from', 'dest', 'sselcont');

View File

@@ -687,7 +687,7 @@ if ($act == "SEND")
} }
?> ?>
<script type="text/javascript"> <script type="text/javascript">
parent.refreshBaskets('current'); parent.return p4.WorkZone.refresh('current');
</script> </script>
</body> </body>
<?php <?php