Skip to content

Commit

Permalink
更新至V2.3.0版本,请注意本次升级需执行升级程序! (#264)
Browse files Browse the repository at this point in the history
* 更新至V2.3.0版本,请注意本次升级需执行升级程序!

* Update UPDATE.md
  • Loading branch information
xiaohu2002 authored Oct 28, 2024
1 parent 3d2009d commit 28c3f32
Show file tree
Hide file tree
Showing 237 changed files with 67,934 additions and 32,956 deletions.
55 changes: 48 additions & 7 deletions UPDATE.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,62 @@


### DzzOffice的下载及技术支持

1. 官方网站: http://www.dzzoffice.com
2. github地址:https://github.com/zyx0814/dzzoffice
3. 码云地址: https://gitee.com/zyx0814/dzzoffice

### DzzOffice2.02主要更新内容
### DzzOffice2.3.0主要更新内容

**一、功能优化**

1. 优化站点关闭时登录页不能显示站点logo的问题,提升用户体验。

2. 系统工具新增系统概览功能,方便管理员快速了解系统整体状态。

3. 系统工具增加文件权限检查功能,确保文件安全。

4. 系统日志增加记录设备信息和用户UID功能,增强日志记录的详细性。

5. 优化系统日志搜索UI,提高搜索效率。

6. 个人中心增加最近在线时间、添加时间、邮箱、登录记录信息显示,丰富用户个人信息。

7. 个人中心添加个人名片页面入口,方便用户展示个人名片。

8. 文件管理增加更多信息查看,包括直链地址、文件引用数、是否在回收站信息等,提升文件管理便捷性。

9. 通知中心增加来源地址,并优化UI,提升通知信息的可读性。

10. 编辑器升级为UEditorPlus,提升编辑功能和使用体验。

**二、问题修复**

1. 修复关闭验证码的情况下注册用户提示验证码错误的问题,确保注册流程顺畅。

2. 修复访问用户资料管理时左侧栏没有显示当前位置的问题,提升用户导航体验。

3. 修复当用户资料字段设置在注册页显示时不生效的问题,确保用户资料字段正确显示。

4. 修复分享页面文件缺失的问题,保障文件分享功能的正常使用。

5. 修复绑定邮箱翻译错误的问题,确保翻译准确性。

6. 其他已知bug修复,安全问题修复。

**三、系统适配与升级**

1. IP地址适配IPV6环境,提升系统的网络兼容性。

2. 适配PHP7.4,确保系统能够在最新的PHP环境下稳定运行。

1. 缓存优化,开启内存huanc(如:memcached等)会显著提高效率;
**四、新增功能**

2. 应用市场应用名称旁显示版本;
1. 评论组件增加IP、设备信息记录,增强评论管理的安全性。

3. 修复评论组件,有些情况下获取不到评论列表的bug;
2. 支持使用系统手机号登录,提升用户登录的便捷性。

4. 其他功能完善、及已知问题的修复;
3. 机构用户用户信息处添加注册时间、注册IP、添加时间,方便管理员管理用户信息。

4. 增加系统出现错误时通知管理员的功能,确保系统问题能够及时得到处理。

### DzzOffice在线更新方法

Expand Down
5 changes: 1 addition & 4 deletions admin.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,4 @@
define('CURSCRIPT', 'admin');
define('APPTYPEID', 0);

require './core/adminstart.php';



require './core/adminstart.php';
19 changes: 5 additions & 14 deletions admin/appmarket/install_app_ajax.php
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,6 @@
}
}
//end处理检查是否已有该目录

if( $appinfo || $isinstall){
$return["status"]=0;
if($appinfo){
Expand Down Expand Up @@ -164,7 +163,6 @@
$return["status"]=0;
$return["msg"]=lang('upgrade_close_site') ;
exit(json_encode($return));
exit();
}

$step = intval($_REQUEST['step']);
Expand Down Expand Up @@ -196,8 +194,7 @@
$return["url"]=$linkurl;
$return["msg"]="应用文件即将下载...";
$return["step"]=2;
exit(json_encode($return));
exit;
exit(json_encode($return));
}

