Example #1
0
 public function getRequestParameters()
 {
     if ($this->request->isPost()) {
         return $this->request->getPost();
     } else {
         return $this->request->getQuery();
     }
 }
 public function addAction()
 {
     $form = new Front_Form_Contact();
     if ($this->_request->isPost()) {
         $data = $this->_request->getPost();
         if ($form->isValid($data)) {
             $dataFiltrees = $form->getValues();
             $contact = new Application_Model_Contact();
             $contact->setPrenom($dataFiltrees['prenom'])->setNom($dataFiltrees['nom'])->setEmail($dataFiltrees['email'])->setTelephone($dataFiltrees['telephone']);
             $this->mapper->insert($contact);
             $this->_flashMessenger->addMessage('Le contact ' . $contact->getPrenom() . ' a bien été créé');
             $this->_redirector->gotoRouteAndExit(['controller' => 'contact'], null, true);
         }
     }
     $this->view->contactForm = $form;
 }
Example #3
0
 /**
  * @access public
  * @param  string  $key     Key to search for in $_POST
  * @param  mixed   $default Default value if $key is not found $_POST
  * @param  integer $filter  Filter definition
  * @param  array   $options Filter configuration
  * @return mixed
  */
 public function getPost($key = null, $default = null, $filter = null, array $options = null)
 {
     $value = parent::getPost($key, $default);
     if ($filter !== null || $options !== null) {
         $value = $this->_filter($value, $default, $filter, $options);
     }
     return $value;
 }
Example #4
0
 public function testGetPost()
 {
     $_POST['post1'] = 'val1';
     $this->assertEquals('val1', $this->_request->getPost('post1'));
     $this->assertEquals('foo', $this->_request->getPost('BAR', 'foo'));
     $_POST['post2'] = 'val2';
     $expected = array('post1' => 'val1', 'post2' => 'val2');
     $this->assertEquals($expected, $this->_request->getPost());
 }
Example #5
0
 public function getPost($k = null, $default = null)
 {
     if (in_array('vars', $this->getParamSources())) {
         if (!$this->isPost()) {
             return $k === null ? array() : null;
         }
         if ($k === null) {
             return $this->_vars;
         } else {
             return isset($this->_vars[$k]) ? $this->_vars[$k] : $default;
         }
     }
     return parent::getPost($k, $default);
 }
Example #6
0
 /**
  * Implements {@link iPMS_Widget_Interface::widget()}
  *
  * @param Zend_Controller_Request_Http $request
  * @return Zend_Form|null A Zend_Form instance or null if user is already authenticated
  */
 public function widget(Zend_Controller_Request_Http $request)
 {
     $auh = Zend_Auth::getInstance();
     if (!$auh->hasIdentity()) {
         $form = $this->getForm('loginForm');
         if ($request->isPost() && is_array($request->getPost('loginForm')) && $form->isValid($request->getPost('loginForm'))) {
             $authDbAdapter = new Zend_Auth_Adapter_DbTable(null, 'users', 'username', 'password', 'MD5(?) AND active = 1');
             $authDbAdapter->setIdentity($form->getValue('username'))->setCredential($form->getValue('password'));
             $result = $authDbAdapter->authenticate();
             if ($result->isValid()) {
                 $auh->getStorage()->write($authDbAdapter->getResultRowObject(null, 'password'));
                 Zend_Session::regenerateId();
                 // Protection against session's fixation attacks
                 /**
                  * @var $redirector Zend_Controller_Action_Helper_Redirector
                  */
                 $redirector = Zend_Controller_Action_HelperBroker::getStaticHelper('redirector');
                 $redirector->gotoUrl('/');
             }
         }
         return $form;
     }
     return null;
 }
