Example #1
0
 /**
  * 文件信息
  */
 public function fileinfo()
 {
     $this->load->helper('system');
     $key = $this->input->get('name');
     $info = dr_file_info($key);
     $file = count($info) > 2 ? dr_get_file($info['attachment']) : $key;
     if (in_array(strtolower(trim(substr(strrchr($file, '.'), 1, 10))), array('jpg', 'jpeg', 'gif', 'png'))) {
         echo '<img src="' . $file . '" onload="if(this.width>$(window).width()/2)this.width=$(window).width()/2;">';
     } else {
         echo '<a href="' . $file . '" target=_blank>' . ($info['filename'] ? $info['filename'] : $file) . '</a><br>&nbsp;';
     }
 }
Example #2
0
 /**
  * 自定义数据调用(新版本)
  */
 public function data2()
 {
     // 安全认证码
     $auth = $this->input->get('auth');
     if ($auth != md5(SYS_KEY)) {
         // 安全认证码不正确
         $data = array('error' => '安全认证码不正确');
     } else {
         // 解析数据
         $data = $this->template->list_tag($this->input->get('param'));
     }
     $title = $this->input->get('title');
     $description = $this->input->get('description');
     // 接收参数
     $format = $this->input->get('format');
     $data = arrayToObject($data);
     $data = object_array($data->return);
     foreach ($data as $k => $d) {
         $s[] = $d;
         if ($title) {
             $s[$k][title] = mb_substr($data[$k][title], 0, $title);
         }
         if ($description) {
             $s[$k][description] = mb_substr($data[$k][description], 0, $description);
         }
         $s[$k][newthumb] = dr_file_info($data[$k][thumb]);
         $s[$k][newthumb] = $s[$k][newthumb][attachment];
     }
     // 页面输出
     if ($format == 'xml') {
         header('Content-Type: text/xml');
         echo dr_array2xml($data, FALSE);
     } elseif ($format == 'jsonp') {
         echo $this->input->get('callback') . '(' . json_encode($s) . ')';
     } else {
         echo json_encode($data);
     }
 }
Example #3
0
    /**
     * 字段表单输入
     *
     * @param	string	$cname	字段别名
     * @param	string	$name	字段名称
     * @param	array	$cfg	字段配置
     * @param	array	$data	值
     * @return  string
     */
    public function input($cname, $name, $cfg, $value = NULL, $id = 0)
    {
        // 字段显示名称
        $text = (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1 ? '<font color="red">*</font>' : '') . '&nbsp;' . $cname . ':';
        // 表单附加参数
        $attr = isset($cfg['validate']['formattr']) && $cfg['validate']['formattr'] ? $cfg['validate']['formattr'] : '';
        // 字段提示信息
        $tips = isset($cfg['validate']['tips']) && $cfg['validate']['tips'] ? '<div class="onShow" id="dr_' . $name . '_tips">' . $cfg['validate']['tips'] . '</div>' : '';
        // 当字段必填时,加入html5验证标签
        if (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1) {
            $attr .= ' required="required"';
        }
        // 禁止修改
        $disabled = !IS_ADMIN && $id && $value && isset($cfg['validate']['isedit']) && $cfg['validate']['isedit'] ? 'disabled' : '';
        // 上传的URL
        $url = MEMBER_PATH . 'index.php?c=api&m=upload&name=' . $name . '&count=1&code=' . str_replace('=', '', dr_authcode($cfg['option']['size'] . '|' . $cfg['option']['ext'] . '|' . $this->get_upload_path($cfg['option']['uploadpath']), 'ENCODE'));
        // 文件值
        $file = $info = '';
        if ($value) {
            $file = $value;
            $data = dr_file_info($file);
            if ($data) {
                $size = $data['size'] ? ' (' . $data['size'] . ')' : '';
                $info = '<a href="javascript:;" onclick="dr_show_file_info(\'' . $file . '\')"><img align="absmiddle" src="' . $data['icon'] . '"><div class="onCorrect">' . $data['filename'] . $size . '&nbsp;</div></a>';
            }
            unset($data);
        }
        // 上传按钮与表单值
        $tool = '<input type="hidden" id="dr_' . $name . '" name="data[' . $name . ']" value="' . $file . '" ' . $attr . ' />
		<input type="button" style="cursor:pointer;" ' . $disabled . ' class="button" onclick="dr_upload_file(\'' . $name . '\', \'' . $url . '\')" value="' . lang('m-119') . '" />
		<input type="button" style="cursor:pointer;" class="button" onclick="dr_delete_file(\'' . $name . '\')" value="' . lang('m-346') . '" />
		';
        // 文件信息查看
        $finfo = '<span id="show_' . $name . '" />' . $info . '</span>' . $tips;
        return $this->input_format($name, $text, $tool . $finfo);
    }