elseif($step == 2) {
Expand Down Expand Up @@ -240,17 +237,15 @@
} else {
$return["status"]=0;
$return["msg"]= lang('app_upgrade_downloading_error', array('file' => $updatefilelist[$fileseq-1], 'upgradeurl'=>upgradeinformation_app(-3) )) ;
exit(json_encode($return));
exit;
exit(json_encode($return));
}
$msg = lang('upgrade_downloading_file', array('file' => $updatefilelist[$fileseq - 1], 'percent' =>$percent. '%' ,'upgradeurl'=>'')) ;
}
$stepover= 1;
$return["url"]=$linkurl;
$return["percent"]=intval(50*$percent/100);
$return["second"]=1;
exit(json_encode($return));
exit;
exit(json_encode($return));
}
elseif($step == 3) {
$return["percent"]=55;
Expand All @@ -273,8 +268,7 @@

$linkurl = $theurl.'&step=4';
$return["url"]=$linkurl;
exit(json_encode($return));
exit;
exit(json_encode($return));
}
elseif($step==4){
$return["percent"]=80;
Expand Down Expand Up @@ -361,8 +355,7 @@
$return["percent"]=75;
$return["second"]=1;
$return["msg"]= lang('app_upgrade_move_success', array( 'upgradeurl' => upgradeinformation_app(4)));
exit(json_encode($return));
exit();
exit(json_encode($return));
}

if($_GET['dodabase']){
Expand Down Expand Up @@ -423,7 +416,6 @@
$return["step"]=5;
$return["msg"]= lang("app_upgrade_install_will_success");
exit(json_encode($return));
exit;
}

$linkurl = ADMINSCRIPT . '?mod=appmarket&op=install_app_ajax&operation=' . $operation . '&appid=' .$appid. '&step=5';
Expand All @@ -433,7 +425,6 @@
$return["step"]=5;
$return["msg"]=lang("app_upgrade_install_will_success");
exit(json_encode($return));
exit;
}
elseif($step==5){
//判断如果是网址类型删除对应目录
Expand Down
30 changes: 9 additions & 21 deletions admin/appmarket/upgrade_app_ajax.php
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,6 @@
$return["status"]=0;
$return["msg"]= lang("app_upgrade_newversioninfo_error");
exit(json_encode($return));
exit;
}

$version =$appinfo["version"];
Expand Down Expand Up @@ -189,8 +188,7 @@
$msg .= "</script></p>";
$return["status"]=0;
$return["msg"]=lang('upgrade_close_site') ;
exit(json_encode($return));
exit();
exit(json_encode($return));
}

$step = intval($_REQUEST['step']);
Expand All @@ -209,7 +207,6 @@
$return["status"]=0;
$return["msg"]= lang( "app_upgrade_data_error" );
exit(json_encode($return));
exit;
}
$appinfo["app_path_old"]=$appinfo["app_path"];
$appinfo["identifier_old"]=$appinfo["identifier"];
Expand Down Expand Up @@ -276,8 +273,7 @@
$return["url"]=$linkurl;
$return["msg"]= lang('app_upgrade_already_downloadfile' );
$return["step"]=2;
exit(json_encode($return));
exit;
exit(json_encode($return));
}

