kms 0.8.0 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/kms/application/controllers/pages_controller.coffee.erb +1 -2
- data/app/assets/javascripts/templates/assets/index.html.slim +4 -12
- data/app/assets/javascripts/templates/help/scopes.html.slim +74 -0
- data/app/assets/javascripts/templates/pages/index.html.slim +4 -3
- data/app/assets/javascripts/templates/snippets/index.html.slim +4 -3
- data/app/assets/javascripts/templates/templates/index.html.slim +4 -3
- data/app/assets/javascripts/templates/users/index.html.slim +3 -2
- data/app/assets/stylesheets/kms/custom.css.scss +3 -0
- data/app/controllers/kms/pages_controller.rb +2 -2
- data/app/models/ability.rb +0 -1
- data/app/models/concerns/kms/positioned.rb +18 -0
- data/app/models/kms/page.rb +2 -12
- data/app/services/kms/functions_registry.rb +11 -0
- data/app/uploaders/kms/asset_uploader.rb +1 -1
- data/config/initializers/help.rb +1 -1
- data/config/initializers/liquor.rb +0 -47
- data/config/locales/en.yml +22 -0
- data/config/locales/ru.yml +22 -0
- data/lib/generators/kms/install/install_generator.rb +2 -0
- data/lib/generators/kms/install/templates/carrierwave.rb +14 -0
- data/lib/kms/dependencies.rb +2 -0
- data/lib/kms/engine.rb +1 -1
- data/lib/kms/version.rb +1 -1
- data/spec/controllers/kms/snippets_controller_spec.rb +6 -6
- data/spec/internal/log/test.log +2439 -0
- data/spec/services/kms/functions_registry_spec.rb +14 -0
- data/spec/spec_helper.rb +1 -1
- data/vendor/assets/bower.json +1 -1
- data/vendor/assets/bower_components/angular-ui-tree/CHANGELOG.md +164 -0
- data/vendor/assets/bower_components/angular-ui-tree/CONTRIBUTING.md +39 -0
- data/vendor/assets/bower_components/angular-ui-tree/README.md +145 -37
- data/vendor/assets/bower_components/angular-ui-tree/bower.json +28 -18
- data/vendor/assets/bower_components/angular-ui-tree/{source → dist}/angular-ui-tree.css +18 -16
- data/vendor/assets/bower_components/angular-ui-tree/dist/angular-ui-tree.js +1408 -822
- data/vendor/assets/bower_components/angular-ui-tree/dist/angular-ui-tree.min.css +1 -2
- data/vendor/assets/bower_components/angular-ui-tree/dist/angular-ui-tree.min.js +3 -3
- data/vendor/assets/bower_components/angular-ui-tree/e2e/basic-example/basic-example.js +81 -0
- data/vendor/assets/bower_components/angular-ui-tree/e2e/basic-example/page.js +42 -0
- data/vendor/assets/bower_components/angular-ui-tree/e2e/table-example/page.js +31 -0
- data/vendor/assets/bower_components/angular-ui-tree/e2e/table-example/table-example.js +34 -0
- data/vendor/assets/bower_components/angular-ui-tree/index.js +2 -0
- data/vendor/assets/bower_components/angular-ui-tree/protractor.conf.js +19 -0
- data/vendor/assets/bower_components/angular/angular.js +4880 -2111
- data/vendor/assets/bower_components/angular/angular.min.js +320 -297
- data/vendor/assets/bower_components/angular/angular.min.js.gzip +0 -0
- data/vendor/assets/bower_components/angular/angular.min.js.map +3 -3
- data/vendor/assets/bower_components/angular/bower.json +1 -1
- data/vendor/assets/bower_components/angular/package.json +1 -1
- metadata +32 -40
- data/vendor/assets/bower_components/angular-ui-tree/Gruntfile.js +0 -229
- data/vendor/assets/bower_components/angular-ui-tree/build/compiler.jar +0 -0
- data/vendor/assets/bower_components/angular-ui-tree/demo/css/demo-horizontal.css +0 -47
- data/vendor/assets/bower_components/angular-ui-tree/demo/css/demo.css +0 -31
- data/vendor/assets/bower_components/angular-ui-tree/demo/css/tree.css +0 -25
- data/vendor/assets/bower_components/angular-ui-tree/demo/dist/angular-ui-tree.js +0 -1243
- data/vendor/assets/bower_components/angular-ui-tree/demo/dist/angular-ui-tree.min.css +0 -2
- data/vendor/assets/bower_components/angular-ui-tree/demo/dist/angular-ui-tree.min.js +0 -6
- data/vendor/assets/bower_components/angular-ui-tree/demo/filter.html +0 -64
- data/vendor/assets/bower_components/angular-ui-tree/demo/groups.html +0 -100
- data/vendor/assets/bower_components/angular-ui-tree/demo/index.html +0 -101
- data/vendor/assets/bower_components/angular-ui-tree/demo/js/demo.js +0 -63
- data/vendor/assets/bower_components/angular-ui-tree/demo/js/filter.js +0 -91
- data/vendor/assets/bower_components/angular-ui-tree/demo/js/groups.js +0 -143
- data/vendor/assets/bower_components/angular-ui-tree/demo/js/tree.js +0 -102
- data/vendor/assets/bower_components/angular-ui-tree/demo/js/trees.js +0 -60
- data/vendor/assets/bower_components/angular-ui-tree/demo/test.html +0 -60
- data/vendor/assets/bower_components/angular-ui-tree/demo/tree-horizontal.html +0 -66
- data/vendor/assets/bower_components/angular-ui-tree/demo/tree.html +0 -66
- data/vendor/assets/bower_components/angular-ui-tree/demo/trees.html +0 -92
- data/vendor/assets/bower_components/angular-ui-tree/guide/00_usage.ngdoc +0 -78
- data/vendor/assets/bower_components/angular-ui-tree/guide/01_development_setup.ngdoc +0 -58
- data/vendor/assets/bower_components/angular-ui-tree/guide/index.ngdoc +0 -33
- data/vendor/assets/bower_components/angular-ui-tree/karma.conf.js +0 -49
- data/vendor/assets/bower_components/angular-ui-tree/package.json +0 -40
- data/vendor/assets/bower_components/angular-ui-tree/source/angular-ui-tree.scss +0 -63
- data/vendor/assets/bower_components/angular-ui-tree/source/controllers/handleCtrl.js +0 -16
- data/vendor/assets/bower_components/angular-ui-tree/source/controllers/nodeCtrl.js +0 -141
- data/vendor/assets/bower_components/angular-ui-tree/source/controllers/nodesCtrl.js +0 -100
- data/vendor/assets/bower_components/angular-ui-tree/source/controllers/treeCtrl.js +0 -63
- data/vendor/assets/bower_components/angular-ui-tree/source/directives/uiTree.js +0 -115
- data/vendor/assets/bower_components/angular-ui-tree/source/directives/uiTreeHandle.js +0 -27
- data/vendor/assets/bower_components/angular-ui-tree/source/directives/uiTreeNode.js +0 -427
- data/vendor/assets/bower_components/angular-ui-tree/source/directives/uiTreeNodes.js +0 -59
- data/vendor/assets/bower_components/angular-ui-tree/source/main.js +0 -23
- data/vendor/assets/bower_components/angular-ui-tree/source/services/helper.js +0 -265
@@ -1,102 +0,0 @@
|
|
1
|
-
(function() {
|
2
|
-
'use strict';
|
3
|
-
|
4
|
-
angular.module('treeApp', ['ui.tree'])
|
5
|
-
.controller('treeCtrl', function($scope) {
|
6
|
-
|
7
|
-
$scope.remove = function(scope) {
|
8
|
-
scope.remove();
|
9
|
-
};
|
10
|
-
|
11
|
-
$scope.toggle = function(scope) {
|
12
|
-
scope.toggle();
|
13
|
-
};
|
14
|
-
|
15
|
-
$scope.moveLastToTheBegginig = function () {
|
16
|
-
var a = $scope.data.pop();
|
17
|
-
$scope.data.splice(0,0, a);
|
18
|
-
};
|
19
|
-
|
20
|
-
$scope.newSubItem = function(scope) {
|
21
|
-
var nodeData = scope.$modelValue;
|
22
|
-
nodeData.nodes.push({
|
23
|
-
id: nodeData.id * 10 + nodeData.nodes.length,
|
24
|
-
title: nodeData.title + '.' + (nodeData.nodes.length + 1),
|
25
|
-
nodes: []
|
26
|
-
});
|
27
|
-
};
|
28
|
-
|
29
|
-
var getRootNodesScope = function() {
|
30
|
-
return angular.element(document.getElementById("tree-root")).scope();
|
31
|
-
};
|
32
|
-
|
33
|
-
$scope.collapseAll = function() {
|
34
|
-
var scope = getRootNodesScope();
|
35
|
-
scope.collapseAll();
|
36
|
-
};
|
37
|
-
|
38
|
-
$scope.expandAll = function() {
|
39
|
-
var scope = getRootNodesScope();
|
40
|
-
scope.expandAll();
|
41
|
-
};
|
42
|
-
|
43
|
-
$scope.data = [{
|
44
|
-
"id": 1,
|
45
|
-
"title": "node1",
|
46
|
-
"nodes": [
|
47
|
-
{
|
48
|
-
"id": 11,
|
49
|
-
"title": "node1.1",
|
50
|
-
"nodes": [
|
51
|
-
{
|
52
|
-
"id": 111,
|
53
|
-
"title": "node1.1.1",
|
54
|
-
"nodes": []
|
55
|
-
}
|
56
|
-
]
|
57
|
-
},
|
58
|
-
{
|
59
|
-
"id": 12,
|
60
|
-
"title": "node1.2",
|
61
|
-
"nodes": []
|
62
|
-
}
|
63
|
-
],
|
64
|
-
}, {
|
65
|
-
"id": 2,
|
66
|
-
"title": "node2",
|
67
|
-
"nodes": [
|
68
|
-
{
|
69
|
-
"id": 21,
|
70
|
-
"title": "node2.1",
|
71
|
-
"nodes": []
|
72
|
-
},
|
73
|
-
{
|
74
|
-
"id": 22,
|
75
|
-
"title": "node2.2",
|
76
|
-
"nodes": []
|
77
|
-
}
|
78
|
-
],
|
79
|
-
}, {
|
80
|
-
"id": 3,
|
81
|
-
"title": "node3",
|
82
|
-
"nodes": [
|
83
|
-
{
|
84
|
-
"id": 31,
|
85
|
-
"title": "node3.1",
|
86
|
-
"nodes": []
|
87
|
-
}
|
88
|
-
],
|
89
|
-
}, {
|
90
|
-
"id": 4,
|
91
|
-
"title": "node4",
|
92
|
-
"nodes": [
|
93
|
-
{
|
94
|
-
"id": 41,
|
95
|
-
"title": "node4.1",
|
96
|
-
"nodes": []
|
97
|
-
}
|
98
|
-
],
|
99
|
-
}];
|
100
|
-
});
|
101
|
-
|
102
|
-
})();
|
@@ -1,60 +0,0 @@
|
|
1
|
-
(function() {
|
2
|
-
'use strict';
|
3
|
-
|
4
|
-
angular.module('treesApp', ['ui.tree'])
|
5
|
-
.controller('treesCtrl', function($scope) {
|
6
|
-
|
7
|
-
$scope.remove = function(scope) {
|
8
|
-
scope.remove();
|
9
|
-
};
|
10
|
-
|
11
|
-
$scope.toggle = function(scope) {
|
12
|
-
scope.toggle();
|
13
|
-
};
|
14
|
-
|
15
|
-
$scope.newSubItem = function(scope) {
|
16
|
-
var nodeData = scope.$modelValue;
|
17
|
-
nodeData.nodes.push({
|
18
|
-
id: nodeData.id * 10 + nodeData.nodes.length,
|
19
|
-
title: nodeData.title + '.' + (nodeData.nodes.length + 1),
|
20
|
-
nodes: []
|
21
|
-
});
|
22
|
-
};
|
23
|
-
|
24
|
-
$scope.tree1 = [{
|
25
|
-
"id": 1,
|
26
|
-
"title": "tree1 - item1",
|
27
|
-
"nodes": [],
|
28
|
-
}, {
|
29
|
-
"id": 2,
|
30
|
-
"title": "tree1 - item2",
|
31
|
-
"nodes": [],
|
32
|
-
}, {
|
33
|
-
"id": 3,
|
34
|
-
"title": "tree1 - item3",
|
35
|
-
"nodes": [],
|
36
|
-
}, {
|
37
|
-
"id": 4,
|
38
|
-
"title": "tree1 - item4",
|
39
|
-
"nodes": [],
|
40
|
-
}];
|
41
|
-
$scope.tree2 = [{
|
42
|
-
"id": 1,
|
43
|
-
"title": "tree2 - item1",
|
44
|
-
"nodes": [],
|
45
|
-
}, {
|
46
|
-
"id": 2,
|
47
|
-
"title": "tree2 - item2",
|
48
|
-
"nodes": [],
|
49
|
-
}, {
|
50
|
-
"id": 3,
|
51
|
-
"title": "tree2 - item3",
|
52
|
-
"nodes": [],
|
53
|
-
}, {
|
54
|
-
"id": 4,
|
55
|
-
"title": "tree2 - item4",
|
56
|
-
"nodes": [],
|
57
|
-
}];
|
58
|
-
});
|
59
|
-
|
60
|
-
})();
|
@@ -1,60 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html><head>
|
3
|
-
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
4
|
-
<title>Demo</title>
|
5
|
-
<link rel="stylesheet" type="text/css" href="http://jimliu.github.io/angular-ui-tree/dist/angular-ui-tree.min.css">
|
6
|
-
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
|
7
|
-
<script type="text/javascript" src="http://code.angularjs.org/1.2.16/angular.min.js"></script>
|
8
|
-
<script type="text/javascript" src="dist/angular-ui-tree.js"></script>
|
9
|
-
<script type="text/javascript">
|
10
|
-
//<![CDATA[
|
11
|
-
|
12
|
-
angular.module('treeApp', ['ui.tree'])
|
13
|
-
.controller('treeCtrl', function($scope, $timeout) {
|
14
|
-
$timeout(function(){
|
15
|
-
$scope.data = [
|
16
|
-
{title: 'A'},
|
17
|
-
{title: 'Abc'},
|
18
|
-
{title: 'Ab'},
|
19
|
-
{title: 'Ac'},
|
20
|
-
{title: 'bc'},
|
21
|
-
{title: 'B'},
|
22
|
-
{title: 'C'}
|
23
|
-
];
|
24
|
-
},100);
|
25
|
-
|
26
|
-
$scope.treeOptions = {
|
27
|
-
dragStart: function(event) {
|
28
|
-
console.log('Start dragging', event);
|
29
|
-
},
|
30
|
-
dragStop: function(event) {
|
31
|
-
// This will be never called :(
|
32
|
-
console.log('Stop dragging', event);
|
33
|
-
},
|
34
|
-
dropped: function(event) {
|
35
|
-
console.log('dropped', event);
|
36
|
-
},
|
37
|
-
};
|
38
|
-
});
|
39
|
-
|
40
|
-
//]]>
|
41
|
-
|
42
|
-
</script>
|
43
|
-
|
44
|
-
|
45
|
-
<style type="text/css"></style></head>
|
46
|
-
<body ng-app="treeApp">
|
47
|
-
<div ng-controller="treeCtrl">
|
48
|
-
<input type="text" ng-model="search" placeholder="Search">
|
49
|
-
<ol ui-tree="treeOptions" ui-tree-nodes ng-model="data">
|
50
|
-
<li ng-repeat="item in data | filter:search" ui-tree-node>
|
51
|
-
{{item.title}}
|
52
|
-
</li>
|
53
|
-
</ol>
|
54
|
-
<pre>
|
55
|
-
{{ data | json }}
|
56
|
-
</pre>
|
57
|
-
</div>
|
58
|
-
|
59
|
-
</body>
|
60
|
-
</html>
|
@@ -1,66 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<meta charset="utf-8">
|
5
|
-
<title>AngularJS UI Tree demo</title>
|
6
|
-
|
7
|
-
<!-- Stylesheets -->
|
8
|
-
<link rel="stylesheet" type="text/css" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
|
9
|
-
<link rel="stylesheet" href="dist/angular-ui-tree.min.css">
|
10
|
-
<link rel="stylesheet" href="css/demo-horizontal.css">
|
11
|
-
</head>
|
12
|
-
<body ng-app="treeApp">
|
13
|
-
|
14
|
-
<div class="container" ng-controller="treeCtrl">
|
15
|
-
<h1 class="page-header">Horizontal tree - demo</h1>
|
16
|
-
<a href="index.html"><i class="glyphicon glyphicon-chevron-left"></i> Back to overview page</a>
|
17
|
-
|
18
|
-
<div class="row">
|
19
|
-
<div class="col-lg-6">
|
20
|
-
<h3>Tree view
|
21
|
-
<a href="" class="btn btn-default pull-right" ng-click="collapseAll()">Collapse all</a>
|
22
|
-
<a href="" class="btn btn-default pull-right" ng-click="expandAll()">Expand all</a>
|
23
|
-
<a href="" class="btn btn-default btn-warning pull-right" ng-click="moveLastToTheBegginig()">Move Last To The Beginning</a>
|
24
|
-
|
25
|
-
</h3>
|
26
|
-
|
27
|
-
<!-- Nested node template -->
|
28
|
-
<script type="text/ng-template" id="nodes_renderer.html">
|
29
|
-
<div ui-tree-handle class="tree-node tree-node-content">
|
30
|
-
<a class="btn btn-success btn-xs" data-nodrag ng-click="toggle(this)"><span class="glyphicon" ng-class="{'glyphicon-chevron-right': collapsed, 'glyphicon-chevron-down': !collapsed}"></span></a>
|
31
|
-
{{node.title}}
|
32
|
-
<a class="pull-right btn btn-danger btn-xs" data-nodrag ng-click="remove(this)"><span class="glyphicon glyphicon-remove"></span></a>
|
33
|
-
<a class="pull-right btn btn-primary btn-xs" data-nodrag ng-click="newSubItem(this)" style="margin-right: 0px;"><span class="glyphicon glyphicon-plus"></span></a>
|
34
|
-
</div>
|
35
|
-
<ol ui-tree-nodes="" ng-model="node.nodes" ng-class="{hidden: collapsed}" data-horizontal="">
|
36
|
-
<li ng-repeat="node in node.nodes" ui-tree-node ng-include="'nodes_renderer.html'">
|
37
|
-
</li>
|
38
|
-
</ol>
|
39
|
-
</script>
|
40
|
-
<div ui-tree id="tree-root">
|
41
|
-
<ol ui-tree-nodes="" ng-model="data" data-horizontal="">
|
42
|
-
<li ng-repeat="node in data" ui-tree-node ng-include="'nodes_renderer.html'"></li>
|
43
|
-
</ol>
|
44
|
-
</div>
|
45
|
-
</div>
|
46
|
-
|
47
|
-
<div class="col-lg-6">
|
48
|
-
<h3>Data binding</h3>
|
49
|
-
<div class="info">
|
50
|
-
{{info}}
|
51
|
-
</div>
|
52
|
-
<pre class="code">{{ data | json }}</pre>
|
53
|
-
</div>
|
54
|
-
</div>
|
55
|
-
|
56
|
-
</div>
|
57
|
-
|
58
|
-
<!--[if IE 8]>
|
59
|
-
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
|
60
|
-
<script src="http://cdnjs.cloudflare.com/ajax/libs/es5-shim/3.4.0/es5-shim.min.js"></script>
|
61
|
-
<![endif]-->
|
62
|
-
<script src="bower_components/angular/angular.min.js"></script>
|
63
|
-
<script type="text/javascript" src="dist/angular-ui-tree.js"></script>
|
64
|
-
<script type="text/javascript" src="js/tree.js"></script>
|
65
|
-
</body>
|
66
|
-
</html>
|
@@ -1,66 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<meta charset="utf-8">
|
5
|
-
<title>AngularJS UI Tree demo</title>
|
6
|
-
|
7
|
-
<!-- Stylesheets -->
|
8
|
-
<link rel="stylesheet" type="text/css" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
|
9
|
-
<link rel="stylesheet" href="dist/angular-ui-tree.min.css">
|
10
|
-
<link rel="stylesheet" href="css/demo.css">
|
11
|
-
</head>
|
12
|
-
<body ng-app="treeApp">
|
13
|
-
|
14
|
-
<div class="container" ng-controller="treeCtrl">
|
15
|
-
<h1 class="page-header">Tree - demo</h1>
|
16
|
-
<a href="index.html"><i class="glyphicon glyphicon-chevron-left"></i> Back to overview page</a>
|
17
|
-
|
18
|
-
<div class="row">
|
19
|
-
<div class="col-lg-6">
|
20
|
-
<h3>Tree view
|
21
|
-
<a href="" class="btn btn-default pull-right" ng-click="collapseAll()">Collapse all</a>
|
22
|
-
<a href="" class="btn btn-default pull-right" ng-click="expandAll()">Expand all</a>
|
23
|
-
<a href="" class="btn btn-default btn-warning pull-right" ng-click="moveLastToTheBegginig()">Move Last To The Begginig</a>
|
24
|
-
|
25
|
-
</h3>
|
26
|
-
|
27
|
-
<!-- Nested node template -->
|
28
|
-
<script type="text/ng-template" id="nodes_renderer.html">
|
29
|
-
<div ui-tree-handle class="tree-node tree-node-content">
|
30
|
-
<a class="btn btn-success btn-xs" ng-if="node.nodes && node.nodes.length > 0" data-nodrag ng-click="toggle(this)"><span class="glyphicon" ng-class="{'glyphicon-chevron-right': collapsed, 'glyphicon-chevron-down': !collapsed}"></span></a>
|
31
|
-
{{node.title}}
|
32
|
-
<a class="pull-right btn btn-danger btn-xs" data-nodrag ng-click="remove(this)"><span class="glyphicon glyphicon-remove"></span></a>
|
33
|
-
<a class="pull-right btn btn-primary btn-xs" data-nodrag ng-click="newSubItem(this)" style="margin-right: 8px;"><span class="glyphicon glyphicon-plus"></span></a>
|
34
|
-
</div>
|
35
|
-
<ol ui-tree-nodes="" ng-model="node.nodes" ng-class="{hidden: collapsed}">
|
36
|
-
<li ng-repeat="node in node.nodes" ui-tree-node ng-include="'nodes_renderer.html'">
|
37
|
-
</li>
|
38
|
-
</ol>
|
39
|
-
</script>
|
40
|
-
<div ui-tree id="tree-root">
|
41
|
-
<ol ui-tree-nodes="" ng-model="data">
|
42
|
-
<li ng-repeat="node in data" ui-tree-node ng-include="'nodes_renderer.html'"></li>
|
43
|
-
</ol>
|
44
|
-
</div>
|
45
|
-
</div>
|
46
|
-
|
47
|
-
<div class="col-lg-6">
|
48
|
-
<h3>Data binding</h3>
|
49
|
-
<div class="info">
|
50
|
-
{{info}}
|
51
|
-
</div>
|
52
|
-
<pre class="code">{{ data | json }}</pre>
|
53
|
-
</div>
|
54
|
-
</div>
|
55
|
-
|
56
|
-
</div>
|
57
|
-
|
58
|
-
<!--[if IE 8]>
|
59
|
-
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
|
60
|
-
<script src="http://cdnjs.cloudflare.com/ajax/libs/es5-shim/3.4.0/es5-shim.min.js"></script>
|
61
|
-
<![endif]-->
|
62
|
-
<script src="bower_components/angular/angular.min.js"></script>
|
63
|
-
<script type="text/javascript" src="dist/angular-ui-tree.js"></script>
|
64
|
-
<script type="text/javascript" src="js/tree.js"></script>
|
65
|
-
</body>
|
66
|
-
</html>
|
@@ -1,92 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html>
|
3
|
-
<head>
|
4
|
-
<meta charset="utf-8">
|
5
|
-
<title>AngularJS Tree demo</title>
|
6
|
-
|
7
|
-
<!-- Stylesheets -->
|
8
|
-
<link rel="stylesheet" type="text/css" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
|
9
|
-
<link rel="stylesheet" href="dist/angular-ui-tree.min.css">
|
10
|
-
<link rel="stylesheet" href="css/tree.css">
|
11
|
-
</head>
|
12
|
-
<body ng-app="treesApp">
|
13
|
-
|
14
|
-
<!-- Nested node template -->
|
15
|
-
<script type="text/ng-template" id="nodes_renderer1.html">
|
16
|
-
<div ui-tree-handle class="tree-node">
|
17
|
-
<div class="tree-node-content">
|
18
|
-
<a class="btn btn-success btn-xs" data-nodrag ng-click="toggle(this)"><span class="glyphicon" ng-class="{'glyphicon-chevron-right': collapsed, 'glyphicon-chevron-down': !collapsed}"></span></a>
|
19
|
-
{{node.title}}
|
20
|
-
<a class="pull-right btn btn-danger btn-xs" data-nodrag ng-click="remove(this)"><span class="glyphicon glyphicon-remove"></span></a>
|
21
|
-
<a class="pull-right btn btn-primary btn-xs" data-nodrag ng-click="newSubItem(this)" style="margin-right: 8px;"><span class="glyphicon glyphicon-plus"></span></a>
|
22
|
-
</div>
|
23
|
-
</div>
|
24
|
-
<ol ui-tree-nodes="" ng-model="node.nodes" ng-class="{hidden: collapsed}">
|
25
|
-
<li ng-repeat="node in node.nodes" ui-tree-node ng-include="'nodes_renderer1.html'">
|
26
|
-
</li>
|
27
|
-
</ol>
|
28
|
-
</script>
|
29
|
-
<script type="text/ng-template" id="nodes_renderer2.html">
|
30
|
-
<div class="tree-node">
|
31
|
-
<div class="pull-left tree-handle" ui-tree-handle>
|
32
|
-
<span class="glyphicon glyphicon-list"></span>
|
33
|
-
</div>
|
34
|
-
<div class="tree-node-content">
|
35
|
-
<a class="btn btn-success btn-xs" data-nodrag ng-click="toggle(this)"><span class="glyphicon" ng-class="{'glyphicon-chevron-right': collapsed, 'glyphicon-chevron-down': !collapsed}"></span></a>
|
36
|
-
{{node.title}}
|
37
|
-
<a class="pull-right btn btn-danger btn-xs" data-nodrag ng-click="remove(this)"><span class="glyphicon glyphicon-remove"></span></a>
|
38
|
-
<a class="pull-right btn btn-primary btn-xs" data-nodrag ng-click="newSubItem(this)" style="margin-right: 8px;"><span class="glyphicon glyphicon-plus"></span></a>
|
39
|
-
</div>
|
40
|
-
</div>
|
41
|
-
<ol ui-tree-nodes="" ng-model="node.nodes" ng-class="{hidden: collapsed}">
|
42
|
-
<li ng-repeat="node in node.nodes" ui-tree-node ng-include="'nodes_renderer2.html'">
|
43
|
-
</li>
|
44
|
-
</ol>
|
45
|
-
</script>
|
46
|
-
<div class="container" ng-controller="treesCtrl">
|
47
|
-
<h1 class="page-header">NestedSortable - Connected lists</h1>
|
48
|
-
<a href="index.html"><i class="glyphicon glyphicon-chevron-left"></i> Back to overview page</a>
|
49
|
-
|
50
|
-
<h3>Connected lists</h3>
|
51
|
-
<div class="row">
|
52
|
-
<div class="col-sm-6">
|
53
|
-
<h3>Tree 1</h3>
|
54
|
-
<div ui-tree id="tree1-root">
|
55
|
-
<ol ui-tree-nodes="" ng-model="tree1">
|
56
|
-
<li ng-repeat="node in tree1" ui-tree-node ng-include="'nodes_renderer1.html'"></li>
|
57
|
-
</ol>
|
58
|
-
</div>
|
59
|
-
</div>
|
60
|
-
|
61
|
-
<div class="col-sm-6">
|
62
|
-
<h3>Tree 2</h3>
|
63
|
-
<div ui-tree id="tree2-root">
|
64
|
-
<ol ui-tree-nodes="" ng-model="tree2">
|
65
|
-
<li ng-repeat="node in tree2" ui-tree-node ng-include="'nodes_renderer2.html'"></li>
|
66
|
-
</ol>
|
67
|
-
</div>
|
68
|
-
</div>
|
69
|
-
</div>
|
70
|
-
|
71
|
-
<h3>Data binding</h3>
|
72
|
-
<div class="row">
|
73
|
-
<div class="col-sm-6">
|
74
|
-
<pre class="code">{{ tree1 | json }}</pre>
|
75
|
-
</div>
|
76
|
-
|
77
|
-
<div class="col-sm-6">
|
78
|
-
<pre class="code">{{ tree2 | json }}</pre>
|
79
|
-
</div>
|
80
|
-
</div>
|
81
|
-
|
82
|
-
</div>
|
83
|
-
|
84
|
-
<!--[if IE 8]>
|
85
|
-
<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
|
86
|
-
<script src="http://cdnjs.cloudflare.com/ajax/libs/es5-shim/3.4.0/es5-shim.min.js"></script>
|
87
|
-
<![endif]-->
|
88
|
-
<script src="bower_components/angular/angular.min.js"></script>
|
89
|
-
<script type="text/javascript" src="dist/angular-ui-tree.js"></script>
|
90
|
-
<script type="text/javascript" src="js/trees.js"></script>
|
91
|
-
</body>
|
92
|
-
</html>
|