Example #7
0
 /**
  * Rewritten function of the standard controller. Tries to match the pathinfo on url parameters.
  *
  * @see Mage_Core_Controller_Varien_Router_Standard::match()
  *
  * @param Zend_Controller_Request_Http $request The http request object that needs to be mapped on Action
  *                                              Controllers.
  */
 public function match(Zend_Controller_Request_Http $request)
 {
     if (!Mage::isInstalled()) {
         Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('install'))->sendResponse();
         exit;
     }
     $identifier = trim($request->getPathInfo(), '/');
     //URL Search after habbeda
     $url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
     //$identifier = trim($request->getPathInfo(), '/');
     if (strpos($url, "/alle/") <= 0 && strpos($url, "/all/") <= 0) {
         return false;
     }
     // if successfully gained url parameters, use them and dispatch ActionController action
     $request->setRouteName('landingpagesaa')->setModuleName('landingpagesaa')->setControllerName('index')->setActionName('index');
     //->setParam('test', "test");
     $urlpara = explode("/filter/", $url);
     if (!empty($urlpara[1])) {
         $urlparas = explode("?", $urlpara[1]);
         // Parse url params
         $params = explode('/', trim($urlparas[0], '/'));
         $layerParams = array();
         $total = count($params);
         for ($i = 0; $i < $total - 1; $i++) {
             if (isset($params[$i + 1])) {
                 $layerParams[$params[$i]] = urldecode($params[$i + 1]);
                 ++$i;
             }
         }
         // Add post params to parsed ones from url
         // Usefull to easily override params
         $layerParams += $request->getPost();
         // Add params to request
         $request->setParams($layerParams);
         // Save params in registry - used later to generate links
         Mage::register('layer_params', $layerParams);
     }
     $request->setRequestUri($url);
     $request->setAlias(Mage_Core_Model_Url_Rewrite::REWRITE_REQUEST_PATH_ALIAS, $identifier);
     return true;
 }
 public function editAction()
 {
     $itemId = $this->_request->getParam('id');
     if (is_null($itemId)) {
         $this->getRedirector()->gotoSimpleAndExit('index');
     }
     $page = $this->getModelMapper()->find($itemId, $this->getModel());
     if (is_null($page)) {
         throw new Zend_Controller_Action_Exception("Страница не найдена", 404);
     }
     //$this->view->item = $page;
     $form = $this->getForm('edit');
     $form->addElement('hidden', 'currentUrl');
     $element = $form->getElement('currentUrl');
     $element->setValue($this->_hostHttp->getServer('REQUEST_URI'));
     $form->getDisplayGroup('basic')->addElement($element);
     $dataPage = $page->getOptions();
     foreach ($dataPage as $key => $value) {
         $form->setDefault($key, $value);
     }
     foreach ($form->getElements() as $key => $element) {
         if ($element instanceof Zend_Form_Element_Image) {
             $imageValue = $form->getValue($element->getAttrib('data-input')) != '' ? $form->getValue($element->getAttrib('data-input')) : '/files/images/product/2012-05-22_foto_nv.jpg';
             $form->setDefault($element->getName(), $imageValue);
         }
     }
     if ($this->_hostHttp->isPost()) {
         if ($form->isValid($this->_hostHttp->getPost())) {
             $this->saveFormData($form);
             $this->clearCache($this->_getNamespace());
             $this->getRedirector()->gotoUrlAndExit($this->_request->getParam('currentUrl'));
         }
         $form->setDefaults($form->getValues());
     }
     $colsTable = $this->getModelMapper()->getDbTable()->info('cols');
     $uri = in_array('full_path', $colsTable) ? $page->getFullPath() : $page->getPath();
     $config = array(Zend_Navigation_Page_Mvc::factory(array('label' => 'На сайт', 'uri' => '/' . strtolower($this->getNameModule()) . '/' . $uri . '/')));
     $containerNav = new Zend_Navigation($config);
     $this->view->assign(array('item' => $page, 'form' => $form, 'container_nav' => $containerNav));
 }
