settings_milestones.html 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <h3 class="font-weight-bold mb-3">
  2. Roadmap
  3. </h3>
  4. <p>
  5. Each issue can be assigned to a <em>milestone</em>. This way it is
  6. possible to create a roadmap for your project. Below you can create
  7. the milestones and optionally set dates for them.
  8. </p>
  9. <form action="{{ url_for(
  10. '.update_milestones',
  11. repo=repo.name,
  12. username=username,
  13. namespace=repo.namespace, from=from or None) }}"
  14. method="post" class="icon">
  15. {{ tag_form.csrf_token }}
  16. <div class="row">
  17. <div class="col-sm-4">
  18. <strong>Milestone</strong>
  19. </div>
  20. <div class="col-sm-4">
  21. <strong>Date (optional)</strong>
  22. </div>
  23. <div class="col-sm-2">
  24. <strong>Reorder</strong>
  25. </div>
  26. <div class="col-sm-2">
  27. <strong>Active</strong>
  28. </div>
  29. </div>
  30. <div id="milestones">
  31. {% for milestone in (repo.milestones_keys or repo.milestones or [""]) %}
  32. <div class="row p-t-1 milestone{%if milestone and
  33. not repo.milestones[milestone]['active'] %} milestone_inactive {%
  34. endif %}" id="milestone_{{ loop.index }}">
  35. <input type="hidden" name="milestones" value="{{ loop.index }}">
  36. <div class="col-sm-4 p-r-0">
  37. <input type="text" name="milestone_{{ loop.index }}_name"
  38. value="{{ milestone }}" size="3" class="form-control"/>
  39. </div>
  40. <div class="col-sm-4 p-r-0">
  41. <input type="text" name="milestone_{{ loop.index }}_date"
  42. value="{{ repo.milestones[milestone]['date']
  43. if milestone and repo.milestones[milestone]['date'] is not none
  44. }}" class="form-control"/>
  45. </div>
  46. <div class="col-sm-2 p-r-0" >
  47. <span class="fa fa-long-arrow-up milestone_order_up"
  48. data-stone="{{ loop.index }}"></span>
  49. <span class="fa fa-long-arrow-down milestone_order_bottom"
  50. data-stone="{{ loop.index }}"></span>
  51. </div>
  52. <div class="col-sm-1 p-r-0" >
  53. <input type="checkbox" name="milestone_{{ loop.index
  54. }}_active"{% if milestone and repo.milestones[milestone]['active']
  55. %} checked{% endif %} />
  56. </div>
  57. </div>
  58. {% endfor %}
  59. </div>
  60. <div class="row p-t-1">
  61. <div class="col-sm-6">
  62. <a class="btn btn-outline-primary btn-sm btn-block extend-form mt-1 pointer"
  63. data-target="#milestones">
  64. <i class="fa fa-plus"></i> Add new milestone
  65. </a>
  66. </div>
  67. <div class="col-sm-6">
  68. <a class="btn btn-outline-primary btn-sm btn-block extend-form mt-1 pointer"
  69. data-target="#milestones_show">
  70. <i class="fa fa-repeat"></i> Show all milestones
  71. </a>
  72. </div>
  73. </div>
  74. <div class="row p-t-1">
  75. <div class="col-sm-12">
  76. <button class="btn btn-primary float-right mt-3" type="submit"
  77. title="Update the milestones">
  78. Update
  79. </button>
  80. </div>
  81. </div>
  82. </form>