本文整理汇总了PHP中Pim\Bundle\CatalogBundle\Manager\ChannelManager::getFullChannels方法的典型用法代码示例。如果您正苦于以下问题:PHP ChannelManager::getFullChannels方法的具体用法?PHP ChannelManager::getFullChannels怎么用?PHP ChannelManager::getFullChannels使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pim\Bundle\CatalogBundle\Manager\ChannelManager
的用法示例。
在下文中一共展示了ChannelManager::getFullChannels方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: completenessAction
/**
* Displays completeness for a product
*
* @param int $id
*
* @return Response
*/
public function completenessAction($id)
{
$product = $this->productManager->getProductRepository()->getFullProduct($id);
$channels = $this->channelManager->getFullChannels();
$locales = $this->userContext->getUserLocales();
$completenesses = $this->completenessManager->getProductCompleteness($product, $channels, $locales, $this->userContext->getCurrentLocale()->getCode());
return $this->templating->renderResponse('PimEnrichBundle:Completeness:_completeness.html.twig', array('product' => $product, 'channels' => $channels, 'locales' => $locales, 'completenesses' => $completenesses));
}
示例2: let
function let(DocumentManager $manager, ChannelInterface $ecommerce, ChannelInterface $mobile, LocaleInterface $enUs, LocaleInterface $frFr, CategoryInterface $category, ChannelManager $channelManager, CategoryRepositoryInterface $categoryRepository, ProductRepository $productRepository, QueryBuilder $ormQb, Builder $odmQb, Query $odmQuery, Cursor $cursor)
{
$enUs->getCode()->willReturn('en_US');
$frFr->getCode()->willReturn('fr_FR');
$ecommerce->getCode()->willReturn('ecommerce');
$ecommerce->getLabel()->willReturn('ECommerce');
$ecommerce->getLocales()->willReturn(array($enUs, $frFr));
$ecommerce->getCategory()->willReturn($category);
$mobile->getCode()->willReturn('mobile');
$mobile->getLabel()->willReturn('Mobile');
$mobile->getLocales()->willReturn(array($enUs));
$mobile->getCategory()->willReturn($category);
$odmQuery->execute()->willReturn($cursor);
$productRepository->createQueryBuilder()->willReturn($odmQb);
$odmQb->hydrate(Argument::any())->willReturn($odmQb);
$odmQb->field(Argument::any())->willReturn($odmQb);
$odmQb->in(Argument::any())->willReturn($odmQb);
$odmQb->equals(Argument::any())->willReturn($odmQb);
$odmQb->select('_id')->willReturn($odmQb);
$odmQb->getQuery()->willReturn($odmQuery);
$categoryRepository->getAllChildrenQueryBuilder($category, true)->willReturn($ormQb);
$categoryRepository->getCategoryIds($category, $ormQb)->willReturn(array(1, 2, 3));
$channelManager->getFullChannels()->willReturn(array($ecommerce, $mobile));
$manager->getRepository('pim_product_class')->willReturn($productRepository);
$this->beConstructedWith($manager, $channelManager, $categoryRepository, 'pim_product_class');
}
示例3: getCompleteProductsCountPerChannels
/**
* {@inheritdoc}
*/
public function getCompleteProductsCountPerChannels()
{
$channels = $this->channelManager->getFullChannels();
$productRepo = $this->documentManager->getRepository($this->productClass);
$productsCount = array();
foreach ($channels as $channel) {
$category = $channel->getCategory();
$categoryQb = $this->categoryRepository->getAllChildrenQueryBuilder($category, true);
$categoryIds = $this->categoryRepository->getCategoryIds($category, $categoryQb);
foreach ($channel->getLocales() as $locale) {
$data = array();
$compSuffix = $channel->getCode() . '-' . $locale->getCode();
$qb = $productRepo->createQueryBuilder()->hydrate(false)->field('categoryIds')->in($categoryIds)->field('enabled')->equals(true)->field('normalizedData.completenesses.' . $compSuffix)->equals(100)->select('_id');
$localeCount = $qb->getQuery()->execute()->count();
$data['locale'] = $locale->getCode();
$data['label'] = $channel->getLabel();
$data['total'] = $localeCount;
$productsCount[] = $data;
}
}
return $productsCount;
}
示例4: getChannelLocaleCombinations
/**
* Generate a list of potential completeness value from existing channel
* or from the provided channel
*
* @param Channel $channel
*
* @return array
*/
protected function getChannelLocaleCombinations(Channel $channel = null)
{
$channels = array();
$combinations = array();
if (null !== $channel) {
$channels = [$channel];
} else {
$channels = $this->channelManager->getFullChannels();
}
foreach ($channels as $channel) {
$locales = $channel->getLocales();
foreach ($locales as $locale) {
$combinations[] = $channel->getCode() . '-' . $locale->getCode();
}
}
return $combinations;
}