Author: Paweł Jędrzejewski (pawel@sylius.org)
Author: Gonzalo Vilaseca (gvilaseca@reiss.co.uk)
Author: Anna Walasek (anna.walasek@lakion.com)
Inheritance: extends Sylius\Component\Product\Model\Product, implements Sylius\Component\Core\Model\ProductInterface
 /**
  * @param SyliusProduct $product
  * @param array         $options
  *
  * @return Product
  */
 public static function createFromProduct(SyliusProduct $product, array $options = null)
 {
     $options = array_merge(['list' => null, 'position' => null, 'quantity' => null, 'variant' => null], (array) $options);
     $price = $product->getPrice() / 100;
     $instance = new self();
     $instance->setId($product->getId())->setName($product->getName())->setPrice($price)->setQuantity($options['quantity'])->setList($options['list'])->setPosition($options['position'])->setVariant($options['variant']);
     return $instance;
 }
Exemplo n.º 2
0
 function it_should_recognize_subject_as_not_eligible_if_product_taxonomy_is_matched_and_exclude_is_set(OrderInterface $subject, OrderItemInterface $item, Taxon $taxon, Product $product, ArrayCollection $collection)
 {
     $configuration = ['taxons' => $collection, 'exclude' => true];
     $collection->contains(2)->willReturn(true);
     $taxon->getId()->willReturn(2);
     $product->getTaxons()->willReturn([$taxon]);
     $item->getProduct()->willReturn($product);
     $subject->getItems()->willReturn([$item]);
     $this->isEligible($subject, $configuration)->shouldReturn(false);
 }
Exemplo n.º 3
0
 /**
  * {@inheritdoc}
  */
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     parent::buildForm($builder, $options);
     $builder->add('translations', 'a2lix_translationsForms', array('form_type' => 'sylius_product_translation', 'label' => 'sylius.form.product.translations'))->add('taxCategory', 'sylius_tax_category_choice', array('required' => false, 'empty_value' => '---', 'label' => 'sylius.form.product.tax_category'))->add('shippingCategory', 'sylius_shipping_category_choice', array('required' => false, 'empty_value' => '---', 'label' => 'sylius.form.product.shipping_category'))->add('taxons', 'sylius_taxon_selection')->add('variantSelectionMethod', 'choice', array('label' => 'sylius.form.product.variant_selection_method', 'choices' => Product::getVariantSelectionMethodLabels()))->add('channels', 'sylius_channel_choice', array('multiple' => true, 'expanded' => true, 'label' => 'sylius.form.product.channels'))->add('restrictedZone', 'sylius_zone_choice', array('empty_value' => '---', 'label' => 'sylius.form.product.restricted_zone'));
 }
Exemplo n.º 4
0
 /**
  * {@inheritdoc}
  */
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     parent::buildForm($builder, $options);
     $builder->add('channels', 'sylius_channel_choice', ['multiple' => true, 'expanded' => true, 'label' => 'sylius.form.product.channels'])->add('mainTaxon', 'sylius_taxon_to_hidden_identifier')->add('taxons', 'sylius_taxon_choice', ['label' => 'sylius.form.product.taxons', 'multiple' => true])->add('variantSelectionMethod', 'choice', ['label' => 'sylius.form.product.variant_selection_method', 'choices' => Product::getVariantSelectionMethodLabels()])->add('images', 'collection', ['type' => 'sylius_product_image', 'allow_add' => true, 'allow_delete' => true, 'by_reference' => false, 'label' => 'sylius.form.product.images']);
 }
Exemplo n.º 5
0
 /**
  * {@inheritdoc}
  */
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     $builder->add('channels', ChannelChoiceType::class, ['multiple' => true, 'expanded' => true, 'label' => 'sylius.form.product.channels'])->add('mainTaxon', TaxonChoiceType::class)->add('productTaxons', ProductTaxonChoiceType::class, ['label' => 'sylius.form.product.taxons', 'multiple' => true])->add('variantSelectionMethod', ChoiceType::class, ['choices' => array_flip(Product::getVariantSelectionMethodLabels()), 'label' => 'sylius.form.product.variant_selection_method'])->add('images', CollectionType::class, ['entry_type' => ProductImageType::class, 'allow_add' => true, 'allow_delete' => true, 'by_reference' => false, 'label' => 'sylius.form.product.images']);
 }
Exemplo n.º 6
0
 /**
  * {@inheritdoc}
  */
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     parent::buildForm($builder, $options);
     $builder->add('translations', 'sylius_translations', ['type' => 'sylius_product_translation', 'label' => 'sylius.form.product.translations'])->add('shippingCategory', 'sylius_shipping_category_choice', ['required' => false, 'empty_value' => '---', 'label' => 'sylius.form.product.shipping_category'])->add('taxons', 'sylius_taxon_choice', ['label' => 'sylius.form.product.taxons', 'multiple' => true, 'attr' => ['style' => 'height: 30%']])->add('variantSelectionMethod', 'choice', ['label' => 'sylius.form.product.variant_selection_method', 'choices' => Product::getVariantSelectionMethodLabels()])->add('channels', 'sylius_channel_choice', ['multiple' => true, 'expanded' => true, 'label' => 'sylius.form.product.channels'])->add('mainTaxon', 'sylius_taxon_choice', ['label' => 'sylius.form.product.main_taxon']);
 }
Exemplo n.º 7
0
 /**
  * {@inheritdoc}
  */
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     parent::buildForm($builder, $options);
     $builder->add('shortDescription', 'textarea', array('required' => false, 'label' => 'sylius.form.product.short_description'))->add('taxCategory', 'sylius_tax_category_choice', array('required' => false, 'empty_value' => '---', 'label' => 'sylius.form.product.tax_category'))->add('shippingCategory', 'sylius_shipping_category_choice', array('required' => false, 'empty_value' => '---', 'label' => 'sylius.form.product.shipping_category'))->add('taxons', 'sylius_taxon_selection')->add('variantSelectionMethod', 'choice', array('label' => 'sylius.form.product.variant_selection_method', 'choices' => Product::getVariantSelectionMethodLabels()))->add('restrictedZone', 'sylius_zone_choice', array('empty_value' => '---', 'label' => 'sylius.form.product.restricted_zone'));
 }