Example #1
0
 /**
  * @param Request $request
  * @return PartialHtmlResponse
  */
 public function run(Request $request)
 {
     $urlBuilder = $this->serviceContainer->getUrlBuilder();
     $editUrl = $this->serviceContainer->getTemplateBuilder()->createTemplate();
     $userUrlLoader = $this->serviceContainer->getUserUrlLoader();
     $csrfHandler = $this->serviceContainer->getCsrfHandler()->createNewToken();
     $url = $userUrlLoader->loadUrl($request->getGetVal('id'));
     if ($url == null) {
         return new PartialHtmlResponse('Sorry, you are not allowed to edit this url.');
     }
     $update_action_url = $urlBuilder->createActionUrl('updateUrl', $request->getGetVal('id'));
     $trash_link = $urlBuilder->createActionUrl('trashUrl', $url->getId(), $csrfHandler->getCurrentToken());
     $editUrl->loadFile('editUrl.html')->addPlaceHolder('form_action', $update_action_url)->addPlaceHolder('url', $url->getUrl())->addPlaceHolder('title', $url->getTitle())->addPlaceHolder('description', $url->getDescription())->addPlaceHolder('trash_link', $trash_link)->addPlaceHolder('list_urls_link', $urlBuilder->createActionUrl('listUrls'))->addCsrfToken($csrfHandler);
     return new PartialHtmlResponse($editUrl->render());
 }
Example #2
0
 /**
  * @param Request $request
  * @return string|null
  */
 private function getTokenFromRequest(Request $request)
 {
     $token = $request->getPostVal($this->tokenFieldName);
     if ($token !== null) {
         return $token;
     }
     return $request->getGetVal($this->tokenFieldName);
 }
Example #3
0
 /**
  * @param Request $request
  * @param int $user_id
  * @return UrlDataObject
  */
 public function mapToDataObject(Request $request, $user_id)
 {
     $urlDataObject = new UrlDataObject();
     $urlDataObject->userId = $user_id;
     $urlDataObject->id = $request->getGetVal('id');
     $urlDataObject->url = $request->getPostVal('url');
     $urlDataObject->title = $request->getPostVal('title');
     $urlDataObject->description = $request->getPostVal('description');
     $urlDataObject->created = $request->getPostVal('created');
     $urlDataObject->updated = $request->getPostVal('update');
     return $urlDataObject;
 }
Example #4
0
 /**
  * Does not feel right yet...
  * @param Request $request
  */
 private function redirectToLoginIfNotLoggedIn(Request $request)
 {
     $userSession = $this->serviceContainer->getUserSession();
     if ($userSession->userIsLoggedIn()) {
         return;
     }
     $actionName = $request->getGetVal('action');
     if ($actionName == 'login' || $actionName == 'performLogin') {
         return;
     }
     $loginUrl = $this->serviceContainer->getUrlBuilder()->createActionUrl('login');
     $redirectResponse = new HttpRedirectResponse($loginUrl);
     // Maybe just make a redirect method which always exits
     $this->handleResponse($redirectResponse);
     exit;
 }