promethee 1.2.31 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/promethee-edit.sass +10 -44
- data/app/assets/stylesheets/promethee-edit/_move.sass +95 -46
- data/app/views/promethee/_edit.html.erb +26 -24
- data/app/views/promethee/components/aside/_edit.define.html.erb +152 -11
- data/app/views/promethee/components/aside/_edit.move.html.erb +11 -12
- data/app/views/promethee/components/column/_edit.define.html.erb +32 -0
- data/app/views/promethee/components/column/_edit.inspect.html.erb +5 -4
- data/app/views/promethee/components/column/_edit.move.html.erb +21 -11
- data/app/views/promethee/components/cover/_edit.define.html.erb +151 -12
- data/app/views/promethee/components/cover/_edit.move.html.erb +7 -4
- data/app/views/promethee/components/cover/_localize.html.erb +1 -1
- data/app/views/promethee/components/image/_edit.define.html.erb +149 -13
- data/app/views/promethee/components/image/_edit.move.html.erb +13 -4
- data/app/views/promethee/components/image/_localize.html.erb +1 -1
- data/app/views/promethee/components/row/_edit.define.html.erb +151 -11
- data/app/views/promethee/components/row/_edit.move.html.erb +6 -3
- data/app/views/promethee/components/slider/_edit.define.html.erb +151 -11
- data/app/views/promethee/components/slider/_edit.move.html.erb +5 -3
- data/app/views/promethee/components/text/_edit.define.html.erb +150 -11
- data/app/views/promethee/components/text/_edit.move.html.erb +4 -1
- data/app/views/promethee/components/text/_localize.html.erb +1 -1
- data/app/views/promethee/components/video/_edit.define.html.erb +30 -11
- data/app/views/promethee/components/video/_edit.move.html.erb +30 -4
- data/app/views/promethee/edit/_move.close.html.erb +4 -0
- data/app/views/promethee/edit/_move.header.html.erb +7 -0
- data/app/views/promethee/edit/_move.html.erb +107 -15
- data/lib/promethee/rails/version.rb +1 -1
- metadata +5 -13
- data/app/assets/stylesheets/promethee-edit/_write.sass +0 -94
- data/app/views/promethee/components/aside/_edit.write.html.erb +0 -14
- data/app/views/promethee/components/column/_edit.write.html.erb +0 -17
- data/app/views/promethee/components/cover/_edit.write.html.erb +0 -23
- data/app/views/promethee/components/image/_edit.write.html.erb +0 -25
- data/app/views/promethee/components/row/_edit.write.html.erb +0 -34
- data/app/views/promethee/components/slider/_edit.write.html.erb +0 -47
- data/app/views/promethee/components/text/_edit.write.html.erb +0 -20
- data/app/views/promethee/components/video/_edit.write.html.erb +0 -39
- data/app/views/promethee/edit/_write.html.erb +0 -98
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/aside/edit/write">
|
|
2
|
-
<aside ng-click="inspect(component, $event)"
|
|
3
|
-
class=" promethee-edit__component
|
|
4
|
-
promethee-edit__component--aside">
|
|
5
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
6
|
-
<div class="promethee-edit__toolbar">
|
|
7
|
-
Aside
|
|
8
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
9
|
-
</div>
|
|
10
|
-
<ng-include src="'promethee/write/components'"></ng-include>
|
|
11
|
-
<ng-include src="'promethee/write/add_button'"></ng-include>
|
|
12
|
-
</div>
|
|
13
|
-
</div>
|
|
14
|
-
</script>
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/column/edit/write">
|
|
2
|
-
<div ng-click="inspect(component, $event)"
|
|
3
|
-
class=" col
|
|
4
|
-
col-md-{{component.attributes.size}}
|
|
5
|
-
col-md-offset-{{component.attributes.offset}}
|
|
6
|
-
promethee-edit__component
|
|
7
|
-
promethee-edit__component--column">
|
|
8
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
9
|
-
<div class="promethee-edit__toolbar">
|
|
10
|
-
Column
|
|
11
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
12
|
-
</div>
|
|
13
|
-
<ng-include src="'promethee/write/components'"></ng-include>
|
|
14
|
-
<ng-include src="'promethee/write/add_button'"></ng-include>
|
|
15
|
-
</div>
|
|
16
|
-
</div>
|
|
17
|
-
</script>
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/cover/edit/write">
|
|
2
|
-
<div ng-controller="CoverController"
|
|
3
|
-
ng-click="inspect(component, $event)"
|
|
4
|
-
class=" promethee-edit__component
|
|
5
|
-
promethee-edit__component--cover">
|
|
6
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
7
|
-
<div class="promethee-edit__toolbar promethee-edit__toolbar--transparent">
|
|
8
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
9
|
-
</div>
|
|
10
|
-
<div class=" promethee-edit__wrapper
|
|
11
|
-
promethee-edit__cover-content"
|
|
12
|
-
ng-bind-html="component.attributes.body | htmlSafe"
|
|
13
|
-
style="background-image: url('{{component.attributes.src}}')">
|
|
14
|
-
</div>
|
|
15
|
-
</div>
|
|
16
|
-
</div>
|
|
17
|
-
</script>
|
|
18
|
-
|
|
19
|
-
<script>
|
|
20
|
-
promethee.controller('CoverController', ['$scope', function($scope) {
|
|
21
|
-
|
|
22
|
-
}]);
|
|
23
|
-
</script>
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/image/edit/write">
|
|
2
|
-
<div ng-controller="ImageController"
|
|
3
|
-
ng-click="inspect(component, $event)"
|
|
4
|
-
class=" promethee-edit__component
|
|
5
|
-
promethee-edit__component--image">
|
|
6
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
7
|
-
<div class="promethee-edit__toolbar promethee-edit__toolbar--transparent">
|
|
8
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
9
|
-
</div>
|
|
10
|
-
<figure ng-show="component.attributes.src">
|
|
11
|
-
<img ng-src="{{component.attributes.src}}" class="img-responsive">
|
|
12
|
-
<figcaption ng-show="component.attributes.caption" ng-bind-html="component.attributes.caption | htmlSafe"></figcaption>
|
|
13
|
-
</figure>
|
|
14
|
-
<div ng-hide="component.attributes.src">
|
|
15
|
-
<p ng-hide="editing" class="text-center">Click to set the image</p>
|
|
16
|
-
</div>
|
|
17
|
-
</div>
|
|
18
|
-
</div>
|
|
19
|
-
</script>
|
|
20
|
-
|
|
21
|
-
<script>
|
|
22
|
-
promethee.controller('ImageController', ['$scope', function($scope) {
|
|
23
|
-
|
|
24
|
-
}]);
|
|
25
|
-
</script>
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/row/edit/write">
|
|
2
|
-
<div ng-controller="RowController"
|
|
3
|
-
ng-click="inspect(component, $event)"
|
|
4
|
-
class=" row
|
|
5
|
-
promethee-edit__component
|
|
6
|
-
promethee-edit__component--row">
|
|
7
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
8
|
-
<div class="promethee-edit__toolbar">
|
|
9
|
-
Row
|
|
10
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
11
|
-
</div>
|
|
12
|
-
<ng-include src="'promethee/write/components'"></ng-include>
|
|
13
|
-
<div class="clearfix"></div>
|
|
14
|
-
<a ng-click="addColumn()" class="promethee-edit__adder__button"><%= fa_icon :columns, class: "fa-2x" %></a>
|
|
15
|
-
</div>
|
|
16
|
-
</div>
|
|
17
|
-
</script>
|
|
18
|
-
|
|
19
|
-
<script>
|
|
20
|
-
promethee.controller('RowController', ['$scope', 'identifier', function($scope, identifier) {
|
|
21
|
-
$scope.addColumn = function() {
|
|
22
|
-
this.component.children.push({
|
|
23
|
-
type: 'column',
|
|
24
|
-
id: identifier.generate(),
|
|
25
|
-
attributes: {
|
|
26
|
-
size: 4,
|
|
27
|
-
offset: 0
|
|
28
|
-
},
|
|
29
|
-
children: []
|
|
30
|
-
})
|
|
31
|
-
}
|
|
32
|
-
}]);
|
|
33
|
-
</script>
|
|
34
|
-
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/slider/edit/write">
|
|
2
|
-
<div ng-controller="SliderController"
|
|
3
|
-
ng-click="inspect(component, $event)"
|
|
4
|
-
class=" row
|
|
5
|
-
promethee-edit__component
|
|
6
|
-
promethee-edit__component--slider">
|
|
7
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
8
|
-
<div class="promethee-edit__toolbar promethee-edit__toolbar--transparent">
|
|
9
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
10
|
-
</div>
|
|
11
|
-
|
|
12
|
-
<div class="row">
|
|
13
|
-
<div ng-init="components = component.children">
|
|
14
|
-
<div ng-repeat="component in components track by $index">
|
|
15
|
-
<div class="col-md-{{itemColSize}}">
|
|
16
|
-
<ng-include src="'promethee/write/component'"></ng-include>
|
|
17
|
-
</div>
|
|
18
|
-
<div ng-if="($index + 1)%itemsPerLine === 0" class="clearfix"></div>
|
|
19
|
-
</div>
|
|
20
|
-
</div>
|
|
21
|
-
</div>
|
|
22
|
-
<div class="clearfix"></div>
|
|
23
|
-
|
|
24
|
-
<span type="button"
|
|
25
|
-
class=" btn
|
|
26
|
-
btn-default
|
|
27
|
-
btn-block"
|
|
28
|
-
ng-click="addComponentTo(component.children);">
|
|
29
|
-
Add item
|
|
30
|
-
</span>
|
|
31
|
-
</div>
|
|
32
|
-
</div>
|
|
33
|
-
</script>
|
|
34
|
-
|
|
35
|
-
<script>
|
|
36
|
-
promethee.controller('SliderController', ['$scope', '$element', function($scope, $element) {
|
|
37
|
-
$scope.itemsPerLine = 4;
|
|
38
|
-
|
|
39
|
-
Object.defineProperties($scope, {
|
|
40
|
-
itemColSize: {
|
|
41
|
-
get: function() {
|
|
42
|
-
return Math.floor(12/$scope.itemsPerLine);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
}]);
|
|
47
|
-
</script>
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/text/edit/write">
|
|
2
|
-
<div ng-controller="TextController"
|
|
3
|
-
ng-click="inspect(component, $event)"
|
|
4
|
-
class=" promethee-edit__component
|
|
5
|
-
promethee-edit__component--text">
|
|
6
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
7
|
-
<div class="promethee-edit__toolbar promethee-edit__toolbar--transparent">
|
|
8
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
9
|
-
</div>
|
|
10
|
-
|
|
11
|
-
<div class="promethee-edit__wrapper" ng-bind-html="component.attributes.body | htmlSafe"></div>
|
|
12
|
-
</div>
|
|
13
|
-
</div>
|
|
14
|
-
</script>
|
|
15
|
-
|
|
16
|
-
<script>
|
|
17
|
-
promethee.controller('TextController', ['$scope', function($scope) {
|
|
18
|
-
|
|
19
|
-
}]);
|
|
20
|
-
</script>
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
<script type="text/ng-template" id="promethee/components/video/edit/write">
|
|
2
|
-
<div ng-controller="VideoController"
|
|
3
|
-
ng-click="inspect(component, $event)"
|
|
4
|
-
class=" promethee-edit__component
|
|
5
|
-
promethee-edit__component--video">
|
|
6
|
-
<div class="promethee-edit__component-selected" ng-class="{'promethee-edit__component-selected--visible': promethee.inspected === component}">
|
|
7
|
-
<div class="promethee-edit__toolbar promethee-edit__toolbar--transparent">
|
|
8
|
-
<ng-include src="'promethee/write/toolbar'"></ng-include>
|
|
9
|
-
</div>
|
|
10
|
-
<div class="embed-responsive embed-responsive-16by9">
|
|
11
|
-
<iframe ng-if="embed" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="allowfullscreen" ng-src="{{embed | urlSafe}}"></iframe>
|
|
12
|
-
<div class="video-neutralizing-overlay"></div>
|
|
13
|
-
</div>
|
|
14
|
-
</div>
|
|
15
|
-
</div>
|
|
16
|
-
</script>
|
|
17
|
-
|
|
18
|
-
<script>
|
|
19
|
-
promethee.controller('VideoController', ['$scope', function($scope) {
|
|
20
|
-
Object.defineProperty($scope, 'embed', {
|
|
21
|
-
get: function() {
|
|
22
|
-
var embed = null;
|
|
23
|
-
var url = this.component.attributes.url + '';
|
|
24
|
-
|
|
25
|
-
if(url.includes('vimeo')) {
|
|
26
|
-
var id = url.replace(/^(?:https?:)?\/\/(?:(?:www|player)\.)?vimeo\.com\/(?:video\/)?(\d+).*?$/, '$1');
|
|
27
|
-
embed = 'https://player.vimeo.com/video/' + id + '?color=ffffff&title=0&byline=0&portrait=0';
|
|
28
|
-
}
|
|
29
|
-
else if(url.includes('youtube')) {
|
|
30
|
-
var parts = url.split('watch?v=');
|
|
31
|
-
var id = parts[parts.length - 1];
|
|
32
|
-
embed = 'http://www.youtube.com/embed/' + id;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
return embed;
|
|
36
|
-
}
|
|
37
|
-
})
|
|
38
|
-
}]);
|
|
39
|
-
</script>
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
<script type="text/javascript">
|
|
2
|
-
promethee.controller('AdderController', ['$scope', '$rootScope', 'definitions', 'identifier', function($scope, $rootScope, definitions, identifier) {
|
|
3
|
-
|
|
4
|
-
$scope.adding = false;
|
|
5
|
-
$scope.childrenToAddTo = null;
|
|
6
|
-
$scope.definitions = definitions;
|
|
7
|
-
|
|
8
|
-
$scope.close = function() {
|
|
9
|
-
$scope.adding = false;
|
|
10
|
-
$scope.addingToChildren = null;
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
$scope.pushComponent = function(definition) {
|
|
14
|
-
var definition = angular.copy(definition.data);
|
|
15
|
-
definition.id = identifier.generate();
|
|
16
|
-
$scope.childrenToAddTo.push(definition);
|
|
17
|
-
$scope.close();
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
$rootScope.addComponentTo = function(components) {
|
|
21
|
-
$scope.adding = true;
|
|
22
|
-
$scope.childrenToAddTo = components;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
}])
|
|
26
|
-
</script>
|
|
27
|
-
|
|
28
|
-
<div class="promethee-edit__write" ng-show="promethee.mode == 'write'">
|
|
29
|
-
<div ng-class="{ 'container-fluid': promethee.fullscreen }">
|
|
30
|
-
<div ng-init="component = promethee.data"
|
|
31
|
-
class=" promethee-edit__component
|
|
32
|
-
promethee-edit__component--page">
|
|
33
|
-
<ng-include src="'promethee/write/components'"></ng-include>
|
|
34
|
-
</div>
|
|
35
|
-
</div>
|
|
36
|
-
<ng-include src="'promethee/write/add_button'"></ng-include>
|
|
37
|
-
<div class="promethee-edit__inspect" ng-show="promethee.inspected">
|
|
38
|
-
<div class="promethee-edit__inspect-header">
|
|
39
|
-
<div class="pull-right">
|
|
40
|
-
<span class="promethee-edit__button promethee-edit__button--squared" ng-click="promethee.inspected = null"><%= fa_icon :times %></span>
|
|
41
|
-
</div>
|
|
42
|
-
{{promethee.inspected.type}}
|
|
43
|
-
</div>
|
|
44
|
-
<div class="promethee-edit__inspect-content">
|
|
45
|
-
<ng-include ng-if="promethee.inspected" src="'promethee/components/' + promethee.inspected.type + '/edit/inspect'"></ng-include>
|
|
46
|
-
</div>
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
|
|
50
|
-
<script type="text/ng-template" id="promethee/write/components">
|
|
51
|
-
<div ng-init="components = component.children">
|
|
52
|
-
<div ng-repeat="component in components">
|
|
53
|
-
<ng-include src="'promethee/write/component'"></ng-include>
|
|
54
|
-
</div>
|
|
55
|
-
</div>
|
|
56
|
-
</script>
|
|
57
|
-
|
|
58
|
-
<script type="text/ng-template" id="promethee/write/component">
|
|
59
|
-
<ng-include src="'promethee/components/' + component.type + '/edit/write'"></ng-include>
|
|
60
|
-
</script>
|
|
61
|
-
|
|
62
|
-
<script type="text/ng-template" id="promethee/write/toolbar">
|
|
63
|
-
<div class="promethee-edit__toolbar-buttons pull-right">
|
|
64
|
-
<span ng-click="remove(component, components)" class="promethee-edit__button promethee-edit__button--squared promethee-edit__button--bordered"><%= fa_icon :times %></span>
|
|
65
|
-
</div>
|
|
66
|
-
</script>
|
|
67
|
-
|
|
68
|
-
<script type="text/ng-template" id="promethee/write/add_button">
|
|
69
|
-
<a ng-click="addComponentTo(component.children)" class="promethee-edit__adder__button"><%= fa_icon 'plus-circle', class: "fa-3x" %></a>
|
|
70
|
-
</script>
|
|
71
|
-
|
|
72
|
-
<div class="promethee-edit__adder" ng-controller="AdderController">
|
|
73
|
-
<% # FIXME le style comme ça ce n'est pas propre, sortir de la modal bootstrap et utiliser ng-show %>
|
|
74
|
-
<div class="modal fade in" tabindex="-1" role="dialog" style="display: {{adding ? 'block' : 'none'}}">
|
|
75
|
-
<div class="modal-dialog modal-lg" role="document">
|
|
76
|
-
<div class="modal-content">
|
|
77
|
-
<div class="modal-header">
|
|
78
|
-
<button type="button" class="close" ng-click="close()"><span aria-hidden="true">×</span></button>
|
|
79
|
-
<h4 class="modal-title">Select component</h4>
|
|
80
|
-
</div>
|
|
81
|
-
<div class="modal-body">
|
|
82
|
-
<div class="row">
|
|
83
|
-
<div
|
|
84
|
-
ng-repeat="definition in definitions"
|
|
85
|
-
ng-click="pushComponent(definition)"
|
|
86
|
-
class="col-md-3">
|
|
87
|
-
<div class="thumbnail">
|
|
88
|
-
<img ng-src="{{definition.thumb}}" class="img-responsive">
|
|
89
|
-
<h4>{{definition.name}}</h4>
|
|
90
|
-
<p>{{definition.description}}</p>
|
|
91
|
-
</div>
|
|
92
|
-
</div>
|
|
93
|
-
</div>
|
|
94
|
-
</div>
|
|
95
|
-
</div>
|
|
96
|
-
</div>
|
|
97
|
-
</div>
|
|
98
|
-
</div>
|