Browse Source

side menu; pkguid stack

tags/v0.1.0
Robin Thoni 7 years ago
parent
commit
873053369e

+ 0
- 3
.gitmodules View File

@@ -1,3 +0,0 @@
1
-[submodule "luticate"]
2
-	path = luticate
3
-	url = https://git.rthoni.com/luticate/front-backoffice

+ 80
- 9
app/app.js View File

@@ -7,21 +7,83 @@ angular.module('app', [
7 7
     'ui.router',
8 8
     'LocalStorageModule',
9 9
     'ngMaterial',
10
-    'dialogs.main',
11
-    'luticateAuth',
12
-    'luticateUtils',
10
+    'md.data.table',
11
+    'sasrio.angular-material-sidenav',
12
+    'luticate2Utils',
13
+    // 'luticateAuth',
13 14
     'appSdk'
14 15
 ])
15
-    .config(['$stateProvider', '$urlRouterProvider',
16
-        function($stateProvider, $urlRouterProvider) {
16
+    .config(['$stateProvider', '$urlRouterProvider', 'ssSideNavSectionsProvider', '$mdThemingProvider',
17
+        function($stateProvider, $urlRouterProvider, ssSideNavSectionsProvider, $mdThemingProvider) {
18
+
19
+            // $mdThemingProvider
20
+            //     .theme('default')
21
+            //     .primaryPalette('blue', {
22
+            //         'default': '700'
23
+            //     });
24
+
25
+            ssSideNavSectionsProvider.initWithTheme($mdThemingProvider);
26
+            ssSideNavSectionsProvider.initWithSections([{
27
+                id: 'toogle_1',
28
+                name: 'Home',
29
+                type: 'heading',
30
+                children: [{
31
+                    name: 'Home 1',
32
+                    type: 'toggle',
33
+                    pages: [{
34
+                        id: 'toogle_1_link_1',
35
+                        name: 'Home 1 1',
36
+                        state: 'home'
37
+                    }, {
38
+                        id: 'toogle_1_link_2',
39
+                        name: 'Home 1 2',
40
+                        state: 'home.1.2',
41
+                        hidden: true
42
+                    }, {
43
+                        id: 'toogle_1_link_3',
44
+                        name: 'Home 1 3',
45
+                        state: 'home.1.3'
46
+                    }]
47
+                }]
48
+            }, {
49
+                id: 'link_1',
50
+                name: 'Home 2 ',
51
+                state: 'home.2',
52
+                type: 'link',
53
+                icon: 'fa fa-check'
54
+            }, {
55
+                id: 'link_2',
56
+                name: 'Home 3',
57
+                state: 'home.3',
58
+                type: 'link'
59
+            }, {
60
+                id: 'link_3',
61
+                name: 'Link 3',
62
+                state: 'common.link3',
63
+                type: 'link',
64
+                hidden: true
65
+            },  {
66
+                id: 'toogle_2',
67
+                name: 'PkGuid',
68
+                type: 'heading',
69
+                children: [{
70
+                    name: 'PkGuid 1',
71
+                    type: 'toggle',
72
+                    pages: [{
73
+                        id: 'toogle_2_link_1',
74
+                        name: 'PkGuid 1 1',
75
+                        state: 'pkguid'
76
+                    }]
77
+                }]
78
+            }]);
17 79
 
18 80
             $stateProvider.state('root', {
19 81
                 abstract: true,
20 82
                 template: '<div ui-view=""></div>',
21
-                resolve: ['luticateAuthUsers', function(luticateAuthUsers)
22
-                {
23
-                    return luticateAuthUsers.loadUserData(null);
24
-                }]
83
+                // resolve: ['luticateAuthUsers', function(luticateAuthUsers)
84
+                // {
85
+                //     return luticateAuthUsers.loadUserData(null);
86
+                // }]
25 87
             });
26 88
 
27 89
             $stateProvider.state('home', {
@@ -33,6 +95,15 @@ angular.module('app', [
33 95
                 controller:'HomeController'
34 96
             });
35 97
 
98
+            $stateProvider.state('pkguid', {
99
+                url:'/pkguid',
100
+                parent: 'root',
101
+                title: "PkGuid",
102
+                reloadOnSearch: false,
103
+                templateUrl:'views/pkguid.html',
104
+                controller:'PkGuidController'
105
+            });
106
+
36 107
             $urlRouterProvider.otherwise('/');
37 108
     }])
38 109
     .directive('dateNow', ['$filter', function($filter) {

+ 46
- 0
app/controllers/pkguid.controller.js View File

@@ -0,0 +1,46 @@
1
+angular.module('app')
2
+    .controller('PkGuidController', ['$scope', '$state', '$mdDialog', 'pkGuidBusiness',
3
+        function($scope, $state, $mdDialog, pkGuidBusiness) {
4
+
5
+            $scope.selected = [];
6
+
7
+            $scope.query = {
8
+                order: 'someText',
9
+                limit: 5,
10
+                page: 1
11
+            };
12
+
13
+            $scope.pkGuids = null;
14
+            $scope.pkGuidsError = null;
15
+
16
+            $scope.getPkGuids = function()
17
+            {
18
+                $scope.pkGuidsError = null;
19
+                var orderBy = $scope.query.order;
20
+                if (orderBy[0] == '-') {
21
+                    orderBy = orderBy.substr(1) + ":DESC";
22
+                }
23
+                else {
24
+                    orderBy = orderBy + ":ASC";
25
+                }
26
+                $scope.promise = pkGuidBusiness.getMultiple(orderBy, $scope.query.page - 1, $scope.query.limit).then(function(data)
27
+                {
28
+                    $scope.pkGuids = data;
29
+                    $scope.pkGuidsError = null;
30
+                }, function(error)
31
+                {
32
+                    $scope.pkGuids = null;
33
+                    $scope.pkGuidsError = error;
34
+                });
35
+            };
36
+
37
+            $scope.getPkGuids();
38
+
39
+            // pkGuidBusiness.getSingleById('42').then(function(data)
40
+            // {
41
+            //     console.log(data);
42
+            // }, function(error)
43
+            // {
44
+            //     console.error(error);
45
+            // });
46
+    }]);

+ 4
- 2
app/controllers/sidebar.controller.js View File

@@ -3,7 +3,9 @@
3 3
  */
4 4
 
5 5
 angular.module('app')
6
-    .controller('SideBarController', ['$scope', '$state', '$mdDialog', '$mdSidenav',
7
-        function($scope, $state, $mdDialog, $mdSidenav) {
6
+    .controller('SideBarController', ['$scope', '$state', '$mdDialog', '$mdSidenav', 'ssSideNav',
7
+        function($scope, $state, $mdDialog, $mdSidenav, ssSideNav) {
8
+
9
+            $scope.menu = ssSideNav;
8 10
 
9 11
         }]);

+ 15
- 11
app/index.html View File

@@ -6,9 +6,11 @@
6 6
     <title ng-bind="title">App</title>
7 7
 
8 8
     <!-- build:css css/globals.css -->
9
-    <link rel="stylesheet" href="../bower_components/bootstrap/dist/css/bootstrap.min.css">
10
-    <link rel="stylesheet" href="../bower_components/angular-material/angular-material.min.css">
11
-    <link rel="stylesheet" href="../bower_components/luticate-utils/src/lubusy.css">
9
+    <link rel="stylesheet" href="../bower_components/components-font-awesome/css/font-awesome.min.css"/>
10
+    <link rel="stylesheet" href="../bower_components/angular-material/angular-material.min.css"/>
11
+    <link rel="stylesheet" href="../bower_components/angular-material-data-table/dist/md-data-table.min.css"/>
12
+    <link rel="stylesheet" href="../bower_components/angular-material-sidenav/angular-material-sidenav.css"/>
13
+    <!--<link rel="stylesheet" href="../bower_components/luticate-utils/src/lubusy.css">-->
12 14
     <!-- endbuild -->
13 15
 
14 16
     <!-- build:less css/styles.css -->
@@ -31,17 +33,16 @@
31 33
     <script src="../bower_components/angular-bootstrap/ui-bootstrap.js"></script>
32 34
     <script src="../bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js"></script>
33 35
     <script src="../bower_components/angular-local-storage/dist/angular-local-storage.min.js"></script>
34
-    <script src="../bower_components/bootstrap/js/collapse.js"></script>
35
-    <script src="../bower_components/bootstrap/js/transition.js"></script>
36
-    <script src="../bower_components/bootstrap/js/dropdown.js"></script>
37 36
     <script src="../bower_components/less/dist/less-1.7.4.js"></script>
38 37
     <script src="../bower_components/angular-aria/angular-aria.min.js"></script>
39 38
     <script src="../bower_components/angular-animate/angular-animate.min.js"></script>
40 39
     <script src="../bower_components/angular-material/angular-material.min.js"></script>
41
-    <script src="../bower_components/luticate-utils/dist/luticate-utils.min.js"></script>
42
-    <script src="../bower_components/luticate-auth/dist/luticate-auth.min.js"></script>
43
-    <script src="../bower_components/angular-dialog-service/dist/dialogs.js"></script>
44
-    <script src="../bower_components/angular-sanitize/angular-sanitize.js"></script>
40
+    <script src="../bower_components/luticate2-utils/dist/luticate-utils.min.js"></script>
41
+    <script src="../bower_components/angular-material-data-table/dist/md-data-table.min.js"></script>
42
+    <script src="../bower_components/angular-material-sidenav/angular-material-sidenav.js"></script>
43
+    <!--<script src="../bower_components/luticate-auth/dist/luticate-auth.min.js"></script>-->
44
+    <!--<script src="../bower_components/angular-dialog-service/dist/dialogs.js"></script>-->
45
+    <!--<script src="../bower_components/angular-sanitize/angular-sanitize.js"></script>-->
45 46
 
46 47
     <!-- scripts -->
47 48
     <script src="app.js"></script>
@@ -50,11 +51,14 @@
50 51
     <script src="controllers/sidebar.controller.js"></script>
51 52
     <script src="controllers/toolbar.controller.js"></script>
52 53
     <script src="controllers/home.controller.js"></script>
54
+    <script src="controllers/pkguid.controller.js"></script>
53 55
 
54 56
     <!-- Modal Controller -->
55 57
 
56 58
     <!-- SDK -->
57 59
     <script src="../sdk/sdk.js"></script>
60
+    <script src="../sdk/DataAccess/pkguid.dataaccess.js"></script>
61
+    <script src="../sdk/Business/pkguid.business.js"></script>
58 62
 
59 63
     <!-- Directives -->
60 64
 
@@ -62,7 +66,7 @@
62 66
 
63 67
 </head>
64 68
 <body layout="column">
65
-    <div layout="row"  flex>
69
+    <div layout="row" flex>
66 70
         <ng-include src="'views/sidebar.html'"></ng-include>
67 71
         <div layout="column" flex id="content">
68 72
             <md-content class="md-main-content">

+ 36
- 0
app/less/app.less View File

@@ -28,6 +28,42 @@
28 28
    user-select: none;
29 29
 }
30 30
 
31
+
32
+.isa_info, .isa_success, .isa_warning, .isa_error {
33
+  margin: 10px 0px;
34
+  padding:12px;
35
+}
36
+.isa_info {
37
+  color: #00529B;
38
+  background-color: #BDE5F8;
39
+}
40
+.isa_success {
41
+  color: #4F8A10;
42
+  background-color: #DFF2BF;
43
+}
44
+.isa_warning {
45
+  color: #9F6000;
46
+  background-color: #FEEFB3;
47
+}
48
+.isa_error {
49
+  color: #D8000C;
50
+  background-color: #FFBABA;
51
+}
52
+.isa_info i, .isa_success i, .isa_warning i, .isa_error i {
53
+  margin:10px 22px;
54
+  font-size:2em;
55
+  vertical-align:middle;
56
+}
57
+
58
+md-sidenav {
59
+  height: 100%;
60
+}
61
+
62
+.md-content-nav {
63
+  overflow-x: hidden;
64
+  height: 100%;
65
+}
66
+
31 67
 /**
32 68
 ========================================================
33 69
 **/

+ 7
- 8
app/views/footer.html View File

@@ -1,12 +1,11 @@
1
-<!-- /.container -->
2
-<div class="container">
1
+<!-- Footer -->
2
+<footer>
3 3
     <hr>
4
-    <!-- Footer -->
5
-    <footer>
6
-        <div class="row">
7
-            <div class="col-lg-12 text-center">
4
+    <div layout="column" layout-fill layout-align="top center">
5
+        <div flex>
6
+            <div class="col-lg-12">
8 7
                 <p>Copyright &copy; <a href="https://www.rthoni.com/">Robin Thoni</a> <span date-now="yyyy"></span></p>
9 8
             </div>
10 9
         </div>
11
-    </footer>
12
-</div>
10
+    </div>
11
+</footer>

+ 2
- 4
app/views/home.html View File

@@ -1,5 +1,3 @@
1
-<div layout="column" layout-fill layout-align="top center">
2
-    <p>
3
-        Welcome home
4
-    </p>
1
+<div layout="column" layout-fill layout-align="top">
2
+    <p>Welcome Home</p>
5 3
 </div>

+ 39
- 0
app/views/pkguid.html View File

@@ -0,0 +1,39 @@
1
+<div layout="column" layout-fill layout-align="top">
2
+
3
+    <div flex>
4
+        <md-toolbar class="md-table-toolbar md-default">
5
+            <div class="md-toolbar-tools">
6
+                <span>PkGuids</span>
7
+            </div>
8
+        </md-toolbar>
9
+    </div>
10
+
11
+    <div flex>
12
+        <div class="isa_error" ng-show="pkGuidsError != null">
13
+            <i class="fa fa-times-circle"></i>
14
+            {{ pkGuidsError.data.message }}
15
+        </div>
16
+        <md-table-container>
17
+            <table md-table md-row-select multiple ng-model="selected" md-progress="promise">
18
+                <thead md-head md-order="query.order" md-on-reorder="getPkGuids">
19
+                <tr md-row>
20
+                    <th md-column md-order-by="id"><span>Id</span></th>
21
+                    <th md-column md-order-by="someText"><span>Some Text</span></th>
22
+                    <th md-column md-order-by="someInt" md-numeric>Some Int</th>
23
+                    <th md-column md-order-by="createdAt">Created At</th>
24
+                </tr>
25
+                </thead>
26
+                <tbody md-body>
27
+                <tr md-row md-select="item" md-select-id="id" md-auto-select ng-repeat="item in pkGuids.data">
28
+                    <td md-cell>{{item.id}}</td>
29
+                    <td md-cell>{{item.someText}}</td>
30
+                    <td md-cell>{{item.someInt}}</td>
31
+                    <td md-cell>{{item.createdAt}}</td>
32
+                </tr>
33
+                </tbody>
34
+            </table>
35
+        </md-table-container>
36
+    </div>
37
+
38
+    <md-table-pagination class="col-xs-11" md-limit="query.limit" md-limit-options="[1, 5, 10, 15]" md-page="query.page" md-total="{{pkGuids.count}}" md-on-paginate="getPkGuids" md-page-select></md-table-pagination>
39
+</div>

+ 11
- 9
app/views/sidebar.html View File

@@ -1,10 +1,12 @@
1
-<md-sidenav layout="column" class="md-sidenav-left md-whiteframe-z2" md-component-id="left" md-is-locked-open="$mdMedia('gt-md')">
2
-    <md-toolbar class="md-theme-indigo">
3
-        <h1 class="md-toolbar-tools"><a ui-sref="home">App</a></h1>
4
-    </md-toolbar>
5
-    <md-content layout-padding ng-controller="SideBarController">
6
-        <div lu-busy="sidebar">
7
-            <p>Sidebar</p>
8
-        </div>
9
-    </md-content>
1
+<md-sidenav class="md-sidenav-left md-whiteframe-z2" md-component-id="left" md-is-locked-open="$mdMedia('gt-md')">
2
+    <header class="nav-header" ss-style-color="{'background-color': 'primary.default'}">
3
+        <md-toolbar class="md-theme-indigo">
4
+            <h1 class="md-toolbar-tools"><a ui-sref="home">App</a></h1>
5
+        </md-toolbar>
6
+    </header>
7
+    <div flex ng-controller="SideBarController">
8
+        <md-content flex role="navigation" ss-style-color="{'background-color': 'primary.default'}" class="md-content-nav">
9
+            <ss-sidenav flex menu="menu"></ss-sidenav>
10
+        </md-content>
11
+    </div>
10 12
 </md-sidenav>

+ 7
- 11
bower.json View File

@@ -6,19 +6,15 @@
6 6
   "license": "",
7 7
   "private": true,
8 8
   "dependencies": {
9
-    "angular": "1.5.x",
9
+    "angular": "1.6.x",
10 10
     "jquery": "2.1.x",
11 11
     "angular-bootstrap": "1.1.x",
12
-    "angular-ui-router": "0.2.x",
13
-    "bootstrap": "3.3.x",
12
+    "angular-ui-router": "1.0.x",
14 13
     "less": "1.7.x",
15
-    "angular-local-storage": "0.2.3",
16
-    "angular-material": "^1.0.6",
17
-    "luticate-utils": "https://git.rthoni.com/luticate/front-utils.git#0.1.x",
18
-    "luticate-auth": "https://git.rthoni.com/luticate/front-auth.git#0.1.x"
19
-  },
20
-  "resolutions": {
21
-    "angular-material": "^1.0.6",
22
-    "angular-bootstrap": "1.1.x"
14
+    "angular-local-storage": "0.5.x",
15
+    "angular-material": "1.1.x",
16
+    "angular-material-data-table": "^0.10.9",
17
+    "components-font-awesome": "^4.7.0",
18
+    "angular-material-sidenav": "^0.0.14"
23 19
   }
24 20
 }

+ 0
- 1
luticate

@@ -1 +0,0 @@
1
-Subproject commit 1566235d9b9fa3bde7784ff3878f9c862642ab23

+ 15
- 0
sdk/Business/pkguid.business.js View File

@@ -0,0 +1,15 @@
1
+/**
2
+ * Created by robin on 12/12/16.
3
+ */
4
+
5
+(function () {
6
+    'use strict';
7
+
8
+    angular.module('appSdk')
9
+        .factory('pkGuidBusiness', ['luWebApiCrudBusiness', 'pkGuidDataAccess', function (luWebApiCrudBusiness, pkGuidDataAccess) {
10
+
11
+            var Business = luWebApiCrudBusiness.create(pkGuidDataAccess);
12
+
13
+            return Business;
14
+        }]);
15
+})();

+ 15
- 0
sdk/DataAccess/pkguid.dataaccess.js View File

@@ -0,0 +1,15 @@
1
+/**
2
+ * Created by robin on 12/12/16.
3
+ */
4
+
5
+(function () {
6
+    'use strict';
7
+
8
+    angular.module('appSdk')
9
+        .factory('pkGuidDataAccess', ['luWebApiCrudDataAccess', function (luWebApiCrudDataAccess) {
10
+
11
+            var DataAccess = luWebApiCrudDataAccess.create('/api/pkguid');
12
+
13
+            return DataAccess;
14
+        }]);
15
+})();

Loading…
Cancel
Save