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
*/
require_once dirname(__FILE__) . "/../../lib/bootstrap.php";
$Core = bootstrap::getCore();
$em = $Core->getEntityManager();
$appbox = appbox::get_instance();
$session = $appbox->get_session();
phrasea::headers();
@@ -236,12 +239,16 @@ $user = User_Adapter::getInstance($usr_id, $appbox);
{
$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();
$parm['lst'][] = $record->get_sbas_id() . '_' . $record->get_record_id();
/* @var $basket_element \Entities\BasketElement */
$record = $basket_element->getRecord();
$parm['lst'][] = $record->get_serialize_key();
}
$parm['lst'] = implode(';', $parm['lst']);
}

View File

@@ -14,7 +14,7 @@
* @license http://opensource.org/licenses/gpl-3.0 GPLv3
* @link www.phraseanet.com
*/
require_once dirname(__FILE__) . "/../../lib/bootstrap.php";
$Core = require_once dirname(__FILE__) . "/../../lib/bootstrap.php";
$appbox = appbox::get_instance();
$session = $appbox->get_session();
$registry = $appbox->get_registry();
@@ -46,11 +46,20 @@ if ($parm['ACT'] === null)
if ($parm['SSTTID'] != '' && ($parm['lst'] == null || $parm['lst'] == ''))
{
$basket = basket_adapter::getInstance($appbox, $parm['SSTTID'], $usr_id);
foreach ($basket->get_elements() as $basket_element)
$em = $Core->getEntityManager();
$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){
if(p4.edit.what == 'GRP' || p4.edit.what == 'SSEL')
refreshBaskets('current');
return p4.WorkZone.refresh('current');
$("#Edit_copyPreset_dlg").remove();
$('#EDITWINDOW').hide();
hideOverlay(2);

File diff suppressed because it is too large Load Diff

View File

@@ -108,59 +108,6 @@ switch ($action)
$output = 1;
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':
require ($registry->get('GV_RootPath') . 'lib/classes/deprecated/prodUtils.php');
$parm = $request->get_parms('lst');
@@ -178,11 +125,6 @@ switch ($action)
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':
$parm = $request->get_parms('ssel_id', 'value');
$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);
$output = p4string::jsonencode($basket->push_list($parm['lst'], false));
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':
$parm = $request->get_parms('from', 'dest', 'sselcont');

View File

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