更新至V1.77,更新内容在笔记中查看

This commit is contained in:
小胡
2023-02-07 16:46:06 +08:00
Unverified
parent c02f6ce3b0
commit 1fd35d368d
122 changed files with 1529 additions and 11158 deletions

View File

@@ -118,7 +118,7 @@
<div class="bs-main-container">
<div class="all-center-top clearfix">
<div class="pull-left">
<div class="checkbox-custom checkbox-primary">
<div class="checkbox-custom checkbox-primary" style="margin-top: .6em;">
<input type="checkbox" name="chkall" id="chkall" >
<label></label>
</div>

View File

@@ -280,20 +280,26 @@ if (!submitcheck('settingsubmit')) {
}elseif ($operation == 'loginset') {
if ($back = trim($settingnew['loginset']['background'])) {
if (strpos($back, '#') === 0) {
$settingnew['loginset']['bcolor'] = $back;
$settingnew['loginset']['url'] = '';
$settingnew['loginset']['img'] = '';
} else {
$arr = explode('.', $back);
$ext = array_pop($arr);
if ($ext && in_array(strtolower($ext), array('jpg', 'jpeg', 'gif', 'png'))) {
$settingnew['loginset']['img'] = $back;
$settingnew['loginset']['bcolor'] = '';
$settingnew['loginset']['url'] = '';
} else {
$settingnew['loginset']['url'] = $back;
$settingnew['loginset']['bcolor'] = '';
$settingnew['loginset']['img'] = '';
}
}
} else {
$settingnew['loginset']['bcolor'] = '';
}
if ($back = trim($settingnew['loginset']['bcolor'])) {
if (strpos($back, '#') === 0) {
$settingnew['loginset']['bcolor'] = $back;
}else {
$settingnew['loginset']['bcolor'] ='';
}
}
} elseif ($operation == 'qywechat') {
switch($_GET['fbind']) {

View File

@@ -31,7 +31,7 @@ $lang = array
'How many login failures are allowed before you can log in again'=>'允许登录失败多少后才可再次登录',
'sec'=>'秒',
'Visitor login display'=>'游客登录',
'If the mail server is not configured, do not enable it. Otherwise, the system stalls'=>'sec',
'If the mail server is not configured, do not enable it. Otherwise, the system stalls'=>'如果未配置邮件服务器,请不要启用,以免造成系统卡顿。',
'Notification Whether to notify by email'=>'如果未配置邮件服务器,请不要启用,以免造成系统卡顿。',
'Independent login page login template; Parameters will be synchronized to login (including administrator login), registration, password retrieval, and home application.'=>'独立登录页登录模板;参数会同步到登录(含管理员登录)、注册、找回密码、首页应用。',
'After the user selects tourist login, it will jump to the home page'=>'用户选择游客登录后会跳转至首页',

View File

@@ -483,15 +483,14 @@
<dd class="clearfix">
<input type="text" class="form-control" name="settingnew[loginset][background]" value="$setting[loginset][background]"/>
</dd>
<dd class="clearfix"><span class="help-inline">{lang for_color_set}设置图片和颜色会同步到首页背景设置。</span></dd>
<dd class="clearfix"><span class="help-inline">可以输入以('jpg', 'jpeg', 'gif', 'png')为后缀名的图片或输入网址,设置图片或网站会同步到首页背景设置。</span></dd>
</dl>
<dl>
<dt>{lang Visitor login display}</dt>
<dd class="clearfix">
<label class="radio-inline"><input type="radio" name="settingnew[loginset][youkedenlu]" <!--{if $setting[loginset][youkedenlu]=='1'}-->checked="checked"<!--{/if}--> value="1">{lang show}</label>
<label class="radio-inline"> <input type="radio" name="settingnew[loginset][youkedenlu]" <!--{if $setting[loginset][youkedenlu]=='0'}-->checked="checked"<!--{/if}--> value="0">{lang no_show}</label>
</dd>
<dd class="clearfix"><span class="help-inline">{lang After the user selects tourist login, it will jump to the home page}</span></dd>
<dl>
<dt>登录背景颜色</dt>
<dd class="clearfix">
<input type="text" class="form-control" name="settingnew[loginset][bcolor]" value="$setting[loginset][bcolor]"/>
</dd>
<dd class="clearfix"><span class="help-inline">只能输入颜色(如:#FFF),设置的颜色会同步到首页背景设置。</span></dd>
</dl>
<dl>
<dt>{lang Login template}</dt>
@@ -630,7 +629,7 @@
</dd>
</dl>
<dl>
<dt>{lang Notification Whether to notify by email}</dt>
<dt>{lang 通知是否邮件通知}</dt>
<dd class="clearfix">
<label class="radio-inline ">
<input type="radio" name="settingnew[mail][tzxxyjtz]" value="1" checked>{lang yes}

View File

@@ -100,9 +100,7 @@
</dl>
<dl>
<dd class="clearfix">
<button type="submit" class="btn btn-primary" name="exportsubmit" value="true">{lang blank_submit}</button>
</dd>
<button type="submit" class="btn btn-primary" name="exportsubmit" value="true">{lang blank_submit}</button>
</dl>
</form>
<!--{elseif $_GET['run']}-->

View File

@@ -35,12 +35,12 @@
{lang tools_updatecache_tpl}
</label>
</p>
<p class="clearfix ml20">
<dl>
<input class="btn btn-primary" name="confirmed" value="{lang confirms}" type="submit"> &nbsp;
<script type="text/javascript">
if(history.length > (BROWSER.ie ? 0 : 1)) document.write('<input type="button" class="btn btn-default" value="{lang cancel}" onClick="history.go(-1);">');
</script>
</p>
</dl>
</form>
<!--{elseif $step==2}-->
<p class="ml20">{lang tools_updatecache_waiting}</p>

View File

@@ -5,7 +5,7 @@
<style>
table {
border-collapse: collapse;
width: 95%;
width: 100%;
}
th {
text-align:center;
@@ -29,7 +29,7 @@
<div class="well well-sm">
<div class="container step_1">
<h2 class="title">用户信息</h2>
<table class="tb" style="margin:20px 0;">
<table class="tb">
<tbody>
<tr>
<th class="padleft">在线人数</th>
@@ -44,7 +44,7 @@
</tbody>
</table>
<h2 class="title">版本信息</h2>
<table class="tb" style="margin:20px 0;">
<table class="tb">
<tbody>
<tr>
<th class="padleft">官方版本</th>

View File

@@ -14,7 +14,7 @@ if(!defined('CORE_VERSION')) {
define('CORE_VERSION', '2.02');
define('CORE_RELEASE', '20180909');
define('CORE_FIXBUG' , '20000000');
define('CORE_XHVERSION', '1.76');
define('CORE_XHRELEASE', '20230205');
define('CORE_XHFIXBUG' , '20230205');
define('CORE_XHVERSION', '1.77');
define('CORE_XHRELEASE', '20230207');
define('CORE_XHFIXBUG' , '20230207');
}

View File

@@ -51,10 +51,5 @@ try{
<!--{if $_G['setting']['statcode']}-->
$_G['setting']['statcode']
<!--{/if}-->
<script type="text/javascript">
$("img").one("error", function(e){
$(this).attr("src", "static/image/common/logo.png");
});
</script>
</body>
</html>

View File

@@ -33,7 +33,4 @@
try{$.ajaxSetup({ cache: false });}catch(e){}
window.MSIE=1;
}
$("img").one("error", function(e){
$(this).attr("src", "static/image/common/logo.png");
});
</script>

View File

@@ -75,9 +75,6 @@
if (_notice.flashStep==2) {document.title="【$_G[setting][sitename]】";}
setTimeout(function(){_notice.flashTitle();},500); //循环
}
$("img").one("error", function(e){
$(this).attr("src", "static/image/common/logo.png");
});
</script>
<!--{/if}-->
<!--{if !$param[login]}-->

View File

@@ -59,6 +59,9 @@ html, body {
}
.module-list-view .item {
border-bottom: 1px solid #EEEEEE;
display: flex;
align-items: center;
justify-content: center;
/* border-top:1px solid #FFF;*/
}
.module-list-view .item:first{
@@ -104,8 +107,6 @@ html, body {
}
.module-list-view .item .name {
width: 100%;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.module-list-view .list-share .item .name-text {
@@ -127,13 +128,7 @@ html, body {
}
.module-list-view .col{
float: left;
height: 51px;
line-height: 51px;
text-indent: 10px;
width: 10%;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.module-list-view .col1{
float: left;
@@ -383,4 +378,4 @@ html, body {
}
.main-header{
border: none;
}
}

View File

@@ -10,6 +10,35 @@ CREATE TABLE dzz_admincp_session (
PRIMARY KEY (uid,panel)
) ENGINE=MyISAM;
CREATE TABLE IF NOT EXISTS dzz_user_wechat (
uid int(10) unsigned NOT NULL DEFAULT '0',
openid char(28) NOT NULL DEFAULT '',
appid char(18) NOT NULL DEFAULT '',
unionid char(29) NOT NULL DEFAULT '',
dateline int(10) unsigned NOT NULL DEFAULT '0',
UNIQUE KEY uid (uid),
UNIQUE KEY openid (openid,appid)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS dzz_test;
CREATE TABLE IF NOT EXISTS `dzz_test` (
`testid` int(10) NOT NULL AUTO_INCREMENT,
`name` char(30) NOT NULL DEFAULT '',
`dateline` int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`testid`),
KEY `dateline` (`dateline`)
) ENGINE=MyISAM;
CREATE TABLE IF NOT EXISTS dzz_user_wechat (
uid int(10) unsigned NOT NULL DEFAULT '0',
openid char(28) NOT NULL DEFAULT '',
appid char(18) NOT NULL DEFAULT '',
unionid char(29) NOT NULL DEFAULT '',
dateline int(10) unsigned NOT NULL DEFAULT '0',
UNIQUE KEY uid (uid),
UNIQUE KEY openid (openid,appid)
) ENGINE=MyISAM;
DROP TABLE IF EXISTS dzz_app_market;
CREATE TABLE dzz_app_market (
`appid` int(10) unsigned NOT NULL AUTO_INCREMENT,
@@ -200,6 +229,7 @@ CREATE TABLE dzz_comment (
authorid int(10) unsigned NOT NULL DEFAULT '0',
author varchar(15) NOT NULL DEFAULT '',
ip varchar(20) NOT NULL DEFAULT '',
`xtllq` tinytext,
`port` smallint(6) unsigned NOT NULL DEFAULT '0',
dateline int(10) unsigned NOT NULL DEFAULT '0',
message text NOT NULL,
@@ -795,7 +825,7 @@ CREATE TABLE dzz_resources_cat (
`default` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '1,系統默認0非系统默认',
iconview tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (id)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
) ENGINE=MyISAM;
DROP TABLE IF EXISTS dzz_resources_clipboard;
CREATE TABLE dzz_resources_clipboard (
@@ -970,6 +1000,9 @@ CREATE TABLE dzz_shares (
gid int(11) unsigned NOT NULL DEFAULT '0' COMMENT '群组id',
pfid int(11) NOT NULL DEFAULT '0',
`password` varchar(256) NOT NULL DEFAULT '' COMMENT '分享密码,留空为公开分享',
`yulan` tinyint(1) NOT NULL DEFAULT '0',
`login` tinyint(1) NOT NULL DEFAULT '0',
`xiazai` tinyint(1) NOT NULL DEFAULT '0',
`status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '-4文件不存在-3次数到-1已过期0正常',
private tinyint(1) unsigned NOT NULL DEFAULT '1',
count smallint(6) unsigned NOT NULL DEFAULT '0' COMMENT '分享使用次数',
@@ -1159,7 +1192,6 @@ CREATE TABLE dzz_user_profile (
PRIMARY KEY (uid,fieldid)
) ENGINE=MyISAM;
DROP TABLE IF EXISTS dzz_user_profile_setting;
CREATE TABLE dzz_user_profile_setting (
fieldid varchar(255) NOT NULL DEFAULT '',
@@ -1184,6 +1216,19 @@ CREATE TABLE dzz_user_profile_setting (
PRIMARY KEY (fieldid)
) ENGINE=MyISAM;
DROP TABLE IF EXISTS dzz_user_login;
CREATE TABLE dzz_user_login (
Id int(11) NOT NULL AUTO_INCREMENT,
uid int(10) unsigned NOT NULL DEFAULT '0',
username text NOT NULL,
usergroup text NOT NULL,
dlsb text NOT NULL,
ip varchar(20) NOT NULL DEFAULT '',
dateline int(10) unsigned NOT NULL DEFAULT '0',
type text NOT NULL,
PRIMARY KEY (Id)
) ENGINE=MyISAM;
DROP TABLE IF EXISTS dzz_user_status;
CREATE TABLE dzz_user_status (
uid int(10) unsigned NOT NULL,

View File

@@ -2,19 +2,18 @@
-- 转存表中的数据 `dzz_app_market`
--
INSERT INTO `dzz_app_market` (`appid`,`mid`, `appname`, `appico`, `appdesc`, `appurl`,`appadminurl`, `noticeurl`, `dateline`, `disp`, `vendor`, `haveflash`, `isshow`, `havetask`, `hideInMarket`, `feature`, `fileext`, `group`, `orgid`, `position`, `system`, `notdelete`, `open`, `nodup`, `identifier`, `app_path`, `available`, `version`, `upgrade_version`, `check_upgrade_time`, `extra`) VALUES
(1, 1, '管理', 'appico/201712/21/184312rthhhg9oujti9tuu.png', '管理员应用集合,方便管理员管理各个管理应用', '{dzzscript}?mod=appmanagement', '', '', 0, 1, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 1, 2, 1, 0, 0, 'appmanagement', 'dzz', 1, '2.0', '', 20171115, ''),
(2, 2, '机构用户', 'appico/201712/21/131016is1wjww2uwvljllw.png', 'Dzz机构用户管理', '{adminscript}?mod=orguser', '', '', 1377753015, 2, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'orguser', 'admin', 1, '2.0', '', 20171211, ''),
(1, 1, '管理', 'appico/201712/21/184312rthhhg9oujti9tuu.png', '管理员应用集合,方便管理员管理各个管理应用', '{adminscript}?mod=appmanagement', '', '', 0, 1, '乐云网络', 0, 1, 0, 0, '', '', 3, 0, 1, 2, 1, 1, 0, 'appmanagement', 'admin', 1, '2.0', '', 20171115, ''),
(2, 2, '机构用户', 'appico/201712/21/131016is1wjww2uwvljllw.png', 'Dzz机构用户管理', '{dzzscript}?mod=orguser', '', '', 1377753015, 2, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'orguser', 'dzz', 1, '2.0', '', 20171211, ''),
(3, 3, '系统设置', 'appico/201712/21/160754fwfmziiiift3gwsw.png', '系统基础设置', '{adminscript}?mod=setting', '', '', 1377677273, 3, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'setting', 'admin', 1, '2.0', '', 20171115, ''),
(4, 4, '应用市场', 'appico/201712/21/152718k9g2pc6wouwkklwl.png', '应用管理,应用市场,支持应用在线安装,在线升级等', '{adminscript}?mod=appmarket', '', '', 1377674837, 4, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'appmarket', 'admin', 1, '2.0', '', 20171115, ''),
(5, 5, '云设置和管理', 'appico/201712/21/171106u1dk40digrrr79ed.png', '设置和管理第三方云盘、云存储等', '{adminscript}?mod=cloud', '', '', 0, 5, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'cloud', 'admin', 1, '2.0', '', 20171115, ''),
(6, 6, '文件管理', 'appico/201712/21/175535t47bad99b7sssdwq.png', '管理和查看系统所有文件', '{adminscript}?mod=filemanage', '', '', 0, 6, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'filemanage', 'admin', 1, '2.0', '', 20180206, ''),
(7, 7, '分享管理', 'appico/201712/21/165535t47bad99b7qqqdwq.png', '管理和查阅所有分享', '{adminscript}?mod=share', '', '', 0, 7, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'share', 'admin', 1, '2.0', '', 20180206, ''),
(6, 6, '文件管理', 'appico/201712/21/175535t47bad99b7sssdwq.png', '管理和查看系统所有文件', '{dzzscript}?mod=filemanage', '', '', 0, 6, '乐云网络', 0, 1, 1, 0, '', '', 1, 0, 1, 2, 1, 1, 0, 'filemanage', 'dzz', 1, '2.0', '', 20180206, ''),
(7, 7, '分享管理', 'appico/201712/21/165535t47bad99b7qqqdwq.png', '管理和查阅所有分享', '{dzzscript}?mod=share', '', '', 0, 7, '乐云网络', 0, 1, 1, 0, '', '', 1, 0, 1, 2, 1, 1, 0, 'share', 'dzz', 1, '2.0', '', 20180206, ''),
(8, 8, '系统日志', 'appico/201712/21/113527zz2665xg7d3h2777.png', 'Dzz 日志记录', '{adminscript}?mod=systemlog', '{adminscript}?mod=systemlog&op=admin', '', 0, 8, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'systemlog', 'admin', 1, '2.0', '', 20171115, 'a:2:{s:11:\"installfile\";s:11:\"install.php\";s:13:\"uninstallfile\";s:13:\"uninstall.php\";}'),
(9, 9, '系统工具', 'appico/201712/21/160537cikgw2v6s6z4scuv.png', '系统维护相关工具集合,如:更新缓存、数据库备份,计划任务,在线升级等', '{adminscript}?mod=system', '', '', 1377677136, 9, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'system', 'admin', 1, '2.0', '', 20171115, ''),
(10, 10, '应用库', 'appico/201712/21/123754pb0s666i6sjws1jc.png', '通过应用库用户选择安装自己需要的应用', '{dzzscript}?mod=market', '', '{dzzscript}?mod=market&op=notice', 1378615073, 10, '乐云网络', 0, 1, 1, 0, '', '', 1, 0, 1, 0, 1, 0, 0, 'market', 'dzz', 0, '2.0', '', 20171115, ''),
(11, 11, '投票', 'appico/201712/21/150002d834yjjqnq82qj8z.png', 'Dzz 内置投票组件,结合其他应用使用,如新闻中用到投票插件,其他开发者也可以为自己的应用调用这个通用评论插件', '{dzzscript}?mod=dzzvote', '', '', 1378615073, 11, '乐云网络', 0, 0, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'dzzvote', 'dzz', 1, '2.0', '', 20171115, ''),
(12, 12, '评论', 'appico/201712/21/128754pb0s666i6sjws1jc.png', 'Dzz 系统评论组件,结合在其他应用使用,如新闻。其他开发者也可以为自己的应用调用这个通用评论插件', '{dzzscript}?mod=comment', '', '', 1378615073, 12, '乐云网络', 0, 0, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'comment', 'dzz', 1, '2.0', '', 20171115, ''),
(13, 37, '用户资料管理', 'appico/201712/21/103805dczcm89b0gi8i9gc.png', '管理用户资料、资料审核、认证等', '{adminscript}?mod=member', '', '', 1378615073, 13, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'member', 'admin', 1, '2.0', '', 20171115, '');
(10, 10, '投票', 'appico/201712/21/150002d834yjjqnq82qj8z.png', 'Dzz 内置投票组件,结合其他应用使用,如新闻中用到投票插件,其他开发者也可以为自己的应用调用这个通用评论插件', '{dzzscript}?mod=dzzvote', '', '', 1378615073, 11, '乐云网络', 0, 0, 1, 0, '', '', 1, 0, 0, 2, 1, 1, 0, 'dzzvote', 'dzz', 1, '2.0', '', 20171115, ''),
(11, 11, '评论', 'appico/201712/21/128754pb0s666i6sjws1jc.png', 'Dzz 系统评论组件,结合其他应用使用,如新闻其他开发者也可以为自己的应用调用这个通用评论插件', '{dzzscript}?mod=comment', '', '', 1378615073, 12, '乐云网络', 0, 1, 0, 0, '', '', 1, 0, 1, 2, 1, 1, 0, 'comment', 'dzz', 1, '2.0', '', 20171115, ''),
(12, 37, '用户资料管理', 'appico/201712/21/103805dczcm89b0gi8i9gc.png', '管理用户资料、资料审核、认证等', '{adminscript}?mod=member', '', '', 1378615073, 13, '乐云网络', 0, 1, 1, 0, '', '', 3, 0, 0, 2, 1, 0, 0, 'member', 'admin', 1, '2.0', '', 20171115, '');
--
-- 转存表中的数据 `dzz_app_tag`
--
@@ -44,7 +43,6 @@ INSERT INTO `dzz_connect` VALUES('FTP', '', '', 'ftp', 'ftp', '', 2, 'connect_ft
INSERT INTO `dzz_connect` VALUES('七牛云存储', '', '', 'storage', 'qiniu', '', 2, 'connect_storage', '', 0);
INSERT INTO `dzz_connect` VALUES('OneDrive', '', '', 'pan', 'OneDrive', '', 0, 'connect_onedrive', '', 0);
INSERT INTO `dzz_connect` VALUES('本地磁盘', '', '', 'disk', 'disk', '', 1, 'connect_disk', '', -1);
INSERT INTO `dzz_connect` VALUES('Minio', '', '', 'storage', 'Minio', '', 2, 'connect_storage', '', 0);
INSERT INTO `dzz_connect` VALUES('Qcos', '', '', 'storage', 'QCOS', '', 2, 'connect_storage', '', 0);
--
@@ -145,8 +143,8 @@ INSERT INTO `dzz_usergroup_field` VALUES(5, -1, '', 0, 1);
INSERT INTO `dzz_usergroup_field` VALUES(6, -1, '', 0, 1);
INSERT INTO `dzz_usergroup_field` VALUES(7, -1, 'gif, jpg, jpeg, png', 0, 7);
INSERT INTO `dzz_usergroup_field` VALUES(8, -1, '', 0, 7);
INSERT INTO `dzz_usergroup_field` VALUES(9, 10240, '', 0, 524287);
INSERT INTO `dzz_usergroup_field` VALUES(10, 10240, '', 0, 229039);
INSERT INTO `dzz_usergroup_field` VALUES(9, 0, '', 0, 524287);
INSERT INTO `dzz_usergroup_field` VALUES(10, 0, '', 0, 229039);
--
@@ -178,6 +176,10 @@ INSERT INTO `dzz_setting` VALUES('timeoffset', '8');
INSERT INTO `dzz_setting` VALUES('reginput', 'a:4:{s:8:"username";s:8:"username";s:8:"password";s:8:"password";s:9:"password2";s:9:"password2";s:5:"email";s:5:"email";}');
INSERT INTO `dzz_setting` VALUES('newusergroupid', '9');
INSERT INTO `dzz_setting` VALUES('dateformat', 'Y-n-j');
INSERT INTO `dzz_setting` VALUES('default_mod', 'index_simple');
INSERT INTO `dzz_setting` VALUES('forbiddentime', '900');
INSERT INTO `dzz_setting` VALUES('numberoflogins', '5');
INSERT INTO `dzz_setting` VALUES('notification', '60');
INSERT INTO `dzz_setting` VALUES('timeformat', 'H:i');
INSERT INTO `dzz_setting` VALUES('userdateformat', '');
INSERT INTO `dzz_setting` VALUES('metakeywords', '');
@@ -201,7 +203,7 @@ INSERT INTO `dzz_setting` VALUES('feed_at_user_title', '同事');
INSERT INTO `dzz_setting` VALUES('feed_at_range', 'a:3:{i:9;s:1:"1";i:2;s:1:"2";i:1;s:1:"3";}');
INSERT INTO `dzz_setting` VALUES('at_range', 'a:3:{i:9;s:1:"1";i:2;s:1:"2";i:1;s:1:"3";}');
--INSERT INTO `dzz_setting` VALUES('sitecopyright', '<img alt="dzzoffice" src="dzz/images/logo.png" width="263" height="82"><div style="font-size: 16px;font-weight:bold;text-align:center;padding: 20px 0 10px 0;text-shadow: 1px 1px 1px #FFF;">dzzoffice</div><div style="font-size: 16px;font-weight:bold;text-align:center;padding: 0 0 25px 0;text-shadow:1px 1px 1px #fff">协同办公平台</div><div style="font-size: 12px;text-align:center;padding: 0 0 10px 0;text-shadow:1px 1px 1px #fff">©2012-2017 DzzOffice</div><div style="font-size: 12px;text-align:center;text-shadow:1px 1px 1px #fff">备案信息</div>');
INSERT INTO `dzz_setting` VALUES('loginset', 'a:5:{s:5:"title";s:9:"DzzOffice";s:8:"subtitle";s:18:"协同办公平台";s:10:"background";s:0:"";s:8:"template";s:1:"1";s:6:"bcolor";s:17:"rgb(58, 110, 165)";}');
INSERT INTO `dzz_setting` VALUES('loginset', 'a:5:{s:5:"title";s:9:"DzzOffice";s:8:"subtitle";s:18:"协同办公平台";s:10:"background";s:0:"";s:8:"template";s:1:"1";s:6:"bcolor";s:0:"";}');
INSERT INTO `dzz_setting` VALUES('privacy', 'a:1:{s:7:"profile";a:17:{s:9:"education";i:1;s:8:"realname";i:-1;s:7:"address";i:0;s:9:"telephone";i:0;s:15:"affectivestatus";i:0;s:10:"department";i:0;s:8:"birthday";i:0;s:13:"constellation";i:0;s:9:"bloodtype";i:0;s:6:"gender";i:0;s:6:"mobile";i:0;s:2:"qq";i:0;s:7:"zipcode";i:0;s:11:"nationality";i:0;s:14:"graduateschool";i:0;s:8:"interest";i:0;s:3:"bio";i:0;}}');
INSERT INTO `dzz_setting` VALUES('thumbsize', 'a:3:{s:5:"small";a:2:{s:5:"width";i:256;s:6:"height";i:256;}s:6:"middle";a:2:{s:5:"width";i:800;s:6:"height";i:600;}s:5:"large";a:2:{s:5:"width";i:1440;s:6:"height";i:900;}}');
INSERT INTO `dzz_setting` VALUES('verify', 'a:8:{i:1;a:9:{s:4:"desc";s:0:"";s:9:"available";s:1:"1";s:8:"showicon";s:1:"0";s:5:"field";a:1:{s:8:"realname";s:8:"realname";}s:8:"readonly";i:1;s:5:"title";s:12:"实名认证";s:4:"icon";s:31:"common/verify/1/verify_icon.jpg";s:12:"unverifyicon";s:0:"";s:7:"groupid";a:0:{}}i:2;a:8:{s:5:"title";s:0:"";s:4:"desc";s:0:"";s:9:"available";s:1:"0";s:8:"showicon";s:1:"0";s:8:"readonly";N;s:4:"icon";s:0:"";s:12:"unverifyicon";s:0:"";s:7:"groupid";a:0:{}}i:3;a:8:{s:5:"title";s:0:"";s:4:"desc";s:0:"";s:9:"available";s:1:"0";s:8:"showicon";s:1:"0";s:8:"readonly";N;s:4:"icon";s:0:"";s:12:"unverifyicon";s:0:"";s:7:"groupid";a:0:{}}i:4;a:4:{s:4:"icon";s:0:"";s:12:"unverifyicon";s:0:"";s:9:"available";i:0;s:5:"title";s:0:"";}i:5;a:4:{s:4:"icon";s:0:"";s:12:"unverifyicon";s:0:"";s:9:"available";i:0;s:5:"title";s:0:"";}i:6;a:4:{s:4:"icon";s:0:"";s:12:"unverifyicon";s:0:"";s:9:"available";i:0;s:5:"title";s:0:"";}i:7;a:4:{s:4:"icon";s:0:"";s:12:"unverifyicon";s:0:"";s:9:"available";i:0;s:5:"title";s:0:"";}s:7:"enabled";b:1;}');

View File

@@ -381,6 +381,7 @@ function show_license() {
show_header();
$title = lang('step_env_check_title');
$version='DzzOffice'.CORE_VERSION.' &nbsp;&nbsp; '.INSTALL_LANG.' '.CORE_RELEASE;
$xhversion='小胡 版本'.CORE_XHVERSION.' &nbsp;&nbsp; '.CORE_XHRELEASE;
$release = CORE_RELEASE;
$install_lang = lang(INSTALL_LANG);
echo <<<EOT
@@ -393,9 +394,11 @@ function show_license() {
<div class="spacer"></div>
<h4 style="font-size:20px;">$install_lang</h4>
<h4>$version</h4>
<h4>$xhversion</h4>
<div class="spacer"></div>
<div ><a href="?step=1" class="button_start"><span>$title</span></a></div>
<div class="spacer"></div>
<div style="font-size: large;line-height: 30px;">小胡二次开发 <a href="https://gitee.com/xh2002">https://gitee.com/xh2002</a><br>在使用过程中如有问题请及时反馈至dzzoffice官方或我的主页</div>
</td></tr>
</table>

View File

@@ -6,7 +6,7 @@ $lang=array (
'database_connect_error' => '数据库连接错误',
'to_back' => '返回上一步',
'php_version_too_low' => 'php版本太低啦请先升级php到5.3以上建议使用php5.4及以上',
'SC_UTF8' => '简体中文 UTF8 版',
'SC_UTF8' => '双语言 UTF8 版',
'EN_UTF8' => 'ENGLIST UTF-8',
'error_quit_msg' => '安装出现问题了,无法继续,请解决下面提示的问题后刷新继续',
'title_install' => 'DzzOffice 安装向导',

View File

@@ -51,10 +51,10 @@ if($_GET['from']) {
$lockfile = DZZ_ROOT.'./data/update.lock';
if(file_exists($lockfile) && !$_GET['from']) {
show_msg('请您先登录服务器ftp手工删除 ./data/update.lock 文件,再次运行本文件进行升级。');
show_msg('请您先手工删除 ./data/update.lock 文件,再次运行本文件进行升级。');
}
$sqlfile = DZZ_ROOT.'./install/data/install.sql';
$sqlfile = 'data/install.sql';
if(!file_exists($sqlfile)) {
show_msg('SQL文件 '.$sqlfile.' 不存在');
@@ -102,7 +102,7 @@ if($_GET['step'] == 'start') {
show_msg('您的站点未关闭,正在关闭,请稍后...', $theurl.'?step=start', 5000);
}
show_msg('说明:<br>本升级程序会参照最新的SQL文件对数据库进行同步升级。<br>
请确保当前目录下 ./data/install.sql 文件为最新版本。<br><br>
请确保您已将最新版文件覆盖至本地文件。<br>升级会还原部分默认设置。<br><br>
<a href="'.$theurl.'?step=prepare'.($_GET['from'] ? '&from='.rawurlencode($_GET['from']).'&frommd5='.rawurlencode($_GET['frommd5']) : '').'">准备完毕,升级开始</a>');
} elseif ($_GET['step'] == 'waitingdb') {
@@ -258,51 +258,158 @@ if($_GET['step'] == 'start') {
} elseif ($_GET['step'] == 'data') {
if(!$_GET['dp']){
//新增两个配置项
if(!DB::result_first("select COUNT(*) from %t where skey=%s",array('setting','fileVersion'))){
C::t('setting')->update('fileVersion', '1');
}
if(!DB::result_first("select COUNT(*) from %t where skey=%s",array('setting','fileVersionNumber'))){
C::t('setting')->update('fileVersionNumber', '50');
//添加云设置和管理应用
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{adminscript}?mod=cloud'))){
C::t('app_market')->insert(array('appname'=>'云设置和管理',
'appico'=>'appico/201712/21/171106u1dk40digrrr79ed.png',
'appurl'=>'{adminscript}?mod=cloud',
'appdesc'=>'设置和管理第三方云盘、云存储等',
}
if(!DB::result_first("select COUNT(*) from %t where skey=%s",array('setting','default_mod'))){
C::t('setting')->update('default_mod', 'index_simple');
}
if(!DB::result_first("select COUNT(*) from %t where skey=%s",array('setting','forbiddentime'))){
C::t('setting')->update('forbiddentime', '900');
}
if(!DB::result_first("select COUNT(*) from %t where skey=%s",array('setting','numberoflogins'))){
C::t('setting')->update('numberoflogins', '5');
}
if(!DB::result_first("select COUNT(*) from %t where skey=%s",array('setting','notification'))){
C::t('setting')->update('notification', '60');
}
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{adminscript}?mod=appmanagement'))){
DB::delete('app_market', array('appurl' => '{dzzscript}?mod=appmanagement'));
C::t('app_market')->insert(array('appname'=>'管理',
'appico'=>'appico/201712/21/184312rthhhg9oujti9tuu.png',
'appurl'=>'{adminscript}?mod=appmanagement',
'appdesc'=>'管理员应用集合,方便管理员管理各个管理应用',
'dateline'=>TIMESTAMP,
'disp'=>5,
'disp'=>1,
'mid'=>1,
'vendor'=>'乐云网络',
'group'=>3,
'haveflash'=>0,
'isshow'=>1,
'havetask'=>0,
'hideInMarket'=>0,
'system'=>2,
'notdelete'=>1,
'position'=>0,
'position'=>1,
'open'=>1,
'app_path'=>'admin',
'identifier'=>'cloud',
'identifier'=>'appmanagement',
'version'=>'2.0',
'check_upgrade_time'=>'20171115',
'available'=>1),0,1);
}
//添加用户资料管理应用
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{adminscript}?mod=member'))){
C::t('app_market')->insert(array('appname'=>'用户资料管理',
'appico'=>'appico/201712/21/103805dczcm89b0gi8i9gc.png',
'appurl'=>'{adminscript}?mod=member',
'appdesc'=>'用户资料项配置,资料审核,认证等',
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{dzzscript}?mod=filemanage'))){
C::t('app_market')->insert(array('appname'=>'文件管理',
'appico'=>'appico/201712/21/175535t47bad99b7sssdwq.png',
'appurl'=>'{dzzscript}?mod=filemanage',
'appdesc'=>'管理和查看系统所有文件',
'dateline'=>TIMESTAMP,
'disp'=>10,
'disp'=>6,
'mid'=>6,
'vendor'=>'乐云网络',
'group'=>3,
'haveflash'=>0,
'isshow'=>1,
'havetask'=>1,
'hideInMarket'=>0,
'group'=>1,
'position'=>1,
'system'=>2,
'notdelete'=>1,
'position'=>0,
'app_path'=>'admin',
'identifier'=>'member',
'open'=>1,
'nodup'=>0,
'identifier'=>'filemanage',
'app_path'=>'dzz',
'available'=>1,
'version'=>'2.0',
'available'=>1),0,1);
'check_upgrade_time'=>'20180206'),0,1);
}
if(DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{adminscript}?mod=filemanage'))){
DB::delete('app_market', array('appurl' => '{adminscript}?mod=filemanage'));
}
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{dzzscript}?mod=orguser'))){
C::t('app_market')->insert(array('appname'=>'机构用户',
'appico'=>'appico/201712/21/131016is1wjww2uwvljllw.png',
'appurl'=>'{dzzscript}?mod=orguser',
'appdesc'=>'',
'dateline'=>TIMESTAMP,
'disp'=>2,
'mid'=>2,
'vendor'=>'乐云网络',
'haveflash'=>0,
'isshow'=>1,
'havetask'=>1,
'hideInMarket'=>0,
'group'=>1,
'position'=>1,
'system'=>2,
'notdelete'=>1,
'open'=>1,
'nodup'=>0,
'identifier'=>'orguser',
'app_path'=>'dzz',
'available'=>1,
'version'=>'2.0',
'check_upgrade_time'=>'20220204'),0,1);
}
if(DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{adminscript}?mod=orguser'))){
DB::delete('app_market', array('appurl' => '{adminscript}?mod=orguser'));
}
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{dzzscript}?mod=share'))){
C::t('app_market')->insert(array('appname'=>'分享管理',
'appico'=>'appico/201712/21/165535t47bad99b7qqqdwq.png',
'appurl'=>'{dzzscript}?mod=share',
'appdesc'=>'管理和查阅所有分享',
'dateline'=>TIMESTAMP,
'disp'=>7,
'mid'=>7,
'vendor'=>'乐云网络',
'haveflash'=>0,
'isshow'=>1,
'havetask'=>1,
'hideInMarket'=>0,
'group'=>1,
'position'=>1,
'system'=>2,
'notdelete'=>1,
'open'=>1,
'nodup'=>0,
'identifier'=>'share',
'app_path'=>'dzz',
'available'=>1,
'version'=>'2.0',
'check_upgrade_time'=>'20180206'),0,1);
}
if(DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{adminscript}?mod=share'))){
DB::delete('app_market', array('appurl' => '{adminscript}?mod=share'));
}
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{dzzscript}?mod=comment'))){
C::t('app_market')->insert(array('appname'=>'评论',
'appico'=>'appico/201712/21/128754pb0s666i6sjws1jc.png',
'appurl'=>'{dzzscript}?mod=comment',
'appdesc'=>'Dzz 系统评论组件,结合在其他应用使用,如新闻。其他开发者也可以为自己的应用调用这个通用评论插件',
'dateline'=>TIMESTAMP,
'disp'=>12,
'mid'=>12,
'vendor'=>'乐云网络',
'haveflash'=>0,
'isshow'=>1,
'havetask'=>1,
'hideInMarket'=>0,
'group'=>1,
'position'=>1,
'system'=>2,
'notdelete'=>1,
'open'=>1,
'nodup'=>0,
'identifier'=>'comment',
'app_path'=>'dzz',
'available'=>1,
'version'=>'2.0',
'check_upgrade_time'=>'20171115'),0,1);
}
//处理更新之后群组开关问题
DB::update('organization',array('manageon'=>1,'available'=>1,'syatemon'=>1),"1");
show_msg("基本设置修改完成", "$theurl?step=data&dp=1");
@@ -345,6 +452,7 @@ if($_GET['step'] == 'start') {
$count_i = DB::result_first("select COUNT(*) from %t",array('folder'));
if($i>=$count_i) {
show_msg('开始修复回收站...', $theurl.'?step=data&dp=4');
}
$arr=DB::fetch_first("select fid from %t order by fid limit $i,1",array('folder'));
@@ -614,7 +722,7 @@ function show_header() {
</head>
<body>
<div class="bodydiv">
<h1>DzzOffice 数据库升级工具</h1>
<h1>DzzOffice 小胡版 数据库升级工具</h1>
<div style="width:90%;margin:0 auto;">
<table id="menu">
<tr>

File diff suppressed because one or more lines are too long

View File

@@ -461,9 +461,6 @@ button.input-search-drop {
}
.main-allnotice .panel-heading{
background-color: #FFFFFF;
padding: 20px 0px 10px;
margin-left: 22px;
margin-right: 17px;
}
.main-allnotice .panel-heading img{
max-width: 30px;
@@ -487,6 +484,9 @@ button.input-search-drop {
.panel-body .details{
padding-left: 10px;
}
.details{
margin: var(--radius);
}
.main-allnotice .panel-body .note{
padding-right:40px;
}

View File

@@ -1,10 +1,12 @@
.checkbox-custom, .radio-custom {
font-size: 16px;
position: relative;
display: block;
margin:var(--radius);
padding: var(--radius);
position: relative;
display: block;
margin-top: 1em;
margin-bottom: 1em;
padding-left: 1em;
line-height:1em;
}
.checkbox-custom input[type=radio], .checkbox-custom input[type=checkbox], .radio-custom input[type=radio]{
@@ -26,7 +28,7 @@
.checkbox-custom label, .radio-custom label{
position: relative;
display: inline-block;
padding-left: var(--radius);
padding-left: 1em;
/*vertical-align: middle;*/
}
.checkbox-custom label, .radio-custom label {
@@ -94,6 +96,8 @@
-o-transform: scale(0,0);
transform: scale(0,0);
transition-transform: .1s cubic-bezier(.8,-.33,.2,1.33);
transition: all 0.3s;
}
.radio-custom label::before {
position: absolute;

File diff suppressed because one or more lines are too long

811
static/css/dlzc1.css Normal file
View File

@@ -0,0 +1,811 @@
/* reset code */
html {
scroll-behavior: smooth;--radius: 5px;
}
* {
box-sizing: border-box;
font-family: 'Kumbh Sans', sans-serif;
}
/*button样式开始*/
.btn{
transition-property: all;
transition-duration: .3s;
padding: 0.45rem 2.152rem;
font-size: 0.92rem;
font-weight: bold;
border-radius: var(--radius);
}
.btn.focus, .btn:focus, .btn:hover{
box-shadow: 0px 1px 5px 0px rgba(28, 28, 28, 0.28);
}
.btn-link:focus, .btn-link:hover{
box-shadow:none;
}
.btn.active.focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn:active:focus, .btn:focus{
outline: none;
}
.btn.active, .btn:active{
-webkit-box-shadow: none;
box-shadow: none;
}
.btn-circle{
border-radius: var(--radius);
padding: 10px 22px;
}
.btn-pill-left {
border-radius: var(--radius);
}
.btn-pill-right {
border-radius: var(--radius);
}
/*默认样式开始*/
.btn-default{
border-color: #bbbbbb;
color:#666;
background-color: #FFFFFF;
margin: 5px;
}
.btn-default:hover{
color:#666666;
background-color: #e8fff5;
}
.btn-default.active.focus, .btn-default.active:focus, .btn-default.active:hover, .btn-default:active.focus, .btn-default:active:focus, .btn-default:active:hover, .open>.dropdown-toggle.btn-default.focus, .open>.dropdown-toggle.btn-default:focus, .open>.dropdown-toggle.btn-default:hover{
color: #bbbbbb;
border-color: #bbbbbb;
background-color: #f2f2f2;
}
.btn-default:focus{
background-color: #FFFFFF;
border-color: #bbbbbb;
color:#666666;
border: 1px solid #bbb;
}
.btn-default:active{
background-color: #f2f2f2;
border-color: #bbbbbb;
color: #bbbbbb;
text-shadow: 0px 1px 0px rgba(255, 255, 255, 1);
}
.btn-default-3d{
box-shadow: 0px 2px 0px 0px rgba(187, 187, 187, 1);
position:relative
}
.btn-default-3d:active{
box-shadow: 0px 0px 0px 0px rgba(187, 187, 187, 1);
top: 1px;
background-color: #f2f2f2;
border-color: #bbbbbb;
color: #bbbbbb;
text-shadow: 0px 1px 0px rgba(255, 255, 255, 1);
}
/*边框默认样式*/
.btn-default-outline{
background: none;
border: 1px solid #cccccc;
color: #666;
transition:0.5s linear;
}
.btn-default-outline:hover{
background: #F2F2F2;
border: 1px solid #CCCCCC;
color: #666;
}
.btn-default-outline:focus{
background:#DDDDDD;
border: 1px solid #CCCCCC;
color: #666;
}
.btn-default-outline:active{
background-color: #DDDDDD;
border: 1px solid #CCCCCC;
color: #666;
text-shadow: 0rem 1rem 0rem rgba(255, 255, 255, 0.20);
}
/*成功样式*/
.btn-success{
color:#FFFFFF;
background-color: #00aa63;
border-color: transparent;
}
.btn-success-3d{
box-shadow: 0 3px 0 #009253, 0 4px 1px rgba(0, 0, 0, 0.3);
position: relative;
top: 0px;
}
.btn-success:hover{
color:#FFFFFF;
background-color: #05be6d;
border-color: transparent;
}
.btn-success.active.focus, .btn-success.active:focus, .btn-success.active:hover, .btn-success:active.focus, .btn-success:active:focus, .btn-success:active:hover, .open>.dropdown-toggle.btn-success.focus, .open>.dropdown-toggle.btn-success:focus, .open>.dropdown-toggle.btn-success:hover{
background-color: #05be6d;
color: #009253;
border-color: transparent;
}
.btn-success:focus{
color:#FFFFFF;
background-color: #00aa63;
border-color: transparent;
}
.btn-success-3d:focus{
color:#FFFFFF;
background-color: #00aa63;
box-shadow: 0 3px 0 #009253, 0 4px 1px rgba(0, 0, 0, 0.3);
}
.btn-success:active{
background-color: #05be6d;
color: #009253;
text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.20);
-webkit-transition-property: all;
transition-property: all;
-webkit-transition-duration: .15s;
transition-duration: .15s;
}
.btn-success-3d:active{
box-shadow: 0 1px 0 #009253, 0 1px 1px rgba(0, 0, 0, 0.2);
top: 2px;
background-color: #05be6d;
color: #009253;
text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.20);
-webkit-transition-property: all;
transition-property: all;
-webkit-transition-duration: .15s;
transition-duration: .15s;
}
/*边框成功样式*/
.btn-success-outline{
background: none;
border: 1px solid #00aa63;
color: #00aa63;
}
.btn-success-outline:hover{
background:#05be6d;
border: 1px solid #05be6d;
color: #FFFFFF;
}
.btn-success-outline:focus{
background:#05be6d;
border: 1px solid #05be6d;
color: #FFFFFF;
}
.btn-success-outline:active{
background-color: #05be6d;
color: #009253;
text-shadow: 0px 1px 0px rgba(255, 255, 255, 0.20);
-webkit-transition-property: all;
transition-property: all;
-webkit-transition-duration: .15s;
transition-duration: .15s;
}
/*小图标*/
.btn .icon {
width: 1em;
margin: -1px 5px 0;
line-height: inherit;
text-align: center;
}
.btn-icon,
.btn.icon {
padding: 10px;
line-height: 1em;
}
.btn-icon.btn-xs,
.btn.icon.btn-xs {
padding: 4px;
font-size: 12px;
}
.btn-icon.btn-sm,
.btn.icon.btn-sm {
padding: 8px;
font-size: 14px;
}
.btn-icon.btn-lg,
.btn.icon.btn-lg {
padding: 12px;
font-size: 20px;
}
.btn-icon.disabled,
.btn.icon.disabled {
color: #a3afb7;
}
.btn-icon .icon {
margin: -1px 0 0;
}
.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}
.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}
.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}
.modal-open .modal{overflow-x:hidden;overflow-y:auto}
.modal-dialog{position:relative;width:auto;margin:10px}
.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}
.modal-backdrop{position:absolute;top:0;right:0;left:0;bottom:0;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}
.modal-header{min-height:16.43px;padding:15px;}.modal-header .close{margin-top:-2px;}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}
.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}
.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}
@media (min-width:768px){
.modal-dialog{width:600px;margin:30px auto}
.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}
.modal-sm{width:300px}
}
@media (min-width:992px){
.modal-lg{width:900px}
}
.modal-open .in.modal{
display: -moz-flex!important;
display: -webkit-flex!important;
display: -ms-flexbox!important;
display:flex !important;
}
.modal .modal-header,.modal-open .modal .modal-body{
clear:both;
}
.modal .modal-dialog{
margin: auto;
padding: 30px 0;
}
.modal .modal-footer{
border: 0;
padding: 0 20px 15px 20px;
}
.error-msg{
color: #FF0000;
}
.help-msg{
color: #FF0000;
}
/* wrapper */
.wrapper {
width: 100%;
padding-right: 15px;
padding-left: 15px;
margin-right: auto;
margin-left: auto;
}
@media (min-width: 576px) {
.wrapper {
max-width: 540px;
}
}
@media (min-width: 768px) {
.wrapper {
max-width: 720px;
}
}
@media (min-width: 992px) {
.wrapper {
max-width: 960px;
}
}
@media (min-width: 1200px) {
.wrapper {
max-width: 1140px;
}
}
/* /wrapper */
.d-grid {
display: grid;
}
button,
input,
select {
-webkit-appearance: none;
outline: none;
}
button,
.btn,
select {
cursor: pointer;
}
a {
text-decoration: none;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol {
margin: 0;
padding: 0;
}
form,
fieldset {
border: 0;
padding: 0;
margin: 0;
}
/*-- //Reset-Code --*/
/*-- form styling --*/
.signinform {
padding: 40px 40px;
justify-content: center;
display: grid;
grid-template-rows: 1fr auto 1fr;
align-items: center;
min-height: 100vh;
}
input[type="text"],
input[type="email"],
input[type="Password"] {
font-size: 17px;
font-weight: 500;
color: #999;
text-align: left;
width: 100%;
display: inline-block;
box-sizing: border-box;
border: none;
outline: none;
background: transparent;
letter-spacing: .5px;
}
.input-group {
margin-bottom: 25px;
padding: 0px 0px;
border-bottom: 1px solid #e5e5e5;
position: relative;
}
.btn-block {
display: block;
width: 50%;
margin: 0 auto;
}
.btn:active {
outline: none;
}
.btn-primary {
color: #fff;
background-color: #6769e8;
margin-top: 30px;
outline: none;
width: 100%;
padding: 15px 15px;
cursor: pointer;
font-size: 18px;
font-weight: 600;
border-radius: 30px;
-webkit-border-radius: 30px;
-moz-border-radius: 30px;
-ms-border-radius: 30px;
-o-border-radius: 30px;
border: none;
text-transform: capitalize;
}
.btn-primary:hover {
background-color: #4d50c4;
color: #fff;
}
.form-row.bottom {
display: flex;
justify-content: space-between;
}
.form-row .form-check input[type="checkbox"] {
display: none;
}
.form-row .form-check input[type="checkbox"]+label:before {
border-radius: 3px;
border: 1px solid #e2e2e2;
color: transparent;
content: "\2714";
display: inline-block;
height: 18px;
margin-right: 5px;
transition: 0.2s;
vertical-align: inherit;
width: 18px;
text-align: center;
line-height: 20px;
}
.form-row .form-check input[type="checkbox"]:checked+label:before {
background-color: #4d61fc;
border-color: #4d61fc;
color: #fff;
}
.form-row .form-check input[type="checkbox"]+label {
cursor: pointer;
color: #888;
}
.w3_info h2 {
display: inline-block;
font-size: 25px;
line-height: 35px;
margin-bottom: 20px;
font-weight: 600;
color: #3b3663;
}
.w3_info h4 {
display: inline-block;
font-size: 15px;
padding: 8px 0px;
color: #444;
text-transform: capitalize;
}
a.btn.btn-block.btn-social.btn-qqlogin {
display: block;
width: 100%;
padding: 10px 0px;
text-align: center;
font-size: 16px;
font-weight: 600;
}
.w3_info {
flex-basis: 50%;
-webkit-flex-basis: 50%;
box-sizing: border-box;
padding: 3em 3.5em;
background: #fff;
box-shadow: 2px 9px 49px -17px rgba(0, 0, 0, 0.1);
border-radius: .5rem;
}
.w3l-form-info {
display: -webkit-box;
/* OLD - iOS 6-, Safari 3.1-6 */
display: -moz-box;
/* OLD - Firefox 19- (buggy but mostly works) */
display: -ms-flexbox;
/* TWEENER - IE 10 */
display: -webkit-flex;
/* NEW - Chrome */
display: flex;
/* NEW, Spec - Opera 12.1, Firefox 20+ */
margin: 40px 0;
}
.w3_info p {
padding: 10px;
text-align: center;
}
p.account,
p.account a {
text-align: center;
padding-top: 20px;
padding-bottom: 0px;
font-size: 16px;
color: #888;
}
p.account a {
color: #6769e8;
}
p.account a:hover {
text-decoration: underline;
}
a.forgot {
color: #3b3663;
margin-top: 2px;
}
a.forgot:hover {
text-decoration: underline;
}
h3.w3ls {
margin: 10px 0px;
padding-left: 60px;
}
h3.agileits {
padding-left: 10px;
}
.container {
max-width: 890px;
margin: 0 auto;
}
.input-group i.fa,
.input-group i.fas {
font-size: 16px;
vertical-align: middle;
box-sizing: border-box;
float: left;
width: 6%;
margin-top: 13px;
text-align: center;
color: #999;
opacity: .5;
position: absolute;
left: 0;
}
h5 {
text-align: center;
margin: 10px 0px;
font-size: 15px;
font-weight: 600;
color: #000;
}
.footer p {
text-align: center;
font-size: 18px;
line-height: 28px;
color: #777;
}
.footer p a {
color: #6769e8;
}
.footer p a:hover {
text-decoration: underline;
}
p.continue {
margin-top: 25px;
padding: 0;
margin-bottom: 20px;
color: #999;
opacity: .8;
}
p.continue span {
position: relative;
}
p.continue span:before {
position: absolute;
content: '';
height: 1px;
background: #999;
width: 89%;
left: -100%;
top: 5px;
opacity: .5;
}
p.continue span:after {
position: absolute;
content: '';
height: 1px;
background: #999;
width: 89%;
right: -100%;
top: 5px;
opacity: .5;
}
.social-login {
display: grid;
grid-auto-flow: column;
grid-gap: 20px;
margin-bottom: 10px;
}
.qqlogin {
padding: 13px 20px;
border: 2px solid #3b5998;
border-radius: 35px;
text-align: center;
font-size: 16px;
color: #3b5998;
}
.qqlogin:hover {
background: #3b5998;
color: #fff;
}
.admin {
padding: 13px 20px;
border: 2px solid #ea4335;
border-radius: 35px;
text-align: center;
font-size: 16px;
color: #ea4335;
}
.admin:hover {
background: #ea4335;
color: #fff;
}
.qqlogin span {
margin-right: 5px;
}
.admin span {
margin-right: 5px;
}
::-webkit-input-placeholder {
/* Edge */
color: #aaa;
}
:-ms-input-placeholder {
/* Internet Explorer 10-11 */
color: #aaa;
}
::placeholder {
color: #aaa;
}
/** Responsive **/
@media screen and (max-width: 1440px) {}
@media screen and (max-width: 1080px) {
.w3_info {
padding: 3em 3em;
}
}
@media screen and (max-width: 991px) {
.w3_info h2 {
font-size: 24px;
}
h1 {
font-size: 35px;
}
}
@media screen and (max-width: 900px) {
.w3_info {
padding: 3em 2.5em;
}
}
@media screen and (max-width: 800px) {
.w3_info h2 {
font-size: 23px;
}
.w3l-form-info {
flex-direction: column;
}
.container {
max-width: 550px;
}
}
@media screen and (max-width: 736px) {
.w3_info h2 {
font-size: 22px;
}
.w3_info {
padding: 3em 2em;
}
}
@media screen and (max-width: 667px) {
.w3_info {
padding: 3em 3em;
}
.w3l-form-info {
margin: 20px 0 30px;
}
}
@media screen and (max-width: 640px) {
h1 {
font-size: 37px;
}
}
@media screen and (max-width: 480px) {
.w3_info {
padding: 2em 2em;
}
h1 {
font-size: 34px;
}
}
@media screen and (max-width: 415px) {
h1 {
font-size: 32px;
}
.signinform {
padding: 40px 20px;
}
}
@media screen and (max-width: 384px) {
.signinform {
padding: 30px 15px;
}
.social-login {
grid-auto-flow: row;
}
}
@media screen and (max-width: 375px) {
.form-row.bottom {
flex-direction: column;
}
a.forgot {
margin-top: 17px;
}
}
@media screen and (max-width: 320px) {
h1 {
font-size: 25px;
}
.w3_info h2 {
font-size: 18px;
}
.btn-primary {
padding: 13px 12px;
font-size: 13px;
}
input[type="text"],
input[type="email"],
input[type="password"] {
font-size: 13px;
}
.footer p {
font-size: 13px;
}
.footer p a {
font-size: 13px;
}
}
/** /Responsive **/
/*-- //form styling --*/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

View File

@@ -1,109 +0,0 @@
body{
height: 100%;
color:#566481;
}
.mainContainer{
animation-duration: 800ms;
position: relative;
animation-fill-mode: both;
z-index: 10;
height: 100%;
text-align: center;
overflow:auto;
display: flex;
flex-direction: column;
flex-wrap: wrap;
align-content: center;
justify-content: center;
margin: 0;
padding: 0;
}
.modal-content{
padding: 12px;
vertical-align: middle;
display: flex;
font-size: 14px;
color: #333;
border: none;
/* position: absolute; */
justify-content: center;
background: RGBA(255,255,255,.9);
box-shadow: 0 5px 15px RGBA(0,0,0,0.3);
flex-direction: column;
align-content: space-around;
flex-wrap: wrap;
align-items: stretch;
margin: 0;
}
.form-group {
margin-bottom: 20px;
display: block;
margin-bottom:0;
box-shadow: none;
border: none;
}
.brand img {
max-width:300px;
max-height:300px;
}
.main-title {
font-size:24px;
margin: 11px 0;
color: #000;
vertical-align: middle;
}
.sub-title {
font-size:16px;
margin: 11px 0;
color: #000;
vertical-align: middle;
}
.loginForm{
width:320px;padding: inherit;
}
span.spacer{
margin:0 5px;
color:#eee;
}
.seccode-wrapper{
text-align:left;
}
p.error-msg{
text-align:left;
margin:20px 0;
}
.btn-lg{
margin-top:20px;
}
.checkbox-custom {
margin-top: 0;
margin-bottom: 0;
}
.checkbox-custom label, .radio-custom label{
font-size:14px;
padding-left: 5px;
}
.btn-primary{
background-color:#3779ff;
}
.third-wrapper{
margin-bottom:20px;
text-align: left;
}
.third-wrapper>a{
display: inline-block;
width:52px;
height:52px;
padding:10px;
}
.third-wrapper>a:hover{
background-color: RGBA(0,0,0,.05);
}
.third-wrapper>a>img{
max-width:32px;
max-height:32px;
vertical-align: middle
}

View File

@@ -1,114 +1,103 @@
<!--{template common/header_simple_start}-->
<link href="static/css/common.css?{VERHASH}" rel="stylesheet" media="all">
<link href="static/css/checkbox.css?{VERHASH}" rel="stylesheet">
<link href="user/login/images/login_single1.css?{VERHASH}" rel="stylesheet" />
<!--{template common/header_simple}-->
<link href="static/css/dlzc1.css?{VERHASH}" rel="stylesheet" />
<!--[if lt IE 9]>
<script src="static/js/jquery.placeholder.js" type="text/javascript"></script>
<![endif]-->
<script type="text/javascript" src="user/scripts/login.js?{VERHASH}"></script>
<!--{template common/header_simple_end}-->
<!--{if $_G['setting']['bbclosed']}-->
<nav class="navbar navbar-inverse resNav bs-top-container" >
<div class="resNav-item resNav-left">
<ul class="nav navbar-nav navbar-nav-left">
<li>
<a class="site" href="{$_G[siteurl]}"><span class="site-logo">
<!--{if $_G['setting']['sitelogo']}-->
<img src="{eval echo $_G['setting']['sitelogo']?'index.php?mod=io&op=thumbnail&size=small&path='.dzzencode('attach::'.$_G['setting']['sitelogo']):'';}" style="max-height:30px;">
<!--{else}-->
<img src="static/image/common/logo.png" style="max-height:30px;">
<!--{/if}-->
</span><span class="site-name">$_G['setting']['sitename']</span></a>
</li>
</ul>
</div>
</nav>
<!--{/if}-->
<!--{eval $loginhash = 'L'.random(4);}-->
<!--{template common/beijing}-->
<div class="mainContainer" id="main_message">
<div class="modal-content">
<div class="brand">
<!--{if $_G['setting']['sitelogo']}-->
<img src="{eval echo $_G['setting']['sitelogo']?'index.php?mod=io&op=thumbnail&size=small&path='.dzzencode('attach::'.$_G['setting']['sitelogo']):'';}">
<!--{else}-->
<img src="static/image/common/logo.png">
<!--{/if}-->
</div>
<!--{if !$_G['setting']['bbclosed']}-->
<!--{if $_G[setting][loginset][title]}-->
<div class="main-title">$_G[setting][loginset][title]</div>
<!--{/if}-->
<!--{if $_G[setting][loginset][subtitle]}-->
<div class="sub-title">$_G[setting][loginset][subtitle]</div>
<!--{/if}-->
<form method="post" name="login" id="loginform_$loginhash" class="loginForm" role="form" onsubmit="{if $_G['setting']['pwdsafety']}pwmd5('password3_$loginhash');{/if}pwdclear = 1; loginsub('loginform_$loginhash', 'returnmessage_$loginhash');return false;" action="user.php?mod=login&op=logging&action=login&loginsubmit=yes{if !empty($_GET['handlekey'])}&handlekey=$_GET[handlekey]{/if}{if isset($_GET['frommessage'])}&frommessage{/if}&loginhash=$loginhash">
<input type="hidden" name="formhash" value="{FORMHASH}" />
<input type="hidden" name="referer" value="{$referer}" />
<!--{if $auth}-->
<input type="hidden" name="auth" value="$auth" />
<!--{else}-->
<div class="form-group">
<input type="text" class="form-control" id="email_$loginhash" placeholder="{lang email_username}" name="email" autocomplete="off">
</div>
<div class="form-group">
<input type="text" class="form-control" id="password3_$loginhash" placeholder="{lang user_login_password}" name="password" onfocus="this.type='password'" autocomplete="off">
</div>
<!--{/if}-->
<!--{if $seccodecheck}-->
<div class="form-group seccode-wrapper clearfix">
<!--{template common/seccheck}-->
</div>
<!--{/if}-->
<div class="form-group clearfix">
<div class="checkbox-custom checkbox-primary pull-left">
<input type="checkbox" name="cookietime" id="cookietime_$loginhash" value="2592000" $cookietimecheck />
<label for="cookietime_$loginhash">{lang automatic_login_within_thirtydays}</label>
<style type="text/css">
body,
html {
margin: 0;
padding: 0;
color: <!--{if $_G['setting']['loginset']['bcolor']}-->$_G['setting']['loginset']['bcolor']<!--{else}-->#585858<!--{/if}-->;
<!--{if $_G['setting']['loginset']['img']}-->background: url($_G['setting']['loginset']['img']) no-repeat;background-size:100% 100%;background-attachment:fixed;<!--{/if}-->
}
h1 {
text-align: center;
font-size: 40px;
font-weight: 500;
color:<!--{if $_G['setting']['loginset']['bcolor']}-->$_G['setting']['loginset']['bcolor']<!--{else}-->#000<!--{/if}-->;
}
</style>
<div class="signinform">
<h1><!--{if $_G[setting][loginset][title]}-->$_G[setting][loginset][title]<!--{/if}--></h1>
<div class="container">
<div class="w3_info">
<form action="user.php?mod=login&op=logging&action=login&loginsubmit=yes{if !empty($_GET['handlekey'])}&handlekey=$_GET[handlekey]{/if}{if isset($_GET['frommessage'])}&frommessage{/if}&loginhash=$loginhash" method="POST" name="login" id="loginform_$loginhash" role="form" onsubmit="{if $_G['setting']['pwdsafety']}pwmd5('password3_$loginhash');{/if}pwdclear = 1; loginsub('loginform_$loginhash', 'returnmessage_$loginhash');return false;">
<input type="hidden" name="formhash" value="{FORMHASH}" />
<input type="hidden" name="referer" value="{$referer}" />
<!--{if $auth}-->
<div class="input-group">
<input type="hidden" name="auth" value="$auth"/>
</div>
<!--{else}-->
<div class="input-group">
<input type="text" id="email_$loginhash" name="email" autocomplete="off" placeholder="{lang email_username}"/>
</div>
<div class="input-group">
<input type="text" id="password3_$loginhash" name="password" onfocus="this.type='password'" autocomplete="off" placeholder="{lang user_login_password}"/>
</div>
<!--{/if}-->
<!--{if $seccodecheck}-->
<div class="form-group seccode-wrapper clearfix">
<!--{template common/seccheck}-->
</div>
<!--{/if}-->
<div class="form-row bottom">
<div class="form-check">
<input id="cookietime_$loginhash" name="cookietime" type="checkbox" value="2592000" $cookietimecheck/>
<label for="cookietime_$loginhash">记住我?</label>
</div>
<a href="user.php?mod=login&op=logging&action=lostpasswd" class="forgot">忘记密码?</a>
</div>
<button type="submit" class="btn btn-primary btn-block" name="loginsubmit" value="true">登 录</button>
<div class="third-wrapper clearfix">
<!--{hook third_login}-->
</div>
<p class="error-msg text-center" id="returnmessage_$loginhash"><!--{if $_G[setting][bbclosed]}-->{lang site_closed_please_admin}<!--{/if}--></p>
</form>
<p class="continue"><span>其他登录</span></p>
<div class="social-login">
<!--{if !$_G['setting']['bbclosed']}-->
<!--{if $_G['setting']['qq_login']>0}-->
<a href="user.php?mod=qqlogin">
<div class="qqlogin">
<span class="fab fa-qqlogin" aria-hidden="true"></span> QQ登录
</div>
</a>
<!--{/if}-->
<!--{/if}-->
<a href="admin.php">
<div class="admin">
<span class="fab fa-admin-plus-g" aria-hidden="true"></span> 管理员登录
</div>
</a>
</div>
<!--{if !$_G['setting']['bbclosed']}-->
<!--{if $_G['setting']['regstatus']>0}-->
<p class="account">还没有账号?<a href="user.php?mod=register&referer={eval echo urlencode($referer);}">$_G['setting']['reglinkname']</a></p>
<!--{/if}-->
<!--{/if}-->
</div>
<!--{if $_G['setting']['regstatus']>0}-->
<a class="pull-right" href="user.php?mod=register&referer={eval echo urlencode($referer);}" <!--{if !empty($_GET['inajax'])}-->onclick="_login.register($referer);return false;"<!--{/if}--> title="$_G['setting']['reglinkname']">$_G['setting']['reglinkname']</a>
<span class="spacer pull-right">|</span>
<!--{/if}-->
<a class="pull-right" href="user.php?mod=login&op=logging&action=lostpasswd">{lang getpassword}</a>
</div>
<div style="padding-top:15px;text-align: left;">
<span class="third-login-header">{lang other_login}</span>
<a class="pull-right" href="admin.php">管理员登录</a>
<!--{if $_G['setting']['qq_login']>0}-->
<a class="qqlogin" style="margin:0 5px" href="user.php?mod=qqlogin" title="{lang qq_login}">
<img src="user/images/qq.png" height="24" />
</a>
<!--{/if}-->
</div>
<div class="third-wrapper clearfix">
<!--{hook third_login}-->
</div>
<p class="error-msg text-danger" id="returnmessage_$loginhash"></p>
<!--{if $_G['setting'][loginset][youkedenlu]}-->
<a href="$_G['siteurl']" class="btn btn-lg btn-primary btn-block">游客访问</a>
<!--{/if}-->
<button class="btn btn-lg btn-primary btn-block" type="submit" name="loginsubmit" value="true">{lang login_empty}</button>
</form>
<div class="copyright-container">
<!--{template common/copyright}-->
</div>
</div>
<div class="footer">
<p><!--{template common/copyright}--></p>
</div>
</div>
<div class="nfl" id="main_succeed" style="display: none;text-align: center;">
<div class="modal-body">
<div class="alert_right" style="display: inline-block;">
<div id="succeedmessage"></div>
<div id="succeedlocation" class="alert_btnleft"></div>
<p class="alert_btnleft"><a id="succeedmessage_href" href="javascript:;">{lang message_forward}</a></p>
</div>
</div>
<div class="modal-body">
<div class="alert_right" style="display: inline-block;">
<div id="succeedmessage"></div>
<div id="succeedlocation" class="alert_btnleft" style="color: #FFF;"></div>
<p class="alert_btnleft"><a id="succeedmessage_href" href="javascript:;">{lang message_forward}</a></p>
</div>
</div>
</div>
<!--{if $_G['setting']['pwdsafety']}-->
<script type="text/javascript" src="user/scripts/md5.js?{VERHASH}" reload="1"></script>
<!--{/if}-->
<script type="text/javascript">
var pwdclear = 1;
function initinput_login() {
document.body.focus();
@@ -119,16 +108,16 @@ function initinput_login() {
<!--{/if}-->
}
function clearpwd(self) {
self.type='password';
function clearpwd() {
if(pwdclear) {
document.getElementById('password3_$loginhash').value = '';
}
pwdclear = 0;
}
jQuery(document).ready(function(e) {
initinput_login();
if(jQuery('.ie8,.ie9').length){ //ie8模拟placeholder;
jQuery(':input[placeholder]').each(function(){
jQuery(this).placeholder();
@@ -136,13 +125,6 @@ jQuery(document).ready(function(e) {
}
});
</script>
<!--{else}-->
<div class="main-title">$_G[setting][closedreason]</div>
<div class="sub-title"><a class="btn btn-lg btn-primary btn-block" href="admin.php">管理员登录</a><div class="copyright-container">
<!--{template common/copyright}-->
</div></div>
<!--{/if}-->
<script src="static/bootstrap/js/bootstrap.min.js?{VERHASH}"></script>
</script>
<script type="text/javascript" src="user/scripts/setbacksize.js?{VERHASH}"></script>
<!--{template common/footer}-->

View File

@@ -46,11 +46,13 @@
<span class="h-px w-16 bg-gray-200"></span>
</div>
<div class="flex flex-row justify-center items-center space-x-3">
<!--{if !$_G['setting']['bbclosed']}-->
<!--{if $_G['setting']['qq_login']>0}-->
<a href="user.php?mod=qqlogin" title="{lang qq_login}" class="w-11 h-11 items-center justify-center inline-flex rounded-2xl font-bold text-lg text-white hover:shadow-lg cursor-pointer transition ease-in duration-300">
<svg t="1675572695474" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1662"><path d="M931.396342 597.895516c-18.412522-49.611518-90.528235-161.621029-91.551153-217.881514h-0.511459c0-3.068754 0.511459-6.137507 0.511459-9.206261 0-204.583581-146.78872-370.807741-327.845189-370.807741-181.056469 0.511459-327.845189 166.22416-327.845189 371.3192 0 3.068754 0.511459 6.137507 0.511459 9.206261h-0.511459c-1.022918 56.260485-72.627171 168.269996-91.551153 217.881514-18.923981 49.611518-23.527112 99.223037-14.832309 139.116835 8.694802 39.382339 15.855228 63.932369 24.038571 71.604254s15.855228 16.366687 40.405257-1.534377c19.946899-16.366687 41.428175-49.611518 41.428175-49.611518s17.901063 51.657354 57.794862 91.551152c-31.198996 14.83231-76.718843 47.565683-79.787597 69.558418-3.068754 21.481276 47.565683 102.80325 166.735619 104.849085 119.169936 1.534377 158.552275-49.611518 162.643947-53.70319 11.252097-11.763556 20.458358-18.923981 20.458358-18.923981s9.71772 7.160425 20.458358 18.923981c4.091672 4.091672 43.474011 55.749026 162.643947 53.70319 119.169936-2.045836 169.804372-83.367809 166.735619-104.849085-3.068754-21.481276-48.588601-54.726108-79.787597-69.558418 39.893798-39.382339 57.794862-91.551153 57.794862-91.551152s21.481276 33.244832 41.428175 49.611518c24.55003 17.389604 32.221914 9.206261 40.405258 1.534377 8.183343-7.671884 15.343769-32.221914 24.03857-71.604254 9.71772-39.893798 4.603131-90.016776-13.809391-139.628294z" fill="#369BCE" p-id="1663"></path></svg>
</a>
<!--{/if}-->
<!--{/if}-->
<a href="admin.php" class="w-11 h-11 items-center justify-center inline-flex rounded-2xl font-bold text-lg text-white hover:shadow-lg cursor-pointer transition ease-in duration-300">
<svg t="1675573086091" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4356"><path d="M513.183454 532.442588c-62.243623 0-120.763434-24.225751-164.778904-68.215638-44.020586-43.992957-68.26271-102.486162-68.26271-164.703179 0-62.215994 24.242124-120.708176 68.26271-164.702156 44.01547-43.989887 102.535281-68.216661 164.778904-68.216661 62.243623 0 120.764458 24.226774 164.778904 68.216661 44.018539 43.992957 68.260663 102.485139 68.260663 164.702156 0 62.217017-24.242124 120.710222-68.260663 164.703179C633.947911 508.215814 575.4281 532.442588 513.183454 532.442588zM513.183454 117.828592c-100.254332 0-181.817975 81.507362-181.817975 181.694155 0 100.186793 81.563644 181.695179 181.817975 181.695179 100.254332 0 181.816952-81.508385 181.816952-181.695179C695.000406 199.336978 613.437785 117.828592 513.183454 117.828592z" p-id="4357"></path><path d="M879.044072 956.940698 146.070308 956.940698l-1.243317-24.303522c-0.317225-6.202259-0.477884-12.514012-0.477884-18.762319 0-49.262984 9.751085-97.06264 28.983101-142.071739 18.562774-43.444465 45.127803-82.45085 78.95626-115.937522 33.81106-33.468253 73.183789-59.745732 117.02632-78.100776 45.3867-19.002796 93.581352-28.637224 143.245472-28.637224 49.665143 0 97.861842 9.634428 143.247518 28.637224 43.842531 18.356067 83.21526 44.632523 117.02632 78.100776 33.828456 33.486672 60.393485 72.493058 78.955236 115.937522 19.230993 45.0091 28.982078 92.808756 28.982078 142.071739 0 6.246261-0.161682 12.56006-0.480954 18.768459L879.044072 956.940698zM195.678146 905.71706l633.765251 0c-4.380774-169.130002-144.846946-305.366849-316.883137-305.366849C340.525092 600.350211 200.05892 736.587058 195.678146 905.71706z" p-id="4358"></path></svg>
</a>

View File

@@ -1,143 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
if($_GET['do']=='imageupload'){
include libfile('class/uploadhandler');
$options=array( 'accept_file_types' => '/\.(gif|jpe?g|png)$/i',
'upload_dir' =>$_G['setting']['attachdir'].'cache/',
'upload_url' => $_G['setting']['attachurl'].'cache/',
'thumbnail'=>array('max-width'=>240,'max-height'=>160)
);
$upload_handler = new uploadhandler($options);
exit();
}
elseif($_GET['do']=='updateview'){
$newid=intval($_GET['newid']);
C::t('news')->increase($newid,array('views'=>1));
if($_G['uid']){
if($vid=DB::result_first("select vid from %t where newid=%d and uid=%d",array('news_viewer',$newid,$_G['uid']))){
DB::query("update %t SET views=views+1 where vid=%d",array('news_viewer',$vid));
}else{
$addviewer=array('newid'=>$newid,
'uid'=>$_G['uid'],
'username'=>$_G['username'],
'dateline'=>TIMESTAMP
);
C::t('news_viewer')->insert($addviewer);
}
}
exit('success');
}
elseif($_GET['do']=='sendModNotice'){
if(!$_G['cache']['news:setting']) loadcache('news:setting');
$setting=$_G['cache']['news:setting'];
//通知管理员审核
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',1);
foreach($setting['moderators'] as $uid){
//发送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&status=2',
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'dataline'=>dgmdate(TIMESTAMP),
);
$action='news_moderate';
$type='news_moderate';
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
exit(json_encode(array('msg'=>lang('alert_messages_to_be_sent_successfully'))));
}
elseif($_GET['do']=='news_delete'){
include_once libfile('function/news');
$newid=!empty($_GET['newid'])?intval($_GET['newid']):0;
$data=C::t('news')->fetch($newid);
$perm=getPermByUid($_G['uid']);
if($perm<2 && $data['authorid']!=$_G['uid']) exit(json_encode(array('error'=>lang('have_no_right'))));
if(C::t('news')->delete_by_newid($newid)){
exit(json_encode(array('msg'=>'success')));
}else{
exit(json_encode(array('error'=>lang('delete_failure'))));
}
}
elseif($_GET['do']=='getViewerByNewid'){
$newid=empty($_GET['newid'])?0:intval($_GET['newid']);
//查阅情况
$page = empty($_GET['page'])?1:intval($_GET['page']);
$perpage=21;
$gets = array(
'mod'=>'news',
'op'=>'ajax',
'do'=>'getViewerByNewid',
'newid'=>$newid
);
$theurl = DZZSCRIPT."?".url_implode($gets);
$start=($page-1)*$perpage;
$limit=($page-1)*$perpage.'-'.$perpage;
if($count=C::t('news_viewer')->fetch_all_by_newid($newid,$limit,1)){
$list=C::t('news_viewer')->fetch_all_by_newid($newid,$limit);
$multi=multi($count, $perpage, $page, $theurl,'pull-right');
}
include template('news_ajax');
}
elseif($_GET['do']=='editcat'){
$catname = getstr($_GET['catname']);
$cid = isset($_GET['cid']) ? intval($_GET['cid']):0;
if($cid){
if( !$catname){
error(lang('name_cannot_be_empty') );
}
if(DB::result_first("select count(*) from %t where name = %s and status=1",array('news_cat',$catname)) > 0){
error(lang('the_name_cannot_be_repeated'),array("id"=>$cid));
}
if(C::t('news_cat')->update_by_catid($cid,array('name'=>$catname))){
success(lang('modify_successfully'),array("id"=>$cid,'isadd'=>0));
}
}else{
if( !$catname){
error(lang('name_cannot_be_empty') );
}
if(DB::result_first("select count(*) from %t where name = %s and status=1",array('news_cat',$catname)) > 0){
error(lang('the_name_cannot_be_repeated'),array("id"=>$cid));
}
if($insertid = C::t('news_cat')->insert_by_catid(array('name'=>$catname))){
success(lang('new_success'),array("id"=>$insertid,'isadd'=>1));
}
}
}
elseif($_GET['do']=='delcat'){
$cid = isset($_GET['cid']) ? intval($_GET['cid']):0;
if($cid){
$result = C::t('news_cat')->delete($cid);//$C::tp_t('news_cat')->where(array("catid"=>$cid))->setField("status",-1);
if($result){
success(lang('successfully_delete'));
}
}
error(lang('delete_failure'));
}
elseif($_GET['do']=='setorder'){
$catid = $_GET["disp"];
if($catid){
foreach($catid as $k=>$v ){
if( $v ){
$result = C::t('news_cat')->update($v,array('disp'=>$k));//C::tp_t('news_cat')->where(array("catid"=>$v))->setField("disp",$k);
}
}
}
success(lang('printf'));
}
?>

View File

@@ -1,25 +0,0 @@
<?php
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
function build_cache_news_setting() {
global $_G;
$data=array();
$data=C::t('#news#news_setting')->fetch_all();
$data['allownewnews']=intval($data['allownewnews']);
$data['newsmod']=intval($data['newsmod']);
if($data['moderators']){
$data['moderators']=explode(',',$data['moderators']);
}else{
$data['moderators']=array();
}
if($data['posters']){
$data['posters']=explode(',',$data['posters']);
}else $data['posters']=array();
savecache('news:setting', $data);
}
?>

View File

View File

@@ -1,296 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
class table_news extends dzz_table
{
public function __construct() {
$this->_table = 'news';
$this->_pk = 'newid';
parent::__construct();
}
public function mod_by_newid($newids,$pass,$modreason){ //审核处理
$pass=$pass?1:2;
$newids=(array)$newids;
$ret=DB::query("update %t SET status=%d , modreason=%s,moduid=%d,modtime=%d where newid IN(%n)",array($this->_table,$pass,$modreason,getglobal('uid'),TIMESTAMP,$newids));
//发送通知用户审核情况
if($ret){
$ruids=array();
foreach(DB::fetch_all("select authorid from %t where newid IN(%n)",array($this->_table,$newids)) as $value){
$ruids[$value['authorid']]=$value['authorid'];
}
if($ruids){
//通知发布者审核情况
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',1);
foreach($ruids as $uid){
if($uid!=getglobal('uid')){
//发送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&status='.$pass,
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'dataline'=>dgmdate(TIMESTAMP),
'modreason'=>getstr($modreason,45),
);
$action='news_moderator_'.$pass;
$type='news_moderator_'.$uid;
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
}
}
if($pass==1){
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',0);
foreach($newids as $newid){
$arr=parent::fetch($newid);
$uids=getUidsByOrgid($arr['orgids'],$arr['uids']);
foreach($uids as $uid){
if($uid!=getglobal('uid')){
//发送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&op=view&newid='.$newid,
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'subject'=>$arr['subject'],
'dataline'=>dgmdate(TIMESTAMP),
);
$action='news_publish';
$type='news_publish_'.$uid;
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
}
}
}
}
return $ret;
}
public function delete_by_newid($newid){//删除信息;
//删除信息
$data=parent::fetch($newid);
if($ret=parent::delete($newid)){
//删除编辑器附件
if($data['attachs']){
$attachs=explode(',',$data['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,-1);
}
//删除图片内容
C::t('news_pic')->delete_by_newid($newid);
//删除信息查阅者
C::t('news_viewer')->delete_by_newid($newid);
//删除投票
C::t('vote')->delete_by_id_idtype($newid,'news');
//删除评论
C::t('comment')->delete_by_id_idtype($newid,'news');
}
return $ret;
}
public function batch_delete_by_newid($newids){//删除信息;
$newids=(array)$newids;
$aids=array();
foreach(DB::fetch_all("select * from %t where newid IN (%n)",array($this->_table,$newids)) as $value){
if($value['attachs']){
$attachs=explode(',',$value['attachs']);
if($attachs) array_merge($aids,$attachs);
}
}
$ret=0;
if($ret=DB::delete($this->_table,"newid IN(".dimplode($newids).")")){
//删除编辑器附件
if($aids){
C::t('attachment')->addcopy_by_aid($aids,-1);
}
//删除图片内容
C::t('news_pic')->delete_by_newid($newids);
//删除信息查阅者
C::t('news_viewer')->delete_by_newid($newids);
//删除投票
C::t('vote')->delete_by_id_idtype($newids,'news');
//删除评论
C::t('comment')->delete_by_id_idtype($newids,'news');
}
return $ret;
}
public function insert_by_newid($arr){
if($newid=parent::insert($arr,1)){
if($arr['attachs']){
$attachs=explode(',',$arr['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,1);
}
if($arr['status']==2){ //需要审核时,发送通知给管理员;
if(!getglobal('cache/news:setting')) loadcache('news:setting');
$setting=getglobal('cache/news:setting');
//通知发布者审核情况
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',1);
foreach($setting['moderators'] as $uid){
if($uid!=getglobal('uid')){
//发送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&status=2',
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'dataline'=>dgmdate(TIMESTAMP),
);
$action='news_moderate1';
$type='news_moderate1';
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
}
}elseif($arr['status']==1){//通知发布范围内人员查看
$uids=getUidsByOrgid($arr['orgids'],$arr['uids']);
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',0);
foreach($uids as $uid){
if($uid!=getglobal('uid')){
//发送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&op=view&newid='.$newid,
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'subject'=>$arr['subject'],
'dataline'=>dgmdate(TIMESTAMP),
);
$action='news_publish';
$type='news_publish_'.$uid;
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
}
}
return $newid;
}
return false;
}
public function update_by_newid($arr){
$data=parent::fetch($arr['newid']);
if($return=parent::update($arr['newid'],$arr)){
if($data['attachs']){
$attachs=explode(',',$data['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,-1);
}
if(isset($arr['attachs'])){
$attachs=explode(',',$arr['attachs']);
C::t('attachment')->addcopy_by_aid($attachs,1);
}
//新添加的范围重新发送通知
$orgids=$uids=array();
if($arr['orgids']!=$data['orgids']){
$norgids=$arr['orgids']?explode(',',$arr['orgids']):array();
$oorgids=$data['orgids']?explode(',',$data['orgids']):array();
$orgids=array_diff($norgids,$oorigids);
}
if($arr['uids']!=$data['uids']){
$nuids=$arr['uids']?explode(',',$arr['uids']):array();
$ouids=$data['uids']?explode(',',$data['uids']):array();
$uids=array_diff($nuids,$ouids);
}
$new_uids=getUidsByOrgid($orgids,$uids);
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',0);
foreach($new_uids as $uid){
if($uid!=getglobal('uid')){
//发送通知
$notevars=array(
'from_id'=>$appid,
'from_idtype'=>'app',
'url'=>DZZSCRIPT.'?mod=news&op=view&newid='.$data['newid'],
'author'=>getglobal('username'),
'authorid'=>getglobal('uid'),
'subject'=>$data['subject'],
'dataline'=>dgmdate(TIMESTAMP),
);
$action='news_publish';
$type='news_publish_'.$uid;
dzz_notification::notification_add($uid, $type, $action, $notevars, 0,'dzz/news');
}
}
}
return $return;
}
//评论回调函数
public function callback_by_comment($comment,$action='add',$ats=array()){
$newid=$comment['id'];
if($action=='add'){
if($comment['pcid']==0){
self::increase($newid,array('comments'=>1));
}
}elseif($action=='delete'){
if($comment['pcid']==0){
self::increase($newid,array('comments'=>-1));
}
}
}
public function increase($newids, $fieldarr) {
$newids = dintval((array)$newids, true);
$sql = array();
$num = 0;
$allowkey = array('views', 'comments');
foreach($fieldarr as $key => $value) {
if(in_array($key, $allowkey)) {
if(is_array($value)) {
$sql[] = DB::field($key, $value[0]);
} else {
$value = dintval($value);
$sql[] = "`$key`=`$key`+'$value'";
}
} else {
unset($fieldarr[$key]);
}
}
if(!empty($sql)){
$cmd = "UPDATE " ;
$num = DB::query($cmd.DB::table($this->_table)." SET ".implode(',', $sql)." WHERE newid IN (".dimplode($newids).")", 'UNBUFFERED');
}
return $num;
}
}
?>

View File

@@ -1,88 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
class table_news_cat extends dzz_table
{
public function __construct() {
$this->_table = 'news_cat';
$this->_pk = 'catid';
parent::__construct();
}
public function insert_by_catid($setarr){
$setarr['disp']=DB::result_first("select max(disp) from %t where pid=%d",array($this->_table,$setarr['pid']))+1;
return parent::insert($setarr,1);
}
public function update_by_catid($catid,$arr){
if(!$data=parent::fetch($catid)) return false;
if(isset($arr['pid']) && $data['pid']!=$arr['pid']){
$arr['disp']=DB::result_first("select max(disp) from %t where pid=%d",array($this->_table,$arr['pid']))+1;
}
return parent::update($catid,$arr);
}
public function fetch_all_by_pid($pid){
return DB::fetch_all("select * from %t where pid=%d order by disp",array($this->_table,$pid));
}
public function catmove_by_catid($catid,$up=0){ //移动分类
$cat=self::fetch($catid);
$disparr=array();$i=0;$cur=0;
foreach(self::fetch_all_by_pid($cat['pid']) as $value){
$disparr[]=$value;
if($value['catid']==$catid) $cur=$i;
$i++;
}
if($up){
$disp=$disparr[(($cur-1<0)?0:($cur-1))]['disp']-1;
}else{
$disp=$disparr[(($cur+1>$i-1)?$i-1:($cur+1))]['disp']+1;
}
foreach($disparr as $value){
if($value['catid']==$catid) continue;
if(!$up){
if($value['disp']>=$disp) parent::update($value['catid'],array('disp'=>$value['disp']+1));
}else{
if($value['disp']<=$disp) parent::update($value['catid'],array('disp'=>$value['disp']-1));
}
}
return parent::update($catid,array('disp'=>$disp));
}
public function delete_by_catid($catid){ //同时删除所有下级分类,分类下的信息失去分类,如果是唯一的顶级分类,不允许删除
//判断是否为唯一的顶级分类;
if($data=parent::fetch($catid) && $data['pid']==0){
if(DB::result_first("select COUNT(*) from %t where pid='0'",array($this->_table))<2){
return 0;
}
}
$catids=self::getSonByCatid($catid);
$ret=0;
if($catids){
$ret=parent::delete($catids);
DB::update('news',array('catid'=>0),"catid IN (".dimplode($catids).")");
}
return $ret;
}
public function getSonByCatid($catid){
static $catids=array();
$catids[]=$catid;
foreach(self::fetch_all_by_pid($catid) as $value){
self::getSonByCatid($value['catid']);
}
return $catids;
}
}
?>

View File

@@ -1,97 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
class table_news_pic extends dzz_table
{
public function __construct() {
$this->_table = 'news_pic';
$this->_pk = 'picid';
parent::__construct();
}
public function fetch_by_picid($picid){
global $_G;
if(!$data=self::fetch($picid)) return false;
if($data['aid']>0){
$data['img']=C::t('attachment')->getThumbByAid($data['aid'],240,160);
}
return $data;
}
public function insert($arr){
$ret=0;
if($ret=parent::insert($arr,1)){
if($arr['aid']) C::t('attachment')->addcopy_by_aid($arr['aid'],1);
}
return $ret;
}
public function insert_by_newid($newid,$newpics,$pics){
//先删除不在pics中的图片
$picids=array_keys($pics);
foreach(DB::fetch_all("select * from %t where picid NOT IN (%n) and newid=%d ",array($this->_table,$picids,$newid)) as $value){
self::delete_by_picid($value['picid']);
}
//插入新的图片
foreach($newpics as $value){
$setarr=array('newid'=>$newid,
'title'=>$value['title'],
'aid'=>$value['aid'],
'dateline'=>TIMESTAMP);
self::insert($setarr);
}
return true;
}
public function delete_by_picid($picid){
if(!$data=parent::fetch($picid)) return 0;
$ret=0;
if($ret=parent::delete($picid)){
if($data['aid']) C::t('attachment')->delete_by_aid($data['aid']);
}
return $ret;
}
public function delete_by_newid($newids){
$newids=(array)$newids;
$ret=0;
$aids=array();
$picids=array();
foreach(DB::fetch_all("select picid,aid from %t where newid in (%n)",array($this->_table,$newids)) as $value){
$picids[]=$value['picid'];
$aids[]=$value['aid'];
}
if($aids){
C::t('attachment')->addcopy_by_aid($aids,-1);
}
return DB::delete($this->_table,"picid IN (".dimplode($picids).")");
}
public function fetch_all_by_newid($newids){
$newids=(array)$newids;
$data=array();
foreach(DB::fetch_all("select * from %t where newid IN(%n) order by dateline DESC",array($this->_table,$newids)) as $value){
$value['img']=C::t('attachment')->getThumbByAid($value['aid'],240,160);
$value['url']=C::t('attachment')->getThumbByAid($value['aid'],0,0,1);
$value['filesize']=formatsize($value['filesize']);
$data[$value['picid']]=$value;
}
return $data;
}
}
?>

View File

@@ -1,118 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
class table_news_setting extends dzz_table
{
public function __construct() {
$this->_table = 'news_setting';
$this->_pk = 'skey';
parent::__construct();
}
public function getCoverAids(){
$aids=array();
if($cover=self::fetch('cover')){
$aids=explode(',',$cover);
}
return $aids;
}
//获取封面数组
public function getCovers($width=171,$height=225) {
if($cover=self::fetch('cover')){
$aids=explode(',',$cover);
}
$return=$data=array();
if($aids){
foreach(C::t('attachment')->fetch_all($aids) as $value){
$value['img']=C::t('attachment')->getThumbByAid($value,$width,$height);
$data[$value['aid']]=$value;
}
//按原aids孙祥排序
foreach($aids as $aid){
$return[]=$data[$aid];
}
}
return $return;
}
//更新封面数组
public function updateCovers($aids) {
if($cover=self::fetch('cover')){
$oaids=explode(',',$cover);
}else{
$oaids=array();
}
$delaids=array_diff($oaids,$aids);
$newaids=array_diff($aids,$oaids);
if($delaids){
foreach($delaids as $aid){
C::t('attachment')->delete_by_aid($aid);
}
}
if($newaids) C::t('attachment')->addcopy_by_aid($newaids,1);
return self::update('cover',implode(',',$aids));
}
public function fetch($skey, $auto_unserialize = false) {
$data = DB::result_first('SELECT svalue FROM '.DB::table($this->_table).' WHERE '.DB::field($this->_pk, $skey));
return $auto_unserialize ? (array)unserialize($data) : $data;
}
public function fetch_all($skeys = array(), $auto_unserialize = false){
$data = array();
$where = !empty($skeys) ? ' WHERE '.DB::field($this->_pk, $skeys) : '';
$query = DB::query('SELECT * FROM '.DB::table($this->_table).$where);
while($value = DB::fetch($query)) {
$data[$value['skey']] = $auto_unserialize ? (array)unserialize($value['svalue']) : $value['svalue'];
}
return $data;
}
public function update($skey, $svalue){
return DB::insert($this->_table, array($this->_pk => $skey, 'svalue' => is_array($svalue) ? serialize($svalue) : $svalue), false, true);
}
public function update_batch($array) {
$settings = array();
foreach($array as $key => $value) {
$key = addslashes($key);
$value = addslashes(is_array($value) ? serialize($value) : $value);
$settings[] = "('$key', '$value')";
}
if($settings) {
return DB::query("REPLACE INTO ".DB::table($this->_table)." (`skey`, `svalue`) VALUES ".implode(',', $settings));
}
return false;
}
public function skey_exists($skey) {
return DB::result_first('SELECT skey FROM %t WHERE skey=%s LIMIT 1', array($this->_table, $skey)) ? true : false;
}
public function fetch_all_not_key($skey) {
return DB::fetch_all('SELECT * FROM '.DB::table($this->_table).' WHERE skey NOT IN('.dimplode($skey).')');
}
public function fetch_all_table_status() {
return DB::fetch_all('SHOW TABLE STATUS');
}
public function get_tablepre() {
return DB::object()->tablepre;
}
public function update_count($skey, $num) {
return DB::query("UPDATE %t SET svalue = svalue + %d WHERE skey = %s", array($this->_table, $num, $skey), false, true);
}
}
?>

View File

@@ -1,42 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
class table_news_viewer extends dzz_table
{
public function __construct() {
$this->_table = 'news_viewer';
$this->_pk = 'id';
parent::__construct();
}
public function fetch_all_by_newid($newid,$limit,$iscount=0){
$limitsql='';
if($limit){
$limit=explode('-',$limit);
if(count($limit)>1){
$limitsql.=" limit ".intval($limit[0]).",".intval($limit[1]);
}else{
$limitsql.=" limit ".intval($limit[0]);
}
}
if($iscount) return DB::result_first("select COUNT(*) from %t where newid=%d",array($this->_table,$newid));
return DB::fetch_all("select * from %t where newid=%d order by dateline DESC $limitsql ",array($this->_table,$newid),'uid') ;
}
public function delete_by_newid($newids){
$newids=(array)$newids;
return DB::delete($this->_table,"newid IN (".dimplode($newids).")");
}
}
?>

View File

@@ -1,6 +0,0 @@
<?php
return array(
'allow_robot'=>false,
'about'=>array('name_en'=>'新闻',
'version'=>'小胡版 2.42')
);

View File

@@ -1,221 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
//error_reporting(E_ALL);
include libfile('function/news');
include libfile('function/organization');
$perm=getPermByUid($_G['uid']);
$ismobile=helper_browser::ismobile();
if($perm<1) showmessage(lang('have_no_right'),dreferer());
if(submitcheck('edit')){
$news=$_GET['news'];
$news['subject']=getstr($news['subject'],80);
$news['sitelogo']=$news['sitelogo'];
if(empty($news['subject'])){
showmessage(lang('message_header_cannot_be_empty'),dreferer(),array('data'=>rawurlencode(json_encode(array('error'=>lang('message_header_cannot_be_empty'))))),array('showmsg'=>true));
}
if($news['type']==0){//文本内容时
$news['content']=helper_security::checkhtml($news['content']);//str_replace(array("\r\n", "\r", "\n"), "",$_GET['message']); //去除换行
//获取文档内附件
$news['attachs']=implode(',',getAidsByMessage($news['content']));
//unset($news['url']); //删除链接地址
}elseif($news['type']==1){ //图片内容时
$pics=array();
$newpics=array();
foreach($_GET['picnew']['aid'] as $key=>$aid){
$newpics[]=array('aid'=>$aid,'title'=>$_GET['picnew']['title'][$key],'dateline'=>TIMESTAMP);
}
$pics=$_GET['pic'];
}elseif($news['type']==2){ //超链接内容
}
//处理发布状态
if($_GET['isdraft']){
$news['status']=3;
}else{
if(empty($news['status']) || $news['status']==3){
if(!$_G['cache']['news:setting']) loadcache('news:setting');
if($perm>1 || $_G['cache']['news:setting']['newsmod']<1) $news['status']=1; //管理员或者不用审核时直接发布,不需要审核
else $news['status']=2; //非管理员需要等待审核;
}
}
//处理阅读范围
$orgids=array();
$uids=array();
if($news['orgids']){
$orgid_arr=explode(',',$news['orgids']);
foreach($orgid_arr as $value){
if(is_numeric($value)){
$orgids[]=$value;
}elseif($value=='other'){
$orgids[]=$value;
}elseif(strpos($value,'uid_')==0){
$uids[]=str_replace('uid_','',$value);
}
}
$news['uids']=implode(',',$uids);
$news['orgids']=implode(',',$orgids);
}
if($news['newid']){
$news['updatetime']=TIMESTAMP;
$news['opuid']=$_G['uid'];
C::t('news')->update_by_newid($news);
if($news['type']==1){
C::t('news_pic')->insert_by_newid($news['newid'],$newpics,$pics);
}
$forward=$_GET['refer']?$_GET['refer']:dreferer();
}else{
$news['dateline']=TIMESTAMP;
$news['updatetime']=TIMESTAMP;
$news['author']=$_G['username'];
$news['authorid']=$_G['uid'];
if($news['newid']=C::t('news')->insert_by_newid($news)){
if($news['type']==1){
C::t('news_pic')->insert_by_newid($news['newid'],$newpics,$pics);
}
}
if($news['status']==1){
$forward=DZZSCRIPT.'?mod=news';
}else{
$forward=DZZSCRIPT.'?mod=news&status='.$news['status'];
}
}
if($news['newid']){
//处理投票
if($news['votestatus']){
$voteid=empty($_GET['voteid'])?0:intval($_GET['voteid']);
$vote=$_GET['vote'];
$vote['type']=$vote['type']?intval($vote['type']):1;
$vote['endtime']=strtotime($vote['endtime']);
$vote['subject']=getstr($_GET['vote_subject_'.$vote['type']]);
$vote['module']='news';
$vote['idtype']='news';
$vote['id']=$news['newid'];
$vote['uid']=$_G['uid'];
//过滤投票项目
$item=$_GET['voteitem'];
$itemnew=array();
foreach($_GET['voteitemnew']['content'] as $key =>$value){
if(empty($value) && $vote['type']==1) continue; //文字投票时项目文本为空,略过;
elseif($vote['type']==2 && !$_GET['voteitemnew']['aid'][$key]) continue;
$itemnew[]=array('content'=>getstr($value),
'aid'=>intval($_GET['voteitemnew']['aid'][$key])
);
}
if($voteid){ //编辑时
C::t('vote')->update_by_voteid($voteid,$vote,$item,$itemnew);
}else{ //新增加
$vote['starttime']=TIMESTAMP;
C::t('vote')->insert_by_voteid($vote,$itemnew);
}
}
$news['forward']=$forward;
showmessage('do_success',$forward,array('data'=>rawurlencode(json_encode($news))),array('showmsg'=>true));
}else{
showmessage('do_success',$forward,array('data'=>rawurlencode(json_encode(array('error'=>lang('tape_release_failure'),'forward'=>$forward)))),array('showmsg'=>true));
}
}else{
$navtitle='';
$refer=empty($_GET['refer'])?dreferer():$_GET['refer'];
$newid=empty($_GET['newid'])?0:intval($_GET['newid']);
$sel=array();
$sel_org=array();
$sel_user=array();
if($newid){
$navtitle=lang('compile').$news['subject'].' - '.lang('appname');
$navlast=lang('compile');
$news=C::t('news')->fetch($newid);
$open=array();
if($news['orgids']){
$orgids=explode(',',$news['orgids']);
$sel_org=C::t('organization')->fetch_all($orgids);
foreach($sel_org as $key=> $value){
$orgpath=getPathByOrgid($value['orgid']);
$sel_org[$key]['orgname']=implode('-',($orgpath));
$sel[]=$value['orgid'];
}
$arr=(array_keys($orgpath));
array_pop($arr);
$count=count($arr);
if($open[$arr[$count-1]]){
if(count($open1[$arr[$count-1]])>$count) $open[$arr[count($arr)-1]]=$arr;
}else{
$open[$arr[$count-1]]=$arr;
}
if(in_array('other',$orgids)){
$sel[]='other';
$sel_org[]=array('orgname'=>lang('non_agency_personnel'),'orgid'=>'other','forgid'=>1);
}
}
if($news['uids']){
$uids=explode(',',$news['uids']);
$sel_user=C::t('user')->fetch_all($uids);
foreach($sel_user as $value){
$sel[]='uid_'.$value['uid'];
}
if($aorgids=C::t('organization_user')->fetch_orgids_by_uid($uids)){
foreach($aorgids as $orgid){
$arr= C::t('organization')->fetch_parent_by_orgid($orgid,true);
$count=count($arr);
if($open[$arr[$count-1]]){
if(count($open[$arr[$count-1]])>$count) $open[$arr[count($arr)-1]]=$arr;
}else{
$open[$arr[$count-1]]=$arr;
}
}
}
}
$openarr=json_encode(array('orgids'=>$open));
$pics=C::t('news_pic')->fetch_all_by_newid($newid);
}else{
$navtitle=lang('create');
$navlast=lang('create');
$news=array('votestatus'=>0,'commentstatus'=>'1','styleswitch'=>'0','youkepinglun'=>'0','catid'=>intval($_GET['catid']),'type'=>0);
}
$sel=implode(',',$sel);
$catoptions=getCatOptions(0,$news['catid']);
if(!DB::result_first("select COUNT(*) from %t where appurl=%s",array('app_market','{dzzscript}?mod=bilibili'))){
$weianzhuang=1;
}
if($perm>1 || $news['authorid']==$_G['uid']|| $_GET['catid']=='0') {
}else{
showmessage(lang('该文章不存在或您没有权限编辑'));
}
include template('news_edit');
}
function getAidsByMessage($message){
$aids=array();
if(preg_match_all("/path=\"attach::(\d+)\"/i",$message,$matches)){
$aids=$matches[1];
}
if(preg_match_all("/path=\"".rawurlencode('attach::')."(\d+)\"/i",$message,$matches1)){
$aids=array_merge($aids,$matches1[1]);
}
return array_unique($aids);
}
?>

View File

@@ -1,10 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
$finish = true;

View File

@@ -1,122 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
function getViewPerm($news){
global $_G;
//自己发布的有权限
if($news['authorid']==$_G['uid']) return true;
//管理员有权限
if(getPermByUid($_G['uid'])>1) return true;
//游客时,只要设置了范围,就没有权限;
if($_G['uid']<1 && ($news['orgids'] || $news['uids'])) return false;
//草稿箱,限自己发布的和管理员有权限;
if($news['status']==3)return false;
//待审核,限自己发布的和管理员有权限;
if($news['status']==2)return false;
//转换为数组
if($news['orgids']){
$news['orgids']=explode(',',$news['orgids']);
}else{
$news['orgids']=array();
}
//转换为数组
if($news['uids']){
$news['uids']=explode(',',$news['uids']);
}else{
$news['uids']=array();
}
//判断普通用户权限
if(!$news['uids'] && !$news['orgids']) return true; //未设置范围,全部有权限
if($news['uids'] && in_array($_G['uid'],$news['uids'])){ //用户在用户列表内,允许查看
return true;
}
//当未加入机构和部门在部门列表中时,单独判断;
if(in_array('other',$news['orgids']) && !DB::result_first("SELECT COUNT(*) from %t where uid=%d",array('organization_user',$_G['uid']))){
return true;
}
//获取用户所在的机构或部门
$orgids=C::t('organization_user')->fetch_orgids_by_uid($_G['uid']);
if(array_intersect($orgids,$news['orgids'])) return true;
//检查每个部门的下级
foreach($orgids as $orgid){
$upids= C::t('organization')->fetch_parent_by_orgid($orgid,true);
if($upids && array_intersect($upids,$news['orgids'])) return true;
}
return false;
}
function getPermByUid($uid){ //获取用户权限;
global $_G;
if($_G['uid']<1) return 0;
if($_G['adminid']==1) return 3;
if(!$_G['cache']['news:setting']) loadcache('news:setting');
$setting=$_G['cache']['news:setting'];
if(in_array($_G['uid'],$setting['moderators'])) return 2;
elseif($setting['allownewnews'] && in_array($_G['uid'],$setting['posters'])) return 1;
elseif($setting['allownewnews']<1) return 1;
else return 0;
}
function getCatOptions($catid=0,$scatid=0,$notcatid=0,$padding='' ){
foreach(C::t('news_cat')->fetch_all_by_pid($catid) as $value){
if($notcatid==$value['catid']) continue;
$html.='<option value="'.$value['catid'].'" '.($value['catid']==$scatid?'selected="selected"':'').'>'.$padding.$value['name'].'</option>';
$html.=getCatOptions($value['catid'],$scatid,$notcatid,$padding.'&nbsp;&nbsp;&nbsp;&nbsp;');
}
return $html;
}
function getOrgOptions($orgid=0,$sorgid=array(),$padding=''){
foreach(C::t('organization')->fetch_all_by_forgid($orgid) as $value){
$html.='<option value="gid_'.$value['orgid'].'" '.(in_array($value['orgid'],$scatid)?'selected="selected"':'').'>'.$padding.$value['orgname'].'</option>';
$html.=getOrgOptions($value['orgid'],$sorgid,$padding.'&nbsp;&nbsp;&nbsp;&nbsp;');
}
return $html;
}
function getCatList($catid=0,$scatid=0){
$html='<ul class="nav-stacked">';
$list = DB::fetch_all("select * from %t where pid=%d and `status`='1' order by disp desc",array('news_cat',$catid));//C::tp_t('news_cat')->where(array("status"=>1,"pid"=>$catid ) )->order("disp asc")->select();
foreach($list as $value){
$html.='<li id="cat_'.$value['catid'].'" data-catid="'.$value['catid'].'" data-pid="'.$value['pid'].'" role="presentation" '.($value['catid']==$scatid?'class="active"':'').'><a href="'.DZZSCRIPT.'?mod=news&catid='.$value['catid'].'"><i class="dzz dzz-news" style="padding-right: 14px;font-size: 22px;vertical-align: -4px;"></i><span class="catname">'.$value['name'].'</span><span class="cat-ctrl js-popbox" data-href="catmenu&catid='.$value['catid'].'" data-placement="right" data-auto-adapt="true"><i class="glyphicon glyphicon-chevron-right"></i></span></a>';
//$html.=getCatList($value['catid'],$scatid);
$html.='</li>';
}
$html.='</ul>';
return $html;
}
function getUidsByOrgid($orgids,$uids){ //通过获取在此机构数组下的所有用户
@set_time_limit(0);
if($uids) $uids=explode(',',$uids);
else $uids=array();
if($orgids) $orgids=explode(',',$orgids);
else $orgids=array();
if($orgids){//获取机构的id
if(in_array('other',$orgids)){
if($nots=C::t('organization_user')->fetch_user_not_in_orgid(1000)) $uids=array($uids,array_keys($nots));
$orgids=array_diff($orgids,array('other'));
}
if($orgids && ($ouids=getUserByOrgid($orgids,1,array(),true))){
$uids=array_merge($uids,$ouids);
unset($ouids);
}
return array_unique($uids);
}else{//orgids为空时
if($uids) return array_unique($uids);
else{ //返回全体成员id
foreach(DB::fetch_all("select u.uid from %t u LEFT JOIN %t s on u.uid=s.uid where u.status<1 order by s.lastactivity DESC limit 1000",array('user','user_status')) as $value){
$uids[]=$value['uid'];
}
return array_unique($uids);
}
}
}
?>

View File

@@ -1,71 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
include_once libfile('function/organization');
//获取最新的信息
/**
* 设置回复图文
* @param array $newsData
* 数组结构:
* array(
* "0"=>array(
* 'Title'=>'msg title',
* 'Description'=>'summary text',
* 'PicUrl'=>'http://www.domain.com/1.jpg',
* 'Url'=>'http://www.domain.com/1.html'
* ),
* "1"=>....
* )
*/
function getLatestData($wx,$uid,$limit=10){
$param=array('news');
$sql="status<2";
$orderby="ORDER BY dateline DESC";
//阅读范围查询语句
$sql.=" and (";
$sql_gid=array("orgids=''");
$orgarr=getDepartmentByUid($uid); //获取当前用户所在的部门数组
foreach($orgarr as $value){
foreach($value as $value1){
$sql_gid[]="FIND_IN_SET(%d,orgids)";
$param[]=$value1['orgid'];
}
}
$sql.="(".implode(' OR ',$sql_gid).") and ( uids='' OR FIND_IN_SET(%d,uids)))";
$param[]=$uid;
$data=array();
$limit=intval($limit);
if(!$limit) $limit=10;
foreach(DB::fetch_all("select * from %t where $sql $orderby limit $limit ",$param) as $value){
$temp=array();
$temp['Title']=$value['subject'];
$url=getglobal('siteurl').'index.php?mod=news&op=view&newid='.$value['newid'];
if($value['type']==0){ //文本模式
$temp['Description']=getstr($value['content'],300,0,0,0,-1);
$temp['Url']=getOauthRedirect($url);
}elseif($value['type']==1){ //图片模式
$temp['Description']='';
$temp['Url']=getOauthRedirect($url);
if($pic=DB::fetch_first("select aid from %t where newid=%d limit 1",array('news_pic',$value['newid']))){
$temp['PicUrl']=getglobal('siteurl').'index.php?mod=io&op=thumbnail&original=1&path='.dzzencode('attach::'.$pic['aid']);
}
}else{ //链接模式
$temp['Url']=$value['url'];
$temp['Description']='';
}
$data[]=$temp;
}
return $data;
}
?>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 418 B

View File

@@ -1,66 +0,0 @@
.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}
.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}
.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}
.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}
.ui-datepicker .ui-datepicker-prev{left:2px}
.ui-datepicker .ui-datepicker-next{right:2px}
.ui-datepicker .ui-datepicker-prev-hover{left:1px}
.ui-datepicker .ui-datepicker-next-hover{right:1px}
.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}
.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}
.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}
.ui-datepicker select.ui-datepicker-month-year{width:100%}
.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}
.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}
.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}
.ui-datepicker td{border:0;padding:1px}
.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}
.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}
.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}
.ui-datepicker.ui-datepicker-multi{width:auto}
.ui-datepicker-multi .ui-datepicker-group{float:left}
.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}
.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}
.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}
.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0}
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}
.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}
.ui-datepicker-row-break{clear:both;width:100%;font-size:0}
.ui-datepicker-rtl{direction:rtl}
.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}
.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}
.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}
.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}
.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}
.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right}
.ui-datepicker-rtl .ui-datepicker-group{float:right}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px}
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}
.ui-datepicker-cover{position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px;}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default{
border: 1px solid #d3d3d3;
background: #e6e6e6 url(../img/jqui-images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
font-weight: normal;
color: #555;
}
.ui-datepicker{padding:10px;border:1px solid #CCC;box-shadow:0px 2px 5px #CCC}
.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:40%}
.ui-widget-header{border:0;background:none}
.ui-widget-header .ui-icon{background:none}
.ui-state-hover.ui-datepicker-prev-hover{background:none}
.ui-state-hover.ui-datepicker-next-hover{background:none}
.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:2px;color:#428bca;cursor:pointer;border-radius:0;padding:8px 10px;font-family:FontAwesome;font-weight:normal;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased;color:#666;text-align:center}
.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next,.ui-datepicker .ui-datepicker-prev:active,.ui-datepicker .ui-datepicker-next:active,.ui-datepicker .ui-datepicker-prev[disabled],.ui-datepicker .ui-datepicker-next[disabled],fieldset[disabled] .ui-datepicker .ui-datepicker-prev,fieldset[disabled] .ui-datepicker .ui-datepicker-next{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}
.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next,.ui-datepicker .ui-datepicker-prev:hover,.ui-datepicker .ui-datepicker-next:hover,.ui-datepicker .ui-datepicker-prev:focus,.ui-datepicker .ui-datepicker-next:focus,.ui-datepicker .ui-datepicker-prev:active,.ui-datepicker .ui-datepicker-next:active{border-color:transparent}
.ui-datepicker .ui-datepicker-prev:hover,.ui-datepicker .ui-datepicker-next:hover,.ui-datepicker .ui-datepicker-prev:focus,.ui-datepicker .ui-datepicker-next:focus{color:#2a6496;text-decoration:none;background-color:transparent}
.ui-datepicker .ui-datepicker-prev[disabled]:hover,.ui-datepicker .ui-datepicker-next[disabled]:hover,fieldset[disabled] .ui-datepicker .ui-datepicker-prev:hover,fieldset[disabled] .ui-datepicker .ui-datepicker-next:hover,.ui-datepicker .ui-datepicker-prev[disabled]:focus,.ui-datepicker .ui-datepicker-next[disabled]:focus,fieldset[disabled] .ui-datepicker .ui-datepicker-prev:focus,fieldset[disabled] .ui-datepicker .ui-datepicker-next:focus{color:#999;text-decoration:none}
/*.ui-datepicker .ui-datepicker-prev:before,.ui-datepicker .ui-datepicker-next:before{content:"\f053"}
.ui-datepicker .ui-datepicker-next:before{content:"\f054"}*/
.ui-widget-content{border:0;background:#fbfbfb}
.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border-color:#e1e1e1;background:none}
.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{background:#fcf8e3}
.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{color:#fff;background-color:#006dcc}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 680 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 682 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 682 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 237 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 189 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 180 B

View File

@@ -1,126 +0,0 @@
.popbox{
position:absolute;
z-index:1229;
display:none;
min-width:240px;
max-width:400px;
padding:1px;text-align:left;
background-color:#fbfbfb;
-webkit-background-clip:padding-box;
-moz-background-clip:padding;
border:1px solid #e1e1e1;
*border:1px solid #e1e1e1;
font-size:14px;
-webkit-box-shadow:0 2px 4px rgba(0,0,0,0.05);
box-shadow:0 2px 4px rgba(0,0,0,0.05);
background-clip:padding-box;
outline:none;
}
.loadding{
background:url(loading.gif) center no-repeat;
width:100%;
height:100px;
}
.popbox.fade{-webkit-transition:opacity .3s linear, top .3s ease-out;transition:opacity .3s linear, top .3s ease-out;top:-25%}
.popbox.fade.in{top:10%}
.popbox.top{margin-top:-10px}
.popbox.right{margin-left:10px}
.popbox.bottom{margin-top:10px}
.popbox.left{margin-left:-10px}
.popbox-header{position:relative;padding:9px 15px;border-bottom:1px solid #e1e1e1;background-color:#f9f9f7}.popbox-header:before,.popbox-header:after{content:" ";display:table}
.popbox-header:after{clear:both}
.popbox-header i.icon{margin-top:4px;padding:0;float:left}
.popbox-header button.back,.popbox-header button.cancel{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;margin-top:2px;opacity:.2;filter:alpha(opacity=20)}.popbox-header button.back:hover,.popbox-header button.cancel:hover{opacity:.4;filter:alpha(opacity=40)}
.popbox-header button.back{float:left;margin-right:5px;}
.popbox-header button.cancel{float:right}
.popbox-header h3{margin:0;font-size:16px;line-height:20px;}
.popbox-bodywrapper{max-height:400px;overflow:auto;}
.popbox-body{position:relative;padding:15px;}.popbox-body form{margin-bottom:0}
.popbox-body .empty-menu{border:dotted 1px #e1e1e1;background:#f9f9f7;padding:15px;margin:15px;min-height:48px;line-height:48px;text-align:center;min-width:220px;color:#999}
.popbox-body .empty-menu-nomin-h{border:dotted 1px #e1e1e1;background:#f9f9f7;padding:15px;margin:15px;min-height:48px;line-height:48px;text-align:center;color:#999}
.popbox-bodyheader{position:relative;overflow-x:hidden;overflow-y:auto;max-height:400px;padding:15px}.popbox-bodyheader:before,.popbox-bodyheader:after{content:" ";display:table}
.popbox-bodyheader:after{clear:both}
.popbox-bodyheader button.back,.popbox-bodyheader button.cancel{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;margin-top:4px;opacity:.2;filter:alpha(opacity=20)}.popbox-bodyheader button.back:hover,.popbox-bodyheader button.cancel:hover{opacity:.4;filter:alpha(opacity=40)}
.popbox-bodyheader button.back{float:left}
.popbox-bodyheader button.cancel{float:right}
.popbox-form{margin-bottom:0}
.popbox-footer{padding:0 15px 15px 15px;margin-bottom:0;border-radius:0 0 6px 6px}.popbox-footer:before,.popbox-footer:after{content:" ";display:table}
.popbox-footer:after{clear:both}
.popbox-footer:before,.popbox-footer:after{content:" ";display:table}
.popbox-footer:after{clear:both}
.popbox-footer .btn+.btn{margin-bottom:0}
.popbox-footer .btn-group .btn+.btn{margin-left:-1px}
.popbox-footer .btn-block+.btn-block{margin-left:0}
.popbox-footer .action-item{display:block;margin-top:13px;margin-left:10px}
.popbox-footer.top-divider{border-top:solid 1px #e1e1e1}
ul.popbox-step{padding:0;margin:0}ul.popbox-step li.popbox-step-li{padding:0;list-style-type:none}
.no-padding{padding:0}
ul.popbox-menu{margin:0;margin-left:-15px;margin-right:-15px;margin-top:-15px;margin-bottom:-15px}ul.popbox-menu li{line-height:200%;margin:5px}ul.popbox-menu li.divider{border:0;border-top:solid 1px #e1e1e1;border-bottom:solid 1px #fff;margin:0}
ul.popbox-menu li>a{display:block;cursor:pointer;color:#333;padding:5px 15px}
ul.popbox-menu li>a.active{text-decoration:none;background-color:#f2f2ea;border-radius:3px}
ul.popbox-menu li>a:hover{text-decoration:none;background-color:#f2f2ea;border-radius:3px}
ul.popbox-menu li>a:hover .action{visibility:visible}
ul.popbox-menu li>a:focus{text-decoration:none}
ul.popbox-menu li>a.text-muted{color:#ccc;cursor:not-allowed}
/*ul.popbox-menu li>a i{margin-right:5px}*/
ul.popbox-menu li>a .small-tip{position:absolute;right:20px}
ul.popbox-menu li>a .action{visibility:hidden;position:absolute;right:5px}
ul.popbox-menu li .icon{float:left;display:block;width:20px;height:20px}
.popbox .arrow,.popbox .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}
.popbox .arrow{border-width:11px}
.popbox .arrow:after{border-width:10px;content:""}
.popbox.top .arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:#e1e1e1;bottom:-11px}.popbox.top .arrow:after{bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fbfbfb}
.popbox.right .arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:#e1e1e1}.popbox.right .arrow:after{left:1px;bottom:-10px;border-left-width:0;border-right-color:#fbfbfb}
.popbox.bottom .arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:#e1e1e1;top:-11px}.popbox.bottom .arrow:after{top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fbfbfb}
.popbox.left .arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:#e1e1e1}.popbox.left .arrow:after{right:1px;border-right-width:0;border-left-color:#fbfbfb;bottom:-10px}
ul.popbox-item{margin:-15px;list-style:none;margin-left:0;margin-top:-5px}ul.popbox-item:before,ul.popbox-item:after{content:" ";display:table}
ul.popbox-item:after{clear:both}
ul.popbox-item li{line-height:200%;margin:5px;float:left;cursor:hand}
ul.popbox-item .emoji{width:18px;height:18px;vertical-align:text-bottom;margin-right:5px}
.popbox-avatar .avatar-body {
position: relative;
overflow-x: hidden;
overflow-y: auto;
padding: 15px 15px 8px 15px;
overflow: hidden;
zoom: 1;
width: 300px;
margin-bottom: 10px;
}
.popbox-avatar .avatar-body .avatar {
float: left;
margin-right: 10px;
}
.avatar.avatar-56 img {
width: 56px;
height: 56px;
}
.popbox-avatar .avatar-body button.close, .popbox-avatar .avatar-body button.cancel {
padding: 0;
cursor: pointer;
background: transparent;
border: 0;
-webkit-appearance: none;
margin-top: 4px;
opacity: .2;
filter: alpha(opacity=20);
}
.avatar-right {
overflow: hidden;
zoom: 1;
margin-left: 30px;
}
.avatar-right h4.avatar-heading {
font-size: 16px;
margin: 4px 0 8px;
display: inline-block;
}
.popbox-avatar .avatar-footer {
width: 300px;
border-top: solid 1px #fff;
padding: 5px 15px;
text-align: right;
background: #f9f9f7;
line-height: 32px;
border-top: solid 1px #e1e1e1;
}

View File

@@ -1,45 +0,0 @@
.play{
border-radius: var(--radius);position:relative;background:#f2f6fc;padding:60px 15px 15px
}
.video .play{
margin-bottom:15px
}
.title{
position:absolute;top:15px;left:-10px;background:#409eff;color:#fff;font-weight:500;box-shadow:2px 5px 10px rgba(49,58,70,0.15);height:30px;line-height:30px;padding:0 12px;border-radius:2px 2px 2px 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none
}
.play .box{
border-top:1px solid #e4e7ed;padding-top:15px
}.joe_detail__article-video .play{
margin-bottom:15px
}
.episodes{
border-radius: var(--radius);position:relative;background:#f2f6fc;padding:60px 15px 15px
}
.episodes .box{
border-top:1px solid #e4e7ed;padding-top:15px;
}
.episodes .box{
border-top:1px solid #e4e7ed;padding-top:15px;display:flex;gap:15px;align-content:center;justify-content:center;align-items:stretch;flex-direction:row;flex-wrap:wrap
}
.episodes .box .item{
height:30px;
line-height:30px;
border-radius:1rem;
background:#fff;
color:#606266;
cursor:pointer;
text-align:center;
font-size:large;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:box-shadow 0.35s, background 0.35s, color 0.35s, -webkit-transform 0.35s;transition:transform 0.35s, box-shadow 0.35s, background 0.35s, color 0.35s;transition:transform 0.35s, box-shadow 0.35s, background 0.35s, color 0.35s, -webkit-transform 0.35s;padding:0 10px
}
.episodes .box .item.active{
-webkit-transform:translateY(-2px);transform:translateY(-2px);color:#fff;background:#409eff;box-shadow:0 5px 5px rgba(0,0,0,0.1)
}
.episodes .box .item:hover{
-webkit-transform:translateY(-2px);transform:translateY(-2px);box-shadow:0 5px 5px rgba(0,0,0,0.1)
}
iframe{
display:block;border:none;margin:0 auto;vertical-align:middle;height: 500px;width: 100%
}
#Joe{
margin: 1rem 0
}

View File

@@ -1,80 +0,0 @@
.content-document-body h1::before{
content: '¶';
color: #409eff;
}
.content-document-body h2::before{
content: '|';
border-radius: 2px;
color: #409eff;
font-weight: 1000;
}
.content-document-body h3::before{
content: '「';
color: #409eff;
font-weight: 600;
margin-right: 5px;
}
.content-document-body h3::after{
content: '」';
color: #409eff;
font-weight: 600;
margin-left: 5px;
}
.content-document-body h4{
margin-left: 26px;
}
.content-document-body h4::before{
content: '';
position: absolute;
width: 22px;
height: 29px;
background-size: 100% 100%;
margin: 0 0 0 -26px;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAEI0lEQVRYR+3Xb2wTZRwH8G/vL22RPy5GW8fK6rJpGeFFY9RO3TRRE1HfmEAammEyjZmOSEg1RrPZaTD6xjhU/Ndlf0CZgwmD+qcgZBRIETeqY0Vcnc7pGonhRY2l3m2t5upqjq693l2vcy+8N81zz/NcPvf75fd7rjos8ku3yH34HyjK0PqlDLPzD56vMNL0VHxmpgXAoUIZXKgI3sMSpK+cNTAbylaj/9IkprnLM3+mkg8XQi4EsJ4lSL+ZNbAfVd+JG/XLcSERg3M8IAtZauBtDEkeNdN6fX9NfRqXueQiSwm00wQRMDMGw94snBJkqYBrSYIIXs/ojftqGq6IXHZRFIpkKYC2JSw9SJE663W0nthlqcMawwrJYpVCag1M48pNy1YNvLWRffGNIYSCv6Cnog7rjCtVIbUEXoG7qeqaNMj51F58dWoKPZY62JeWyUJG+ctcIplcIizWCpgTl9EIyODJn9BtceDWq/6B57tO/H4R688fFaZ7AWzWAiiJEyMDx39Ed6UDdyy7Ni/w1ekxbP95VJi/F8CRYoGycGLksaEJdFU6cPdy0zxkR/RbtE6FhPvHATQUm2JFODHSfyyCLmsd7lth/hf53q/jcE8OC+NTAG7PTKiNoCqcGPnpF+PotDrwwNXl+OC3H9A8cVqYPgPgFnFo1QCLwomRg4cvoPMGBzZHTgq3zwKwZ+ddKVATXAZhf+gdnPvuojAUqmJdrspRAtQU93pXEM+8clgwhQHU5itruUBNcTt6TsP9sl8weQC0S/VFOUBNcW/2folt2z+XhZPTZh6kSKJ79aqVRuFszRxfUm8sNbdz9xlsfekz2bhCQBvDMMM8z+ubN92Mjrb71brS+97dM4wtnk8U4SSBBEGErVarzeVywePxoHVLA1pb6lUh3+8bwZMv+BTjpIAVACa9Xq+uqakJ7e3tqpGd/WfR3Jr+81awIJS0mY0A+sLhMGw2W3qfGmTXvhAef/6gapxUBDuqqqoejUQiBvFbKUH2DHyNx54bLAqXF0jT9HBjY6Pd6/XOi7oc5K7936Dp2QNF4/IBrTqdLuLxeIi2tracRSGF/PDgKB55er8muHzATQB2m81m+P1+1NbmPoVyIfsOnUOj+2PNcPmAO1iWbeE4TmexWODz+WQhayrL4No2oCkuJ5Bl2VGO49ZmcisXObdeVSuRaq7ZZ3G10KBTqRQl3pQPGY1GEQgE4HQ6heVDAO5S1cklNmUDXQRB9KZSqXkfESaTCW63G7FYDKFQKDEyMoJoNKqfe/bbAJ7QGpcrxa8xDLOV5/k0kGXZv2ZnZ5FMJtNjmqYvURR1IpFInAcwAeD7ud/pUuDmAY1G41g8Hl9DkmScoqggx3FHAIyJMMlSQfI9V5zKagDC93dsoRFKimQx2dIWOV/U/yn6bx0WyDj8vgLOAAAAAElFTkSuQmCC);
}
.content-document-body h5{
margin-left: 26px;
}
.content-document-body h5::before{
content: '';
position: absolute;
width: 22px;
height: 24px;
margin: 0 0 0 -25px;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAC8klEQVRYR+3WP2gTURwH8O/vKnVRRHKXP52cBO3g4p/BqYNIhy4muajUQRBFKjQV1En6ZxJBcmlRCoJDRe3FDiJVwamLS3FwqbgIgss1l2ZQF5XeT3I1Z3NJ7u5dLlAwN9699/t97vfe7/EIO/yhHe5DD9jpCv3fFVTu856+Xzi62Y/35hj9CFPNrlUwWeRJAJfBGADwBcBNI0/PRZFdAdo4xlQLjCqKjBzogat7hZCRAgPghJGBgbFnxglAOvS7b/fLb+q+qnv5BHBCyEBAWTdnANy2IxOtWSC1qsY+1jOFwAVG+gIVvXyHQbcaKuZCxmf5iMQogXFQtEsBeO5JT6BcMu+Bcb1lUhcyqfExACUAB6JEtgUqi+U5JrrmmcyFHCjwSYtQO+tSUSFbAmXdnAdwJVASdyWLPAS2kbFA8xsHNS13EzCmlx8R6KJQcBcypfFpho3cKxRna3ADsgEo6+ZjAKMhgjZ1d2KWR2gTSyD0h4jnIB2gXDIXwciFCPZvSnMl0wwshYrJGDImaMUGKovlLBPVOrDjh8APzFx8zDkjNa7FzYoGZsKT9XEarQOHmei1aJA246cqOWW6/i2l8VMGzoWIPW/k6eq2Ja6UwCz8pw2JGZ8sS8pUz8fWau/jGp+SgLchcGBgZD1Py41NUuoI+ZloV8ZU93+ogZKzfBiWfXAPCgMJU8Y42avQdMzI4ZBfmSizocqrUeJaAmsvBZGGBCtTziXeRY1rCxRAViEhXckqK93AeQJ9kYTvlmVlqmcTdhNEtefc+9X3utVmuX+CkK6oyqtu4nwrWP8bF5IZdGYjJ79wDuMCz4D+XmhFWnZbt7ab5ltBB6mbkyAaBPFCJassuwMmNb4L4EZgXwBc4AoGTZrUeA6A9x1yK6tzzvnFDlxBv0D176kCP2TCpbbjBXCRV9DZk0VeAONCE1IQ1zWg3dlF1sFQHWQIXFeBNrLAw5BwHBZWjQl6E3SbbB8X+R4Mg/Ca0wN2WtFeBTut4B84mFI4VpekyAAAAABJRU5ErkJggg==);
background-size: 100% 100%;
}
.content-document-body h6{
line-height: 26px;
margin-bottom: 18px;
background: #ecf8ff;
border-left: 5px solid #50bfff;
color: #50bfff;
padding: 8px 15px;
font-size: 20px;
}
.fenggebiaoti{
font-size: 30px;
font-weight: 700;
line-height: 1.5;
font-family:"lucida grande", "lucida sans unicode", "lucida", "Helvetica Neue", "helvetica", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", "sans-serif";
word-break:break-all;
text-align:center;
padding: 30px;
position: relative;
}
.fenggebiaoti span{
padding: 0 10px 0 10px;
background: #ffffff;
position: relative;
color: #2299DD;
}
.fenggebiaoti::before{
display: block;
content: '';
position: absolute;
top: 49%;
left: 0;
right: 0;
border-top: 1px solid rgba(0, 0, 0, .05);
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 903 B

View File

@@ -1,917 +0,0 @@
/* jsTree default theme */
.jstree-node,
.jstree-children,
.jstree-container-ul {
display: block;
margin: 0;
padding: 0;
list-style-type: none;
list-style-image: none;
}
.jstree-node {
white-space: nowrap;
}
.jstree-anchor {
display: inline-block;
color: black;
white-space: nowrap;
padding: 0 4px 0 1px;
margin: 0;
vertical-align: top;
}
.jstree-anchor:focus {
outline: 0;
}
.jstree-anchor,
.jstree-anchor:link,
.jstree-anchor:visited,
.jstree-anchor:hover,
.jstree-anchor:active {
text-decoration: none;
color: inherit;
}
.jstree-icon {
display: inline-block;
text-decoration: none;
margin: 0;
padding: 0;
vertical-align: top;
text-align: center;
}
.jstree-icon:empty {
display: inline-block;
text-decoration: none;
margin: 0;
padding: 0;
vertical-align: top;
text-align: center;
}
.jstree-ocl {
cursor: pointer;
}
.jstree .jstree-open > .jstree-children {
display: block;
}
.jstree .jstree-closed > .jstree-children,
.jstree .jstree-leaf > .jstree-children {
display: none;
}
.jstree-anchor > .jstree-themeicon {
margin-right: 2px;
}
.jstree-no-icons .jstree-themeicon,
.jstree-anchor > .jstree-themeicon-hidden {
display: none;
}
.jstree-rtl .jstree-anchor {
padding: 0 1px 0 4px;
}
.jstree-rtl .jstree-anchor > .jstree-themeicon {
margin-left: 2px;
margin-right: 0;
}
.jstree-rtl .jstree-node {
margin-left: 0;
}
.jstree-rtl .jstree-container-ul > .jstree-node {
margin-right: 0;
}
.jstree-wholerow-ul {
position: relative;
display: inline-block;
min-width: 100%;
}
.jstree-wholerow-ul .jstree-anchor,
.jstree-wholerow-ul .jstree-icon {
position: relative;
}
.jstree-wholerow-ul .jstree-wholerow {
width: 100%;
cursor: pointer;
position: absolute;
left: 0;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.vakata-context {
display: none;
z-index:10000;
}
.vakata-context,
.vakata-context ul {
margin: 0;
padding: 2px;
position: absolute;
background: #f5f5f5;
border: 1px solid #979797;
-moz-box-shadow: 5px 5px 4px -4px #666666;
-webkit-box-shadow: 2px 2px 2px #999999;
box-shadow: 2px 2px 2px #999999;
}
.vakata-context ul {
list-style: none;
left: 100%;
margin-top: -2.7em;
margin-left: -4px;
}
.vakata-context .vakata-context-right ul {
left: auto;
right: 100%;
margin-left: auto;
margin-right: -4px;
}
.vakata-context li {
list-style: none;
display: inline;
}
.vakata-context li > a {
display: block;
padding: 0 2em 0 2em;
text-decoration: none;
width: auto;
color: black;
white-space: nowrap;
line-height: 2.4em;
-moz-text-shadow: 1px 1px 0 white;
-webkit-text-shadow: 1px 1px 0 white;
text-shadow: 1px 1px 0 white;
-moz-border-radius: 1px;
-webkit-border-radius: 1px;
border-radius: 1px;
}
.vakata-context li > a:hover {
position: relative;
background-color: #e8eff7;
-moz-box-shadow: 0 0 2px #0a6aa1;
-webkit-box-shadow: 0 0 2px #0a6aa1;
box-shadow: 0 0 2px #0a6aa1;
}
.vakata-context li > a.vakata-context-parent {
background-image: url("data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAIORI4JlrqN1oMSnmmZDQUAOw==");
background-position: right center;
background-repeat: no-repeat;
}
.vakata-context li > a:focus {
outline: 0;
}
.vakata-context .vakata-context-hover > a {
position: relative;
background-color: #e8eff7;
-moz-box-shadow: 0 0 2px #0a6aa1;
-webkit-box-shadow: 0 0 2px #0a6aa1;
box-shadow: 0 0 2px #0a6aa1;
}
.vakata-context .vakata-context-separator a,
.vakata-context .vakata-context-separator a:hover {
background: white;
border: 0;
border-top: 1px solid #e2e3e3;
height: 1px;
min-height: 1px;
max-height: 1px;
padding: 0;
margin: 0 0 0 2.4em;
border-left: 1px solid #e0e0e0;
-moz-text-shadow: 0 0 0 transparent;
-webkit-text-shadow: 0 0 0 transparent;
text-shadow: 0 0 0 transparent;
-moz-box-shadow: 0 0 0 transparent;
-webkit-box-shadow: 0 0 0 transparent;
box-shadow: 0 0 0 transparent;
-moz-border-radius: 0;
-webkit-border-radius: 0;
border-radius: 0;
}
.vakata-context .vakata-contextmenu-disabled a,
.vakata-context .vakata-contextmenu-disabled a:hover {
color: silver;
background-color: transparent;
border: 0;
box-shadow: 0 0 0;
}
.vakata-context li > a > i {
text-decoration: none;
display: inline-block;
width: 2.4em;
height: 2.4em;
background: transparent;
margin: 0 0 0 -2em;
vertical-align: top;
text-align: center;
line-height: 2.4em;
}
.vakata-context li > a > i:empty {
width: 2.4em;
line-height: 2.4em;
}
.vakata-context li > a .vakata-contextmenu-sep {
display: inline-block;
width: 1px;
height: 2.4em;
background: white;
margin: 0 0.5em 0 0;
border-left: 1px solid #e2e3e3;
}
.vakata-context .vakata-contextmenu-shortcut {
font-size: 0.8em;
color: silver;
opacity: 0.5;
display: none;
}
.vakata-context-rtl ul {
left: auto;
right: 100%;
margin-left: auto;
margin-right: -4px;
}
.vakata-context-rtl li > a.vakata-context-parent {
background-image: url("data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAINjI+AC7rWHIsPtmoxLAA7");
background-position: left center;
background-repeat: no-repeat;
}
.vakata-context-rtl .vakata-context-separator > a {
margin: 0 2.4em 0 0;
border-left: 0;
border-right: 1px solid #e2e3e3;
}
.vakata-context-rtl .vakata-context-left ul {
right: auto;
left: 100%;
margin-left: -4px;
margin-right: auto;
}
.vakata-context-rtl li > a > i {
margin: 0 -2em 0 0;
}
.vakata-context-rtl li > a .vakata-contextmenu-sep {
margin: 0 0 0 0.5em;
border-left-color: white;
background: #e2e3e3;
}
#jstree-marker {
position: absolute;
top: 0;
left: 0;
margin: 0;
padding: 0;
border-right: 0;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-left: 5px solid;
width: 0;
height: 0;
font-size: 0;
line-height: 0;
}
#jstree-dnd {
line-height: 16px;
margin: 0;
padding: 4px;
}
#jstree-dnd .jstree-icon,
#jstree-dnd .jstree-copy {
display: inline-block;
text-decoration: none;
margin: 0 2px 0 0;
padding: 0;
width: 16px;
height: 16px;
}
#jstree-dnd .jstree-ok {
background: green;
}
#jstree-dnd .jstree-er {
background: red;
}
#jstree-dnd .jstree-copy {
margin: 0 2px 0 2px;
}
.jstree-default .jstree-node,
.jstree-default .jstree-icon {
background-repeat: no-repeat;
background-color: transparent;
}
.jstree-default .jstree-anchor,
.jstree-default .jstree-wholerow {
transition: background-color 0.15s, box-shadow 0.15s;
}
.jstree-default .jstree-hovered {
background: #e7f4f9;
border-radius: 2px;
box-shadow: inset 0 0 1px #ccc;
}
.jstree-default .jstree-clicked {
background: #beebff;
border-radius: 2px;
box-shadow: inset 0 0 1px #999;
}
.jstree-default .jstree-no-icons .jstree-anchor > .jstree-themeicon {
display: none;
}
.jstree-default .jstree-disabled {
background: transparent;
color: #666;
}
.jstree-default .jstree-disabled.jstree-hovered {
background: transparent;
box-shadow: none;
}
.jstree-default .jstree-disabled.jstree-clicked {
background: #efefef;
}
.jstree-default .jstree-disabled > .jstree-icon {
opacity: 0.8;
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");
/* Firefox 10+ */
filter: gray;
/* IE6-9 */
-webkit-filter: grayscale(100%);
/* Chrome 19+ & Safari 6+ */
}
.jstree-default .jstree-search {
font-style: italic;
color: #8b0000;
font-weight: bold;
}
.jstree-default .jstree-no-checkboxes .jstree-checkbox {
display: none !important;
}
.jstree-default.jstree-checkbox-no-clicked .jstree-clicked {
background: transparent;
box-shadow: none;
}
.jstree-default.jstree-checkbox-no-clicked .jstree-clicked.jstree-hovered {
background: #e7f4f9;
}
.jstree-default.jstree-checkbox-no-clicked > .jstree-wholerow-ul .jstree-wholerow-clicked {
background: transparent;
}
.jstree-default.jstree-checkbox-no-clicked > .jstree-wholerow-ul .jstree-wholerow-clicked.jstree-wholerow-hovered {
background: #e7f4f9;
}
#jstree-dnd.jstree-default .jstree-ok,
#jstree-dnd.jstree-default .jstree-er {
background-image: url("32px.png");
background-repeat: no-repeat;
background-color: transparent;
}
#jstree-dnd.jstree-default i {
background: transparent;
width: 16px;
height: 16px;
}
#jstree-dnd.jstree-default .jstree-ok {
background-position: -9px -71px;
}
#jstree-dnd.jstree-default .jstree-er {
background-position: -39px -71px;
}
.jstree-default > .jstree-striped {
background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAMAAAB/qqA+AAAABlBMVEUAAAAAAAClZ7nPAAAAAnRSTlMNAMM9s3UAAAAXSURBVHjajcEBAQAAAIKg/H/aCQZ70AUBjAATb6YPDgAAAABJRU5ErkJggg==") left top repeat;
}
.jstree-default > .jstree-wholerow-ul .jstree-hovered,
.jstree-default > .jstree-wholerow-ul .jstree-clicked {
background: transparent;
box-shadow: none;
border-radius: 0;
}
.jstree-default .jstree-wholerow {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.jstree-default .jstree-wholerow-hovered {
background: #e7f4f9;
}
.jstree-default .jstree-wholerow-clicked {
background: #beebff;
background: -moz-linear-gradient(top, #beebff 0%, #a8e4ff 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #beebff), color-stop(100%, #a8e4ff));
background: -webkit-linear-gradient(top, #beebff 0%, #a8e4ff 100%);
background: -o-linear-gradient(top, #beebff 0%, #a8e4ff 100%);
background: -ms-linear-gradient(top, #beebff 0%, #a8e4ff 100%);
background: linear-gradient(to bottom, #beebff 0%, #a8e4ff 100%);
/*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='@color1', endColorstr='@color2',GradientType=0 );*/
}
.jstree-default .jstree-node {
min-height: 24px;
line-height: 24px;
margin-left: 24px;
min-width: 24px;
}
.jstree-default .jstree-anchor {
line-height: 24px;
height: 24px;
}
.jstree-default .jstree-icon {
width: 24px;
height: 24px;
line-height: 24px;
}
.jstree-default .jstree-icon:empty {
width: 24px;
height: 24px;
line-height: 24px;
}
.jstree-default.jstree-rtl .jstree-node {
margin-right: 24px;
}
.jstree-default .jstree-wholerow {
height: 24px;
}
.jstree-default .jstree-node,
.jstree-default .jstree-icon {
background-image: url("32px.png");
}
.jstree-default .jstree-node {
background-position: -292px -4px;
background-repeat: repeat-y;
}
.jstree-default .jstree-last {
background: transparent;
}
.jstree-default .jstree-open > .jstree-ocl {
background-position: -132px -4px;
}
.jstree-default .jstree-closed > .jstree-ocl {
background-position: -100px -4px;
}
.jstree-default .jstree-leaf > .jstree-ocl {
background-position: -68px -4px;
}
.jstree-default .jstree-anchor > .jstree-themeicon {
background-position: -260px -4px;
}
.jstree-default > .jstree-no-dots .jstree-node,
.jstree-default > .jstree-no-dots .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default > .jstree-no-dots .jstree-open > .jstree-ocl {
background-position: -36px -4px;
}
.jstree-default > .jstree-no-dots .jstree-closed > .jstree-ocl {
background-position: -4px -4px;
}
.jstree-default .jstree-disabled {
background: transparent;
}
.jstree-default .jstree-disabled.jstree-hovered {
background: transparent;
}
.jstree-default .jstree-disabled.jstree-clicked {
background: #efefef;
}
.jstree-default .jstree-checkbox {
background-position: -164px -4px;
}
.jstree-default .jstree-checkbox:hover {
background-position: -164px -36px;
}
.jstree-default .jstree-clicked > .jstree-checkbox {
background-position: -228px -4px;
}
.jstree-default .jstree-clicked > .jstree-checkbox:hover {
background-position: -228px -36px;
}
.jstree-default .jstree-anchor > .jstree-undetermined {
background-position: -196px -4px;
}
.jstree-default .jstree-anchor > .jstree-undetermined:hover {
background-position: -196px -36px;
}
.jstree-default > .jstree-striped {
background-size: auto 48px;
}
.jstree-default.jstree-rtl .jstree-node {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
background-position: 100% 1px;
background-repeat: repeat-y;
}
.jstree-default.jstree-rtl .jstree-last {
background: transparent;
}
.jstree-default.jstree-rtl .jstree-open > .jstree-ocl {
background-position: -132px -36px;
}
.jstree-default.jstree-rtl .jstree-closed > .jstree-ocl {
background-position: -100px -36px;
}
.jstree-default.jstree-rtl .jstree-leaf > .jstree-ocl {
background-position: -68px -36px;
}
.jstree-default.jstree-rtl > .jstree-no-dots .jstree-node,
.jstree-default.jstree-rtl > .jstree-no-dots .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default.jstree-rtl > .jstree-no-dots .jstree-open > .jstree-ocl {
background-position: -36px -36px;
}
.jstree-default.jstree-rtl > .jstree-no-dots .jstree-closed > .jstree-ocl {
background-position: -4px -36px;
}
.jstree-default .jstree-themeicon-custom {
background-color: transparent;
background-image: none;
}
.jstree-default > .jstree-container-ul .jstree-loading > .jstree-ocl {
background: url("throbber.gif") center center no-repeat;
}
.jstree-default.jstree-rtl .jstree-node {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
}
.jstree-default.jstree-rtl .jstree-last {
background: transparent;
}
.jstree-default-small .jstree-node {
min-height: 18px;
line-height: 18px;
margin-left: 18px;
min-width: 18px;
}
.jstree-default-small .jstree-anchor {
line-height: 18px;
height: 18px;
}
.jstree-default-small .jstree-icon {
width: 18px;
height: 18px;
line-height: 18px;
}
.jstree-default-small .jstree-icon:empty {
width: 18px;
height: 18px;
line-height: 18px;
}
.jstree-default-small.jstree-rtl .jstree-node {
margin-right: 18px;
}
.jstree-default-small .jstree-wholerow {
height: 18px;
}
.jstree-default-small .jstree-node,
.jstree-default-small .jstree-icon {
background-image: url("32px.png");
}
.jstree-default-small .jstree-node {
background-position: -295px -7px;
background-repeat: repeat-y;
}
.jstree-default-small .jstree-last {
background: transparent;
}
.jstree-default-small .jstree-open > .jstree-ocl {
background-position: -135px -7px;
}
.jstree-default-small .jstree-closed > .jstree-ocl {
background-position: -103px -7px;
}
.jstree-default-small .jstree-leaf > .jstree-ocl {
background-position: -71px -7px;
}
.jstree-default-small .jstree-anchor > .jstree-themeicon {
background-position: -263px -7px;
}
.jstree-default-small > .jstree-no-dots .jstree-node,
.jstree-default-small > .jstree-no-dots .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default-small > .jstree-no-dots .jstree-open > .jstree-ocl {
background-position: -39px -7px;
}
.jstree-default-small > .jstree-no-dots .jstree-closed > .jstree-ocl {
background-position: -7px -7px;
}
.jstree-default-small .jstree-disabled {
background: transparent;
}
.jstree-default-small .jstree-disabled.jstree-hovered {
background: transparent;
}
.jstree-default-small .jstree-disabled.jstree-clicked {
background: #efefef;
}
.jstree-default-small .jstree-checkbox {
background-position: -167px -7px;
}
.jstree-default-small .jstree-checkbox:hover {
background-position: -167px -39px;
}
.jstree-default-small .jstree-clicked > .jstree-checkbox {
background-position: -231px -7px;
}
.jstree-default-small .jstree-clicked > .jstree-checkbox:hover {
background-position: -231px -39px;
}
.jstree-default-small .jstree-anchor > .jstree-undetermined {
background-position: -199px -7px;
}
.jstree-default-small .jstree-anchor > .jstree-undetermined:hover {
background-position: -199px -39px;
}
.jstree-default-small > .jstree-striped {
background-size: auto 36px;
}
.jstree-default-small.jstree-rtl .jstree-node {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
background-position: 100% 1px;
background-repeat: repeat-y;
}
.jstree-default-small.jstree-rtl .jstree-last {
background: transparent;
}
.jstree-default-small.jstree-rtl .jstree-open > .jstree-ocl {
background-position: -135px -39px;
}
.jstree-default-small.jstree-rtl .jstree-closed > .jstree-ocl {
background-position: -103px -39px;
}
.jstree-default-small.jstree-rtl .jstree-leaf > .jstree-ocl {
background-position: -71px -39px;
}
.jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-node,
.jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-open > .jstree-ocl {
background-position: -39px -39px;
}
.jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-closed > .jstree-ocl {
background-position: -7px -39px;
}
.jstree-default-small .jstree-themeicon-custom {
background-color: transparent;
background-image: none;
}
.jstree-default-small > .jstree-container-ul .jstree-loading > .jstree-ocl {
background: url("throbber.gif") center center no-repeat;
}
.jstree-default-small.jstree-rtl .jstree-node {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAACAQMAAABv1h6PAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMHBgAAiABBI4gz9AAAAABJRU5ErkJggg==");
}
.jstree-default-small.jstree-rtl .jstree-last {
background: transparent;
}
.jstree-default-large .jstree-node {
min-height: 32px;
line-height: 32px;
margin-left: 32px;
min-width: 32px;
}
.jstree-default-large .jstree-anchor {
line-height: 32px;
height: 32px;
}
.jstree-default-large .jstree-icon {
width: 32px;
height: 32px;
line-height: 32px;
}
.jstree-default-large .jstree-icon:empty {
width: 32px;
height: 32px;
line-height: 32px;
}
.jstree-default-large.jstree-rtl .jstree-node {
margin-right: 32px;
}
.jstree-default-large .jstree-wholerow {
height: 32px;
}
.jstree-default-large .jstree-node,
.jstree-default-large .jstree-icon {
background-image: url("32px.png");
}
.jstree-default-large .jstree-node {
background-position: -288px 0px;
background-repeat: repeat-y;
}
.jstree-default-large .jstree-last {
background: transparent;
}
.jstree-default-large .jstree-open > .jstree-ocl {
background-position: -128px 0px;
}
.jstree-default-large .jstree-closed > .jstree-ocl {
background-position: -96px 0px;
}
.jstree-default-large .jstree-leaf > .jstree-ocl {
background-position: -64px 0px;
}
.jstree-default-large .jstree-anchor > .jstree-themeicon {
background-position: -256px 0px;
}
.jstree-default-large > .jstree-no-dots .jstree-node,
.jstree-default-large > .jstree-no-dots .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default-large > .jstree-no-dots .jstree-open > .jstree-ocl {
background-position: -32px 0px;
}
.jstree-default-large > .jstree-no-dots .jstree-closed > .jstree-ocl {
background-position: 0px 0px;
}
.jstree-default-large .jstree-disabled {
background: transparent;
}
.jstree-default-large .jstree-disabled.jstree-hovered {
background: transparent;
}
.jstree-default-large .jstree-disabled.jstree-clicked {
background: #efefef;
}
.jstree-default-large .jstree-checkbox {
background-position: -160px 0px;
}
.jstree-default-large .jstree-checkbox:hover {
background-position: -160px -32px;
}
.jstree-default-large .jstree-clicked > .jstree-checkbox {
background-position: -224px 0px;
}
.jstree-default-large .jstree-clicked > .jstree-checkbox:hover {
background-position: -224px -32px;
}
.jstree-default-large .jstree-anchor > .jstree-undetermined {
background-position: -192px 0px;
}
.jstree-default-large .jstree-anchor > .jstree-undetermined:hover {
background-position: -192px -32px;
}
.jstree-default-large > .jstree-striped {
background-size: auto 64px;
}
.jstree-default-large.jstree-rtl .jstree-node {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
background-position: 100% 1px;
background-repeat: repeat-y;
}
.jstree-default-large.jstree-rtl .jstree-last {
background: transparent;
}
.jstree-default-large.jstree-rtl .jstree-open > .jstree-ocl {
background-position: -128px -32px;
}
.jstree-default-large.jstree-rtl .jstree-closed > .jstree-ocl {
background-position: -96px -32px;
}
.jstree-default-large.jstree-rtl .jstree-leaf > .jstree-ocl {
background-position: -64px -32px;
}
.jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-node,
.jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-open > .jstree-ocl {
background-position: -32px -32px;
}
.jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-closed > .jstree-ocl {
background-position: 0px -32px;
}
.jstree-default-large .jstree-themeicon-custom {
background-color: transparent;
background-image: none;
}
.jstree-default-large > .jstree-container-ul .jstree-loading > .jstree-ocl {
background: url("throbber.gif") center center no-repeat;
}
.jstree-default-large.jstree-rtl .jstree-node {
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAACAQMAAAAD0EyKAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjgIIGBgABCgCBvVLXcAAAAABJRU5ErkJggg==");
}
.jstree-default-large.jstree-rtl .jstree-last {
background: transparent;
}
@media (max-width: 768px) {
.jstree-default-responsive {
/*
.jstree-open > .jstree-ocl,
.jstree-closed > .jstree-ocl { border-radius:20px; background-color:white; }
*/
}
.jstree-default-responsive .jstree-icon {
background-image: url("40px.png");
}
.jstree-default-responsive .jstree-node,
.jstree-default-responsive .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default-responsive .jstree-node {
min-height: 40px;
line-height: 40px;
margin-left: 40px;
min-width: 40px;
white-space: nowrap;
}
.jstree-default-responsive .jstree-anchor {
line-height: 40px;
height: 40px;
}
.jstree-default-responsive .jstree-icon,
.jstree-default-responsive .jstree-icon:empty {
width: 40px;
height: 40px;
line-height: 40px;
}
.jstree-default-responsive > .jstree-container-ul > .jstree-node {
margin-left: 0;
}
.jstree-default-responsive.jstree-rtl .jstree-node {
margin-left: 0;
margin-right: 40px;
}
.jstree-default-responsive.jstree-rtl .jstree-container-ul > .jstree-node {
margin-right: 0;
}
.jstree-default-responsive .jstree-ocl,
.jstree-default-responsive .jstree-themeicon,
.jstree-default-responsive .jstree-checkbox {
background-size: 120px 200px;
}
.jstree-default-responsive .jstree-leaf > .jstree-ocl {
background: transparent;
}
.jstree-default-responsive .jstree-open > .jstree-ocl {
background-position: 0 0px !important;
}
.jstree-default-responsive .jstree-closed > .jstree-ocl {
background-position: 0 -40px !important;
}
.jstree-default-responsive.jstree-rtl .jstree-closed > .jstree-ocl {
background-position: -40px 0px !important;
}
.jstree-default-responsive .jstree-anchor > .jstree-themeicon {
background-position: -40px -40px;
}
.jstree-default-responsive .jstree-checkbox,
.jstree-default-responsive .jstree-checkbox:hover {
background-position: -40px -80px;
}
.jstree-default-responsive .jstree-clicked > .jstree-checkbox,
.jstree-default-responsive .jstree-clicked > .jstree-checkbox:hover {
background-position: 0 -80px;
}
.jstree-default-responsive .jstree-anchor > .jstree-undetermined,
.jstree-default-responsive .jstree-anchor > .jstree-undetermined:hover {
background-position: 0 -120px;
}
.jstree-default-responsive .jstree-anchor {
font-weight: bold;
font-size: 1.1em;
text-shadow: 1px 1px white;
}
.jstree-default-responsive > .jstree-striped {
background: transparent;
}
.jstree-default-responsive .jstree-wholerow {
border-top: 1px solid rgba(255, 255, 255, 0.7);
border-bottom: 1px solid rgba(64, 64, 64, 0.2);
background: #ebebeb;
height: 40px;
}
.jstree-default-responsive .jstree-wholerow-hovered {
background: #e7f4f9;
}
.jstree-default-responsive .jstree-wholerow-clicked {
background: #beebff;
}
.jstree-default-responsive .jstree-children .jstree-last > .jstree-wholerow {
box-shadow: inset 0 -6px 3px -5px #666666;
}
.jstree-default-responsive .jstree-children .jstree-open > .jstree-wholerow {
box-shadow: inset 0 6px 3px -5px #666666;
border-top: 0;
}
.jstree-default-responsive .jstree-children .jstree-open + .jstree-open {
box-shadow: none;
}
.jstree-default-responsive .jstree-node,
.jstree-default-responsive .jstree-icon,
.jstree-default-responsive .jstree-node > .jstree-ocl,
.jstree-default-responsive .jstree-themeicon,
.jstree-default-responsive .jstree-checkbox {
background-image: url("40px.png");
background-size: 120px 200px;
}
.jstree-default-responsive .jstree-node {
background-position: -80px 0;
background-repeat: repeat-y;
}
.jstree-default-responsive .jstree-last {
background: transparent;
}
.jstree-default-responsive .jstree-leaf > .jstree-ocl {
background-position: -40px -120px;
}
.jstree-default-responsive .jstree-last > .jstree-ocl {
background-position: -40px -160px;
}
.jstree-default-responsive .jstree-themeicon-custom {
background-color: transparent;
background-image: none;
}
}
.jstree-default > .jstree-container-ul > .jstree-node {
margin-left: 0;
margin-right: 0;
}

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 599 B

View File

View File

@@ -1,160 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
$navtitle=lang('新闻');
$ismobile=helper_browser::ismobile();
//error_reporting(E_ALL);
//判断用户访问权限
include libfile('function/organization');
include libfile('function/news');
if(!$_G['cache']['news:setting']) loadcache('news:setting');
$setting=$_G['cache']['news:setting'];
$videotime = explode("\r\n", $setting['lbp']);
$perm=getPermByUid($_G['uid']);
$catid=empty($_GET['catid'])?0:intval($_GET['catid']);
$status=empty($_GET['status'])?1:intval($_GET['status']);
$keyword=empty($_GET['keyword'])?'':trim($_GET['keyword']);
//分页
$page = empty($_GET['page'])?1:intval($_GET['page']);
$perpage=10;
$gets = array(
'mod'=>'news',
'keyword'=>$keyword,
'catid'=>$catid,
'status'=>$status
);
$theurl = DZZSCRIPT."?".url_implode($gets);
$refer=urlencode($theurl.'&page='.$page);
$start=($page-1)*$perpage;
//查询
$param=array('news');
$param[]='news_viewer';
$param[]=$_G['uid'];
$sql="1";
$orderby="ORDER BY n.istop DESC , n.dateline DESC";
if($perm<2){
//阅读范围查询语句
if($_G['uid']<1){
$sql.=" and n.orgids='' and n.uids=''";
}else{
$sql.=" and ( n.authorid=%d OR (";
$param[]=$_G['uid'];
$sql_gid=array("n.orgids=''");
if($orgarr=getDepartmentByUid($_G['uid'])){ //获取当前用户所在的部门数组
foreach($orgarr as $value){
foreach($value as $value1){
$sql_gid[]="FIND_IN_SET(%d,orgids)";
$param[]=$value1['orgid'];
}
}
}else{
$sql_gid[]="FIND_IN_SET(%s,orgids)";
$param[]='other';
}
$sql.="(".implode(' OR ',$sql_gid).") and ( n.uids='' OR FIND_IN_SET(%d,n.uids))";
$sql.="))";
$param[]=$_G['uid'];
}
}
if(!empty($keyword)){ //关键词查询时忽略分类
$sql.=' and n.subject like %s';
$param[]='%'.$keyword.'%';
$catid=0;
$status=1;
}
if($catid){
/*$sql.=' and n.catid=%d';
$param[]=$catid;*/
$subids=C::t('news_cat')->getSonByCatid($catid);
$sql.=' and catid IN(%n)';
$param[]=$subids;
}
if($status==1){//已发布,待审核和草稿
$sql.=' and n.status=%d';
$param[]=$status;
$navlast=$keyword?lang('search').$keyword:lang('have_published');
}elseif($status==6 ){//我发布的
$sql.=' and n.status<2 and authorid=%d';
$param[]=$_G['uid'];
$navlast=lang('my_released');
}elseif($status==2 ){//待审核
if($perm>1){ //管理员,调取所有需要审核的
$sql.=" and n.status='2'";
}else{ //非管理员只调取本人发布的等待审核的条目
$sql.=" and n.status='2' and authorid=%d ";
$param[]=$_G['uid'];
}
$orderby="ORDER BY n.istop DESC , n.updatetime DESC";
$navlast=lang('check_pending');
}elseif($status==3){ //草稿箱,只调取当前用户的
$sql.=" and n.status='3' and authorid=%d ";
$param[]=$_G['uid'];
$navlast=lang('drafts');
}elseif($status==4 ){ //未读
$sql.=" and status='1' and isnull(v.vid)";
$param[]=$_G['uid'];
$navlast=lang('unread');
}elseif($status==5){ //已读
$sql.=" and status='1' and v.vid>0";
$param[]=$_G['uid'];
$navlast=lang('read');
}
$data=array();
$topupdate=array();
if($count=DB::result_first("select count(*) from %t n LEFT JOIN %t v ON n.newid=v.newid and v.uid=%d where $sql",$param)){
foreach(DB::fetch_all("select n.*,v.vid as isread from %t n LEFT JOIN %t v ON n.newid=v.newid and v.uid=%d where $sql $orderby limit $start,$perpage",$param) as $value){
$today=strtotime(dgmdate(TIMESTAMP,'Y-m-d'));
$value['real_set_endtime']="";
if($value['highlightendtime'] ) $value["real_set_endtime"]= dgmdate($value['highlightendtime'],'Y-m-d') ;
$value['real_set_topendtime']="";
if($value['topendtime'] ) $value["real_set_topendtime"]= dgmdate($value['topendtime'],'Y-m-d') ;
if($value['topendtime']<$today){
if($value['istop']){
$updatearr[]=$value['newid'];
}
$value['istop']=0;
}
if($value['highlightendtime']<$today ){
$value['ishighlight']=0;
}
if($value['opuid'] && $opuser=getuserbyuid($value['opuid'])){
$value['opauthor']=$opuser['username'];
}
if($status==2 && $value['moduid'] && $moduser=getuserbyuid($value['moduid'])){
$value['modusername']=$moduser['username'];
}
$data[]=$value;
}
$multi=multi($count, $perpage, $page, $theurl,'pull-center');
}
if($topupdate){ //置顶时间过期的设置istop=0
DB::update('news',array('istop'=>0),"newid IN (".dimplode($topupdate).")");
}
$catlist=getCatList(0,$catid);
//if($ismobile){
// include template('news_list_mobile');
//}else{
include template('news_list');
//}
?>

View File

@@ -1,96 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ') || !defined('IN_ADMIN')) {
exit('Access Denied');
}
$sql = <<<EOF
DROP TABLE IF EXISTS dzz_news;
CREATE TABLE IF NOT EXISTS dzz_news (
newid mediumint(8) NOT NULL AUTO_INCREMENT COMMENT '新闻id',
sitelogo MEDIUMTEXT NOT NULL COMMENT '封面',
`subject` varchar(200) NOT NULL DEFAULT '' COMMENT '标题',
content MEDIUMTEXT NOT NULL COMMENT '内容',
shipin MEDIUMTEXT NOT NULL COMMENT '视频',
`type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '内容类型 0为文章 1为图片 2为链接',
author varchar(30) NOT NULL DEFAULT '' COMMENT '作者',
authorid int(10) unsigned NOT NULL DEFAULT '0',
modtime int(10) NOT NULL DEFAULT '0',
moduid int(10) unsigned NOT NULL DEFAULT '0' COMMENT '审批人',
modreason varchar(255) NOT NULL DEFAULT '' COMMENT '退回原因',
dateline int(10) unsigned NOT NULL DEFAULT '0' COMMENT '添加时间',
updatetime int(10) unsigned NOT NULL DEFAULT '0' COMMENT '修改时间',
attachs text NOT NULL COMMENT '附件aids',
commentstatus tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '评论状态1为开启0为关闭',
styleswitch tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '风格状态1为开启0为关闭',
youkepinglun tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '娱乐状态1为开启0为关闭',
votestatus tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '投票状态 1为开启0为关闭',
url char(255) NOT NULL DEFAULT '' COMMENT '超链接地址',
catid smallint(6) unsigned NOT NULL DEFAULT '0' COMMENT '所属分类',
`status` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '新闻状态1为公开2为审核3为草稿',
orgids text NOT NULL COMMENT '阅读范围 部门',
uids text NOT NULL COMMENT '阅读范围 人员',
istop tinyint(1) NOT NULL DEFAULT '0' COMMENT '置顶顺序',
toptime int(10) NOT NULL DEFAULT '0' COMMENT '置顶时间',
topendtime int(10) unsigned NOT NULL DEFAULT '0' COMMENT '置顶过期时间',
ishighlight tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '是否高亮',
highlightstyle char(80) NOT NULL DEFAULT '' COMMENT '高亮样式',
highlightendtime int(10) unsigned NOT NULL DEFAULT '0' COMMENT '高亮过期时间',
comments int(10) unsigned NOT NULL DEFAULT '0' COMMENT '评论数量',
views smallint(6) NOT NULL DEFAULT '0',
opuid int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (newid),
KEY `SUBJECT` (`subject`) USING BTREE,
KEY PROVIDER (author) USING BTREE,
KEY NEWS_TIME (dateline) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS dzz_news_cat;
CREATE TABLE IF NOT EXISTS dzz_news_cat (
catid smallint(6) unsigned NOT NULL AUTO_INCREMENT,
pid smallint(6) unsigned NOT NULL DEFAULT '0' COMMENT '父分类id',
`name` char(60) NOT NULL COMMENT '新闻分类名称',
disp smallint(6) NOT NULL DEFAULT '0' COMMENT '排序号',
status TINYINT(1) NOT NULL DEFAULT '1' COMMENT '1正常;-1删除',
PRIMARY KEY (catid)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS dzz_news_pic;
CREATE TABLE IF NOT EXISTS dzz_news_pic (
picid int(10) NOT NULL AUTO_INCREMENT,
newid int(10) unsigned NOT NULL DEFAULT '0',
title varchar(255) NOT NULL DEFAULT '',
aid int(10) unsigned NOT NULL DEFAULT '0',
disp smallint(6) unsigned DEFAULT '0',
dateline int(10) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (picid),
KEY newid (newid)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS dzz_news_setting;
CREATE TABLE IF NOT EXISTS dzz_news_setting (
skey varchar(30) NOT NULL DEFAULT '',
svalue text NOT NULL,
PRIMARY KEY (skey)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
DROP TABLE IF EXISTS dzz_news_viewer;
CREATE TABLE IF NOT EXISTS dzz_news_viewer (
vid mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT '读者id',
newid mediumint(8) unsigned NOT NULL DEFAULT '0' COMMENT '新闻id',
uid mediumint(8) unsigned NOT NULL DEFAULT '0' COMMENT '阅读者UID',
dateline int(10) unsigned NOT NULL DEFAULT '0' COMMENT '阅读时间',
username varchar(30) NOT NULL,
views int(10) unsigned NOT NULL DEFAULT '0' COMMENT '阅读次数',
PRIMARY KEY (vid),
UNIQUE KEY nuid (newid,uid)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
EOF;
runquery($sql);
$finish = true;

View File

@@ -1,230 +0,0 @@
<?php
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
$lang = array
(
//发表评论,通知信息发布者
'news_moderator_2_title'=>'The information was reviewed and returned',
'news_moderator_2'=>'{author} has reviewed your published news article, review comments:<span class="danger">{modreason}</span> <a href="{url}">Now go check it out</a>',
'news_moderator_2_wx' =>'{author} The news articles you published have been reviewed. The comments are as follows:<span class="danger">{modreason}</span>',
'news_moderator_2_redirecturl' =>'{url}',
//发表评论,通知信息发布者
'news_moderator_1_title'=>'The information was approved',
'news_moderator_1'=>'{author} The news articles you published have been reviewed. The comments are as follows:<span class="success">{modreason}</span> <a href="{url}">Now go check it out</a>',
'news_moderator_1_wx' =>'{author} The news articles you published have been reviewed. The comments are as follows:<span class="success">{modreason}</span>',
'news_moderator_1_redirecturl' =>'{url}',
//发表评论,通知信息发布者
'news_moderate_title' =>'There is information that needs to be reviewed',
'news_moderate1' =>'{author} Remind you of new information that needs to be reviewed <a href="{url}">Now go check it out</a>',
'news_moderate' =>'{author} Remind you of new information that needs to be reviewed <a href="{url}">Now go check it out</a>',
'news_moderate_wx' =>'{author} Remind you of new information that needs to be reviewed',
'news_moderate_redirecturl' =>'{url}',
//通知用户查看信息
'news_publish_title' =>'There is a new release of information',
'news_publish' =>'{author} The news was released <a href="{url}">{subject}</a>',
'news_publish_wx' =>'{author} You view new information',
'news_publish_redirecturl'=> '{url}',
'appname'=>'news',
'manage_setting'=>'Management Settings',
'base_setting'=>'Basic setup',
'wx_setting'=>'WeChat set',
'model_setting'=>'Plate setting',
'manager_setting'=>'Administrator Settings',
'add_manager'=>'Adding a Management Member',
'message_setting'=>'Information release Authority',
'all_user'=>'Total station users',
'only_user'=>'Specify a user',
'add_user'=>'Add members',
'message_audit'=>' Information audit',
'none_audit'=>' no audit required ',
'need_audit'=>' need to audit (administrator exception) ',
'click_can_editorupdate'=>' Click to editor delete ',
'model_name'=>' panel name',
'add_new_model'=>' Add new plate ',
'do_success' => 'operation succeeded ',
// 2.2添加
'return' => 'return',
'Style_switch' => 'Style switch',
'Visitors'=>'Visitors to comment on',
'news_title'=>' News title',
'news_type'=>' Information classification ',
'choose_news_type'=>' Please select classification ',
'news_content_type'=>' information content type',
'text_content'=>' text content',
'img_content'=>' image content',
'ahref_address'=>' hyperlink address',
'href_address'=>' link address',
'comment_switch'=>' comment switch',
'vote_switch'=>' vote switch',
'information_title'=>' information title',
'can_also_type_in'=>' can also type ',
'character'=>' character',
'issue_range'=>' Issue range',
'no_choose_click_add_issue_range'=>' Do not select publish range, all visible; Click the publication scope on the left to add and delete the publication scope ',
'from_desktop_selection'=>' Select from desktop ',
'can_drag_img_this_place'=>' can also drag images into this area ',
'save_as_draft'=>' Save as draft',
'no_save_leave_sure'=>' Current content is not saved, are you sure you want to leave? ',
'input_link_address'=>' Please enter the link address',
// 结束
// 2.4修改
'all_news'=>' all information ',
'controller_options'=>' Action options',
'have_published'=>' published',
'unread' => 'unread',
'read' => 'read',
'check_pending'=>' pending',
'draft' => 'draft',
'highlight_deadline'=>' Highlight deadline',
'top_off_date'=>' top_off_date',
'back_in'=>' back to ',
'reasons_for_returning'=>' reasons_for_returning',
'last_modified'=>' last_modified',
'promulgator'=>' publisher ',
'comments'=>' number of comments',
'human_count'=>' number of views ',
'people' => 'people',
'information_transmission'=>' Information being sent... ',
'remind_the_administrator_to_review'=>' Remind the administrator of the review',
'the compile' => 'edit',
'successfully_add_desktop_shortcuts'=>' Add Desktop Shortcut Successfully ',
'no_any_pictures'=>' No pictures yet! ',
'too_little_information'=>' Too little information content! ',
'the_poll_title_cannot_be_empty'=>' Poll title cannot be empty',
'vote_for_at_least_two_items'=>' Vote for at least 2 items! ',
'move' => 'mobile',
'top_off' => 'top',
'highlight' => 'highlight',
'check' => 'review',
'move_to_scan'=>' Move to ',
'term_set_top'=>' top term ',
'select_the_top_closing_date_and_leave_the_top_blank'=>' select top deadline, leave blank to cancel top ',
'highlight_set'=>' highlightset ',
'select_the_highlight_deadline_and_leave_the_highlight_blank'=>' Select highlight deadline and leave blank to cancel highlight ',
'click_choose_color'=>' Click to select color',
'bold' => 'bold',
'italic' => 'italics',
'underline' => 'underline',
'are_you_sure_you_want_to_delete_the_selected_information'=>' Are you sure you want to delete the selected information (this operation is unrecoverable)? ',
'audit_opinion'=>' audit opinion',
'review_comments_to_inform_the_user_of_the_failure_of_the_cause'=>' Review comments to inform the user of the reason for the failure ',
'Review the return'=>' Review the return',
'pass_the_audit'=>' approved ',
'add' => 'add',
'move_up' => 'up',
'shift_down' => 'down',
'add_type'=>' Add a class ',
'category_parent'=>' Superior classification ',
'category_delete'=>' category delete',
'determine_to_delete_the_taxonomy'=>' determine to delete a classification ',
'classification_of_all_subordinates'=>' (this operation cannot be restored) ',
// 2.5修改
'informations' =>' information ',
'publications'=>' publications',
'changes'=>' changes to ',
'review_on'=>' audit on',
'range' => 'range',
'consult_the_situation'=>' consult the situation',
'login_system'=>' Log in to system',
'boardtype'=>' board name ',
'enter_user_name_search'=>' Enter user name search',
'no_unloading'=> 'Do not uninstall',
'determine_uninstall_application'=>' Determine_uninstall_application ',
'this_operation_deletes_the_application'=>' This operation will delete the application',
'all_data_be_careful'=>' be careful with all data in the app ',
'confirm_deletions'=>' If you really need to DELETE, type DELETE below ',
// 结束
// 3.2添加
'There is no relevant news in the current version',
'allowed_to_publish_information'=>' User who allows publishing information',
'have_no_right'=>' have no permission ',
'alert_messages_to_be_sent_successfully'=>' Alert message sent successfully',
'delete_failure'=>' delete failure',
'message_header_cannot_be_empty'=>' Message header cannot be empty',
'tape_release_failure'=>' release failure',
'non_agency_personnel'=>' no agency personnel',
'name_cannot_be_empty'=>' Name cannot be empty',
'the_name_cannot_be_repeated'=>' Your name must not be repeated',
'modify_successfully'=>' modified successfully',
'new_success'=>' added successfully ',
'successfully_delete'=>' delete succeeded ',
'printf'=>' sorted successfully ',
'shanghai_leyun_net'=>' Shanghai Leyun Network Collaboration Platform ',
'press_center'=>' Press Center ',
'search' => 'search',
'my_released'=>' I released',
'drafts'=>' Draft box ',
'headline' => 'title',
'content' => 'content',
'content_type'=>' content type',
'0_article'=>'0 for article',
'1_images'=>'1 for images',
'2_link'=>'2 is the link',
'author' => 'author',
'approver'=>' approver',
'add_time'=>' add time',
'review_status'=>' comment status',
'1_start_0_close'=>'1 for open and 0 for close',
'vote_state'=>' Voting status ',
'popular_in_these_categories'=>' popular_these_categories ',
'state_of_the_news'=>' News status ',
'1_open_2_audit_3_draft'=>'1 for public, 2 for audit, 3 for draft',
'reading_range'=>' read range',
'department' => 'department',
'personnel' => 'staff',
'top_order'=>' top order',
'sticky_time'=>' set top time',
'expiration_date_of_purchase'=>' EXPIRation_expiration date ',
'is_highlight'=>' is_highlight',
'highlighting_the_style'=>' Highlight style',
'highlight_expiration_time'=>' expirationtime highlighted ',
'number_of_reviews'=>' number of reviews',
'the_parent_category'=>' parent category',
'name_of_news_classification'=>' News classification name ',
'sequence'=>' sequence number ',
'1 _normal' => '1 normal',
'1 _delete' => '1 to delete',
'reader' => 'readers',
'reader_UID'=>' reader UID',
'reading_time'=>' reading time',
'times_of_view'=>' times_of_view',
'announcement' => 'announcements',
'company_news'=>' Company news',
'staff_presence'=>' Staff Presence ',
'financial_report'=>' Financial News ',
'political_news'=>' Political news',
'company_activity'=>' Company activity',
'type_add_failure'=>' class add fail ',
'new_news'=>' Latest information ',
'information_center'=>' Information center',
'wechat_apply_settings'=>' wechat_apply_settings',
'enterprise_news_information_application'=>' Enterprise news and information application, which enables employees to keep abreast of the latest enterprise information and news. ',
'check_pending_is'=>' to be audited ',
'my_draft'=>' my draft',
'my_unread'=>' I didnt read',
'setup_menu'=>' Set menu KEY value ',
'setup_menu_href'=>' set menu jump link ',
'tape_release_failure_agentid'=>' Release failed, the application has not created wechat Agentid ',
'my_news'=>' my information ',
'unread_messages'=>' unread messages',
'this_news_has_been_moved'=>' The article does not exist or has been removed ',
'have_no_right_contact_your_administrator'=>' You do not have permission to view this information, please contact the administrator',
'no_relevant_content'=>' no relevant_content yet ',
'send_to_here'=>' Messages and notifications from the platform will be sent here in a timely manner ',
);
?>

View File

@@ -1,230 +0,0 @@
<?php
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
$lang = array
(
//审核退回,通知信息发布者
'news_moderator_2_title' =>'信息被审核退回了',
'news_moderator_2' =>'{author}审核了你发布的新闻文章,审核意见:<span class="danger">{modreason}</span> <a href="{url}" >现在去看看</a>',
'news_moderator_2_wx' =>'{author}审核了你发布的新闻文章,审核意见:<span class="danger">{modreason}</span>',
'news_moderator_2_redirecturl' =>'{url}',
//审核通过,通知信息发布者
'news_moderator_1_title' =>'信息审核通过了',
'news_moderator_1' =>'{author}审核了你发布的新闻文章,审核意见:<span class="success">{modreason}</span> <a href="{url}">现在去看看</a>',
'news_moderator_1_wx' =>'{author}审核了你发布的新闻文章,审核意见:<span class="success">{modreason}</span>',
'news_moderator_1_redirecturl' =>'{url}',
//发表文章,通知管理者
'news_moderate_title' =>'有需要审核的信息',
'news_moderate1' =>'{author}发布了信息需要您审核 <a href="{url}">现在去看看</a>',
'news_moderate' =>'{author}提醒您有新信息需要审核 <a href="{url}">现在去看看</a>',
'news_moderate_wx' =>'{author}提醒您有新信息需要审核',
'news_moderate_redirecturl' =>'{url}',
//通知用户查看信息
'news_publish_title' =>'有新发布的信息',
'news_publish' =>'{author}发布了新闻 <a href="{url}" >{subject}</a>',
'news_publish_wx' =>'{author}您查看新信息',
'news_publish_redirecturl'=> '{url}',
'appname'=>'新闻',
'manage_setting'=>'管理设置',
'base_setting'=>'基本设置',
'wx_setting'=>'微信设置',
'model_setting'=>'板块设置',
'manager_setting'=>'管理员设置',
'add_manager'=>'添加管理成员',
'message_setting'=>'信息发布权限',
'all_user'=>'全站用户',
'only_user'=>'指定用户',
'add_user'=>'添加成员',
'message_audit'=>'信息审核',
'none_audit'=>'不需要审核',
'need_audit'=>'需要审核(管理员例外)',
'click_can_editorupdate'=>'点击可以编辑或删除',
'model_name'=>'版块名称',
'add_new_model'=>'添加新板块',
'do_success' => '操作成功',
// 2.2添加
'return'=>'返回',
'Style_switch'=>'风格开关',
'Visitors'=>'游客评论',
'news_title'=>'新闻标题',
'news_type'=>'信息分类',
'choose_news_type'=>'请选择分类',
'news_content_type'=>'信息内容类型',
'text_content'=>'文本内容',
'img_content'=>'图片内容',
'ahref_address'=>'超链接地址',
'href_address'=>'链接地址',
'comment_switch'=>'评论开关',
'vote_switch'=>'投票开关',
'information_title'=>'信息标题',
'can_also_type_in'=>'还可以输入',
'character'=>'个字符',
'issue_range'=>'发布范围',
'no_choose_click_add_issue_range'=>'不选择发布范围,全部可见;点击左侧的发布范围可以添加删除发布范围',
'from_desktop_selection'=>'从桌面选择',
'can_drag_img_this_place'=>'也可以把图片拖放到该区域',
'save_as_draft'=>'保存为草稿',
'no_save_leave_sure'=>'当前内容没有保存,确定要离开吗?',
'input_link_address'=>'请输入链接地址',
// 结束
// 2.4修改
'all_news'=>'全部信息',
'controller_options'=>'操作选项',
'have_published'=>'已发布',
'unread'=>'未读',
'read'=>'已读',
'check_pending'=>'待审核',
'draft'=>'草稿',
'highlight_deadline'=>'高亮截止日期',
'top_off_date'=>'置顶截止日期',
'back_in'=>'退回于',
'reasons_for_returning'=>'退回原因',
'last_modified'=>'最后修改',
'promulgator'=>'发布者',
'comments'=>'评论数量',
'human_count'=>'查看次数',
'people'=>'人',
'information_transmission'=>'信息发送中...',
'remind_the_administrator_to_review'=>'提醒管理员审核',
'compile'=>'编辑',
'successfully_add_desktop_shortcuts'=>'成功添加桌面快捷方式',
'no_any_pictures'=>'还没有图片!',
'too_little_information'=>'信息内容太少!',
'the_poll_title_cannot_be_empty'=>'投票标题不能为空',
'vote_for_at_least_two_items'=>'投票项目至少为2项',
'move'=>'移动',
'top_off'=>'置顶',
'highlight'=>'高亮',
'check'=>'审核',
'move_to_scan'=>'移动至',
'term_set_top'=>'置顶期限',
'select_the_top_closing_date_and_leave_the_top_blank'=>'选择置顶截止日期,留空取消置顶',
'highlight_set'=>'高亮设置',
'select_the_highlight_deadline_and_leave_the_highlight_blank'=>'选择高亮截止日期,留空取消高亮',
'click_choose_color'=>'点击选择颜色',
'bold'=>'粗体',
'italic'=>'斜体',
'underline'=>'下划线',
'are_you_sure_you_want_to_delete_the_selected_information'=>'确定要删除所选择的信息吗(此操作不可恢复)?',
'audit_opinion'=>'审核意见',
'review_comments_to_inform_the_user_of_the_failure_of_the_cause'=>'审核意见,借此通知用户未通过原因',
'Review the return'=>'审核退回',
'pass_the_audit'=>'审核通过',
'add'=>'添加',
'move_up'=>'上移',
'shift_down'=>'下移',
'add_type'=>'添加分类',
'category_parent'=>'上级分类',
'category_delete'=>'分类删除',
'determine_to_delete_the_taxonomy'=>'确定要删除分类',
'classification_of_all_subordinates'=>'及其所有下属分类(此操作不可恢复)?',
// 2.5修改
'informations'=>'信息',
'publications'=>'发布于',
'changes'=>'修改于',
'review_on'=>'审核于',
'range'=>'范围',
'consult_the_situation'=>'查阅情况',
'login_system'=>'登录系统',
'boardtype'=>'版块名称',
'enter_user_name_search'=>'输入用户名搜索',
'no_unloading'=>'不卸载',
'determine_uninstall_application'=>'确定卸载应用',
'this_operation_deletes_the_application'=>'此操作将删除应用',
'all_data_be_careful'=>'内所有数据,请慎重',
'confirm_deletions'=>'如果确实需要删除,请在下面输入 DELETE 字样确认删除',
// 结束
// 3.2添加
'there_is_no_news_in_the_current_version'=>'目前版本内暂无相关新闻',
'allowed_to_publish_information'=>'允许发布信息的用户',
'have_no_right'=>'没有权限',
'alert_messages_to_be_sent_successfully'=>'提醒信息发送成功',
'delete_failure'=>'删除失败',
'message_header_cannot_be_empty'=>'信息标题不能为空',
'tape_release_failure'=>'发布失败',
'non_agency_personnel'=>'无机构人员',
'name_cannot_be_empty'=>'名称不能为空',
'the_name_cannot_be_repeated'=>'名称不能重复',
'modify_successfully'=>'修改成功',
'new_success'=>'新增成功',
'successfully_delete'=>'删除成功',
'printf'=>'排序成功',
'shanghai_leyun_net'=>'上海乐云网络协作平台',
'press_center'=>'新闻中心',
'search'=>'搜索',
'my_released'=>'我发布的',
'drafts'=>'草稿箱',
'headline'=>'标题',
'content'=>'内容',
'content_type'=>'内容类型',
'0_article'=>'0为文章',
'1_images'=>'1为图片',
'2_link'=>'2为链接',
'author'=>'作者',
'approver'=>'审批人',
'add_time'=>'添加时间',
'review_status'=>'评论状态',
'1_start_0_close'=>'1为开启0为关闭',
'vote_state'=>'投票状态',
'popular_in_these_categories'=>'所属分类',
'state_of_the_news'=>'新闻状态',
'1_open_2_audit_3_draft'=>'1为公开2为审核3为草稿',
'reading_range'=>'阅读范围',
'department'=>'部门',
'personnel'=>'人员',
'top_order'=>'置顶顺序',
'sticky_time'=>'置顶时间',
'expiration_date_of_purchase'=>'置顶过期时间',
'is_highlight'=>'是否高亮',
'highlighting_the_style'=>'高亮样式',
'highlight_expiration_time'=>'高亮过期时间',
'number_of_reviews'=>'评论数量',
'the_parent_category'=>'父分类',
'name_of_news_classification'=>'新闻分类名称',
'sequence'=>'排序号',
'1_normal'=>'1正常',
'1_delete'=>'1删除',
'reader'=>'读者',
'reader_UID'=>'阅读者UID',
'reading_time'=>'阅读时间',
'times_of_view'=>'阅读次数',
'announcement'=>'公告',
'company_news'=>'公司新闻',
'staff_presence'=>'员工风采',
'financial_report'=>'财经新闻',
'political_news'=>'时政新闻',
'company_activity'=>'公司活动',
'type_add_failure'=>'分类添加失败',
'new_news'=>'最新信息',
'information_center'=>'信息中心',
'wechat_apply_settings'=>'微信信息应用设置',
'enterprise_news_information_application'=>'企业新闻和信息应用,通过它可以让员工随时了解企业的最新资讯和新闻。',
'check_pending_is'=>'待审核的',
'my_draft'=>'我的草稿',
'my_unread'=>'我未读的',
'setup_menu'=>'设置菜单KEY值',
'setup_menu_href'=>'设置菜单跳转链接',
'tape_release_failure_agentid'=>'发布失败应用还没有创建微信agentid',
'my_news'=>'我的信息',
'unread_messages'=>'未读信息',
'this_news_has_been_moved'=>'文章不存在或已删除',
'have_no_right_contact_your_administrator'=>'您没有查看此信息的权限,请联系管理员',
'no_relevant_content'=>'还没有相关内容',
'send_to_here'=>'平台的消息和通知会及时的发送到此处',
);
?>

View File

@@ -1,153 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
require_once libfile('function/news');
$do=trim($_GET['do']);
if($do=='newsmenu'){
$step=intval($_GET['step']);
if(!$step){
$status=empty($_GET['status'])?1:intval($_GET['status']);
}elseif($step==1 ){ //移动
if(submitcheck('catmovesubmit')){
$perm=getPermByUid($_G['uid']);
if($perm<2) showmessage(lang('have_no_right'),dreferer(),array(),array('showmsg'=>true));
$catid=intval($_GET['catid']);
$newids=!empty($_GET['newid'])?explode(',',$_GET['newid']):array();
if($catid) DB::update('news',array('catid'=>$catid),"newid IN (".dimplode($newids).")");
showmessage('do_success',dreferer(),array(),array('showmsg'=>true));
}else{
$catoptions=getCatOptions();
}
}elseif($step==2){//置顶
if(submitcheck('istopsubmit')){
$perm=getPermByUid($_G['uid']);
if($perm<2) showmessage(lang('have_no_right'),dreferer(),array(),array('showmsg'=>true));
$topendtime=strtotime($_GET['topendtime']);
$today=strtotime(dgmdate(TIMESTAMP,'Y-m-d'));
if($topendtime<$today) $istop=0;
else $istop=1;
$newids=!empty($_GET['newid'])?explode(',',$_GET['newid']):array();
if($newids) DB::update('news',array('istop'=>$istop,'topendtime'=>$topendtime),"newid IN (".dimplode($newids).")");
showmessage('do_success',dreferer(),array(),array('showmsg'=>true));
}else{
$now=dgmdate(TIMESTAMP,'Y-m-d');
}
}elseif($step==3){
if(submitcheck('highlightsubmit')){
$perm=getPermByUid($_G['uid']);
if($perm<2) showmessage(lang('have_no_right'),dreferer(),array(),array('showmsg'=>true));
$highlightendtime=strtotime($_GET['highlightendtime']);
$today=strtotime(dgmdate(TIMESTAMP,'Y-m-d'));
if($highlightendtime<$today) $ishighlight=0;
else $ishighlight=1;
$highlightstyle='';
if($_GET['highlight_color']) $highlightstyle.='color:'.trim($_GET['highlight_color']).';';
if($_GET['highlight_bold']) $highlightstyle.='font-weight:700;';
if($_GET['highlight_italic']) $highlightstyle.='font-style:italic;';
if($_GET['highlight_underline']) $highlightstyle.='text-decoration:underline;';
if(empty($highlightstyle)) $ishighlight=0;
$newids=!empty($_GET['newid'])?explode(',',$_GET['newid']):array();
if($newids) DB::update('news',array('ishighlight'=>$ishighlight,'highlightendtime'=>$highlightendtime,'highlightstyle'=>$highlightstyle),"newid IN (".dimplode($newids).")");
showmessage('do_success',dreferer(),array(),array('showmsg'=>true));
}else{
$now=dgmdate(TIMESTAMP,'Y-m-d');
}
}elseif($step==4){//删除
if(submitcheck('deletesubmit')){
$perm=getPermByUid($_G['uid']);
if($perm<2) showmessage(lang('have_no_right'),dreferer(),array(),array('showmsg'=>true));
$newids=!empty($_GET['newid'])?explode(',',$_GET['newid']):array();
if($newids) C::t('news')->batch_delete_by_newid($newids);
showmessage('do_success',dreferer(),array(),array('showmsg'=>true));
}else{
$now=dgmdate(TIMESTAMP,'Y-m-d');
}
}elseif($step==5){//审核
if(submitcheck('modsubmit')){
$perm=getPermByUid($_G['uid']);
if($perm<2) showmessage(lang('have_no_right'),dreferer(),array(),array('showmsg'=>true));
$modreason=trim($_GET['modreason']);
$pass=intval($_GET['pass']);
$newids=!empty($_GET['newid'])?explode(',',$_GET['newid']):array();
if($newids) C::t('news')->mod_by_newid($newids,$pass,$modreason);
showmessage('do_success',dreferer(),array(),array('showmsg'=>true));
}else{
}
}
}elseif($do=='catmenu'){
$catid=intval($_GET['catid']);
$step=intval($_GET['step']);
if(!$step){ //主菜单
}elseif($step==1 || $step==2){//编辑
if(submitcheck('cateditsubmit')){
$perm=getPermByUid($_G['uid']);
if($perm<2) showmessage(lang('have_no_right'),dreferer(),array(),array('showmsg'=>true));
$ncatid=intval($_GET['ncatid']);
$pid=intval($_GET['pid']);
$name=getstr(trim($_GET['name']),60);
if($ncatid){
C::t('news_cat')->update_by_catid($ncatid,array('name'=>$name,'pid'=>$pid));
showmessage('do_success',dreferer(),array('data'=>rawurlencode(json_encode(array('catid'=>$ncatid,'pid'=>$pid,'name'=>$name)))),array('showmsg'=>true));
}else {
if($ncatid=C::t('news_cat')->insert_by_catid(array('name'=>$name,'pid'=>$pid))){
showmessage('do_success',dreferer(),array('data'=>rawurlencode(json_encode(array('catid'=>$ncatid,'pid'=>$pid,'name'=>$name)))),array('showmsg'=>true));
}else{
showmessage(lang('type_add_failure'),dreferer(),array(),array('showmsg'=>true));
}
}
}else{
$catoptions=getCatOptions(0,$catid);
if($step==2){
$cat=C::t('news_cat')->fetch($catid);
$catoptions=getCatOptions(0,$cat['pid'],$cat['catid']);
}else{
$cat=array('catid'=>0);
$catoptions=getCatOptions(0,$catid);
}
}
}elseif($step==4){//删除
if(submitcheck('catdeletesubmit')){
$perm=getPermByUid($_G['uid']);
if($perm<2) showmessage(lang('have_no_right'),dreferer(),array(),array('showmsg'=>true));
if(C::t('news_cat')->delete_by_catid($catid)){
showmessage('do_success',dreferer(),array('catid'=>$catid),array('showmsg'=>true));
}else{
showmessage(lang('delete_failure'),dreferer(),array(),array('showmsg'=>true));
}
}else{
$cat=C::t('news_cat')->fetch($catid);
}
}
}elseif($do=='catmove'){
$catid=intval($_GET['catid']);
$up=intval($_GET['up']);
$perm=getPermByUid($_G['uid']);
if($perm<2) exit(json_encode(array('error'=>lang('have_no_right'))));
C::t('news_cat')->catmove_by_catid($catid,$up);
exit(json_encode(array('msg'=>'success','catid'=>$catid,'up'=>$up)));
}
include template('news_menu');
?>

View File

@@ -1,73 +0,0 @@
dcd24ec7b4c67100d26fd4cf91f70e94 *class/table/table_news.php
1047b09008286aabeeaaf4d2fb26fabb *class/table/table_news_cat.php
a8fbe6166bf2a49144f6a5194214979c *class/table/table_news_pic.php
b5f48c9052a95154e1c46ce4cdb44dec *class/table/table_news_setting.php
d6dbf2eab10db38c153cb3222042dc0e *class/table/table_news_viewer.php
64570944f8da2557943c3f17624384cb *config/config.php
5f3769b876c7f0dedea0cf3f8009775c *function/function_news.php
f3a549ec0ece961d25a0c93fbb4bcd22 *function/function_wx.php
1925be5a63d95c0fed4da4d284b1bd4a *images/0.jpg
a35efffbc8ffb84994c399cac01fb592 *images/addUser.png
e4321814873d2c9716af82c1c8d60dc7 *images/c.png
9dfdf213dd78cba0fed2b9b6e8eb2e47 *images/create.png
103b886b7ec68915e5b5a0daac7f75ee *images/datepicker.css
78e0ad21e05de35d386b7a917ca5721c *images/hot_1.gif
bd5556691aa1348524bea43625c7a834 *images/hot_2.gif
bb7dd949e393e6df60ece0a5a77cc0d4 *images/hot_3.gif
8f42245dc8a051c9c426527d73e85b4f *images/icons.png
9a6b21493ccd51465b69b7335183c6ee *images/icons_ZG-QuanXian.png
38d1a8e23d1bc2ab3846822af9e57f4b *images/icon_main.png
50c5e3e79b276c92df6cc52caeb464f0 *images/loading.gif
6ed017032dc6a304c5ae1252171aeca0 *images/news.css
5a8ca151fd7a1287a91a8adfb237be42 *images/no_list.png
5191e9ce394d568e947783b462e51370 *images/pin.gif
d0f9d0897af71896e9677444de8f9059 *images/pin_1.gif
859d28ebc4b631a629243002ee6be48b *images/pin_2.gif
ac0d312e8b452c49e1846dc2c72b3a9d *images/pin_3.gif
ce4ffcea51e07af9492b95ca24c55885 *images/pin_4.gif
2b81f9eb3509b34a81af24383e1bb7d3 *images/popbox.css
db49c8de4f267eede40a9a8843efcdec *images/themes/default/32px.png
dcc40378fa4081a8521e9685a67c4e9a *images/themes/default/40px.png
3a9e331936bca971087db8cf7e71beab *images/themes/default/organization.png
b66c481771c3da042b6119ef956be56a *images/themes/default/style.css
38587716062199cc1113c656e513fc82 *images/themes/default/style.min.css
9ed4669f524bec38319be63a2ee4ba26 *images/themes/default/throbber.gif
e4ed91ad5de8eebcfbcb0e94d4dac420 *images/themes/default/user.png
7df41e0ded9b1ab1cfd0333fc71c645c *language/zh-cn/lang.php
7e6274a1780df6ddeeb2a88b8bbadb2a *scripts/jquery-ui.js
5849f3ff1537c3f9541bc7ad6e488ba0 *scripts/jquery.dragsort.js
ee254ae59bce22c259a41784322a456b *scripts/jquery.popbox.js
4f523e957d958b8851cd9a05938fda34 *scripts/news.js
cd6dfa114ae0000075c09bb6a0901533 *scripts/selorg.js
f04fc29d8ac395314376d5fef98b6ba7 *template/header_left.htm
b24585a0a8209f62686a280834afcc24 *template/header_search.htm
347c29c912a83c9036dd410497e6a67a *template/manage_left.htm
0786a0279310fc4cf8d5f2489221a227 *template/news_ajax.htm
a9fd79c1c09db4660c71c9054c08f4c6 *template/news_edit.htm
52b781652331c5f19aa743d7e3de004f *template/news_list.htm
55b6c82e8b050e5ca81c716c4ce8004e *template/news_menu.htm
b33fd9716d585d68688ebf12ac0b3283 *template/news_setting.htm
d41d8cd98f00b204e9800998ecf8427e *template/news_top.htm
bf18e42191b9d1ce79eae282cf03acbe *template/news_view.htm
2303eef061c8e6a1d08ae45d05826807 *template/news_view_top.htm
6261e830121ae8ab9b3992530e2556ae *template/setting_basic.htm
ad9c720a211320f5d4db6edf026935a2 *template/setting_block.htm
2d81baa2a05d56505e99d165a858d42f *template/setting_left.htm
59a3bcf25bf24394b28046cf903e779b *template/setting_utree.htm
05c1ed1fbf438991d46e34bf68530d4f *template/uninstall_confirm.htm
3499fa96e3bb706816976c3166e2d789 *template/user_select_list.htm
49299b4ce282c7ea465676e6448baf1b *./ajax.php
97e458f11eac9abfb67c7a298a6a42b9 *./dzz_app_news.xml
e2b5ef06a41585f11517acfd52e0157c *./edit.php
c8a141e2527dab16eb9502a528d861d1 *./enable.php
dd34904b39c581c27882ef01be4e419d *./index.php
7ac76ebc97e5fb2a59a4e26abc418c56 *./install.php
3e547f4a0b98dd0c4db317ca8b4f8742 *./menu.php
2ddb91438ca6f970e74acf25508b925f *./notice.php
4fa52da0788a3f195a0c793a17473b89 *./setting.php
653b81f4659567d5961e744d274381b3 *./uninstall.php
400a63a186d1360a250167f270385667 *./uninstall_real.php
c8a141e2527dab16eb9502a528d861d1 *./upgrade.php
a67bc9db7b43f39d0bc6b27daca68fd3 *./view.php
f50afc008f45c97b3bd6d4aab21ef52d *./wxreply.php
499cd8af26384c67082a78cf263d97c3 *cache/cache_setting.php

View File

@@ -1,84 +0,0 @@
<?php
/*
* 此应用的通知接口
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
include libfile('function/organization');
include libfile('function/news');
$appid=intval($_GET['appid']);
$uid=intval($_G['uid']);
$perm=getPermByUid($_G['uid']);
$data=array();
$data['timeout']=60*60;//一小时查询一次;
//获取应用的提醒数
$lasttime=intval(DB::result_first("select lasttime from ".DB::table('app_user')." where uid='{$uid}' and appid='{$appid}'"));
//查询
$param=array('news');
$sql="dateline>%d and status<2 and authorid!=%d";
$param[]=$lasttime;
$param[]=$_G['uid'];
$orderby="ORDER BY dateline DESC";
if($perm<2){
if($_G['uid']<1){//游客时
$sql=" and orgids='' and uids=''";
}else{
//阅读范围查询语句
$sql.=" and (";
$sql_gid=array("orgids=''");
$orgarr=getDepartmentByUid($_G['uid']); //获取当前用户所在的部门数组
foreach($orgarr as $value){
foreach($value as $value1){
$sql_gid[]="FIND_IN_SET(%d,orgids)";
$param[]=$value1['orgid'];
}
}
$sql.="(".implode(' OR ',$sql_gid).") and ( uids='' OR FIND_IN_SET(%d,uids))";
$sql.=")";
$param[]=$_G['uid'];
}
}
$data['sum']=DB::result_first("select count(*) from %t where $sql",$param);
if($data['sum']){//获取最新信息列表;
$list=DB::fetch_all("select newid,subject,authorid,author from %t where $sql $orderby limit 10 ",$param);
}
if($list){
$html=' <div class="panel panel-success" style="margin:0;width:300px;">';
$html.=' <div class="panel-heading" style="border-radius:0">';
$html.=' <h3 class="panel-title">';
$html.=lang('new_news');
$html.=' <button type="button" class="close" onclick="jQuery(\'#notice\').hide();"><span aria-hidden="true">×</span></button>';
$html.=' </h3>';
$html.=' </div>';
$html.=' <div class="panel-body" style="padding:0;max-height:350px;overflow-x:hidden;overflow-y:auto">';
$html.=' <table class="table" style="margin:0">';
foreach($list as $value){
$html.= '<tr><td><a href="'.DZZSCRIPT.'?mod=news&op=view&newid='.$value['newid'].'" onclick="OpenApp(\''.$appid.'\',this.href);jQuery(this).closest(\'tr\').remove();return false" style="font-size:14px;line-height:30px;">'.$value['subject'].'</a><small style="color:#999"> by '.$value['author'].'</small></td></tr>';
}
$html.=' </table>';
$html.=' </div>';
$html.='</div>';
}
if($html){
$data['notice']=array('closetime'=>60,'html'=>rawurlencode($html)); //关闭时间1分钟
}else{
$data['notice']='';
}
echo "noticeCallback(".json_encode($data).")";
exit();
?>

View File

@@ -1,7 +0,0 @@
document.addEventListener("DOMContentLoaded",()=>{
if($(".joe_detail__article-video").length>0){
const e=$(".joe_detail__article-video .play iframe").attr("data-player");$(".joe_detail__article-video .episodes .item").on("click",function(){
$(this).addClass("active").siblings().removeClass("active");const t=$(this).attr("data-src");$(".joe_detail__article-video .play iframe").attr({src:e+t})
}),$(".joe_detail__article-video .episodes .item").first().click()
}
});

File diff suppressed because it is too large Load Diff

View File

@@ -1,178 +0,0 @@
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
(function($){
$.fn.dragsort = function(options,recall) {
var opt={
'scrollContainer':$('.bs-main-container'), //滚动层
'contentContainer':$('.main-content'),
'hoder_div_css':'position:relative;background:#f7f7f7;border:1px solid #e1e1e1',
'width_correct':0,
'height_correct':0,
}
options=$.extend(opt,options);
//console.log(options.scrollContainer);
var container = this;
var dx,dy,_this,wid,mousedownTimer,scrollHeight,scrollTop=0,scrollLeft=0,clientHeight;
var top,left,oldx,oldy,w,h,w2,h2,_this;
var bs=options.scrollContainer.offset();
var p0,p;
var clientWidth =Math.max(document.documentElement.clientWidth, document.body.offsetWidth);
if(jQuery('#_blank').length){
var _blank=jQuery('#_blank');
}else{
var _blank=jQuery('<div id="_blank" class="nokpdrager" unselectable="on" onselectstart="return event.srcElement.type== \'text\';" style="display:none; url(dzz/images/b.gif); z-index:10000;width:100%;height:100%;margin:0;padding:0; right: 0px; bottom: 0px;position: absolute; top:0px; left: 0px;"></div>').appendTo(options.contentContainer);
}
//$(container).children().addTouch();
$(container).children().off("mousedown.subdrager").on('mousedown.subdrager',function(e) {
if($(this).hasClass('nodrager') || e.which != 1 || $(e.target).is("input, textarea") || $(e.target).closest('.nodrager').length || window.kp_only) return; // 排除非左击和表单元素
jQuery('input').trigger('blur');
var self=this;
try{ if(e.preventDefault) e.preventDefault();
else{
e.returnvalue=false
}
}catch(e){};
_this = $(this);
oldx=e.clientX;
oldy=e.clientY;
p0=_this.offset();
p = _this.position();
left = p.left;
top = p.top-options.scrollContainer.scrollTop();
dx=e.clientX-p0.left;
dy=e.clientY-(p0.top);
// 绑定mousemove事件
$(document).on('mousemove.subdrager',function(e) {
e=e?e:window.event;
try{
if(e.preventDefault) e.preventDefault();
else{
e.returnValue=false;
}
}catch(e){};
var xx=e.clientX;
var yy=e.clientY;
if(!window.kp_only && (oldx!=xx || oldy!=yy)){//不再原位置,表示拖动开始;
PreMove();
}
if(!window.kp_only) return;
if(yy-dy<=bs.top){
scrollTop=scrollTop+((yy-dy-bs.top)>-50?-50:(yy-dy-bs.top));
if(scrollTop<0) scrollTop=0;
options.scrollContainer.scrollTop(scrollTop);
}else if((yy+(_this.height()-dy))>=clientHeight+bs.top ){
scrollTop=scrollTop+((yy+(_this.height()-dy)-clientHeight-bs.top)<50?50:(yy+(_this.height()-dy)-clientHeight-bs.top));
if(scrollTop>scrollHeight-clientHeight) scrollTop=scrollHeight-clientHeight;
options.scrollContainer.scrollTop(scrollTop);
}
var t = yy -dy-(p0.top-p.top)+scrollTop;
// 移动选中块
//var l = left + e.clientX - x;
//var t = top + e.clientY - y;
_this.css({"top":t});
// 选中块的中心坐标
var mt = yy -dy+h2;
// 遍历所有块的坐标
$(wid).parent().children().not(_this).not(wid).not('.nodrager').each(function(i) {
var obj = $(this);
var p = obj.offset();
var a3 = p.top;
var a4 = p.top + obj.height();
var h2= p.top + obj.height()/2;
if(a3 < mt && mt < a4 ) {
if(mt>h2) {
wid.insertAfter(this);
}else{
wid.insertBefore(this);
}
//options.scrollContainer.mCustomScrollbar('update');
return;
}
});
});
return false;
});
$(container).children().off("mouseup").mouseup(function(e) {
if(!window.kp_only) {
$(document).off('mousemove.subdrager');
}
});
var PreMove=function() {
//e.preventDefault(); // 阻止选中文本
window.kp_only=true;
_blank.show();
w = _this.outerWidth(true);
h = _this.outerHeight(true);
w2 = w/2;
h2 = h/2;
clientHeight =options.scrollContainer.height();
clientWidth =Math.max(document.documentElement.clientWidth, document.body.offsetWidth);
scrollTop=options.scrollContainer.scrollTop();scrollLeft=0;
scrollHeight = options.contentContainer.outerHeight(true);//Math.max(document.documentElement.scrollHeight, document.body.scrollHeight);
scrollWidth =options.contentContainer.outerWidth(true);
try{
if(e.preventDefault) e.preventDefault();
else{
e.returnvalue=false
}
}catch(e){};
// 添加虚线框
_this.before('<div id="kp_widget_holder" style="'+options['hoder_div_css']+'"></div>');
wid = $("#kp_widget_holder");
wid.css({"height":_this.outerHeight(true)-options['height_correct'], "width":_this.outerWidth(true)-options['width_correct']});
// 保持原来的宽高
_this.css({"width": w-options['width_correct'], "height":h-options['height_correct'], "position":"absolute", opacity: 0.9, "z-index": 999, "left":left-options['width_correct'], "top":top-options['height_correct'],'border':'1px solid #e1e1e1','background':'#fbfbfb','box-shadow':'1px 1px 1px RGBA(0,0,0,0.7)'});
//,"transform":"rotate(2deg)"
// 绑定mouseup事件
$(document).on('mouseup.subdrager',function(e) {
$(document).off('mouseup.subdrager').off('mousemove.subdrager');
// 拖拽回位,并删除虚线框
var p = wid.position();
p.top+=scrollTop;
var data={}
data.subid=_this.attr('subid');
data.taskid=_this.attr('taskid');
data.prevsubid=wid.prev()?wid.prev('.todo-item').attr('subid'):0;
_this.animate({"left":p.left-parseInt(wid.css('margin-left')), "top":p.top-parseInt(wid.css('margin-top'))}, 300, function() {
_this.removeAttr("style");
wid.replaceWith(_this);
if(typeof recall=='function'){
recall(data);
}
_blank.hide();
window.kp_only = null;
});
});
};
}
})(jQuery);

View File

@@ -1,139 +0,0 @@
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
(function($){
$.fn.popbox = function(options){
var box=$('.popbox');
if(!box.length){
box=$('<div class="popbox"></div>').appendTo('body');
}
var me=$(this);
var dataurl=[];
var current=0;
var open= function(event){
if(event) event.preventDefault();
if(me.data('href')){
getdata(me.data('data-href'));
}
$('.js-popbox').removeClass('openpop');
show();
if(me.data('closest')){
me.closest(me.data('closest')).find('.dropdown-toggle').dropdown('toggle');
}
return false;
}
var show=function(){
var clientWidth=document.documentElement.clientWidth;
var clientHeight=document.documentElement.clientHeight;
if( me.data('closest')) var target=me.closest(me.data('closest'));
else var target=me;
me.addClass('openpop');
var p=target.offset();
var bw=box.outerWidth(true);
var bh=box.outerHeight(true);
var w=target.outerWidth(true);
var h=target.outerHeight(true);
var left=0,top=0;
switch(me.data('placement')){
case 'right':
left=p.left+w+2;
top=p.top+h/2-bh/2;
break;
case 'top':
top=p.top-bh-2;
left=p.left+w/2-bw/2;
break;
case 'bottom':
top=p.top+h+2;
left=p.left;
break;
case 'left':
left=p.left-bw-2;
top=p.top+h/2-bh/2;
break;
default:
left=p.left+w+2;
top=p.top+h/2-bh/2;
break;
}
//判断是否超出屏幕
if(me.data('auto-adapt')){
if(left+bw>clientWidth) left=clientWidth-bw-10;
if(top+bh>clientHeight) top=clientHeight-bh-10;
if(left<0) left=10;
if(top<0) top=10;
}
box.css({'display': 'block', 'left':left,'top':top});
$(document).off('click.popbox').on('click.popbox',function(event){
if(!$(event.target).closest('.popbox,.ui-icon,.dzzdate,.ui-corner-all','#jquery-color-picker').length){
close();
$('.openpop').removeClass('openpop');
}
});
}
var getdata=function(url){
if(!url) url=me.data('href');
url+='&t='+new Date().getTime();
current=dataurl.push(url);
$.get(DZZSCRIPT+'?mod=news&op=menu&do='+url,function(html){
box.html(html);
box.find('.js-popbox').on('click',function(){
getdata($(this).data('href'));
return false;
});
box.find('.js-popbox-prev').on('click',function(){
goto_prev()
return false;
});
box.find('.close,.cancel').on('click', function(event){
event.preventDefault();
close();
});
show();
});
}
var goto_prev=function(){
if(current>1){
current-=1;
}else{
current=0;
}
url=dataurl[current-1];
dataurl.splice(current-1,dataurl.length-current+1);
getdata(url);
}
var close=function(){
current=0;
dataurl=[];
box.data('prevel',null);
box.fadeOut("fast",function(){
box.html('<div class="loadding"></div>');
});
me.removeClass('openpop');
$(document).off('click.popbox');
}
if(options=='update'){
show();
}else if(options=='open'){
open();
}else if(options=='close'){
close();
}else if(options=='getdata'){
getdata();
}else{
$(this).off('click.popbox').on('click.popbox', open);
}
}
})(jQuery);

View File

@@ -1,126 +0,0 @@
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
function cat_move(catid,up){
catid=parseInt(catid);
jQuery.getJSON(DZZSCRIPT+'?mod=news&op=menu&do=catmove&catid='+catid+'&up='+up,function(json){
if(json.error) showmessage(json.error,3000,1);
else{
var catids=[];
jQuery('#cat_'+catid).parent().children().each(function(){
catids.push(jQuery(this).data('catid'));
});
var cur=jQuery.inArray(catid,catids);
if(up>0 && (cur-1)>-1){
jQuery('#cat_'+catid).insertBefore('#cat_'+(catids[cur-1]));
}
if(up<1 && (cur+1)<catids.length){
jQuery('#cat_'+catid).insertAfter('#cat_'+(catids[cur+1]));
}
}
});
}
function sendModMessage(btn,newid){
jQuery(btn).button('loading');
jQuery.getJSON(DZZSCRIPT+'?mod=news&op=ajax&do=sendModNotice&newid='+newid,function(json){
jQuery(btn).html(json.msg);
});
}
function news_click(newid){
jQuery.post(DZZSCRIPT+'?mod=news&op=ajax&do=updateview&newid='+newid);
return true;
}
function news_delete(obj){
var newid=jQuery(obj).attr('newid');
// if(confirm('确定要删除此信息(此操作不可恢复)?')){
// alert(111);
jQuery.getJSON(DZZSCRIPT+'?mod=news&op=ajax&do=news_delete&newid='+newid,function(json){
if(json.msg && json.msg=='success'){
jQuery(obj).closest('tr').remove();
}else{
alert(json.error);
}
});
// }
// return false;
}
function news_type_switch(type){
jQuery('#news_type_0,#news_type_1,#news_type_2').not('#news_type_'+type).removeClass('active');
jQuery('#news_type_'+type).addClass('active');
jQuery('#type').val(type);
}
var errorShowTimer=null;
function showError(msg){
if(errorShowTimer) window.clearTimeout(errorShowTimer);
jQuery('#error_msg').html(msg);
window.setTimeout(function(){
jQuery('#error_msg').html('');
},3000);
}
function uploadfrom_desktop(){
top.OpenFile('open','打开文件',{image:['图像(*.jpg,*.jpeg,*.png,*.gif)',['IMAGE','JPG','JPEG','PNG','GIF'],'selected']},{bz:'all',multiple:true},function(data){//只打开本地盘
var datas=[];
if(data.params.multiple){
datas=data.icodata
}else{
datas=[data.icodata];
}
var html='';
for(var i in datas){
if(datas[i].aid>0){
var img=DZZSCRIPT+'?mod=io&op=thumbnail&width=240&height=160&path='+(datas[i].apath?datas[i].apath:datas[i].dpath);
html+='<div class="image-item">';
html+=' <div style="position:absolute;right:15px;top:15px;" onclick="jQuery(this).parent().remove();"><i class="ibtn glyphicon glyphicon-trash"></i></div>';
html+=' <div class="thumbnail">';
html+=' <img src="'+img+'">';
html+=' <div class="caption text-center">';
html+=' <input type="text" class="form-control input-imag-title" name="picnew[title][]" value="'+datas[i].name+'" /><input type="hidden" name="picnew[aid][]" value="'+datas[i].aid+'" />';
html+=' </div>';
html+=' </div>';
html+='</div>';
}
}
if(html!=''){
if(jQuery('#image_container .image-body .image-item').length>0) jQuery('#image_container .image-body .image-item:first').before(html);
else{
jQuery('#image_container .image-body').append(html);
}
}
});
}
Date.prototype.format = function(format) {
var date = {
"M+": this.getMonth() + 1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds(),
"q+": Math.floor((this.getMonth() + 3) / 3),
"S+": this.getMilliseconds()
};
if (/(y+)/i.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
}
for (var k in date) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1
? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
}
}
return format;
}

View File

@@ -1,55 +0,0 @@
var selorg={};
//添加
selorg.add=function(ctrlid,vals){
//jQuery('#'+ctrlid).empty();
for(var i in vals){
if(jQuery('#'+ctrlid+'_sl_'+vals[i].orgid).length) continue;
if(vals[i].orgid.indexOf('uid_')===0){
uid=vals[i].orgid.replace('uid_','');
var headimg = '';
if(vals[i].icon){
headimg = '<img src="'+vals[i].icon+'" class="img-rounded select-mech">';
}
var html='<li id="'+ctrlid+'_sl_'+vals[i].orgid+'" class="right-classa-depart" data-val="'+vals[i].orgid+'">' +
headimg+vals[i].text+' <i class="ti-close"></i></li>';
}else{
var html='';
//var html='<li id="'+ctrlid+'_sl_'+vals[i].orgid+'" class="right-classa-depart" data-val="'+vals[i].orgid+'"><img src="'+vals[i].icon+'" class="img-rounded select-mech">'+vals[i].text+' <i class="ti-close"></i></li>';
}
jQuery('#'+ctrlid).append(html);
}
selorg.set(ctrlid);
}
//删除
selorg.del=function(ctrlid,vals){
for(var i in vals){
if(jQuery('#'+ctrlid+'_sl_'+vals[i]).find('i.ti-close').length > 0){
jQuery('#'+ctrlid+'_sl_'+vals[i]).remove();
}
}
selorg.set(ctrlid);
}
//设置输入框的值
selorg.set=function(ctrlid){
var val=[];
jQuery('#'+ctrlid+' li').each(function() {
val.push(jQuery(this).data('val'));
});
jQuery('#sel_'+ctrlid).val(val.join(','));
}
//y移除并且取消机构树中的选择
selorg.remove=function(ctrlid,obj){
var unsel_val=jQuery(obj).parent().data('val');
jQuery(obj).parent().remove();
selorg.set(ctrlid)
try{window.frames[ctrlid+'_iframe'].selectorg_remove(unsel_val);}catch(e){}
}
selorg.search=function(ctrlid,obj){
try{window.frames[ctrlid+'_iframe'].selectorg_search(obj.value);}catch(e){}
}

View File

@@ -1,265 +0,0 @@
<?php
/* @authorcode codestrings
* @copyright Leyun internet Technology(Shanghai)Co.,Ltd
* @license http://www.dzzoffice.com/licenses/license.txt
* @package DzzOffice
* @link http://www.dzzoffice.com
* @author zyx(zyx@dzz.cc)
*/
if(!defined('IN_DZZ')) {
exit('Access Denied');
}
include libfile('function/cache');
include libfile('function/news');
Hook::listen('adminlogin');
$navtitle=lang('informations').' - '.lang('appname');
$navlast=lang('base_setting');
$operation=trim($_GET['operation']);
$muids=array();
//error_reporting(E_ALL);
//判断用户是否有管理员权限
$perm=getPermByUid($_G['uid']);
if($perm<2){
showmessage(lang('have_no_right'),dreferer());
}
if(!$_G['cache']['news:setting']) loadcache('news:setting');
$setting=$_G['cache']['news:setting'];
$do=empty($_GET['do'])?'basic':trim($_GET['do']);
//$catlist=getCatList(0,0);
$cat_list = DB::fetch_all("select * from %t where `status`='1' ORDER BY disp desc",array('news_cat'));//C::tp_t('news_cat')->where(array("status"=>1))->order("disp asc")->select();
//print_r($cat_list);
if($do=='block'){
$navtitle=lang('model_setting').' - '.lang('appname');
}
if($do=='basic'){
include libfile('function/organization');
$navtitle=lang('base_setting').' - '.lang('appname');
if($operation=='selectuser'){
$type=intval($_GET['type']) ? 1 : 0;
$muids=$type?$setting['moderators']:$setting['posters'];
if(submitcheck('selectsubmit')){
$uids = array();
foreach (explode(',', $_GET['uids']) as $v) {
$uids[] = str_replace('uid_', '', $v);
}
if($uids){
// $muids=array_unique(array_merge($muids,$uids));//纯增加
$muids = array_unique($uids);//修改(会删除)
C::t('news_setting')->update($type?'moderators':'posters',implode(',',$muids));
if(!$type) C::t('news_setting')->update('allownew',1);
updatecache('news:setting');
}
$users = C::t('user')->fetch_all($muids);
foreach ($users as $key => $value) {
$users[$key]['avatar'] = avatar_block($value['uid']);
}
include template('user_select_list');
exit();
//exit(json_encode(array('success' => 1, 'type' => $type, 'basic' => 'basic', 'user' => $user)));
}
}
elseif($operation=='deleteModerator'){
$uid=intval($_GET['uid']);
$type=intval($_GET['type']);
$muids=$type?$setting['moderators']:$setting['posters'];
foreach($muids as $key=>$value){
if($value==$uid) unset($muids[$key]);
}
if(C::t('news_setting')->update($type?'moderators':'posters',implode(',',$muids))){
updatecache('news:setting');
}
$users = C::t('user')->fetch_all($muids);
foreach ($users as $key => $value) {
$users[$key]['avatar'] = avatar_block($value['uid']);
}
include template('user_select_list');
exit();
}else{
if(submitcheck('settingsubmit')){
$setarr=$_GET['settingnew'];
$setarr['allownewnews']=intval($setarr['allownewnews']);
$setarr['newsmod']=intval($_GET['newsmod']);
$setarr['lbp']=$_GET['lbp'];
$moderators=$_GET['user_1'];
if($moderators) $setarr['moderators']=implode(',',$moderators);
if($setarr['allownewnews']){
$posters=$_GET['user_0'];
if($posters) $setarr['posters']=implode(',',$posters);
}
C::t('news_setting')->update_batch($setarr);
updatecache('news:setting');
showmessage('do_success',DZZSCRIPT.'?mod=news&op=setting',array(),array('alert'=>'right'));
}else{
$setting['allownewnews']=intval($setting['allownewnews']);
$setting['newsmod']=intval($setting['newsmod']);
$setarr['lbp']=$_GET['lbp'];
$moderators=C::t('user')->fetch_all($setting['moderators']);
$posters=C::t('user')->fetch_all($setting['posters']);
}
}
}elseif($do=='wxapp'){
$appid=C::t('app_market')->fetch_appid_by_mod('{dzzscript}?mod=news',1);
$baseurl_info=DZZSCRIPT.'?mod=news&op=setting&do=wxapp';
$baseurl_menu=DZZSCRIPT.'?mod=news&op=setting&do=wxapp&operation=menu';
$baseurl_ajax=DZZSCRIPT.'?mod=news&op=setting&do=wxapp&operation=ajax';
if(empty($operation)){
if(submitcheck('settingsubmit')){
$settingnew=array();
$settingnew['agentid']=intval($_GET['agentid']);
$settingnew['appstatus']=intval($_GET['appstatus']);
if($appid) C::t('wx_app')->update($appid,array('agentid'=>$settingnew['agentid'],'status'=>$settingnew['appstatus']));
C::t('news_setting')->update_batch($settingnew);
updatecache('news:setting');
showmessage('do_success',dreferer(),array(),array('alert'=>'right'));
}else{
$navtitle=lang('wechat_apply_settings');
$navlast=lang('wx_setting');
$settingnew=array();
if(empty($setting['token'])) $settingnew['token']=$setting['token']=random(8);
if(empty($setting['encodingaeskey'])) $settingnew['encodingaeskey']=$setting['encodingaeskey']=random(43);
if($settingnew){
C::t('news_setting')->update_batch($settingnew);
updatecache('news:setting');
}
$wxapp=array('appid'=>$appid,
'name'=>lang('information_center'),
'desc'=>lang('enterprise_news_information_application'),
'icon'=>'dzz/news/images/0.jpg',
'agentid'=> $setting['agentid'],
'token'=>$setting['token'],
'encodingaeskey'=>$setting['encodingaeskey'],
'host'=>$_SERVER['HTTP_HOST'],
'callback'=>$_G['siteurl'].'index.php?mod=news&op=wxreply',
'otherpic'=>'dzz/news/images/c.png',
'status'=>$setting['appstatus'], //应用状态
'report_msg'=>1, //用户消息上报
'notify'=>0, //用户状态变更通知
'report_location'=>0, //上报用户地理位置
);
C::t('wx_app')->insert($wxapp,1,1);
}
}elseif($operation=='menu'){
$menu=$setting['menu']?unserialize($setting['menu']):'';
}elseif($operation=='ajax'){
if($_GET['action']=='setEventkey'){
//支持的菜单事件
$menu_select=array('click'=>array('latest'=>lang('new_news')),
'link'=>array(
$_G['siteurl'].DZZSCRIPT.'?mod=news&status=6'=>lang('my_released'),
$_G['siteurl'].DZZSCRIPT.'?mod=news&status=2'=>lang('check_pending_is'),
$_G['siteurl'].DZZSCRIPT.'?mod=news&status=3'=>lang('my_draft'),
$_G['siteurl'].DZZSCRIPT.'?mod=news&status=4'=>lang('my_unread')
)
);
foreach(DB::fetch_all("select * from %t where pid=0 order by disp",array('news_cat')) as $value){
$menu_select['link'][$_G['siteurl'].DZZSCRIPT.'?mod=news&catid='.$value['catid']]=$value['name'];
}
$json_menu_select=json_encode($menu_select);
$type=trim($_GET['type']);
$typetitle=array('click'=>lang('setup_menu'),'link'=>lang('setup_menu_href'));
}elseif($_GET['action']=='menu_save'){ //菜单保存
C::t('news_setting')->update('menu',array('button'=>$_GET['menu']));
if($appid) C::t('wx_app')->update($appid,array('menu'=>serialize(array('button'=>$_GET['menu']))));
updatecache('news:setting');
exit(json_encode(array('msg'=>'success')));
}elseif($_GET['action']=='menu_publish'){//发布到微信
$data=array('button'=>$_GET['menu']);
C::t('news_setting')->update('menu',$data);
if($appid) C::t('wx_app')->update($appid,array('menu'=>serialize($data)));
updatecache('news:setting');
//发布菜单到微信
if(getglobal('setting/CorpID') && getglobal('setting/CorpSecret') && $setting['agentid']){
$wx=new qyWechat(array('appid'=>getglobal('setting/CorpID'),'appsecret'=>getglobal('setting/CorpSecret')));
//处理菜单数据所有本站链接添加oauth2地址
foreach($data['button'] as $key=>$value){
if($value['url'] && strpos($value['url'],$_G['siteurl'])===0){
$data['button'][$key]['url']=$wx->getOauthRedirect(getglobal('siteurl').'index.php?mod=system&op=wxredirect&url='.dzzencode($value['url']));
}elseif($value['sub_button']){
foreach($value['sub_button'] as $key1=>$value1){
if($value1['url'] && strpos($value1['url'],$_G['siteurl'])===0){
$data['button'][$key]['sub_button'][$key1]['url']=$wx->getOauthRedirect(getglobal('siteurl').'index.php?mod=system&op=wxredirect&url='.dzzencode($value1['url']));
}
}
}
}
if($wx->createMenu($data,$setting['agentid'])){
exit(json_encode(array('msg'=>'success')));
}else{
exit(json_encode(array('error'=>lang('tape_release_failure').',errCode:'.$wx->errCode.',errMsg:'.$wx->errMsg)));
}
}else{
exit(json_encode(array('error'=>lang('tape_release_failure_agentid'))));
}
}elseif($_GET['action']=='menu_default'){//恢复默认
$subclass=array();
foreach(DB::fetch_all("select * from %t where pid=0 order by disp limit 5",array('news_cat')) as $value){
$subclass[]=array(
'type'=>'view',
'name'=>$value['name'],
'url'=>$_G['siteurl'].DZZSCRIPT.'?mod=news&catid='.$value['catid']
);
}
$menu_default=array('button'=>array(
array(
'type'=>'click',
'name'=>lang('new_news'),
'key'=>'latest'
),
array(
'name'=>lang('news_type'),
'sub_button'=>$subclass
),
array(
'name'=>lang('my_news'),
'sub_button'=>array(
array(
'type'=>'view',
'name'=>lang('my_released'),
'url'=>$_G['siteurl'].DZZSCRIPT.'?mod=news&status=6'
),
array(
'type'=>'view',
'name'=>lang('check_pending'),
'url'=>$_G['siteurl'].DZZSCRIPT.'?mod=news&status=2'
),
array(
'type'=>'view',
'name'=>lang('unread_messages'),
'url'=>$_G['siteurl'].DZZSCRIPT.'?mod=news&status=4'
),
array(
'type'=>'view',
'name'=>lang('draft'),
'url'=>$_G['siteurl'].DZZSCRIPT.'?mod=news&status=3'
),
/*array(
'type'=>'view',
'name'=>'发布信息',
'url'=>$_G['siteurl'].DZZSCRIPT.'?mod=news&op=edit'
)*/
)
)
)
);
C::t('news_setting')->update('menu',$menu_default);
updatecache('news:setting');
exit('success');
}
include template('common/wx_ajax');
exit();
}
}
include template('news_setting');
?>

View File

@@ -1,31 +0,0 @@
<ul class="nav navbar-nav navbar-nav-left">
<!--{if $_GET[op]=='view'}-->
<li>
<a href="{MOD_URL}" class="navbar-nav-left-return navbar-nav-left-appname" style="padding:8px;">
<div class="gb_fc" style="padding:7px;"><i class="dzz dzz-chevron-left" style="width:34px;height:34px;display:block;"></i></div>
</a>
</li>
<li>
<a href="javascript:;" onclick="window.history.go(-1);" class="navbar-nav-left-return navbar-nav-left-appname">{lang return}</a>
</li>
<!--{elseif $_GET[op]=='setting'}-->
<li>
<a href="{MOD_URL}" class="navbar-nav-left-return navbar-nav-left-appname" style="padding:8px;">
<!-- <i class="dzz dzz-chevron-left"></i> -->
<div class="gb_fc" style="padding:7px;"><i class="dzz dzz-chevron-left" style="width:34px;height:34px;display:block;"></i></div>
</a>
</li>
<li>
<a href="{MOD_URL}" class="navbar-nav-left-return navbar-nav-left-appname">{lang manage_setting}</a>
</li>
<!--{else}-->
<li>
<a href="javascript:;" class="leftTopmenu" onclick="_header.leftTopmenu(this)" style="padding:8px;">
<div class="gb_fc"><span class="dzz dzz-menu" style="width:24px;height:24px;display:block;"></span></div>
</a>
</li>
<li>
<a href="{MOD_URL}">{lang appname}<!--{if $_G['uid']}--><!--{else}-->(游客版)<!--{/if}--></a>
</li>
<!--{/if}-->
</ul>

View File

@@ -1,35 +0,0 @@
<!--{if $_GET[op]!='view' && $_GET[op]!='edit' && $_GET[op]!='setting'}-->
<div class="input-search">
<form name="search" action="{BASESCRIPT}" method="get" class="search_top">
<input type="hidden" name="mod" value="{MOD_NAME}" />
<input type="hidden" name="op" value="{OP_NAME}" />
<input type="hidden" name="do" value="" />
<i class="input-search-icon glyphicon glyphicon-search" aria-hidden="true" onclick="this.form.submit()"></i>
<input id="searchval" class="form-control search form-search" name="keyword" placeholder="{lang news_title}" type="text" value="$keyword" placeholder=""/>
<span aria-hidden="true" id="emptysearchcondition" class="header-closebutton">×</span>
</form>
</div>
<script type="text/javascript">
jQuery('#searchval').focus(function (e) {//头部搜索框变颜色
jQuery(this).closest('.input-search').addClass('focus');
if(this.value!='') jQuery('#emptysearchcondition').show();
});
jQuery('#searchval').blur(function (e) {//失去焦点时
jQuery(this).closest('.input-search').removeClass('focus');
if(this.value=='') jQuery('#emptysearchcondition').hide();
});
jQuery('#searchval').keyup(function (e) {//失去焦点时
if(this.value!='') jQuery('#emptysearchcondition').show();
});
jQuery('#emptysearchcondition').on('click',function(){
jQuery('#searchval').val('');
jQuery('#searchval').closest('form').submit();
jQuery('#emptysearchcondition').hide();
return false;
});
</script>
<!--{/if}-->

View File

@@ -1,5 +0,0 @@
<ul class="nav-stacked">
<li<!--{if $do=='basic'}--> class="active"<!--{/if}-->> <a href="{BASESCRIPT}?mod=news&op=setting&do=basic" ><i class="dzz dzz-settings" style="margin-right: 14px;font-size: 22px;vertical-align: -4px;"></i>{lang base_setting}</a></li>
<li<!--{if $do=='block'}--> class="active"<!--{/if}-->> <a href="{BASESCRIPT}?mod=news&op=setting&do=block" ><i class="dzz dzz-view-module" style="margin-right: 14px;font-size: 22px;vertical-align: -4px;"></i>{lang model_setting}</a></li>
</ul>

Some files were not shown because too many files have changed in this diff Show More