Example #9
0
 /**
  * Auto-redirect to base url (without SID) if the requested url doesn't match it.
  * By default this feature is enabled in configuration.
  *
  * @param Zend_Controller_Request_Http $request
  */
 protected function _checkBaseUrl($request)
 {
     if (!Mage::isInstalled() || $request->getPost()) {
         return;
     }
     if (!Mage::getStoreConfig('web/url/redirect_to_base')) {
         return;
     }
     $adminPath = (string) Mage::getConfig()->getNode(Mage_Adminhtml_Helper_Data::XML_PATH_CUSTOM_ADMIN_PATH);
     if (!$adminPath) {
         $adminPath = (string) Mage::getConfig()->getNode(Mage_Adminhtml_Helper_Data::XML_PATH_ADMINHTML_ROUTER_FRONTNAME);
     }
     if (preg_match('#^' . $adminPath . '(\\/.*)?$#', ltrim($request->getPathInfo(), '/')) && (string) Mage::getConfig()->getNode(Mage_Adminhtml_Helper_Data::XML_PATH_USE_CUSTOM_ADMIN_URL)) {
         return;
     }
     $baseUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB, Mage::app()->getStore()->isCurrentlySecure());
     if (!$baseUrl) {
         return;
     }
     $redirectCode = 302;
     if (Mage::getStoreConfig('web/url/redirect_to_base') == 301) {
         $redirectCode = 301;
     }
     $uri = @parse_url($baseUrl);
     $host = isset($uri['host']) ? $uri['host'] : '';
     $path = isset($uri['path']) ? $uri['path'] : '';
     $requestUri = $request->getRequestUri() ? $request->getRequestUri() : '/';
     if ($host && $host != $request->getHttpHost() || $path && strpos($requestUri, $path) === false) {
         Mage::app()->getFrontController()->getResponse()->setRedirect($baseUrl, $redirectCode)->sendResponse();
         exit;
     }
 }
Example #10
0
 /**
  * Auto-redirect to base url (without SID) if the requested url doesn't match it.
  * By default this feature is enabled in configuration.
  *
  * @param Zend_Controller_Request_Http $request
  */
 protected function _checkBaseUrl($request)
 {
     if (!Mage::isInstalled() || $request->getPost()) {
         return;
     }
     if (!Mage::getStoreConfig('web/url/redirect_to_base')) {
         return;
     }
     $baseUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB, Mage::app()->getStore()->isCurrentlySecure());
     if (!$baseUrl) {
         return;
     }
     $redirectCode = 302;
     if (Mage::getStoreConfig('web/url/redirect_to_base') == 301) {
         $redirectCode = 301;
     }
     $uri = @parse_url($baseUrl);
     $host = isset($uri['host']) ? $uri['host'] : '';
     $path = isset($uri['path']) ? $uri['path'] : '';
     $requestUri = $request->getRequestUri() ? $request->getRequestUri() : '/';
     if ($host && $host != $request->getHttpHost() || $path && strpos($requestUri, $path) === false) {
         Mage::app()->getFrontController()->getResponse()->setRedirect($baseUrl, $redirectCode)->sendResponse();
         exit;
     }
 }
Example #11
0
 public function getRawPost($key = null, $default = null)
 {
     return parent::getPost($key = null, $default = null);
 }
Example #12
0
 /**
  * Ustawia wartosci filtrow
  *
  * Jezeli dostarczono parametry filtrow poprzez POST, zostaja one walidowane
  * poprzez formularz. Jezeli nie bedzie bledow, dane zostana zapisane
  * w tablicy filtrow oraz przekazane do formularza filtrow.
  *
  * @param Zend_Controller_Request_Http $request
  * @throws Logic_Search_Exception
  * @return Logic_Search_Abstract
  */
 public function setFilterData(Zend_Controller_Request_Http $request)
 {
     if (!is_object($this->_form)) {
         throw new Logic_Search_Exception('Nie ustanowiono obiektu formularza filtrow');
     }
     $values = $request->getPost();
     unset($values['ids']);
     if (!empty($values)) {
         if ($this->_form->isValid($values)) {
             $this->saveFilterData($this->_form->getValues());
         }
     }
     $this->_form->setDefaults($this->getFilterData());
     return $this;
 }
Example #13
0
 /**
  * Check that request uses https protocol if it should.
  * Function redirects user to correct URL if needed.
  *
  * @param Zend_Controller_Request_Http $request
  * @param string $path
  * @return void
  */
 protected function _checkShouldBeSecure(Zend_Controller_Request_Http $request, $path = '')
 {
     if (!Mage::isInstalled() || $request->getPost()) {
         return;
     }
     if ($this->_shouldBeSecure($path) && !$request->isSecure()) {
         $url = $this->_getCurrentSecureUrl($request);
         if ($this->_shouldRedirectToSecure()) {
             $url = Mage::getSingleton('Mage_Core_Model_Url')->getRedirectUrl($url);
         }
         Mage::app()->getFrontController()->getResponse()->setRedirect($url)->sendResponse();
         exit;
     }
 }
