diff --git a/README.md b/README.md
index 0e3cab6..017678e 100644
--- a/README.md
+++ b/README.md
@@ -1,15 +1,4 @@
### 官方网站:http://dzzoffice.com
### 小胡版插件获取地址:https://gitee.com/xh2002/projects
### 【金山文档】 Dzzoffice笔记:https://kdocs.cn/l/cauBSADFYYE2
-### DzzOffice 介绍:
-
-DzzOffice是一款云存储与应用管理工具,可用于个人、团队网盘和企业OA等。它部署简单,支持多种云存储的接入,并具有强大的文件共享功能以及丰富的成员权限管理。通过将存储文件与云端各类应用的交互,来实现在线协同办公,提高工作效率。
-### dzzoffice小胡版说明
- dzzoffice小胡版也是是开源且免费的,它遵循的是apache开源协议。而关于这个协议,其实我也并不十分了解。我自己是一名学生,经常寻找各种模板来搭建网站。结合我个人的使用习惯,并参考了很多网络模板的设计,这便出了dzzoffice小胡版。尽管项目可能并不完美,也存在一些问题,但因为我平时只能在空闲时间来维护和更新,所以更新的时间可能并不十分及时。希望大家能给予理解。如果您觉得dzzoffice小胡版对您有帮助,或者认为它有可取之处,可以去码云上给我们点个star,而对于那些愿意捐赠的小伙伴,我们自然是热烈欢迎的。
- 注意事项:
- a. 英文语言包需自行维护,我只是添加了部分内容,且一般不进行维护;
- b. 如果官方与小胡版有共同的插件就得用小胡版的,没有的就可以选择用官方的插件,但可能会出现不适配问题;
- c. 应用市场应用更新需谨慎,因为二次开发的应用与官方版存在差异;
- d. 支持小胡和官方2.0beta及以上的系列版本升级。注意,选择更新也有可能与全新安装的效果不一样。
-
### 其他内容在dzzoffice笔记查看
\ No newline at end of file
diff --git a/admin/images/app.css b/admin/images/app.css
index 4018748..eabff1e 100644
--- a/admin/images/app.css
+++ b/admin/images/app.css
@@ -205,10 +205,6 @@ button:focus{
margin-left:10px;
}
-.main-content{
-
-}
-
.partion{
padding:10px;
margin:10px;
diff --git a/admin/images/member.css b/admin/images/member.css
index 1374a21..943e324 100644
--- a/admin/images/member.css
+++ b/admin/images/member.css
@@ -28,10 +28,6 @@
height:26px;
margin-left:10px;
}
-.main-content{
- padding:20px 10px;
-}
-
.partion{
padding:10px;
margin:10px;
diff --git a/core/class/dzz/dzz_app.php b/core/class/dzz/dzz_app.php
index ad4dc8a..ee0bbb9 100644
--- a/core/class/dzz/dzz_app.php
+++ b/core/class/dzz/dzz_app.php
@@ -588,7 +588,7 @@ class dzz_app extends dzz_base{
}
}
if($appidxu=C::t('app_market')->fetch_by_identifier(CURMODULE)){
- if($this->var['member']['adminid']){
+ if($this->var['member']['adminid'] || $_GET['do']=='savefile'){
}elseif($appidxu['available']==0){
showmessage(lang('您无权使用该应用,请联系管理员。'));
}elseif($this->var['member']['uid']){
diff --git a/core/core_version.php b/core/core_version.php
index a372018..dc92e47 100644
--- a/core/core_version.php
+++ b/core/core_version.php
@@ -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.85');
- define('CORE_XHRELEASE', '20230828');
- define('CORE_XHFIXBUG' , '20230828');
+ define('CORE_XHVERSION', '1.85.1');
+ define('CORE_XHRELEASE', '20230829');
+ define('CORE_XHFIXBUG' , '20230829');
}
\ No newline at end of file
diff --git a/core/function/function_core.php b/core/function/function_core.php
index e61d5fc..b180d2c 100644
--- a/core/function/function_core.php
+++ b/core/function/function_core.php
@@ -723,7 +723,7 @@ function avatar_group($gid,$groupcolors=array(),$class='iconFirstWord'){
if(preg_match('/^\#.+/',$groupcolor)){
return ''.strtoupper(new_strsubstr($groupcolors[$gid]['orgname'],1,'')).' ';
}elseif(preg_match('/^\d+$/',$groupcolor) && $groupcolors > 0){
- return ' ';
+ return ' ';
}
}else{
$colorkey = rand(1,15);
@@ -739,7 +739,7 @@ function avatar_group($gid,$groupcolors=array(),$class='iconFirstWord'){
if(preg_match('/^\#.+/',$groupinfo['aid'])){
return ''.strtoupper(new_strsubstr($groupinfo['orgname'],1,'')).' ';
}elseif(preg_match('/^\d+$/',$groupinfo['aid']) && $groupinfo['aid'] > 0){
- return ' ';
+ return ' ';
}
}else{
diff --git a/core/template/default/common/about.htm b/core/template/default/common/about.htm
index 5835572..136a5b0 100644
--- a/core/template/default/common/about.htm
+++ b/core/template/default/common/about.htm
@@ -21,7 +21,7 @@
$about[name_en]
{lang version}:
- $about[version]
+ $about[version]
@@ -34,7 +34,7 @@
diff --git a/core/template/default/common/header_common.htm b/core/template/default/common/header_common.htm
index a8b442e..778e768 100644
--- a/core/template/default/common/header_common.htm
+++ b/core/template/default/common/header_common.htm
@@ -18,6 +18,8 @@
+
+
diff --git a/core/template/default/common/header_simple_end.htm b/core/template/default/common/header_simple_end.htm
index d541c5e..71bace3 100644
--- a/core/template/default/common/header_simple_end.htm
+++ b/core/template/default/common/header_simple_end.htm
@@ -13,11 +13,5 @@ $hex_colorr=$red.', '.$green.', '.$blue;
-
-
\ No newline at end of file
diff --git a/core/template/default/common/header_simple_start.htm b/core/template/default/common/header_simple_start.htm
index 8596938..f6dbe55 100644
--- a/core/template/default/common/header_simple_start.htm
+++ b/core/template/default/common/header_simple_start.htm
@@ -23,8 +23,10 @@
+
+
diff --git a/dzz/comment/images/comment.css b/dzz/comment/images/comment.css
index 9cbec65..420f8cc 100644
--- a/dzz/comment/images/comment.css
+++ b/dzz/comment/images/comment.css
@@ -384,11 +384,6 @@ a.ui-artZoom-hide:hover span, ._tt_tasklist li .ui-artZoom-hide.title_tttl:hover
.right_ifed {
padding-left: 45px
}
-
-.cmt_fed img.img-circle{
- width:30px;
- height:30px;
-}
.dateline_fed {
padding: 4px 5px 4px 27px;
font: 12px/14px Verdana, "\5B8B\4F53", "\65B0\5B8B\4F53", sans-serif;
diff --git a/dzz/comment/images/folder.css b/dzz/comment/images/folder.css
index 7c0b5ad..8dff951 100644
--- a/dzz/comment/images/folder.css
+++ b/dzz/comment/images/folder.css
@@ -33,7 +33,7 @@
flex-wrap:wrap;
}
.item-block{
- background:#F2F2F2;
+ background:rgba(var(--bs-primary-hover),0.1);
}
/*文件分享单页开始*/
.sharepame-selected{
diff --git a/dzz/dzzvote/template/vote_user.htm b/dzz/dzzvote/template/vote_user.htm
index fbed100..93e8ce9 100644
--- a/dzz/dzzvote/template/vote_user.htm
+++ b/dzz/dzzvote/template/vote_user.htm
@@ -5,7 +5,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/dzz/onlyoffice/template/header_left.htm b/dzz/onlyoffice/template/header_left.htm
new file mode 100644
index 0000000..de65290
--- /dev/null
+++ b/dzz/onlyoffice/template/header_left.htm
@@ -0,0 +1,3 @@
+
+
+{lang appname}
\ No newline at end of file
diff --git a/dzz/onlyoffice/template/index.htm b/dzz/onlyoffice/template/index.htm
new file mode 100644
index 0000000..8114bd6
--- /dev/null
+++ b/dzz/onlyoffice/template/index.htm
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/dzz/onlyoffice/template/left.htm b/dzz/onlyoffice/template/left.htm
new file mode 100644
index 0000000..05ad236
--- /dev/null
+++ b/dzz/onlyoffice/template/left.htm
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/dzz/onlyoffice/template/main.htm b/dzz/onlyoffice/template/main.htm
new file mode 100644
index 0000000..52a23b0
--- /dev/null
+++ b/dzz/onlyoffice/template/main.htm
@@ -0,0 +1,30 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/dzz/orguser/ajax.php b/dzz/orguser/ajax.php
deleted file mode 100644
index 9a39bba..0000000
--- a/dzz/orguser/ajax.php
+++ /dev/null
@@ -1,519 +0,0 @@
-'.strtoupper(new_strsubstr($v['text'],1,'')).''.$v['text'];
-
- }else{
- $v['icon'] = false;
- $v['text']= avatar_block($uid,array(),'iconFirstWord').$v['text'];
- }
- $data[] = $v;
- }
-}
-$do = trim($_GET['do']);
-$orgid = intval($_GET['orgid']);
-if ($do == 'upload') {//上传图片文件
- 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' => 40, 'max-height' => 40));
- $upload_handler = new uploadhandler($options);
- exit();
-} /*elseif ($do == 'getdefaultpic') {//获取群组默认图片,上传图片保存
- $imgs = C::t('resources_grouppic')->fetch_user_pic();
- if (isset($_GET['aid'])) {
- $aid = intval($_GET['aid']);
- if ($_G['adminid'] == 1) $dafault = 1;
- else $default = 0;
- if (C::t('resources_grouppic')->insert_data($aid, $default)) {
- showTips(array('success' => true), 'json');
- } else {
- showTips(array('error' => true), 'json');
- }
- }
-}*/elseif($do == 'getchildren') {
-
- $id = intval($_GET['id']);
- $list = array();
- $limit = 0;
- $html = '';
-
- //判断用户有没有操作权限
- $ismoderator = C::t('organization_admin') -> ismoderator_by_uid_orgid($id, $_G['uid']);
- if ($ismoderator) {
- $disable = '';
- $type = 'user';
- } else {
- $disable = '"disabled":true,';
- $type = "disabled";
- }
- if ($id) {
- $icon = 'dzz/system/images/department.png';
- } else {
- $icon = 'dzz/system/images/organization.png';
- }
- $data = array();
- if ($_GET['id'] == '#') {
- if($_G['adminid']!=1) $topids=C::t('organization_admin')->fetch_toporgids_by_uid($_G['uid']);
- foreach (C::t('organization')->fetch_all_by_forgid($id,0,0) as $value) {
- if($value['type']==1) continue;//过滤群
- if($_G['adminid']!=1 && !in_array($value['orgid'],$topids)) continue;
- if (C::t('organization_admin') -> ismoderator_by_uid_orgid($value['orgid'], $_G['uid'])) {
- $orgdisable = false;
- $orgtype = 'organization';
- } else {
- $orgdisable = true;
- $orgtype = 'disabled';
- }
- $arr=array('id' => $value['orgid'], 'text' => $value['orgname'], 'icon' => $icon, 'state' => array('disabled' => $orgdisable), "type" => $orgtype, 'children' => true);
- if(intval($value['aid'])==0){
- $arr['text'] = avatar_group($value['orgid'],array($value['orgid']=>array('aid'=>$value['aid'],'orgname'=>$value['orgname']))).$value['orgname'];
- $arr['icon'] = false;
- }else{
- $arr['text'] = $value['orgname'];
- $arr['icon']='index.php?mod=io&op=thumbnail&width=24&height=24&path=' . dzzencode('attach::' . $value['aid']);
- }
- $data[]=$arr;
-
- }
-
- $data[] = array('id' => 'other', 'text' => lang('no_institution_users'), 'state' => array('disabled' => $disable), "type" => 'group', 'children' => true);
- } else {
- //获取用户列表
-
- if (!$id) {
-
- if ($ismoderator) {
- $uids = array();
- $datas = array();
- foreach (C::t('organization_user')->fetch_user_not_in_orgid($limit) as $value) {
- if(!$value['uid']) continue;
- $uids[] = $value['uid'];
- $datas[] = array('id' => 'uid_' . $value['uid'], 'text' => $value['username'] . '
' . $value['email'] . ' ', 'icon' => 'dzz/system/images/user.png', 'state' => array('disabled' => $disable), "type" => $type, 'li_attr' => array('uid' => $value['uid']));
- }
- getuserIcon($uids,$datas,$data);
- }
-
- } else {
- foreach (C::t('organization')->fetch_all_by_forgid($id) as $value) {
- if (C::t('organization_admin') -> ismoderator_by_uid_orgid($value['orgid'], $_G['uid'])) {
- $orgdisable = '';
- $orgtype = 'organization';
- } else {
- $orgdisable = '"disabled":true,';
- $orgtype = 'disabled';
- }
- $arr=array('id' => $value['orgid'], 'text' => $value['orgname'], 'icon' => $icon, 'state' => array('disabled' => $orgdisable), "type" => $orgtype, 'children' => true);
- if(intval($value['aid'])==0){
- $arr['text'] = avatar_group($value['orgid'],array($value['orgid']=>array('aid'=>$value['aid'],'orgname'=>$value['orgname']))).$value['orgname'];
- $arr['icon'] = false;
- }else{
- $arr['text'] = $value['orgname'];
- $arr['icon']='index.php?mod=io&op=thumbnail&width=24&height=24&path=' . dzzencode('attach::' . $value['aid']);
- }
- $data[]=$arr;
- }
- if ($ismoderator) {
- $uids = array();
- $datas = array();
- foreach (C::t('organization_user')->fetch_user_by_orgid($id,$limit) as $value) {
- if(!$value['uid']) continue;
- $uids[] = $value['uid'];
- $datas[] = array('id' => 'orgid_' . $value['orgid'] . '_uid_' . $value['uid'], 'text' => $value['username'] . '
' . $value['email'] . ' ', 'icon' => 'dzz/system/images/user.png', 'state' => array('disabled' => $disable), "type" => $type, 'li_attr' => array('uid' => $value['uid']));
- }
- getuserIcon($uids,$datas,$data);
- }
- }
-
- }
-
- exit(json_encode($data));
-} elseif ($do == 'search') {//jstree搜索接口
- $str = trim($_GET['str']);
- $str = '%' . $str . '%';
- $sql = "username LIKE %s";
- //搜索用户
- $data = array('other');
- $uids = array();
- foreach (DB::fetch_all("select * from %t where $sql ",array('user',$str)) as $value) {
- $uids[] = $value['uid'];
- $data['uid_' . $value['uid']] = 'uid_' . $value['uid'];
- }
- $orgids = array();
- foreach ($orgusers=C::t('organization_user')->fetch_all_by_uid($uids) as $value) {
- $data['uid_' . $value['uid']] = 'orgid_' . $value['orgid'] . '_uid_' . $value['uid'];
- $orgids[] = $value['orgid'];
- }
-
- foreach ($orgids as $orgid) {
- $uporgids = C::t('organization')->fetch_parent_by_orgid($orgid);
- foreach ($uporgids as $value) {
- $data[$value] = $value;
- }
- }
- $temp = array();
- foreach ($data as $value) {
- $temp[] = $value;
- }
- exit(json_encode($temp));
-
-} elseif ($do == 'getjobs') {
- $orgid = intval($_GET['orgid']);
- $jobs = C::t('organization_job') -> fetch_all_by_orgid($orgid);
- $html = '
'.lang('none').' ';
- foreach ($jobs as $job) {
- $html .= '
' . $job['name'] . ' ';
- }
- exit($html);
-} elseif ($do == 'create') {
- $forgid = intval($_GET['forgid']);
- $borgid = intval($_GET['orgid']);
- //放在此部门后面
- if (!$ismoderator = C::t('organization_admin') -> ismoderator_by_uid_orgid($forgid, $_G['uid'])) {
- 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,'maxspacesize'=> getglobal('orgmemorySpace', 'setting'));
- if ($setarr = C::t('organization') -> insert_by_forgid($setarr, $borgid)) {
- include_once libfile('function/cache');
- updatecache('organization');
- } else {
- $setarr['error'] = 'create organization failure';
- }
-
- exit(json_encode($setarr));
-} elseif ($do == 'rename') {
- $orgid = intval($_GET['orgid']);
- if (!$ismoderator = C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization') -> update_by_orgid($orgid, array('orgname' => getstr($_GET['text'])))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('msg' => lang('rechristen_error'))));
- }
-} elseif ($do == 'delete') {
-
- if ($_GET['type'] == 'user') {//删除用户
- $forgid = intval($_GET['forgid']);
- $uids = $_GET['uids'];
- $realdelete = intval($_GET['realdelete']);
- if ($realdelete) {
- if ($_G['adminid'] != 1)
- exit(json_encode(array('error' => lang('privilege'))));
- //判断用户是否在部门中,在部门中的用户不彻底删除
- if (C::t('organization_user') -> fetch_orgids_by_uid($uids)) {
- exit(json_encode(array('error' => lang('orguser_ajax_delete'))));
- }
- foreach ($uids as $uid) {
- //删除用户
- C::t('user') -> delete_by_uid($uid);
- }
- exit(json_encode(array('msg' => 'success')));
- } else {
- //检测权限
- if (!$ismoderator = C::t('organization_admin') ->chk_memberperm($forgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization_user') -> delete_by_uid_orgid($uids, $forgid)) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('msg' => lang('delete_error'))));
- }
- }
-
- } else {
- $orgid = ($_GET['orgid']);
- $forgid = intval($_GET['forgid']);
- if (!$ismoderator = C::t('organization_admin') -> ismoderator_by_uid_orgid($forgid, $_G['uid'])) {
- exit(json_encode(array('error' => loang('privilege'))));
- }
- if ($return = C::t('organization') -> delete_by_orgid($orgid)) {//删除部门,部门的用户移动到上级部门去;
- if ($return['error']) {
- exit(json_encode($return));
- }
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('msg' => lang('delete_error'))));
- }
- }
-} elseif ($do == 'move') {
-
- if ($_GET['type'] == 'user') {//移动用户
- $orgid = intval($_GET['orgid']);
- $forgid = intval($_GET['forgid']);
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($forgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- $copy = intval($_GET['copy']);
-
- $uid = intval($_GET['uid']);
- if (C::t('organization_user') -> move_to_by_uid_orgid($uid, $forgid, $orgid, $copy)) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('movement_error'))));
- }
- } else {
- $orgid = intval($_GET['orgid']);
- $disp = intval($_GET['position']);
- $forgid = intval($_GET['forgid']);
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($forgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization') -> setDispByOrgid($orgid, $disp, $forgid)) {//移动部门;
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('msg' => lang('delete_error'))));
- }
- }
-} elseif ($do == 'jobedit') {
- $jobid = intval($_GET['jobid']);
- $orgid = intval($_GET['orgid']);
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- $name = str_replace('...', '', getstr($_GET['name'], 30));
- if (C::t('organization_job') -> update($jobid, array('name' => $name))) {
- exit(json_encode(array('jobid' => $jobid, 'name' => $name)));
- } else {
- exit(json_encode(array('error' => lang('edit_error'))));
- }
-} elseif ($do == 'jobdel') {
- $jobid = intval($_GET['jobid']);
- $orgid = intval($_GET['orgid']);
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization_job') -> delete($jobid)) {
- exit(json_encode(array('jobid' => $jobid)));
- } else {
- exit(json_encode(array('error' => lang('delete_unsuccess'))));
- }
-} elseif ($do == 'jobadd') {
- $orgid = intval($_GET['orgid']);
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- $setarr = array('orgid' => $orgid, 'name' => str_replace('...', '', getstr($_GET['name'], 30)), 'dateline' => TIMESTAMP, 'opuid' => $_G['uid']);
- if ($setarr['jobid'] = C::t('organization_job') -> insert($setarr)) {
- exit(json_encode($setarr));
- } else {
- exit(json_encode(array('error' => lang('add_unsuccess'))));
- }
-} elseif ($do == 'moderator_add') {
- $orgid = intval($_GET['orgid']);
- $org = C::t('organization') -> fetch($orgid);
- $perm = C::t('organization_admin') ->chk_memberperm($orgid, $_G['uid']);
- if ($perm < 2) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- $setarr = array('orgid' => $orgid, 'uid' => intval($_GET['uid']), 'dateline' => TIMESTAMP, 'opuid' => $_G['uid']);
- if ($setarr['id'] = C::t('organization_admin') -> insert(intval($_GET['uid']), $orgid)) {
- $user = getuserbyuid($setarr['uid']);
- $setarr['username'] = $user['username'];
- $setarr['avatar']=avatar_block($setarr['uid']);
- exit(json_encode($setarr));
- } else {
- exit(json_encode(array('error' => lang('add_administrator_unsuccess'))));
- }
-} elseif ($do == 'moderator_del') {
- $orgid = intval($_GET['orgid']);
- $org = C::t('organization_admin') -> fetch($orgid);
- //获取当前操作用户权限,系统管理员,上级部门管理员和群组创建人均返回2
- $perm = C::t('organization_admin') ->chk_memberperm($orgid,$_G['uid']);
- if ($perm < 2) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization_admin') -> delete_by_id(intval($_GET['id']))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('add_administrator_unsuccess'))));
- }
-} elseif ($do == 'folder_available') {
- $orgid = intval($_GET['orgid']);
-
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization') -> setFolderAvailableByOrgid($orgid, intval($_GET['available']))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('unable_set'))));
- }
-} elseif ($do == 'folder_indesk') {
- $orgid = intval($_GET['orgid']);
-
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization') -> setIndeskByOrgid($orgid, intval($_GET['indesk']))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('no_open_Shared_directory'))));
- }
-} elseif ($do == 'set_org_orgname') {
- $orgid = intval($_GET['orgid']);
- $orgname=getstr($_GET['orgname'],255);
-
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization')->update_by_orgid($orgid, array('orgname'=>$orgname))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('rechristen_error'))));
- }
-}elseif($do == 'set_org_logo'){
- $orgid = intval($_GET['orgid']);
- $img=intval(($_GET['aid']));
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization')->update_by_orgid($orgid, array('aid'=>$img))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('rechristen_error'))));
- }
-
-}elseif ($do == 'set_org_desc') {
- $orgid = intval($_GET['orgid']);
- $desc=getstr($_GET['desc']);
-
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization')->update_by_orgid($orgid, array('desc'=>$desc))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('rechristen_error'))));
- }
-}elseif($do == 'group_on'){
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if (C::t('organization') -> setgroupByOrgid($orgid, intval($_GET['available']))) {
- exit(json_encode(array('msg' => 'success')));
- } else {
- exit(json_encode(array('error' => lang('unable_set'))));
- }
-}elseif($do == 'orginfo'){
- $array = isset($_GET['arr']) ? $_GET['arr']:'';
- if(!empty($array)){
- $orgid = intval($array['orgid']);
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(json_encode(array('error' => lang('privilege'))));
- }
- if(!$org = C::t('organization') -> fetch($orgid)){
- exit(json_encode(array('error' => lang('organization_not_exists'))));
- }
- $setarr = array(
- 'desc'=>getstr($array['desc']),
- 'groupback'=>isset($array['groupback']) ? intval($array['groupback']):0,
- 'aid'=>isset($array['aid']) ? intval($array['aid']):0,
- //'orgname'=>getstr($array['orgname']);
- );
- if(C::t('organization')->update($orgid,$setarr)){
- $addaids = array();
- $delaids = array();
- if(!empty($array['aid']) && $array['aid'] != $org['aid']){
- $addaids[] = $array['aid'];
- $delaids[] = $org['aid'];
- }
- if(!empty($array['groupback']) && $array['groupback'] != $org['groupback']){
- $addaids[] = $array['groupback'];
- $delaids[] = $org['groupback'];
- }
- if(!empty($addaids)){
- C::t('attachment')->addcopy_by_aid($addaids);
- }
- if(!empty($delaids)){
- C::t('attachment')->addcopy_by_aid($delaids,-1);
- }
- exit(json_encode(array('success' =>true)));
- }else{
- exit(json_encode(array('error' => lang('edit_error'))));
- }
- }
-}elseif($do=='folder_maxspacesize'){
- $orgid=intval($_GET['orgid']);
- $setspacesize = intval($_GET['maxspacesize']);
- if(!$org=C::t('organization')->fetch($orgid)){
- exit(json_encode(array('error'=>'该机构或群组不存在或被删除')));
- }
- //暂时只允许系统管理员进行空间相关设置
- if($_G['adminid'] != 1){
- exit(json_encode(array('error'=>'没有权限')));
- }
- if($setspacesize != 0){
-
- //获取允许设置的空间值
- $allowallotspace = C::t('organization')->get_allowallotspacesize_by_orgid($orgid);
-
- if($allowallotspace < 0) {
- exit(json_encode(array('error' => '可分配空间不足')));
- }
-
- //获取当前已占用空间大小
- $currentallotspace = C::t('organization')->get_orgallotspace_by_orgid($orgid,0,false);
- //设置值小于当前下级分配总空间值即:当前设置值 < 下级分配总空间
- if($setspacesize > 0 && $setspacesize*1024*1024 < $currentallotspace){
-
- exit(json_encode(array('error'=>'设置空间值不足,小于已分配空间值!','val'=>$org['maxspacesize'])));
-
- }
- //上级包含空间限制时,无限制不处理,直接更改设置值
- if($allowallotspace > 0 && ($setspacesize*1024*1024 > $allowallotspace)){
-
- exit(json_encode(array('error'=>'总空间不足!','val'=>$org['maxspacesize'])));
-
- }
- }
-
- //设置新的空间值
- if(C::t('organization')->update($orgid,array('maxspacesize'=>$setspacesize))){
-
- exit(json_encode(array('msg'=>'success')));
-
- }else{
- exit(json_encode(array('error'=>'设置不成功或未更改','val'=>$org['maxspacesize'])));
- }
-
-}elseif ($do == 'guide') {
- include template('guide');
-}
-exit();
-?>
diff --git a/dzz/orguser/edituser.php b/dzz/orguser/edituser.php
deleted file mode 100644
index 36cf52f..0000000
--- a/dzz/orguser/edituser.php
+++ /dev/null
@@ -1,440 +0,0 @@
- $orgid) {
- if (!$orgid)
- continue;
- if (C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'], 1)) {
- $orgids[$orgid] = intval($_GET['jobids'][$key]);
- }
- }
- if (!$orgids && $_G['adminid'] != 1)
- showmessage('no_parallelism_jurisdiction');
- //用户名验证
- $username = trim($_GET['username']);
- if ($username) {
- $usernamelen = dstrlen($_GET['username']);
- if ($usernamelen < 3) {
- showmessage('profile_username_tooshort');
- } elseif ($usernamelen > 30) {
- showmessage('profile_username_toolong');
- }
- if ($_G['setting']['censoruser'] && @preg_match($censorexp, $username)) {
- showmessage('profile_username_protect');
- }
- //如果输入用户名,检查用户名不能重复
-
- if (C::t('user') -> fetch_by_username($username)) {
- showmessage('user_registered_retry');
- }
-
- }
- $user_extra = array();
- //如果输入手机号码,检查手机号码不能重复
- $phone = trim($_GET['phone']);
- if ($phone) {
- if (!preg_match("/^\d+$/", $phone)) {
- showmessage('user_phone_illegal');
- }
- if (C::t('user') -> fetch_by_phone($phone)) {
- showmessage('user_phone_registered');
- }
- $user_extra['phone'] = $phone;
- }
- //如果输入微信号,检查微信号不能重复
- $weixinid = trim($_GET['weixinid']);
- if ($weixinid) {
- if (!preg_match("/^[a-zA-Z\d_]{5,}$/i", $weixinid)) {
- showmessage(lang('weixin_illegal'));
- }
- if (C::t('user') -> fetch_by_weixinid($weixinid)) {
- showmessage('weixin_registered');
- }
- $user_extra['weixinid'] = $weixinid;
- }
-
-
- //邮箱验证部分
- $email = strtolower(trim($_GET['email']));
- checkemail($_GET['email']);
-
- //密码验证部分
- if ($_G['setting']['pwlength']) {
- if (strlen($_GET['password']) < $_G['setting']['pwlength']) {
- showmessage('profile_password_tooshort', '', array('pwlength' => $_G['setting']['pwlength']));
- }
- }
-
- if (!$_GET['password'] || $_GET['password'] != addslashes($_GET['password'])) {
- showmessage('profile_passwd_illegal');
- }
- $password = $_GET['password'];
-
- $result = uc_user_register(addslashes($username), $password, $email, $nickname, $questionid, $answer, $_G['clientip'], 0);
- if (is_array($result)) {
- $uid = $result['uid'];
- $password = $result['password'];
- } else {
- $uid = $result;
- }
- if ($uid <= 0) {
- if ($uid == -1) {
- showmessage('profile_username_illegal');
- } elseif ($uid == -2) {
- showmessage('profile_username_protect');
- } elseif ($uid == -3) {
- showmessage('profile_username_duplicate');
- } elseif ($uid == -4) {
- showmessage('profile_email_illegal');
- } elseif ($uid == -5) {
- showmessage('profile_email_domain_illegal');
- } elseif ($uid == -6) {
- showmessage('profile_email_duplicate');
- } elseif ($uid == -7) {
- showmessage('profile_username_illegal');
- } else {
- showmessage('undefined_action');
- }
- }
- //插入用户状态表
- $status = array('uid' => $uid, 'regip' => '', 'lastip' => '', 'lastvisit' => TIMESTAMP, 'lastactivity' => TIMESTAMP, 'lastsendmail' => 0);
- C::t('user_status') -> insert($status, false, true);
- //处理管理员
- C::t('user') -> setAdministror($uid, intval($_GET['groupid']));
- //加入额外信息
- if ($user_extra)
- C::t('user') -> update($uid, $user_extra);
-
- //处理额外空间
- $addsize = intval($_GET['addsize']);
- if (C::t('user_field') -> fetch($uid)) {
- C::t('user_field') -> update($uid, array('addsize' => $addsize, 'perm' => 0));
- } else {
- C::t('user_field') -> insert(array('uid' => $uid, 'addsize' => $addsize, 'perm' => 0, 'iconview' => $_G['setting']['desktop_default']['iconview'] ? $_G['setting']['desktop_default']['iconview'] : 2, 'taskbar' => $_G['setting']['desktop_default']['taskbar'] ? $_G['setting']['desktop_default']['taskbar'] : 'bottom', 'iconposition' => intval($_G['setting']['desktop_default']['iconposition']), 'direction' => intval($_G['setting']['desktop_default']['direction']), ));
- }
-
- if ($orgids)
- C::t('organization_user') -> replace_orgid_by_uid($uid, $orgids);
- //处理上司职位;
- C::t('organization_upjob') -> insert_by_uid($uid, intval($_GET['upjobid']));
- Hook::listen('syntoline_user',$uid);//注册绑定到钉钉部门表
- if ($_GET['sendmail']) {
- $sitename=$_G['setting']['sitename'];
- $email_password_message = <<
尊敬的用户$member[username],您好!
- 您收到这封邮件,是由于 $sitename 的管理员添加成员时使用了这个邮箱地址。如果您不知道 $sitename 请忽略这封邮件。您不需要退订或进行其他进一步的操作。
- 登录帐号和密码
- 登录帐号:$_GET[email]
- 登录密码:$_GET[password]
- 感谢您的访问,祝您使用愉快!
-EOT;
-
- if (!sendmail("$_GET[email] <$_GET[email]>", '用户帐号和密码', $email_password_message)) {
- runlog('sendmail', "$_GET[email] 发送失败");
- }
- }
-
- showmessage('add_user_success', MOD_URL.'#user_' . $uid, array('uid' => $uid, 'orgids' => $orgids));
-
- } else {
- $orgid = intval($_GET['orgid']);
- if (!C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(lang('orguser_edituser_add_user'));
- }
- if ($org = C::t('organization') -> fetch($orgid)) {
- $org['jobs'] = C::t('organization_job') -> fetch_all_by_orgid($org['orgid']);
- $orgpath = getPathByOrgid($org['orgid']);
- $org['depart'] = implode('-', ($orgpath));
- }
-
- include template('adduser');
- }
-
-} elseif ($do == 'edit') {
- if (submitcheck('accountedit')) {
-
- //判断是否对此用户有管理权限
- $uperm = false;
- if ($_G['adminid'] != 1) {
- if ($orgids_uid = C::t('orginization_user') -> fetch_orgids_by_uid($uid)) {
- foreach ($orgids_uid as $orgid) {
- if (C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- $uperm = true;
- break;
- }
- }
- if (!$uperm)
- showmessage('privilege');
- } else {
- showmessage('privilege');
- }
- }
-
- $orgids = array();
- foreach ($_GET['orgids'] as $key => $orgid) {
- if ($orgid)
- $orgids[$orgid] = intval($_GET['jobids'][$key]);
- }
-
- $user = C::t('user') -> fetch_by_uid($uid);
- if ($user['groupid'] < $_G['groupid'] || (C::t('user') -> checkfounder($user) && !C::t('user') -> checkfounder($_G['member']))) {
- //处理用户部门和职位
- C::t('organization_user') -> replace_orgid_by_uid($uid, $orgids);
-
- //处理上司职位;
- C::t('organization_upjob') -> insert_by_uid($uid, intval($_GET['upjobid']));
-
- showmessage('edit_user_success', MOD_URL.'#user_' . $uid, array());
- }
-
-
- //用户名验证
- $username = trim($_GET['username']);
-
- $usernamelen = dstrlen($_GET['username']);
- if ($usernamelen < 3) {
- showmessage('profile_username_tooshort');
- } elseif ($usernamelen > 30) {
- showmessage('profile_username_toolong');
- } elseif (!check_username(addslashes(trim(stripslashes($username))))) {
- showmessage('profile_username_illegal');
- }
-
- //如果输入用户名,检查用户名不能重复
- if ($username != $user['username']) {
- if (C::t('user') -> fetch_by_username($username)) {
- showmessage('user_registered_retry');
- }
- if ($_G['setting']['censoruser'] && @preg_match($censorexp, $username)) {
- showmessage('profile_username_protect');
- }
- }
-
-
- //如果输入手机号码,检查手机号码不能重复
- $phone = trim($_GET['phone']);
- if ($phone) {
- if (!preg_match("/^\d+$/", $phone)) {
- showmessage('user_phone_illegal');
- }
- if ($phone != $user['phone'] && C::t('user') -> fetch_by_phone($phone)) {
- showmessage('user_phone_registered');
- }
- }
- //如果输入微信号,检查微信号不能重复
- $weixinid = trim($_GET['weixinid']);
- if ($weixinid) {
- if (!preg_match("/^[a-zA-Z\d_]{5,}$/i", $weixinid)) {
- showmessage(lang('weixin_illegal'));
- }
- if ($weixinid != $user['weixinid'] && C::t('user') -> fetch_by_weixinid($weixinid)) {
- showmessage('weixin_registered');
- }
- }
-
- //邮箱验证部分
- $email = strtolower(trim($_GET['email']));
- if (!isemail($email)) {
- showmessage('profile_email_illegal', '', array(), array('handle' => false));
- } elseif (!check_emailaccess($email)) {
- showmessage('profile_email_domain_illegal', '', array(), array('handle' => false));
- }
- if ($email != strtolower($user['email'])) {
- //邮箱不能重复
- if (C::t('user') -> fetch_by_email($email)) {
- showmessage('email_registered_retry');
- }
- }
-
- //密码验证部分
- if ($_GET['password']) {
- if ($_G['setting']['pwlength']) {
- if (strlen($_GET['password']) < $_G['setting']['pwlength']) {
- showmessage('profile_password_tooshort', '', array('pwlength' => $_G['setting']['pwlength']));
- }
- }
-
- if ($_GET['password'] !== $_GET['password2']) {
- showmessage('profile_passwd_notmatch');
- }
- }
- $password = $_GET['password'];
- if ($password) {
- $salt = substr(uniqid(rand()), -6);
- $setarr = array('salt' => $salt, 'password' => md5(md5($password) . $salt), 'username' => $username, 'phone' => $phone, 'weixinid' => $weixinid, 'secques' => '', 'email' => $email, 'status' => intval($_GET['status']));
-
- } else {
- $setarr = array('username' => $username, 'email' => $email, 'phone' => $phone, 'weixinid' => $weixinid, 'status' => intval($_GET['status']));
- }
- C::t('user') -> update($uid, $setarr);
-
- //处理管理员
- C::t('user') -> setAdministror($uid, intval($_GET['groupid']));
- //处理额外空间和用户空间
- //$addsize = intval($_GET['addsize']);
- $userspace = intval($_GET['userspace']);
- if (C::t('user_field') -> fetch($uid)) {
- C::t('user_field') -> update($uid, array('userspace'=>$userspace,'perm' => 0));
- } else {
- C::t('user_field') -> insert(array('uid' => $uid,'userspace'=>$userspace, 'perm' => 0, 'iconview' => $_G['setting']['desktop_default']['iconview'] ? $_G['setting']['desktop_default']['iconview'] : 2, 'taskbar' => $_G['setting']['desktop_default']['taskbar'] ? $_G['setting']['desktop_default']['taskbar'] : 'bottom', 'iconposition' => intval($_G['setting']['desktop_default']['iconposition']), 'direction' => intval($_G['setting']['desktop_default']['direction']), ));
- }
- //处理用户部门和职位
-
- if ($orgids)
- C::t('organization_user') -> replace_orgid_by_uid($uid, $orgids);
- //处理上司职位;
-
- C::t('organization_upjob') -> insert_by_uid($uid, intval($_GET['upjobid']));
- Hook::listen('syntoline_user',$uid);//注册绑定到钉钉部门表
- showmessage('edit_user_success', MOD_URL.'#user_' . $uid, array());
- } else {
- require_once libfile('function/organization');
-
- $user = C::t('user') -> fetch_by_uid($uid);
- $userfield = C::t('user_field') -> fetch($uid);
-
- //$user['status']=$user['status']>0?0:1;
- $departs = array();
- $data_depart = array();
- //$departs=getDepartmentByUid($uid);
- $orgids = C::t('organization_user') -> fetch_orgids_by_uid($uid);
- //判断是否对此用户有管理权限
- $uperm = false;
- if ($_G['adminid'] != 1) {
- foreach ($orgids as $orgid) {
- if (C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- $uperm = true;
- break;
- }
- }
- if (!$uperm)
- exit(lang('orguser_edituser_add_user1'));
- }
- //获取系统可分配空间大小
- $allowallotspace = C::t('organization')->get_system_allowallot_space();
- //如果该用户之前有分配空间,当前用户可分配空间=系统可分配空间+该用户之前分配空间(若无,则加上当前用户已使用空间)
- if($userfield['userspace'] > 0){
- $currentuserAllotspace = $allowallotspace + $userfield['userspace']*1024*1024;
- }else{
- $currentuserAllotspace = $allowallotspace + $userfield['usesize'];
- }
- $departs = C::t('organization') -> fetch_all($orgids);
- foreach ($departs as $key => $value) {
- $orgpath = getPathByOrgid($value['orgid']);
- $value['depart'] = implode('-', ($orgpath));
- $value['ismoderator'] = C::t('organization_admin') -> ismoderator_by_uid_orgid($value['orgid'], $_G['uid']);
- $value['jobs'] = C::t('organization_job') -> fetch_all_by_orgid($value['orgid']);
- $value['user'] = C::t('organization_user') -> fetch_by_uid_orgid($uid, $value['orgid']);
- $value['jobid'] = $value['user']['jobid'];
- $value['jobname'] = $value['jobs'][$value['jobid']] ? $value['jobs'][$value['jobid']]['name'] : lang('none');
- $data_depart[$key] = $value;
- }
- //$orgtree_admin=getDepartmentOption_admin(0);
- if ($upjob = C::t('organization_upjob') -> fetch_by_uid($uid)) {
- $upjob['jobs'] = C::t('organization_job') -> fetch_all_by_orgid($upjob['orgid']);
- } else {
- $upjob = array('jobid' => 0, 'depart' => lang('please_select_a_organization_or_department'), 'name' => lang('none'));
- }
- //$orgtree_all=getDepartmentOption_admin(0,'',true);
- $perm = 1;
- if ($user['groupid'] < $_G['groupid'] || (C::t('user') -> checkfounder($user) && !C::t('user') -> checkfounder($_G['member']))) {
- $perm = 0;
- }
-
- include template('edituser');
- }
-
-} elseif ($do == 'profile') {
- //判断是否对此用户有管理权限
- $uperm = false;
- if ($_G['adminid'] != 1) {
- if ($orgids = C::t('organization_user') -> fetch_orgids_by_uid($uid)) {
- foreach ($orgids as $orgid) {
- if (C::t('organization_admin') -> ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- $uperm = true;
- break;
- }
- }
- }
- if (!$uperm)
- exit(lang('orguser_edituser_add_user1'));
- }
- include_once libfile('function/profile', '', 'user');
- $space = getuserbyuid($uid);
- space_merge($space, 'profile');
- loadcache('profilesetting');
- if (empty($_G['cache']['profilesetting'])) {
- loadcache('profilesetting');
- }
- if (submitcheck('profilesubmit')) {
- $setarr = array();
- foreach ($_GET as $key => $value) {
- $field = $_G['cache']['profilesetting'][$key];
- if (empty($field)) {
- continue;
- } elseif (profile_check($key, $value, $space)) {
- $setarr[$key] = dhtmlspecialchars(trim($value));
- }
- }
- if (isset($_POST['birthmonth']) && ($space['birthmonth'] != $_POST['birthmonth'] || $space['birthday'] != $_POST['birthday'])) {
- $setarr['constellation'] = get_constellation($_POST['birthmonth'], $_POST['birthday']);
- }
- if (isset($_POST['birthyear']) && $space['birthyear'] != $_POST['birthyear']) {
- $setarr['zodiac'] = get_zodiac($_POST['birthyear']);
- }
-
- if ($setarr) {
- $setarr['uid'] = $uid;
- C::t('user_profile') -> insert($setarr);
- }
- showmessage('subscriber_data_alter_success', MOD_URL.'#user_' . $uid . '_profile', array());
- } else {
- $allowitems = array();
- foreach ($_G['cache']['profilesetting'] as $key => $value) {
- if ($value['available'] > 0)
- $allowitems[] = $key;
- }
- $htmls = $settings = array();
- foreach ($allowitems as $fieldid) {
- if (!in_array($fieldid, array('department', 'timeoffset'))) {
- $html = profile_setting($fieldid, $space, false, true);
- if ($html) {
- $settings[$fieldid] = $_G['cache']['profilesetting'][$fieldid];
- $htmls[$fieldid] = $html;
- }
- }
- }
- $active = array('profile' => 'class="active"');
-
- include template('profile');
- }
-
-}
-exit();
-?>
diff --git a/dzz/orguser/export.php b/dzz/orguser/export.php
deleted file mode 100644
index c11eee5..0000000
--- a/dzz/orguser/export.php
+++ /dev/null
@@ -1,183 +0,0 @@
-lang('compellation'),'email'=>lang('email'),'birth'=>lang('date_birth'),'gender'=>lang('gender'),'mobile'=>lang('cellphone'),'weixinid'=>lang('weixin'),'orgname'=>lang('category_department'),'job'=>lang('department_position'));
- $h1=getProfileForImport();
- $h0=array_merge($h0,$h1);
-$orgid=intval($_GET['orgid']);
-if(!submitcheck('exportsubmit')){
- $orgpath=C::t('organization')->getPathByOrgid($orgid);
- if(empty($orgpath)) $orgpath=lang('please_select_range_export');
-
- //默认选中
- $open=array();
- $patharr=getPathByOrgid($orgid);
- $arr=array_keys($patharr);
- array_pop($arr);
- $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('orgid'=>$open));
-
- include template('export');
- exit();
-}else{
- if(!is_array($_GET['item'])) showmessage('please_select_project_export',dreferer());
- foreach($h0 as $key=>$value){
- if(!in_array($key,$_GET['item'])) unset($h0[$key]);
- }
- $title='';
- if($org=C::t('organization')->fetch($orgid)){
- $orgids=getOrgidTree($org['orgid']);
- if($org['forgid']>0){
- $toporgid=C::t('organization')->getTopOrgid($orgid);
- $toporg=C::t('organization')->fetch($toporgid);
- $title=$_G['setting']['sitename'].'-'.$toporg['orgname'].'-'.$org['orgname'];
- }else{
- $title=$_G['setting']['sitename'].'-'.$org['orgname'];
- }
- }else{
- $title=$_G['setting']['sitename'];
- }
-
-
- $objPHPExcel = new PHPExcel();
- $objPHPExcel->getProperties()->setCreator($_G['username'])
- ->setTitle($title.' - '.lang('user_information_table').' - DzzOffice')
- ->setSubject($title.' - '.lang('user_information_table'))
- ->setDescription($title.' - '.lang('user_information_table').' Export By DzzOffice '.date('Y-m-d H:i:s'))
- ->setKeywords($title.' - '.lang('user_information_table'))
- ->setCategory(lang('user_information_table'));
- $list=array();
- // Create a first sheet
- $objPHPExcel->setActiveSheetIndex(0);
- $j=0;
- foreach($h0 as $key =>$value){
- $index=getColIndex($j).'1';
- $objPHPExcel->getActiveSheet()->setCellValue($index,$value);
- $list[1][$index]=$value;
- $j++;
- }
- $i=2;
- $wheresql=1;
- if($orgid){
- $uids=C::t('organization_user')->fetch_uids_by_orgid($orgids);
- $wheresql=" where uid IN (".dimplode($uids).")";
- }else{
- $wheresql=" where 1 ";
- }
-
- foreach(DB::fetch_all("select * from %t $wheresql",array('user')) as $user){
-
- $profile=C::t('user_profile')->fetch_all($user['uid']);
- if($profile) $value=array_merge($user,$profile[$user['uid']]);
- else $value=$user;
- if($value['birthyear'] && $value['birthmonth'] && $value['birthday']) $value['birth']=$value['birthyear'] .'-'. $value['birthmonth'] .'-'. $value['birthday'];
- if($value['gender']){
- if($value['gender']==2) $value['gender']=lang('woman');
- elseif($value['gender']==1) $value['gender']=lang('man');
- else $value['gender']='';
- }
- //获取用户的部门和职位
- if($orgids=C::t('organization_user')->fetch_orgids_by_uid($value['uid'])){
- $k=0;
- foreach($orgids as $key=> $gid){
- $orgpath=C::t('organization')->getPathByOrgid($gid);
- $value['orgname']=str_replace('-','/',$orgpath);
- if(empty($value['orgname'])) continue;
- if($job=DB::fetch_first("select j.name from %t u LEFT JOIN %t j ON u.jobid=j.jobid where u.orgid=%d and u.uid=%d",array('organization_user','organization_job',$gid,$user['uid']))) $value['job']=$job['name'];
- $j=0;
- foreach($h0 as $key1 =>$fieldid){
- $index=getColIndex($j).intval($i+$k);
- $objPHPExcel->getActiveSheet()->setCellValue($index,$value[$key1]);
- $j++;
- $list[$i+$k][$index]=$value[$key1];
- }
- $k++;
- }
- $i+=$k-1;
- }else{
- $j=0;
- foreach($h0 as $key1 =>$fieldid){
- $index=getColIndex($j).($i);
- $objPHPExcel->getActiveSheet()->setCellValue($index,$value[$key1]);
- $j++;
- $list[$i][$index]=$value[$key1];
- }
- }
- $i++;
- }
- $objPHPExcel->setActiveSheetIndex(0);
- $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
- $filename=$_G['setting']['attachdir'].'./cache/'.random(5).'.xlsx';
- $objWriter->save($filename);
-
-
- $name=$title.' - '.lang('user_information_table').'.xlsx';
- $name = '"'.(strtolower(CHARSET) == 'utf-8' && (strexists($_SERVER['HTTP_USER_AGENT'], 'MSIE') || strexists($_SERVER['HTTP_USER_AGENT'], 'rv:11')) ? urlencode($name) : $name).'"';
-
- $filesize=filesize($filename);
- $chunk = 10 * 1024 * 1024;
- if(!$fp = @fopen($filename, 'rb')) {
- exit(lang('export_failure'));
- }
- dheader('Date: '.gmdate('D, d M Y H:i:s', TIMESTAMP).' GMT');
- dheader('Last-Modified: '.gmdate('D, d M Y H:i:s', TIMESTAMP).' GMT');
- dheader('Content-Encoding: none');
- dheader('Content-Disposition: attachment; filename='.$name);
- dheader('Content-Type: application/octet-stream');
- dheader('Content-Length: '.$filesize);
- @ob_end_clean();if(getglobal('gzipcompress')) @ob_start('ob_gzhandler');
- while (!feof($fp)) {
- echo fread($fp, $chunk);
- @ob_flush(); // flush output
- @flush();
- }
- @unlink($filename);
- exit();
-}
-function getColIndex($index){
- $string="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
- $ret='';
- if($index>255) return '';
- for($i=0;$i $value){
- if(in_array($key,array('department','realname','gender','birthyear','birthmonth','birthday','constellation','zodiac'))) continue;
- elseif($value['formtype']=='file') continue;
- elseif($value['formtype']=='select' || $value['formtype']=='radio'){
- $ret[$key]=$value['title']/*.($value['choices']?'('.preg_replace("/[\r\n]/i",'|',$value['choices']).')':'')*/;
- }elseif( $value['formtype']=='checkbox'){
- $ret[$key]=$value['title']/*.($value['choices']?'('.preg_replace("/[\r\n]/i",'-',$value['choices']).')':'')*/;
- }else{
- $ret[$key]=$value['title'];
- }
- }
- return $ret;
-}
-?>
diff --git a/dzz/orguser/export_tmpl.php b/dzz/orguser/export_tmpl.php
deleted file mode 100644
index e6f46d1..0000000
--- a/dzz/orguser/export_tmpl.php
+++ /dev/null
@@ -1,96 +0,0 @@
-lang('compellation'),'email'=>lang('email'),'password'=>lang('user_login_password'),'birth'=>lang('date_birth'),'gender'=>lang('gender'),'mobile'=>lang('cellphone'),'weixinid'=>lang('weixin'),'orgname'=>lang('category_department'),'job'=>lang('department_position'));
- $h1=getProfileForImport();
- $h0=array_merge($h0,$h1);
- $title=lang('bulk_import_user_template');
- $objPHPExcel = new PHPExcel();
- $objPHPExcel->getProperties()->setCreator($_G['username'])
- ->setTitle($title.' - DzzOffice')
- ->setSubject($title)
- ->setDescription($title.' Export By DzzOffice '.date('Y-m-d H:i:s'))
- ->setKeywords($title)
- ->setCategory($title);
- $list=array();
- // Create a first sheet
- $objPHPExcel->setActiveSheetIndex(0);
- $j=0;
- foreach($h0 as $key =>$value){
- $index=getColIndex($j).'1';
- $objPHPExcel->getActiveSheet()->setCellValue($index,$value);
- if($key=='username' || $key=='email'){
- $objPHPExcel->getActiveSheet()->getStyle($index)->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED);
- }
- $list[1][$index]=$value;
- $j++;
- }
-
- $objPHPExcel->setActiveSheetIndex(0);
- $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
- $filename=$_G['setting']['attachdir'].'./cache/'.random(5).'.xlsx';
- $objWriter->save($filename);
-
-
- $name=$title.'.xlsx';
- $name = '"'.(strtolower(CHARSET) == 'utf-8' && (strexists($_SERVER['HTTP_USER_AGENT'], 'MSIE') || strexists($_SERVER['HTTP_USER_AGENT'], 'rv:11')) ? urlencode($name) : $name).'"';
-
- $filesize=filesize($filename);
- $chunk = 10 * 1024 * 1024;
- if(!$fp = @fopen($filename, 'rb')) {
- exit(lang('export_failure'));
- }
- dheader('Date: '.gmdate('D, d M Y H:i:s', TIMESTAMP).' GMT');
- dheader('Last-Modified: '.gmdate('D, d M Y H:i:s', TIMESTAMP).' GMT');
- dheader('Content-Encoding: none');
- dheader('Content-Disposition: attachment; filename='.$name);
- dheader('Content-Type: application/octet-stream');
- dheader('Content-Length: '.$filesize);
- @ob_end_clean();if(getglobal('gzipcompress')) @ob_start('ob_gzhandler');
- while (!feof($fp)) {
- echo fread($fp, $chunk);
- @ob_flush(); // flush output
- @flush();
- }
- @unlink($filename);
- exit();
-
-function getColIndex($index){
- $string="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
- $ret='';
- if($index>255) return '';
- for($i=0;$i $value){
- if(in_array($key,array('department','realname','gender','birthyear','birthmonth','birthday','constellation','zodiac'))) continue;
- elseif($value['formtype']=='file') continue;
- elseif($value['formtype']=='select' || $value['formtype']=='radio'){
- $ret[$key]=$value['title']/*.($value['choices']?'('.preg_replace("/[\r\n]/i",'|',$value['choices']).')':'')*/;
- }elseif( $value['formtype']=='checkbox'){
- $ret[$key]=$value['title']/*.($value['choices']?'('.preg_replace("/[\r\n]/i",'-',$value['choices']).')':'')*/;
- }else{
- $ret[$key]=$value['title'];
- }
- }
- return $ret;
-}
-?>
diff --git a/dzz/orguser/images/add_guide.png b/dzz/orguser/images/add_guide.png
deleted file mode 100644
index 359b8b3..0000000
Binary files a/dzz/orguser/images/add_guide.png and /dev/null differ
diff --git a/dzz/orguser/images/ctrl.png b/dzz/orguser/images/ctrl.png
deleted file mode 100644
index d95c7c1..0000000
Binary files a/dzz/orguser/images/ctrl.png and /dev/null differ
diff --git a/dzz/orguser/images/icons.png b/dzz/orguser/images/icons.png
deleted file mode 100644
index 6238dc9..0000000
Binary files a/dzz/orguser/images/icons.png and /dev/null differ
diff --git a/dzz/orguser/images/icons_24.png b/dzz/orguser/images/icons_24.png
deleted file mode 100644
index af6285e..0000000
Binary files a/dzz/orguser/images/icons_24.png and /dev/null differ
diff --git a/dzz/orguser/images/orguser.css b/dzz/orguser/images/orguser.css
deleted file mode 100644
index f152c73..0000000
--- a/dzz/orguser/images/orguser.css
+++ /dev/null
@@ -1,305 +0,0 @@
-.news {
- width: 100%;
- margin-bottom: 20px;
- box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%);
- border: 1px solid #ebeef5;
- border-radius: var(--radius);
- padding: 20px;
- display: flex;
-}
-.form-horizontal-left .form-control{
- width: 100%
-}
-.bs-main-container{
- padding:0;
-}
-.jstree-root{
- padding:5px 0 0 10px;
- line-height:24px;
-}
-.classtree-topbar{
- position:relative;
- bottom:0px;
- left:0px;
- border-bottom:1px solid #D2D2D2;
- border-top:1px solid #FFF;
- padding:7px 10px 3px 10px;
-}
-
-.classtree-topbar a{
- display:inline-block;
- width:24px;
- height:24px;
- background-image:url(icons_24.png);
- _filter: Alpha(opacity=70);
- opacity: 0.7;
-}
-.classtree-topbar .newdir{
- background-position:0 0;
-}
-.classtree-topbar .newdir_1{
- background-position:0 -24px;
-}
-.classtree-topbar .newdoc{
- background-position:0 -48px;
-}
-.classtree-topbar .import{
- background-position:0 -72px;
-}
-.classtree-topbar .search{
- background-position:0 -96px;
-}
-.classtree-topbar .guide{
- background-position:0 -120px;
-}
-.classtree-topbar a:hover{
- _filter: Alpha(opacity=100);
- opacity: 1;
-}
-.classtree-topbar a:active{
-
-}
-
-.classtree-search{
- position:absolute;
- left:0;
- top:0;
- width:100%;
- height:39px;
- display:none;
-}
-.classtree-search input.form-control{
- padding:5px 50px 5px 5px;
- height:100%;
- border:0;
-}
-.classtree-search .form-control:focus{
- box-shadow:none;
-}
-.classtree-search>a{
- position:absolute;
- line-height: 40px;
- width: 25px;
- text-align: center;
-}
-.classtree-search>a:hover{
- background-color:#F1f1f1;
-}
-.classtree-search .search{
- position:absolute;
- right:25px;
- top:0px;
-}
-.classtree-search .delete{
- position:absolute;
- right:0;
- top:0;
-}
-/*重定义图标*/
-
-.jstree-default .jstree-icon:empty {
- font-size: 22px;
-}
-.jstree-default-large .jstree-icon:empty{
- width: 24px;
- height: 24px;
- border-radius: 50%;
-}
-.jstree-default .jstree-icon {
- width: 24px;
- height: 24px;
- border-radius: 50%;
-}
-.jstree-default .jstree-icon.jstree-themeicon-custom{
- margin-top:5px;
-}
-.jstree-default .jstree-icon.jstree-themeicon-custom.dzz{
- margin-top:-2px;
-}
-.moderators-container .user-item{
- padding:10px;width:120px;position:relative;height:180px;
-}
-.moderators-container .user-item .delete{
- display:none;
- position:absolute;top:5px;right:5px;width:24px;height:24px;
- cursor:pointer;
- z-index:100;
-
-}
-.moderators-container .user-item.hover .delete{
- display:block;
-}
-.moderators-container .user-item-avatar{
-
- width:100px;height:100px;
-
-}
-
-.moderators-container .user-item .avatar-cover{
- width:100px;height:100px;
- position:absolute;
- left:10px;
- top:10px;
- background:url(user_bg.png) no-repeat;
- z-index:10;
-
-}
-.ie8 .moderators-container .user-item .avatar-cover{
- display:none;
-}
-.moderators-container .user-item-avatar .avatar-face{
- width:90px;height:90px;margin:5px
-
-}
-.moderators-container .user-item-avatar img{
- width:100%;
- height:100%;
- border-radius:50%;
-}
-.moderators-container .moderators-acceptor{
- padding:10px;width:227px;height:170px;position:relative;
- margin-top:10px;
- background:url(add_guide.png) no-repeat;
-}
-.moderators-container .moderators-acceptor .avatar-cover{
- left:25px;
- top:0px;
- display:none;
- width:100px;height:100px;
- position:absolute;
- background:url(user_bg.png) no-repeat;
- z-index:10;
-}
-.moderators-container .moderators-acceptor .user-item-avatar{
- margin:-10px 0 0 15px;
- display:none;
-
-
-
-}
-.moderators-container .moderators-acceptor.hover .user-item-avatar,.moderators-container .moderators-acceptor.hover .avatar-cover {
- display:block;
-}
-.main-body{
- border-top:1px solid #FFF;
-}
-.group-head li{
- float: left;
- list-style: none;
-}
-.head-portrait {
- margin-right: 10px;
- border: 1px solid transparent;
- border-radius: 3px;
- position: relative;
- margin-bottom: 0;
-}
-.head-portrait img, .head-file img, .head-file input {
- width: 100%;
- height: 100%;
- border-radius: 50%;
-}
-.head-file {
- position: relative;
-}
-.head-file input {
- position: absolute;
- top: 0;
- left: 0;
- opacity: 0;
-}
-textarea{
- resize: none;
-}
-.setting-img {
- height: 150px;
-}
-.setting-img img {
- width: 100%;
- height: 100%;
-}
-.upload-click {
- position: absolute;
- top: 0;
- bottom: 0;
- width: 100%;
- color: #fff;
- line-height: 150px;
- text-align: center;
- font-size: 18px;
- letter-spacing: 2px;
-}
-#exampleInputFile {
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- width: 100%;
- opacity: 0;
-}
-.head-checkbox{
- display: none;
- position: absolute;
- left:1px;
- top:0;
- width:100%;
- height:100%;
-}
-.head-portrait:hover {
- border: 1px solid #2196f3;
-}
-.group-head .head-checkbox .checkbox-custom {
- height:100%;
- margin: 0px;
-}
-.group-head .head-checkbox .checkbox-custom label{
- vertical-align: text-top;
-}
-.headFirstWord{
- display: inline-block;
- width: 50px;
- height: 50px;
- text-align: center;
- line-height: 50px;
- font-size: 18px;
-}
-.head-portrait:hover .head-checkbox {
- display: block;
-}
-.group-head{
- overflow: hidden;
- padding: 0;
-}
-.head-portrait .hover{
- display: block;
-}
-.has-warning .form-control {
-border-color: #ff3203;
-box-shadow: inset 0 0px 0px rgba(0,0,0,.075);
-}
-kbd{
- background-color: transparent;color: #ff3203;font-size: 100%;-webkit-box-shadow:inset 0 0 0 rgba(0,0,0,.25);box-shadow:inset 0 0 0 rgba(0,0,0,.25);
-}
-.head-portrait .iconFirstWord{
- width: 40px;
- height: 40px;
- border-radius: 50%;
- display: inline-block;
- line-height: 40px;
- text-align: center;
- margin-right: 2px;
- color: #FFFFFF;
- font-size:24px;
-}
-.iconFirstWord {
- width: 24px;
- height: 24px;
- border-radius: 50%;
- display: inline-block;
- line-height: 24px;
- text-align: center;
- margin-right: 2px;
- color: #FFFFFF;
- font-size:14px;
-}
\ No newline at end of file
diff --git a/dzz/orguser/images/user_bg.png b/dzz/orguser/images/user_bg.png
deleted file mode 100644
index 5529836..0000000
Binary files a/dzz/orguser/images/user_bg.png and /dev/null differ
diff --git a/dzz/orguser/import.php b/dzz/orguser/import.php
deleted file mode 100644
index e649191..0000000
--- a/dzz/orguser/import.php
+++ /dev/null
@@ -1,462 +0,0 @@
-lang('name_email_empty'))));
- if(!isemail($email)) exit(json_encode(array('error'=>'email'.lang('format_error'))));
-
- $isappend=intval($_GET['append']);
- /*
- if($sendmail){ //随机密码时重新设置密码为随机数;
- $_GET['password']=random(8);
- }*/
- $exist=0;
-
- //检查用户是否已经存在
- if(($user=C::t('user')->fetch_by_email($email)) || ($user=C::t('user')->fetch_by_username($_GET['username']))){//用户已经存在时
- $uid=$user['uid'];
- $exist=1;
- if($isfounder=C::t('user')->checkfounder($user)) $isappend=1;//创始人不支持覆盖导入
- if($isappend){//增量添加,如果原先没有nickname,增加
- $sitename=$_G['setting']['sitename'];
- $appendfield=array();
-
- if($_GET['mobile'] && empty($user['phone'])){
- if(!preg_match("/^\d+$/",$_GET['mobile'])){
- exit(json_encode(array('error'=>lang('phone_number_illegal'))));
- }
- if(C::t('user')->fetch_by_phone($_GET['mobile']) ) {
- exit(json_encode(array('error'=>lang('user_phone_exist'))));
- }
- $appendfield['phone']=$_GET['mobile'];
-
- }
- if($_GET['weixinid'] && empty($user['weixinid'])){
- if(!preg_match("/^[a-zA-Z\d_]{5,}$/i",$_GET['weixinid'])){
- exit(json_encode(array('error'=>lang('weixin_illegal'))));
- }
- if(C::t('user')->fetch_by_weixinid($_GET['weixinid']) ) {
- exit(json_encode(array('error'=>lang('weixin_exist'))));
- }
- $appendfield['weixinid']=$_GET['weixinid'];
- }
- if($appendfield) C::t('user')->update($uid,$appendfield);
- }else{ //覆盖导入时,覆盖用户的姓名和密码
- $sitename=$_G['setting']['sitename'];
- $salt=substr(uniqid(rand()), -6);
- if(!check_username($_GET['username'])) exit(json_encode(array('error'=>lang('user_name_sensitive'))));
- $setarr=array('username'=>$_GET['username'],
- 'password'=>md5(md5($_GET['password']).$salt),
- 'salt'=>$salt
- );
-
- if($_GET['mobile'] && $_GET['mobile']!=$user['phone']){
- if(!preg_match("/^\d+$/",$_GET['mobile'])){
- exit(json_encode(array('error'=>lang('phone_number_illegal'))));
- }
- if(C::t('user')->fetch_by_phone($_GET['mobile']) ) {
- exit(json_encode(array('error'=>lang('user_phone_exist'))));
- }
- $setarr['phone']=$_GET['mobile'];
-
- }
- if($_GET['weixinid'] && $_GET['weixinid']!=$user['weixinid']){
- if(!preg_match("/^[a-zA-Z\d_]{5,}$/i",$_GET['weixinid'])){
- exit(json_encode(array('error'=>lang('weixin_illegal'))));
- }
- if(C::t('user')->fetch_by_weixinid($_GET['weixinid']) ) {
- exit(json_encode(array('error'=>lang('weixin_exist'))));
- }
- $setarr['weixinid']=$_GET['weixinid'];
- }
- C::t('user')->update($uid,$setarr);
- if($sendmail){ //发送密码到用户邮箱,延时发送
- $email_password_message = <<尊敬的用户$member[username],您好!
- 您收到这封邮件,是由于 $sitename 的管理员编辑成员信息时使用了这个邮箱地址。如果您不知道 $sitename 请忽略这封邮件。您不需要退订或进行其他进一步的操作。
- 登录帐号和密码
- 登录帐号:$email
- 登录密码:$_GET[password]
- 感谢您的访问,祝您使用愉快!
-EOT;
-
- if(!sendmail_cron("$_GET[username] <$email>", lang('email_password_subject'), $email_password_message)) {
- runlog('sendmail', "$email 发送失败");
- }
- }
- }
- }else{ //新添用户
- if(!check_username($_GET['username'])) exit(json_encode(array('error'=>lang('user_name_sensitive'))));
-
-
- $user=uc_add_user($_GET['username'], $_GET['password'], $email);
-
- $uid=$user['uid'];
- if($uid<1) exit(json_encode(array('error'=>lang('import_failure'))));
- $base = array(
- 'uid' => $uid,
- 'adminid' => 0,
- 'groupid' =>9,
- 'regdate' => TIMESTAMP,
- 'emailstatus' => 1,
- );
- if($_GET['mobile']){
- if(!preg_match("/^\d+$/",$_GET['mobile'])){
- }elseif(C::t('user')->fetch_by_phone($_GET['mobile']) ) {
- }else{
- $base['phone']=$_GET['mobile'];
- }
- }
- if($_GET['weixinid']){
- if(!preg_match("/^[a-zA-Z\d_]{5,}$/i",$_GET['weixinid'])){
- }elseif(C::t('user')->fetch_by_weixinid($_GET['weixinid'])) {
- }else{
- $base['weixinid']=$_GET['weixinid'];
- }
- }
- $sitename=$_G['setting']['sitename'];
- C::t('user')->update($uid,$base);
- if($sendmail){ //发送密码到用户邮箱,延时发送
- $email_password_message = <<尊敬的用户$member[username],您好!
- 您收到这封邮件,是由于 $sitename 的管理员添加成员时使用了这个邮箱地址。如果您不知道 $sitename 请忽略这封邮件。您不需要退订或进行其他进一步的操作。
- 登录帐号和密码
- 登录帐号:$email
- 登录密码:$_GET[password]
- 感谢您的访问,祝您使用愉快!
-EOT;
-
- if(!sendmail_cron("$_GET[username] <$email>", lang('email_password_subject'), $email_password_message)) {
- runlog('sendmail', "$email 发送失败");
- }
- }
- }
- //处理用户资料
- $_GET['gender']=trim($_GET['gender']);
- $_GET['birth']=trim($_GET['birth']);
- $_GET['telephone']=trim($_GET['telephone']);
- //$_GET['mobile']=trim($_GET['mobile']);
-
- if($exist && $isappend){ //增量时
- $oldprofile=C::t('user_profile')->fetch($uid);
- $profile=array();
- if(!empty($_GET['birth']) && empty($oldprofile['birthyear'])){
- $birth=strtotime($_GET['birth']);
- if($birth0){
- $arr=getdate($birth);
- $profile['birthyear']=$arr['year'];
- $profile['birthmonth']=$arr['mon'];
- $profile['birthday']=$arr['mday'];
- }
- }
- if(!empty($_GET['gender']) && empty($oldprofile['gender'])){
- if($_GET['gender']==lang('man')) $profile['gender']=1;
- elseif($_GET['gender']==lang('woman')) $profile['gender']=2;
- else $profile['gender']=0;
- }
-
- if(!empty($_GET['telephone']) && empty($oldprofile['telephone'])){
- $profile['telephone']=$_GET['telephone'];
- }
- foreach($_GET as $key=>$value){
- if(!empty($_GET[$key]) && empty($oldprofile[$key])){
- if(checkprofile($key,$value)) $profile[$key]=$value;
- }
- }
-
- if($profile){
- $profile['uid']=$uid;
- C::t('user_profile')->insert($profile);
- }
- }else{
- $profile=array();
- if(!empty($_GET['birth'])){
- $birth=strtotime(trim($_GET['birth']));
- if($birth0){
- $arr=getdate($birth);
- $profile['birthyear']=$arr['year'];
- $profile['birthmonth']=$arr['mon'];
- $profile['birthday']=$arr['mday'];
- }
- }
- if(!empty($_GET['gender'])){
- if($_GET['gender']==lang('man')) $profile['gender']=1;
- elseif($_GET['gender']==lang('woman')) $profile['gender']=2;
- else $profile['gender']=0;
- }
-
- if(!empty($_GET['telephone'])){
- $profile['telephone']=$_GET['telephone'];
- }
-
- foreach($_GET as $key=>$value){
- if(checkprofile($key,$value)) $profile[$key]=$value;
- }
-
- $profile['uid']=$uid;
-
- C::t('user_profile')->insert($profile);
-
- //插入用户状态表
- $status = array(
- 'uid' => $uid,
- 'regip' => '',
- 'lastip' => '',
- 'lastvisit' => TIMESTAMP,
- 'lastactivity' => TIMESTAMP,
- 'lastsendmail' => 0
- );
- C::t('user_status')->insert($status, false, true);
- }
- //处理部门和职位
- $orgid=intval($_GET['orgid']);
-
- $_GET['orgname']=!empty($_GET['orgname'])?explode('/',$_GET['orgname']):array();
- $_GET['job']=!empty($_GET['job'])?explode('/',$_GET['job']):array();
-
- //创建机构和部门
- foreach($_GET['orgname'] as $key => $orgname){
- if(empty($orgname)) continue;
- if($porgid=DB::result_first("select orgid from %t where forgid=%d and orgname=%s",array('organization',$orgid,$orgname))){
- $orgid=$porgid;
- }else{
- $setarr=array('forgid'=>$orgid,
- 'orgname'=>$orgname,
- 'fid'=>0,
- 'disp'=>100,
- 'indesk'=>0,
- 'dateline'=>TIMESTAMP,
- );
- if($porgid=C::t('organization')->insert_by_orgid($setarr)){
- $orgid=$porgid;
- }
- }
- }
-
- //用户加入机构
- if($isappend){//增量导入时
- C::t('organization_user')->insert_by_orgid($orgid,$uid);
- }else{
- C::t('organization_user')->delete_by_uid($uid,0);
- C::t('organization_user')->insert_by_orgid($orgid,$uid);
- }
- if($orgid){
- foreach($_GET['job'] as $key =>$jobname){ //处理职位
- $jobid=0;
- if($pjobid=DB::result_first("select jobid from %t where orgid=%d and name=%s",array('organization_job',$orgid,$jobname))){
- $jobid=$pjobid;
- }else{
- $setarr=array('orgid'=>$orgid,
- 'name'=>$_GET['job'][$key],
- 'dateline'=>TIMESTAMP,
- 'opuid'=>$_G['uid']
- );
- if($pjobid=C::t('organization_job')->insert($setarr,1)){
- $jobid=$pjobid;
- }
- }
- if($jobid){
- if($isappend){//增量导入时
- if(!DB::result_first("select COUNT(*) from %t where uid=%d and orgid=%d and jobid>0 ",array('organization_user',$uid,$orgid))){
- DB::update('organization_user',array('jobid'=>$jobid),"uid='{$uid}' and orgid='{$orgid}'");
- }
- }else{//覆盖导入时
- DB::update('organization_user',array('jobid'=>$jobid),"uid='{$uid}' and orgid='{$orgid}'");
- }
- }
- }
- }
- exit(json_encode(array('msg'=>'success')));
-}elseif($do=='list'){
- require_once DZZ_ROOT.'./core/class/class_PHPExcel.php';
- $inputFileName = $_G['setting']['attachdir'].$_GET['file'];
- if(!is_file($inputFileName)){
- showmessage('orguser_import_user_table',MOD_URL.'&op=import');
- }
- $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
- $objReader = PHPExcel_IOFactory::createReader($inputFileType);
- $objPHPExcel = $objReader->load($inputFileName);
- $sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
- //获取导入数据的字段
- $h0=array('username'=>lang('compellation'),'email'=>lang('email'),'nickname'=>lang('username'),'birth'=>lang('date_birth'),'gender'=>lang('gender'),'mobile'=>lang('cellphone'),'weixinid'=>lang('weixin'),'orgname'=>lang('category_department'),'job'=>lang('department_position'),'password'=>lang('user_login_password'));
- $h1=getProfileForImport();
- $h0=array_merge($h0,$h1);
- //获取可导入的用户资料
- $h=array();
- foreach($sheetData[1] as $key =>$value){
- $value=trim($value);
- foreach($h0 as $fieldid=>$title){
- if($title==$value){
- $h[$key]=$fieldid;
- break;
- }
- }
- }
-
- if(!in_array('username',$h)){
- showmessage('lack_required_fields_name');
- }elseif(!in_array('email',$h) && !in_array('username',$h)){
- showmessage('lack_required_fields_name_email');
- }
- if(!in_array('email',$h)){
- $h=array_merge(array('_'=>'email'),$h);
- }
- $list=array();
- foreach($sheetData as $key=> $value){
- if($key<=1) continue;
- $temp=array();
- foreach($value as $col =>$val){
- if(trim($val)=='') continue;
- if($h[$col]=='orgname'){
- $temp[$h[$col]][]=$val;
- }elseif($h[$col]=='job'){
- $temp[$h[$col]][]=$val;
- }elseif($key1=='birth'){
- $arr=explode('-',$value[$value1]);
- if(count($arr)==3){
- $temp[$key1]=dgmdate(strtotime($arr[2].'-'.$arr[0].'-'.$arr[1]),'Y-m-d');
- }else{
- $temp[$key1]=$val;
- }
- }else{
- if($h[$col]) $temp[$h[$col]]=$val;
- }
- }
- if(empty($temp['email'])) $temp['email']=random(10,true).'@163.com';
- if(isset($list[$temp['email']])){
- foreach($h as $key1 => $value1){
- if(!empty($temp[$key1])){
- $list[$temp['email']][$key1]=$temp[$key1];
- }
- }
- }else{
- if($temp) $list[$temp['email']]=$temp;
- }
- }
- $h=array_unique($h);
- $orgpath=C::t('organization')->getPathByOrgid($orgid);
- if(empty($orgpath)) $orgpath=lang('choose_import_agency_department');
-
- //默认选中
- $open=array();
- $patharr=getPathByOrgid($orgid);
- $arr=(array_keys($patharr));
- array_pop($arr);
- $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('orgid'=>$open));
- include template('import_list');
-}else{
- if(submitcheck('importfilesubmit')){
- if($_FILES['importfile']['tmp_name']){
- $allowext=array('xls','xlsx');
- $ext=strtolower(substr(strrchr($_FILES['importfile']['name'], '.'), 1, 10));
- if(!in_array($ext,$allowext)) showmessage('orguser_import_xls_xlsx',dreferer());
- if($file=uploadtolocal($_FILES['importfile'],'cache','',array('xls','xlsx'))){
- $url=outputurl($_G['siteurl'].MOD_URL.'&op=import&do=list&file='.urlencode($file));
- @header("Location: $url");
- exit();
- showmessage('orguser_import_user_message',outputurl($_G['siteurl'].MOD_URL.'&op=import&do=list&file='.urlencode($file)));
- }else{
- showmessage('orguser_import_tautology',dreferer());
- }
- }else{
- showmessage('orguser_import_user_message_table',dreferer());
- }
- }else{
-
- include template('import_guide');
- }
-}
-function checkprofile($fieldid,&$value){
- global $_G;
- if(empty($_G['cache']['profilesetting'])) {
- loadcache('profilesetting');
- }
- $field = $_G['cache']['profilesetting'][$fieldid];
- if(empty($field) || in_array($fieldid, array('department','realname','gender','birthyear','birthmonth','birthday','birth','constellation','zodiac','email','nickname','password','orgname','job','username'))) {
- return false;
- }
-
- if($field['choices']) {
- $field['choices'] = explode("\n", $field['choices']);
- }
- if($field['formtype'] == 'text' || $field['formtype'] == 'textarea') {
- $value = getstr($value);
- if($field['size'] && strlen($value) > $field['size']) {
- return false;
- } else {
- $field['validate'] = !empty($field['validate']) ? $field['validate'] : ($_G['profilevalidate'][$fieldid] ? $_G['profilevalidate'][$fieldid] : '');
- if($field['validate'] && !preg_match($field['validate'], $value)) {
- return false;
- }
- }
- } elseif($field['formtype'] == 'checkbox' || $field['formtype'] == 'list') {
- $arr = array();
- $value=explode('\n',$value);
- foreach ($value as $op) {
- if(in_array(trim($op), trim($field['choices']))) {
- $arr[] = trim($op);
- }
- }
- $value = implode("\n", $arr);
- if($field['size'] && count($arr) > $field['size']) {
- return false;
- }
- } elseif($field['formtype'] == 'radio' || $field['formtype'] == 'select') {
- if(!in_array($value, $field['choices'])){
- return false;
- }
- }
- return true;
-
-}
-function getProfileForImport(){
- global $_G;
- if(empty($_G['cache']['profilesetting'])) {
- loadcache('profilesetting');
- }
- $profilesetting=$_G['cache']['profilesetting'];
- $ret=array();
- foreach($profilesetting as $key=> $value){
- if(in_array($key,array('department','realname','gender','birthyear','birthmonth','birthday','constellation','zodiac'))) continue;
- elseif($value['formtype']=='file') continue;
- elseif($value['formtype']=='select' || $value['formtype']=='radio'){
- $ret[$key]=$value['title']/*.($value['choices']?'('.preg_replace("/[\r\n]/i",'|',$value['choices']).')':'')*/;
- }elseif( $value['formtype']=='checkbox'){
- $ret[$key]=$value['title']/*.($value['choices']?'('.preg_replace("/[\r\n]/i",'-',$value['choices']).')':'')*/;
- }else{
- $ret[$key]=$value['title'];
- }
- }
- return $ret;
-}
-
-?>
diff --git a/dzz/orguser/index.php b/dzz/orguser/index.php
deleted file mode 100644
index 9907268..0000000
--- a/dzz/orguser/index.php
+++ /dev/null
@@ -1,30 +0,0 @@
- fetch_orgids_by_uid($_G['uid']);
- foreach ($orgids as $orgid) {
- $arr = C::t('organization')->fetch_parent_by_orgid($orgid, true);
- $count = count($arr);
- if ($orgtree[$arr[$count - 1]]) {
- if (count($orgtree[$arr[$count - 1]]) > $count)
- $orgtree[$arr[count($arr) - 1]] = $arr;
- } else {
- $orgtree[$arr[$count - 1]] = $arr;
- }
- }
-}
-$orgtree = json_encode($orgtree);
-include template('main');
-?>
diff --git a/dzz/orguser/language/en-US/lang.php b/dzz/orguser/language/en-US/lang.php
deleted file mode 100644
index 25cf9d6..0000000
--- a/dzz/orguser/language/en-US/lang.php
+++ /dev/null
@@ -1,164 +0,0 @@
- 'Institutional users',
- 'explorer_gropuperm'=>array(
- 'Collaborative member ',
- 'Administrator ',
- 'The Founder'
- ),
- 'orgname'=>' Organization name',
- 'orgname_placeholder'=>' Enter the institution name ',
- 'change' => 'change',
- 'org_description' => 'introduction',
- 'org_description_placeholder'=>' Enter brief description of institutions ',
- 'org_space_assign'=>' assign space size ',
- 'org_space_assign_tip'=>' maximum available space that can be allocated ',
- 'org_space_assign_tips'=>' Unit m, left blank or 0 means no limit, - 1 means no space limit the amount of space that can be used by the whole organization or department (including all subordinate departments) (the total amount of space used by all departments under the organization cannot exceed this limit) the space allocated by a department can only be divided from the available space of the superior department; Once allocated, the remaining space of the superior department will be reduced accordingly, regardless of whether the allocated space is actually used up ',
- 'space_use_department'=>' department space usage ',
- 'space_use_org'=>' total organization space usage ',
- 'space_use_org_tips'=>'Limit the space available to the entire organization or department (including all subordinate departments). the space allocated by subordinate departments will be allocated from the available space of superior departments ',
- 'org_update_success'=>' Update data successfully, will jump for you in 3 seconds ',
- 'org_img_uploaded_tip'=>' The image has been uploaded, just check it ',
- 'clicktoupload'=>' clicktoupload',
- // admin/orguser/tree.html
- 'orguser_tree_delete'=>' Are you sure you want to delete this user completely (all of the user’s data and files will be completely deleted)? ',
- 'orguser_tree_permission_delete'=>' Delete this user, only remove this user from the department, you may not have permission to operate this user after removal, are you sure you want to remove this user? ',
- 'orguser_tree_batch_delete'=>' Organizations or departments do not support batch deletion ',
- 'orguser_tree_all_delete'=>' Before deleting a department, you must delete all subordinate departments of this department and delete files in the shared directory. Are you sure you want to delete this department? ',
- // admin/orguser/ajax.php
- 'orguser_ajax_delete'=>' The user in the organization or department cannot be completely deleted, please delete from the organization or department first and try again ',
- 'no_parallelism_jurisdiction'=>' no jurisdiction of the corresponding department ',
- // admin/orguser/edituser.php
- 'orguser_edituser_add_user'=>' sorry! You do not have permission to add users under this organization or department you can select the Department with permission on the left, and then try to add
',
- 'orguser_edituser_add_user1'=>' sorry! You do not have administrative rights for this user you can select the user with permission management on the left side, and then retry adding
',
- // admin/orguser/import.php
- 'orguser_import_user'=>' No permission, only system administrators can import users ',
- 'orguser_import_user_table'=>' Staff information table upload failed, please re-upload ',
- 'orguser_import_xls_xlsx'=>' only XLS, XLSX files can be imported ',
- 'orguser_import_user_message'=>' Staff information table uploaded successfully, going to import page ',
- 'orguser_import_tautology'=>' Failed to upload info table, please try again later ',
- 'orguser_import_user_message_table'=>' Please select the Personnel information table',
- // admin/orguser/vidw.php
- 'orguser_vidw_delete'=>'i’m sorry! You don’t have the administrative authority of this department! You can select the Department with permission management on the left
',
- // admin/orguser/detail_org.html
- 'export_excl'=>' Export all users of this department to an excL file ',
- 'detail_org_no_enable'=>' If not enabled, all subordinate departments will not be able to use the shared directory; The shared directory is displayed on the enterprise disk only after this function is enabled. ',
- 'detail_org_explorerapp_enable'=>' When enabled, the organization or department directory can be used in applications such as web disk. ',
- 'detail_org_enable'=>' The shared directory of this department will be displayed in the enterprise disk organization only after the "detail_org_enable" function is enabled. ',
- 'detail_org_creation'=>' When the detail_org_creation shortcut is created, the member desktop will have the shortcut by default. ',
- 'group_org_no_enable'=>' After this function is enabled, Resource Manager will display the organization group option. ',
- 'group_org_enable'=>' If not enabled, resource Manager will not display the organization group option. ',
- 'detail_org_administrator'=>' Note:
- Authority of institution administrator: set administrators of all departments under the institution, manage all personnel in the institution, and manage all shared directories of the institution
- Department Administrator permissions: set administrators of all sub departments under the Department, manage all personnel in the Department, and manage all shared directories of the Department ',
- 'Select organization to set organization information'=>' Select organization to set organization information',
- 'Select department to set department information'=>' Select department to set department information',
- 'Select personnel to set personnel information'=>' Select personnel to set personnel information',
- 'Personnel, departments and institutions can directly drag and move to change positions. Move refers to changing the Department to which the person belongs, and Changing the superior organization or department of the department.'=>' People, departments, and organizations can be dragged and moved to change positions. The movement is to change the department of the personnel, and change the superior organization or superior department of the department. ',
- 'Hold' => 'Hold',
- 'Key to move personnel or departments to copy. It is used to join personnel to multiple departments at the same time.'=>'Key to move people or departments for replication. Add people to multiple departments at the same time.',
- 'Key can be used for multiple selections, and release after multiple selections'=>'Key can be multi - selected, multi - selected after release',
- 'Key movement is batch movement. Do not loosen'=>' Key to move for batch Loosen. Don’t loosen ',
- 'Right click departments, institutions and personnel to open the right-click menu. There are corresponding more operations in the Menu.'=>' Right-click the department, organization, or personnel to display the right-click menu. There are more operations in the menu. ',
- 'Delete user description'=>' Delete user description',
- 'Deleting users from all institutions or departments is only removing users from their own institutions or departments. Users can no longer have all the use rights of their own institutions or departments. It is not deleting users from the system.'=>'If a user is deleted from an organization or department, the user cannot have all the permission to use the organization or department. This does not mean the user is deleted from the system.',
- 'When the system administrator deletes the user from the "list of non institutional users", the user will be completely deleted in the system, and all system data and saved files of the user will be deleted. Please use it cautiously by the administrator, and delete it after confirming that the member is to be deleted.'=>'If the system administrator deletes a user from the User List, the user will be completely deleted from the system, and all system data and saved files of the user will be deleted. Use caution before deleting a member.',
- 'Key to move to batch copy.'=>' Key to move to batch copy. ',
- 'Organization management instructions'=>' Organization Management instructions',
- 'inport_guide_download'=>' Download the person information import template ',
- 'inport_guide_template'=>' template items will be automatically generated based on the number of user profile items ',
- 'inport_guide_user.'=>' Edit the required personnel information table according to the template. ',
- 'inport_guide_step'=>' Step 3: Select Excel ',
- 'inport_guide_layout'=>' Select the edited staff layout, support. XLS,. XLSX format ',
- 'inport_guide_notice'=>' Edit staff information sheet notes ',
- 'inport_guide_notice_text'=>'1. Edit the personnel information to be imported according to the template fields. If there is already a file information table, you only need to change the name of the relevant field in the existing file information table to be consistent with the name provided in the template. As long as the name corresponds, the position of the field does not affect the result
- 2. The "user name" field in the template is required, and other fields can be filled in as required
- 3. The information in the mailbox and user name fields in the table must be unique and cannot be duplicate. If the mailbox is empty, the system will randomly generate the mailbox address when importing
- 4. Multi level department creation: Method 1: add multiple columns of "subordinate departments" to the table. From left to right, they are level-1 departments, level-2 departments and level-3 departments. The system will create departments, subordinate departments and lower subordinate departments according to the principle from left to right. Method 2: use a single column in the table, and the superior and subordinate departments use "/" to divide (for example, primary school / grade 1 / class 1)
- 5. Importing users can only import by organization. Multiple organizations need to be imported in batches
- 6. The "login password" field in the table can be blank, and administrators can set unified passwords for users in batches when importing. The user can modify the unified password after logging in
- 7. There are two import methods in the import interface: incremental and overwrite. Incremental method: when encountering the same user, only the missing field information of the user will be added, and the original information will not change. (for example, there is a user a in the system with a password of 123. In the batch import table, there is also a user a, whose unified password is set to ABC when importing. After importing, the passwords of other users are all ABC, and the original user a still keeps his original password, 123.) Overwrite import: completely replace the original user information in the system with the information in the table
- 8. If there are many people to import, it is recommended to make a test table for a small number of people first, and then import all users in an incremental way after the test is correct ',
- 'import_list_organization'=>' select the organization to import. If no organization is imported, a new organization and department will be generated according to the Department in the user information table. If no organization is imported, it will be directly imported to "personnel without organization ',
- 'import_list_password'=>' default user password. When the login password item is not set, the password set here will be used as the password of the newly imported user ',
- 'import_list_coverage'=>' incremental import method: the newly imported user information is intelligently added to the original user information; Overwrite import: the newly imported information overwrites the information of the original user. It is recommended to use the incremental method. ',
- 'import_list_text'=>'User name and mailbox items are required
- Click the content of the import item below to edit it temporarily. When editing a department, please note that each line of the Department is a parent-child relationship, and the previous line is the parent department of the next line
- Items that do not need to be imported can be deleted by clicking "X" on the right
- Click the import button to import the current project. Click the import all button to import all items in sequence. You can click stop again in the middle ',
- // admin/member/adduser.html
- 'adduser_login_email_text'=>' This parameter is mandatory. It can be used for system login. When employees pay attention to the enterprise ID, the enterprise ID will be matched according to the email address. ',
- 'adduser_compellation_text'=>' Required, displayed in system, easy to identify ',
- 'adduser_phone_number_text'=>' Set this parameter to the mobile phone number bound to wechat. When an employee pays attention to the enterprise number, it will be matched according to the mobile phone bound to wechat. ',
- 'adduser_weixin_text'=>' indicates the employee’s wechat ID. When an employee follows the enterprise ID, it will match according to the employee’s wechat ID. ',
- 'adduser_exceptional_space_text'=>' Unit M, additional user storage space (total user space=default space + extra space) ',
- 'adduser_disable_user_text'=>' After the user is disabled, the user cannot log in to the system. Perform this operation with caution ',
- 'adduser_usergroup_text'=>' After you set the user as the system administrator, this user will have the system management rights. Please be cautious! ',
- // admin/member/edituser.html
- 'edituser_login_email_text'=>' This parameter is optional and can be used for system login. When employees pay attention to the enterprise number, it will be matched according to the employee’s email address. ',
- 'edituser_weixin_text'=>' Select, employee’s wechat ID. When employees follow enterprise ID, it will be matched according to the employee’s wechat ID. If you have paid attention to it, this item cannot be modified. ',
- 'supervisor_position'=>' supervisor position',
- 'send_password_user_mailbox'=>' Send password to mailbox',
- 'login_email_required'=>' Required for login ',
- 'name_will'=>' username required ',
- 'none_write_login_password'=>' No login password yet ',
- 'none_write_affirm_password'=>' affirm_password has not been filled in ',
- 'phone_number'=>' mobile phone number',
- 'phone_number_illegal'=>' mobile phone number is illegal',
- 'weixin_phone_number'=>' wechat bound mobile phone number',
- 'weixin_illegal'=>' wechat illegal',
- 'user_weixin'=>' employee weixin',
- 'weixin_exist'=>' wechat already exists ',
- 'random_password'=>' Generate random password',
- 'exceptional_space'=>' extra space',
- 'disable_user'=>' Disable this user',
- 'block_up' => 'stop',
- 'set_system_administrator'=>' Set as system administrator',
- 'add_a_item'=>' add an item',
- 'add_user'=>' Add user',
- 'add_user_success'=>' User added successfully ',
- 'edit_user_success'=>' Modify user information successfully ',
- 'export_user'=>' Export user',
- 'shared_directory_set'=>' shared directory setting ',
- 'group_on_set'=>' Group function Settings ',
- 'shared_directory_desktop_shortcut'=>' Shared directory desktop shortcut',
- 'position_management'=>' position management',
- 'add_position'=>' Add position',
- 'position_name'=>' position name',
- 'organization_department'=>' Organization Department',
- 'share_enable_successful'=>' The shared directory is enabled successfully! ',
- 'share_close_successful'=>' The shared directory is closed successfully! ',
- 'group_on_successful'=>' The group function has been enabled successfully! ',
- 'group_close_successful'=>' The group function is disabled successfully! ',
- 'login_username_placeholder'=>' Login username ',
- 'login_username_text'=>' required, available for system login ',
- 'required_used_login_system'=>' required, available for system login ',
- 'space_not_change_password'=>' Leave blank, do not change password',
- 'export_range_user'=>' Select the export range, all users in this range will export ',
- 'export_data'=>' Export data item ',
- 'import_nbsp'=>'The import',
- 'creation_agency'=>' New agency',
- 'creation_bottom_section'=>' Create the bottom_section',
- 'creation_equally_section'=>' New sibling department ',
- 'please_select_same_type_node'=>' Please select a node of the same type ',
- 'please_select_same_section_node'=>' Please select a node in the same department ',
- 'add_administrator_unsuccess'=>' Failed to add administrator ',
- 'no_open_Shared_directory'=>' cannot be set because the shared directory is not enabled ',
- 'please_select_range_export'=>' Please select the export scope ',
- 'please_select_project_export'=>' Please select export project ',
- 'user_information_table'=>' Person information table',
- 'bulk_import_user_template'=>' Import user templates in batches ',
- 'name_email_empty'=>' Username and mailbox cannot be empty',
- 'lack_required_fields_name'=>' lacks the required field "user name"',
- 'lack_required_fields_name_email'=>'The required field user name or mailbox is missing',
- 'bulking' => 'delta',
- 'coverage' => 'cover',
- 'user_phone_illegal'=>' User’s phone number is illegal',
- 'user_phone_exist'=>' The phone number already exists ',
- 'user_phone_registered'=>' User phone number has been registered',
- 'weixin_registered'=>' the wechat signal has been registered',
- 'user_registered_retry'=>' The user name has been registered, please change the user name and try again ',
- 'email_registered_retry'=>' The mailbox has been registered, please change the mailbox and try again ',
- 'import_user'=>' import user',
-);
-?>
\ No newline at end of file
diff --git a/dzz/orguser/language/zh-cn/lang.php b/dzz/orguser/language/zh-cn/lang.php
deleted file mode 100644
index 2845504..0000000
--- a/dzz/orguser/language/zh-cn/lang.php
+++ /dev/null
@@ -1,164 +0,0 @@
- '机构用户',
- 'explorer_gropuperm'=>array(
- '协作成员',
- '管理员',
- '创始人'
- ),
- 'orgname'=>'机构名称',
- 'orgname_placeholder'=>'输入机构(群组)名称',
- 'change'=>'更换',
- 'org_description'=>'简介',
- 'org_description_placeholder'=>'输入机构(群组)简要介绍',
- 'org_space_assign'=>'分配空间大小',
- 'org_space_assign_tip'=>'当前可以分配的最大可用空间',
- 'org_space_assign_tips'=>' 单位M,留空或者0表示不限制,-1表示无空间 限制整个机构或部门(包括下级所有部门)可以使用的空间大小(机构下所有部门的空间使用总和不能超过这个限制) 部门分配的空间只能从上级部门的可用空间里面划分;一旦分配,上级部门的剩余空间就会相应减少,不管这些分配的空间是否实际使用完 ',
- 'space_use_department'=>'部门空间使用',
- 'space_use_org'=>'机构总空间使用',
- 'space_use_org_tips'=>'限制整个机构或部门(包括下级所有部门)可以使用的空间大小 下级部门分配的空间会从上级的可用空间里面分配 ',
- 'org_update_success'=>'更新资料成功,3秒后将为您跳转',
- 'org_img_uploaded_tip'=>'该图片已经上传过了,只需勾选即可',
- 'clicktoupload'=>'点击上传',
- // admin/orguser/detail_org.html
- 'export_excl'=>'导出此部门的所有用户到excl文件',
- 'detail_org_no_enable'=>'如不启用,下级所有部门中将不能使用共享目录;启用后,企业盘才会显示共享目录。',
- 'detail_org_explorerapp_enable'=>'开启后,可在网盘等应用中能够使用该机构或部门的目录。',
- 'detail_org_enable'=>'启用后,企业盘机构下才会显示此部门的共享目录。',
- 'detail_org_creation'=>'创建快捷方式后,所属成员桌面默认都会有相应快捷方式。',
- 'group_org_no_enable'=>'开启后,资源管理器会显示该机构群组选项。',
- 'group_org_enable'=>'不开启,资源管理器不会显示该机构群组选项。',
- 'detail_org_administrator'=>'注:
- 机构管理员权限:设置本机构下所有部门管理员,管理本机构中所有人员,管理本机构所有共享目录。
- 部门管理员权限:设置本部门下所有子部门管理员,管理本部门中所有人员,管理本部门所有共享目录。 ',
- 'Select organization to set organization information'=>'选中机构为设置机构信息',
- 'Select department to set department information'=>'选中部门为设置部门信息',
- 'Select personnel to set personnel information'=>'选中人员为设置人员信息',
- 'Personnel, departments and institutions can directly drag and move to change positions. Move refers to changing the Department to which the person belongs, and changing the superior organization or department of the Department.'=>'人员、部门、机构可直接拖拽移动更换位置。移动是更换人员所属部门、和更换部门上级机构或上级部门。',
- 'Hold'=>'按住',
- 'Key to move personnel or departments to copy. It is used to join personnel to multiple departments at the same time.'=>'键移动人员或部门为复制。用于将人员同时加入多个部门。',
- 'Key can be used for multiple selections, and release after multiple selections'=>'键可多选,多选后松开',
- 'Key movement is batch movement. Do not loosen'=>'键移动为批量移动。 不松开',
- 'Right click departments, institutions and personnel to open the right-click menu. There are corresponding more operations in the menu.'=>'在部门、机构、人员上点鼠标右键可出现右键菜单。菜单中有对应的更多操作。',
- 'Delete user description'=>'删除用户说明',
- 'Deleting users from all institutions or departments is only removing users from their own institutions or departments. Users can no longer have all the use rights of their own institutions or departments. It is not deleting users from the system.'=>'所有机构、部门中删除用户,只是从本机构,或部门中移除,用户将不能再拥有本机构或部门的所有使用权限,不是将用户从系统中删除。',
- 'When the system administrator deletes the user from the "list of non institutional users", the user will be completely deleted in the system, and all system data and saved files of the user will be deleted. Please use it cautiously by the administrator, and delete it after confirming that the member is to be deleted.'=>'系统管理员在“未加入机构用户列表”中删除用户,用户会在系统中彻底删除,并且删除用户所有系统数据及保存文件。请管理员谨慎使用,确定成员要删除后再删除。',
- 'Key to move to batch copy.'=>'键移动为批量复制。',
- 'Organization management instructions'=>'组织管理说明',
- 'inport_guide_download'=>'下载人员信息导入模板',
- 'inport_guide_template'=>'模板的项目会根据用户资料项的多少自动生成',
- 'inport_guide_user.'=>'根据模板编辑需要人员信息表。',
- 'inport_guide_step'=>'步骤3:选择excel表',
- 'inport_guide_layout'=>'选择编辑好的人员信息表,支持 .xls、.xlsx格式',
- 'inport_guide_notice'=>'编辑人员信息表注意事项',
- 'inport_guide_notice_text'=>'1、根据模板字段来编辑需要导入的人员信息,如果已经有档案信息表,则只需将现有的档案信息表中的相关字段名称改为与“模板”里提供的名称一致即可,只要名称对应,字段的位置不影响结果。
-2、模板中“用户名”字段必填,其他字段根据需要填写。
-3、表中“邮箱”、“用户名”字段中的信息必须是唯一的,不可重复。如果邮箱为空,系统导入时将随机生成邮箱地址。
-4、多级部门创建:方法1:表中添加多列“所属部门”,从左到右分别为一级部门、二级部门、三级部门,顺序排列,系统会根据从左到右的原则,依次创建部门、下级部门、下下级部门等。方法2:表格中使用单列,上下级部门使用“/”来分割(例如:小学/一年级/一班)。
-5、导入用户只能按机构导入,多个机构需要分批导入。
-6、表中“登录密码”字段可为空,管理员在导入时能够为用户批量设置统一的密码。用户使用统一密码登录后可自行修改。
-7、导入界面中有“增量”、“覆盖”两种导入方式。增量方式为:遇到相同用户,只会增加用户缺少的字段信息,原有信息不变。(例如:系统中已有用户A,密码为123。在批量导入表格中,也有用户A,导入时设置了统一密码为abc。导入完成后,其他用户的密码都为abc,原用户A还是保持他的原有密码,即123。)覆盖导入:将系统中原有的用户信息完全替换为表格中的信息。
-8、若需导入的人员较多,建议先做一个少量人员的测试表,测试无误后,再使用增量方式导入所有用户。 ',
- 'import_list_organization'=>'选择要导入到的机构,如果不导入任何机构,会根据用户信息表中的所属部门来生成新的机构和部门,没有则会直接导入到"无机构人员"下',
- 'import_list_password'=>'默认用户密码,当登录密码项未设置时,会使用此处设置的密码作为新导入的用户的密码',
- 'import_list_coverage'=>'增量导入方式:新导入的用户信息智能的增加到原有用户信息中;覆盖导入:新导入的信息覆盖原有用户的信息,建议使用增量方式。',
- 'import_list_text'=>'用户名和邮箱项目为必填项
- 点击下面的导入项的内容,可以临时编辑,编辑部门时注意,部门每行是上下级的关系,上一行为下一行的上级部门
- 不需要导入的项目,可以点击右侧的"X"删除掉
- 点击导入按钮,导入当前项目,全部导入按钮,按顺序导入所有项,中途可以再次点击停止 ',
- // admin/orguser/tree.html
- 'orguser_tree_delete'=>'您确定要彻底删除此用户(用户的所有数据和文件都会彻底删除)吗?',
- 'orguser_tree_permission_delete'=>'此处删除,仅从部门中移除此用户,移除后您可能没有操作此用户的权限,您确定要移除此用户吗?',
- 'orguser_tree_batch_delete'=>'机构或部门不支持批量删除',
- 'orguser_tree_all_delete'=>'删除部门前,必须先删除此部门的所有下级部门,并且删除共享目录中的文件,您确定要删除此部门吗?',
- // admin/orguser/ajax.php
- 'orguser_ajax_delete'=>'在机构或部门中的用户,不支持彻底删除,请先从机构或部门中删除后重试',
- 'no_parallelism_jurisdiction'=>'没有对应部门的权限',
- // admin/orguser/edituser.php
- 'orguser_edituser_add_user'=>'抱歉!您没有在此机构或部门下添加用户的权限! 可以在左侧选择有权限的部门,再重试添加
',
- 'orguser_edituser_add_user1'=>'抱歉!您没有此用户的管理权限! 可以在左侧选择有权限管理的用户,再重试添加
',
- // admin/orguser/import.php
- 'orguser_import_user'=>'没有权限,只有系统管理员才能导入用户',
- 'orguser_import_user_table'=>'人员信息表上传未成功,请重新上传',
- 'orguser_import_xls_xlsx'=>'只允许导入xls,xlsx类型的文件',
- 'orguser_import_user_message'=>'人员信息表上传成功,正在调转到导入页面',
- 'orguser_import_tautology'=>'上传信息表未成功,请稍候重试',
- 'orguser_import_user_message_table'=>'请选择人员信息表',
- // admin/orguser/vidw.php
- 'orguser_vidw_delete'=>'抱歉!您没有此部门的管理权限! 可以在左侧选择有权限管理的部门
',
- // admin/member/adduser.html
- 'adduser_login_email_text'=>'必填,可用于系统登录,员工关注企业号时,会根据邮箱来匹配。',
- 'adduser_compellation_text'=>'必填,系统中显示,便于同事辨识',
- 'adduser_phone_number_text'=>'选填,微信绑定的手机号码,员工关注企业号时,会根据员工微信绑定的手机来匹配。',
- 'adduser_weixin_text'=>'选填,员工微信号,员工关注企业号时,会根据员工的微信号来匹配。',
- 'adduser_exceptional_space_text'=>'单位M,额外增加用户存储空间(用户的总空间=默认空间+额外空间)',
- 'adduser_disable_user_text'=>'用户停用后,该用户将不能登录系统,请谨慎操作',
- 'adduser_usergroup_text'=>'设置用户为系统管理员后,此用户将拥有系统管理权限,请慎重!',
- // admin/member/edituser.html
- 'edituser_login_email_text'=>'选填,可用于系统登录,员工关注企业号时,会根据员工的邮箱来匹配。',
- 'edituser_weixin_text'=>'选填,员工微信号,员工关注企业号时,会根据员工的微信号来匹配。如果已经关注,此项不能修改。',
- 'supervisor_position'=>'上司职位',
- 'send_password_user_mailbox'=>'发送密码到用户邮箱',
- 'login_email_required'=>'登录邮箱必填',
- 'name_will'=>'用户名必填',
- 'none_write_login_password'=>'还没有填写登录密码',
- 'none_write_affirm_password'=>'还没有填写确认密码',
- 'phone_number'=>'手机号码',
- 'phone_number_illegal'=>'手机号码不合法',
- 'weixin_phone_number'=>'微信绑定的手机号码',
- 'weixin_illegal'=>'微信号不合法',
- 'user_weixin'=>'员工微信号',
- 'weixin_exist'=>'微信号已经存在',
- 'random_password'=>'生成随机密码',
- 'exceptional_space'=>'额外空间',
- 'disable_user'=>'停用此用户',
- 'block_up'=>'停用',
- 'set_system_administrator'=>'设为系统管理员',
- 'add_a_item'=>'增加一项',
- 'add_user'=>'添加用户',
- 'add_user_success'=>'添加用户成功',
- 'edit_user_success'=>'修改用户信息成功',
- 'email_registered_retry'=>'邮箱已经被注册,请更换邮箱再试',
- 'export_user'=>'导出用户',
- 'shared_directory_set'=>'共享目录设置',
- 'group_on_set'=>'群组功能设置',
- 'shared_directory_desktop_shortcut'=>'共享目录桌面快捷方式',
- 'position_management'=>'职位管理',
- 'add_position'=>'添加职位',
- 'position_name'=>'职位名称',
- 'organization_department'=>'机构部门',
- 'share_enable_successful'=>'共享目录启用成功!',
- 'share_close_successful'=>'共享目录关闭成功!',
- 'group_on_successful'=>'群组功能开启成功!',
- 'group_close_successful'=>'群组功能关闭成功!',
- 'login_username_placeholder'=>'登录用户名',
- 'login_username_text'=>'必填,可用于系统登录',
- 'required_used_login_system'=>'必填,可用于系统登录',
- 'space_not_change_password'=>'留空,不修改密码',
- 'export_range_user'=>'选择导出范围,此范围内的所有用户都会导出',
- 'export_data'=>'导出资料项',
- 'import_nbsp'=>'导 入',
- 'creation_agency'=>'新建机构',
- 'creation_bottom_section'=>'新建下级部门',
- 'creation_equally_section'=>'新建同级部门',
- 'please_select_same_type_node'=>'请选择相同类型的节点',
- 'please_select_same_section_node'=>'请选择相同部门的节点',
- 'add_administrator_unsuccess'=>'添加管理员失败',
- 'no_open_Shared_directory'=>'没有开启共享目录,无法设置',
- 'please_select_range_export'=>'请选择导出范围',
- 'please_select_project_export'=>'请选择导出项目',
- 'user_information_table'=>'人员信息表',
- 'bulk_import_user_template'=>'批量导入用户模板',
- 'name_email_empty'=>'用户名和邮箱不能为空',
- 'lack_required_fields_name'=>'缺少必填字段"用户名"',
- 'lack_required_fields_name_email'=>'缺少必填字段”用户名“或”邮箱“',
- 'bulking'=>'增量',
- 'coverage'=>'覆盖',
- 'user_phone_illegal'=>'用户手机号码不合法',
- 'user_phone_exist'=>'手机号码已经存在',
- 'user_phone_registered'=>'用户手机号码已经被注册',
- 'weixin_registered'=>'该微信号已经被注册',
- 'user_registered_retry'=>'该用户名已经被注册,请更换用户名再试',
- 'import_user'=>'导入用户',
-);
-?>
\ No newline at end of file
diff --git a/dzz/orguser/scripts/orguser.js b/dzz/orguser/scripts/orguser.js
deleted file mode 100644
index ab0ea07..0000000
--- a/dzz/orguser/scripts/orguser.js
+++ /dev/null
@@ -1,539 +0,0 @@
-/*
- * @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 checkAdminLogin(str){
- if(str.match(/id=\"loginform\"/i)){
- return true;
- }else{
- return false;
- }
-}
-function show_guide(){
- jQuery('#orguser_container').load(ajaxurl+'do=guide',function(){
- location.hash='';
- });
-}
-function delDepart(obj){
- jQuery(obj).parent().parent().remove();
-}
-var tpml_index=0;
-function addorgsel(){
- jQuery('#selorg_container').append(' '+(orgsel_html.replace(/orgid_tpml/ig,'orgid_tpml_'+tpml_index))+' ');
- tpml_index++;
-}
-
-function selJob(obj){
- var jobid=jQuery(obj).attr('_jobid');
- var li=jQuery(obj).parent().parent().parent();
- var html=obj.innerHTML;
- li.find('.dropdown-toggle').attr('_jobid',jobid).find('span').html(html);
- li.find('input').val(jobid);
-}
-function selDepart(obj){
- var orgid=jQuery(obj).val();
- var li=jQuery(obj).parent();
- li.parent().find('.job .dropdown-menu').load(ajaxurl+'do=getjobs&orgid='+orgid,function(html){
- if(checkAdminLogin(html)){
- location.reload();
- }
- if(li.parent().find('.job .dropdown-menu li').length>1) li.parent().find('.job .dropdown-toggle').trigger('click');
- });
- li.parent().find('.job .dropdown-toggle').attr('_jobid',0).find('span').html(__lang.none);
- li.parent().find('.job input').val('0');
-}
-function errormessage(id, msg,passlevel) {
- if(jQuery('#'+id).length > 0) {
- msg = !msg ? '' : msg;
- if(msg == 'succeed') {
- msg = '';
- jQuery('#suc_' + id).addClass('p_right');
- } else if(msg !== '') {
- jQuery('#suc_' + id).removeClass('p_right');
- }
- jQuery('#chk_' + id).find('kbd').html(msg);
- if(msg && !passlevel) jQuery('#'+id).parent().parent().addClass('has-warning');
- else jQuery('#'+id).parent().parent().removeClass('has-warning');
- }
-}
-
-function checkemail(id) {
- errormessage(id);
- var email = trim(jQuery('#'+id).val());
- email=email.toLowerCase();
- if(jQuery('#'+id).parent()[0].className.match(/ p_right/) && (email == '' || email == lastemail ) || email == lastemail) {
- return;
- }
- if(email.match(/<|"/ig)) {
- errormessage(id, __lang.Email_sensitivity);
- return;
- }
-
- var x = new Ajax();
- jQuery('#suc_' + id).removeClass('p_right');
- jQuery.getJSON('user.php?mod=ajax&inajax=yes&infloat=register&handlekey=register&ajaxmenu=1&action=checkemail&email=' + email, function(json) {
- if(json.error){
- errormessage(id, json.error);
- }else{
- errormessage(id, 'succeed');
- }
-
- });
-}
-function checknick(id) {
- errormessage(id);
- var username = trim(jQuery('#'+id).val());
- if(jQuery('#chk_' + id).parent()[0].className.match(/ p_right/) && (username == '' || username == lastusername) || username == lastusername) {
- return;
- }
- if(username.match(/<|"/ig)) {
- errormessage(id, __lang.profile_nickname_illegal);
- return;
- }
- if(username){
- var unlen = username.replace(/[^\x00-\xff]/g, "**").length;
- if(unlen < 3 || unlen > 30) {
- errormessage(id, unlen < 3 ? __lang.username_character : __lang.username_character);
- return;
- }
- var x = new Ajax();
- jQuery('#suc_' + id).removeClass('p_right');
- jQuery.getJSON('user.php?mod=ajax&inajax=yes&infloat=register&handlekey=register&ajaxmenu=1&action=checkusername&username=' + encodeURI(username), function(json) {
- if(json.error){
- errormessage(id, json.error);
- }else{
- errormessage(id, 'succeed');
- }
- });
- }
-}
-function checkPwdComplexity(firstObj, secondObj, modify) {
- modifypwd = modify || false;
- firstObj.onblur = function () {
- if(firstObj.value == '') {
- var pwmsg = !modifypwd ? __lang.register_password_tips : __lang.js_change_password;
- if(pwlength > 0) {
- pwmsg += ', '+__lang.register_password_length_tips1+pwlength+__lang.register_password_length_tips2;
- }
- if(!modifypwd) errormessage(firstObj.id, pwmsg);
- }else{
- errormessage(firstObj.id, !modifypwd ? 'succeed' : __lang.js_change_password);
- }
- checkpassword(firstObj.id, secondObj.id);
- };
- firstObj.onkeyup = function () {
- if(pwlength == 0 || jQuery('#'+firstObj.id).value.length >= pwlength) {
- var passlevels = new Array('',__lang.weak,__lang.center,__lang.strong);
- var passlevel = checkstrongpw(firstObj.id);
-
- errormessage(firstObj.id, ''+__lang.intension+':'+passlevels[passlevel]+' ','passlevel');
- }
- };
- secondObj.onblur = function () {
- if(secondObj.value == '') {
- if(!modifypwd) errormessage(secondObj.id, !modifypwd ?'succeed' : __lang.register_repassword_tips);
- }
- checkpassword(firstObj.id, secondObj.id);
- };
-}
-function checkstrongpw(id) {
- var passlevel = 0;
- var el=document.getElementById(id);
- var val=el.value;
- if(val && val.match(/\d+/g)) {
- passlevel ++;
- }
- if(val && val.match(/[a-z]+/ig)) {
- passlevel ++;
- }
- if(val && val.match(/[^a-z0-9]+/ig)) {
- passlevel ++;
- }
- return passlevel;
-}
-function checkpassword(id1, id2) {
- if(!document.getElementById(id1).value && !document.getElementById(id2).value) {
- //return;
- }
- if(pwlength > 0) {
- if(document.getElementById(id1).value.length < pwlength) {
- errormessage(id1, __lang.password_too_short+pwlength+__lang.register_password_length_tips2);
- return;
- }
- }
- if(strongpw) {
- var strongpw_error = false, j = 0;
- var strongpw_str = new Array();
- for(var i in strongpw) {
- if(strongpw[i] === 1 && !document.getElementById(id1).value.match(/\d+/g)) {
- strongpw_error = true;
- strongpw_str[j] = __lang.strongpw_1;
- j++;
- }
- if(strongpw[i] === 2 && !document.getElementById(id1).value.match(/[a-z]+/g)) {
- strongpw_error = true;
- strongpw_str[j] = __lang.strongpw_2;
- j++;
- }
- if(strongpw[i] === 3 && !document.getElementById(id1).value.match(/[A-Z]+/g)) {
- strongpw_error = true;
- strongpw_str[j] = __lang.strongpw_3;
- j++;
- }
- if(strongpw[i] === 4 && !document.getElementById(id1).value.match(/[^A-Za-z0-9]+/g)) {
- strongpw_error = true;
- strongpw_str[j] = __lang.strongpw_4;
- j++;
- }
- }
- if(strongpw_error) {
- errormessage(id1, __lang.password_weak+strongpw_str.join(','));
- return;
- }
- }
- errormessage(id2);
- if(document.getElementById(id1).value !=document.getElementById(id2).value) {
- errormessage(id2, __lang.profile_passwd_notmatch);
- } else {
- if(modifypwd) errormessage(id1, 'succeed' );
- errormessage(id2, 'succeed' );
-
- }
-}
-function jstree_search(val){
- console.log(val);
- if(val=='stop'){
- jQuery('#jstree_search_input').val('');
- jQuery('#searchval').val('');
- jQuery('.classtree-search').slideUp(500);
- jQuery("#classtree").jstree(true).search();
- }else{
- if(val==''){
- jQuery('#jstree_search_input').val('');
- jQuery('#searchval').val('');
- jQuery('.classtree-search').slideUp(500);
- }
- jQuery("#classtree").jstree(true).search(val);
- }
-}
-function jstree_create_organization(){
- var inst = jQuery("#classtree").jstree(true);
- jQuery.post(ajaxurl+'do=create',{'forgid':0,'t':new Date().getTime()},function(json){
- if(!json || json.error){
- showmessage(json.error,'danger',3000,1);
- }else if(json.orgid>0){
- var arr={"id":json.orgid,"text":json.orgname,"type":"organization","icon":'dzz/system/images/organization.png'}
- inst.create_node(inst.get_node('#'), arr, "first", function (new_node) {
- setTimeout(function () { inst.edit(new_node); },0);
- });
- }
- },'json');
-}
-function jstree_create_dir(){
- var inst = jQuery("#classtree").jstree(true),obj;
- if(inst.get_selected(true).length>0){
- obj=inst.get_selected(true);
- obj=obj[0];
- }else{
- showmessage(__lang.please_select_one_organization_department,'danger',1000,1);
- return;
- }
- if(obj.type=='user'){
- showmessage(__lang.please_select_one_organization_department,'danger',1000,1);
- return true;
- }
- if(inst.is_disabled(obj)){
- return true;
- }
- var inst = jQuery("#classtree").jstree(true);
- jQuery.post(ajaxurl+'do=create',{'forgid':obj.id,'t':new Date().getTime()},function(json){
- if(!json || json.error){
- showmessage(json.error,'danger',3000,1);
- }else if(json.orgid>0){
- var arr={"id":json.orgid,"text":json.orgname,"type":"organization","icon":(json.forgid>0)?'dzz/system/images/department.png':'dzz/system/images/organization.png'}
- inst.create_node(obj, arr, "first", function (new_node) {
- setTimeout(function () { inst.edit(new_node); },0);
- });
- }
- },'json');
-
-}
-function jstree_create_user(flag){
- var inst = jQuery("#classtree").jstree(true),obj;
- if(inst.get_selected(true).length>0){
- obj=inst.get_selected(true);
- obj=obj[0];
- }else{
- if(flag) flag=0;
- obj=inst.get_node('#');
- }
- if(obj.type=='user'){
- obj=inst.get_node(obj.parent);
- }
- if(inst.is_disabled(obj)){
- return true;
- }
- showDetail(0,'user',null,obj.id);
-}
-
-function showDetail(id,idtype,ajaxdo,orgid){
- var hash=idtype+'_'+id;
- var urladd=''
- if(ajaxdo){
- hash+='_'+ajaxdo;
- urladd+='&do='+ajaxdo
- }
- if(orgid){
- hash+='_'+orgid;
- urladd+='&orgid='+orgid
- }
- currentHash=hash;
- location.hash=hash;
- //console..log(hash);
- urladd+='&t='+new Date().getTime()
-
- jQuery('#orguser_container').load(baseurl+'op=view&id='+id+'&idtype='+idtype+urladd,function(html){
- if(checkAdminLogin(html)){
- location.reload();
- }
- });
-}
-
-function open_node_dg(inst,node,arr){ //自动打开有权限的目录树
- inst.open_node(node,function(node){
- var i=jQuery.inArray(node.id,arr);
- if(i-1 && document.getElementById(arr[i+1])) open_node_dg(inst,document.getElementById(arr[i+1]),arr);
- else{
- // inst.select_node(node);
- }
- });
- }
-
-function job_show_editor(jobid,orgid,obj){
- var el=jQuery(obj).addClass('hide');
- el.parent().find('.edit').removeClass('hide');
- el.parent().find('input').focus();
- jQuery(document).on('click.job_edit_'+jobid,function(event){
- if(!jQuery(event.target).closest(el.parent()).length){
- job_save(jobid,orgid);
- jQuery(document).off('click.job_edit_'+jobid);
- }
- });
-}
-
-function job_save(jobid,orgid){
- var el=jQuery('#job_'+jobid);
- var oname=trim(el.find('.job-name').html());
- var name=trim(el.find('.job-edit-control input').val());
- if(oname==name){
- el.find('.job-name').removeClass('hide');
- el.find('.edit').addClass('hide');
- return;
- }
- jQuery.post(ajaxurl+'do=jobedit',{'name':name,'jobid':jobid,'orgid':orgid,'t':new Date().getTime()},function(json){
- if(json.error){
- el.find('.job-name').html(oname).removeClass('hide');
- el.find('.edit').addClass('hide');
- el.find('.job-edit-control input').val(oname);
- }else if(json.jobid>0){
- el.find(' .job-name').html(json.name).removeClass('hide');
- el.find('.edit').addClass('hide');
- el.find('.job-edit-control input').val(json.name);
- }
- },'json');
-}
-function job_show_add_editor(orgid,obj){
- var el=jQuery(obj);
- el.addClass('hide');
- el.parent().find('.new-job-control').removeClass('hide');
- el.parent().find('.new-job-control input').focus();
- jQuery(document).on('click.new-job-'+orgid,function(event){
- if(!jQuery(event.target).closest(el.parent()).length){
- job_cancel_add_editor(orgid);
- jQuery(document).off('click.new-job-'+orgid);
- }
- });
-}
-function job_cancel_add_editor(orgid){
- var el=jQuery('.jobs .new-job');
- el.find('.new-job-control').addClass('hide');
- el.find('a').removeClass('hide');
-
-}
-function job_del(jobid,orgid){
- var el=jQuery('#job_'+jobid);
- jQuery.post(ajaxurl+'do=jobdel',{'jobid':jobid,'orgid':orgid,'t':new Date().getTime()},function(json){
- if(json.error){
- showmessage(json.error,'danger',3000,1);
- }else if(json.jobid>0){
- el.remove();
- }
- },'json');
-}
-
-function job_add(orgid){
- var newjob=jQuery('.jobs .new-job');
- var name=newjob.find('.new-job-text').val();
- if(name==''){
- newtodo.find('.new-job-text').focus();
- return;
- }
- jQuery.post(ajaxurl+'do=jobadd',{'name':name,'orgid':orgid,'t':new Date().getTime()},function(json){
-
- if(json.jobid>0){
- appendjob(json);
- newjob.find('.new-job-text').val('').focus();
- }else{
- showmessage(json.error,'danger',3000,1);
- }
- },'json');
-}
-function appendjob(json){
- var html='';
- html+='';
- html+='
'+json.name+' ';
- html+='
';
- html+='
';
- html+=' ';
- html+='
';
- html+='
'+__lang.save+' ';
- html+='
'+__lang.delete+' ';
- html+='
';
- html+='
';
- jQuery('.jobs .new-job').before(html);
-}
-function callback_moderators(ids,data,orgid){
- console.log(ids);console.log(orgid);
- //删除不在选择列表内的用户
- jQuery('.moderators-container .user-item').each(function(){
- var uid=jQuery(this).attr('uid');
- if(jQuery.inArray(uid,ids)===-1){
- jQuery(this).find('.delete').trigger('click');
- }
- });
- for(var i=0;i ';
- html+=' ';
- html+='
';
- html+=' ';
- html+='
';
- html+=' '+json.avatar;
- html+='
';
- html+='
';
- html+=' '+json.username+'
';
- html+=' ';
- jQuery('#moderators_container_'+json.orgid+' .moderators-acceptor').after(html);
- var inst = jQuery("#classtree").jstree(true);
-
- var node= inst.get_node('#'+json.orgid);
- inst.refresh_node(node);
-}
-function moderator_del(id,orgid,obj){
- jQuery.post(ajaxurl+'do=moderator_del',{'orgid':orgid,'id':id,'t':new Date().getTime()},function(json){
- if(json.error) showmessage(json.error,'danger',3000,1);
- else{
- jQuery(obj).parent().remove();
- }
-
- },'json');
-}
-
-function folder_available(available,orgid){
- jQuery.post(ajaxurl+'do=folder_available',{'orgid':orgid,'available':available,'t':new Date().getTime()},function(json){
- if(json.error){
- showmessage(json.error,'danger',3000,1);
- }else{
- if(available){
- showmessage(__lang.share_enable_successful,'success',3000,1);
- //jQuery('#indesk').show();
- }else{
- showmessage(__lang.share_close_successful,'success',3000,1);
- //jQuery('#indesk').hide();
- }
- }
- },'json');
-}
-function group_on(on,orgid){
- jQuery.post(ajaxurl+'do=group_on',{'orgid':orgid,'available':on,'t':new Date().getTime()},function(json){
- if(json.error){
- showmessage(json.error,'danger',3000,1);
- }else{
- if(on){
- showmessage(__lang.group_on_successful,'success',3000,1);
- }else{
- showmessage(__lang.group_close_successful,'success',3000,1);
- }
- }
- },'json');
-}
-function folder_indesk(indesk,orgid){
- jQuery.post(ajaxurl+'do=folder_indesk',{'orgid':orgid,'indesk':indesk,'t':new Date().getTime()},function(json){
- if(json.error) showmessage(json.error,'danger',3000,1);
- },'json');
-}
-function set_org_logo(orgid,aid){
- jQuery.post(ajaxurl+'do=set_org_logo',{'orgid':orgid,'aid':aid},function(json){
- if(json.error) showmessage(json.error,'danger',3000,1);
- },'json');
-}
-/*function set_org_bgphoto(orgid,aid){
- jQuery.post(ajaxurl+'&do=set_org_bgphoto',{'orgid':orgid,'aid':aid},function(json){
- if(json.error) showmessage(json.error,'danger',3000,1);
- },'json');
-}*/
-function set_org_orgname(orgid,obj){
- var oldname=jQuery(obj).data('oldname');
- console.log(oldname);
- jQuery.post(ajaxurl+'do=set_org_orgname',{'orgid':orgid,'orgname':obj.value},function(json){
- if(json.error){
- obj.value=oldname;
- showmessage(json.error,'danger',3000,1);
- }else{
- jQuery(obj).data('oldname',obj.value);
- jQuery('#title_orgname').html(obj.value);
- var node=jQuery("#classtree").jstree(true).get_node('#'+orgid);
- jQuery("#classtree").jstree('refresh',node);
- }
- },'json');
-}
-function set_org_desc(orgid,desc){
- jQuery.post(ajaxurl+'do=set_org_desc',{'orgid':orgid,'desc':desc},function(json){
- if(json.error){
- showmessage(json.error,'danger',3000,1);
- }
- },'json');
-}
-function folder_maxspacesize(obj,orgid){
- jQuery.post(ajaxurl+'do=folder_maxspacesize',{'orgid':orgid,'maxspacesize':obj.value,'t':new Date().getTime()},function(json){
- if(json.error){
- obj.value=json.val;
- showmessage(json.error,'danger',3000,1);
- }else{
- jQuery('#'+orgid+' a.jstree-clicked').trigger('click');
- showmessage('空间大小设置成功','success',3000,1);
- }
- },'json');
-}
diff --git a/dzz/orguser/template.xlsx b/dzz/orguser/template.xlsx
deleted file mode 100644
index 4f464cf..0000000
Binary files a/dzz/orguser/template.xlsx and /dev/null differ
diff --git a/dzz/orguser/template/adduser.htm b/dzz/orguser/template/adduser.htm
deleted file mode 100644
index 6b5d0c2..0000000
--- a/dzz/orguser/template/adduser.htm
+++ /dev/null
@@ -1,285 +0,0 @@
-
-
-
-
-
-
-
-
-
-
{lang login_email}
-
-
-
-
-
-
-
{lang adduser_login_email_text}
-
-
-
-
{lang username}
-
-
-
-
-
- {lang login_username_tips}
-
-
-
-
{lang phone_number}
-
-
- {lang adduser_phone_number_text}
-
-
-
-
{lang weixin}
-
-
- {lang edituser_weixin_text}
-
-
-
-
{lang user_login_password}
-
-
-
-
-
-
-
-
-
-
{lang new_password_confirm}
-
-
-
-
-
-
-
-
-
-
-
- {lang random_password}
-
-
-
-
{lang disable_user}
-
- disabled="disabled" value="1" checked>
- {lang adduser_disable_user_text}
-
-
-
-
{lang usergroup}
-
- disabled="disabled">
-
-
- selected="selected"value="$groupid">$group['grouptitle']
-
-
-
- {lang adduser_usergroup_text}
-
-
-
-
{lang department_position} [ ]
-
-
-
-
{lang supervisor_position}
-
-
-
-
- {lang send_password_user_mailbox}
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/detail_org.htm b/dzz/orguser/template/detail_org.htm
deleted file mode 100644
index 35b9ef5..0000000
--- a/dzz/orguser/template/detail_org.htm
+++ /dev/null
@@ -1,281 +0,0 @@
-
-
-
-
-
-
-
-
{lang org_description}
-
- $org[desc]
-
-
-
-
-
{lang shared_directory_set}
-
-
- 0}-->checked="checked" onclick="folder_available(1,'$orgid');" />
- {lang enable}
-
-
- checked="checked" onclick="folder_available(0,'$orgid');" />
- {lang no_enable}
-
-
-
{lang detail_org_explorerapp_enable}
-
-
{lang detail_org_enable}
-
-
-
-
-
-
-
{lang org_space_assign}
-
-
-
- M
-
-
- {lang org_space_assign_tip}:{eval echo ($allowallotspace == 0) ? lang('no_limit'):formatsize($allowallotspace);}
- {lang org_space_assign_tips}
-
-
-
-
-
-
{lang space_use_department}{lang space_use_org}
-
-
-
{eval echo formatsize($org[usesize])}/{eval if($org[maxallotspacesize] == -1) echo formatsize($org[usesize]);else echo ($org[maxallotspacesize] == 0)?lang('no_limit'):formatsize($org[maxallotspacesize])}
-
-
-
{eval echo formatsize($org[usesize])}/{eval if($org[maxallotspacesize] == -1) echo formatsize($org[usesize]);else echo ($org[maxallotspacesize] == 0)?lang('no_limit'):formatsize($org[maxallotspacesize])}
-
- {lang space_use_org_tips}
-
-
-
-
-
{lang position_management}
-
-
-
-
-
{lang organization}{lang department} {lang administrator}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {eval echo avatar_block($value[uid]);}
-
-
- $value[username]
-
-
-
-
-
-
- {lang detail_org_administrator}
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/edituser.htm b/dzz/orguser/template/edituser.htm
deleted file mode 100644
index 7a3aa1f..0000000
--- a/dzz/orguser/template/edituser.htm
+++ /dev/null
@@ -1,301 +0,0 @@
-
-
-
-
-
-
-
-
-
-
{lang login_email}
-
-
disabled="disabled">
-
-
-
-
-
{lang required_used_login_system}
-
-
-
-
{lang username}
-
- disabled="disabled">
-
-
-
- {lang login_username_tips}
-
-
-
-
-
{lang registration_time}
-
-
-
-
-
-
-
-
{lang phone_number}
-
- disabled="disabled">
- {lang adduser_phone_number_text}
-
-
-
-
{lang weixin}
-
- disabled="disabled">
- {lang edituser_weixin_text}
-
-
-
-
{lang user_login_password}
-
- disabled="disabled">
-
-
-
-
-
-
-
-
{lang new_password_confirm}
-
- disabled="disabled">
-
-
-
-
-
-
-
-
{lang user_set_space}
-
-
- disabled="disabled"name="userspace" value="$userfield[userspace]" autocomplete="off">
- M
-
-
- {lang user_allocable_space}:{eval echo ($allowallotspace == 0) ? '{lang no_limit}':formatsize($currentuserAllotspace);}
- {lang user_set_space_text}
-
-
-
-
-
{lang disable_user}
-
-
- checked disabled="disabled">
- {lang adduser_disable_user_text}
-
-
-
-
-
{lang usergroup}
-
- disabled="disabled">
-
-
- selected="selected" value="$groupid">$group['grouptitle']
-
-
-
- {lang adduser_usergroup_text}
-
-
-
-
{lang department_position} [ ]
-
-
-
-
{lang supervisor_position}
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/export.htm b/dzz/orguser/template/export.htm
deleted file mode 100644
index 70c969b..0000000
--- a/dzz/orguser/template/export.htm
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
{lang export_range}:
-
-
-
-
-
-
-
{lang export_range_user}
-
-
-
-
{lang export_data}:
-
-
-
-
- {lang export_immediately}
-
-
-
-
-
-
-
-
-
diff --git a/dzz/orguser/template/guide.htm b/dzz/orguser/template/guide.htm
deleted file mode 100644
index 2895a0d..0000000
--- a/dzz/orguser/template/guide.htm
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
{lang Organization management instructions}
-
- {lang Select organization to set organization information}
- {lang Select department to set department information}
- {lang Select personnel to set personnel information}
- {lang Personnel, departments and institutions can directly drag and move to change positions. Move refers to changing the Department to which the person belongs, and changing the superior organization or department of the Department.}
- {lang Hold} {lang Key to move personnel or departments to copy. It is used to join personnel to multiple departments at the same time.}
- {lang Hold} {lang Key can be used for multiple selections, and release after multiple selections} {lang Key movement is batch movement. Do not loosen} {lang Key to move to batch copy.}
- {lang Right click departments, institutions and personnel to open the right-click menu. There are corresponding more operations in the menu.}
-
-
-
{lang Delete user description}:
-
- {lang Organization management instructions}
- {lang Deleting users from all institutions or departments is only removing users from their own institutions or departments. Users can no longer have all the use rights of their own institutions or departments. It is not deleting users from the system.}
- {lang When the system administrator deletes the user from the "list of non institutional users", the user will be completely deleted in the system, and all system data and saved files of the user will be deleted. Please use it cautiously by the administrator, and delete it after confirming that the member is to be deleted.}
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/header_left.htm b/dzz/orguser/template/header_left.htm
deleted file mode 100644
index d9119b8..0000000
--- a/dzz/orguser/template/header_left.htm
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- {lang appname}
-
\ No newline at end of file
diff --git a/dzz/orguser/template/header_search.htm b/dzz/orguser/template/header_search.htm
deleted file mode 100644
index 38cebe9..0000000
--- a/dzz/orguser/template/header_search.htm
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/import_guide.htm b/dzz/orguser/template/import_guide.htm
deleted file mode 100644
index 67c2308..0000000
--- a/dzz/orguser/template/import_guide.htm
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
{lang step}2
-
- {lang inport_guide_user.}
-
-
-
-
-
-
-
{lang inport_guide_step}
-
-
- {lang inport_guide_layout}
-
-
-
-
-
-
-
-
{lang inport_guide_notice}
-
- {lang inport_guide_notice_text}
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/import_list.htm b/dzz/orguser/template/import_list.htm
deleted file mode 100644
index 887aefb..0000000
--- a/dzz/orguser/template/import_list.htm
+++ /dev/null
@@ -1,209 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
{lang import_organization}
-
-
-
{lang import_list_organization}
-
-
-
-
{lang default_password}
-
-
- {lang import_list_password}
-
-
-
-
{lang import_way}
-
-
-
- {lang bulking}
-
-
-
- {lang coverage}
-
-
{lang import_list_coverage}
-
-
-
- {lang import_list_text}
-
-
-
-
-
-
- $h0[$value]
-
- {lang all_import}
-
-
- {eval $i=0;}
-
-
-
-
-
-
- $value2
-
-
- $value[$value1]
-
-
- {lang import_nbsp}
-
-
- {eval $i++;}
-
-
-
-
-
-
-
-
-
diff --git a/dzz/orguser/template/main.htm b/dzz/orguser/template/main.htm
deleted file mode 100644
index bb471f4..0000000
--- a/dzz/orguser/template/main.htm
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/profile.htm b/dzz/orguser/template/profile.htm
deleted file mode 100644
index 8067691..0000000
--- a/dzz/orguser/template/profile.htm
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
$value[title]
-
- $htmls[$key]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/template/tree.htm b/dzz/orguser/template/tree.htm
deleted file mode 100644
index d1c1e3f..0000000
--- a/dzz/orguser/template/tree.htm
+++ /dev/null
@@ -1,420 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/dzz/orguser/view.php b/dzz/orguser/view.php
deleted file mode 100644
index 371128a..0000000
--- a/dzz/orguser/view.php
+++ /dev/null
@@ -1,60 +0,0 @@
- ismoderator_by_uid_orgid($orgid, $_G['uid'])) {
- exit(lang('orguser_vidw_delete'));
- }
- if($org = C::t('organization') -> fetch($orgid)){
- $org['avatar'] = avatar_group($org['orgid'],array($org['orgid']=>array('aid'=>$org['aid'],'orgname'=>$org['orgname'])));
- }
- if ($org && $org['forgid'] > 0) {
- $toporgid = C::t('organization') -> getTopOrgid($orgid);
- $toporg = C::t('organization') -> fetch($toporgid);
- $folder_available = $toporg['available'];
- $group_on = $toporg['syatemon'];
- } else {
- $folder_available = 1;
- $group_on = 1;
- }
-
- //可分配空间
- $allowallotspace = C::t('organization')->get_allowallotspacesize_by_orgid($orgid);
- //获取已使用空间
- $org['usesize'] = C::t('organization')->get_orgallotspace_by_orgid($orgid,0,false);
- /*echo formatsize($org['usesize']);
- die;*/
- //获取总空间
- if($org['maxspacesize'] == 0){
- $maxspacesize = C::t('organization')->get_parent_maxspacesize_by_pathkey($org['pathkey'],$orgid);
- $org['maxallotspacesize'] = $maxspacesize['maxspacesize'];
- }else{
- if($org['maxspacesize'] == -1){
- $org['maxallotspacesize'] = -1;
- }else{
- $org['maxallotspacesize'] = $org['maxspacesize']*1024*1024;
- }
-
- }
- $pmoderator = C::t('organization_admin') -> ismoderator_by_uid_orgid($org['forgid'], $_G['uid']);
- $jobs = C::t('organization_job') -> fetch_all_by_orgid($orgid);
- $moderators = C::t('organization_admin') -> fetch_moderators_by_orgid($orgid);
- //$grouppic= C::t('resources_grouppic')->fetch_user_pic();
- include template('detail_org');
-}
-?>
diff --git a/dzz/styles/icoblock/default/style.css b/dzz/styles/icoblock/default/style.css
index ac4c7e8..278dd2a 100644
--- a/dzz/styles/icoblock/default/style.css
+++ b/dzz/styles/icoblock/default/style.css
@@ -25,7 +25,6 @@
/*目录内图标文字样式*/
.IcoText_folder {font-size:13px; color:#333; font-weight:nomal;font-family:Tahoma,'微软雅黑','Simsun';word-break:break-all;text-decoration:none}
-.IcoText_div { max-height:38px; overflow:hidden;word-break:break-all; }
.IcoText_div table{table-layout:fixed;}
.IcoText_div a{
text-decoration:none;
diff --git a/dzz/system/css/select-file.css b/dzz/system/css/select-file.css
index 86dc0b3..8d9c2b4 100644
--- a/dzz/system/css/select-file.css
+++ b/dzz/system/css/select-file.css
@@ -2,7 +2,7 @@
height: 100%;
width: 100%;
margin: 0;
- overflow: hidden;
+ overflow: auto;
/*padding-bottom: 34px;*/
}
a,a:hover,a:focus{
@@ -173,25 +173,6 @@ li{
margin-right: 2px;
color: #FFFFFF;
}
-@media (min-width:768px ) {
- .modal-dialog{
- width: 800px;
-
- }
-}
-@media (max-width:768px ) {
- .modal-dialog{
- width: 550px;
- min-width: 550px;
- }
-}
-/*内容上部分开始*/
-.select-fileall{
- padding:0 15px
-}
-/*.select-filetop{
- overflow: hidden;
-}*/
.select-filetop{
position: relative;
padding:0 10px;
@@ -401,9 +382,6 @@ li{
}
.filemanage .detail_text {
text-shadow: none;
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
max-width: -webkit-calc(100% - 10px);
line-height: 30px;
cursor: default;
@@ -451,10 +429,8 @@ li{
.Icoblock.middleicon{
margin: 0.5rem 0.8rem 0.3rem 0.5rem;
width: 100px;
- height: 125px;
position: relative;
float: left;
- padding: 0;
z-index: 10;
overflow: visible;
}
@@ -501,33 +477,15 @@ li{
border-radius: var(--radius);
}
.Icoselected.Icoblock.middleicon .select-tdtop{
- border: 1px solid #3779ff;
- outline: 1px solid #3779ff;
- border-radius: var(--radius);
-}
-.Icoblock.middleicon .td_ico_item_name {
- overflow: hidden;
- text-overflow: ellipsis;
- word-break: break-all;
- white-space: nowrap;
+ border: 1px solid var(--bs-primary);
+ border-radius: var(--radius);
+ background-color: rgba(var(--bs-primary-hover),0.2);
}
.Icoblock.middleicon .IcoText_div {
position: relative;
overflow: hidden;
word-break: break-all;
}
-.IcoText_div a {
- font-family: "微软雅黑";
- font-size: 12px;
- color:#4e5563;
- text-decoration: none;
- overflow: hidden;
- text-overflow: ellipsis;
- word-break: break-all;
- white-space: nowrap;
- display: block;
- width: 100px;
-}
.Icoselected.Icoblock.middleicon .IcoText_div a{
color: #3779ff;
}
@@ -543,4 +501,9 @@ li{
.typedropup{
width: 100%;
}
-/*内容下部分结束*/
\ No newline at end of file
+/*内容下部分结束*/
+.square-fileList{
+ display: flex;
+ flex-direction: row;
+ flex-wrap: wrap;
+}
\ No newline at end of file
diff --git a/dzz/system/css/selfilewindow.css b/dzz/system/css/selfilewindow.css
index b4f0a77..13041e5 100644
--- a/dzz/system/css/selfilewindow.css
+++ b/dzz/system/css/selfilewindow.css
@@ -1,8 +1,4 @@
-#seluser_dropdown_menu{
- /*padding-left: 1.78rem;
- padding-right: 1.78rem;*/
-}
.jstree-default .jstree-wholerow{
height: 2.14rem;
}
diff --git a/dzz/system/scripts/selorguser.js b/dzz/system/scripts/selorguser.js
index 56a8c89..f7ddbc7 100644
--- a/dzz/system/scripts/selorguser.js
+++ b/dzz/system/scripts/selorguser.js
@@ -11,7 +11,7 @@ selorg.add=function(ctrlid,vals){
if(vals[i].orgid.indexOf('uid_')===0){
var headimg = '';
if(vals[i].icon){
- headimg = ' ';
+ headimg = ' ';
}
html='' +
headimg+vals[i].text+' ';
diff --git a/dzz/system/template/fileselection/index.htm b/dzz/system/template/fileselection/index.htm
index f796496..47fb8ab 100644
--- a/dzz/system/template/fileselection/index.htm
+++ b/dzz/system/template/fileselection/index.htm
@@ -11,6 +11,9 @@
var urldefined = '{$urldefined}';
+
+
+