1 {% extends "base.html" %}
15 {% for package in packages %}
18 <a href="{{ package.getDetailsURL() }}">
22 by {{ package.author.display_name }}
25 {% if package.checkPerm(current_user, "EDIT_PACKAGE") %}
26 <a class="btn btn-link btn-sm py-0" href="{{ package.getEditURL() }}">
27 <i class="fas fa-edit"></i>
32 {% for tag in package.tags %}
33 <span class="badge badge-primary mr-1">{{ tag.title }}</span>
35 <!-- <a class="badge badge-secondary add-btn px-2" href="#">
36 <i class="fas fa-plus"></i>
44 <div class="modal-dialog" role="document">
45 <div class="modal-content">
46 <div class="modal-header">
47 <h5 class="modal-title">{{ _("Edit tags") }}</h5>
48 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
49 <span aria-hidden="true">×</span>
52 <div class="modal-body">
53 <select name="tags" multiple>
55 <option value="{{ tag.name }}">{{ tag.title }}</option>
59 <div class="modal-footer">
60 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
61 <button type="button" class="btn btn-primary">Update</button>
68 {% from "macros/forms.html" import form_scripts %}
70 {% block scriptextra %}
74 $(".add-btn").click(function() {
75 const row = $(this).parent().parent()
77 $(".modal select option").removeAttr("selected");
78 $(".multichoice_selector").remove();
80 $(".modal .modal-body").prepend(`
81 <div class="multichoice_selector bulletselector form-control">
82 <input type="text" placeholder="Start typing to see suggestions">
83 <div class="clearboth"></div>
87 $(".modal").modal("show");
88 $(".modal input").focus();
89 $(".multichoice_selector").each(function() {
91 var sel = ele.parent().find("select");
95 sel.find("option").each(function() {
96 var text = $(this).text();
98 id: $(this).attr("value"),
100 toString: function() { return text; },
104 ele.selectSelector(options, sel);