Esempio n. 1
0
/**
 * 编辑器字段 表单组合处理
 * @param type $field 字段名
 * @param type $value 字段内容
 * @param type $fieldinfo 字段配置
 * @return type
 */
function editor($field, $value, $fieldinfo)
{
    $setting = unserialize($fieldinfo['setting']);
    //是否禁用分页和子标题 基本没用。。。
    $disabled_page = isset($disabled_page) ? $disabled_page : 0;
    //编辑器高度
    $height = $setting['height'];
    if (empty($setting['height'])) {
        $height = 300;
    }
    if (defined('IN_ADMIN') && IN_ADMIN) {
        //是否允许上传
        $allowupload = 1;
        //编辑器类型,简洁型还是标准型
        $toolbar = $setting['toolbar'];
    } else {
        $Member_group = F("Member_group");
        //获取当前登陆会员组id
        $groupid = SiteCookie('groupid');
        //是否允许上传
        $allowupload = $Member_group[$groupid]['allowattachment'] ? 1 : 0;
        //编辑器类型,简洁型还是标准型
        $toolbar = $setting['mbtoolbar'] ? $setting['mbtoolbar'] : "basic";
    }
    //内容
    if (empty($value)) {
        $value = $setting['defaultvalue'] ? $setting['defaultvalue'] : '<p></p>';
    }
    if ($setting['minlength'] || $fieldinfo['pattern']) {
        $allow_empty = '';
    }
    //模块
    $module = in_array(GROUP_NAME, array("Contents", "contents")) ? 'Contents' : GROUP_NAME;
    $form = Form::editor($field, $toolbar, $module, $this->catid, $allowupload, $allowupload, '', 10, $height, $disabled_page);
    //javascript
    $this->formJavascript .= "\n            //编辑器\n            //editor{$field} = new baidu.editor.ui.Editor(editor_config_{$field});\n            //editor{$field}.render( '{$field}' );\n            //增加编辑器验证规则\n            jQuery.validator.addMethod('editor{$field}',function(){\n                try{editor{$field}.sync();}catch(err){};\n                return " . ($fieldinfo['minlength'] ? "editor{$field}.hasContents();" : "true") . "\n            });\n    ";
    //错误提示
    $errortips = $this->fields[$field]['errortips'];
    //20130428 由于没有设置必须输入时,ajax提交会造成获取不到编辑器的值。所以这里强制进行验证,使其触发编辑器的sync()方法
    // if ($minlength){
    //验证规则
    $this->formValidateRules['info[' . $field . ']'] = array("editor{$field}" => "true");
    //验证不通过提示
    $this->formValidateMessages['info[' . $field . ']'] = array("editor{$field}" => $errortips ? $errortips : $fieldinfo['name'] . "不能为空!");
    // }
    return "<div id='{$field}_tip'></div>" . '<script type="text/plain" id="' . $field . '" name="info[' . $field . ']">' . $value . '</script>' . $form;
}
Esempio n. 2
0
function editor($field, $value, $fieldinfo)
{
    $setting = unserialize($fieldinfo['setting']);
    extract($setting);
    extract($fieldinfo);
    $disabled_page = isset($disabled_page) ? $disabled_page : 0;
    //编辑器高度
    if (!$height) {
        $height = 300;
    }
    //是否允许上传
    if (defined('IN_ADMIN') && IN_ADMIN) {
        $allowupload = 1;
    } else {
        $Member_group = F("Member_group");
        $groupid = SiteCookie('groupid');
        $allowupload = $Member_group[$groupid]['allowattachment'] ? 1 : 0;
        $toolbar = $mbtoolbar ? $mbtoolbar : "basic";
    }
    //内容
    if (!$value) {
        $value = $defaultvalue;
    }
    if ($minlength || $pattern) {
        $allow_empty = '';
    }
    $form = Form::editor($field, $toolbar, 'Contents', $this->catid, $allowupload, 1, '', 10, $height, $disabled_page);
    //javascript
    $this->formJavascript .= "\r\n            //编辑器\r\n            editor{$field} = new baidu.editor.ui.Editor(editor_config_{$field});\r\n            editor{$field}.render( '{$field}' );\r\n            try{editor{$field}.sync();}catch(err){};\r\n            //增加编辑器验证规则\r\n            jQuery.validator.addMethod('editor{$field}',function(){\r\n                try{editor{$field}.sync();}catch(err){};\r\n                return editor{$field}.hasContents();\r\n            });\r\n    ";
    //错误提示
    $errortips = $this->fields[$field]['errortips'];
    if ($minlength) {
        //验证规则
        $this->formValidateRules['info[' . $field . ']'] = array("editor{$field}" => "true");
        //验证不通过提示
        $this->formValidateMessages['info[' . $field . ']'] = array("editor{$field}" => $errortips ? $errortips : $name . "不能为空!");
    }
    return "<div id='{$field}_tip'></div>" . '<textarea id="' . $field . '" name="info[' . $field . ']">' . $value . '</textarea>' . $form;
}
 /**
  * 获取cookie中记录的用户ID
  * @return type 成功返回用户ID,失败返回false
  */
 public function getCookieUid()
 {
     static $cookie_userid = null;
     if (isset($cookie_userid) && $cookie_userid) {
         return $cookie_userid;
     }
     $cookie = SiteCookie("shuipfuser");
     if (empty($cookie)) {
         return false;
     }
     $cookie = explode('@', $cookie);
     $cookie_userid = $cookie[0] !== 'shuipfcms' ? false : $cookie[1];
     return $cookie_userid;
 }
