project.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. // Expecting the context to be a project or nothing at all
  3. global $context;
  4. ($context?$context->permission('read'):Bugs::$user->permission('project.read')&&Bugs::$user->permission('project.create')) or trigger_error('You are not allowed to view this project');
  5. $update = $context?$context->permission('update'):Bugs::$user->permission('project.create');
  6. $delete = $context?$context->permission('delete'):Bugs::$user->permission('project.delete');
  7. function getval($name){
  8. global $context;
  9. return $context?$context->{$name}:null;
  10. }
  11. ?>
  12. <!doctype html>
  13. <head>
  14. <meta charset="utf8"/>
  15. <title>Project <?=getval('name');?></title>
  16. <script src="<?=Router::url(Router::$base)?>/js/juju/core.js"></script>
  17. <script src="<?=Router::url(Router::$base)?>/js/juju/page.js"></script>
  18. <script src="<?=Router::url(Router::$base)?>/js/juju/dom.js"></script>
  19. <script src="<?=Router::url(Router::$base)?>/js/juju/keyboard.js"></script>
  20. <script src="<?=Router::url(Router::$base)?>/js/juju/mouse.js"></script>
  21. <script src="<?=Router::url(Router::$base)?>/js/project.js"></script>
  22. <script>
  23. BASE_URL = '<?=Router::url(Router::$base)?>';
  24. </script>
  25. <link rel="stylesheet" href="<?=Router::url(Router::$base)?>/css/main.css"></link>
  26. </head>
  27. <body>
  28. <a href="<?=Router::url(Router::$base)?>">Home</a>
  29. <form id="form-project" method="post">
  30. <div>
  31. <label for="name">Name:</label>
  32. <input value="<?=getval('name');?>" <?=$update?'name="name"':'disabled="disabled"';?>/>
  33. </div>
  34. <div>
  35. <label for="description">Description:</label>
  36. <input type="description" value="<?=getval('description');?>" <?=$update?'name="description"':'disabled="disabled"';?>/>
  37. </div>
  38. <?php
  39. if($context){
  40. ?>
  41. <div>
  42. <label>Status:</label>
  43. <?=getval('status')?>
  44. </div>
  45. <div>
  46. <label>User:</label>
  47. <a href="<?=Router::url(Router::$base.'/~'.getval('user')->name)?>">
  48. <?=getval('user')->name;?>
  49. </a>
  50. </div>
  51. <div>
  52. <label>Date Registered:</label>
  53. <time datetime="<?=date('c',getval('date_created'));?>"><?=date('Y-m-d',getval('date_created'));?></time>
  54. </div>
  55. <div>
  56. <label>Date Modified:</label>
  57. <time datetime="<?=date('c',getval('date_modified'));?>"><?=date('Y-m-d',getval('date_modified'));?></time>
  58. </div>
  59. <input type="hidden" name="id" value="<?=getval('id')?>"/>
  60. <?php
  61. }
  62. if($update){
  63. ?>
  64. <input type="submit" value="<?=$context?'Update':'Create'?>"/>
  65. <?php
  66. }
  67. ?>
  68. </form>
  69. <?php
  70. if($context){
  71. ?>
  72. <div>
  73. <h3>Issues</h3>
  74. <a href="<?=Router::url(Router::$base."/project/{$context->name}/create/issue")?>">New</a>
  75. <ul>
  76. <?php
  77. foreach($context->issues as $issue){
  78. echo "<li>({$issue->status} - {$issue->priority}) <a href=\"".Router::url(Router::$base."/!{$issue->id}")."\">{$issue->name}</a></li>";
  79. }
  80. ?>
  81. </ul>
  82. </div>
  83. <?php
  84. }
  85. ?>
  86. </body>
  87. </html>