home *** CD-ROM | disk | FTP | other *** search
/ Cricao de Sites - 650 Layouts Prontos / WebMasters.iso / CMS / xoops-2.0.18.1.exe / xoops-2.0.18.1 / htdocs / class / xoopsform / formpassword.php < prev    next >
Encoding:
PHP Script  |  2007-12-08  |  4.5 KB  |  140 lines

  1. <?php
  2. // $Id: formpassword.php 1158 2007-12-08 06:24:20Z phppp $
  3. //  ------------------------------------------------------------------------ //
  4. //                XOOPS - PHP Content Management System                      //
  5. //                    Copyright (c) 2000 XOOPS.org                           //
  6. //                       <http://www.xoops.org/>                             //
  7. //  ------------------------------------------------------------------------ //
  8. //  This program is free software; you can redistribute it and/or modify     //
  9. //  it under the terms of the GNU General Public License as published by     //
  10. //  the Free Software Foundation; either version 2 of the License, or        //
  11. //  (at your option) any later version.                                      //
  12. //                                                                           //
  13. //  You may not change or alter any portion of this comment or credits       //
  14. //  of supporting developers from this source code or any supporting         //
  15. //  source code which is considered copyrighted (c) material of the          //
  16. //  original comment or credit authors.                                      //
  17. //                                                                           //
  18. //  This program is distributed in the hope that it will be useful,          //
  19. //  but WITHOUT ANY WARRANTY; without even the implied warranty of           //
  20. //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            //
  21. //  GNU General Public License for more details.                             //
  22. //                                                                           //
  23. //  You should have received a copy of the GNU General Public License        //
  24. //  along with this program; if not, write to the Free Software              //
  25. //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA //
  26. //  ------------------------------------------------------------------------ //
  27. // Author: Kazumi Ono (AKA onokazu)                                          //
  28. // URL: http://www.myweb.ne.jp/, http://www.xoops.org/, http://jp.xoops.org/ //
  29. // Project: The XOOPS Project                                                //
  30. // ------------------------------------------------------------------------- //
  31. if (!defined('XOOPS_ROOT_PATH')) {
  32.     die("XOOPS root path not defined");
  33. }
  34. /**
  35.  * 
  36.  * 
  37.  * @package     kernel
  38.  * @subpackage  form
  39.  * 
  40.  * @author        Kazumi Ono    <onokazu@xoops.org>
  41.  * @copyright    copyright (c) 2000-2003 XOOPS.org
  42.  */
  43. /**
  44.  * A password field
  45.  * 
  46.  * @author    Kazumi Ono    <onokazu@xoops.org>
  47.  * @copyright    copyright (c) 2000-2003 XOOPS.org
  48.  * 
  49.  * @package     kernel
  50.  * @subpackage  form
  51.  */
  52. class XoopsFormPassword extends XoopsFormElement {
  53.  
  54.     /**
  55.      * Size of the field.
  56.      * @var    int    
  57.      * @access    private
  58.      */
  59.     var $_size;
  60.  
  61.     /**
  62.      * Maximum length of the text
  63.      * @var    int    
  64.      * @access    private
  65.      */
  66.     var $_maxlength;
  67.  
  68.     /**
  69.      * Initial content of the field.
  70.      * @var    string    
  71.      * @access    private
  72.      */
  73.     var $_value;
  74.  
  75.     /**
  76.      * Constructor
  77.      * 
  78.      * @param    string    $caption    Caption
  79.      * @param    string    $name        "name" attribute
  80.      * @param    int        $size        Size of the field
  81.      * @param    int        $maxlength    Maximum length of the text
  82.      * @param    int        $value        Initial value of the field. 
  83.      *                                 <b>Warning:</b> this is readable in cleartext in the page's source!
  84.      */
  85.     function XoopsFormPassword($caption, $name, $size, $maxlength, $value = ""){
  86.         $this->setCaption($caption);
  87.         $this->setName($name);
  88.         $this->_size = intval($size);
  89.         $this->_maxlength = intval($maxlength);
  90.         $this->setValue($value);
  91.     }
  92.  
  93.     /**
  94.      * Get the field size
  95.      * 
  96.      * @return    int
  97.      */
  98.     function getSize(){
  99.         return $this->_size;
  100.     }
  101.  
  102.     /**
  103.      * Get the max length
  104.      * 
  105.      * @return    int
  106.      */
  107.     function getMaxlength() {
  108.         return $this->_maxlength;
  109.     }
  110.  
  111.     /**
  112.      * Get the "value" attribute
  113.      * 
  114.      * @param    bool    $encode To sanitizer the text?
  115.      * @return    string
  116.      */
  117.     function getValue($encode = false) {
  118.         return $encode ? htmlspecialchars($this->_value, ENT_QUOTES) : $this->_value;
  119.     }
  120.  
  121.     /**
  122.      * Set the initial value
  123.      * 
  124.      * @patam    $value    string
  125.      */
  126.     function setValue($value) {
  127.         $this->_value = $value;
  128.     }
  129.  
  130.     /**
  131.      * Prepare HTML for output
  132.      * 
  133.      * @return    string    HTML
  134.      */
  135.     function render() {
  136.         $ele_name = $this->getName();
  137.         return "<input type='password' name='".$ele_name."' id='".$ele_name."' size='".$this->getSize()."' maxlength='".$this->getMaxlength()."' value='".$this->getValue()."'".$this->getExtra()." />";
  138.     }
  139. }
  140. ?>