get('addedToCart'); if ($addedToCart) { $session->remove('addedToCart'); $ids = array_map(f_field('id_cart'), $addedToCart['items']); $result = CartItem::createFromSpec(\Query\Operator::inIntArray($ids, 'id')); foreach ($result as &$item) { $item->pieces_added = $addedToCart['items'][$item['id']]['quantity']; } if (!$multiple) { $result = reset($result); } } break; case 'user_messages': static $flash_messages = null; if (is_null($flash_messages)) { $flash_messages = []; foreach ($session->getFlashBag()->all() as $type => $msg) { foreach ($msg as $message) { $flash_messages[] = array_merge(['severity' => $type], $message); } } } $result = $flash_messages; break; case 'added_to_favorites': $type = 'addedToFavorites'; $remove = true; // no break default: $result = $session->get($type); if ($remove && $result) { $session->remove($type); } } if (!empty($params['assign'])) { $smarty->assign($params['assign'], $result); } else { return $result; } }