printassigntomeblock.html.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <?php
  2. /**
  3. * The assigntome block view file of block module of ZenTaoPMS.
  4. *
  5. * @copyright Copyright 2009-2023 禅道软件(青岛)有限公司(ZenTao Software (Qingdao) Co., Ltd. www.cnezsoft.com)
  6. * @license ZPL(http://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
  7. * @author Yidong Wang <yidong@cnezsoft.com>
  8. * @package block
  9. * @version $Id$
  10. * @link https://www.zentao.net
  11. */
  12. ?>
  13. <style>
  14. #assigntomeBlock .nav > li:not(.active) > a {padding: 8px 12px; color: #838A9D; border-color: #eee;}
  15. #assigntomeBlock .nav > li:not(.open) > a {color: #838A9D;}
  16. </style>
  17. <div id='assigntomeBlock'>
  18. <ul class="nav nav-secondary">
  19. <?php $isFirstTab = true;?>
  20. <?php $printMore = false;?>
  21. <?php $i = 0;?>
  22. <?php $maxItem = common::checkNotCN() ? 6 : 8;?>
  23. <?php foreach($hasViewPriv as $type => $bool):?>
  24. <?php if($i <= $maxItem):?>
  25. <li<?php if($isFirstTab) {echo ' class="active"';}?>>
  26. <a data-tab href='#assigntomeTab-<?php echo $type;?>' onClick="changeLabel('<?php echo $type;?>')">
  27. <?php echo $type == 'review' ? $lang->my->audit : $lang->block->availableBlocks->$type;?>
  28. <span class='label label-light label-badge label-assignto <?php echo $type . "-count "; echo $isFirstTab ? '' : 'hidden'; $isFirstTab = false ?>'><?php echo $count[$type];?></span>
  29. </a>
  30. </li>
  31. <?php else:?>
  32. <?php if(!$printMore):?>
  33. <?php $printMore = true;?>
  34. <li>
  35. <a class="dropdown-toggle moreBtn" data-toggle="dropdown" onClick="changeLabel('more')"><?php echo $lang->more;?><span class="caret"></span></a>
  36. <ul class="dropdown-menu">
  37. <?php endif;?>
  38. <li<?php if($isFirstTab) {echo ' class="active"';}?>>
  39. <a data-tab href='#assigntomeTab-<?php echo $type;?>' class='<?php echo "$type"?>' onClick="changeMoreBtn('<?php echo $type;?>', this);">
  40. <?php echo $type == 'review' ? $lang->my->audit : $lang->block->availableBlocks->$type;?>
  41. <span class='label label-light label-badge label-assignto <?php echo $type . "-count "; echo $isFirstTab ? '' : 'hidden'; $isFirstTab = false ?>'><?php echo $count[$type];?></span>
  42. </a>
  43. </li>
  44. <?php endif;?>
  45. <?php $i ++;?>
  46. <?php endforeach;?>
  47. <?php if($printMore) echo '</ul></li>';?>
  48. </ul>
  49. <div class="tab-content">
  50. <?php $isFirstTab = true; ?>
  51. <?php foreach($hasViewPriv as $type => $bool):?>
  52. <div class="tab-pane<?php if($isFirstTab) {echo ' active'; $isFirstTab = false;}?>" id="assigntomeTab-<?php echo $type?>">
  53. <?php include "{$type}block.html.php";?>
  54. </div>
  55. <?php endforeach;?>
  56. </div>
  57. </div>
  58. <style>
  59. #assigntomeBlock {position: relative;}
  60. #assigntomeBlock .block-todoes {padding-top: 10px}
  61. #assigntomeBlock > .nav {position: absolute; top: -41px; left: 120px;}
  62. #assigntomeBlock .block-todoes .todoes-form{top: -50px;}
  63. </style>
  64. <script>
  65. /**
  66. * Change label.
  67. *
  68. * @param string type
  69. * @access public
  70. * @return void
  71. */
  72. function changeLabel(type)
  73. {
  74. var $moreBtn = $('#assigntomeBlock .moreBtn');
  75. if($moreBtn.length > 0 && type != 'more')
  76. {
  77. $moreBtn.html("<?php echo $lang->more;?>" + "<span class='caret'></span>");
  78. }
  79. if(type != 'more')
  80. {
  81. $('.label-assignto').addClass('hidden');
  82. $('.' + type + '-count').removeClass('hidden');
  83. }
  84. }
  85. /**
  86. * Change more button.
  87. *
  88. * @param string type
  89. * @param object label
  90. * @access public
  91. * @return void
  92. */
  93. function changeMoreBtn(type, label)
  94. {
  95. $('.label-assignto').addClass('hidden');
  96. $('.' + type + '-count').removeClass('hidden');
  97. var $moreBtn = $('#assigntomeBlock .moreBtn');
  98. var text = $(label).html();
  99. text += '<span class="caret"></span>';
  100. $moreBtn.html(text);
  101. setTimeout(function()
  102. {
  103. $moreBtn.parent().addClass('active');
  104. }, 100);
  105. }
  106. $('#assigntomeBlock').closest('.panel').attr('data-fixed', 'main');
  107. </script>