Models_OpFieldsUser

Описание

Модель: OpFieldsUser


Класс Models_OpFieldsUser реализует логику взаимодействия с дополнительными полями покупателей.

Методы класса

void fill() Позволяет изменить значения дополнительных полей у выбранного покупателя
$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
// массив с дополнительным полями
$data = array(
    
=> 'test',  // ключ являеться идентификатором дополнительного поля (id)
    
=> 'test2',
);
// будем считать что у этого покупателя есть еще поле с id '3' и оно имеет занчение 'defaultValue'
// в дынном случае, это поле не изменит свое значение,
// а первое и второе примут значения из входящего массива
$opFieldsM->fill($data);
// при указании второго параметра в виду 'full', поле с id '3',
// примет значение '', так как мы не передали его в массиве
$opFieldsM->fill($data'full');
void save() Сохраняет текущее состояние объекта в базу данных, обычно используется после метода fill для фиксации изменений
$data = array(
    
=> 'test',  // ключ являеться идентификатором дополнительного поля (id)
    
=> 'test2',
);
$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
$opFieldsM->fill($data);
$opFieldsM->save();
string createCustomFieldToAdmin() Метод возвращает верстку для модального окна с покупателем в панели администрирования
$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
$data $opFieldsM->createCustomFieldToAdmin();
viewData($data);
array get() Метод возвращает массив с данными о дополнительных полях выбранного покупателя
$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
// выведет все дополнительные поля покупателя
$data $opFieldsM->get();
viewData($data);
// выведет только указанное дополнительное поле
$fieldId 1;
$data $opFieldsM->get($fieldId);
viewData($data);
array|string getHumanView() Метод возвращает массив с данными о дополнительных полях выбранного покупателя в более понятном для человека виде
$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
// выведет все дополнительные поля покупятеля
$data $opFieldsM->getHumanView();
viewData($data);
// выведет только указанное дополнительное поле
$fieldId 1;
$data $opFieldsM->getHumanView($fieldId);
viewData($data);
// при указании второго атрибута, выведет сразу строку со значением, а не массив
array getValues() Возвращает только значения полей, без дополнительной информации (ключ id поля и его значение)
$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
$data $opFieldsM->getValues();
viewData($data);
array checkAdminColumnsTable() Проверяет поле на сущесвование перед выводом в таблице покупателей, отсеивает из списка то, чего уже нет
(только для панели управления)
$opFieldsM = new Models_OpFieldsUser('get');
$array = array(123);
$data $opFieldsM->checkAdminColumnsTable($array);
viewData($data);
array getFields() Получает список дополнительных полей
$data Models_OpFieldsUser::getFields();
viewData($data);
array saveFields() Метод позвоялет редактировать дополнительные поля покупателей
Принимает список полей, которые нужно сохранить, если существующие поля не были указаны, то они будут удалены
Возвращает идентификаторы новых полей
$data = array(
    array(
        
'name' => 'test-input',
        
'type' => 'input',
        
'sort' => 0,
        
'id' => 1,
    ),
    array(
        
'name' => 'test-textarea',
        
'type' => 'textarea',
        
'sort' => 1,
        
'id' => 2,
    ),
    array(
        
'name' => 'test-checkbox',
        
'type' => 'checkbox',
        
'sort' => 2,
        
'id' => 3,
    ),
    array(
        
'name' => 'test-radio',
        
'type' => 'radiobutton',
        
'sort' => 3,
        
'id' => 4,
        
'vars' => array(
            
=> 1,
            
=> 2,
            
=> 3,
        )
    ),
    array(
        
'name' => 'test-select',
        
'type' => 'select',
        
'sort' => 4,
        
'id' => 5,
        
'vars' => array(
            
=> 'q1',
            
=> 'q2',
            
=> 'q3',
        )
    )
);
Models_OpFieldsUser::saveFields($data);
Описание методов и примеры их использования

Метод

void fill ($data$mode false)

Параметры

  • $data: array - массив со значениями дополнительных полей
  • $mode: string - режим работы метода (по умолчанию пусто), для полной перезаписи значений со сбросом текущих значений измениете на 'full'

Описание

Позволяет изменить значения дополнительных полей у выбранного покупателя