elseif($step == 2) {
Expand Down Expand Up @@ -322,17 +318,15 @@
} else {
$return["status"]=0;
$return["msg"]= lang('app_upgrade_downloading_error', array('file' => $updatefilelist[$fileseq-1], 'upgradeurl'=>upgradeinformation_app(-3) )) ;
exit(json_encode($return));
exit;
exit(json_encode($return));
}
$msg = lang('app_upgrade_downloading_file', array('file' => $updatefilelist[$fileseq - 1], 'percent' =>$percent. '%','upgradeurl'=>'')) ;
}
$stepover= 1;
$return["url"]=$linkurl;
$return["percent"]=intval(50*$percent/100);
$return["second"]=1;
exit(json_encode($return));
exit;
exit(json_encode($return));
}
elseif($step == 3) {
$return["percent"]=55;
Expand Down Expand Up @@ -370,8 +364,7 @@

$linkurl = $theurl.'&step=4';
$return["url"]=$linkurl;
exit(json_encode($return));
exit;
exit(json_encode($return));
}
elseif($step==4){
$return["percent"]=80;
Expand Down Expand Up @@ -419,8 +412,7 @@
$return["second"]=0;
$return["msg"]= lang('app_upgrade_backuping', array('upgradeurl' => upgradeinformation(2))) ;
$return["step"]=4;
exit(json_encode($return));
exit();
exit(json_encode($return));
}
foreach ($updatefilelist as $updatefile) {
$destfile = DZZ_ROOT .$appinfo['app_path_old'].'/' . $appinfo['identifier_old'].'/'.$updatefile;
Expand All @@ -439,8 +431,7 @@
$return["percent"]=60;
$return["second"]=300;
$return["msg"]=lang('app_upgrade_backup_complete', array('upgradeurl' => upgradeinformation(3))) ;
exit(json_encode($return));
exit();
exit(json_encode($return));
}

if(!$_GET['fileupgrade']) {
Expand Down Expand Up @@ -470,8 +461,7 @@
$return["percent"]=75;
$return["second"]=2000;
$return["msg"]=lang('app_upgrade_file_success', array( 'upgradeurl' => upgradeinformation_app(4)));
exit(json_encode($return));
exit();
exit(json_encode($return));
}

if($_GET['dodabase']){
Expand Down Expand Up @@ -534,8 +524,7 @@
$return["second"]=300;
$return["step"]=5;
$return["msg"]=lang('app_upgrade_database_success', array( 'upgradeurl' => upgradeinformation_app(5)));
exit(json_encode($return));
exit;
exit(json_encode($return));
}

$linkurl = ADMINSCRIPT . '?mod=appmarket&op=upgrade_app_ajax&operation=' . $operation . '&appid=' .$appid. '&step=5&confirm=' . $confirm;
Expand All @@ -546,7 +535,6 @@
$return["step"]=5;
$return["msg"]=lang('app_upgrade_newversion_will_success');
exit(json_encode($return));
exit;
}
elseif($step==5){
//删除更新文件列表tmp临时文件
Expand Down
1 change: 1 addition & 0 deletions admin/filemanage/index.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
'document' => lang('type_attach'),
'link' => lang('type_link'),
'video' => lang('online_video'),
'folder' => lang('type_folder'),
'dzzdoc' => 'DZZ' . lang('type_attach'),
'attach' => lang('rest_attachment')
);
Expand Down
34 changes: 25 additions & 9 deletions admin/filemanage/template/list.htm
Original file line number Diff line number Diff line change
Expand Up @@ -136,12 +136,12 @@
<div node-type="title-col" data-key="type" class="col" style="width: 20%;border-right: none;"> {lang file_location} <span node-type="order-status" class="asc desc" style="visibility: hidden;"></span> </div>
<div node-type="title-col" data-key="type" class="col" style="width: 10%;border-right: none;"> {lang possessor}<span node-type="order-status" class="asc desc" style="visibility: hidden;"></span> </div>
<div node-type="title-col" data-key="dateline" class="col" style="width: 15%;"> {lang add_time} <span node-type="order-status" class="asc $_GET[dateline]" style="visibility: <!--{if $_GET[dateline]}-->visible<!--{else}-->hidden<!--{/if}-->;"></span> </div>
<div node-type="title-col" data-key="dateline" class="col" style="width: 5%;"> {lang delete} </div>
<div node-type="title-col" data-key="dateline" class="col" style="width: 5%;"> {lang operation} </div>
</div>
</div>
<div node-type="list" class="list list-share">
<div class="list-wrapper clearfix">
<!--{loop $list $value}-->
<!--{loop $list $key $value}-->
<div node-type="item" data-dpath="$value[dpath]" data-rid="$value[rid]" <!--{if $value[type] == 'folder' && $value[oid]}--> data-containpath="$value[oid]"<!--{/if}--> data-type="$value[type]" class="item shareblock clearfix">
<!-- 第一列 -->
<div class="col size" style="width: 3%;text-indent: 0;padding-left: 5px;" >
Expand All @@ -155,21 +155,29 @@
<!--{if $value[img]}--><img class="icon" title="$value[name]" src="$value[img]" <!--{if $value[type]=='image' }--> data-original="$value[url]" data-dpath="$value[dpath]"
<!--{/if}-->/>
<!--{/if}-->
<span class="name-text-wrapper"> <span node-type="name-text" data-href="$value[shareurl]" class="name-text enabled">$value[name]</span> </span> </div>

