public function updateCMSFields(FieldList $fields)
 {
     $fields->addFieldToTab("Root.PageElements", $editor = new HTMLEditorField($name = "CopyrightNotice", $title = "Copyright notice."));
     $fields->addFieldToTab("Root.PageElements", new UploadField($name = "BackgroundImage", $title = "Background Image"));
     $editor->setRows(10);
     return $fields;
 }
 public function getFieldConfiguration()
 {
     $textAreaField = new HTMLEditorField($this->getSettingName('Content'), "HTML", $this->getContent());
     $textAreaField->setRows(4);
     $textAreaField->setColumns(20);
     return new FieldList($textAreaField, new CheckboxField($this->getSettingName('HideFromReports'), _t('EditableLiteralField.HIDEFROMREPORT', 'Hide from reports?'), $this->getSetting('HideFromReports')));
 }
 public function getCMSFields()
 {
     $fields = parent::getCMSFields();
     $fields->addFieldToTab("Root.Main", $editor = new HTMLEditorField('Content', 'Intro Text'), "Metadata");
     $editor->setRows(20);
     return $fields;
 }
 function updateCMSFields(FieldList $fields)
 {
     $footerTabName = 'Root.' . _t('SiteConfig.FOOTER', 'Footer');
     $fields->addFieldToTab($footerTabName, $h1 = new HTMLEditorField('FooterText', _t('SiteConfig.FOOTER_TEXT', "Text to display in the footer")));
     $options1 = singleton('SiteConfig')->dbObject('ColumnStart')->EnumValues();
     $options2 = singleton('SiteConfig')->dbObject('ColumnWidth')->EnumValues();
     $columnStartField = new DropdownField('ColumnStart', _t('SiteConfig.FOOTER_TEXT_START_COLUMN', 'Which column (of four) should the footer text start in', $options1));
     $columnWidthField = new DropdownField('ColumnStart', _t('SiteConfig.FOOTER_TEXT_WIDTH_COLUMN', 'How many, of four columns, should the footer text take up', $options2));
     //$fields->addFieldToTab("Root.Footer", $columnStartField);
     //$fields->addFieldToTab("Root.Footer", $h1=new HTMLEditorField('FooterText', _t('SiteConfig.FOOTER_TEXT', "Text to display in the footer")));
     $h1->setRows(6);
 }
 public function getCMSFields()
 {
     $fields = parent::getCMSFields();
     $fields->insertAfter($gameFormContent = new HTMLEditorField('GameLiveContent', 'Game selection form detail'), 'Content');
     $gameFormContent->setRows(20);
     $regOpen = new CheckboxField('OpenGameReg', '');
     $fields->insertBefore($cField = new CompositeField(array($label = new LabelField('OpenGameRegLabel', 'Open game selection (all)'), $regOpen)), 'Content');
     $cField->addExtraClass('field');
     $regOpen->addExtraClass('mts');
     $label->addExtraClass('left');
     $groupsMap = array();
     foreach (Group::get() as $group) {
         // Listboxfield values are escaped, use ASCII char instead of »
         $groupsMap[$group->ID] = $group->getBreadcrumbs(' > ');
     }
     asort($groupsMap);
     $fields->insertBefore(ListboxField::create('OpenGameRegForGroups', "Open game selection for group (limited)")->setMultiple(true)->setSource($groupsMap)->setAttribute('data-placeholder', _t('Member.ADDGROUP', 'Add group', 'Placeholder text for a dropdown')), 'Content');
     return $fields;
 }
    public function getCMSFields()
    {
        $fields = parent::getCMSFields();
        $fields->addFieldToTab('Root.EnquiryForm', new HeaderField('Enquiry Form Setup', 2));
        $gridFieldConfig = GridFieldConfig_RecordEditor::create(100);
        $gridFieldConfig->addComponent(new GridFieldSortableRows('SortOrder'));
        /* Unset sorting hack */
        $gridFieldConfig->getComponentByType('GridFieldSortableHeader')->setFieldSorting(array('FieldName' => 'FieldNameNoSorting', 'FieldType' => 'FieldTypeNoSorting'));
        $gridField = new GridField('EnquiryFormFields', false, $this->EnquiryFormFields(), $gridFieldConfig);
        $fields->addFieldToTab('Root.EnquiryForm', $gridField);
        $emailSettings = array();
        array_push($emailSettings, new EmailField('EmailTo', 'Send email to'));
        array_push($emailSettings, new EmailField('EmailFrom', 'Send email from'));
        array_push($emailSettings, new TextField('EmailSubject', 'Email subject'));
        array_push($emailSettings, new HeaderField('Message on website once completed', 5));
        $editor = new HTMLEditorField('EmailSubmitCompletion', '');
        $editor->setRows(10);
        array_push($emailSettings, $editor);
        array_push($emailSettings, new LiteralField('BccHdr', '<p>If you would like a copy of the enquiry to be sent elsewhere, fill that in here.</p>'));
        array_push($emailSettings, new EmailField('EmailBcc', 'Send BCC copy to (optional)'));
        array_push($emailSettings, new TextField('EmailSubmitButtonText', 'Submit button text'));
        $toggleSettings = ToggleCompositeField::create('FormSettings', 'Enquiry Form Settings', $emailSettings)->setHeadingLevel(5);
        $fields->addFieldsToTab('Root.EnquiryForm', $toggleSettings);
        $spamSettings = array();
        array_push($spamSettings, new LiteralField('SpamHdr', '<p>You can optionally enable an anti-spam "captcha" image.
			This adds a small image with 4 random numbers which needs to be filled in correctly.</p>'));
        array_push($spamSettings, new DropdownField('AddCaptcha', 'Add captcha image (optional)', array(0 => 'No', 1 => 'Yes')));
        if (!$this->CaptchaText) {
            $this->CaptchaText = 'Verification Image';
        }
        array_push($spamSettings, new TextField('CaptchaText', 'Field name'));
        array_push($spamSettings, new LiteralField('CaptchaInfo', '<p>If you would like to explain what the captcha is, please explain briefly what it is. This is only used if
			 you have selected to add the captcha image above.</p>'));
        array_push($spamSettings, new TextField('CaptchaHelp', 'Captcha help (optional)'));
        $toggleSpam = ToggleCompositeField::create('SpamSettings', 'Anti-Spam Settings', $spamSettings)->setHeadingLevel(5);
        $fields->addFieldsToTab('Root.EnquiryForm', $toggleSpam);
        return $fields;
    }
 /**
  * Get CMS fields
  *
  * @return FieldList
  */
 public function getCMSFields()
 {
     $fields = new FieldList();
     $fields->push(new TextField('Title', _t('Block.TITLE', 'Title')));
     $leadInField = new HTMLEditorField('LeadIn', _t('Block.LEADIN', 'Lead In'));
     $leadInField->setRows(2);
     $fields->push($leadInField);
     $contentField = new HTMLEditorField('Content', _t('Block.CONTENT', 'Content'));
     $contentField->setRows(6);
     $fields->push($contentField);
     $imageField = new UploadField('Image', _t('Block.IMAGE', 'Image'));
     $imageField->getValidator()->setAllowedExtensions(array('jpg', 'gif', 'png'));
     $fields->push($imageField);
     $fields->push(new TextField('LinkTitle', _t('Block.LINKTITLE', 'Link title')));
     $fields->push(new TextField('LinkExternal', _t('Block.LINKEXTERNAL', 'External link URL')));
     if (class_exists('OptionalTreeDropdownField')) {
         $treeField = new OptionalTreeDropdownField('LinkInternalID', _t('Block.LINKINTERNAL', 'Internal link'), 'SiteTree');
         $treeField->setEmptyString('(Choose)');
     } else {
         $treeField = new TreeDropdownField('LinkInternalID', _t('Block.LINKINTERNAL', 'Internal link'), 'SiteTree');
     }
     $fields->push($treeField);
     return $fields;
 }
    public function getCMSFields()
    {
        $fields = parent::getCMSFields();
        $fields->removeByName('Order');
        $fields->removeByName('Content');
        $fields->removeByName('ProcessCaseID');
        $case = ProcessCase::get();
        if ($case) {
            $fields->insertBefore($caseOptions = new DropdownField('ProcessCaseID', 'Case', $case->map('ID', 'Title')), 'StageID');
            $caseOptions->setEmptyString('All');
        }
        $fields->insertAfter(new HiddenField("TypeOrder"), 'TypeID');
        $fields->insertAfter($content = new HTMLEditorField("Content"), 'ProcessCaseID');
        $content->setRows(15);
        $fields->insertAfter($links = new DropdownField('LinksToAnotherStageID', 'Links To Another Stage', Stage::get()->map('ID', 'Title')), 'StageID');
        $links->setEmptyString(' ');
        $fields->insertBefore(new LiteralField('InfoTitle', '<h3 class="process-info-header">
			<span class="step-label">
				<span class="flyout">5</span><span class="arrow"></span>
				<span class="title">Information Piece</span>
			</span>
		</h3>'), 'Title');
        return $fields;
    }
 /**
  *@return FieldList
  **/
 function getCMSFields()
 {
     $fields = parent::getCMSFields();
     $fields->addFieldsToTab('Root.Messages', array(new TabSet("Messages", new Tab('Actions', new TextField('ContinueShoppingLabel', _t('CartPage.CONTINUESHOPPINGLABEL', 'Label on link to continue shopping - e.g. click here to continue shopping')), new TextField('ProceedToCheckoutLabel', _t('CartPage.PROCEEDTOCHECKOUTLABEL', 'Label on link to proceed to checkout - e.g. click here to finalise your order')), new TextField('ShowAccountLabel', _t('CartPage.SHOWACCOUNTLABEL', 'Label on the link \'view account details\' - e.g. click here to view your account details')), new TextField('CurrentOrderLinkLabel', _t('CartPage.CURRENTORDERLINKLABEL', 'Label for the link pointing to the current order - e.g. click here to view current order')), new TextField('LoginToOrderLinkLabel', _t('CartPage.LOGINTOORDERLINKLABEL', 'Label for the link pointing to the order which requires a log in - e.g. you must login to view this order')), new TextField('SaveOrderLinkLabel', _t('CartPage.SAVEORDERLINKLABEL', 'Label for the saving an order - e.g. click here to save current order')), new TextField('LoadOrderLinkLabel', _t('CartPage.LOADORDERLINKLABEL', 'Label for the loading an order into the cart - e.g. click here to finalise this order')), new TextField('DeleteOrderLinkLabel', _t('CartPage.DELETEORDERLINKLABEL', 'Label for the deleting an order - e.g. click here to delete this order'))), new Tab('Errors', $htmlEditorField1 = new HTMLEditorField('NoItemsInOrderMessage', _t('CartPage.NOITEMSINORDERMESSAGE', 'No items in order - shown when the customer tries to view an order without items.')), $htmlEditorField2 = new HTMLEditorField('NonExistingOrderMessage', _t('CartPage.NONEXISTINGORDERMESSAGE', 'Non-existing Order - shown when the customer tries to load a non-existing order.'))))));
     $htmlEditorField1->setRows(3);
     $htmlEditorField2->setRows(3);
     return $fields;
 }
 /**
  * Standard SS Method.
  */
 function getCMSFields()
 {
     //prevent calling updateSettingsFields extend function too early
     //$siteTreeFieldExtensions = $this->get_static('SiteTree','runCMSFieldsExtensions');
     //$this->disableCMSFieldsExtensions();
     $fields = parent::getCMSFields();
     if ($this->Config()->get("add_data_to_meta_description_for_search")) {
         $fields->removeByName("MetaDescription");
     }
     //if($siteTreeFieldExtensions) {
     //$this->enableCMSFieldsExtensions();
     //}
     $fields->replaceField('Root.Main', $htmlEditorField = new HTMLEditorField('Content', _t('Product.DESCRIPTION', 'Product Description')));
     $htmlEditorField->setRows(3);
     $fields->addFieldToTab('Root.Main', new TextField('ShortDescription', _t('Product.SHORT_DESCRIPTION', 'Short Description')), "Content");
     //dirty hack to show images!
     $fields->addFieldToTab('Root.Images', $uploadField = new Product_ProductImageUploadField('Image', _t('Product.IMAGE', 'Product Image')));
     $uploadField->setCallingClass("Product");
     $fields->addFieldToTab('Root.Images', $this->getAdditionalImagesField());
     $fields->addFieldToTab('Root.Images', $this->getAdditionalImagesMessage());
     $fields->addFieldToTab('Root.Details', new ReadonlyField('FullName', _t('Product.FULLNAME', 'Full Name')));
     $fields->addFieldToTab('Root.Details', new ReadOnlyField('FullSiteTreeSort', _t('Product.FULLSITETREESORT', 'Full sort index')));
     $fields->addFieldToTab('Root.Details', $allowPurchaseField = new CheckboxField('AllowPurchase', _t('Product.ALLOWPURCHASE', 'Allow product to be purchased')));
     $config = $this->EcomConfig();
     if ($config && !$config->AllowFreeProductPurchase) {
         $price = $this->getCalculatedPrice();
         if ($price == 0) {
             $link = $config->CMSEditLink();
             $allowPurchaseField->setDescription(_t("Product.DO_NOT_ALLOW_FREE_PRODUCTS_TO_BE_PURCHASED", "NB: Allow Purchase + zero price is not allowed.  Change the <a href=\"{$link}\">Shop Settings</a> to allow a zero price product purchases or set price on this product."));
         }
     }
     $fields->addFieldToTab('Root.Details', new CheckboxField('FeaturedProduct', _t('Product.FEATURED', 'Featured Product')));
     $fields->addFieldToTab('Root.Details', new NumericField('Price', _t('Product.PRICE', 'Price'), '', 12));
     $fields->addFieldToTab('Root.Details', new TextField('InternalItemID', _t('Product.CODE', 'Product Code'), '', 30));
     if ($this->EcomConfig()->ProductsHaveWeight) {
         $fields->addFieldToTab('Root.Details', new NumericField('Weight', _t('Product.WEIGHT', 'Weight')));
     }
     if ($this->EcomConfig()->ProductsHaveModelNames) {
         $fields->addFieldToTab('Root.Details', new TextField('Model', _t('Product.MODEL', 'Model')));
     }
     if ($this->EcomConfig()->ProductsHaveQuantifiers) {
         $fields->addFieldToTab('Root.Details', new TextField('Quantifier', _t('Product.QUANTIFIER', 'Quantifier (e.g. per kilo, per month, per dozen, each)')));
     }
     $fields->addFieldToTab('Root.Main', new LiteralField('AddToCartLink', "<p class=\"message good\"><a href=\"" . $this->AddLink() . "\">" . _t("Product.ADD_TO_CART", "add to cart") . "</a></p>"));
     if ($this->EcomConfig()->ProductsAlsoInOtherGroups) {
         $fields->addFieldsToTab('Root.AlsoShowHere', array(new HeaderField('ProductGroupsHeader', _t('Product.ALSOSHOWSIN', 'Also shows in ...')), $this->getProductGroupsTableField()));
     }
     //if($siteTreeFieldExtensions) {
     //$this->extend('updateSettingsFields', $fields);
     //}
     return $fields;
 }
 /**
  * standard SS method
  * @return FieldList
  */
 function getCMSFields()
 {
     $fields = parent::getCMSFields();
     $self = $this;
     $this->beforeUpdateCMSFields(function ($fields) use($self) {
         foreach ($this->customFieldLabels() as $name => $label) {
             $fields->removeByName($name);
         }
         //new section
         $fieldDescriptions = $this->customDescriptionsForFields();
         $fieldLabels = $this->fieldLabels();
         $productImage = new Product_Image();
         $versionInfo = EcommerceConfigDefinitions::create();
         $fields->addFieldToTab("Root.Main", new TextField("Title", $fieldLabels["Title"]));
         $fields->addFieldsToTab("Root", array(new Tab('Pricing', new CheckboxField("ShopPricesAreTaxExclusive", $fieldLabels["ShopPricesAreTaxExclusive"]), new CheckboxField('AllowFreeProductPurchase', $fieldLabels['AllowFreeProductPurchase']), $htmlEditorField1 = new HTMLEditorField("CurrenciesExplanation", $fieldLabels["CurrenciesExplanation"])), new Tab('Products', new NumericField("NumberOfProductsPerPage", $fieldLabels["NumberOfProductsPerPage"]), new CheckboxField("ProductsAlsoInOtherGroups", $fieldLabels["ProductsAlsoInOtherGroups"]), new CheckboxField("OnlyShowProductsThatCanBePurchased", $fieldLabels["OnlyShowProductsThatCanBePurchased"]), $htmlEditorField2 = new HTMLEditorField("NotForSaleMessage", $fieldLabels["NotForSaleMessage"]), new CheckboxField("ProductsHaveWeight", $fieldLabels["ProductsHaveWeight"]), new CheckboxField("ProductsHaveModelNames", $fieldLabels["ProductsHaveModelNames"]), new CheckboxField("ProductsHaveQuantifiers", $fieldLabels["ProductsHaveQuantifiers"])), new Tab('ProductImages', new Product_ProductImageUploadField("DefaultProductImage", $fieldLabels["DefaultProductImage"], null, null, null, "default-product-image"), new ReadonlyField("DefaultThumbnailImageSize", $fieldLabels["DefaultThumbnailImageSize"], $productImage->ThumbWidth() . "px x " . $productImage->ThumbHeight() . "px "), new ReadonlyField("DefaultSmallImageSize", $fieldLabels["DefaultSmallImageSize"], $productImage->SmallWidth() . "px x " . $productImage->SmallHeight() . "px "), new ReadonlyField("DefaultContentImageSize", $fieldLabels["DefaultContentImageSize"], $productImage->ContentWidth() . "px wide"), new ReadonlyField("DefaultLargeImageSize", $fieldLabels["DefaultLargeImageSize"], $productImage->LargeWidth() . "px wide")), new Tab('AddressAndDelivery', new TextField("PostalCodeURL", $fieldLabels["PostalCodeURL"]), new TextField("PostalCodeLabel", $fieldLabels["PostalCodeLabel"]), $htmlEditorField3 = new HTMLEditorField("ShopPhysicalAddress", $fieldLabels["ShopPhysicalAddress"]), new TextField("PackingSlipTitle", $fieldLabels["PackingSlipTitle"]), $htmlEditorField4 = new HTMLEditorField("PackingSlipNote", $fieldLabels["PackingSlipNote"])), new Tab('Emails', new TextField("ReceiptEmail", $fieldLabels["ReceiptEmail"]), new UploadField("EmailLogo", $fieldLabels["EmailLogo"], null, null, null, "logos"), new TextField("InvoiceTitle", $fieldLabels["InvoiceTitle"])), new Tab('Process', $this->getOrderStepsField()), new Tab('Advanced', new HeaderField("EcommerceVersionHeading", "Version"), new LiteralField("EcommerceVersion", "<p><strong>E-commerce</strong>: " . $versionInfo->Version() . "</p>"), new LiteralField("SVNVersion", "<p><strong>SVN</strong>: " . $versionInfo->SvnVersion() . "</p>"), new LiteralField("GITVersion", "<p><strong>GIT</strong>: not available yet.</p>"), new HeaderField("ReviewHardcodedSettingsHeading", "Hard-coded settings"), new LiteralField("ReviewHardcodedSettings", "<p>\n\t\t\t\t\t\t\tYour developer has pre-set some configurations for you.  You can\n\t\t\t\t\t\t\t<a href=\"/dev/ecommerce/ecommercetaskcheckconfiguration\" data-popup=\"true\">review these settings</a>\n\t\t\t\t\t\t\tbut you will need to ask your developer to change them if they are not right.\n\t\t\t\t\t\t\tThe reason they can not be set is that changing them can potentially break your application.\n\t\t\t\t\t\t</p>"))));
         $mappingArray = Config::inst()->get("BillingAddress", "fields_to_google_geocode_conversion");
         if (is_array($mappingArray) && count($mappingArray)) {
             $mappingArray = Config::inst()->get("ShippingAddress", "fields_to_google_geocode_conversion");
             if (is_array($mappingArray) && count($mappingArray)) {
                 $fields->removeByName("PostalCodeURL");
                 $fields->removeByName("PostalCodeLabel");
             }
         }
         $htmlEditorField1->setRows(3);
         $htmlEditorField2->setRows(3);
         $htmlEditorField3->setRows(3);
         $htmlEditorField4->setRows(3);
         $fields->addFieldsToTab("Root.Main", array(new CheckboxField("UseThisOne", $fieldLabels["UseThisOne"]), new CheckboxField("ShopClosed", $fieldLabels["ShopClosed"])));
         //set cols
         if ($f = $fields->dataFieldByName("CurrenciesExplanation")) {
             $f->setRows(2);
         }
         if ($f = $fields->dataFieldByName("NotForSaleMessage")) {
             $f->setRows(2);
         }
         if ($f = $fields->dataFieldByName("ShopPhysicalAddress")) {
             $f->setRows(2);
         }
         foreach ($fields->dataFields() as $field) {
             if (isset($fieldDescriptions[$field->getName()])) {
                 if ($field instanceof CheckboxField) {
                     $field->setDescription($fieldDescriptions[$field->Name]);
                 } else {
                     $field->setRightTitle($fieldDescriptions[$field->Name]);
                 }
             }
         }
         Requirements::block('ecommerce/javascript/EcomPrintAndMail.js');
     });
     return parent::getCMSFields();
 }
 /**
  * Standard SS function
  * @return FieldList
  **/
 function getCMSFields()
 {
     $fields = parent::getCMSFields();
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "ProceedToCheckoutLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "ContinueShoppingLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "ContinuePageID");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "LoadOrderLinkLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "CurrentOrderLinkLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "SaveOrderLinkLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "DeleteOrderLinkLabel");
     $termsPageIDField = OptionalTreeDropdownField::create('TermsPageID', _t("CheckoutPage.TERMSANDCONDITIONSPAGE", "Terms and conditions page"), 'SiteTree');
     $termsPageIDField->setRightTitle(_t("CheckoutPage.TERMSANDCONDITIONSPAGE_RIGHT", "This is optional. To remove this page clear the reminder message below."));
     $fields->addFieldToTab('Root.Terms', $termsPageIDField);
     $fields->addFieldToTab('Root.Terms', $termsPageIDFieldMessage = new TextField('TermsAndConditionsMessage', _t("CheckoutPage.TERMSANDCONDITIONSMESSAGE", "Reminder Message")));
     $termsPageIDFieldMessage->setRightTitle(_t("CheckoutPage.TERMSANDCONDITIONSMESSAGE_RIGHT", "Shown if the user does not tick the 'I agree with the Terms and Conditions' box. Leave blank to allow customer to proceed without ticking this box"));
     //The Content field has a slightly different meaning for the Checkout Page.
     $fields->removeFieldFromTab('Root.Main', "Content");
     $fields->addFieldToTab('Root.Messages.Messages.AlwaysVisible', $htmlEditorField = new HTMLEditorField('Content', _t("CheckoutPage.CONTENT", 'General note - always visible on the checkout page')));
     $htmlEditorField->setRows(3);
     if (OrderModifier_Descriptor::get()->count()) {
         $fields->addFieldToTab('Root.Messages.Messages.OrderExtras', $this->getOrderModifierDescriptionField());
     }
     if (CheckoutPage_StepDescription::get()->count()) {
         $fields->addFieldToTab('Root.Messages.Messages.CheckoutSteps', $this->getCheckoutStepDescriptionField());
     }
     return $fields;
 }
 public function updateCMSFields(FieldList $fields)
 {
     $fields->removeByName('Tagline');
     $fields->addFieldToTab('Root.Main', $h1 = new HTMLEditorField('HTMLTagLine', _t('SiteConfig.SITETAGLINE', 'Site Tagline/Slogan')), 'Theme');
     $h1->setRows(4);
 }
 /**
  *@return FieldList
  **/
 function getCMSFields()
 {
     $fields = parent::getCMSFields();
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "ProceedToCheckoutLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "ContinueShoppingLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "ContinuePageID");
     $fields->removeFieldFromTab('Root.Messages.Messages.Actions', "SaveOrderLinkLabel");
     $fields->removeFieldFromTab('Root.Messages.Messages.Errors', "NoItemsInOrderMessage");
     $fieldLabels = $this->fieldLabels();
     $fields->addFieldToTab('Root.Messages.Messages.Actions', new TextField('StartNewOrderLinkLabel', $fieldLabels["StartNewOrderLinkLabel"]));
     $fields->addFieldToTab('Root.Messages.Messages.Actions', new TextField('CopyOrderLinkLabel', $fieldLabels["CopyOrderLinkLabel"]));
     $fields->addFieldsToTab('Root.Messages.Messages.Payment', array(new HeaderField('Successful'), new TextField('PaymentSuccessfulHeader', $fieldLabels['PaymentSuccessfulHeader']), $htmlEditorField1 = new HTMLEditorField('PaymentSuccessfulMessage', $fieldLabels['PaymentSuccessfulMessage']), new HeaderField('Unsuccessful'), new TextField('PaymentNotSuccessfulHeader', $fieldLabels['PaymentNotSuccessfulHeader']), $htmlEditorField2 = new HTMLEditorField('PaymentNotSuccessfulMessage', $fieldLabels["PaymentNotSuccessfulMessage"]), new HeaderField('Pending'), new TextField('PaymentPendingHeader', $fieldLabels['PaymentPendingHeader']), $htmlEditorField3 = new HTMLEditorField('PaymentPendingMessage', $fieldLabels["PaymentPendingMessage"])));
     $htmlEditorField1->setRows(3);
     $htmlEditorField2->setRows(3);
     $htmlEditorField3->setRows(3);
     $fields->addFieldToTab("Root.Analytics", new CheckboxField("EnableGoogleAnalytics", $fieldLabels["EnableGoogleAnalytics"]));
     return $fields;
 }