Просмотр файла 2/3020.ru/system/PHP-classes/HTML.class.php

Размер файла: 5.82Kb
<?php

/*
----------------------------------------
Kласс для работы с HTML структурой сайта
----------------------------------------
*/
  
CLASS HTML {
  
  /*
  ---------------
  Выбор вариантов
  ---------------
  */
  
  PUBLIC STATIC FUNCTION SELECT($name, $param, $text = NULL, $class = 'form-control-select'){
    
    //$name - имя для POST передачи
    //$text - описание
    //$class - стиль
    //$param - параметры массива
    
    ECHO "<b>".LG($text).":</b><br />";    
    ECHO "<select name='".$name."' class='".$class."'>";
    
    FOREACH ($param AS $position) {
      
      IF ($position[2] != NULL){
        
        $selected = ($position[2] ?" selected='selected'":NULL);
        
      }ELSE{
        
        $selected = NULL;
        
      }
      
      ECHO "<option value='".$position[0]."' ".$selected.">".LG($position[1])."</option>";
      
    }
    
    ECHO "</select><br /><br />";
    
  }
  
  /*
  -------
  Чекбокс
  -------
  */
  
  PUBLIC STATIC FUNCTION CHECKBOX($name, $text = NULL, $value = NULL, $checked = NULL){
    
    //$name - имя чекбокса для POST передачи
    //$text - описание чекбокса
    //$value - параметр передачи в POST
    //$checked - преопределенный параметр
    
    IF ($checked != NULL){
      
      $cdata = ($checked?" checked='checked'" : NULL);
      
    }ELSE{
      
      $cdata = NULL;
      
    }
    
    ECHO "<label class='custom-checkbox'><input type='checkbox' name='".$name."' value='".$value."' ".$cdata."><span>".LG($text)."</span></label><br /><br />";
    
  }
  
  /*
  -----
  Радио
  -----
  */
  
  PUBLIC STATIC FUNCTION RADIO($name, $text = NULL, $value = NULL, $checked = NULL){
    
    //$name - имя для POST передачи
    //$text - описание
    //$value - параметр передачи в POST
    //$checked - преопределенный параметр
    
    IF ($checked != NULL){
      
      $cdata = ($checked?" checked='checked'" : NULL);
      
    }ELSE{
      
      $cdata = NULL;
      
    }
    
    ECHO "<label class='custom-radio'><input type='radio' name='".$name."' value='".$value."' ".$cdata."><span>".LG($text)."</span></label><br /><br />";
    
  }
  
  /*
  -----------------------------
  Форма добавления комментариев
  -----------------------------
  */
  
  PUBLIC STATIC FUNCTION COMMENT($name, $action, $text, $type){
    
    //$name - имя POST параметра
    //$action - Ссылка обработки запроса
    //$text - текст внутри окна
    //$type - тип
    
    GLOBAL $user, $token_id, $token_value;
    
    REQUIRE (ROOT.'/system/PHP-classes/comments/form.php');
  
  }

  /*
  ------------------
  Заголовок страницы
  ------------------
  */

  STATIC FUNCTION TITLE($text) {
    
    GLOBAL $config;
    
    $config['TITLE'] = LG($text);
    
  }
  
  /*
  ---------------
  Пустое значение
  ---------------
  */
  
  STATIC FUNCTION EMPTY() {
    
    ECHO "<div class='list'><i class='fa fa-sticky-note-o fa-fw'></i> ".LG('Пока пусто')."</div>";
      
  }
  
  /*
  -----------------
  Окно ввода текста 
  -----------------
  */
  
  STATIC FUNCTION TEXTAREA($text = NULL, $name = NULL, $placeholder = NULL, $title = NULL, $class = 'form-control-100', $rows = 5) {
    
    //$placeholder - описание внутри поля
    //$name - имя для передачи в POST
    //$title - описание поля
    //$text - текст поля
    //$class - стиль поля
    //$rows - высота поля
    
    IF ($title > NULL){
      
      ECHO "<b>".LG($title).":</b><br />";
      
    }
    
    REQUIRE (ROOT.'/system/connections/bb_textarea.php');
    
    ECHO "<textarea id='count_char_textarea' name='$name' rows='$rows' placeholder='".LG($placeholder)."' class='$class'>".$text."</textarea><br />";
    
  }
  
  /*
  -----------------
  Окно ввода данных 
  -----------------
  */

  STATIC FUNCTION INPUT($name, $placeholder = NULL, $title = NULL, $length = NULL, $value = NULL, $class = 'form-control-100', $type = 'text', $data = NULL) {
    
    //$placeholder - описание внутри поля
    //$name - имя для передачи в POST
    //$title - описание поля
    //$length - максимальное количество вводимых в поле символов
    //$value - введенный в поле текст по умолчанию
    //$class - стиль поля
    //$type - тип поля
    //$data - дополнительные атрибуты
    
    IF ($title > NULL){
      
      ECHO "<b>".LG($title).":</b><br />";
      
    }  
      
    ECHO "<input name='$name' maxlength='$length' length='$length' type='$type' value='$value' placeholder='".LG($placeholder)."' class='$class' ".$data."><br />";
    
    IF ($type != 'submit'){
      
      ECHO "<br />";
      
    }
    
  }
  
  /*
  ----------------------
  Кнопка отправки данных 
  ----------------------
  */
  
  STATIC FUNCTION BUTTON($class = NULL, $name = NULL, $icon = null, $title = NULL) {
    
    GLOBAL $token_id, $token_value;
    
    IF ($icon == NULL) {
      
      $i = NULL;
    
    }ELSE{
      
      $i = "<i class='fa fa-$icon fa-fw'></i>";
    
    }
    
    ?><button type="submit" class="<?=$class?>" name="<?=$name?>" value="go"><?=$i?> <?=LG($title)?></button><?
      
    IF (CONFIG('CSRF') == 1){
      
      ECHO '<input type="hidden" name="'.$token_id.'" value="'.$token_value.'">';
      
    }
    
    //Для передачи данных по ajax
    ECHO '<input type="hidden" value="go" name="'.$name.'">';
  
  }

}