1
-
2
1
angular . module ( 'bootstrapDemoApp' , [ 'ui.bootstrap' , 'plunker' ] ) ;
3
2
4
- function MainCtrl ( $scope , $http , $document , orderByFilter ) {
3
+ function MainCtrl ( $scope , $http , $document , $modal , orderByFilter ) {
5
4
var url = "http://50.116.42.77:3001" ;
6
- $scope . selectedModules = [ ] ;
7
5
//iFrame for downloading
8
6
var $iframe = angular . element ( '<iframe>' ) . css ( 'display' , 'none' ) ;
9
7
$document . find ( 'body' ) . append ( $iframe ) ;
10
8
11
9
$scope . showBuildModal = function ( ) {
12
- $scope . buildModalShown = true ;
13
- //Load modules if they aren't loaded yet
14
- if ( ! $scope . modules ) {
15
- $http . get ( url + "/api/bootstrap" ) . then ( function ( response ) {
16
- $scope . modules = response . data . modules ;
17
- } , function ( ) {
18
- $scope . buildGetErrorText = "Error retrieving build files from server." ;
19
- } ) ;
20
- }
21
- } ;
10
+ var modalInstance = $modal . open ( {
11
+ templateUrl : 'buildModal.html' ,
12
+ controller : 'SelectModulesCtrl' ,
13
+ resolve : {
14
+ modules : function ( ) {
15
+ return $http . get ( url + "/api/bootstrap" ) . then ( function ( response ) {
16
+ return response . data . modules ;
17
+ } ) ;
18
+ }
19
+ }
20
+ } ) ;
22
21
23
- $scope . downloadBuild = function ( ) {
24
- var downloadUrl = url + "/api/bootstrap/download?" ;
25
- angular . forEach ( $scope . selectedModules , function ( module ) {
26
- downloadUrl += "modules=" + module + "&" ;
22
+ modalInstance . result . then ( function ( selectedModules ) {
23
+ var downloadUrl = url + "/api/bootstrap/download?" ;
24
+ angular . forEach ( selectedModules , function ( module ) {
25
+ downloadUrl += "modules=" + module + "&" ;
26
+ } ) ;
27
+ $iframe . attr ( 'src' , '' ) ;
28
+ $iframe . attr ( 'src' , downloadUrl ) ;
27
29
} ) ;
28
- $iframe . attr ( 'src' , '' ) ;
29
- $iframe . attr ( 'src' , downloadUrl ) ;
30
- $scope . buildModalShown = false ;
31
30
} ;
31
+ }
32
+
33
+ var SelectModulesCtrl = function ( $scope , $modalInstance , modules ) {
34
+
35
+ $scope . selectedModules = [ ] ;
36
+ $scope . modules = modules ;
32
37
33
38
$scope . selectedChanged = function ( module , selected ) {
34
39
if ( selected ) {
@@ -37,4 +42,12 @@ function MainCtrl($scope, $http, $document, orderByFilter) {
37
42
$scope . selectedModules . splice ( $scope . selectedModules . indexOf ( module ) , 1 ) ;
38
43
}
39
44
} ;
40
- }
45
+
46
+ $scope . downloadBuild = function ( ) {
47
+ $modalInstance . close ( $scope . selectedModules ) ;
48
+ } ;
49
+
50
+ $scope . cancel = function ( ) {
51
+ $modalInstance . dismiss ( ) ;
52
+ } ;
53
+ } ;
0 commit comments