Skip to content

Commit 0fcffff

Browse files
committed
Introduce arbitrary message conditions
1 parent 69994ab commit 0fcffff

6 files changed

Lines changed: 59 additions & 46 deletions

File tree

browser/directives/componentPanel.html

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,4 +52,12 @@
5252
<span>{{item.messages.dependency.message.split(item.messages.dependency.linkDescription)[1]}}</span>
5353
</span>
5454
</div>
55+
56+
<div ng-repeat="message in item.messages.misc">
57+
<div ng-show="evaluateCondition(message.isVisible)" class="message-container" ng-class="{'error-message': message.type === 'error', 'warning-message': message.type === 'warning'}">
58+
<span ng-show="message.type === 'error'" class="pficon pficon-error-circle-o"></span>
59+
<span ng-show="message.type === 'warning'" class="pficon pficon-warning-triangle-o"></span>
60+
<span>{{message.message}}</span>
61+
</div>
62+
</div>
5563
</div>

browser/directives/componentPanel.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22

33
function componentPanel() {
44
return {
5-
controller: ('componentController', ['$scope', 'electron', function($scope, electron) {
5+
controller: ('componentController', ['$scope', 'electron', 'installerDataSvc', function($scope, electron, installerDataSvc) {
66
$scope.openUrl = function(url) {
77
electron.shell.openExternal(url);
8-
}
8+
};
9+
10+
$scope.evaluateCondition = function(content) {
11+
let evaluate = new Function('installerDataSvc', 'return ' + content);
12+
return evaluate(installerDataSvc);
13+
};
914
}]),
1015
restrict: 'E',
1116
replace: true,

browser/model/installable-item.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ class InstallableItem {
5454
this.authRequired = authRequired;
5555
this.references = 0;
5656

57-
this.messages = require('./messages.json')[this.keyName];
57+
this.messages = requirement.messages;
5858
}
5959

6060
getProductName() {

browser/model/messages.json

Lines changed: 0 additions & 27 deletions
This file was deleted.

browser/pages/confirm/confirm.html

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,6 @@
1313

1414
<div ng-repeat="item in checkboxModel">
1515
<component-panel item="item"></component-panel>
16-
17-
<div class="message-container error-message" ng-show="item.keyName === 'virtualbox' && !confCtrl.isDisabled && !checkboxModel.hyperv.isConfigured() && checkboxModel.virtualbox.virtualizationEnabled === false && (checkboxModel.cdk.selectedOption == 'install' || checkboxModel.virtualbox.selectedOption == 'install') && platform === 'win32'">
18-
<span class="pficon pficon-error-circle-o"></span>
19-
<span>Please enable hardware virtualization support in BIOS for your platform.</span>
20-
</div>
21-
22-
<div class="message-container error-message" ng-show="item.keyName === 'virtualbox' && !confCtrl.isDisabled && checkboxModel.virtualbox.virtualizationEnabled === false && (checkboxModel.cdk.selectedOption == 'install' || checkboxModel.virtualbox.selectedOption == 'install') && platform === 'darwin'">
23-
<span class="pficon pficon-error-circle-o"></span>
24-
<span>Please enable hardware virtualization for your platform.</span>
25-
</div>
26-
27-
<div class="message-container warning-message" ng-show="item.keyName === 'virtualbox' && !confCtrl.isDisabled && !checkboxModel.hyperv.isConfigured() && checkboxModel.virtualbox.virtualizationEnabled === undefined && checkboxModel.cdk.selectedOption == 'install'">
28-
<span class="pficon pficon-warning-triangle-o"></span>
29-
<span>Please make sure hardware virtualization is enabled on your platform if supported.</span>
30-
</div>
3116
</div>
3217
</form>
3318

requirements.json

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,13 @@
126126
"fileName": "",
127127
"sha256sum": "",
128128
"version": "1.8.0",
129-
"virusTotalReport": ""
129+
"virusTotalReport": "",
130+
"messages": {
131+
"dependency": {
132+
"message": "Due to licence limitations we may not install Java for you. Please install JDK version 1.8.0 downloaded from this location and restart the Installer to continue.",
133+
"linkDescription": "this location"
134+
}
135+
}
130136
},
131137
"linux": {
132138
"name": "OpenJDK",
@@ -189,6 +195,13 @@
189195
"detectable": false,
190196
"targetFolderName": "kompose",
191197
"version": "1.0.0 Technology Preview",
198+
"messages": {
199+
"info": {
200+
"message": "For additional information and documentation visit http://kompose.io",
201+
"link": "http://kompose.io",
202+
"linkDescription": "http://kompose.io"
203+
}
204+
},
192205
"platform": {
193206
"win32": {
194207
"url": "https://github.com/kubernetes/kompose/releases/download/v1.0.0/kompose-windows-amd64.exe",
@@ -221,6 +234,13 @@
221234
"revision": "112440",
222235
"virusTotalReport": "",
223236
"vendor": "Microsoft, Inc.",
237+
"messages": {
238+
"info": {
239+
"message": "Follow these steps to install and enable Microsoft Hyper-V on Windows 10",
240+
"link": "https://access.redhat.com/documentation/en-us/red_hat_container_development_kit/2.4/html/installation_guide/installing_container_development_kit_on_microsoft_windows#windows-add-sw",
241+
"linkDescription": "these steps"
242+
}
243+
},
224244
"platform": {
225245
"win32": {}
226246
}
@@ -235,6 +255,28 @@
235255
"bundle": "no",
236256
"targetFolderName": "virtualbox",
237257
"installAfter": "jdk",
258+
"messages": {
259+
"dependency": {
260+
"message": "Please uninstall detected Oracle VirtualBox and restart Installer to continue."
261+
},
262+
"misc": {
263+
"vtxDisabledWin": {
264+
"message": "Please enable hardware virtualization support in BIOS for your platform.",
265+
"type": "error",
266+
"isVisible": "!installerDataSvc.getInstallable('hyperv').isConfigured() && installerDataSvc.getInstallable('virtualbox').virtualizationEnabled === false && (installerDataSvc.getInstallable('cdk').selectedOption == 'install' || installerDataSvc.getInstallable('virtualbox').selectedOption == 'install') && process.platform === 'win32'"
267+
},
268+
"vtxDisabledDawin": {
269+
"message": "Please enable hardware virtualization for your platform.",
270+
"type": "error",
271+
"isVisible": "installerDataSvc.getInstallable('virtualbox').virtualizationEnabled === false && (installerDataSvc.getInstallable('cdk').selectedOption == 'install' || installerDataSvc.getInstallable('virtualbox').selectedOption == 'install') && process.platform === 'darwin'"
272+
},
273+
"vtxUndefined": {
274+
"message": "Please make sure hardware virtualization is enabled on your platform if supported.",
275+
"type": "warning",
276+
"isVisible": "!installerDataSvc.getInstallable('hyperv').isConfigured() && installerDataSvc.getInstallable('virtualbox').virtualizationEnabled === undefined && installerDataSvc.getInstallable('cdk').selectedOption == 'install'"
277+
}
278+
}
279+
},
238280
"platform": {
239281
"win32": {
240282
"url": "http://download.virtualbox.org/virtualbox/5.1.24/VirtualBox-5.1.24-117012-Win.exe",

0 commit comments

Comments
 (0)