Вход Регистрация
Файл: CMS/themes/default/form.php
Строк: 240
<?php

if (!defined('CMS')) { die('Access Denied!'); }

class 
cmsForm {
 
    
// атрибуты класса cmsForm

    
public $uri;
    public 
$action;            # <form action="...">
    
public $method;            # <form method="...">
    
public $version;           # WML, HTML, xHTML
    
public $other;             # <form name="..."> OR <form id="...">
    
public $content  '';
    public 
$contents '';
    public 
$jscript  '';

    function 
__construct($action ''$method 'post'$other '') {

        if (!
defined('VERSION')) {

            
$this->version cmsDetect::getInstance()->choiceVersion();

        }
        else 
$this->version VERSION;

        
$this->uri = !empty($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : 'index.' $this->version;

        if ( empty(
$action) ) {

            
$action str_replace('&''&amp;'$this->uri);
        }

        
$this->method = (strtolower($method) == 'get') ? 'get' 'post';

        if ( 
strcmp($this->method'get') == ) {

            
$action explode('?'$action);
            
$this->action reset($action);

        }
        else 
$this->action $action;

        
$this->other $other;
    }

    private function 
__clone() {}

    public function 
__set($name$value) {

        
$this->$name $value;
    }

    public function 
debug() {

        echo 
'<pre>'print_r($thistrue), '</pre>';
    }

    public function 
isEmpty($var '') {

        if (
$this->method == 'post') {

            return !empty(
$_POST[$var]) ? check($_POST[$var]) : '';
        }
        else {

            return !empty(
$_GET[$var]) ? check($_GET[$var]) : '';
        }
    }

    public function 
addCode($code '') {

        if (
strlen($code) > 0$this->content .= $code;
    }

    public function 
addText($title ''$name$value ''$html '') {

        
$title = !empty($title) ? $title '<br />' '';

        
$this->content .= $title '<input class="f_input" type="text" name="' $name '" value="' $value '"' $html '/><br />';
    }

    public function 
addHidden($name$value ''$html '') {

        
$this->content .= '<input type="hidden" name="' $name '" value="' $value '"' $html '/>';
    }

    public function 
addPassword($title ''$name$value ''$html '') {

        
$title = !empty($title) ? $title '<br />' '';
        
$this->content .= $title '<input class="f_input" type="password" name="' $name '" value="' $value '"' $html '/><br />';
    }

    public function 
addTextarea($title ''$name$value ''$html ''$cols 35$rows 5) {

        
$value = !empty($value) ? check($value) : $this->isEmpty($name);
        
$title = !empty($title) ? $title '<br />' '';

        
$this->content .= $title '<textarea cols="' $cols '" rows="' $rows '" ';
        
$this->content .= 'name="' $name '" class="f_textarea"' $html '>' $value '</textarea><br />';
    }

    public function 
addFile($title ''$name$html '') {

        
$this->other .= ' enctype="multipart/form-data"';
        
$title = !empty($title) ? $title '<br />' '';
        
$this->content .= $title '<input type="file" name="' $name '" class="f_input"' $html '/><br />';
    }

    function 
addSelect($title ''$name$value ''$options$html '') {

        
$title = !empty($title) ? $title '<br />' '';
        
$output $title '<select name="' $name '" class="f_select"' $html '>';

        foreach( 
$options as $key => $val ) {

            
$selected = ( $value == $key ) ? ' selected="selected"' '';

            
$output .= '<option value="' $key '"' $selected '>' $val '</option>';
        }
        
$output .= '</select><br />';
        
$this->content .= $output;
    }

    public function 
addRadio($title ''$name$value ''$options$html '') {

        
$title  = !empty($title) ? $title '<br />' '';
        
$output $title;

        foreach( 
$options as $key => $val ) {

            
$checked = ( $value == $key ) ? ' checked="checked"' '';

            
$output .= '<input type="radio" name="' $name '" value="' $key '"' $checked '> ' $val '<br />';
        }
        
$this->content .= $output;
    }

    public function 
addCheckBox($title ''$name$value ''$true 1$html '') {

        
$checked = ( $value == $true ) ? ' checked="checked"' '';

        if (
is_array($title)) {

            
$left  = !empty($title[0]) ? $title[0] : '';
            
$right = !empty($title[1]) ? $title[1] : '';
        }
        else {

            
$left  = !empty($title) ? $title '';
            
$right '';
        }
        
$this->content .= $left '<input type="checkbox" name="' $name '" value="1" ' $checked '>' $right '<br />';
    }

    public function 
addDate$title ''$name$type$def 1$min_year 1917 ) {

        
$title = !empty($title) ? $title '<br />' '';
        
$str '';
        
$cur_year date'Y' );

        if ( 
$def ) {

           
$def 1;
        }
        if ( 
$type == 'y' && $def == ) {

            
$def 1970;
        }
        switch( 
$type ):
          case 
'd':
            
$i 1;
            for ( ; 
$i <= 31; ++$i) {

                
$sel '';
                if ( 
$i == $def $sel ' selected="selected"';

                
$num $i;
                if ( 
$i 10 $num '0'.$i;

                
$str .= '<option value="' $num '"' $sel '>' $i '</option>';
            }
            
$end '</select>';
          break;
          case 
'm':
            
$i 1;
            for ( ; 
$i <= 12; ++$i) {

                
$sel '';
                if ( 
$i == $def $sel ' selected="selected"';

                
$num $i;
                if ( 
$i 10 $num '0'.$i;

                
$str .= '<option value="' $num '"' $sel '>' $i '</option>';
            }
            
$end '</select>';
          break;
          case 
'y':
            
$i $cur_year;
            for ( ; 
$i >= $min_year; --$i ) {

                
$sel '';
                if ( 
$i == $def $sel ' selected="selected"';

                
$str .= '<option value="' $i '"' $sel '>' $i '</option>';
            }
            
$end '</select><br />';
          break;
        endswitch;
        
$this->content .= $title '<select name="' $name '">' $str $end;
    }

    public function 
addCaptcha($title ''$name$action '?'$html '') {

        global 
$config;

        
$pic_types = array('gif''jpg''png');
        
$pic_type  = !empty($_GET['type']) ? (string) $_GET['type'] : '';
        
$pic_type  in_array($pic_type$pic_types) ? $pic_type 'gif';
        
$pic_links = array();

        for (
$i 0$i count($pic_types); $i++) {

            if( 
$pic_type != $pic_types[$i] ) {

                
$pic_links[] = '<a title="' strtoupper($pic_types[$i]) . '" href="' $action '&amp;type=' $pic_types[$i] . '">' strtoupper($pic_types[$i]) . '</a>';
            }
        }

        
$pic_links implode(', '$pic_links);

        if (!empty(
$_COOKIE['is_js'])) {

            
$this->content .= $title '<br /><span id="cms-captcha"><img src="' $config['site_url'] . '/captcha.jpg" alt="Проверочный код" border="0" /> <a onclick="reload(); return false;" href="#">Обновить</a></span><br />';

            
$this->jscript .= <<<HTML

<script language='javascript' type="text/javascript">
<!--
function reload () {

    var rndval = new Date().getTime(); 

    document.getElementById('cms-captcha').innerHTML = '<img src="
{$config['site_url']}/captcha.jpg?rndval=' + rndval + '" border="0" alt="" /> <a onclick="reload(); return false;" href="#">Обновить</a><br />';

};
//-->
</script>

HTML;
        }
        else {

            
$this->content .= $title '<br /><img src="' $config['site_url'] . '/captcha.' $pic_type '" alt="Проверочный код" /> ' $pic_links '<br />';
        }
        
$this->content .= '<input name="' $name '" type="text" /><br />';
    }

    public function 
Submit($value ''$name ''$class 'btns'$html ''$return false) {

        if ( empty(
$this->content) ) return;

        
$v[] = '<div class="b"><div class="form">';
        
$v[] = '<form action="' $this->action '" method="' $this->method '"' $this->other '>';
        
$v[] = $this->content;
        
$v[] = $this->contents;

        if (
is_array($value) && is_array($name)) {

            for(
$n 0$n count($name); $n++) {

                
$v[] = '<input type="submit" name="' $name[$n] . '" class="' $class '" value="' $value[$n] . '" title=" ' $value[$n] . '"' $html  '/> ';
            }
            
$v[] = '<br />';
        }
        else {

            
$name = !empty($name) ? ' name="' $name '"' '';
 
            
$v[] = '<input type="submit"' $name ' class="' $class '" value="' $value '" title=" ' $value '"' $html  '/>';
            
$v[] = '<br />';
        }
        
$v[] = '</form></div></div>';
        
$v[] = $this->jscript;

        if (!
$return) echo implode('',$v);
        else return 
implode('',$v);
    }

    public function 
Show($return false) {

        
$v[] = $this->content;
        
$v[] = $this->contents;

        if (!
$return) echo implode('',$v);
        else return 
implode('',$v);
    }
}
?>
Онлайн: 1
Реклама