Merge branch '8784-dir-listings'
[arvados.git] / apps / workbench / app / views / application / _report_issue_popup.html.erb
1 <%# Copyright (C) The Arvados Authors. All rights reserved.
2
3 SPDX-License-Identifier: AGPL-3.0 %>
4
5 <%
6   generated_at = arvados_api_client.discovery[:generatedAt]
7   arvados_base = Rails.configuration.arvados_v1_base
8   support_email = Rails.configuration.support_email_address
9
10   additional_info = {}
11   additional_info['Current location'] = params[:current_location]
12   additional_info['User UUID'] = current_user.uuid if current_user
13
14   additional_info_str = additional_info.map {|k,v| "#{k}=#{v}"}.join("\n")
15
16   additional_info['api_source_version'] = api_source_version
17   additional_info['generated_at'] = generated_at
18   additional_info['workbench_version'] = AppVersion.hash
19   additional_info['arvados_base'] = arvados_base
20   additional_info['support_email'] = support_email
21   additional_info['error_message'] = params[:error_message] if params[:error_message]
22   additional_info['api_error_request_url'] = params[:api_error_request_url] if params[:api_error_request_url]
23   additional_info['api_error_response'] = params[:api_error_response] if params[:api_error_response]
24 %>
25
26 <div class="modal">
27  <div class="modal-dialog modal-with-loading-spinner">
28   <div class="modal-content">
29
30     <%= form_tag report_issue_path, {name: 'report-issue-form', method: 'post',
31         class: 'form-horizontal'} do %>
32
33       <%
34         title = 'Version / debugging info'
35         title = 'Report a problem' if params[:popup_type] == 'report'
36       %>
37
38       <div class="modal-header">
39         <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
40         <div>
41           <div class="col-sm-8"> <h4 class="modal-title"><%=title%></h4> </div>
42           <div class="spinner spinner-32px spinner-h-center col-sm-1" hidden="true"></div>
43         </div>
44         <br/>
45       </div>
46
47       <div class="modal-body" style="height: 25em; overflow-y: scroll">
48         <div class="form-group">
49           <label for="support_email" class="col-sm-4 control-label"> Support email </label>
50           <div class="col-sm-8">
51             <p class="form-control-static" name="support_version"><a href="mailto:<%=support_email%>?subject=Workbench problem report&amp;body=Problem while viewing page <%=params[:current_location]%>"><%=support_email%></a></p>
52           </div>
53         </div>
54
55         <div class="form-group">
56           <label for="current_page" class="col-sm-4 control-label"> Current page </label>
57           <div class="col-sm-8">
58             <p class="form-control-static text-overflow-ellipsis" name="current_page"><%=params[:current_path]%></a></p>
59           </div>
60         </div>
61
62         <% if params[:popup_type] == 'report' %>
63           <div class="form-group">
64             <label for="report_text_label" class="col-sm-4 control-label"> Describe the problem </label>
65             <div class="col-sm-8">
66               <textarea class="form-control" rows="4" id="report_issue_text" name="report_issue_text" type="text" placeholder="Describe the problem"/>
67             </div>
68             <input type="hidden" name="report_additional_info" value="<%=additional_info.to_json%>">
69           </div>
70         <% end %>
71
72         <div class="form-group">
73           <label for="wb_version" class="col-sm-4 control-label"> Workbench version </label>
74           <div class="col-sm-8">
75             <p class="form-control-static" name="wb_version">
76               <%= link_to AppVersion.hash, version_link_target(AppVersion.hash) %>
77             </p>
78           </div>
79         </div>
80
81         <div class="form-group">
82           <label for="server_version" class="col-sm-4 control-label"> API version </label>
83           <div class="col-sm-8">
84             <p class="form-control-static" name="server_version">
85               <%= link_to api_source_version, version_link_target(api_source_version) %>
86             </p>
87           </div>
88         </div>
89
90         <div class="form-group">
91           <label for="generated_at" class="col-sm-4 control-label"> API startup time </label>
92           <div class="col-sm-8">
93             <p class="form-control-static" name="generated_at"><%=generated_at%></p>
94           </div>
95         </div>
96
97         <div class="form-group">
98           <label for="arvados_base" class="col-sm-4 control-label"> API address </label>
99           <div class="col-sm-8">
100             <p class="form-control-static" name="arvados_base"><%=arvados_base%></p>
101           </div>
102         </div>
103
104         <% if current_user %>
105           <div class="form-group">
106             <label for="user_uuid" class="col-sm-4 control-label"> User UUID </label>
107             <div class="col-sm-8">
108               <p class="form-control-static" name="user_uuid"><%=current_user.uuid%></p>
109             </div>
110           </div>
111         <% end %>
112
113         <% if params[:error_message] %>
114           <div class="form-group">
115             <label for="error_message" class="col-sm-4 control-label"> Error message </label>
116             <div class="col-sm-8">
117               <p class="form-control-static text-overflow-ellipsis" name="error_message"><%=params[:error_message]%></p>
118             </div>
119           </div>
120         <% end %>
121
122         <% if params[:api_error_request_url] %>
123           <div class="form-group">
124             <label for="api_error_url" class="col-sm-4 control-label"> API error request URL </label>
125             <div class="col-sm-8">
126               <p class="form-control-static text-overflow-ellipsis" name="api_error_url"><%=params[:api_error_request_url]%></p>
127             </div>
128           </div>
129         <% end %>
130
131         <% if params[:api_error_response] %>
132           <div class="form-group">
133             <label for="api_error_response" class="col-sm-4 control-label"> API error response </label>
134             <div class="col-sm-8">
135               <p class="form-control-static text-overflow-ellipsis" name="api_error_response"><%=params[:api_error_response]%></p>
136             </div>
137           </div>
138         <% end %>
139       </div>
140
141       <div class="modal-footer">
142         <% if params[:popup_type] == 'report' %>
143           <button class="btn btn-default report-issue-cancel" id="report-issue-cancel" data-dismiss="modal" aria-hidden="true">Cancel</button>
144           <button type="submit" id="report-issue-submit" class="btn btn-primary report-issue-submit" autofocus>Send problem report</button>
145         <% else %>
146           <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Close</button>
147         <% end %>
148       </div>
149     <% end #form %>
150   </div>
151  </div>
152 </div>