check if stock_dbxref exists before transferring new as it might violate a unique...
[sgn.git] / mason / breeders_toolbox / cross / target_numbers_upload.mas
blob2de8532c1ab9b6654ecf3f855158cd44decc1588
1 <%args>
2 $trial_id
3 $trial_name
4 </%args>
7 <div class="modal fade" id="upload_target_numbers_dialog" name="upload_target_numbers_dialog" tabindex="-1" role="dialog" aria-labelledby="uploadTargetNumbersDialog">
8     <div class="modal-dialog modal-lg" role="document">
9         <div class="modal-content">
10             <div class="modal-header">
11                 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
12                 <h4 class="modal-title" id="uploadTargetNumbersDialog">Upload Target Numbers of Seeds/Progenies for This Crossing Experiment </h4>
13             </div>
14             <div class="modal-body">
15                 <div class="container-fluid">
16                     <&| /page/explanation.mas, title=>'Target Numbers Upload Information' &>
17                         <p>
18                             <a id="upload_target_numbers_spreadsheet_format_info">Target Numbers Upload Information</a>
19                         </p>
20                     </&>
21                     <form class="form-horizontal" role="form" method="post" enctype="multipart/form-data" encoding="multipart/form-data" id="upload_target_numbers_form" name="upload_target_numbers_form">
22                         <div class="form-group">
23                             <label class="col-sm-4 control-label">Crossing Experiment: </label>
24                             <div class="col-sm-8" >
25                                 <input class="form-control" name="target_numbers_experiment_name" id="target_numbers_experiment_name" disabled value="<% $trial_name %>">
26                                 <input name="target_numbers_experiment_id" id="target_numbers_experiment_id" type="hidden" value="<% $trial_id %>">
27                             </div>
28                         </div>
29                         <div class="form-group">
30                             <label class="col-sm-4 control-label">Upload File (.xls or .xlsx): </label>
31                             <div class="col-sm-8">
32                                 <input type="file" name="target_numbers_file" id="target_numbers_file" encoding="multipart/form-data" />
33                             </div>
34                         </div>
35                     </form>
36                 </div>
37             </div>
38             <div class="modal-footer">
39                 <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
40                 <button type="button" class="btn btn-primary" name="upload_target_numbers_submit" id="upload_target_numbers_submit">Upload File</button>
41             </div>
42         </div>
43     </div>
44 </div>
46 <div class="modal fade" id="upload_target_numbers_error_display" name="upload_target_numbers_error_display" tabindex="-1" role="dialog" aria-labelledby="uploadTargetNumbersErrorDialog">
47     <div class="modal-dialog modal-lg" role="document">
48         <div class="modal-content">
49             <div class="modal-header">
50                 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
51                 <h4 class="modal-title" id="uploadTargetNumbersErrorDialog">Upload Target Numbers Error</h4>
52             </div>
53             <div class="modal-body">
54                 <div class="container-fluid">
55                     <table>
56                         <tbody></tbody>
57                     </table>
58                 </div>
59             </div>
60             <div class="modal-footer">
61                 <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
62             </div>
63         </div>
64     </div>
65 </div>
67 <div class="modal fade" id="target_numbers_saved_dialog_message" name="target_numbers_saved_dialog_message" tabindex="-1" role="dialog" aria-labelledby="targetNumbersSavedDialog">
68     <div class="modal-dialog" role="document">
69         <div class="modal-content">
70             <div class="modal-header">
71                 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
72                 <h4 class="modal-title" id="targetNumbersSavedDialog">Success</h4>
73             </div>
74             <div class="modal-body">
75                 <div class="container-fluid">
76                     <p>
77                         <span class="ui-icon ui-icon-circle-check" style="float: left; margin: 0 7px 50px 0;"></span>
78                         The target numbers of seeds/progenies were saved successfully.
79                     </p>
80                 </div>
81             </div>
82             <div class="modal-footer">
83                 <button id="dismiss_target_numbers_saved_dialog" type="button" class="btn btn-default" data-dismiss="modal">Close & Reload</button>
84             </div>
85         </div>
86     </div>
87 </div>
89 <div class="modal fade" id="target_numbers_spreadsheet_info_dialog" name="target_numbers_spreadsheet_info_dialog" tabindex="-1" role="dialog" aria-labelledby="targetNumbersFileInfoDialog">
90     <div class="modal-dialog modal-lg" role="document">
91         <div class="modal-content">
92             <div class="modal-header">
93                 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
94                 <h4 class="modal-title" id="targetNumbersFileInfoDialog">Template Information</h4>
95             </div>
96             <div class="modal-body">
97                 <div class="container-fluid">
98                     <b>Target numbers of seeds/progenies may be uploaded in an Excel file (.xls or .xlsx)
99                     <br><br>
100                     <b>Header:</b>
101                     <br>
102                         The first row (header) must contain the following:
103                     <br>
104                     <br>
105                     <table class="table table-bordered table-hover">
106                         <tbody>
107                             <tr>
108                                 <td>female_accession</td>
109                                 <td>male_accession</td>
110                                 <td>seed_target_number</td>
111                                 <td>progeny_target_number</td>
112                             </tr>
113                         </tbody>
114                     </table>
115                     <b>Field Info:</b>
116                     <ul>
117                         <li>female_accession (must exist as uniquename in the database.)</li>
118                         <li>male_accession (must exist as uniquename in the database.)</li>
119                         <li>Please indicate target number of seeds and/or target number of progenies for each cross combination</li>
120                     </ul>
121                     <br>
122                 </div>
123             </div>
124             <div class="modal-footer">
125                 <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
126             </div>
127         </div>
128     </div>
129 </div>
131 <script>
133 jQuery(document).ready(function(){
135     jQuery('#upload_target_numbers_link').click(function(){
136         jQuery('#upload_target_numbers_dialog').modal("show");
137     });
139     jQuery('#upload_target_numbers_spreadsheet_format_info').click(function(){
140         jQuery("#target_numbers_spreadsheet_info_dialog").modal("show");
141     });
143     jQuery("#upload_target_numbers_submit").click(function(){
144         var uploadFile = jQuery("#target_numbers_file").val();
146         jQuery('#upload_target_numbers_form').attr("action", "/ajax/crossing_experiment/upload_target_numbers");
149         if (uploadFile === ''){
150             alert("Please select a file");
151             return;
152         }
154         jQuery("#upload_target_numbers_form").submit();
155         jQuery("#upload_target_numbers_dialog").modal("hide");
156     });
158     jQuery('#upload_target_numbers_form').iframePostForm({
159         json: true,
160         post: function(){
161             jQuery("#working_modal").modal("show");
162         },
163         complete: function(response) {
164             jQuery("#working_modal").modal("hide");
165             if (response.error_string) {
166                 jQuery("#upload_target_numbers_error_display tbody").html('');
167                 jQuery("#upload_target_numbers_error_display tbody").append(response.error_string);
168                 jQuery("#upload_target_numbers_error_display").modal("show");
169                 return;
170             }
171             if (response.error) {
172                 alert(response.error);
173                 return;
174             }
175             if (response.success) {
176                 jQuery('#target_numbers_saved_dialog_message').modal("show");
177             }
178         }
179     });
181     jQuery("#dismiss_target_numbers_saved_dialog").click(function(){
182         location.reload();
183     });
187 </script>