Example #14
0
 /**
  * 
  * @param \Zend_Controller_Request_Http $request
  * @return booloean
  */
 private function __saveEmployee($request)
 {
     $employee = new Employee_Model_Employee($request->getPost());
     $empoyeeMapper = new Employee_Model_EmployeeMapper();
     return $empoyeeMapper->save($employee);
 }
Example #15
0
 /**
  * Merge session value and post value
  *
  * @param  array $names Value to merge
  * @param  mixed $namespace Session namespace
  * @access protected
  * @return array Merged param value
  */
 protected function _mergeValue(array $names, $namespace)
 {
     $session = new Zend_Session_Namespace($namespace);
     $params = array();
     foreach ($names as $key => $val) {
         $params[$val] = $this->_request->getPost($val);
     }
     if (isset($session->params)) {
         $params = array_merge($session->params, $params);
     }
     return $params;
 }
<?php

ini_set('include_path', ini_get('include_path') . PATH_SEPARATOR . '/path/to/zend/library');
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();
$request = new Zend_Controller_Request_Http();
$view = new Zend_View();
/**
 * Example showing usage of array notation using setElementsBelongTo
 * on the form level, for shipping/billing addresses.
 */
$form = new Zend_Form();
$form->setView($view);
$form->addDecorator('Description', array('escape' => false, 'placement' => 'PREPEND'));
$form->setDescription('<h3>Using setElementsBelongTo</h3>');
$form->setElementsBelongTo('shipping');
$form->addElement('text', 'recipient', array('label' => 'Ship to', 'required' => true));
$form->addElement('text', 'address', array('label' => 'Address', 'required' => true));
$form->addElement('submit', 'submit', array('label' => 'Submit'));
if ($request->isPost()) {
    if ($form->isValid($request->getPost())) {
        echo 'Order placed, Thank you!';
    } else {
        echo 'You have errors in your form, please check';
    }
}
echo $form->render();
Example #17
0
    /**
     * WordPress admin_menu hook
     * Initializes an admin panel from a Zend_Form object and injects it into
     * WordPress.
     *
     * @return  Zend
     */
    public function onAdminMenu()
    {
        if ($form = $this->bootstrap('admin')->getResource('admin')) {
            $frontController = $this->bootstrap('frontController')
                                    ->getResource('frontController');
            $request         = new Zend_Controller_Request_Http();

            $view = new Vulnero_Admin_View();
            $view->form = $form;

            if ($request->isPost() && $form->isValid($request->getPost())) {
                // handle save
            }

            add_options_page(
                'Vulnero Title',        // Title
                'Vulnero Menu Title',   // Menu Title
                'manage_options',       // WordPress Access Level
                'vulnero',              // Plugin Name
                array($view, 'renderWordPress')
            );
        }
    }
Example #18
0
// setup the form
$form = new Zend_Form();
$form->setMethod("post");
$form->setAttrib("enctype", Zend_Form::ENCTYPE_MULTIPART);
// file element, upload is optional, but if file is uploaded run multiple validators
$file1 = $form->createElement("file", "file1");
$file1->setRequired(false)->setLabel("File:")->addValidator('Count', true, 2)->addValidator('Size', true, "100KB")->addValidator('Extension', true, 'jpg')->addValidator('MimeType', true, array('image/jpeg'))->addValidator('ImageSize', true, array(0, 0, 340, 480));
// add another file element with same validators
$file2 = clone $file1;
$file2->setName("file2");
$submit = $form->createElement("submit", "submit");
$submit->setLabel("GO!");
$form->addElements(array($file1, $file2, $submit));
// check the form
if ($request->isPost()) {
    $formData = $request->getPost();
    if ($form->isValid($formData)) {
        echo "FORM VALID";
    } else {
        print_r($form->getMessages());
    }
}
?>
<html>
<head>
<title>Test</title>
</head>
<body>
<?php 
echo $form->render(new Zend_View());
?>
Example #19
0
 /**
  * Auto-redirect to base url (without SID) if the requested url doesn't match it.
  * By default this feature is enabled in configuration.
  *
  * @param Zend_Controller_Request_Http $request
  */
 protected function _checkBaseUrl($request)
 {
     if (!Mage::isInstalled() || $request->getPost() || strtolower($request->getMethod()) == 'post') {
         return;
     }
     $redirectCode = (int) Mage::getStoreConfig('web/url/redirect_to_base');
     if (!$redirectCode) {
         return;
     } elseif ($redirectCode != 301) {
         $redirectCode = 302;
     }
     if ($this->_isAdminFrontNameMatched($request)) {
         return;
     }
     $baseUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB, Mage::app()->getStore()->isCurrentlySecure());
     if (!$baseUrl) {
         return;
     }
     $uri = @parse_url($baseUrl);
     $requestUri = $request->getRequestUri() ? $request->getRequestUri() : '/';
     if (isset($uri['scheme']) && $uri['scheme'] != $request->getScheme() || isset($uri['host']) && $uri['host'] != $request->getHttpHost() || isset($uri['path']) && strpos($requestUri, $uri['path']) === false) {
         Mage::app()->getFrontController()->getResponse()->setRedirect($baseUrl, $redirectCode)->sendResponse();
         exit;
     }
 }