<div class="btns">
<a node-type="btn-item" data-key="download" class="glyphicon glyphicon-download-alt" href="javascript:void(0);"></a>
</div>

<span class="name-text-wrapper"> <span node-type="name-text" data-href="$value[shareurl]" class="name-text enabled">$value[name]</span> </span>
</div>
<div class="btns">
<a node-type="btn-item" data-key="download" class="glyphicon glyphicon-download-alt" href="javascript:void(0);"></a>
</div>
</div>
<!-- 其他列 -->
<div class="col size" style="width: 10%" data-size="$value[size]">$value[fsize]</div>
<div class="col type" style="width:10%" data-type="$value[ftype]">$value[ftype]</div>
<div class="col type" style="width:20%" data-type="$value[relpath]">$value[relpath]</div>
<div class="col type" style="width:10%" data-type="$value[username]">$value[username]</div>
<div class="col dateline" style="width: 15%" data-dateline="$value[dateline]">$value[fdateline]</div>
<div class="col delete" style="width: 5%" > <a class="" href="{BASESCRIPT}?mod=filemanage&do=delete&icoid=$value[rid]&refer={eval echo urlencode($refer);}" title="{lang delete}" style="color:rgb(85, 85, 85);font-size:20px;" onclick="if(confirm('{lang filemanage_del_file}')){return true}else{return false}"><i class="dzz dzz-delete"></i></a> </div>
<div class="col delete" style="width: 5%" > <a class="" href="{BASESCRIPT}?mod=filemanage&do=delete&icoid=$value[rid]&refer={eval echo urlencode($refer);}" title="{lang delete}" style="color:rgb(85, 85, 85);font-size:20px;" onclick="if(confirm('{lang filemanage_del_file}')){return true}else{return false}"><i class="dzz dzz-delete"></i></a>
<a href="javascript:;" onclick="togglecplog('{$key}')" style="color:rgb(85, 85, 85);font-size:20px;" title="更多信息"><i class="dzz dzz-description"></i></a>
</div>
</div>
<div class="list-group-item" id="cplog_{$key}" style="display:none;">
<!--{if $value[type]!=='folder'}-->
<!--{eval $zldz=IO::getFileUri($value[path])}-->直链地址:<a href="$zldz">$zldz</a><br/>
引用:$value[copys]<br/>
<!--{/if}-->
是否在回收站:<!--{if $value[isdelete]}--><!--{else}--><!--{/if}-->
</div>
<!--{/loop}-->
<!--{if $nextpage}-->
<div class="more text-center clearfix" onclick="getMore(this,'{BASESCRIPT}?mod=filemanage&op=ajax&type=$type&orgid=$orgid&keyword=$keyword&pfid=$pfid&page=$nextpage')">{lang upload_more}</div>
Expand Down Expand Up @@ -349,6 +357,14 @@
})
}
}
function togglecplog(k) {
var cplogobj = document.getElementById('cplog_' + k);
if(cplogobj.style.display == 'none') {
cplogobj.style.display = '';
} else {
cplogobj.style.display = 'none';
}
}
</script>
<script src="static/bootstrap/js/bootstrap.min.js?{VERHASH}"></script>
<!--{template common/footer_simple}-->
8 changes: 6 additions & 2 deletions admin/login/login.php
Original file line number Diff line number Diff line change
Expand Up @@ -128,8 +128,12 @@ function html_login_form() {
$loginuser = $isguest ? '<input class="form-control" name="admin_email" type="text" title="" onfocus="if(this.value==\'' . lang('login_email_username') . '\'){this.value=\'\'}" onblur="if(this.value==\'\'){this.value=\'' . lang('login_email_username') . '\'}" autocomplete="off" />' : '<div class="username">' . $_G['member']['username'] . '</div><div class="email">' . $_G['member']['email'] . '</div>';
$sid = getglobal('sid');
$avatarstatus=getglobal('avatarstatus','member');
if(!$uid ){
$avastar ='<img src="'.($_G['setting']['sitelogo']?'index.php?mod=io&op=thumbnail&size=small&path='.dzzencode('attach::'.$_G['setting']['sitelogo']):'static/image/common/logo.png').'" />';
if(!$uid){
if($_G['setting']['bbclosed']){
$sitelogo = 'static/image/common/logo.png';
}else{
$sitelogo=$_G['setting']['sitelogo']?'index.php?mod=io&op=thumbnail&size=small&path='.dzzencode('attach::'.$_G['setting']['sitelogo']):'static/image/common/logo.png';
}
}else{
$avastar = avatar_block($uid);
}
Expand Down
1 change: 1 addition & 0 deletions admin/member/profileset.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
if(!defined('IN_DZZ') || !defined('IN_ADMIN')) {
exit('Access Denied');
}
$navtitle = lang('data_set').' - '.lang('appname');
$op=$_GET['op'];
$profilevalidate = array(
'telephone' => '/^((\\(?\\d{3,4}\\)?)|(\\d{3,4}-)?)\\d{7,8}$/',
Expand Down
2 changes: 1 addition & 1 deletion admin/member/template/left.htm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<ul class="nav nav-pills nav-stacked nav-pills-leftguide">

<!--{if $_G['adminid']==1 || $_G['member']['grid']==5}-->
<li <!--{if $op=='verify' && !$vid}-->class="active"<!--{/if}-->>
<li <!--{if $op=='verify' && !$vid}-->class="active"<!--{elseif $op=='profileset' || $op=='verifyset' || $op=='verify'}--><!--{else}-->class="active"<!--{/if}-->>
<a href="{MOD_URL}&op=verify">{lang members_verify_profile}</a>
</li>
<!--{/if}-->
Expand Down
2 changes: 1 addition & 1 deletion admin/orguser/ajax.php
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ function getuserIcon($uids,$datas,&$data){
exit(json_encode(array('error' => lang('privilege'))));
}
/*默认新建机构和部门开始群组manageon群组管理员开启 syatemon系统管理员开启 available 系统管理员开启共享目录,保留diron(群组管理员开启目录)控制是否开启目录显示在前台*/
$setarr = array('forgid' => intval($_GET['forgid']), 'orgname' => lang('new_department'), 'fid' => 0, 'disp' => intval($_GET['disp']), 'indesk' => 0, 'dateline' => TIMESTAMP, 'available' => 1,'syatemon'=>1,'manageon'=>1);
$setarr = array('forgid' => intval($_GET['forgid']), 'orgname' => lang('new_department'), 'fid' => 0, 'disp' => intval($_GET['disp']), 'indesk' => 0, 'dateline' => TIMESTAMP, 'available' => 1,'syatemon'=>1,'manageon'=>1,'maxspacesize'=> getglobal('orgmemorySpace', 'setting'));
if ($setarr = C::t('organization') -> insert_by_forgid($setarr, $borgid)) {
include_once libfile('function/cache');
updatecache('organization');
Expand Down
Loading

0 comments on commit 28c3f32

Please sign in to comment.