<?php namespace Phpcmf\Library;
class Function_list
{
private $uid_data = [];
function catid($catid, $param = [], $data = []) {
$url = IS_ADMIN ? \Phpcmf\Service::L('router')->url(APP_DIR.'/'.$_GET['c'].'/index', ['catid' => $catid]) : dr_url_prefix(dr_cat_value(APP_DIR, $catid, 'url'), MOD_DIR).'" target="_blank';
$value = dr_cat_value(APP_DIR, $catid, 'name');
return '<a href="'.$url.'">'.dr_strcut($value, 10).'</a>';
}
function comment($value, $param = [], $data = []) {
return $this->content($value, $param, $data);
}
function content($value, $param = [], $data = []) {
$value = htmlspecialchars(dr_clearhtml($value));
$title = dr_replace_emotion(dr_keyword_highlight(dr_strcut($value, 30), $param['keyword']));
!$title && $title = '...';
return isset($data['url']) && $data['url'] ? '<a href="'.dr_url_prefix($data['url'], MOD_DIR).'" target="_blank" title="'.$value.'">'.$title.'</a>' : $title;
}
function linkage_address($value, $param = [], $data = []) {
return dr_linkage('address', $value, 0, 'name');
}
function status($value, $param = [], $data = []) {
return '<label>'.($value ? '<span class="label label-sm label-success">'.dr_lang('已通过') : '<span class="label label-sm label-danger">'.dr_lang('待审核')).'</span></label>';
}
function title($value, $param = [], $data = []) {
$value = htmlspecialchars(dr_clearhtml($value));
$title = ($data['thumb'] ? '<i class="fa fa-photo"></i> ' : '').dr_keyword_highlight(dr_strcut($value, 30), $param['keyword']);
!$title && $title = '...';
return isset($data['url']) && $data['url'] ? ('<a href="'.dr_url_prefix($data['url'], MOD_DIR).'" target="_blank" title="'.$value.'">'.$title.'</a>'.($data['link_id'] > 0 ? ' <i class="fa fa-link font-green" title="'.dr_lang('同步链接').'"></i>' : '')) : $title;
}
function datetime($value, $param = [], $data = []) {
return dr_date($value, null, 'red');
}
function date($value, $param = [], $data = []) {
return dr_date($value, 'Y-m-d', 'red');
}
function author($value, $param = [], $data = []) {
if ($value == 'guest') {
return dr_lang('游客');
} elseif ((isset($data['username']) || isset($data['author'])) && $data['uid']) {
$member = $this->uid_data[$data['uid']] = isset($this->uid_data[$data['uid']]) && $this->uid_data[$data['uid']] ? $this->uid_data[$data['uid']] : \Phpcmf\Service::M('member')->username($data['uid']);
} else {
$member = $value;
}
return $value ? '<a class="fc_member_show" href="javascript:;" uid="'.intval($data['uid']).'" member="'.htmlspecialchars($member).'">'.dr_strcut($value, 10).'</a>' : dr_lang('游客');
}
function uid($uid, $param = [], $data = []) {
if (strlen($uid) > 12) {
return dr_lang('游客');
}
$this->uid_data[$uid] = isset($this->uid_data[$uid]) && $this->uid_data[$uid] ? $this->uid_data[$uid] : \Phpcmf\Service::M('member')->username($uid);
return $this->uid_data[$uid] ? '<a class="fc_member_show" href="javascript:;" uid="'.intval($uid).'" member="'.htmlspecialchars($this->uid_data[$uid]).'">'.dr_strcut($this->uid_data[$uid], 10).'</a>' : dr_lang('游客');
}
function ip($value, $param = [], $data = [], $len = 200) {
return '<a href="http://www.ip138.com/ips138.asp?ip='.$value.'&action=2" target="_blank">'.dr_strcut(\Phpcmf\Service::L('ip')->address($value), $len).'</a>';
}
function files($value, $param = [], $data = []) {
return dr_lang($value ? '有' : '无');
}
function price($value, $param = [], $data = []) {
return '<span style="color:#ef4c2f">¥'.number_format($value, 2).'</span>';
}
function price_quantity($value, $param = [], $data = []) {
return '<span style="color:#ef4c2f">¥'.number_format($value, 2).'</span> / '.$data['price_quantity'];
}
function fstatus($value, $param = [], $data = []) {
if (!dr_is_app('fstatus')) {
return '[模块内容开关]插件未安装';
}
return ' <a href="javascript:;" onclick="dr_ajax_open_close(this, \''.dr_url('fstatus/home/edit', ['id'=>$data['id'], 'mid'=>APP_DIR]).'\', 0);" class="badge badge-'.($value == 1 ? 'yes' : 'no').'"><i class="fa fa-'.($value == 1 ? 'check' : 'times').'"></i></a>';
}
}