Example #20
0
 public function match(Zend_Controller_Request_Http $request)
 {
     $this->fetchDefault();
     $front = $this->getFront();
     $p = explode('/', trim($request->getPathInfo(), '/'));
     // get module name
     if ($request->getModuleName()) {
         $module = $request->getModuleName();
     } else {
         $p = explode('/', trim($request->getPathInfo(), '/'));
         $module = !empty($p[0]) ? $p[0] : $this->getFront()->getDefault('module');
     }
     if (!$module) {
         return false;
     }
     $realModule = $this->getModuleByFrontName($module);
     if (!$realModule) {
         if ($moduleFrontName = array_search($module, $this->_modules)) {
             $realModule = $module;
             $module = $moduleFrontName;
         } else {
             return false;
         }
     }
     // get controller name
     if ($request->getControllerName()) {
         $controller = $request->getControllerName();
     } else {
         $controller = !empty($p[1]) ? $p[1] : $front->getDefault('controller');
     }
     $controllerFileName = $this->getControllerFileName($realModule, $controller);
     if (!$controllerFileName || !is_readable($controllerFileName)) {
         return false;
     }
     $controllerClassName = $this->getControllerClassName($realModule, $controller);
     if (!$controllerClassName) {
         return false;
     }
     // get action name
     if (empty($action)) {
         if ($request->getActionName()) {
             $action = $request->getActionName();
         } else {
             $action = !empty($p[2]) ? $p[2] : $front->getDefault('action');
         }
     }
     if (Mage::app()->isInstalled() && !$request->getPost()) {
         $shouldBeSecure = substr(Mage::getStoreConfig('web/unsecure/base_url'), 0, 5) === 'https' || Mage::getStoreConfigFlag('web/secure/use_in_frontend') && substr(Mage::getStoreConfig('web/secure/base_url'), 0, 5) == 'https' && Mage::getConfig()->shouldUrlBeSecure('/' . $module . '/' . $controller . '/' . $action);
         if ($shouldBeSecure && !Mage::app()->getStore()->isCurrentlySecure()) {
             $url = Mage::getBaseUrl('link', true) . ltrim($request->getPathInfo(), '/');
             Mage::app()->getFrontController()->getResponse()->setRedirect($url)->sendResponse();
             exit;
         }
     }
     // include controller file if needed
     if (!class_exists($controllerClassName, false)) {
         include $controllerFileName;
         if (!class_exists($controllerClassName)) {
             throw Mage::exception('Mage_Core', Mage::helper('core')->__('Controller file was loaded but class does not exist'));
         }
     }
     // instantiate controller class
     $controllerInstance = new $controllerClassName($request, $front->getResponse());
     if (!$controllerInstance->hasAction($action)) {
         return false;
     }
     // set values only after all the checks are done
     $request->setModuleName($module);
     $request->setControllerName($controller);
     $request->setActionName($action);
     // set parameters from pathinfo
     for ($i = 3, $l = sizeof($p); $i < $l; $i += 2) {
         $request->setParam($p[$i], isset($p[$i + 1]) ? $p[$i + 1] : '');
     }
     // dispatch action
     $request->setDispatched(true);
     $controllerInstance->dispatch($action);
     return true;
     #$request->isDispatched();
 }