/** * Returns the link to this detail page. * * @return string * * @author Sebastian Diel <*****@*****.**> * @since 04.03.2014 */ public function Link() { $controller = Controller::curr(); $link = parent::Link(); if ($controller instanceof SilvercartAddressPage_Controller) { $link .= 'edit/' . $controller->getAddressID(); } return $link; }
/** * Returns the link to this detail page. * * @return string * * @author Sebastian Diel <*****@*****.**>, * Sascha Koehler <*****@*****.**> * @since 04.03.2014 */ public function Link() { $controller = Controller::curr(); $link = parent::Link(); if ($controller instanceof SilvercartOrderDetailPage_Controller) { $link .= 'detail' . $controller->getOrderID(); } return $link; }
/** * Creates the "My Account" section of SilverCart. * * @param SiteTree $parentPage Parent page of "My Account" section * * @return void * * @author Sebastian Diel <*****@*****.**> * @since 21.03.2016 */ public function createDefaultSiteTreeMyAccountSection(SiteTree $parentPage) { $myAccountHolder = new SilvercartMyAccountHolder(); $myAccountHolder->Title = _t('SilvercartMyAccountHolder.DEFAULT_TITLE', 'my account'); $myAccountHolder->URLSegment = _t('SilvercartMyAccountHolder.DEFAULT_URLSEGMENT', 'my-account'); $myAccountHolder->Status = "Published"; $myAccountHolder->ShowInMenus = true; $myAccountHolder->ShowInSearch = false; $myAccountHolder->ParentID = $parentPage->ID; $myAccountHolder->IdentifierCode = "SilvercartMyAccountHolder"; $myAccountHolder->InheritFromParent = false; $myAccountHolder->write(); $myAccountHolder->publish("Stage", "Live"); //create a silvercart data page as a child of silvercart my account holder $dataPage = new SilvercartDataPage(); $dataPage->Title = _t('SilvercartDataPage.DEFAULT_TITLE', 'my data'); $dataPage->URLSegment = _t('SilvercartDataPage.DEFAULT_URLSEGMENT', 'my-data'); $dataPage->Status = "Published"; $dataPage->ShowInMenus = true; $dataPage->ShowInSearch = false; $dataPage->CanViewType = "Inherit"; $dataPage->ParentID = $myAccountHolder->ID; $dataPage->IdentifierCode = "SilvercartDataPage"; $dataPage->write(); $dataPage->publish("Stage", "Live"); //create a silvercart order holder as a child of silvercart my account holder $orderHolder = new SilvercartOrderHolder(); $orderHolder->Title = _t('SilvercartOrderHolder.DEFAULT_TITLE', 'my orders'); $orderHolder->URLSegment = _t('SilvercartOrderHolder.DEFAULT_URLSEGMENT', 'my-orders'); $orderHolder->Status = "Published"; $orderHolder->ShowInMenus = true; $orderHolder->ShowInSearch = false; $orderHolder->CanViewType = "Inherit"; $orderHolder->ParentID = $myAccountHolder->ID; $orderHolder->IdentifierCode = "SilvercartOrderHolder"; $orderHolder->write(); $orderHolder->publish("Stage", "Live"); //create an order detail page as a child of the order holder $orderDetailPage = new SilvercartOrderDetailPage(); $orderDetailPage->Title = _t('SilvercartOrderDetailPage.DEFAULT_TITLE', 'order details'); $orderDetailPage->URLSegment = _t('SilvercartOrderDetailPage.DEFAULT_URLSEGMENT', 'order-details'); $orderDetailPage->Status = "Published"; $orderDetailPage->ShowInMenus = false; $orderDetailPage->ShowInSearch = false; $orderDetailPage->CanViewType = "Inherit"; $orderDetailPage->ParentID = $orderHolder->ID; $orderDetailPage->IdentifierCode = "SilvercartOrderDetailPage"; $orderDetailPage->write(); $orderDetailPage->publish("Stage", "Live"); //create a silvercart address holder as a child of silvercart my account holder $addressHolder = new SilvercartAddressHolder(); $addressHolder->Title = _t('SilvercartAddressHolder.DEFAULT_TITLE', 'address overview'); $addressHolder->URLSegment = _t('SilvercartAddressHolder.DEFAULT_URLSEGMENT', 'address-overview'); $addressHolder->Status = "Published"; $addressHolder->ShowInMenus = true; $addressHolder->ShowInSearch = false; $addressHolder->CanViewType = "Inherit"; $addressHolder->ParentID = $myAccountHolder->ID; $addressHolder->IdentifierCode = "SilvercartAddressHolder"; $addressHolder->write(); $addressHolder->publish("Stage", "Live"); //create a silvercart address page as a child of silvercart my account holder $addressPage = new SilvercartAddressPage(); $addressPage->Title = _t('SilvercartAddressPage.DEFAULT_TITLE', 'address details'); $addressPage->URLSegment = _t('SilvercartAddressPage.DEFAULT_URLSEGMENT', 'address-details'); $addressPage->Status = "Published"; $addressPage->ShowInMenus = false; $addressPage->ShowInSearch = false; $addressPage->CanViewType = "Inherit"; $addressPage->ParentID = $addressHolder->ID; $addressPage->IdentifierCode = "SilvercartAddressPage"; $addressPage->write(); $addressPage->publish("Stage", "Live"); }
/** * Adds the part for 'Add new address' to the breadcrumbs. Sets the link for * The default action in breadcrumbs. * * @param int $maxDepth maximum levels * @param bool $unlinked link breadcrumbs elements * @param bool $stopAtPageType name of PageType to stop at * @param bool $showHidden show pages that will not show in menus * * @return string * * @author Sebastian Diel <*****@*****.**> * @since 27.06.2011 */ public function Breadcrumbs($maxDepth = 20, $unlinked = false, $stopAtPageType = false, $showHidden = false) { $breadcrumbs = parent::Breadcrumbs($maxDepth, $unlinked, $stopAtPageType, $showHidden); if (Controller::curr()->getAction() == 'addNewAddress') { $parts = explode(" » ", $breadcrumbs); $addressHolder = array_pop($parts); $parts[] = "<a href=\"" . $this->Link() . "\">" . $addressHolder . "</a>"; $parts[] = _t('SilvercartAddressHolder.ADD', 'Add new address'); $breadcrumbs = implode(" » ", $parts); } return $breadcrumbs; }