Skip to content

Commit d7de78e

Browse files
committed
Updated Deploy client to use new response structure.
1 parent 68b85f5 commit d7de78e

File tree

3 files changed

+68
-41
lines changed

3 files changed

+68
-41
lines changed

PolyDeploy/Clients/Core/src/js/services/SessionDataService.js

+24-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
// Parse if we need to.
1818
if (data.Response) {
19-
data.Response = JSON.parse(data.Response);
19+
data.Response = parseSessionResponse(data.Response);
2020
} else {
2121
data.Response = undefined;
2222
}
@@ -38,7 +38,7 @@
3838

3939
// Parse if we need to.
4040
if (data.Response) {
41-
data.Response = JSON.parse(data.Response);
41+
data.Response = parseSessionResponse(data.Response);
4242
} else {
4343
data.Response = undefined;
4444
}
@@ -107,6 +107,28 @@
107107
$http.get(controllerUrl + 'Install?guid=' + guid);
108108
}
109109

110+
function parseSessionResponse(rawResponse) {
111+
112+
// Parse to json.
113+
var response = JSON.parse(rawResponse);
114+
115+
var newResponse = [];
116+
117+
// Tidy the response to make it easier to deal with.
118+
for (var key in response) {
119+
120+
var modulePackage = response[key];
121+
122+
modulePackage.Order = parseInt(key);
123+
124+
newResponse.push(modulePackage);
125+
}
126+
127+
console.log(newResponse);
128+
129+
return newResponse;
130+
}
131+
110132
return {
111133
create: create,
112134
get: get,

PolyDeploy/Clients/Deploy/src/js/controllers/ResultController.js

+30-2
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,18 @@
3232
var response = session.Response;
3333

3434
// Get counts.
35-
var installed = response.Installed.length;
36-
var failed = response.Failed.length;
35+
var installed = 0;
36+
var failed = 0;
37+
38+
response.forEach(function (modPackage) {
39+
40+
// Attempted install?
41+
if (modPackage.Attempted) {
42+
43+
// Success?
44+
modPackage.Success ? installed++ : failed++;
45+
}
46+
});
3747

3848
// Create start of string.
3949
var installStatus = 'Installation ';
@@ -57,4 +67,22 @@
5767
return installStatus;
5868
};
5969

70+
// Get CSS class to apply to module panel.
71+
$scope.panelStatus = function (modPackage) {
72+
73+
// Default class.
74+
var panelClass = 'panel-default';
75+
76+
// Attempted install?
77+
if (modPackage.Attempted) {
78+
79+
// Success?
80+
panelClass = modPackage.Success ? 'panel-success' : 'panel-danger';
81+
}
82+
83+
console.log(panelClass);
84+
85+
return panelClass;
86+
};
87+
6088
}];

PolyDeploy/Clients/Deploy/src/js/templates/result.html

+14-37
Original file line numberDiff line numberDiff line change
@@ -21,59 +21,36 @@ <h4>{{ currentStatus(session) }}</h4>
2121

2222
<div class="row">
2323

24-
<!-- Installed -->
25-
<div class="col-xs-12 col-md-6">
26-
<div class="panel panel-success">
24+
<!-- Packages -->
25+
<div ng-repeat="packageZip in session.Response" class="col-xs-12 col-md-6">
26+
<div class="panel" ng-class="panelStatus(packageZip)">
2727
<div class="panel-heading">
28-
<h4 class="panel-title">Installed</h4>
28+
<h4 class="panel-title">{{ packageZip.Name }}</h4>
2929
</div>
3030
<div class="panel-body">
31-
<div class="module-info" ng-repeat="module in session.Response.Installed">
32-
<h4>{{ module.Name }}</h4>
31+
<div class="module-info">
32+
3333
<h5>Packages</h5>
34-
<div ng-repeat="package in module.Packages">
34+
<div ng-repeat="package in packageZip.Packages">
3535
<ul class="package-info">
3636
<li><strong>Name:</strong> {{ package.Name }}</li>
3737
<li><strong>Version:</strong> {{ package.VersionStr }}</li>
3838
</ul>
3939
</div>
40-
<hr />
41-
</div>
42-
</div>
43-
</div>
44-
</div>
45-
<!-- /Installed -->
4640

47-
<!-- Failures -->
48-
<div class="col-xs-12 col-md-6">
49-
<div class="panel panel-danger">
50-
<div class="panel-heading">
51-
<h4 class="panel-title">Failures</h4>
52-
</div>
53-
<div class="panel-body">
54-
<div class="module-info" ng-repeat="module in session.Response.Failed">
55-
56-
<h5>Packages</h5>
57-
<div ng-repeat="package in module.Packages">
58-
<ul class="package-info">
59-
<li><strong>Name:</strong> {{ package.Name }}</li>
60-
<li><strong>Version:</strong> {{ package.VersionStr }}</li>
41+
<div ng-show="packageZip.Failures && packageZip.Failures.length > 0">
42+
<h5>Failures</h5>
43+
<ul>
44+
<li ng-repeat="failure in packageZip.Failures">
45+
{{ failure }}
46+
</li>
6147
</ul>
6248
</div>
63-
64-
<h5>Failures</h5>
65-
<ul>
66-
<li ng-repeat="failure in module.Failures">
67-
{{ failure }}
68-
</li>
69-
</ul>
70-
<hr />
71-
7249
</div>
7350
</div>
7451
</div>
7552
</div>
76-
<!-- /Failures -->
53+
<!-- /Packages -->
7754

7855
</div>
7956

0 commit comments

Comments
 (0)