Вход Регистрация
Файл: system/fields/listgroups.php
Строк: 25
<?php

class fieldListGroups extends cmsFormField {

    public 
$title       LANG_PARSER_LIST_GROUPS;
    public 
$is_public   false;
    public 
$sql         'text NULL DEFAULT NULL';
    public 
$allow_index false;
    public 
$var_type    'array';

    public function 
getOptions(){
        return array(
            new 
fieldCheckbox('show_all', array(
                
'title' => LANG_PARSER_LIST_MULTIPLE_SHOW_ALL,
                
'default' => 1
            
)),
            new 
fieldCheckbox('show_guests', array(
                
'title' => LANG_PARSER_LIST_GROUPS_SHOW_GUESTS,
                
'default' => 0
            
)),
        );
    }

    public function 
getListItems(){

        
$users_model cmsCore::getModel('users');

        
$items $this->getProperty('show_all') ? array(=> LANG_ALL) : array();

        
$groups $users_model->getGroups((bool)$this->getProperty('show_guests'));

        foreach(
$groups as $group){
            
$items[$group['id']] = $group['title'];
        }

        return 
$items;

    }

    public function 
getInput($value){


        
$this->data['groups'] = $this->getListItems();

        if(!
is_array($value)){
            
$value cmsModel::yamlToArray($value);
        }

        if(
$value){
            foreach (
$value as $k => $v) {
                if(
is_numeric($v)){ $value[$k] = (int)$v; }
            }
        }

        return 
parent::getInput($value $value : array(0));
    }

    public function 
store($value$is_submitted$old_value=null){
        if(
is_array($value)){
            
$value array_filter($value);
        }
        return 
parent::store($value$is_submitted$old_value);
    }

}
Онлайн: 2
Реклама