public static function createProductCategoryByName($name, $parentCategory = null) { $productCategory = new ProductCategory(); $productCategory->name = $name; $productCatalog = new ProductCatalog(); $productCatalog->name = ProductCatalog::DEFAULT_NAME; $productCatalog->save(); $productCategory->productCatalogs->add($productCatalog); $saved = $productCategory->save(); if ($parentCategory != null) { $productCategory->productCategories->add($parentCategory); } assert('$saved'); return $productCategory; }
public function testLoad() { $this->assertEquals(2, Group::getCount()); $this->assertEquals(0, Role::getCount()); $this->assertEquals(0, Account::getCount()); $this->assertEquals(0, Contact::getCount()); $this->assertEquals(0, Opportunity::getCount()); $this->assertEquals(0, Meeting::getCount()); $this->assertEquals(0, Note::getCount()); $this->assertEquals(0, Task::getCount()); $this->assertEquals(1, User::getCount()); $this->assertEquals(0, ProductCatalog::getCount()); $this->assertEquals(0, ProductCategory::getCount()); $this->assertEquals(0, ProductTemplate::getCount()); $this->assertEquals(0, Product::getCount()); $messageLogger = new MessageLogger(); DemoDataUtil::unsetLoadedModules(); DemoDataUtil::load($messageLogger, 3); $this->assertEquals(8, Group::getCount()); $this->assertEquals(3, Role::getCount()); $this->assertEquals(3, Account::getCount()); $this->assertEquals(16, Contact::getCount()); $this->assertEquals(6, Opportunity::getCount()); $this->assertEquals(18, Meeting::getCount()); $this->assertEquals(12, Note::getCount()); $this->assertEquals(9, Task::getCount()); $this->assertEquals(10, User::getCount()); $this->assertEquals(1, ProductCatalog::getCount()); $this->assertEquals(6, ProductCategory::getCount()); $this->assertEquals(32, ProductTemplate::getCount()); $this->assertEquals(59, Product::getCount()); }
public function testCreateAndGetProductCategoryById() { $user = UserTestHelper::createBasicUser('Steven'); $productCategory = new ProductCategory(); $productCategory->name = "My Test Category"; $productCatalog = new ProductCatalog(); $productCatalog->name = ProductCatalog::DEFAULT_NAME; $productCatalog->save(); $productCategory->productCatalogs->add($productCatalog); $this->assertTrue($productCategory->save()); $id = $productCategory->id; $productCategory->forget(); unset($productCategory); $productCategory = ProductCategory::getById($id); $this->assertEquals('My Test Category', $productCategory->name); $this->assertEquals(ProductCatalog::DEFAULT_NAME, $productCategory->productCatalogs[0]->name); }
/** * @param string $name * @return string */ public static function resolveAndGetByName($name) { assert('is_string($name)'); assert('$name != ""'); try { $catalog = self::getByName($name); } catch (NotFoundException $e) { if ($name == self::DEFAULT_NAME) { $catalog = new ProductCatalog(); $catalog->name = self::DEFAULT_NAME; $saved = $catalog->save(); assert('$saved'); } else { throw new NotFoundException(); } } return $catalog; }
public function actionCreate() { $breadCrumbLinks = static::getDetailsAndEditBreadcrumbLinks(); $breadCrumbLinks[] = Zurmo::t('Core', 'Create'); $productCategory = new ProductCategory(); $productCatalog = ProductCatalog::resolveAndGetByName(ProductCatalog::DEFAULT_NAME); if (!empty($productCatalog)) { $productCategory->productCatalogs->add($productCatalog); } $editAndDetailsView = $this->makeEditAndDetailsView($this->attemptToSaveModelFromPost($productCategory), 'Edit'); $view = new ProductCategoriesPageView(ProductDefaultViewUtil::makeViewWithBreadcrumbsForCurrentUser($this, $editAndDetailsView, $breadCrumbLinks, 'ProductBreadCrumbView')); echo $view->render(); }
/** * @param DemoDataHelper $demoDataHelper */ public function makeAll(&$demoDataHelper) { assert('$demoDataHelper instanceof DemoDataHelper'); $productCategories = array(); $productCatalog = ProductCatalog::resolveAndGetByName(ProductCatalog::DEFAULT_NAME); for ($i = 0; $i < 6; $i++) { $productCategory = new ProductCategory(); $productCategory->productCatalogs->add($productCatalog); $this->populateModelData($productCategory, $i); $saved = $productCategory->save(); assert('$saved'); $productCategories[] = $productCategory->id; } $demoDataHelper->setRangeByModelName('ProductCategory', $productCategories[0], $productCategories[count($productCategories) - 1]); }
/** * @return array */ protected static function translatedAttributeLabels($language) { return array_merge(parent::translatedAttributeLabels($language), array('productCategory' => Zurmo::t('ProductTemplatesModule', 'Parent ' . self::getModelLabelByTypeAndLanguage('Singular', $language), array(), null, $language), 'productCategories' => self::getModelLabelByTypeAndLanguage('Plural', $language), 'productCatalogs' => ProductCatalog::getModelLabelByTypeAndLanguage('Plural', $language), 'products' => Zurmo::t('ProductsModule', 'ProductsModulePluralLabel', array(), null, $language), 'productTemplates' => Zurmo::t('ProductTemplatesModule', 'ProductTemplatesModulePluralLabel', array(), null, $language))); }