Source for file request.php

Documentation is available at request.php

  1. <?php
  2.  
  3.  
  4. /**
  5.  * Project:     deskweb - the dekstop manager for web <br />
  6.  * 
  7.  * This library is free software; you can redistribute it and/or
  8.  * modify it under the terms of the GNU Lesser General Public
  9.  * License as published by the Free Software Foundation; either
  10.  * version 2.1 of the License, or (at your option) any later version.
  11.  *
  12.  * This library is distributed in the hope that it will be useful,
  13.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  15.  * Lesser General Public License for more details.
  16.  *
  17.  * You should have received a copy of the GNU Lesser General Public
  18.  * License along with this library; if not, write to the Free Software
  19.  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  20.  *
  21.  * You may contact the authors of Deskweb by emial at: <br />
  22.  * io@maxb.net <br />
  23.  *
  24.  * Or, write to: <br />
  25.  * Massimiliano Balestrieri <br />
  26.  * Via Casalis 9 <br />
  27.  * 10143 Torino <br />
  28.  * Italy <br />
  29.  *
  30.  * The latest version of deskweb can be obtained from: <br />
  31.  * http://www.deskweb.org/ <br />
  32.  *
  33.  * @link http://www.deskweb.org/
  34.  * @author Massimiliano Balestrieri <io@maxb.net>
  35.  * @version 0.1
  36.  * @copyright 2005-2006 Massimiliano Balestrieri.
  37.  * @package Core
  38.  */
  39.  
  40. /**
  41.  * classe Request di deskweb
  42.  */
  43. class RequestDeskWeb {
  44.  
  45.     /**
  46.      * id della sezione di deskweb
  47.      */
  48.     var $id = null;
  49.     /**
  50.      * desktop
  51.      */
  52.     var $desktop = null;
  53.     /**
  54.      * logout
  55.      */
  56.     var $logout = null;
  57.     /**
  58.      * action
  59.      */
  60.     var $action = null;
  61.     /**
  62.      * nautilus action
  63.      */
  64.     var $n = null;
  65.     /**
  66.      * nano action
  67.      */
  68.     var $w = null;
  69.     /**
  70.      * dweditor action
  71.      */
  72.     var $p = null;
  73.     /**
  74.      * array contenente POST non filtrato
  75.      */
  76.     var $richform = array ();
  77.     /**
  78.      * array contenente POST
  79.      */
  80.     var $form = array ();
  81.     /**
  82.      * class constructor
  83.      * assegna alle proprietà della classe i valori passati via GET o POST
  84.      */
  85.     function RequestDeskWeb({
  86.  
  87.         //check logout
  88.         $this->_checkGet('logout');
  89.         //check sezione
  90.         $this->_checkGet('id');
  91.         //check sezione
  92.         $this->_checkGet('desktop');
  93.         //check action
  94.         $this->_checkGet('action');
  95.  
  96.         //check n
  97.         $this->_checkGet('n');
  98.         //check w
  99.         $this->_checkGet('w');
  100.         //check w
  101.         $this->_checkGet('p');
  102.         // action annulla
  103.  
  104.         if (isset ($_POST)) {
  105.             $this->richform = $_POST;
  106.             $this->form = $this->_array_htmlentities($_POST);
  107.         }
  108.         //annulla
  109.  
  110.         if ($this->action == "0"{
  111.             header("location:".MAIN);
  112.         }
  113.  
  114.         //ajax actions
  115.         if (isset ($_GET['ajax'])) {
  116.             switch ($_GET['action']{
  117.                 case 'REGISTER_WIN' :
  118.                     global $session;
  119.                     $properties $this->_getWindowProperties();
  120.                     $session->ajaxRegisterWindowProperties($properties);
  121.                     break;
  122.             }
  123.  
  124.         }
  125.  
  126.     }
  127.  
  128.     /**
  129.      * recupera i permessi di un elemento creato
  130.      * todo:
  131.      * delegare alle singole applicazioni ?
  132.      */
  133.     function recuperaPermessi({
  134.         $permessi null;
  135.         if (isset ($this->form['R']))
  136.             $permessi $this->_checkPermessi($this->form['R']);
  137.         else
  138.             $permessi "-";
  139.  
  140.         if (isset ($this->form['W']))
  141.             $permessi .= $this->_checkPermessi($this->form['W']);
  142.         else
  143.             $permessi .= "-";
  144.  
  145.         if (isset ($this->form['X']))
  146.             $permessi .= $this->_checkPermessi($this->form['X']);
  147.         else
  148.             $permessi .= "-";
  149.         return $permessi;
  150.     }
  151.  
  152.     /**
  153.      * sostituisce "-" se il permesso non viene trovato
  154.      */
  155.     function _getWindowProperties({
  156.         $winprop array ('desktop' => $_GET['desktop']'id' => $_GET['win_id']'left' => $_GET['win_left']'top' => $_GET['win_top']'width' => $_GET['win_width']'height' => $_GET['win_height']'z' => $_GET['win_z']);
  157.         //$this->_array_str_replace("px","",$winprop);
  158.         return $winprop;
  159.     }
  160.     function _checkPermessi($dato{
  161.         if (isset ($dato))
  162.             return $dato;
  163.         else
  164.             return "-";
  165.     }
  166.     function _checkGet($var{
  167.         if (isset ($_GET[$var]))
  168.             $this-> $var $_GET[$var];
  169.  
  170.     }
  171.     function _checkPost($var{
  172.         if (isset ($_POST[$var]))
  173.             $this-> $var $_POST[$var];
  174.  
  175.     }
  176.     /**
  177.      * parsa la richiesta e codifica l'html per impedire l'uso di tag
  178.      */
  179.     function _array_htmlentities($elem{
  180.         if (!is_array($elem)) {
  181.             $elem htmlentities($elem);
  182.         else {
  183.             foreach ($elem as $key => $value)
  184.                 $elem[$key$this->_array_htmlentities($value);
  185.         }
  186.         return $elem;
  187.     }
  188.     /**
  189.      * parsa la richiesta e codifica l'html per impedire l'uso di tag
  190.      */
  191.     function _array_str_replace($search$replace$elem{
  192.         if (!is_array($elem)) {
  193.             $elem str_replace($search$replace$elem);
  194.         else {
  195.             foreach ($elem as $key => $value)
  196.                 $elem[$key$this->_array_str_replace($search$replace$value);
  197.         }
  198.         return $elem;
  199.     }
  200. }
  201. ?>

Documentation generated on Sun, 18 Jun 2006 23:16:57 +0200 by phpDocumentor 1.3.0RC6