3112: log when an issue is reported
[arvados.git] / apps / workbench / app / views / application / _report_issue_popup.html.erb
1 <%
2   api_version = arvados_api_client.discovery[:source_version]
3   generated_at = arvados_api_client.discovery[:generatedAt]
4   wb_version = Rails.configuration.source_version
5   wb_version += Rails.configuration.source_version if Rails.configuration.local_modified
6   arvados_base = Rails.configuration.arvados_v1_base
7   support_email = Rails.configuration.support_email_address
8
9   additional_info = {}
10   additional_info['Current Location'] = @popup_params[:current_location]
11   additional_info['User email'] = current_user.email if current_user
12
13   additional_info_str = additional_info.map {|k,v| "#{k}=#{v}"}.join("\n")
14
15   additional_info['api_version'] = api_version
16   additional_info['generated_at'] = generated_at
17   additional_info['workbench_version'] = wb_version
18   additional_info['arvados_base'] = arvados_base
19   additional_info['support_email'] = support_email
20   additional_info['error_message'] = @popup_params[:error_message] if @popup_params[:error_message]
21   additional_info['api_error_request_url'] = @popup_params[:api_error_request_url] if @popup_params[:api_error_request_url]
22   additional_info['api_error_response'] = @popup_params[:api_error_response] if @popup_params[:api_error_response]
23 %>
24
25 <div class="modal-dialog modal-with-loading-spinner">
26   <div class="modal-content">
27
28     <%= form_tag report_issue_path, {id: 'report-issue-form', name: 'report-issue-form', method: 'post',
29         class: 'form-horizontal', remote: true} do %>
30
31       <%
32         title = 'Version / debugging info'
33         title = 'Report a problem' if @popup_params[:popup_type] == 'report'
34       %>
35
36       <div class="modal-header">
37         <button type="button" class="close" onClick="reset_form()" data-dismiss="modal" aria-hidden="true">&times;</button>
38         <div>
39           <div class="col-sm-8"> <h4 class="modal-title"><%=title%></h4> </div>
40           <div class="spinner spinner-32px spinner-h-center col-sm-1" hidden="true"></div>
41         </div>
42         <br/>
43       </div>
44
45       <div class="modal-body">
46         <div class="form-group">
47           <label for="support_version" class="col-sm-4 control-label"> Support email </label>
48           <div class="col-sm-8">
49             <p class="form-control-static" name="support_version"><%=support_email%></p>
50           </div>
51         </div>
52
53         <div class="form-group">
54           <label for="server_version" class="col-sm-4 control-label"> Server version </label>
55           <div class="col-sm-8">
56             <p class="form-control-static" name="server_version"><%=api_version%></p>
57           </div>
58         </div>
59
60         <div class="form-group">
61           <label for="generated_at" class="col-sm-4 control-label"> Server restarted at </label>
62           <div class="col-sm-8">
63             <p class="form-control-static" name="generated_at"><%=generated_at%></p>
64           </div>
65         </div>
66
67         <div class="form-group">
68           <label for="wb_version" class="col-sm-4 control-label"> Workbench version </label>
69           <div class="col-sm-8">
70             <p class="form-control-static" name="wb_version"><%=wb_version%></p>
71           </div>
72         </div>
73
74         <div class="form-group">
75           <label for="arvados_base" class="col-sm-4 control-label"> Arvados base </label>
76           <div class="col-sm-8">
77             <p class="form-control-static" name="arvados_base"><%=arvados_base%></p>
78           </div>
79         </div>
80
81         <% if @popup_params[:popup_type] == 'report' %>
82           <div class="form-group">
83             <label for="report_text_label" class="col-sm-4 control-label"> Found a problem? Tell us what happened </label>
84             <div class="col-sm-8">
85               <textarea class="form-control" rows="1" name="report_text" type="text"/>
86             </div>
87           </div>
88         <% end %>
89
90         <div class="form-group">
91           <label for="additional_info" class="col-sm-4 control-label"> Additional info </label>
92           <div class="col-sm-8">
93             <textarea readonly class="form-control" rows="1" name="additional_info" type="text"><%=additional_info_str%></textarea>
94         </div>
95         <input type="hidden" name="report_additional_info" value="<%=additional_info.to_json%>">
96       </div>
97
98       <div class="modal-footer">
99         <% if @popup_params[:popup_type] == 'report' %>
100           <button type="submit" id="register" class="btn btn-primary" autofocus>Report issue</button>
101           <button class="btn btn-default" onClick="reset_form()" data-dismiss="modal" aria-hidden="true">Cancel</button>
102         <% else %>
103           <button class="btn btn-default" onClick="reset_form()" data-dismiss="modal" aria-hidden="true">Close</button>
104         <% end %>
105       </div>
106
107     <% end #form %>
108   </div>
109 </div>