6 <& /util/import_javascript.mas, classes => [ 'jquery', 'jqueryui', 'CXGN.BreedersToolbox.HTMLSelect', 'CXGN.List' ] &>
8 <div class="modal fade" id="delete_seedlots_using_list_dialog" name="delete_seedlots_using_list_dialog" tabindex="-1" role="dialog" aria-labelledby="deleteSeedlotsDialog">
9 <div class="modal-dialog modal-lg" role="document">
10 <div class="modal-content">
11 <div class="modal-header">
12 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
13 <h4 class="modal-title" id="deleteSeedlotsDialog">Delete Seedlots </h4>
15 <div class="modal-body">
16 <div class="container-fluid">
17 <div class="well well-sm">
18 <form class="form-horizontal" id="delete_seedlot_info" name="delete_seedlot_info">
19 <div class="form-group form-group-sm">
21 <strong>Note:</strong>
22 <li>Only seedlots that are not associated with crosses or trials can be deleted.</li>
23 <li>Deleting seedlots cannot be undone.</li>
28 <form class="form-horizontal" role="form" method="post" id="delete_seedlots_form" name="delete_seedlots_form">
29 <div class="form-group" id="delete_seedlot_list_section" >
30 <label class="col-sm-4 control-label">Select a List of Seedlots:</label>
31 <div class="col-sm-8" id="seedlots_to_delete_html" name="seedlots_to_delete_html"></div>
36 <div class="modal-footer">
37 <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
38 <button type="button" class="btn btn-primary" name="delete_seedlots_submit" id="delete_seedlots_submit">Delete Seedlots</button>
44 <div class="modal fade" id="delete_seedlots_modal" name="delete_seedlots_modal" tabindex="-1" role="dialog">
45 <div class="modal-dialog modal-lg" role="document">
46 <div class="modal-content">
47 <div class="modal-header">
48 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
49 <h4 class="modal-title">Seedlot Deletion Verify</h4>
51 <div class="modal-body">
52 <div class="container-fluid">
53 <div id="seedlot_deletion_verify">
57 <div class="modal-footer">
58 <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
59 <button type="button" class="btn btn-primary" name="delete_seedlots_confirm" id="delete_seedlots_confirm">Delete green elements</button>
68 jQuery(window).ready( function() {
70 jQuery("#delete_seedlots_link").click( function() {
71 jQuery('#delete_seedlots_using_list_dialog').modal('show');
74 jQuery("#seedlots_to_delete_html").append(list.listSelect("seedlots_to_delete_html_select", [ 'seedlots' ], 'None', undefined, undefined));
78 jQuery('#delete_seedlots_submit').click( function() {
79 var list_id = jQuery('#seedlots_to_delete_html_select_list_select').val();
80 if (list_id === "") { alert("Please select a list "+list_id); return; }
81 verify_seedlot_deletion(list_id).then(function(r) { display_seedlot_deletion_info(r) }, function(r) { alert("ERROR!")});
84 jQuery('#delete_seedlots_confirm').click( function() {
85 var list_id = jQuery('#seedlots_to_delete_html_select_list_select').val();
87 delete_seedlots(list_id).then( function(r) { alert(r.delete_count+" elements have been deleted"); }, function(r) { alert('An error occurred'); });
91 function verify_seedlot_deletion(list_id) {
94 url: '/ajax/seedlots/verify_delete_by_list?list_id='+list_id,
98 function delete_seedlots(list_id) {
100 url: '/ajax/seedlots/confirm_delete_by_list?list_id='+list_id,
104 function display_seedlot_deletion_info(r) {
105 jQuery('#delete_seedlots_modal').modal('show');
108 var errors = r.errors;
112 for (const n of ok) {
113 html += "<li class='list-group-item list-group-item-success'>"+n+"</li>";
116 for (const n of errors) {
117 html += "<li class='list-group-item list-group-item-danger' >"+n[0]+" ("+n[1]+")</li>";
122 if (ok.length === 0) {
123 html += '<br /><img src="/static/documents/img/info_icon.png"> No items can be deleted.';
124 jQuery('#delete_seedlots_confirm').prop('disabled', true);
127 jQuery('#delete_seedlots_confirm').prop('disabled', false);
130 jQuery('#seedlot_deletion_verify').html(html);