redhat_access 2.0.2 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/assets/javascripts/insights/app.module.js +1 -0
- data/app/helpers/redhat_access/analytics_dashboard_helper.rb +19 -1
- data/app/services/redhat_access/telemetry/helper.rb +7 -0
- data/app/services/redhat_access/telemetry/look_ups.rb +2 -1
- data/app/services/redhat_access/telemetry/messaging_service.rb +57 -2
- data/app/views/dashboard/_insights_issues_widget.html.erb +51 -0
- data/app/views/dashboard/_insights_risk_widget.html.erb +80 -0
- data/app/views/redhat_access/analytics_dashboard/index.html.erb +2 -2
- data/lib/redhat_access/engine.rb +2 -0
- data/lib/redhat_access/version.rb +1 -1
- data/redhat_access.gemspec +1 -10
- data/vendor/assets/fonts/fonts/fontawesome-webfont.woff2 +0 -0
- data/vendor/assets/images/images/bg1.jpg +0 -0
- data/vendor/assets/images/images/bg_ansible.jpg +0 -0
- data/vendor/assets/images/images/bg_body.jpg +0 -0
- data/vendor/assets/images/images/bg_glow.jpg +0 -0
- data/vendor/assets/images/images/bg_landing-hero.jpg +0 -0
- data/vendor/assets/images/images/bg_product-select.png +0 -0
- data/vendor/assets/images/images/bg_product-select2.jpg +0 -0
- data/vendor/assets/images/images/bg_whispy.jpg +0 -0
- data/vendor/assets/images/images/email_bg.jpg +0 -0
- data/vendor/assets/images/images/email_logo.png +0 -0
- data/vendor/assets/images/images/email_rhi.png +0 -0
- data/vendor/assets/images/images/g_ansible-venn.png +0 -0
- data/vendor/assets/images/images/g_heartbleed.png +0 -0
- data/vendor/assets/images/images/heartbleed.svg +19 -0
- data/vendor/assets/images/images/i_box.svg +16 -0
- data/vendor/assets/images/images/i_playbook.svg +5 -0
- data/vendor/assets/images/images/i_severity-critical.svg +61 -0
- data/vendor/assets/images/images/i_severity-high.svg +61 -0
- data/vendor/assets/images/images/i_severity-low.svg +62 -0
- data/vendor/assets/images/images/i_severity-med.svg +62 -0
- data/vendor/assets/images/images/i_unknown.svg +33 -0
- data/vendor/assets/images/images/i_user-fallback.png +0 -0
- data/vendor/assets/images/images/i_user.jpg +0 -0
- data/vendor/assets/images/images/img-cfme-appliance-register.jpg +0 -0
- data/vendor/assets/images/images/img-cfme-insights-features.png +0 -0
- data/vendor/assets/images/images/img-cfme-insights-overview.png +0 -0
- data/vendor/assets/images/images/img-cfme-insights-rules.png +0 -0
- data/vendor/assets/images/images/img-cfme-insights-systems.png +0 -0
- data/vendor/assets/images/images/img-cfme-smartstate-config.png +0 -0
- data/vendor/assets/images/images/img-sat6-step2-manage.jpg +0 -0
- data/vendor/assets/images/images/img-sat6-step4.jpg +0 -0
- data/vendor/assets/images/images/img-sat6-step5-manage.jpg +0 -0
- data/vendor/assets/images/images/img-sat6-step5-overview.jpg +0 -0
- data/vendor/assets/images/images/img-sat6-step5-rules.jpg +0 -0
- data/vendor/assets/images/images/img-sat6-step5-systems.jpg +0 -0
- data/vendor/assets/images/images/img_video.png +0 -0
- data/vendor/assets/images/images/l_ansible-black.svg +14 -0
- data/vendor/assets/images/images/l_ansible-blue.svg +12 -0
- data/vendor/assets/images/images/l_ansible-unsupported.svg +16 -0
- data/vendor/assets/images/images/l_ansible-white.svg +13 -0
- data/vendor/assets/images/images/l_docker.svg +48 -0
- data/vendor/assets/images/images/l_osp.svg +95 -0
- data/vendor/assets/images/images/l_rhel.svg +74 -0
- data/vendor/assets/images/images/l_rhev.svg +86 -0
- data/vendor/assets/javascripts/telemetry/insights.js +63 -39
- data/vendor/assets/stylesheets/telemetry/sat6.css +8 -8
- metadata +46 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4de697c1c4c7439692e44c26f10f4aa8dde8718a
|
|
4
|
+
data.tar.gz: 2797621bb4965a46bc6c23d49e46eab5db035cab
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d46e13f22eb5c71839087d89b0fa9876befa42d83b2e8788dcf0c962134698af5028970c87e613a1833d73e4cd26de1e7366e925bfae8cd37be9d0d5bd89493d
|
|
7
|
+
data.tar.gz: c3b3b069c3c60364435b22c36fa555b18b2b7a4d4d4f1e6cd0f76c70211bffdc1537adb95502308871af6356b854564677ca41e1768c26712b33484c30cd4538
|
|
@@ -53,6 +53,7 @@
|
|
|
53
53
|
InsightsConfigProvider.setGettingStartedLink('https://access.redhat.com/insights/getting-started/satellite/6/');
|
|
54
54
|
InsightsConfigProvider.setAllowExport(true);
|
|
55
55
|
InsightsConfigProvider.setOverviewKey('overview-satellite6');
|
|
56
|
+
InsightsConfigProvider.setPlannerEnabled(false);
|
|
56
57
|
|
|
57
58
|
}
|
|
58
59
|
]).value('SAT_CONFIG', {
|
|
@@ -3,11 +3,29 @@ module RedhatAccess
|
|
|
3
3
|
include RedhatAccess::Telemetry::LookUps
|
|
4
4
|
|
|
5
5
|
def help_path?
|
|
6
|
-
|
|
6
|
+
Rails.logger.info("PATH is #{request.path == '/redhat_access/insights/help'}")
|
|
7
|
+
request.path == '/redhat_access/insights/help'
|
|
7
8
|
end
|
|
8
9
|
|
|
9
10
|
def manage_path?
|
|
10
11
|
request.path == '/redhat_access/insights/manage'
|
|
11
12
|
end
|
|
13
|
+
|
|
14
|
+
def view_preconditions_met?
|
|
15
|
+
if (help_path?)
|
|
16
|
+
return true
|
|
17
|
+
|
|
18
|
+
elsif (!is_org_selected?)
|
|
19
|
+
return false
|
|
20
|
+
elsif !telemetry_enabled?(Organization.current)
|
|
21
|
+
return false
|
|
22
|
+
elsif !is_susbcribed_to_redhat?(Organization.current)
|
|
23
|
+
return false
|
|
24
|
+
elsif disconnected_org?(Organization.current)
|
|
25
|
+
return false
|
|
26
|
+
else
|
|
27
|
+
return true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
12
30
|
end
|
|
13
31
|
end
|
|
@@ -33,6 +33,7 @@ module RedhatAccess
|
|
|
33
33
|
end
|
|
34
34
|
|
|
35
35
|
def is_org_selected?
|
|
36
|
+
Rails.logger.debug("Org selected ? #{Organization.current.nil?}")
|
|
36
37
|
Organization.current.nil? ? false : true
|
|
37
38
|
end
|
|
38
39
|
|
|
@@ -67,7 +68,7 @@ module RedhatAccess
|
|
|
67
68
|
def get_leaf_id(uuid)
|
|
68
69
|
system = get_content_host(uuid)
|
|
69
70
|
if system.nil?
|
|
70
|
-
|
|
71
|
+
Rails.logger.debug('Host not found or invalid')
|
|
71
72
|
raise(RecordNotFound, 'Host not found or invalid')
|
|
72
73
|
end
|
|
73
74
|
uuid
|
|
@@ -8,16 +8,49 @@ module RedhatAccess
|
|
|
8
8
|
include RedhatAccess::Telemetry::LookUps
|
|
9
9
|
|
|
10
10
|
WEEKLY_SUMMARY_PATH = 'v1/messaging/data/weeklyinfo'
|
|
11
|
+
RULE_STATS_PATH = 'v3/stats/rules'
|
|
12
|
+
SYSTEM_STATS_PATH = 'v3/stats/systems'
|
|
11
13
|
|
|
12
14
|
def initialize(org)
|
|
13
15
|
@org = org
|
|
14
|
-
@user_map = current_user_map
|
|
15
16
|
@branch_id = get_branch_id_for_org(org)
|
|
16
17
|
end
|
|
17
18
|
|
|
19
|
+
def risk_summary
|
|
20
|
+
begin
|
|
21
|
+
rule_counts = rules_stat_summary
|
|
22
|
+
critical_counts = http_get_from_json(SYSTEM_STATS_PATH, {:minSeverity => :CRITICAL}, true)
|
|
23
|
+
return OpenStruct.new({:critical_count => critical_counts.affected,
|
|
24
|
+
:system_count => critical_counts.total,
|
|
25
|
+
:low_percent => percent(rule_counts.info,rule_counts.total),
|
|
26
|
+
:medium_percent => percent(rule_counts.warn,rule_counts.total),
|
|
27
|
+
:high_percent => percent(rule_counts.error,rule_counts.total),
|
|
28
|
+
:critical_percent => percent(rule_counts.critical,rule_counts.total)
|
|
29
|
+
})
|
|
30
|
+
rescue
|
|
31
|
+
return error_response("Unable to get risk summary.")
|
|
32
|
+
end
|
|
33
|
+
# return {:critical_count => 10,
|
|
34
|
+
# :system_count => 100,
|
|
35
|
+
# :low_percent => 1.2,
|
|
36
|
+
# :medium_percent => 38.4,
|
|
37
|
+
# :high_percent => 17.5,
|
|
38
|
+
# :critical_percent => 24.2
|
|
39
|
+
# }
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def rules_stat_summary
|
|
43
|
+
begin
|
|
44
|
+
http_get_from_json(RULE_STATS_PATH, {}, true)
|
|
45
|
+
rescue
|
|
46
|
+
return error_response("Unable to get rule summary.")
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
|
|
18
50
|
|
|
19
51
|
def all_weekly_mail_data
|
|
20
52
|
data = []
|
|
53
|
+
@user_map = current_user_map
|
|
21
54
|
current_user_map.each do |key,user|
|
|
22
55
|
begin
|
|
23
56
|
user_data = weekly_summary_data(user.login)
|
|
@@ -82,9 +115,31 @@ module RedhatAccess
|
|
|
82
115
|
end
|
|
83
116
|
|
|
84
117
|
|
|
85
|
-
|
|
86
118
|
private
|
|
87
119
|
|
|
120
|
+
def percent(fraction, total)
|
|
121
|
+
if (total== 0)
|
|
122
|
+
return 0
|
|
123
|
+
end
|
|
124
|
+
((fraction.to_f/total)*100).round(1)
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
def error_response(message)
|
|
128
|
+
resp = OpenStruct.new
|
|
129
|
+
resp.query_error = message
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
def http_get_from_json(resource,params,use_subsets=true)
|
|
133
|
+
options = {:method => :GET,
|
|
134
|
+
:resource => resource,
|
|
135
|
+
:params => params,
|
|
136
|
+
:payload => nil,
|
|
137
|
+
:use_subsets => use_subsets
|
|
138
|
+
}
|
|
139
|
+
json_data = http_request(options, true);
|
|
140
|
+
JSON.parse(json_data, object_class: OpenStruct)
|
|
141
|
+
end
|
|
142
|
+
|
|
88
143
|
def current_user_map
|
|
89
144
|
map = {}
|
|
90
145
|
users = ::User.select do |user|
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
<h4 class="header">
|
|
2
|
+
<%= _("Red Hat Insights Actions") %>
|
|
3
|
+
</h4>
|
|
4
|
+
<% helper = RedhatAccess::Telemetry::Helper.new %>
|
|
5
|
+
<% if !Organization.current.present? %>
|
|
6
|
+
<p class="ca"><%= _("Please select an organization to view Red Hat Insights action summary.") %></p>
|
|
7
|
+
<% elsif !helper.telemetry_enabled?(Organization.current) %>
|
|
8
|
+
<p class="ca"><%= _("Insights functionality is disabled.") %></p>
|
|
9
|
+
<% elsif !helper.is_susbcribed_to_redhat?(Organization.current) %>
|
|
10
|
+
<p class="ca"><%= _("Insights data not available.") %></p>
|
|
11
|
+
<% elsif helper.disconnected_org?(Organization.current) %>
|
|
12
|
+
<p class="ca"><%= _("Insights data is not available for disconnected environments.") %></p>
|
|
13
|
+
<% else %>
|
|
14
|
+
|
|
15
|
+
<% api = RedhatAccess::Telemetry::MessagingService.new(Organization.current) %>
|
|
16
|
+
<% data = api.rules_stat_summary %>
|
|
17
|
+
<% if data.query_error %>
|
|
18
|
+
<p class="ca"><%= _("There was an error retrieving Insights data.") %></p>
|
|
19
|
+
<% else %>
|
|
20
|
+
<table class="table table-fixed table-striped table-bordered">
|
|
21
|
+
<thead>
|
|
22
|
+
<tr>
|
|
23
|
+
<th><%= _("Category") %></th>
|
|
24
|
+
<th><%= _("Number of Actions") %></th>
|
|
25
|
+
</tr>
|
|
26
|
+
</thead>
|
|
27
|
+
<tbody>
|
|
28
|
+
<tr>
|
|
29
|
+
<td><%= link_to("#{ _("Availability")}", '/redhat_access/insights/actions/availability')%> </td>
|
|
30
|
+
<td style="text-align:right;"><%= link_to("#{data.availability}", '/redhat_access/insights/actions/availability')%> </td>
|
|
31
|
+
</tr>
|
|
32
|
+
<tr>
|
|
33
|
+
<td><%= link_to("#{ _("Stability")}", '/redhat_access/insights/actions/stability')%> </td>
|
|
34
|
+
<td style="text-align:right;"><%= link_to("#{data.stability}", '/redhat_access/insights/actions/stability')%> </td>
|
|
35
|
+
</tr>
|
|
36
|
+
<tr>
|
|
37
|
+
<td><%= link_to("#{ _("Performance")}", '/redhat_access/insights/actions/performance')%> </td>
|
|
38
|
+
<td style="text-align:right;"><%= link_to("#{data.performance}", '/redhat_access/insights/actions/performance')%> </td>
|
|
39
|
+
</tr>
|
|
40
|
+
<tr>
|
|
41
|
+
<td><%= link_to("#{ _("Security")}", '/redhat_access/insights/actions/security')%> </td>
|
|
42
|
+
<td style="text-align:right;"><%= link_to("#{data.security}", '/redhat_access/insights/actions/security')%> </td>
|
|
43
|
+
</tr>
|
|
44
|
+
<tr>
|
|
45
|
+
<td><h4><%= _("Total") %></h4></td>
|
|
46
|
+
<td style="text-align:right;"><%= data.total %></td>
|
|
47
|
+
</tr>
|
|
48
|
+
</tbody>
|
|
49
|
+
</table>
|
|
50
|
+
<% end %>
|
|
51
|
+
<% end %>
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
<h4 class="header">
|
|
2
|
+
<%= _("Red Hat Insights Risk Summary") %>
|
|
3
|
+
</h4>
|
|
4
|
+
|
|
5
|
+
<% helper = RedhatAccess::Telemetry::Helper.new %>
|
|
6
|
+
<% if !Organization.current.present? %>
|
|
7
|
+
<p class="ca"><%= _("Please select an organization to view Red Hat Insights risk summary.") %></p>
|
|
8
|
+
<% elsif !helper.telemetry_enabled?(Organization.current) %>
|
|
9
|
+
<p class="ca"><%= _("Insights functionality is disabled.") %></p>
|
|
10
|
+
<% elsif !helper.is_susbcribed_to_redhat?(Organization.current) %>
|
|
11
|
+
<p class="ca"><%= _("Insights data not available.") %></p>
|
|
12
|
+
<% elsif helper.disconnected_org?(Organization.current) %>
|
|
13
|
+
<p class="ca"><%= _("Insights is data not available for disconnected environments.") %></p>
|
|
14
|
+
<% else %>
|
|
15
|
+
<% api = RedhatAccess::Telemetry::MessagingService.new(Organization.current) %>
|
|
16
|
+
<% risk_data = api.risk_summary %>
|
|
17
|
+
<% if risk_data.query_error %>
|
|
18
|
+
<p class="ca"><%= _("There was an error retrieving Insights data.") %></p>
|
|
19
|
+
<% else %>
|
|
20
|
+
<table class="table table-fixed table-striped table-bordered">
|
|
21
|
+
<thead>
|
|
22
|
+
<tr>
|
|
23
|
+
<th><%= _("Risk Level") %></th>
|
|
24
|
+
<th><%= _("Percentage") %></th>
|
|
25
|
+
</tr>
|
|
26
|
+
</thead>
|
|
27
|
+
<tbody>
|
|
28
|
+
<tr>
|
|
29
|
+
<h4>
|
|
30
|
+
<%= link_to('/redhat_access/insights/actions/critical-risk') do %>
|
|
31
|
+
<i class="label " style="margin-right: 6px"> </i> <%= risk_data.critical_count %> <%= _('system(s) have critical issues.') %>
|
|
32
|
+
<% end %>
|
|
33
|
+
|
|
34
|
+
</h4>
|
|
35
|
+
</tr>
|
|
36
|
+
<tr>
|
|
37
|
+
<td>
|
|
38
|
+
<%= link_to('/redhat_access/insights/actions/low-risk') do %>
|
|
39
|
+
<i class="label label-info" style="margin-right: 6px"> </i><%= _("Low") %>
|
|
40
|
+
<% end %>
|
|
41
|
+
</td>
|
|
42
|
+
<td style="text-align:right">
|
|
43
|
+
<%= link_to("#{risk_data.low_percent}%", '/redhat_access/insights/actions/low-risk') %>
|
|
44
|
+
</td>
|
|
45
|
+
</tr>
|
|
46
|
+
<tr>
|
|
47
|
+
<td>
|
|
48
|
+
<%= link_to('/redhat_access/insights/actions/medium-risk') do %>
|
|
49
|
+
<i class="label label-success" style="margin-right: 6px"> </i><%= _("Medium") %>
|
|
50
|
+
<% end %>
|
|
51
|
+
</td>
|
|
52
|
+
<td style="text-align:right">
|
|
53
|
+
<%= link_to("#{risk_data[:medium_percent]}%", '/redhat_access/insights/actions/medium-risk') %>
|
|
54
|
+
</td>
|
|
55
|
+
</tr>
|
|
56
|
+
<tr>
|
|
57
|
+
<td>
|
|
58
|
+
<%= link_to('/redhat_access/insights/actions/high-risk') do %>
|
|
59
|
+
<i class="label label-warning" style="margin-right: 6px"> </i><%= _("High") %>
|
|
60
|
+
<% end %>
|
|
61
|
+
</td>
|
|
62
|
+
<td style="text-align:right">
|
|
63
|
+
<%= link_to("#{risk_data.high_percent}%", '/redhat_access/insights/actions/high-risk') %>
|
|
64
|
+
</td>
|
|
65
|
+
</tr>
|
|
66
|
+
<tr>
|
|
67
|
+
<td>
|
|
68
|
+
<%= link_to('/redhat_access/insights/actions/critical-risk') do %>
|
|
69
|
+
<i class="label label-danger" style="margin-right: 6px"> </i><%= _("Critical") %>
|
|
70
|
+
<% end %>
|
|
71
|
+
</td>
|
|
72
|
+
<td style="text-align:right">
|
|
73
|
+
<%= link_to("#{risk_data.critical_percent}%", '/redhat_access/insights/actions/critical-risk') %>
|
|
74
|
+
</td>
|
|
75
|
+
</tr>
|
|
76
|
+
</tbody>
|
|
77
|
+
</table>
|
|
78
|
+
<% end %>
|
|
79
|
+
|
|
80
|
+
<% end %>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<% if (
|
|
1
|
+
<% if (not view_preconditions_met?) %>
|
|
2
2
|
<article id='content'>
|
|
3
|
-
<%if !is_org_selected?
|
|
3
|
+
<%if !is_org_selected? %>
|
|
4
4
|
<section>
|
|
5
5
|
<h1>
|
|
6
6
|
<%= _("Organization Selection Required") %>
|
data/lib/redhat_access/engine.rb
CHANGED
|
@@ -213,6 +213,8 @@ module RedhatAccess
|
|
|
213
213
|
:engine => RedhatAccess::Engine,
|
|
214
214
|
:turbolinks => false
|
|
215
215
|
end
|
|
216
|
+
widget 'insights_issues_widget', :name => 'Red Hat Insights Actions', :sizey => 1, :sizex => 6
|
|
217
|
+
widget 'insights_risk_widget', :name => 'Red Hat Insights Risk Summary', :sizey => 1, :sizex => 6
|
|
216
218
|
end
|
|
217
219
|
end
|
|
218
220
|
end
|
data/redhat_access.gemspec
CHANGED
|
@@ -15,16 +15,7 @@ Gem::Specification.new do |s|
|
|
|
15
15
|
|
|
16
16
|
s.files = Dir["{app,config,db,lib,vendor,public,script,ca,locale}/**/*"] + ["LICENSE.txt", "Rakefile", "README.rdoc", "redhat_access.gemspec", "Gemfile"]
|
|
17
17
|
s.test_files = Dir["test/**/*"]
|
|
18
|
-
|
|
19
|
-
#s.add_dependency "rails", "~> 3.2"
|
|
20
18
|
s.add_dependency "redhat_access_lib" , ">=1.0.1"
|
|
21
|
-
|
|
22
|
-
#s.add_dependency "haml-rails"
|
|
23
|
-
#s.add_dependency "requirejs-rails"
|
|
24
|
-
#-------------s.add_dependency "bootstrap-sass", "~> 3.0.3.0"
|
|
25
|
-
# s.add_dependency "jquery-rails"
|
|
26
19
|
s.add_dependency "angular-rails-templates", ">=0.0.4"
|
|
27
|
-
|
|
28
|
-
#s.add_development_dependency "sprockets", "~>2.2.2"
|
|
29
|
-
#s.add_development_dependency "redhat_access_lib"
|
|
20
|
+
|
|
30
21
|
end
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
4
|
+
viewBox="0 0 200 200" style="enable-background:new 0 0 200 200;" xml:space="preserve">
|
|
5
|
+
<style type="text/css">
|
|
6
|
+
.st0{fill:#CB2027;}
|
|
7
|
+
</style>
|
|
8
|
+
<g>
|
|
9
|
+
<g>
|
|
10
|
+
<path class="st0" d="M185.8,56.7c0-14.4-5.6-27.9-15.7-38c-19.1-19-49.1-20.8-70.1-5.1C78.9-2.1,48.9-0.4,29.9,18.7
|
|
11
|
+
c-10.1,10.1-15.7,23.6-15.7,38c0,14.4,5.6,27.9,15.7,38l18.5,18.5v33.5c0,2.3,1.9,4.2,4.2,4.2c2.3,0,4.2-1.9,4.2-4.2v-25.2l3.1,3
|
|
12
|
+
v56c0,1.3,1.1,2.4,2.4,2.4c1.3,0,2.4-1.1,2.4-2.4v-51.2l4.4,4.4v24.9c0,1.5,1.2,2.6,2.6,2.6s2.6-1.2,2.6-2.6v-19.6l25.8,25.7
|
|
13
|
+
l20.1-20.1v46.7c0,1.3,1.1,2.4,2.4,2.4c1.3,0,2.4-1.1,2.4-2.4v-51.5l6.3-6.3v20.7c0,2.3,1.9,4.2,4.2,4.2s4.2-1.9,4.2-4.2v-29
|
|
14
|
+
l30.6-30.5C180.3,84.5,185.8,71.1,185.8,56.7z M158.3,82.9L100,141.1L41.7,82.9c-7-7-10.8-16.3-10.8-26.2
|
|
15
|
+
c0-9.9,3.8-19.2,10.8-26.2c7.2-7.2,16.7-10.8,26.2-10.8c9.5,0,19,3.6,26.2,10.8l5.9,5.9l5.9-5.9c14.5-14.4,38-14.4,52.5,0
|
|
16
|
+
c7,7,10.8,16.3,10.8,26.2C169.2,66.6,165.3,75.9,158.3,82.9z"/>
|
|
17
|
+
</g>
|
|
18
|
+
</g>
|
|
19
|
+
</svg>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
4
|
+
viewBox="0 0 1600 1600" style="enable-background:new 0 0 1600 1600;" xml:space="preserve">
|
|
5
|
+
<style type="text/css">
|
|
6
|
+
.st0{fill:#FFFFFF;}
|
|
7
|
+
</style>
|
|
8
|
+
<path class="st0" d="M1173.9,584.8c-0.2-1.8-0.6-3.6-1.3-5.4l-1.9-4.4l-0.6-0.6c-1.2-1.8-2.6-3.4-4.2-4.8l-1.7-1.3
|
|
9
|
+
c-0.7-0.5-2-1.5-3.7-2.3L811.5,395.9c-6.9-3.3-15.1-3.3-22,0l-349,170c-1.8,0.9-3,1.8-3.2,2l-2.1,1.5c-1.7,1.5-3.2,3.2-4.4,5
|
|
10
|
+
l-2.5,5.1c-0.6,1.5-0.9,3.1-1.1,4.5l-0.4,428.4c0,9.1,5.4,17.5,13.7,21.5l348.3,169.7l2.7,1.5l1.1,0.1c1.8,0.6,3.6,1,5.5,1.2
|
|
11
|
+
l2.4,0.2l2.3-0.1c2.1-0.2,4.1-0.6,5.7-1.2l351.9-171.2c8.3-4,13.7-12.5,13.7-21.5L1173.9,584.8z M1094.3,587.5L800.5,730.6
|
|
12
|
+
l-119.3-58.1L975,529.4L1094.3,587.5z M775.8,937.8c-2.9-1.7-6.2-2.7-9.8-2.7c-10.6,0-19.2,8.4-19.2,18.7v155.1
|
|
13
|
+
c0,10.3,8.6,18.7,19.2,18.7c3.6,0,6.9-1,9.8-2.7v18.7L476.2,997.6V626.4l299.6,145.9V937.8z M506.7,587.5l293.8-143.1l131.6,64.1
|
|
14
|
+
L638.3,651.6L506.7,587.5z M1124.8,894.7c-2-0.7-4-1.1-6.2-1.1c-10.6,0-19.2,8.4-19.2,18.7v68l-110.5,53.8
|
|
15
|
+
c-9.5,4.6-13.3,15.8-8.5,25.2c1.3,2.5,3.2,4.4,5.3,6.1l-160.4,78.1V772.4l299.6-145.9V894.7z"/>
|
|
16
|
+
</svg>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<svg width="86.697pt" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 86.697382 92.46" height="92.46pt">
|
|
3
|
+
<path d="m27.016 42.32a1.249 1.249 0 0 0 1.765 0l4.414-4.414 4.41 4.414a1.249 1.249 0 0 0 1.77 0 1.252 1.252 0 0 0 0 -1.77l-4.41-4.41 4.41-4.413a1.247 1.247 0 0 0 0 -1.766 1.252 1.252 0 0 0 -1.77 0l-4.41 4.41-4.414-4.41a1.247 1.247 0 0 0 -1.765 0 1.247 1.247 0 0 0 0 1.766l4.41 4.414-4.41 4.41a1.252 1.252 0 0 0 0 1.77zm51.047-2.976c-2.352-11.965-10.172-21.2-21.024-24.989l0.328-1.296a0.232 0.232 0 0 0 -0.058 -0.223 0.227 0.227 0 0 0 -0.215 -0.074l-4.672 0.843a0.239 0.239 0 0 0 -0.192 0.176c-0.02 0.09 0.008 0.188 0.083 0.246l3.703 3c0.062 0.051 0.148 0.067 0.226 0.043a0.24 0.24 0 0 0 0.156 -0.172l0.27-1.066c10.27 3.64 17.672 12.434 19.91 23.805 2.457 12.484-2.691 26.433-12.816 35.066a5.887 5.887 0 0 0 -4.461 -2.05 5.912 5.912 0 0 0 -5.906 5.906 5.91 5.91 0 0 0 5.905 5.901 5.91 5.91 0 0 0 5.902 -5.902c0-0.926-0.223-1.801-0.601-2.579 10.625-8.972 16.03-23.57 13.46-36.636zm-18.766 42.616a3.408 3.408 0 0 1 -3.402 -3.402 3.403 3.403 0 1 1 3.402 3.402z"/>
|
|
4
|
+
<path d="m54.117 51.566a1.248 1.248 0 0 0 1.77 0l4.41-4.41 4.414 4.41c0.242 0.246 0.562 0.368 0.883 0.368 0.32 0 0.64-0.121 0.883-0.368a1.247 1.247 0 0 0 0 -1.765l-4.41-4.414 4.41-4.414a1.247 1.247 0 0 0 0 -1.766 1.247 1.247 0 0 0 -1.766 0l-4.414 4.41-4.41-4.41a1.247 1.247 0 0 0 -1.766 0 1.247 1.247 0 0 0 0 1.766l4.41 4.414-4.414 4.414a1.247 1.247 0 0 0 0 1.765zm-14.515 19.512a1.254 1.254 0 0 0 -1.766 0l-4.414 4.414-4.414-4.414a1.247 1.247 0 0 0 -1.766 0 1.252 1.252 0 0 0 0 1.77l4.41 4.414-4.41 4.41a1.252 1.252 0 0 0 0 1.77c0.242 0.242 0.563 0.363 0.883 0.363s0.64-0.121 0.883-0.364l4.414-4.414 4.41 4.414a1.26 1.26 0 0 0 1.77 0 1.252 1.252 0 0 0 0 -1.77l-4.414-4.41 4.414-4.413a1.252 1.252 0 0 0 0 -1.77zm9.132-10.949c-0.816 0-1.593 0.168-2.3 0.465l-7.118-13.024 3.618-1.98-0.72-1.317-8.554 4.676 0.719 1.317 3.621-1.98 7.14 13.07a5.896 5.896 0 0 0 -2.308 4.675 5.907 5.907 0 0 0 5.902 5.903 5.91 5.91 0 0 0 5.903 -5.903 5.907 5.907 0 0 0 -5.903 -5.902zm0 9.309a3.405 3.405 0 0 1 0 -6.809 3.408 3.408 0 0 1 3.403 3.402 3.408 3.408 0 0 1 -3.403 3.406zm-25.355-7.536a0.231 0.231 0 0 0 -0.23 0.008l-1.04 0.621-12.511-18.113c-0.618-6.41 2.039-13.375 7.285-19.117 4.972-5.442 11.691-9.184 18.566-10.371 0.489 2.765 2.903 4.875 5.809 4.875a5.91 5.91 0 0 0 5.902 -5.903 5.91 5.91 0 0 0 -5.902 -5.902 5.907 5.907 0 0 0 -5.88 5.406c-7.32 1.223-14.468 5.2-19.722 11.016-5.511 6.101-8.261 13.52-7.543 20.348l0.016 0.16 12.68 18.383-1.063 0.632a0.245 0.245 0 0 0 -0.117 0.196c0 0.086 0.035 0.16 0.101 0.207l3.903 2.707c0.074 0.05 0.176 0.058 0.258 0.007a0.239 0.239 0 0 0 0.117 -0.23l-0.496-4.738a0.238 0.238 0 0 0 -0.133 -0.192zm17.879-51.402a3.408 3.408 0 0 1 3.402 3.402 3.405 3.405 0 0 1 -3.402 3.403 3.403 3.403 0 0 1 0 -6.805z"/>
|
|
5
|
+
</svg>
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!-- Generator: Adobe Illustrator 19.2.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
+
|
|
4
|
+
<svg
|
|
5
|
+
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
6
|
+
xmlns:cc="http://creativecommons.org/ns#"
|
|
7
|
+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
8
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
|
9
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
10
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
11
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
12
|
+
version="1.1"
|
|
13
|
+
id="Layer_1"
|
|
14
|
+
x="0px"
|
|
15
|
+
y="0px"
|
|
16
|
+
viewBox="0 0 146 166"
|
|
17
|
+
style="enable-background:new 0 0 146 166;"
|
|
18
|
+
xml:space="preserve"
|
|
19
|
+
sodipodi:docname="i_critical.svg"
|
|
20
|
+
inkscape:version="0.92.1 r"><metadata
|
|
21
|
+
id="metadata4612"><rdf:RDF><cc:Work
|
|
22
|
+
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
|
23
|
+
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
|
24
|
+
id="defs4610" /><sodipodi:namedview
|
|
25
|
+
pagecolor="#ffffff"
|
|
26
|
+
bordercolor="#666666"
|
|
27
|
+
borderopacity="1"
|
|
28
|
+
objecttolerance="10"
|
|
29
|
+
gridtolerance="10"
|
|
30
|
+
guidetolerance="10"
|
|
31
|
+
inkscape:pageopacity="0"
|
|
32
|
+
inkscape:pageshadow="2"
|
|
33
|
+
inkscape:window-width="1920"
|
|
34
|
+
inkscape:window-height="1055"
|
|
35
|
+
id="namedview4608"
|
|
36
|
+
showgrid="false"
|
|
37
|
+
inkscape:zoom="1.4216867"
|
|
38
|
+
inkscape:cx="73"
|
|
39
|
+
inkscape:cy="83"
|
|
40
|
+
inkscape:window-x="0"
|
|
41
|
+
inkscape:window-y="1050"
|
|
42
|
+
inkscape:window-maximized="1"
|
|
43
|
+
inkscape:current-layer="Layer_1" /><style
|
|
44
|
+
type="text/css"
|
|
45
|
+
id="style4593">
|
|
46
|
+
.st0{fill:#808080;}
|
|
47
|
+
.st1{fill:#CC0000;}
|
|
48
|
+
</style><g
|
|
49
|
+
id="g4605"><path
|
|
50
|
+
class="st1"
|
|
51
|
+
d="M114.6,143.3H31c-7.2,0-13-4.8-13-10.6l0,0c0-5.9,5.9-10.6,13-10.6h83.6c7.2,0,13,4.8,13,10.6l0,0 C127.7,138.5,121.8,143.3,114.6,143.3z"
|
|
52
|
+
id="path4597" /><path
|
|
53
|
+
class="st1"
|
|
54
|
+
d="M114.6,110.2H31c-7.2,0-13-4.8-13-10.6l0,0C18,93.7,23.9,89,31,89h83.6c7.2,0,13,4.8,13,10.6l0,0 C127.7,105.4,121.8,110.2,114.6,110.2z"
|
|
55
|
+
id="path4599" /><path
|
|
56
|
+
class="st1"
|
|
57
|
+
d="M115,77.1H31.4c-7.2,0-13-4.8-13-10.6l0,0c0-5.9,5.9-10.6,13-10.6H115c7.2,0,13,4.8,13,10.6l0,0 C128,72.3,122.1,77.1,115,77.1z"
|
|
58
|
+
id="path4601" /><path
|
|
59
|
+
class="st1"
|
|
60
|
+
d="M114.6,44H31c-7.2,0-13-4.8-13-10.6l0,0c0-5.9,5.9-10.7,13-10.7h83.6c7.2,0,13,4.8,13,10.6l0,0 C127.7,39.2,121.8,44,114.6,44z"
|
|
61
|
+
id="path4603" /></g></svg>
|