Advertisement
p4geoff

module/Projects/view/projects/index/edit.phtml

May 10th, 2013
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.27 KB | None | 0 0
  1. <?php
  2. $this->headTitle()->set(ucfirst($mode) . ' Project');
  3. ?>
  4.  
  5. <div class="project-edit">
  6. <h1><?php echo $this->escapeHtml(ucfirst($mode)) ?> Project</h1>
  7. <form method="post" class="form-horizontal form">
  8. <div class="control-group">
  9. <label class="control-label" for="name">Name</label>
  10. <div class="controls">
  11. <input class="input-xlarge" type="text" name="name" id="name"
  12. value="<?php echo $this->escapeHtmlAttr($project->getName()) ?>"
  13. placeholder="Name" required>
  14. </div>
  15. </div>
  16. <div class="control-group">
  17. <label class="control-label" for="description">Description</label>
  18. <div class="controls">
  19. <textarea class="input-xxlarge" rows="10" name="description" id="description"
  20. placeholder="Description"><?php
  21. echo $this->escapeHtmlAttr($project->getDescription())
  22. ?></textarea>
  23. </div>
  24. </div>
  25. <div class="control-group team">
  26. <label class="control-label" for="members">Team</label>
  27. <div class="controls swarm-add-member">
  28. <div class="input-prepend" clear="both">
  29. <span class="add-on"><i class="icon-user"></i></span>
  30. <input type="text" class="typeahead-group input-xlarge" id="members"
  31. data-provide="typeahead" data-items="100"
  32. placeholder="Member Name" <?php echo !$project->getMembers() ? 'required' : '' ?>>
  33. </div>
  34. </div>
  35. <div class="controls team-list clearfix">
  36. <div class="member-template" style="display:none">
  37. <div class="member-button pull-left">
  38. <div class="btn-group">
  39. <button type="button" class="btn btn-mini btn-info member-name"></button>
  40. <button type="button" class="btn btn-mini btn-info member-remove">
  41. <i class="icon-remove icon-white"></i>
  42. </button>
  43. </div>
  44. <input type="hidden" name="members[]" class="member-id" disabled>
  45. </div>
  46. </div>
  47. <?php foreach ($project->getMembers() as $member): ?>
  48. <div class="member-button pull-left">
  49. <div class="btn-group">
  50. <button type="button" class="btn btn-mini btn-info member-name">
  51. <?php echo $this->escapeHtml($member) ?>
  52. </button>
  53. <button type="button" class="btn btn-mini btn-info member-remove">
  54. <i class="icon-remove icon-white"></i>
  55. </button>
  56. </div>
  57. <input type="hidden" name="members[]" class="member-id"
  58. value="<?php echo $this->escapeHtmlAttr($member) ?>">
  59. </div>
  60. <?php endforeach ?>
  61. </div>
  62. </div>
  63. <div class="control-group branches">
  64. <label class="control-label" for="branches">Branches</label>
  65. <div class="controls">
  66. <?php
  67. $i = 0;
  68. foreach($project->getBranches() as $branch):
  69. ?>
  70. <div class="branch-button">
  71. <div class="btn-group existing">
  72. <button class="btn dropdown-toggle" data-toggle="dropdown" type="button">
  73. <span class="branch-label"><?php echo $this->escapeHtml($branch['name']) ?></span>
  74. <span class="caret"></span>
  75. </button>
  76. <div class="dropdown-menu dropdown-subform pad3">
  77. <input type="hidden" name="branches[<?php echo $i ?>][id]"
  78. value="<?php echo $this->escapeHtmlAttr($branch['id']) ?>">
  79. <div class="control-group">
  80. <label>Name</label>
  81. <input type="text" class="input-large subform-identity-element"
  82. placeholder="Branch Name"
  83. name="branches[<?php echo $i ?>][name]"
  84. value="<?php echo $this->escapeHtmlAttr($branch['name']) ?>">
  85. </div>
  86. <div class="control-group">
  87. <label>Paths</label>
  88. <textarea class="input-xxlarge branch-paths" rows="4"
  89. placeholder="//depot/path/to/branch/..."
  90. name="branches[<?php echo $i ?>][paths]"><?php
  91. echo $this->escapeHtml(implode("\n", $branch['paths']))
  92. ?></textarea>
  93. </div>
  94. <button class="btn btn-small btn-primary close-branch-btn" type="button">
  95. Done
  96. </button>
  97. <button class="btn btn-small clear-branch-btn" type="button">
  98. Remove
  99. </button>
  100. </div>
  101. </div>
  102. </div>
  103. <?php
  104. $i++;
  105. endforeach
  106. ?>
  107. <div class="swarm-branch-link">
  108. <a class="swarm-branch-group" name="branches" href="#"><strong>+</strong> Add Branch</a>
  109. </div>
  110. <div class="branch-template" style="display:none">
  111. <div class="branch-button">
  112. <div class="btn-group">
  113. <button class="btn dropdown-toggle" data-toggle="dropdown" type="button">
  114. &nbsp;<span class="caret"></span>
  115. </button>
  116. <div class="dropdown-menu dropdown-subform pad3">
  117. <div class="control-group">
  118. <label>Name</label>
  119. <input type="text" class="input-large subform-identity-element"
  120. placeholder="Branch Name">
  121. </div>
  122. <div class="control-group">
  123. <label>Paths</label>
  124. <textarea class="input-xxlarge branch-paths"
  125. placeholder="//depot/path/to/branch/..."></textarea>
  126. </div>
  127. <button class="btn btn-small btn-primary close-branch-btn" type="button">
  128. Done
  129. </button>
  130. <button class="btn btn-small clear-branch-btn" type="button">
  131. Remove
  132. </button>
  133. </div>
  134. </div>
  135. </div>
  136. </div>
  137. </div>
  138. </div>
  139. <div class="control-group">
  140. <label class="control-label" for="jobview">Job Filter</label>
  141. <div class="controls">
  142. <input class="input-xlarge" type="text" name="jobview" id="jobview"
  143. value="<?php echo $this->escapeHtmlAttr($project->getJobview()) ?>"
  144. placeholder="key=value">
  145. </div>
  146. </div>
  147. <div class="control-group automated-tests">
  148. <label class="control-label" for="testing">Automated Tests</label>
  149. <div class="controls">
  150. <div class="automated-tests-control">
  151. <label class="checkbox" for="testsEnabled">
  152. <input type="checkbox" name="tests[enabled]" data-toggle="collapse" data-target=".automated-tests-control .body"
  153. <?php echo $project->getTests('enabled') ? 'checked' : '' ?>
  154. id="testsEnabled"> Enable
  155. </label>
  156. <div class="body collapse <?php echo $project->getTests('enabled') ? 'in' : '' ?>">
  157. <textarea class="input-xxlarge" name="tests[url]" rows="3"
  158. placeholder="http://test-server/build?change={change}"><?php
  159. echo $this->escapeHtml($project->getTests('url'))
  160. ?></textarea>
  161. <div class="help-block">
  162. Enter a URL to request when reviews are created or updated.<br>
  163. Some special <a href="#" onclick="return false;" class="help-details"
  164. data-html="true"
  165. data-content="<dl class='dl-horizontal monospace'>
  166. <dt>{change}</dt>
  167. <dd>Change Number</dd>
  168. <dt>{status}</dt>
  169. <dd>Change Status (shelved/submitted)</dd>
  170. <dt>{review}</dt>
  171. <dd>Review Identifier</dd>
  172. <dt>{project}</dt>
  173. <dd>Project Identifier</dd>
  174. <dt>{branch}</dt>
  175. <dd>Branch Identifier(s) (comma-separated)</dd>
  176. <dt>{pass}</dt>
  177. <dd>Pass Callback URL</dd>
  178. <dt>{fail}</dt>
  179. <dd>Failure Callback URL</dd>
  180. </dl>">arguments</a> are supported.
  181. </div>
  182. </div>
  183. </div>
  184. </div>
  185. </div>
  186. <div class="control-group group-buttons">
  187. <div class="controls">
  188. <button type="submit" class="btn btn-mlarge btn-primary">Save</button>
  189. <button type="button" class="btn btn-mlarge" onclick="window.history.back(); return false;">Cancel</button>
  190. </div>
  191. </div>
  192. </form>
  193. <?php
  194. $actionUrl = $mode === 'edit'
  195. ? '/project/edit/' . $this->escapeUrl($project->getId())
  196. : '/project/add';
  197. $allMembers = array();
  198. $utf8Filter = new \P4\Filter\Utf8;
  199. foreach ($users as $user) {
  200. $allMembers[] = $utf8Filter->filter(
  201. $user->getId()
  202. . ($user->getFullName() !== $user->getId() ? ' (' . $user->getFullName() . ')' : '')
  203. );
  204. }
  205. ?>
  206. <script type="text/javascript">
  207. swarm.project.team.allMembers = <?php echo json_encode($allMembers) ?>;
  208. swarm.project.initEdit('.project-edit', '<?php echo $this->escapeJs($actionUrl) ?>');
  209. </script>
  210. </div>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement