Example #1
0
 /**
  * Gets the actual redirect url
  * @return string Gets the url after post
  */
 private function RedirectUrl()
 {
     if ($this->logout->GetNextUrl()) {
         return FrontendRouter::Url($this->logout->GetNextUrl());
     }
     return CurrentUrl();
 }
 private function OnSuccess()
 {
     $member = $this->confirmer->GetMember();
     $member->SetConfirmed(Date::Now());
     if ($this->confirm->GetActivate()) {
         $member->SetActive(true);
     }
     $member->Save();
     $this->AddGroups($member);
     if ($this->confirm->GetSuccessUrl()) {
         Response::Redirect(FrontendRouter::Url($this->confirm->GetSuccessUrl()));
     }
 }
Example #3
0
 /**
  * 
  * @param Page $page
  * @return boolean
  */
 function AddPageCommands(Page $page)
 {
     $pageUrl = $page->GetUrl();
     $params = FrontendRouter::GatherParams($pageUrl);
     if (count($params) == 0) {
         return false;
     }
     $this->writer->AddContent($this->PageStartComment($page));
     $this->writer->AddContent($this->SiteHostCondition($page->GetSite()));
     $folderCondition = $this->SiteFolderCondition($page->GetSite());
     if ($folderCondition) {
         $this->writer->AddContent($folderCondition);
     }
     $this->writer->AddContent($this->PageRule($page, $params));
     $this->writer->AddContent($this->PageEndComment($page));
     return true;
 }
Example #4
0
 /**
  * Adds a single page to the sitemap
  * @param Page $page The page
  */
 private function AddPage(Page $page)
 {
     if (!$this->PageAllowed($page)) {
         return;
     }
     $params = FrontendRouter::GatherParams($page->GetUrl());
     if (count($params) == 0) {
         $changeFreq = ChangeFrequency::ByValue($page->GetSitemapChangeFrequency());
         $priority = $page->GetSitemapRelevance();
         $lastLog = LogEvaluator::LastPageModLog($page, $this->resolver);
         $lastMod = $lastLog ? $lastLog->GetChanged() : null;
         $this->sitemap->AddUrl(FrontendRouter::PageUrl($page), $changeFreq, $priority, $lastMod);
     }
 }
 protected function OnSuccess()
 {
     $this->member = new Member();
     $this->member->SetEMail($this->Value('EMail'));
     $this->member->SetName($this->Value('Name'));
     $password = $this->Value('Password');
     $salt = String::Start(md5(uniqid(microtime())), 8);
     $pwHash = hash('sha256', $password . $salt);
     $this->member->SetPassword($pwHash);
     $this->member->SetPasswordSalt($salt);
     $this->member->SetCreated(Date::Now());
     $this->member->Save();
     $this->SendConfirmMail();
     if ($this->register->GetNextUrl()) {
         Response::Redirect(FrontendRouter::Url($this->register->GetNextUrl()));
     }
 }
Example #6
0
 protected function Url()
 {
     $urlItem = $this->naviItem->GetUrlItem();
     if ($urlItem) {
         return $urlItem->GetUrl();
     }
     $pageItem = $this->naviItem->GetPageItem();
     if ($pageItem) {
         return FrontendRouter::Url($pageItem);
     }
     $itemID = $this->naviItem->GetID();
     throw new \LogicException("Navigation item (ID = {$itemID}) without related url or page: clean up database manually");
 }
Example #7
0
 /**
  * Saves the page selection
  */
 protected function OnSuccess()
 {
     $allParams = array();
     foreach ($this->oblParams as $param) {
         $allParams[$param] = $this->Value($param);
     }
     $optParams = $this->serializer->LinesToArray($this->Value('OptionalParameters'));
     foreach ($optParams as $name => $value) {
         if (!isset($allParams[$name])) {
             $allParams[$name] = $value;
         }
     }
     $this->SetJSFieldValue('#' . $this->prefix . 'Params', $this->serializer->ArrayToLines($allParams));
     $this->SetJSFieldValue('#' . $this->prefix . 'Page', $this->page->GetID());
     $this->SetJSFieldValue('#' . $this->prefix . 'Fragment', $this->Value('Fragment'));
     $this->SetJSHtml('#' . $this->prefix . 'Url', FrontendRouter::PageUrl($this->page, $allParams, $this->Value('Fragment')));
     $this->CloseModal();
 }
Example #8
0
 private function AddTypeField()
 {
     $name = 'Type';
     $value = $this->page->Exists() ? $this->page->GetType() : (string) PageType::Normal();
     $field = new Select($name, $value);
     $types = PageType::AllowedValues();
     $ex404 = FrontendRouter::Page404($this->site);
     foreach ($types as $type) {
         if ($type == (string) PageType::NotFound() && $ex404 && !$ex404->Equals($this->page)) {
             continue;
         }
         $field->AddOption($type, Trans('Core.PageForm.Type.' . ucfirst($type)));
     }
     $this->AddField($field);
 }
Example #9
0
 private function ReplacePageUrl(Page $page, Token $token, $startPos, &$endPos)
 {
     $params = $token->PropertyParams;
     if ($page->Equals(PageRenderer::Page())) {
         //merge current GET parameters on current page
         $params = array_merge(Request::GetArray(), $params);
     }
     $url = FrontendRouter::PageUrl($page, $params);
     $this->InsertValue($url, $token, $startPos, $endPos);
 }
Example #10
0
 /**
  * Gets the full confirm url with calculated parameters
  * @param Member $member The member
  * @param PageUrl $confirmUrl The confirmation url
  * @return string Returns the url
  */
 public static function CalcUrl(Member $member, PageUrl $confirmUrl)
 {
     $params = array('email' => $member->GetEMail(), 'key' => self::CalcKey($member));
     return FrontendRouter::Url($confirmUrl, $params);
 }
Example #11
0
 /**
  * 
  * @return string
  * @throws \LogicException Raises an error if no different redirect page is found
  */
 private function NextUrl()
 {
     $nextUrl = String::Trim(Request::GetData('nextUrl'));
     if ($nextUrl) {
         return $nextUrl;
     }
     $nextPageUrl = $this->login->GetNextUrl();
     if ($nextPageUrl) {
         return FrontendRouter::Url($nextPageUrl);
     }
     return '';
 }
Example #12
0
 /**
  * Creates a new page url selector
  * @param string $prefix The prefix
  * @param string $label The selector label
  * @param PageUrl $pageUrl The pre-selected page url
  */
 function __construct($prefix, $label = '', PageUrl $pageUrl = null)
 {
     $this->disabledPageIDs = array();
     $this->prefix = $prefix;
     $this->label = $label;
     $this->site = null;
     $this->pageField = Input::Hidden($prefix . 'Page');
     $this->paramsField = Input::Hidden($prefix . 'Params');
     $this->fragmentField = Input::Hidden($prefix . 'Fragment');
     $this->serializer = new ArrayLinesSerializer();
     if ($pageUrl && $pageUrl->Exists()) {
         $this->url = FrontendRouter::Url($pageUrl);
         $this->pageField->SetValue($pageUrl->GetPage()->GetID());
         $list = new PageParamListProvider($pageUrl);
         $this->paramsField->SetValue($this->serializer->ArrayToLines($list->ToArray()));
         $this->fragmentField->SetValue($pageUrl->GetFragment());
     }
 }