您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

295 行
13KB

  1. {% extends 'base.html' %}
  2. {% block content %}
  3. <h1>{% block title %} Edit "{{ resource['name'] }}" {% endblock %}</h1>
  4. <form method="post">
  5. <div class="mb-3 mt-3">
  6. <label for="name">Name</label>
  7. <input type="text" name="name" placeholder="Name"
  8. class="form-control"
  9. value="{{ request.form['name'] or resource['name'] }}">
  10. </input>
  11. </div>
  12. {% if resource['type'] == 'tool' %}
  13. <div class="mb-3 mt-3">
  14. <label for="description">Description</label>
  15. <textarea name="description" placeholder="Description"
  16. class="form-control">{{ request.form['description'] or resource['description'] }}</textarea>
  17. </div>
  18. <div class="mb-3 mt-3">
  19. <label for="developer">Developer</label>
  20. <input type="text" name="developer" placeholder="Developer"
  21. class="form-control"
  22. value="{{ request.form['developer'] or resource['developer'] }}">
  23. </input>
  24. </div>
  25. <div class="mb-3 mt-3">
  26. <label for="developerUrl">Developer URL</label>
  27. <input type="text" name="developerUrl" placeholder="Developer URL"
  28. class="form-control"
  29. value="{{ request.form['developerUrl'] or resource['developerUrl'] }}">
  30. </input>
  31. </div>
  32. <div class="mb-3 mt-3">
  33. <label for="projectUrl">Project URL</label>
  34. <input type="text" name="projectUrl" placeholder="Project URL"
  35. class="form-control"
  36. value="{{ request.form['projectUrl'] or resource['projectUrl'] }}">
  37. </input>
  38. </div>
  39. <div class="mb-3 mt-3">
  40. <label for="repositoryUrl">Repository URL</label>
  41. <input type="text" name="repositoryUrl" placeholder="Repository URL"
  42. class="form-control"
  43. value="{{ request.form['repositoryUrl'] or resource['repositoryUrl'] }}">
  44. </input>
  45. </div>
  46. <div class="mb-3 mt-3">
  47. <label for="license">Software license</label>
  48. <input type="text" name="license" placeholder="Software license"
  49. class="form-control"
  50. value="{{ request.form['license'] or resource['license'] }}">
  51. </input>
  52. </div>
  53. <div class="mb-3 mt-3">
  54. <label for="scriptingLanguage">Software language(s)</label>
  55. <input type="text" name="scriptingLanguage" placeholder="Software language(s)"
  56. class="form-control"
  57. value="{{ request.form['scriptingLanguage'] or resource['scriptingLanguage'] }}">
  58. </input>
  59. </div>
  60. <div class="mb-3 mt-3">
  61. <label for="expertiseToUse">Expertise required to use</label>
  62. <input type="text" name="expertiseToUse" placeholder="Expertise required to use"
  63. class="form-control"
  64. value="{{ request.form['expertiseToUse'] or resource['expertiseToUse'] }}">
  65. </input>
  66. </div>
  67. <div class="mb-3 mt-3">
  68. <label for="expertiseToHost">Expertise required to host</label>
  69. <input type="text" name="expertiseToHost" placeholder="Expertise required to host"
  70. class="form-control"
  71. value="{{ request.form['expertiseToHost'] or resource['expertiseToHost'] }}">
  72. </input>
  73. </div>
  74. <div class="mb-3 mt-3">
  75. <label for="dependencies">Technical dependencies</label>
  76. <input type="text" name="dependencies" placeholder="Technical dependencies"
  77. class="form-control"
  78. value="{{ request.form['dependencies'] or resource['dependencies'] }}">
  79. </input>
  80. </div>
  81. <div class="mb-3 mt-3">
  82. <label for="ingestFormats">Import / ingest formats</label>
  83. <input type="text" name="ingestFormats" placeholder="Import / ingest formats"
  84. class="form-control"
  85. value="{{ request.form['ingestFormats'] or resource['ingestFormats'] }}">
  86. </input>
  87. </div>
  88. <div class="mb-3 mt-3">
  89. <label for="outputFormats">Output formats</label>
  90. <input type="text" name="outputFormats" placeholder="Output formats"
  91. class="form-control"
  92. value="{{ request.form['outputFormats'] or resource['outputFormats'] }}">
  93. </input>
  94. </div>
  95. <div class="mb-3 mt-3">
  96. <label for="status">Platform status</label>
  97. <input type="text" name="status" placeholder="Platform status"
  98. class="form-control"
  99. value="{{ request.form['status'] or resource['status'] }}">
  100. </input>
  101. </div>
  102. <div class="mb-3 mt-3">
  103. <label for="linked_practices">Add practices relationship(s) (hold Ctrl to select multiple options)</label>
  104. </div>
  105. <div class="mb-3 mt-3">
  106. <select name="linked_practices" id="linked_practices" aria-label="Add practices relationships" class="selectpicker" data-live-search="true" multiple>
  107. {% for resource_dropdown in resource_dropdown %}
  108. {% if resource_dropdown['type'] == 'practice' %}
  109. {% if relationships and resource_dropdown in relationships %}
  110. <option value="{{ resource_dropdown['id'] }}" selected>{{ resource_dropdown['name'] }}</option>
  111. {% else %}
  112. <option value="{{ resource_dropdown['id'] }}">{{ resource_dropdown['name'] }}</option>
  113. {% endif %}
  114. {% endif %}
  115. {% endfor %}
  116. </select>
  117. </div>
  118. <div class="mb-3 mt-3">
  119. <label for="linked_books">Add books relationship(s) (hold Ctrl to select multiple options)</label>
  120. </div>
  121. <div class="mb-3 mt-3">
  122. <select name="linked_books" id="linked_books" aria-label="Add books relationships" class="selectpicker" data-live-search="true" multiple>
  123. {% for resource_dropdown in resource_dropdown %}
  124. {% if resource_dropdown['type'] == 'book' %}
  125. {% if relationships and resource_dropdown in relationships %}
  126. <option value="{{ resource_dropdown['id'] }}" selected>{{ resource_dropdown['name'] }}</option>
  127. {% else %}
  128. <option value="{{ resource_dropdown['id'] }}">{{ resource_dropdown['name'] }}</option>
  129. {% endif %}
  130. {% endif %}
  131. {% endfor %}
  132. </select>
  133. </div>
  134. {% elif resource['type'] == 'practice' %}
  135. <div class="mb-3 mt-3">
  136. <label for="practice_markdown">Markdown text</label>
  137. <textarea name="practice_markdown" placeholder="Markdown text"
  138. class="form-control">{{ request.form['practice_markdown'] or practice_markdown }}</textarea>
  139. </div>
  140. <div class="mb-3 mt-3">
  141. <label for="linked_tools">Add tools relationship(s) (hold Ctrl to select multiple options)</label>
  142. </div>
  143. <div class="mb-3 mt-3">
  144. <select name="linked_tools" id="linked_tools" aria-label="Add tools relationships" class="selectpicker" data-live-search="true" multiple>
  145. {% for resource_dropdown in resource_dropdown %}
  146. {% if resource_dropdown['type'] == 'tool' %}
  147. {% if relationships and resource_dropdown in relationships %}
  148. <option value="{{ resource_dropdown['id'] }}" selected>{{ resource_dropdown['name'] }}</option>
  149. {% else %}
  150. <option value="{{ resource_dropdown['id'] }}">{{ resource_dropdown['name'] }}</option>
  151. {% endif %}
  152. {% endif %}
  153. {% endfor %}
  154. </select>
  155. </div>
  156. <div class="mb-3 mt-3">
  157. <label for="linked_books">Add books relationship(s) (hold Ctrl to select multiple options)</label>
  158. </div>
  159. <div class="mb-3 mt-3">
  160. <select name="linked_books" id="linked_books" aria-label="Add books relationships" class="selectpicker" data-live-search="true" multiple>
  161. {% for resource_dropdown in resource_dropdown %}
  162. {% if resource_dropdown['type'] == 'book' %}
  163. {% if relationships and resource_dropdown in relationships %}
  164. <option value="{{ resource_dropdown['id'] }}" selected>{{ resource_dropdown['name'] }}</option>
  165. {% else %}
  166. <option value="{{ resource_dropdown['id'] }}">{{ resource_dropdown['name'] }}</option>
  167. {% endif %}
  168. {% endif %}
  169. {% endfor %}
  170. </select>
  171. </div>
  172. {% elif resource['type'] == 'book' %}
  173. <div class="mb-3 mt-3">
  174. <label for="description">Description</label>
  175. <textarea name="description" placeholder="Description"
  176. class="form-control">{{ request.form['description'] or resource['description'] }}</textarea>
  177. </div>
  178. <div class="mb-3 mt-3">
  179. <label for="author">Author</label>
  180. <input type="text" name="author" placeholder="Author"
  181. class="form-control"
  182. value="{{ request.form['author'] or resource['author'] }}">
  183. </input>
  184. </div>
  185. <div class="mb-3 mt-3">
  186. <label for="year">Publication year</label>
  187. <input type="text" name="year" placeholder="Publication year"
  188. class="form-control"
  189. value="{{ request.form['year'] or resource['year'] }}">
  190. </input>
  191. </div>
  192. <div class="mb-3 mt-3">
  193. <label for="typology">Typology category</label>
  194. <input type="text" name="typology" placeholder="Typology category"
  195. class="form-control"
  196. value="{{ request.form['typology'] or resource['typology'] }}">
  197. </input>
  198. </div>
  199. <div class="mb-3 mt-3">
  200. <label for="bookUrl">URL</label>
  201. <input type="text" name="bookUrl" placeholder="URL"
  202. class="form-control"
  203. value="{{ request.form['bookUrl'] or resource['bookUrl'] }}">
  204. </input>
  205. </div>
  206. <div class="mb-3 mt-3">
  207. <label for="isbn">ISBN</label>
  208. <input type="text" name="isbn" placeholder="ISBN"
  209. class="form-control"
  210. value="{{ request.form['isbn'] or resource['isbn'] }}">
  211. </input>
  212. </div>
  213. <div class="mb-3 mt-3">
  214. <label for="linked_tools">Add tools relationship(s) (hold Ctrl to select multiple options)</label>
  215. </div>
  216. <div class="mb-3 mt-3">
  217. <select name="linked_tools" id="linked_tools" aria-label="Add tools relationships" class="selectpicker" data-live-search="true" multiple>
  218. {% for resource_dropdown in resource_dropdown %}
  219. {% if resource_dropdown['type'] == 'tool' %}
  220. {% if relationships and resource_dropdown in relationships %}
  221. <option value="{{ resource_dropdown['id'] }}" selected>{{ resource_dropdown['name'] }}</option>
  222. {% else %}
  223. <option value="{{ resource_dropdown['id'] }}">{{ resource_dropdown['name'] }}</option>
  224. {% endif %}
  225. {% endif %}
  226. {% endfor %}
  227. </select>
  228. </div>
  229. <div class="mb-3 mt-3">
  230. <label for="linked_practices">Add practices relationship(s) (hold Ctrl to select multiple options)</label>
  231. </div>
  232. <div class="mb-3 mt-3">
  233. <select name="linked_practices" id="linked_practices" aria-label="Add practices relationships" class="selectpicker" data-live-search="true" multiple>
  234. {% for resource_dropdown in resource_dropdown %}
  235. {% if resource_dropdown['type'] == 'practice' %}
  236. {% if relationships and resource_dropdown in relationships %}
  237. <option value="{{ resource_dropdown['id'] }}" selected>{{ resource_dropdown['name'] }}</option>
  238. {% else %}
  239. <option value="{{ resource_dropdown['id'] }}">{{ resource_dropdown['name'] }}</option>
  240. {% endif %}
  241. {% endif %}
  242. {% endfor %}
  243. </select>
  244. </div>
  245. {% endif %}
  246. {% if relationships %}
  247. <div class="mb-3 mt-3">
  248. <label for="linked_practice_id">Remove relationship(s)</label>
  249. </div>
  250. <div class="mb-3 mt-3">
  251. <select name="remove_linked_resources" id="remove_linked_resources" aria-label="Remove link" class="selectpicker" data-live-search="true" multiple>
  252. {% for relationship in relationships %}
  253. <option value="{{ relationship['id'] }}">{{ relationship['name'] }}</option>
  254. {% endfor %}
  255. </select>
  256. </div>
  257. {% endif %}
  258. <div class="mb-3 mt-3">
  259. <button type="submit" class="btn btn-default">Submit</button>
  260. </div>
  261. </form>
  262. {% if resource['type'] == 'tool' %}
  263. <form action="{{ url_for('tool.delete_tool', tool_id=resource['id']) }}" method="POST">
  264. <input type="submit" value="Delete"
  265. class="btn btn-danger btn-sm"
  266. onclick="return confirm('Are you sure you want to delete this tool?')">
  267. </form>
  268. {% endif %}
  269. {% if resource['type'] == 'practice' %}
  270. <form action="{{ url_for('practice.delete_practice', practice_id=resource['id']) }}" method="POST">
  271. <input type="submit" value="Delete"
  272. class="btn btn-danger btn-sm"
  273. onclick="return confirm('Are you sure you want to delete this practice?')">
  274. </form>
  275. {% endif %}
  276. {% if resource['type'] == 'book' %}
  277. <form action="{{ url_for('book.delete_book', book_id=resource['id']) }}" method="POST">
  278. <input type="submit" value="Delete"
  279. class="btn btn-danger btn-sm"
  280. onclick="return confirm('Are you sure you want to delete this book?')">
  281. </form>
  282. {% endif %}
  283. {% endblock %}