Esempio n. 4
0
 /**
  * 栏目选择
  * @param string $file 栏目缓存文件名
  * @param intval/array $catid 别选中的ID,多选是可以是数组
  * @param string $str 属性
  * @param string $default_option 默认选项
  * @param intval $modelid 按所属模型筛选
  * @param intval $type 栏目类型
  * @param intval $onlysub 只可选择子栏目
  * @param intval $is_push 加载权限表模型 ,获取会员组ID值,以备下面投入判断用
  */
 public static function select_category($catid = 0, $str = '', $default_option = '', $modelid = 0, $type = -1, $onlysub = 0, $is_push = 0)
 {
     import('Tree');
     $tree = new Tree();
     $result = F("Category");
     $string = '<select ' . $str . '>';
     if ($default_option) {
         $string .= "<option value='0'>{$default_option}</option>";
     }
     //加载权限表模型 ,获取会员组ID值,以备下面投入判断用
     if ($is_push) {
         $priv = M("Category_priv");
         //用户组
         if (defined("IN_ADMIN") && IN_ADMIN) {
             //后台
             $user_groupid = session("roleid");
         } else {
             $user_groupid = SiteCookie('groupid') ? SiteCookie('groupid') : 8;
         }
     }
     if (is_array($result)) {
         foreach ($result as $r) {
             //检查当前会员组,在该栏目处是否允许投稿?
             if ($is_push == '1' and $r['child'] == '0') {
                 $where = array('catid' => $r['catid'], 'roleid' => $user_groupid, 'action' => 'add');
                 if (defined("IN_ADMIN") && IN_ADMIN) {
                     $where['is_admin'] = 1;
                 } else {
                     $where['is_admin'] = 0;
                 }
                 $array = $priv->where($where)->find();
                 if (!$array) {
                     continue;
                 }
             }
             $r['selected'] = '';
             if (is_array($catid)) {
                 $r['selected'] = in_array($r['catid'], $catid) ? 'selected' : '';
             } elseif (is_numeric($catid)) {
                 $r['selected'] = $catid == $r['catid'] ? 'selected' : '';
             }
             $r['html_disabled'] = "0";
             if (!empty($onlysub) && $r['child'] != 0) {
                 $r['html_disabled'] = "1";
             }
             $categorys[$r['catid']] = $r;
             if ($modelid && $r['modelid'] != $modelid) {
                 unset($categorys[$r['catid']]);
             }
         }
     }
     $str = "<option value='\$catid' \$selected>\$spacer \$catname</option>;";
     $str2 = "<optgroup label='\$spacer \$catname'></optgroup>";
     $tree->init($categorys);
     $string .= $tree->get_tree_category(0, $str, $str2);
     $string .= '</select>';
     return $string;
 }
 /**
  * 获取cookie中记录的用户ID
  * @return type 成功返回用户ID,失败返回false
  */
 public function getCookieUid()
 {
     //用户ID
     $mid = SiteCookie("mid");
     $username = SiteCookie("username");
     $auth = SiteCookie("auth");
     if (!$username || !$mid) {
         return false;
     }
     $info = M("Member")->where(array("userid" => $mid, 'username' => $username))->find();
     if ($info['password'] == $auth) {
         return $info;
     }
     return false;
 }
 /**
  * Cookie 设置、获取、删除 
  */
 public static final function cookie($name, $value = '', $option = null)
 {
     return SiteCookie($name, $value, $option);
 }