Skip to content

Commit 32e63f5

Browse files
Merge branch 'MAGETWO-56042' of https://github.com/magento-falcons/magento2ce into MAGETWO-56252
2 parents 2142936 + aa27b11 commit 32e63f5

File tree

6 files changed

+82
-69
lines changed

6 files changed

+82
-69
lines changed

setup/pub/magento/setup/main.js

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ main.controller('navigationController',
118118
mainState: {},
119119
states: [],
120120
titlesWithModuleName: ['enable', 'disable', 'update', 'uninstall'],
121+
isLoadedStates: false,
121122
load: function () {
122123
var self = this;
123124
return $http.get('index.php/navigation').success(function (data) {
@@ -129,19 +130,22 @@ main.controller('navigationController',
129130
data.titles[value] = data.titles[value] + $localStorage.moduleName;
130131
});
131132
$localStorage.titles = data.titles;
132-
data.nav.forEach(function (item) {
133-
app.stateProvider.state(item.id, item);
134-
if (item.default) {
135-
self.mainState = item;
136-
}
133+
if (self.isLoadedStates == false) {
134+
data.nav.forEach(function (item) {
135+
app.stateProvider.state(item.id, item);
136+
if (item.default) {
137+
self.mainState = item;
138+
}
137139

138-
if (currentState == item.url) {
139-
$state.go(item.id);
140-
isCurrentStateFound = true;
140+
if (currentState == item.url) {
141+
$state.go(item.id);
142+
isCurrentStateFound = true;
143+
}
144+
});
145+
if (!isCurrentStateFound) {
146+
$state.go(self.mainState.id);
141147
}
142-
});
143-
if (!isCurrentStateFound) {
144-
$state.go(self.mainState.id);
148+
self.isLoadedStates = true;
145149
}
146150
});
147151
},

setup/pub/magento/setup/module-grid.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@ angular.module('module-grid', ['ngStorage'])
6262
$scope.enableDisable = function(type, component) {
6363
$localStorage.packages = [
6464
{
65-
name: component.moduleName
65+
name: component.moduleName,
66+
isComposerPackage: component.name !== 'unknown',
6667
}
6768
];
6869
titleService.setTitle(type, component.moduleName ? component.moduleName : component.name);

setup/pub/magento/setup/readiness-check.js

Lines changed: 32 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ angular.module('readiness-check', [])
1515
++$scope.progressCounter;
1616
};
1717
$scope.componentDependency = {
18+
enabled: true,
1819
visible: false,
1920
processed: false,
2021
expanded: false,
@@ -31,6 +32,7 @@ angular.module('readiness-check', [])
3132
break;
3233
case 'enable':
3334
case 'disable':
35+
$scope.componentDependency.enabled = $localStorage.packages[0].isComposerPackage;
3436
$scope.dependencyUrl = 'index.php/dependency-check/enable-disable-dependency-check';
3537
if ($localStorage.packages) {
3638
$scope.componentDependency.packages = {
@@ -235,35 +237,44 @@ angular.module('readiness-check', [])
235237
$scope.requestFailedHandler($scope.cronScript);
236238
}
237239
};
238-
$scope.items['component-dependency'] = {
239-
url: $scope.dependencyUrl,
240-
params: $scope.componentDependency.packages,
241-
show: function() {
242-
$scope.startProgress();
243-
$scope.componentDependency.visible = true;
244-
},
245-
process: function(data) {
246-
$scope.componentDependency.processed = true;
247-
if (data.errorMessage) {
248-
data.errorMessage = $sce.trustAsHtml(data.errorMessage);
240+
if ($scope.componentDependency.enabled) {
241+
$scope.items['component-dependency'] = {
242+
url: $scope.dependencyUrl,
243+
params: $scope.componentDependency.packages,
244+
show: function() {
245+
$scope.startProgress();
246+
$scope.componentDependency.visible = true;
247+
},
248+
process: function(data) {
249+
$scope.componentDependency.processed = true;
250+
if (data.errorMessage) {
251+
data.errorMessage = $sce.trustAsHtml(data.errorMessage);
252+
}
253+
angular.extend($scope.componentDependency, data);
254+
$scope.updateOnProcessed($scope.componentDependency.responseType);
255+
$scope.stopProgress();
256+
},
257+
fail: function() {
258+
$scope.requestFailedHandler($scope.componentDependency);
249259
}
250-
angular.extend($scope.componentDependency, data);
251-
$scope.updateOnProcessed($scope.componentDependency.responseType);
252-
$scope.stopProgress();
253-
},
254-
fail: function() {
255-
$scope.requestFailedHandler($scope.componentDependency);
256-
}
257-
};
260+
};
261+
}
262+
258263
}
259264

260265
$scope.isCompleted = function() {
261266
return $scope.version.processed
262267
&& $scope.settings.processed
263268
&& $scope.extensions.processed
264269
&& ($scope.permissions.processed || ($scope.actionFrom === 'updater'))
265-
&& (($scope.cronScript.processed && $scope.componentDependency.processed && $scope.updater.processed)
266-
|| ($scope.actionFrom !== 'updater'));
270+
&& (
271+
(
272+
$scope.cronScript.processed
273+
&& ($scope.componentDependency.processed || !$scope.componentDependency.enabled)
274+
&& $scope.updater.processed
275+
)
276+
|| ($scope.actionFrom !== 'updater')
277+
);
267278
};
268279

269280
$scope.updateOnProcessed = function(value) {

setup/src/Magento/Setup/Model/Grid/Module.php

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,12 @@
1919
*/
2020
class Module
2121
{
22+
/**
23+
* Const for unknown package name and version
24+
*/
25+
const UNKNOWN_PACKAGE_NAME = 'unknown';
26+
const UNKNOWN_VERSION = '';
27+
2228
/**
2329
* @var ComposerInformation
2430
*/
@@ -105,9 +111,9 @@ public function getList()
105111
});
106112

107113
array_walk($items, function (&$module, $name) {
108-
$module['moduleName'] = $this->packageInfo->getModuleName($name);
114+
$module['moduleName'] = $module['moduleName'] ?: $this->packageInfo->getModuleName($name);
109115
$module['enable'] = $this->moduleList->has($module['moduleName']);
110-
$module['vendor'] = ucfirst(current(explode('/', $name)));
116+
$module['vendor'] = ucfirst(current(preg_split('%[/_]%', $name)));
111117
$module['type'] = $this->typeMapper->map($name, $module['type']);
112118
$module['requiredBy'] = $this->getModuleRequiredBy($name);
113119
});
@@ -128,11 +134,11 @@ private function getModuleRequiredBy($name)
128134
foreach ($modules as $moduleName) {
129135
$packageName = $this->packageInfo->getPackageName($moduleName);
130136
$result[] = [
131-
'name' => $packageName,
137+
'name' => $packageName ?: self::UNKNOWN_PACKAGE_NAME,
132138
'moduleName' => $moduleName,
133139
'type' => $this->typeMapper->map($packageName, ComposerInformation::MODULE_PACKAGE_TYPE),
134140
'enable' => $this->moduleList->has($moduleName),
135-
'version' => $this->packageInfo->getVersion($moduleName)
141+
'version' => $this->packageInfo->getVersion($moduleName) ?: self::UNKNOWN_VERSION
136142
];
137143
}
138144

@@ -149,10 +155,12 @@ private function getInstalledModules()
149155
$modules = [];
150156
$allModules = $this->fullModuleList->getNames();
151157
foreach ($allModules as $module) {
152-
$name = $this->packageInfo->getPackageName($module);
153-
$modules[$name]['name'] = $name;
158+
$packageName = $this->packageInfo->getPackageName($module);
159+
$name = $packageName ?: $module;
160+
$modules[$name]['name'] = $packageName ?: self::UNKNOWN_PACKAGE_NAME;
161+
$modules[$name]['moduleName'] = $module;
154162
$modules[$name]['type'] = ComposerInformation::MODULE_PACKAGE_TYPE;
155-
$modules[$name]['version'] = $this->packageInfo->getVersion($module);
163+
$modules[$name]['version'] = $this->packageInfo->getVersion($module) ?: self::UNKNOWN_VERSION;
156164
}
157165

158166
return $modules;

setup/src/Magento/Setup/Test/Unit/Model/Grid/ModuleTest.php

Lines changed: 17 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -91,19 +91,12 @@ public function setUp()
9191
'version' => '1.0.0'
9292
]
9393
];
94-
$this->allComponentData = [
95-
'magento/sample-module-one' => [
96-
'name' => 'magento/sample-module-one',
97-
'type' => 'magento2-module',
98-
'version' => '1.0.0'
99-
],
100-
'magento/sample-module-two' => [
101-
'name' => 'magento/sample-module-two',
102-
'type' => 'magento2-module',
103-
'version' => '1.0.0'
104-
]
94+
95+
$fullModuleList = [
96+
'Sample_ModuleOne', 'Sample_ModuleTwo'
10597
];
10698

99+
107100
$this->composerInformationMock = $this->getMockBuilder(ComposerInformation::class)
108101
->disableOriginalConstructor()
109102
->getMock();
@@ -126,7 +119,7 @@ public function setUp()
126119
->getMock();
127120
$this->fullModuleListMock->expects(static::any())
128121
->method('getNames')
129-
->willReturn(array_keys($this->allComponentData));
122+
->willReturn($fullModuleList);
130123

131124
$this->packageInfoMock = $this->getMockBuilder(PackageInfo::class)
132125
->disableOriginalConstructor()
@@ -165,18 +158,14 @@ public function testGetList()
165158
->method('create')
166159
->willReturn($this->packageInfoMock);
167160

168-
$this->packageInfoMock->expects(static::exactly(2))
169-
->method('getModuleName')
170-
->willReturnMap([
171-
['magento/sample-module-one', 'Sample_Module_One'],
172-
['magento/sample-module-two', 'Sample_Module_Two'],
173-
]);
161+
$this->packageInfoMock->expects(static::never())
162+
->method('getModuleName');
174163

175164
$this->typeMapperMock->expects(static::exactly(2))
176165
->method('map')
177166
->willReturnMap([
178167
['magento/sample-module-one', 'magento2-module', 'Module'],
179-
['magento/sample-module-two', 'magento2-module', 'Module'],
168+
['Sample_ModuleTwo', 'magento2-module', 'Module'],
180169
]);
181170

182171
$this->packageInfoMock->expects(static::exactly(2))
@@ -185,14 +174,14 @@ public function testGetList()
185174
$this->packageInfoMock->expects(static::exactly(2))
186175
->method('getPackageName')
187176
->willReturnMap([
188-
['magento/sample-module-one', $this->allComponentData['magento/sample-module-one']['name']],
189-
['magento/sample-module-two', $this->allComponentData['magento/sample-module-two']['name']],
177+
['Sample_ModuleOne', 'magento/sample-module-one'],
178+
['Sample_ModuleTwo', ''],
190179
]);
191180
$this->packageInfoMock->expects(static::exactly(2))
192181
->method('getVersion')
193182
->willReturnMap([
194-
['magento/sample-module-one', $this->allComponentData['magento/sample-module-one']['version']],
195-
['magento/sample-module-two', $this->allComponentData['magento/sample-module-two']['version']],
183+
['Sample_ModuleOne', '1.0.0'],
184+
['Sample_ModuleTwo', ''],
196185
]);
197186
$this->moduleListMock->expects(static::exactly(2))
198187
->method('has')
@@ -207,16 +196,16 @@ public function testGetList()
207196
'type' => 'Module',
208197
'version' => '1.0.0',
209198
'vendor' => 'Magento',
210-
'moduleName' => 'Sample_Module_One',
199+
'moduleName' => 'Sample_ModuleOne',
211200
'enable' => true,
212201
'requiredBy' => []
213202
],
214203
[
215-
'name' => 'magento/sample-module-two',
204+
'name' => Module::UNKNOWN_PACKAGE_NAME,
216205
'type' => 'Module',
217-
'version' => '1.0.0',
218-
'vendor' => 'Magento',
219-
'moduleName' => 'Sample_Module_Two',
206+
'version' => Module::UNKNOWN_VERSION,
207+
'vendor' => 'Sample',
208+
'moduleName' => 'Sample_ModuleTwo',
220209
'enable' => true,
221210
'requiredBy' => []
222211
]

setup/view/magento/setup/navigation/header-bar.phtml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<div class="page-header-hgroup col-l-8 col-m-6">
1414
<div class="page-title-wrapper">
1515
<h1 class="page-title">
16-
{{$state.current.noMenu ? $state.current.title : titles[$state.current.type]}}</h1>
16+
{{$state.current.noMenu ? $state.current.title : $root.titles[$state.current.type]}}</h1>
1717
</div>
1818
</div>
1919
<div class="page-header-actions col-l-4 col-m-6" style="display: none">

0 commit comments

Comments
 (0)