public function updateCMSFields(FieldList $fields) { $tabName = 'Root.Pricing'; if (class_exists("DataObjectOneFieldUpdateController")) { $link = DataObjectOneFieldUpdateController::popup_link($this->owner->ClassName, "Price", $where = "", $sort = "Price ASC ", $linkText = "Check all prices..."); $fields->AddFieldToTab($tabName, new HeaderField("MetaTitleFixesHeader", "Quick review", 3)); $fields->AddFieldToTab($tabName, new LiteralField("MetaTitleFixes", $link . ".<br /><br /><br />")); } // move price field under new 'Pricing' tab // $priceField = $fields->fieldByName('Root.Details.Price'); // $fields->remove($priceField); $fields->addFieldsToTab($tabName, array(new HeaderField("ComplexPricesHeader", "Alternative Pricing", 3), new LiteralField("ComplexPricesExplanation", "<p>Please enter <i>alternative</i> pricing below. You can enter a price per <a href=\"admin/security/\">security group</a> and/or per country.</p>"), $this->complexPricesHasManyTable())); }
function getCMSFields() { $fields = parent::getCMSFields(); $dos = WebPortfolioWhatWeDidDescriptor::get(); if ($dos->count() && $this->ID) { $dosArray = $dos->map()->toArray(); $fields->addFieldsToTab("Root.WhatWeDid", array(new CheckboxSetField("WhatWeDid", "Select work done", $dosArray), new TextField("AddWhatWeDid", "Add a job"))); } if (class_exists("DataObjectOneFieldUpdateController")) { $link = DataObjectOneFieldUpdateController::popup_link($ClassName = $this->ClassName, $FieldName = "Favourites", $where = '', $sort = 'Favourites DESC', $linkText = 'Select Favourites'); $fields->addFieldToTab("Root.Main", new LiteralField("SelectFavourites", $link), "Favourites"); } return $fields; }
function getCMSFields() { $fields = parent::getCMSFields(); $fields->removeByName("Code"); if ($this->ID) { $dos = WebPortfolioWhatWeDidDescriptor::get()->exclude(array("ID" => $this->ID)); if ($dos->count()) { $dosArray = array("" => "--- do not merge ---"); $dosArray += $dos->map("ID", "Name")->toArray(); $fields->addFieldToTab("Root.Merge", new DropdownField("MergeID", "Merge <i>{$this->Name}</i> into:", $dosArray)); } } $dos = WebPortfolioItem::get(); if ($dos->count() && $this->ID) { $dosArray = $dos->map()->toArray(); $fields->addFieldsToTab("Root.WebPortfolioItem", array(new CheckboxSetField("WebPortfolioItem", "Carried out for", $dosArray))); } if (class_exists("DataObjectOneFieldUpdateController")) { $link = DataObjectOneFieldUpdateController::popup_link($ClassName = $this->ClassName, $FieldName = "Description", $where = '', $sort = 'Description DESC', $linkText = 'Edit Description'); $fields->addFieldToTab("Root.Main", new LiteralField("EditDescription", $link), "Description"); } return $fields; }
protected function getFormField($obj, $fieldName) { if (!self::$field) { self::$field = $obj->dbObject($fieldName)->scaffoldFormField($obj->Title); } return self::$field; }
/** * standard SS method */ function updateCMSFields(FieldList $fields) { $tabName = singleton("ProductVariation")->plural_name(); $fields->addFieldToTab('Root', $tab = new Tab($tabName, new GridField("VariationAttributes", singleton("ProductAttributeType")->plural_name(), $this->owner->VariationAttributes(), $variationAttributesConfig = GridFieldConfig_RecordEditor::create()), $this->owner->getVariationsTable(), new CreateEcommerceVariations_Field('VariationMaker', '', $this->owner->ID))); $variationAttributesConfig->removeComponentsByType("GridFieldAddNewButton"); $variations = $this->owner->Variations(); if ($variations && $variations->Count()) { $productVariationName = singleton("ProductVariation")->plural_name(); $fields->addFieldToTab('Root.Details', new LabelField('variationspriceinstructions', sprintf(_t("ProductVariation.PRICE_EXPLANATION", 'Price - Because you have one or more variations, you can vary the price in the <strong>%s</strong> tab. You set the default price here.'), $productVariationName))); $link = EcommerceProductVariationTaskDeleteVariations::create_link($this->owner); if ($link) { $tab->insertAfter(new LiteralField("DeleteVariations", "<p class=\"bad message\"><a href=\"{$link}\" class=\"action ss-ui-button\" id=\"DeleteEcommerceVariationsInner\" data-confirm=\"" . Convert::raw2att(_t("Product.ARE_YOU_SURE_YOU_WANT_TO_DELETE_ALL_VARIATIONS", "are you sure you want to delete all variations from this product? ")) . "\">" . _t("Product.DELETE_ALL_VARIATIONS_FROM", "Delete all variations from <i>") . $this->owner->Title . "</i>" . "</a></p>"), 'ProductVariations'); } if (class_exists('DataObjectOneFieldUpdateController')) { $linkForAllowSale = DataObjectOneFieldUpdateController::popup_link('ProductVariation', 'AllowPurchase', "ProductID = {$this->owner->ID}", '', _t("ProductVariation.QUICK_UPDATE_VARIATION_ALLOW_PURCHASE", 'for sale')); $linkForPrice = DataObjectOneFieldUpdateController::popup_link('ProductVariation', 'Price', "ProductID = {$this->owner->ID}", '', _t("ProductVariation.QUICK_UPDATE_VARIATION_PRICES", 'prices')); $linkForProductCodes = DataObjectOneFieldUpdateController::popup_link('ProductVariation', 'InternalItemID', "ProductID = {$this->owner->ID}", '', _t("ProductVariation.QUICK_UPDATE_VARIATION_PRODUCT_CODES", 'product codes')); $tab->insertAfter(new LiteralField('QuickActions', '<p class="message good">' . _t("ProductVariation.QUICK_UPDATE", 'Quick update') . ': ' . "<span class=\"action ss-ui-button\">{$linkForAllowSale}</span> " . "<span class=\"action ss-ui-button\">{$linkForPrice}</span>" . "<span class=\"action ss-ui-button\">{$linkForProductCodes}</span>" . "</p>"), 'ProductVariations'); } } }