コード例 #1
0
ファイル: Variable.php プロジェクト: jigoshop/Jigoshop2
 public function addToCart($value, $product)
 {
     if ($product instanceof Product\Variable) {
         $item = new Item();
         $item->setProduct($product);
         $variation = $this->factory->getVariation($product, $_POST['variation_id']);
         foreach ($variation->getAttributes() as $attribute) {
             /** @var $attribute \Jigoshop\Entity\Product\Variable\Attribute */
             if ($attribute->getValue() === '') {
                 $meta = new Item\Meta();
                 $metaValue = isset($_POST['attributes']) ? $_POST['attributes'][$attribute->getAttribute()->getId()] : 'any';
                 $meta->setKey($attribute->getAttribute()->getSlug());
                 $meta->setValue($metaValue);
                 $item->addMeta($meta);
                 $attribute->setValue($metaValue);
             }
         }
         $item->setName($variation->getTitle());
         $item->setPrice($variation->getProduct()->getPrice());
         $item->setQuantity($_POST['quantity']);
         $item->setTaxClasses($variation->getProduct()->getTaxClasses());
         $meta = new Item\Meta();
         $meta->setKey('variation_id');
         $meta->setValue($variation->getId());
         $item->addMeta($meta);
         return $item;
     }
     return $value;
 }
コード例 #2
0
ファイル: Simple.php プロジェクト: jigoshop/Jigoshop2
 public function addToCart($value, $product)
 {
     if ($product instanceof Entity) {
         $item = new Item();
         $item->setName($product->getName());
         $item->setPrice($product->getPrice());
         $item->setQuantity(1);
         $item->setProduct($product);
         return $item;
     }
     return $value;
 }
コード例 #3
0
ファイル: Downloadable.php プロジェクト: jigoshop/Jigoshop2
 /**
  * @param $value
  * @param $product
  *
  * @return null
  */
 public function addToCart($value, $product)
 {
     if ($product instanceof Entity) {
         $item = new Item();
         $item->setName($product->getName());
         $item->setPrice($product->getPrice());
         $item->setQuantity(1);
         $item->setProduct($product);
         $meta = new Item\Meta('file', $product->getUrl());
         $item->addMeta($meta);
         $meta = new Item\Meta('downloads', $product->getLimit());
         $item->addMeta($meta);
         return $item;
     }
     return $value;
 }