license.html.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. /**
  3. * The license view file of admin module of ZenTaoPMS.
  4. * @copyright Copyright 2009-2024 禅道软件(青岛)有限公司(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 Shujie Tian <tianshujie@chandao.com>
  7. * @package admin
  8. * @link https://www.zentao.net
  9. */
  10. namespace zin;
  11. $tableItems = array();
  12. foreach($lang->admin->property as $key => $name)
  13. {
  14. $property = zget($ioncubeProperties, $key, '');
  15. if($key == 'serviceDeadline' && helper::isZeroDate($property)) continue;
  16. if($key == 'expireDate' and $property == 'All Life') $property = $lang->admin->licenseInfo['alllife'];
  17. if($key == 'user' and empty($property)) $property = $lang->admin->licenseInfo['nouser'];
  18. $tableItems[] = item(set::name($name), $property);
  19. }
  20. $buildExtTable = function() use($extProperties, $userCount)
  21. {
  22. if(empty($extProperties)) return;
  23. global $lang, $app;
  24. $trList = array();
  25. foreach($extProperties as $extCode => $properties)
  26. {
  27. if(!is_array($properties)) return array();
  28. $canManageMember = false;
  29. $expired = false;
  30. if(!empty($properties['user']) && $userCount > $properties['user']) $canManageMember = true;
  31. if(!empty($properties['expireDate']) && $properties['expireDate'] != 'All Life' && $properties['expireDate'] < date('Y-m-d'))
  32. {
  33. $canManageMember = false;
  34. $expired = true;
  35. }
  36. $link = $canManageMember ? helper::createLink('admin', 'manageExtMember', "code={$extCode}") : '#';
  37. $title = $lang->admin->authorUser;
  38. if(!$canManageMember)
  39. {
  40. $title = $lang->admin->disableForCount;
  41. if($expired) $title = $lang->admin->disableForExpire;
  42. }
  43. $trList[] = h::tr
  44. (
  45. h::td($lang->admin->extensionList[$extCode]),
  46. h::td(setClass('text-center'), $properties['startDate']),
  47. h::td(setClass('text-center'), $properties['expireDate'] == 'All Life' ? $lang->admin->licenseInfo['alllife'] : $properties['expireDate']),
  48. h::td(setClass('text-center'), empty($properties['user']) ? $lang->admin->licenseInfo['nouser'] : $properties['user']),
  49. h::td(setClass('text-center'), $app->user->admin ? html(html::a($link, "<i class='icon icon-persons'></i>", '', "data-toggle='modal' title='{$title}'" . ($canManageMember ? '' : " class='disabled'"))) : null)
  50. );
  51. }
  52. return h::table
  53. (
  54. setClass('table mt-5'),
  55. h::caption(setClass('text-left p-3 font-bold'), $lang->admin->solutionExt),
  56. h::thead
  57. (
  58. h::tr
  59. (
  60. h::th(setClass('text-left'), $lang->admin->extensionName),
  61. h::th(setClass('w-32'), $lang->admin->property->startDate),
  62. h::th(setClass('w-32'), $lang->admin->property->expireDate),
  63. h::th(setClass('w-32'), $lang->admin->property->user),
  64. h::th(setClass('w-20'), $lang->actions)
  65. )
  66. ),
  67. h::tbody($trList)
  68. );
  69. };
  70. panel
  71. (
  72. detailHeader
  73. (
  74. to::prefix(''),
  75. to::title(entityLabel(set(array('level' => 2, 'text' => $lang->admin->license)))),
  76. to::suffix
  77. (
  78. btn
  79. (
  80. setClass('btn primary'),
  81. set::url(inlink('uploadLicense')),
  82. setData(array('toggle' => 'modal')),
  83. $lang->admin->uploadLicense
  84. )
  85. )
  86. ),
  87. hr(),
  88. tableData($tableItems),
  89. $buildExtTable()
  90. );