Esempio n. 1
0
function decode_compat($version)
{
    $version_list = get_all_compat_version();
    $result = array();
    foreach ($version as $v) {
        $result[] = $version_list[$v];
    }
    return $result;
}
 /**
  * @param $form
  * @param $data
  * @return mixed
  */
 public function buildBaseForm($form, $data, $entity = 2)
 {
     /*日志 log 字段*/
     $form->add('hidden', 'goods_id', $data['id']);
     /*名称 title 字段*/
     $form->add('label', 'label_title', 'title', '名称', null);
     $obj = $form->add('text', 'title', op_t($data['title']));
     $obj->set_rule(array('required' => array('error', '名称必须填写。'), 'length' => array(2, 20, 'error', '长度必须在2-20个字之间。')));
     $form->add('note', 'note_title', 'title', '必填,最短2个字,最长20个字。', array('style' => 'width:200px'));
     /*英文名称 etitle 字段*/
     $form->add('label', 'label_etitle', 'etitle', '英文名称', null);
     $obj = $form->add('text', 'etitle', $data['etitle']);
     $obj->set_rule(array('required' => array('error', '名称必须填写。'), 'length' => array(1, 20, 'error', '长度必须在1-20个字之间。')));
     $form->add('note', 'note_etitle', 'etitle', '必填,最短1个字,最长20个字。尽量不要与其他模块重名。', array('style' => 'width:400px'));
     /*作者 author 字段*/
     $form->add('label', 'label_author', 'author', '作者', null);
     $obj = $form->add('text', 'author', $data['author']);
     $obj->set_rule(array('length' => array(2, 20, 'error', '长度必须在2-20个字之间。')));
     $form->add('note', 'note_author', 'author', '填写该插件的作者名称,如果不填则为当前登录ID。', array('style' => 'width:300px'));
     /*分类 type_id 字段*/
     $options = get_type_select($entity);
     $form->add('label', 'label_type', 'type_id', '分类');
     $obj = $form->add('select', 'type_id', $data['type_id']);
     $obj->add_options($options, true);
     $obj->set_rule(array('required' => array('error', '请务必选择分类。')));
     /*图标cover 字段*/
     $form->add('label', 'label_cover', 'cover', '图标');
     $obj = $form->add('wuploadpicture', 'cover', $data['cover'], array('width' => 80, 'height' => 80));
     // set rules
     $obj->set_rule(array('filetype' => array('jpg,png,gif', 'error', '图标必须为 jpg, png or gif !'), 'filesize' => array(1024000, 'error', '图标不能超过 1MB!')));
     $form->add('note', 'note_cover', 'cover', '建议尺寸 80 * 80 ', array('style' => 'width:200px'));
     /*兼容版本 compat 字段*/
     $form->add('label', 'label_extra', 'compat', '兼容版本');
     if ($data) {
         $obj = $form->add('checkboxes', 'compat[]', get_all_compat_version(), decode_compat_to_array_from_db($data['compat']));
     } else {
         $obj = $form->add('checkboxes', 'compat[]', get_all_compat_version(), array('5', '4', '3'));
     }
     $obj->set_rule(array('required' => array('error', '至少兼容一种版本。')));
     return $obj;
 }