lefttree.html.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. /**
  3. * The left tree view file of doc module of ZenTaoPMS.
  4. * @copyright Copyright 2009-2023 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.zentao.net)
  5. * @license ZPL(https://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
  6. * @author Yanyi Cao <caoyanyi@easycorp.ltd>
  7. * @package doc
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. h::css
  12. (
  13. <<<CSS
  14. [data-type="mine"]{display: none;}
  15. [data-type="mine"] + menu{--list-nested-indent: 0px !important; border-bottom-width: 1px; padding-bottom: 8px; margin-bottom: 8px; max-height: calc(100vh - 250px); overflow-y:auto; padding-left:5px; padding-right: 5px;}
  16. [data-type="mine"] + menu:before{border-left-width: 0px !important;}
  17. CSS
  18. );
  19. $canSort = hasPriv('doc', 'sortCatalog');
  20. if($app->rawModule == 'doc' && $app->rawMethod == 'view')
  21. {
  22. $settingLink = hasPriv('doc', 'displaySetting') ? inlink('displaySetting') : '';
  23. $settingText = $lang->doc->displaySetting;
  24. }
  25. elseif(hasPriv('doc', 'editLib') && $spaceType == 'custom')
  26. {
  27. $spaceID = $objectID;
  28. $settingLink = inlink('editLib', "libID=$spaceID");
  29. $settingText = $lang->doclib->editSpace;
  30. }
  31. else
  32. {
  33. $settingLink = '';
  34. $settingText = '';
  35. }
  36. if($app->rawModule == 'doc' && $app->rawMethod == 'view') $objectID = $docID;
  37. sidebar
  38. (
  39. set::width(200),
  40. set::minWidth(200),
  41. docMenu
  42. (
  43. set::modules($libTree),
  44. set::spaceMethod($config->doc->spaceMethod),
  45. set::libID((int)$libID),
  46. set::release(isset($release) ? $release : 0),
  47. set::moduleID((int)$moduleID),
  48. set::linkParams($linkParams),
  49. set::spaceType($spaceType),
  50. set::objectType(isset($type) ? $type : ''),
  51. set::objectID(isset($objectID) ? $objectID : 0),
  52. set::sortable(array('handle' => '.icon-move')),
  53. set::onSort(jsRaw('window.updateOrder')),
  54. set::canSortTo(jsRaw('window.canSortTo')),
  55. set::title(!empty($objectDropdown['text']) ? $objectDropdown['text'] : $objectTitle),
  56. set::menuLink(isset($objectDropdown['link']) ? $objectDropdown['link'] : ''),
  57. set::settingLink($settingLink),
  58. set::settingText($settingText),
  59. set::defaultNestedShow(true)
  60. )
  61. );
  62. if($spaceType == 'mine')
  63. {
  64. h::js
  65. (
  66. <<<JAVASCRIPT
  67. waitDom('.doc-menu .listitem[data-type="mine"]', function()
  68. {
  69. let \$item = \$(this).parent();
  70. if(\$item.hasClass('is-nested-hide')) \$item.trigger('click');
  71. })
  72. JAVASCRIPT
  73. );
  74. }