public function testMaxDiscount() { $curtainDesign = new CurtainDesign(); $curtainColour1 = new CurtainColour(); $curtainColour1->setName("two"); $curtainColour1->setinStock(1); $curtainColour1->setOnOffer(1); $curtainColour1->setDisplay(1); $curtainColour1->setDiscountPercentage(10); $curtainDesign->addCurtainColour($curtainColour1); $curtainColour3 = new CurtainColour(); $curtainColour3->setName("three"); $curtainColour3->setinStock(1); $curtainColour3->setOnOffer(0); $curtainColour3->setDisplay(1); $curtainColour3->setDiscountPercentage(60); $curtainDesign->addCurtainColour($curtainColour3); $curtainColour2 = new CurtainColour(); $curtainColour2->setName("one"); $curtainColour2->setinStock(0); $curtainColour2->setOnOffer(1); $curtainColour2->setDisplay(1); $curtainColour2->setDiscountPercentage(70); $curtainDesign->addCurtainColour($curtainColour2); $curtainColour4 = new CurtainColour(); $curtainColour4->setName("four"); $curtainColour4->setinStock(1); $curtainColour4->setOnOffer(1); $curtainColour4->setDisplay(0); $curtainColour4->setDiscountPercentage(20); $curtainDesign->addCurtainColour($curtainColour4); $this->assertEquals($curtainDesign->getMaxDiscount(), 10); }
protected function setUp() { static::$kernel = static::createKernel(); static::$kernel->boot(); $this->em = static::$kernel->getContainer()->get('doctrine')->getEntityManager(); $this->repository = static::$kernel->getContainer()->get('doctrine')->getRepository('ElmetSiteBundle:CurtainColour'); $cpbRepository = static::$kernel->getContainer()->get('doctrine')->getRepository('ElmetSiteBundle:CurtainPriceBand'); $curtainPriceBand = $cpbRepository->findOneById(2); $this->curtainDesign = new CurtainDesign(); $this->curtainDesign->setCurtainPriceBand($curtainPriceBand); $this->curtainDesign->setUrlName("loretta"); $this->curtainDesign->setCushionFinish("Corded"); $this->curtainDesign->setEyeletsAvailable(1); $this->curtainDesign->setFabricWidth(140); $this->curtainDesign->setFinish("Fringed"); $this->curtainDesign->setLined(1); $this->curtainDesign->setMaterials("Polyester/Cotton"); $this->curtainDesign->setName("Lorretta Ready Made Curtains"); $this->curtainDesign->setNew(1); $this->curtainDesign->setPatternRepeatLength(8.0); $this->curtainDesign->setTapeSize("3\""); $this->curtainDesign->setPosition("0"); $this->curtainDesign->setDisplay("1"); $this->curtainDesign->setSpecialPurchase("0"); $curtainColour = new CurtainColour(); $curtainColour->setName("Cream"); $curtainColour->setFullFilepath("loretta/lorretta_cream.jpg"); $curtainColour->setThumbnailFilepath("loretta/lorretta_cream_detail.jpg"); $curtainColour->setSwatchFilepath("loretta/lorretta_cream_t.jpg"); $curtainColour->setBuynow(1); $curtainColour->setInStock(1); $curtainColour->setOnOffer(1); $curtainColour->setDisplay(1); $curtainColour->setPosition(1); $curtainColour->setDiscountPercentage(20); $curtainColour->setAvailableStock(20.0); $curtainColour->setCurtainDesign($this->curtainDesign); $this->curtainDesign->addCurtainColour($curtainColour); $secondCurtainColour = new CurtainColour(); $secondCurtainColour->setName("Blue"); $secondCurtainColour->setFullFilepath("loretta/lorretta_blue.jpg"); $secondCurtainColour->setThumbnailFilepath("loretta/lorretta_bl, aque_detail.jpg"); $secondCurtainColour->setSwatchFilepath("loretta/lorretta_blue_t.jpg"); $secondCurtainColour->setBuynow(1); $secondCurtainColour->setInStock(1); $secondCurtainColour->setOnOffer(1); $secondCurtainColour->setDisplay(0); $secondCurtainColour->setPosition(0); $secondCurtainColour->setDiscountPercentage(20); $secondCurtainColour->setAvailableStock(30.0); $secondCurtainColour->setCurtainDesign($this->curtainDesign); $this->curtainDesign->addCurtainColour($secondCurtainColour); $this->secondCurtainDesign = new CurtainDesign(); $this->secondCurtainDesign->setCurtainPriceBand($curtainPriceBand); $this->secondCurtainDesign->setUrlName("jeanetta"); $this->secondCurtainDesign->setCushionFinish("Corded"); $this->secondCurtainDesign->setEyeletsAvailable(1); $this->secondCurtainDesign->setFabricWidth(140); $this->secondCurtainDesign->setFinish("Fringed"); $this->secondCurtainDesign->setLined(1); $this->secondCurtainDesign->setMaterials("Polyester/Cotton"); $this->secondCurtainDesign->setName("Jeanetta Ready Made Curtains"); $this->secondCurtainDesign->setNew(1); $this->secondCurtainDesign->setPatternRepeatLength(8.0); $this->secondCurtainDesign->setTapeSize("3\""); $this->secondCurtainDesign->setPosition("0"); $this->secondCurtainDesign->setDisplay("1"); $this->secondCurtainDesign->setSpecialPurchase("0"); $this->thirdCurtainDesign = new CurtainDesign(); $this->thirdCurtainDesign->setCurtainPriceBand($curtainPriceBand); $this->thirdCurtainDesign->setUrlName("beanetta"); $this->thirdCurtainDesign->setCushionFinish("Corded"); $this->thirdCurtainDesign->setEyeletsAvailable(1); $this->thirdCurtainDesign->setFabricWidth(140); $this->thirdCurtainDesign->setFinish("Fringed"); $this->thirdCurtainDesign->setLined(1); $this->thirdCurtainDesign->setMaterials("Polyester/Cotton"); $this->thirdCurtainDesign->setName("Beanetta Ready Made Curtains"); $this->thirdCurtainDesign->setNew(1); $this->thirdCurtainDesign->setPatternRepeatLength(8.0); $this->thirdCurtainDesign->setTapeSize("3\""); $this->thirdCurtainDesign->setPosition("0"); $this->thirdCurtainDesign->setDisplay("1"); $this->thirdCurtainDesign->setSpecialPurchase("0"); $thirdCurtainColour = new CurtainColour(); $thirdCurtainColour->setName("Cream"); $thirdCurtainColour->setFullFilepath("beanetta/beanetta_cream.jpg"); $thirdCurtainColour->setThumbnailFilepath("beanetta/beanetta_cream_detail.jpg"); $thirdCurtainColour->setSwatchFilepath("beanetta/beanetta_cream_t.jpg"); $thirdCurtainColour->setBuynow(1); $thirdCurtainColour->setInStock(1); $thirdCurtainColour->setOnOffer(0); $thirdCurtainColour->setDisplay(1); $thirdCurtainColour->setPosition(1); $thirdCurtainColour->setDiscountPercentage(0); $thirdCurtainColour->setAvailableStock(20.0); $thirdCurtainColour->setCurtainDesign($this->thirdCurtainDesign); $this->thirdCurtainDesign->addCurtainColour($thirdCurtainColour); $this->em->persist($this->curtainDesign); $this->em->persist($this->secondCurtainDesign); $this->em->persist($this->thirdCurtainDesign); $this->em->flush(); }
public function createAction() { $id = $this->getRequest()->get('id'); $repository = $this->getDoctrine()->getRepository('ElmetSiteBundle:CurtainDesign'); $curtainDesign = $repository->findOneById($id); $curtainColour = new CurtainColour(); $urlName = $curtainDesign->getUrlName(); $displayFile = $this->getRequest()->files->get('display'); $swatchFile = $this->getRequest()->files->get('swatch'); $thumbFile = $this->getRequest()->files->get('thumbnail'); $fileRoot = $this->container->getParameter('fileroot'); $noImageFile = $this->container->getParameter('no_image_filename'); if ($displayFile != null) { $curtainColour->setFullFilepath($urlName . "/" . $displayFile->getClientOriginalName()); $displayFile->move($fileRoot . $urlName, $displayFile->getClientOriginalName()); } else { $curtainColour->setFullFilepath($noImageFile); } if ($swatchFile != null) { $curtainColour->setSwatchFilepath($urlName . "/" . $swatchFile->getClientOriginalName()); $swatchFile->move($fileRoot . $urlName, $swatchFile->getClientOriginalName()); } else { $curtainColour->setSwatchFilepath($noImageFile); } if ($thumbFile != null) { $curtainColour->setThumbnailFilepath($urlName . "/" . $thumbFile->getClientOriginalName()); $thumbFile->move($fileRoot . $urlName, $thumbFile->getClientOriginalName()); } else { $curtainColour->setThumbnailFilepath($noImageFile); } $curtainColour->setName($this->getRequest()->get('name')); $curtainColour->setBuynow($this->getRequest()->get('buynow')); $curtainColour->setInStock($this->getRequest()->get('instock')); $curtainColour->setCurtainDesign($curtainDesign); $availableStock = $this->getRequest()->get('stock'); if ($availableStock == null) { $curtainColour->setAvailableStock(0.0); } else { $curtainColour->setAvailableStock($availableStock); } if ($this->getRequest()->get('onDisplay') == null) { $curtainColour->setDisplay(1); } else { $curtainColour->setDisplay($this->getRequest()->get('onDisplay')); } $curtainColour->setOnOffer($this->getRequest()->get('onoffer')); if ($this->getRequest()->get('onoffer') == 1) { $curtainColour->setDiscountPercentage($this->getRequest()->get('discount')); } else { $curtainColour->setDiscountPercentage(0); } $curtainColour->setPosition($this->getRequest()->get('position')); $em = $this->getDoctrine()->getEntityManager(); $em->persist($curtainColour); $em->flush(); return $this->forward('ElmetAdminBundle:CurtainDesign:view', array('id' => $id)); }