Вход Регистрация
Файл: system/controllers/forms/backend.php
Строк: 62
<?php

class backendForms extends cmsBackend {

    protected 
$useOptions true;

    public 
$useDefaultOptionsAction true;

    protected 
$unknown_action_as_index_param true;

    public function 
loadCallback() {
        
$this->callbacks = array(
            
'actionoptions'=>array(
                function(
$controller$options){
                    
// Выключаем/включем слушателя
                    
if(empty($options['allow_shortcode'])){
                        
$is_enabled 0;
                    } else {
                        
$is_enabled 1;
                    }
                    
$this->model->filterEqual('event''content_before_item');
                    
$this->model->filterEqual('listener''forms');
                    
$this->model->updateFiltered('events', ['is_enabled' => $is_enabled], true);
                }
            )
        );
    }

    public function 
getBackendMenu(){
        return array(
            array(
                
'title' => LANG_FORMS_CP_FORMS,
                
'url' => href_to($this->root_url)
            ),
            array(
                
'title' => LANG_OPTIONS,
                
'url' => href_to($this->root_url'options')
            )
        );
    }

    public function 
getFormMenu($do 'add'$id null){

        
$menu = array(

            array(
                
'title' => LANG_CP_CTYPE_SETTINGS,
                
'url' => href_to($this->root_url$do, [$id])
            ),
            array(
                
'title' => LANG_CP_CTYPE_FIELDS,
                
'url' => href_to($this->root_url'form_fields', [$id]),
                
'disabled' => in_array($do, ['add''copy'])
            )
        );

        list(
$menu$do$id) = cmsEventsManager::hook('admin_forms_menu', array($menu$do$id));

        return 
$menu;

    }

    public function 
validate_unique_field($form_id$value){

        if (empty(
$value)) { return true; }
        if (!
in_array(gettype($value), array('integer','string','double'))) { return ERR_VALIDATE_INVALID; }

        
$this->model->filterEqual('form_id'$form_id);
        
$this->model->filterEqual('name'$value);

        
$result $this->model->getCount('forms_fields''id'true);
        if (
$result) { return ERR_VALIDATE_UNIQUE; }

        return 
true;
    }

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