diff --git a/module/doc/control.php b/module/doc/control.php index 7c309b241e..050d692c83 100644 --- a/module/doc/control.php +++ b/module/doc/control.php @@ -296,7 +296,7 @@ class doc extends control * @access public * @return void */ - public function create($libID, $moduleID = 0) + public function create($libID, $moduleID = 0, $docType = '') { if(!empty($_POST)) { @@ -354,6 +354,7 @@ class doc extends control $this->view->moduleOptionMenu = $this->tree->getOptionMenu($libID, 'doc', $startModuleID = 0); $this->view->moduleID = $moduleID; $this->view->type = $type; + $this->view->docType = $docType; $this->view->groups = $this->loadModel('group')->getPairs(); $this->view->users = $this->user->getPairs('nocode'); diff --git a/module/doc/js/create.js b/module/doc/js/create.js index c2ba6a55e9..1c163e90f4 100644 --- a/module/doc/js/create.js +++ b/module/doc/js/create.js @@ -1,6 +1,7 @@ $(function() { toggleAcl($('[name=acl]').val(), 'doc'); + setTimeout(function(){initPage(docType)}, 100); $('input[name="type"]').change(function() { var type = $(this).val(); @@ -14,7 +15,7 @@ $(function() $('#contentBox').addClass('hidden'); $('#urlBox').removeClass('hidden'); } - }) + }); window.editor['content'].addListener('ready', function() { $('div#content .edui-toolbar').append("
"); @@ -41,3 +42,21 @@ function toggleEditor(type) } $('#contentType').val(type); } + +function initPage(type) +{ + if(type == 'html' || type == 'markdown') + { + if(type == 'markdown') + { + $('#contentBox .contentmarkdown').removeClass('hidden'); + $('#contentBox .contenthtml').addClass('hidden'); + $('#contentBox #contentType').val(type); + } + } + else if(type == 'url') + { + $('#contentBox').addClass('hidden'); + $('#urlBox').removeClass('hidden'); + } +} diff --git a/module/doc/lang/zh-cn.php b/module/doc/lang/zh-cn.php index e0c57bfa8f..22c1822915 100644 --- a/module/doc/lang/zh-cn.php +++ b/module/doc/lang/zh-cn.php @@ -118,6 +118,10 @@ $lang->doc->aclList['open'] = '公开'; $lang->doc->aclList['custom'] = '自定义'; $lang->doc->aclList['private'] = '私有'; +$lang->doc->typeList['html'] = '富文本'; +$lang->doc->typeList['markdown'] = 'Markdown'; +$lang->doc->typeList['url'] = '链接'; + $lang->doc->types['text'] = '文档'; $lang->doc->types['url'] = '链接'; diff --git a/module/doc/model.php b/module/doc/model.php index 5e17ae4349..76aef30730 100644 --- a/module/doc/model.php +++ b/module/doc/model.php @@ -855,7 +855,7 @@ class docModel extends model $account = ',' . $this->app->user->account . ','; if(isset($object->addedBy) and $object->addedBy == $this->app->user->account) return true; - if(strpos(",$object->users,", $account) !== false) return true; + if(isset($object->users) and strpos(",{$object->users},", $account) !== false) return true; if($object->acl == 'custom') { $userGroups = $this->app->user->groups; @@ -872,8 +872,8 @@ class docModel extends model if(isset($extraDocLibs[$object->id])) return true; } - if($object->project) return $this->loadModel('project')->checkPriv($object->project); - if($object->product) return $this->loadModel('product')->checkPriv($object->product); + if(!empty($object->project)) return $this->loadModel('project')->checkPriv($object->project); + if(!empty($object->product)) return $this->loadModel('product')->checkPriv($object->product); return false; } @@ -1141,7 +1141,7 @@ class docModel extends model $projects = $mineProjects = $otherProjects = $closedProjects = array(); foreach($libs as $lib) { - if(!$this->app->user->admin and !$this->lib->checkPriv($lib->id)) continue; + if(!$this->app->user->admin and !$this->checkPrivLib($lib)) continue; if($lib->status != 'done' and $lib->status != 'closed' and $lib->PM == $this->app->user->account) { $mineProjects[$lib->id] = $lib; diff --git a/module/doc/view/browse.html.php b/module/doc/view/browse.html.php index 1ccc855ab2..eed51a77ce 100644 --- a/module/doc/view/browse.html.php +++ b/module/doc/view/browse.html.php @@ -53,7 +53,16 @@ var browseType = '';