$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
// массив с дополнительным полями
$data = array(
    
=> 'test',  // ключ являеться идентификатором дополнительного поля (id)
    
=> 'test2',
);
// будем считать что у этого покупателя есть еще поле с id '3' и оно имеет занчение 'defaultValue'
// в дынном случае, это поле не изменит свое значение,
// а первое и второе примут значения из входящего массива
$opFieldsM->fill($data);
// при указании второго параметра в виду 'full', поле с id '3',
// примет значение '', так как мы не передали его в массиве
$opFieldsM->fill($data'full');

Метод

void save ()

Описание

Сохраняет текущее состояние объекта в базу данных, обычно используется после метода fill для фиксации изменений

$data = array(
    
=> 'test',  // ключ являеться идентификатором дополнительного поля (id)
    
=> 'test2',
);
$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
$opFieldsM->fill($data);
$opFieldsM->save();

Метод

string createCustomFieldToAdmin ()

Описание

Метод возвращает верстку для модального окна с покупателем в панели администрирования

$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
$data $opFieldsM->createCustomFieldToAdmin();
viewData($data);

Метод

array get ($elem)

Параметры

  • $elem: int - идентификатор поля

Описание

Метод возвращает массив с данными о дополнительных полях выбранного покупателя

$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
// выведет все дополнительные поля покупателя
$data $opFieldsM->get();
viewData($data);
// выведет только указанное дополнительное поле
$fieldId 1;
$data $opFieldsM->get($fieldId);
viewData($data);

Метод

array|string getHumanView ($elem all$onlyVal false)

Параметры

  • $elem: string|int - если 'all', то вернет все поля, если указать id поля, то только егозначение
  • $onlyVal: bool - если указать 'true', то вернет строку со значением

Описание

Метод возвращает массив с данными о дополнительных полях выбранного покупателя в более понятном для человека виде

$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
// выведет все дополнительные поля покупятеля
$data $opFieldsM->getHumanView();
viewData($data);
// выведет только указанное дополнительное поле
$fieldId 1;
$data $opFieldsM->getHumanView($fieldId);
viewData($data);
// при указании второго атрибута, выведет сразу строку со значением, а не массив

Метод

array getValues ()

Описание

Возвращает только значения полей, без дополнительной информации (ключ id поля и его значение)

$userId 1;
$opFieldsM = new Models_OpFieldsUser($userId);
$data $opFieldsM->getValues();
viewData($data);

Метод

array checkAdminColumnsTable ($data)

Описание

Проверяет поле на сущесвование перед выводом в таблице покупателей, отсеивает из списка то, чего уже нет
(только для панели управления)

$opFieldsM = new Models_OpFieldsUser('get');
$array = array(123);
$data $opFieldsM->checkAdminColumnsTable($array);
viewData($data);

Метод

array getFields ($public false)

Описание

Получает список дополнительных полей

$data Models_OpFieldsUser::getFields();
viewData($data);

Метод

array saveFields ($data)

Параметры

  • $data: array - массив с полями для сохранения

Описание

Метод позвоялет редактировать дополнительные поля покупателей
Принимает список полей, которые нужно сохранить, если существующие поля не были указаны, то они будут удалены
Возвращает идентификаторы новых полей

$data = array(
    array(
        
'name' => 'test-input',
        
'type' => 'input',
        
'sort' => 0,
        
'id' => 1,
    ),
    array(
        
'name' => 'test-textarea',
        
'type' => 'textarea',
        
'sort' => 1,
        
'id' => 2,
    ),
    array(
        
'name' => 'test-checkbox',
        
'type' => 'checkbox',
        
'sort' => 2,
        
'id' => 3,
    ),
    array(
        
'name' => 'test-radio',
        
'type' => 'radiobutton',
        
'sort' => 3,
        
'id' => 4,
        
'vars' => array(
            
=> 1,
            
=> 2,
            
=> 3,
        )
    ),
    array(
        
'name' => 'test-select',
        
'type' => 'select',
        
'sort' => 4,
        
'id' => 5,
        
'vars' => array(
            
=> 'q1',
            
=> 'q2',
            
=> 'q3',
        )
    )
);
Models_OpFieldsUser::saveFields($data);