Example #4
0
    /**
     * 字段表单输入
     *
     * @param	string	$cname	字段别名
     * @param	string	$name	字段名称
     * @param	array	$cfg	字段配置
     * @param	string	$value	值
     * @return  string
     */
    public function input($cname, $name, $cfg, $value = NULL, $id = 0)
    {
        // 字段显示名称
        $text = (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1 ? '<font color="red">*</font>' : '') . '&nbsp;' . $cname . ':';
        // 表单附加参数
        $attr = isset($cfg['validate']['formattr']) && $cfg['validate']['formattr'] ? $cfg['validate']['formattr'] : '';
        // 字段提示信息
        $tips = isset($cfg['validate']['tips']) && $cfg['validate']['tips'] ? '<div class="onShow" id="dr_' . $name . '_tips">' . $cfg['validate']['tips'] . '</div>' : '';
        // 当字段必填时,加入html5验证标签
        if (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1) {
            $attr .= ' required="required"';
        }
        // 表单选项
        $disabled = !IS_ADMIN && $id && $value && isset($cfg['validate']['isedit']) && $cfg['validate']['isedit'] ? 'disabled' : '';
        // 上传的URL
        $url = MEMBER_PATH . 'index.php?c=api&m=upload&name=' . $name . '&count=1&code=' . str_replace('=', '', dr_authcode($cfg['option']['size'] . '|' . $cfg['option']['ext'] . '|' . $this->get_upload_path($cfg['option']['uploadpath']), 'ENCODE'));
        // 文件值
        $file = $info = '';
        $value = dr_string2array($value);
        if ($value['file']) {
            $file = $value['file'];
            $data = dr_file_info($file);
            if ($data) {
                $size = $data['size'] ? ' (' . $data['size'] . ')' : '';
                $info = '<a href="javascript:;" onclick="dr_show_file_info(\'' . $file . '\')"><img align="absmiddle" src="' . $data['icon'] . '"><div class="onCorrect">' . $data['filename'] . $size . '&nbsp;</div></a>';
            }
            unset($data);
            $default = '';
            if ($value['point']) {
                $i = 0;
                foreach ($value['point'] as $time => $title) {
                    $default .= '
					<li id="dr_items_' . $name . '_' . $i . '">
					时间(秒):<input type="text" class="input-text" style="width:70px;" value="' . $time . '" name="data[' . $name . '][time][]">&nbsp;&nbsp;提示文字:<input type="text" class="input-text" style="width:250px;" value="' . $title . '" name="data[' . $name . '][title][]\\">&nbsp;&nbsp;<a href="javascript:;" onclick="$(\'#dr_items_' . $name . '_' . $i . '\').remove()">' . lang('del') . '</a>
					</li>';
                    $i++;
                }
            }
        }
        // 显示框宽度设置
        $width = isset($cfg['option']['width']) && $cfg['option']['width'] ? $cfg['option']['width'] : '80%';
        $str = '<fieldset class="blue pad-10" style="width:' . $width . (is_numeric($width) ? 'px' : '') . ';">
					<legend>' . $cname . '</legend>
					<div class="picList">
						<table width="100%" border="0" cellspacing="0" cellpadding="0">
						<tr>
							<td style="text-align:left;padding-left:0;">
							<span>' . dr_lang('m-138', str_replace('|', '、', $cfg['option']['ext'])) . '</span>&nbsp;&nbsp;
							<input type="hidden" id="dr_' . $name . '" name="data[' . $name . '][file]" value="' . $file . '" ' . $attr . ' />
							<input type="button" style="cursor:pointer;" ' . $disabled . ' class="button" onclick="dr_upload_file(\'' . $name . '\', \'' . $url . '\')" value="' . lang('m-119') . '" />
							<span id="show_' . $name . '" />' . $info . '</span>' . $tips . '
							</td>
						</tr>
						</table>
						<ul id="' . $name . '-sort-items" style="margin-top:8px;">
						' . $default . '
						</ul>
					</div>
				<div class="picBut cu">
					<a href="javascript:;" onClick="dr_add_video_' . $name . '()">添加提示点</a>
				</div>
				<div class="onShow" style="margin-top:2px;">鼠标经过进度栏N秒时,N秒会提示相应的文字</div>
				<script type="text/javascript">
				$("#' . $name . '-sort-items").sortable();
				var id=$("#' . $name . '-sort-items li").size();
				function dr_add_video_' . $name . '() {
					id ++;
					var html = "<li id=\\"dr_items_' . $name . '_"+id+"\\">";
					html+= "时间(秒):<input type=\\"text\\" class=\\"input-text\\" style=\\"width:70px;\\" value=\\"\\" name=\\"data[' . $name . '][time][]\\">&nbsp;&nbsp;";
					html+= "提示文字:<input type=\\"text\\" class=\\"input-text\\" style=\\"width:250px;\\" value=\\"\\" name=\\"data[' . $name . '][title][]\\">&nbsp;&nbsp;";
					html+= "<a href=\\"javascript:;\\" onclick=\\"$(\'#dr_items_' . $name . '_"+id+"\').remove()\\">' . lang('del') . '</a>";
					html+= "</li>";
					$("#' . $name . '-sort-items").append(html);
				}
				</script>
				</fieldset>
		';
        return $this->input_format($name, $text, $str);
    }
Example #5
0
    /**
     * 字段表单输入
     *
     * @param	string	$cname	字段别名
     * @param	string	$name	字段名称
     * @param	array	$cfg	字段配置
     * @param	array	$data	值
     * @return  string
     */
    public function input($cname, $name, $cfg, $value = NULL, $id = 0)
    {
        // 字段显示名称
        $text = (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1 ? '<font color="red">*</font>' : '') . '&nbsp;' . $cname . ':';
        // 显示框宽度设置
        $width = isset($cfg['option']['width']) && $cfg['option']['width'] ? $cfg['option']['width'] : '80%';
        // 表单附加参数
        $attr = isset($cfg['validate']['formattr']) && $cfg['validate']['formattr'] ? $cfg['validate']['formattr'] : '';
        // 字段提示信息
        $tips = isset($cfg['validate']['tips']) && $cfg['validate']['tips'] ? '<div class="onShow" id="dr_' . $name . '_tips">' . $cfg['validate']['tips'] . '</div>' : '';
        // 禁止修改
        $disabled = !IS_ADMIN && $id && $value && isset($cfg['validate']['isedit']) && $cfg['validate']['isedit'] ? 'disabled' : '';
        // 当字段必填时,加入html5验证标签
        if (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1) {
            $attr .= ' required="required"';
        }
        // 上传的URL
        $url = MEMBER_PATH . 'index.php?c=api&m=upload&name=' . $name . '&code=' . str_replace('=', '', dr_authcode($cfg['option']['size'] . '|' . $cfg['option']['ext'] . '|' . $this->get_upload_path($cfg['option']['uploadpath']), 'ENCODE'));
        // 字段默认值
        $file_value = '';
        $value && ($value = dr_string2array($value));
        // 默认值输出
        if ($value && isset($value['file'])) {
            foreach ($value['file'] as $id => $fileid) {
                $info = dr_file_info($fileid);
                $title = $value['title'][$id];
                $file_value .= '
				<li id="files_' . $name . '_999' . $id . '" list="999' . $id . '" style="cursor:move;">
				<table width="100%" border="0" cellspacing="0" cellpadding="0">
				<tr>
					<td width="80" style="text-align:right">
						' . ($id + 1) . '、
						<a href="javascript:;" title="' . lang('edit') . '" onclick="dr_edit_file(\'' . $url . '&count=1\',\'' . $name . '\',\'999' . $id . '\')"><img align="absmiddle" src="' . SITE_URL . 'dayrui/statics/images/b_edit.png"></a>
						<a href="javascript:;" title="' . lang('del') . '" onclick="dr_remove_file(\'' . $name . '\',\'999' . $id . '\')"><img align=\\"absmiddle\\" src="' . SITE_URL . 'dayrui/statics/images/b_drop.png"></a>
					</td>
					<td>
						<input type="hidden" value="' . $fileid . '" name="data[' . $name . '][file][]" id="fileid_' . $name . '_999' . $id . '" />
						<input type="text" class="input-text" style="width:300px;" value="' . $title . '" name="data[' . $name . '][title][]" />
						<span id="span_' . $name . '_999' . $id . '">
							<a href="javascript:;" onclick="dr_show_file_info(\'' . $fileid . '\')"><img align="absmiddle" src="' . $info['icon'] . '">
							<div class="onCorrect">' . $info['size'] . '&nbsp;</div></a>
						</span>
					</td>
				</tr>
				</table>
				</li>';
            }
        }
        // 输出变量
        $str = '';
        // 加载js
        if (!defined('FINECMS_FILES_LD')) {
            $str .= '<script type="text/javascript" src="' . MEMBER_PATH . 'statics/js/jquery-ui.min.js"></script>';
            $str .= '<script type="text/javascript">var homeurl = "' . SITE_URL . '"</script>';
            define('FINECMS_FILES_LD', 1);
            //防止重复加载JS
        }
        $str .= '<fieldset class="blue pad-10" style="width:' . $width . (is_numeric($width) ? 'px' : '') . ';">';
        $str .= '	<legend>' . lang('m-120') . '</legend>';
        $str .= '	<div class="picList" id="list_' . $name . '_files">';
        $str .= '		<ul id="' . $name . '-sort-items">';
        $str .= $file_value;
        $str .= '		</ul>';
        $str .= '	</div>';
        $str .= '</fieldset>';
        $str .= '<div class="bk10"></div>';
        $str .= '<div class="picBut cu">';
        if (!$disabled) {
            $str .= '<a href="javascript:;" onClick="dr_upload_files(\'' . $name . '\',\'' . $url . '\', \'\', \'' . (int) $cfg['option']['count'] . '\')">' . lang('m-119') . '</a>';
        }
        $str .= '</div>';
        $str .= '<script type="text/javascript">$("#' . $name . '-sort-items").sortable();</script>' . $tips;
        // 输出最终表单显示
        return $this->input_format($name, $text, $str);
    }
Example #6
0
    /**
     * 字段表单输入
     *
     * @param	string	$cname	字段别名
     * @param	string	$name	字段名称
     * @param	array	$cfg	字段配置
     * @param	array	$data	值
     * @return  string
     */
    public function input($cname, $name, $cfg, $value = NULL)
    {
        // 字段显示名称
        $text = (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1 ? '<font color="red">*</font>' : '') . '&nbsp;' . $cname . ':';
        // 表单附加参数
        $attr = isset($cfg['validate']['formattr']) && $cfg['validate']['formattr'] ? $cfg['validate']['formattr'] : '';
        // 字段提示信息
        $tips = isset($cfg['validate']['tips']) && $cfg['validate']['tips'] ? '<div class="onShow" id="dr_' . $name . '_tips">' . $cfg['validate']['tips'] . '</div>' : '<div class="onTime" id="dr_' . $name . '_tips"></div>';
        // 当字段必填时,加入html5验证标签
        if (isset($cfg['validate']['required']) && $cfg['validate']['required'] == 1) {
            $attr .= ' required="required"';
        }
        // 上传的URL
        $url = MEMBER_PATH . 'index.php?c=api&m=upload&name=' . $name . '&size=' . $cfg['option']['size'] . '&ext=' . $cfg['option']['ext'] . '&count=1';
        // 文件值
        $file = $info = '';
        if ($value) {
            $file = $value;
            $data = dr_file_info($file);
            if ($data) {
                $fsize = $data['size'] ? ' (' . $data['size'] . ')' : '';
                $info = '<a href="javascript:;" onclick="dr_show_file_info(\'' . $file . '\')"><img align="absmiddle" src="' . $data['icon'] . '">' . $data['filename'] . $size . '</a>';
            }
            unset($data);
        }
        // 上传按钮与表单值
        $tool = '<span>' . dr_lang('m-138', str_replace('|', '、', $cfg['option']['ext'])) . '</span>&nbsp;&nbsp;
		<input type="hidden" id="dr_' . $name . '" name="data[' . $name . ']" value="' . $file . '" ' . $attr . ' />
		<input type="button" style="width:60px;cursor:pointer;" class="button" onclick="dr_upload_file(\'' . $name . '\', \'' . $url . '\')" value="' . lang('m-119') . '" />
		';
        // 文件信息查看
        $finfo = '<span id="show_' . $name . '" />' . $info . '</span>' . $tips;
        // 开启网盘时
        if ($cfg['option']['pan']) {
            $str = '
			<script type="text/javascript">
			function dr_wangpan_' . $name . '() {
				var file_id = $("#dr_' . $name . '").val(); // 文件id
				$(".dr_' . $name . '_span_pan").html("<img align=\\"absmiddle\\" src=\\"' . SITE_URL . 'dayrui/static/images/onLoad.gif\\">");
				$(".' . $name . '_pan").each(function(){
					var pan = $(this).attr("pan"); // 当前列的网盘名称
					$.getJSON("' . MEMBER_PATH . 'index.php?c=api&m=wangpan&name="+pan+"&file="+encodeURIComponent(file_id)+"&rand="+Math.random(), function(data){
						if (data.status == 1) {
							$("#dr_' . $name . '_pan_"+pan).val(data.code);
							$("#dr_' . $name . '_pan_span_"+pan).html("<div class=\\"onCorrect\\">&nbsp;</div>");
						} else {
							$("#dr_' . $name . '_pan_span_"+pan).html(data.code);
						}
					});
				});
			}
			</script>';
            $str .= '<fieldset class="blue pad-10">';
            $str .= '	<legend>' . lang('m-120') . '</legend>';
            $str .= '	<table width="100%" border="0" cellspacing="0" cellpadding="0">';
            foreach ($pandata as $t) {
                $str .= '<tr class="' . $name . '_pan" pan="' . $t['name'] . '">';
                $str .= '	<td style="text-align:left">';
                $str .= '		<img align=\\"absmiddle\\" src="' . $t['icon'] . '" title="' . $t['title'] . '" style="cursor:pointer;">&nbsp;&nbsp;';
                $str .= '		<input type="text" class="input-text" style="width:50%;" id="dr_' . $name . '_pan_' . $t['name'] . '" value="' . $pan[$t['name']] . '" />';
                $str .= '		<span id="dr_' . $name . '_pan_span_' . $t['name'] . '" class="dr_' . $name . '_span_pan"></span>';
                $str .= '	</td>';
                $str .= '</tr>';
            }
            $str .= '	<tr>';
            $str .= '		<td style="text-align:left;border-bottom:none;">' . $tool;
            $str .= '		<input type="button" style="width:60px;" class="button" id="updatepan_' . $name . '" onclick="dr_wangpan_' . $name . '()" value="' . lang('m-121') . '" />';
            $str .= '		&nbsp;&nbsp;' . $finfo;
            $str .= '		</td>';
            $str .= '	</tr>';
            $str .= '	</table>';
            $str .= '</fieldset>';
        } else {
            $str = $tool . $finfo;
        }
        return $this->input_format($name, $text, $str);
    }