$_event_name = str_replace('formrules_', '', basename($GLOBALS['Loader']->LastReadedFile, '.inc')); $_result = array( 'caption' => array( '_rule' => 'uniqname', ), 'firstname' => array( '_rule' => 'trim; nn', '', 'Укажите ваше имя;', 'type' => 'text', 'caption' => 'Ваше имя', 'default' => '', ), 'lastname' => array( '_rule' => 'trim; nn', '', 'Укажите вашу фамилию;', 'type' => 'text', 'caption' => 'Ваша фамилия', 'default' => '', ), 'email' => array( '_rule' => 'trim; nn; email', '', 'Укажите Ваш адрес электронной почты;', 'Электронная почта указана не верно;', 'type' => 'text', 'caption' => 'Электронная почта', 'default' => '', ), 'phone' => array( '_rule' => 'trim; nn', '', 'Укажите Ваш контактный телефон;', 'type' => 'text', 'caption' => 'Контакный телефон', 'default' => '', ), 'address' => array( '_rule' => 'trim; nn', '', 'Укажите Ваш адрес для доставки.', 'type' => 'text', 'caption' => 'Адрес для доставки', 'default' => '', ), 'comment' => array( '_rule' => '', 'type' => 'textarea', 'caption' => 'Дополнительно', 'default' => '', ), ); $_types = array('orders'); $_form = Documents_Document::BuildTypedForm($_types); foreach(array_keys($_form) as $_form_field) { switch ($_form[$_form_field]['fieldtype']){ case 'datetime': $_form[$_form_field]['_rule'][] = 'date'; case 'int': case 'float': $_form[$_form_field]['_rule'][] = 'numeric'; case 'string': $_form[$_form_field]['type'] = 'text'; break; case 'text': case 'array': if (isset($_form[$_form_field]['_rule'][0]) && (($_form[$_form_field]['_rule'][0] == 'nn|files') || ($_form[$_form_field]['_rule'][0] == 'mn|files'))) { $_form[$_form_field]['type'] = 'file'; } else { $_form[$_form_field]['type'] = 'textarea'; } break; case 'boolean': $_form[$_form_field]['type'] = 'checkbox'; break; } $_form[$_form_field]['title'] = $_form[$_form_field]['comment']; $_form[$_form_field]['default'] = '"'.$_form[$_form_field]['def'].'"'; } $_result = array( 'type' => array( '_rule' => 'setstr|'.implode(',', $_types), ), 'caption' => array( '_rule' => 'uniqname', ), ); $_result['_group_rights'] = array( '_rule' => 'set_rights|guestgroup|1100; set_rights|Administrators|1111', ); $_result[''] = array( '_rule' => 'permission_add_child', 'У вас нет прав на размещение заказа', ); $_result = array_merge($_form, $_result); $_result[$_event_name] = array( '_rule' => '', 'type' => 'submit', 'caption' => 'Оформить', ); return $_result;