ode-csslib-panda-paris 3.3.11-develop-mozo.202409182238 → 3.3.11
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.
- package/dist/skins/circus/theme.css +4 -4
- package/dist/skins/circus/theme.css.map +1 -1
- package/dist/skins/default/theme.css +4 -4
- package/dist/skins/default/theme.css.map +1 -1
- package/dist/skins/desert/theme.css +4 -4
- package/dist/skins/desert/theme.css.map +1 -1
- package/dist/skins/neutre/theme.css +4 -4
- package/dist/skins/neutre/theme.css.map +1 -1
- package/dist/skins/ocean/theme.css +4 -4
- package/dist/skins/ocean/theme.css.map +1 -1
- package/dist/skins/panda-food/theme.css +4 -4
- package/dist/skins/panda-food/theme.css.map +1 -1
- package/dist/skins/sparkly/theme.css +4 -4
- package/dist/skins/sparkly/theme.css.map +1 -1
- package/dist/template/timeline/notifications.html +156 -63
- package/dist/version.txt +2 -2
- package/package.json +3 -3
|
@@ -68,54 +68,100 @@
|
|
|
68
68
|
</article> -->
|
|
69
69
|
|
|
70
70
|
<div data-ng-controller="FlashMessages" class="twelve cell">
|
|
71
|
-
<
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
<div
|
|
72
|
+
class="flashmsg"
|
|
73
|
+
ng-repeat="message in messages.all"
|
|
74
|
+
ng-class="message.color"
|
|
75
|
+
ng-style="{ 'background-color': message.customColor }"
|
|
76
|
+
>
|
|
77
|
+
<i
|
|
78
|
+
class="close-2x right-magnet"
|
|
79
|
+
tooltip="timeline.mark.flashmsg"
|
|
80
|
+
ng-click="markMessage(message)"
|
|
81
|
+
></i>
|
|
82
|
+
<div bind-html="message.contents[currentLanguage]"></div>
|
|
83
|
+
<div
|
|
84
|
+
ng-if="message.signature"
|
|
85
|
+
style="font-style: italic"
|
|
86
|
+
ng-style="{'color': message.signatureColor}"
|
|
87
|
+
>
|
|
88
|
+
<p></p>
|
|
89
|
+
[[ message.signature ]]
|
|
90
|
+
</div>
|
|
91
|
+
</div>
|
|
74
92
|
</div>
|
|
75
93
|
|
|
76
94
|
<app-title>
|
|
77
95
|
<h1 data-reload class="application-title">
|
|
78
96
|
<i class="exclamation-mark"></i>
|
|
79
97
|
<i18n
|
|
80
|
-
pulsar="{ index: 0, i18n: 'timeline.pulsar.notifications', position: 'center right', className: 'pulse-notifications'}"
|
|
81
|
-
timeline.title</i18n
|
|
98
|
+
pulsar="{ index: 0, i18n: 'timeline.pulsar.notifications', position: 'center right', className: 'pulse-notifications'}"
|
|
99
|
+
>timeline.title</i18n
|
|
100
|
+
>
|
|
82
101
|
</h1>
|
|
83
102
|
</app-title>
|
|
84
103
|
|
|
85
104
|
<div data-ng-controller="Timeline" class="twelve cell">
|
|
86
|
-
<div
|
|
87
|
-
|
|
88
|
-
|
|
105
|
+
<div
|
|
106
|
+
ng-if="!isEmpty()"
|
|
107
|
+
class="row drop-down-block"
|
|
108
|
+
ng-class="{slided: display.slide}"
|
|
109
|
+
>
|
|
110
|
+
<div
|
|
111
|
+
class="drop-down-label"
|
|
112
|
+
ng-if="filtered.notificationTypes.length > 0"
|
|
113
|
+
ng-click="display.slide = !display.slide"
|
|
114
|
+
pulsar-highlight="1"
|
|
115
|
+
>
|
|
89
116
|
<i class="arrow"></i>
|
|
90
117
|
<label
|
|
91
|
-
pulsar="{ index: 1, i18n: 'timeline.pulsar.filters', position: 'bottom center', className: 'pulse-filters'}"
|
|
118
|
+
pulsar="{ index: 1, i18n: 'timeline.pulsar.filters', position: 'bottom center', className: 'pulse-filters'}"
|
|
119
|
+
>
|
|
92
120
|
<i18n>filters.title</i18n>
|
|
93
121
|
</label>
|
|
94
122
|
</div>
|
|
95
123
|
|
|
96
|
-
<div
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
124
|
+
<div
|
|
125
|
+
class="drop-down-info"
|
|
126
|
+
ng-model="notificationTypes"
|
|
127
|
+
ng-if="filtered.notificationTypes.length > 0"
|
|
128
|
+
>
|
|
129
|
+
<span><i18n>filters.unactives</i18n></span
|
|
130
|
+
><span> [[unactivesFilters()]]</span>
|
|
100
131
|
</div>
|
|
101
132
|
|
|
102
133
|
<div class="drop-down-content" slide="display.slide">
|
|
103
134
|
<div class="chips">
|
|
104
|
-
<label
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
<
|
|
135
|
+
<label
|
|
136
|
+
class="chip multiselect"
|
|
137
|
+
ng-if="filtered.notificationTypes.length > 0"
|
|
138
|
+
>
|
|
139
|
+
<span><i18n>filters.all.none</i18n></span>
|
|
140
|
+
<input
|
|
141
|
+
type="checkbox"
|
|
142
|
+
ng-model="notificationTypes"
|
|
143
|
+
ng-change="allFilters()"
|
|
144
|
+
/>
|
|
109
145
|
</label>
|
|
110
|
-
<label
|
|
111
|
-
|
|
146
|
+
<label
|
|
147
|
+
class="chip [[type.data.toLowerCase()]]"
|
|
148
|
+
ng-class="{ selected: type.selected }"
|
|
149
|
+
ng-repeat="type in (filtered.notificationTypes = notificationTypes.all)"
|
|
150
|
+
>
|
|
112
151
|
<i class="[[type.data.toLowerCase()]] type"></i>
|
|
113
152
|
<span>[[suffixTitle(type.data.toLowerCase())]]</span>
|
|
114
|
-
<input
|
|
153
|
+
<input
|
|
154
|
+
type="checkbox"
|
|
155
|
+
ng-model="type.selected"
|
|
156
|
+
ng-change="switchFilter(type)"
|
|
157
|
+
/>
|
|
115
158
|
</label>
|
|
116
159
|
</div>
|
|
117
|
-
<div
|
|
118
|
-
|
|
160
|
+
<div
|
|
161
|
+
class="drop-up-label"
|
|
162
|
+
ng-click="display.slide = !display.slide"
|
|
163
|
+
ng-if="filtered.notificationTypes.length > 0"
|
|
164
|
+
>
|
|
119
165
|
<label>
|
|
120
166
|
<i18n>filters.close</i18n>
|
|
121
167
|
</label>
|
|
@@ -125,38 +171,47 @@
|
|
|
125
171
|
</div>
|
|
126
172
|
|
|
127
173
|
<!--EMPTY BUT NOT ALL FILTERS SELECTED-->
|
|
128
|
-
<div
|
|
174
|
+
<div
|
|
175
|
+
ng-if="notifications.all.length === 0 && notificationTypes.length() !== notificationTypes.selection().length"
|
|
176
|
+
>
|
|
129
177
|
<div class="emptyscreen" ng-if="isCache() && !showSeeMoreOnEmpty()">
|
|
130
178
|
<h2 class="emptyscreen-header">
|
|
131
179
|
<i18n>empty.timeline.notifications.noresults.title</i18n>
|
|
132
180
|
</h2>
|
|
133
|
-
<img
|
|
181
|
+
<img
|
|
182
|
+
class="emptyscreen-image__mini"
|
|
183
|
+
src="/assets/themes/entcore-css-lib/images/empty-filters.svg"
|
|
184
|
+
/>
|
|
134
185
|
<p class="emptyscreen-footer">
|
|
135
186
|
<i18n>empty.timeline.notifications.noresults</i18n>
|
|
136
187
|
</p>
|
|
137
188
|
</div>
|
|
138
189
|
<div class="info tuto" ng-if="isCache() && showSeeMoreOnEmpty()">
|
|
139
|
-
<b
|
|
140
|
-
|
|
141
|
-
|
|
190
|
+
<b
|
|
191
|
+
><span><i></i><i18n>timeline.empty.cache</i18n></span></b
|
|
192
|
+
>
|
|
142
193
|
</div>
|
|
143
194
|
</div>
|
|
144
195
|
<!--EMPTY BUT ALL FILTERS SELECTED-->
|
|
145
196
|
<div
|
|
146
|
-
ng-if="notifications.all.length === 0 && notificationTypes.length() === notificationTypes.selection().length && notifications.lastPage"
|
|
197
|
+
ng-if="notifications.all.length === 0 && notificationTypes.length() === notificationTypes.selection().length && notifications.lastPage"
|
|
198
|
+
>
|
|
147
199
|
<div class="emptyscreen" ng-if="isCache() && !showSeeMoreOnEmpty()">
|
|
148
200
|
<h2 class="emptyscreen-header">
|
|
149
201
|
<i18n>empty.timeline.notifications.title</i18n>
|
|
150
202
|
</h2>
|
|
151
|
-
<img
|
|
203
|
+
<img
|
|
204
|
+
class="emptyscreen-image__mini"
|
|
205
|
+
src="/timeline/public/img/empty-timeline.svg"
|
|
206
|
+
/>
|
|
152
207
|
<p class="emptyscreen-footer">
|
|
153
208
|
<i18n>empty.timeline.notifications</i18n>
|
|
154
209
|
</p>
|
|
155
210
|
</div>
|
|
156
211
|
<div class="info tuto" ng-if="isCache() && showSeeMoreOnEmpty()">
|
|
157
|
-
<b
|
|
158
|
-
|
|
159
|
-
|
|
212
|
+
<b
|
|
213
|
+
><span><i></i><i18n>timeline.empty.cache</i18n></span></b
|
|
214
|
+
>
|
|
160
215
|
</div>
|
|
161
216
|
</div>
|
|
162
217
|
|
|
@@ -165,42 +220,63 @@
|
|
|
165
220
|
<h2 class="emptyscreen-header">
|
|
166
221
|
<i18n>empty.timeline.notifications.title</i18n>
|
|
167
222
|
</h2>
|
|
168
|
-
<img
|
|
223
|
+
<img
|
|
224
|
+
class="emptyscreen-image__mini"
|
|
225
|
+
src="/timeline/public/img/empty-timeline.svg"
|
|
226
|
+
/>
|
|
169
227
|
<p class="emptyscreen-footer">
|
|
170
228
|
<i18n>empty.timeline.notifications</i18n>
|
|
171
229
|
</p>
|
|
172
230
|
</div>
|
|
173
231
|
|
|
174
232
|
<!-- Emptyscreen: no results with filters -->
|
|
175
|
-
<div
|
|
233
|
+
<div
|
|
234
|
+
class="emptyscreen"
|
|
235
|
+
ng-if="noResultsWithFilters() && !switchingFilters && !isCache()"
|
|
236
|
+
>
|
|
176
237
|
<h2 class="emptyscreen-header">
|
|
177
238
|
<i18n>empty.timeline.notifications.noresults.title</i18n>
|
|
178
239
|
</h2>
|
|
179
|
-
<img
|
|
240
|
+
<img
|
|
241
|
+
class="emptyscreen-image__mini"
|
|
242
|
+
src="/assets/themes/entcore-css-lib/images/empty-filters.svg"
|
|
243
|
+
/>
|
|
180
244
|
<p class="emptyscreen-footer">
|
|
181
245
|
<i18n>empty.timeline.notifications.noresults</i18n>
|
|
182
246
|
</p>
|
|
183
247
|
</div>
|
|
184
248
|
|
|
185
249
|
<!-- Emptyscreen: no filters selected -->
|
|
186
|
-
<div
|
|
250
|
+
<div
|
|
251
|
+
class="emptyscreen"
|
|
252
|
+
ng-if="noFiltersSelected() && !switchingFilters && !isCache()"
|
|
253
|
+
>
|
|
187
254
|
<h2 class="emptyscreen-header">
|
|
188
255
|
<i18n>empty.timeline.notifications.nofilters.title</i18n>
|
|
189
256
|
</h2>
|
|
190
|
-
<img
|
|
257
|
+
<img
|
|
258
|
+
class="emptyscreen-image__mini"
|
|
259
|
+
src="/assets/themes/entcore-css-lib/images/empty-filters.svg"
|
|
260
|
+
/>
|
|
191
261
|
<p class="emptyscreen-footer">
|
|
192
262
|
<i18n>empty.timeline.notifications.nofilters</i18n>
|
|
193
263
|
</p>
|
|
194
264
|
</div>
|
|
195
265
|
|
|
196
|
-
<div
|
|
266
|
+
<div
|
|
267
|
+
data-notificationid="[[notification._id]]"
|
|
197
268
|
data-ng-repeat="notification in notifications.all track by notification._id"
|
|
198
|
-
class="row notification [[notification.type.toLowerCase()]]"
|
|
269
|
+
class="row notification [[notification.type.toLowerCase()]]"
|
|
270
|
+
bottom-scroll="loadPage()"
|
|
271
|
+
>
|
|
199
272
|
<article ng-class="{ 'unread': isUnRead(notification) }">
|
|
200
273
|
<div class="row">
|
|
201
274
|
<div class="avatar">
|
|
202
275
|
<i class="system-avatar" ng-if="!notification.sender"></i>
|
|
203
|
-
<img
|
|
276
|
+
<img
|
|
277
|
+
ng-src="/userbook/avatar/[[notification.sender]]?thumbnail=100x100"
|
|
278
|
+
ng-if="notification.sender"
|
|
279
|
+
/>
|
|
204
280
|
<i class="sticker app type [[notification.type.toLowerCase()]]"></i>
|
|
205
281
|
</div>
|
|
206
282
|
<div class="content horizontal-spacing">
|
|
@@ -208,18 +284,30 @@
|
|
|
208
284
|
</div>
|
|
209
285
|
</div>
|
|
210
286
|
<div class="notification-date">
|
|
211
|
-
<em class="low-importance right-magnet"
|
|
287
|
+
<em class="low-importance right-magnet"
|
|
288
|
+
>[[formatDate(notification.date.$date)]]</em
|
|
289
|
+
>
|
|
212
290
|
</div>
|
|
213
291
|
</article>
|
|
214
|
-
<div
|
|
292
|
+
<div
|
|
293
|
+
class="notification-actions"
|
|
294
|
+
ng-class="{'opened': notification.opened}"
|
|
295
|
+
ng-if="showActions(notification)"
|
|
296
|
+
>
|
|
215
297
|
<div class="opener" ng-click="toggleNotification(notification,$event)">
|
|
216
298
|
<i class="left-open"></i>
|
|
217
299
|
</div>
|
|
218
300
|
<div class="actions">
|
|
219
|
-
<div
|
|
220
|
-
|
|
301
|
+
<div
|
|
302
|
+
ng-repeat="(name, action) in actions"
|
|
303
|
+
ng-show="!action.condition || action.condition(notification)"
|
|
304
|
+
class="action [[ name ]]"
|
|
305
|
+
>
|
|
221
306
|
<i class="[[name]]"></i>
|
|
222
|
-
<a
|
|
307
|
+
<a
|
|
308
|
+
ng-click="action.action(notification)"
|
|
309
|
+
ng-disabled="notification[action.doneProperty]"
|
|
310
|
+
>
|
|
223
311
|
[[ notification[action.doneProperty] ?
|
|
224
312
|
lang.translate(action.doneLabel) : lang.translate(action.label) ]]
|
|
225
313
|
</a>
|
|
@@ -229,35 +317,40 @@
|
|
|
229
317
|
</div>
|
|
230
318
|
<!--SHOW MORE -->
|
|
231
319
|
<div ng-if="showSeeMore()" style="text-align: center">
|
|
232
|
-
<a ng-click="loadPage()">
|
|
233
|
-
<i18n>timeline.seeold</i18n>
|
|
234
|
-
</a>
|
|
320
|
+
<a ng-click="loadPage()"><i18n>timeline.seeold</i18n></a>
|
|
235
321
|
</div>
|
|
236
|
-
<div
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
322
|
+
<div
|
|
323
|
+
ng-if="showSeeMoreOnEmpty()"
|
|
324
|
+
style="justify-content: center; display: flex"
|
|
325
|
+
>
|
|
326
|
+
<button ng-click="forceLoadPage()"><i18n>timeline.historyold</i18n></button>
|
|
240
327
|
</div>
|
|
241
|
-
<lightbox
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
328
|
+
<lightbox
|
|
329
|
+
show="display.confirmReport"
|
|
330
|
+
on-close="display.confirmReport = false"
|
|
331
|
+
>
|
|
332
|
+
<h2><i18n>timeline.confirm.report</i18n></h2>
|
|
245
333
|
<p>
|
|
246
334
|
<i18n>timeline.confirm.report.text</i18n>
|
|
247
335
|
</p>
|
|
248
336
|
<div class="row">
|
|
249
|
-
<button
|
|
337
|
+
<button
|
|
338
|
+
ng-click="doReport(notification); display.confirmReport = false"
|
|
339
|
+
class="right-magnet"
|
|
340
|
+
>
|
|
250
341
|
<i18n>timeline.action.report</i18n>
|
|
251
342
|
</button>
|
|
252
|
-
<button
|
|
343
|
+
<button
|
|
344
|
+
type="button"
|
|
345
|
+
ng-click="display.confirmReport = false"
|
|
346
|
+
class="right-magnet cancel"
|
|
347
|
+
>
|
|
253
348
|
<i18n>cancel</i18n>
|
|
254
349
|
</button>
|
|
255
350
|
</div>
|
|
256
351
|
</lightbox>
|
|
257
352
|
|
|
258
353
|
<div class="row notification" ng-show="notifications.loading">
|
|
259
|
-
<h1 class="reduce-block-eight nomargin">
|
|
260
|
-
<i18n>loading</i18n>
|
|
261
|
-
</h1>
|
|
354
|
+
<h1 class="reduce-block-eight nomargin"><i18n>loading</i18n></h1>
|
|
262
355
|
</div>
|
|
263
|
-
</div>
|
|
356
|
+
</div>
|
package/dist/version.txt
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
entcore-css-lib
|
|
2
|
-
ode-csslib-panda-paris
|
|
1
|
+
entcore-css-lib 23/08/2024 10:06:18
|
|
2
|
+
ode-csslib-panda-paris 19/09/2024 16:34:06
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ode-csslib-panda-paris",
|
|
3
|
-
"version": "3.3.11
|
|
3
|
+
"version": "3.3.11",
|
|
4
4
|
"description": "Panda theme by Edifice",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"author": "Edifice",
|
|
15
15
|
"license": "NONE",
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"entcore-css-lib": "npm:ode-csslib@
|
|
17
|
+
"entcore-css-lib": "npm:ode-csslib@main"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"concurrently": "5.3.0",
|
|
@@ -47,6 +47,6 @@
|
|
|
47
47
|
"release:dependencies": "cpr node_modules/entcore-css-lib/assets/ ${DIST_DIR}/ -o",
|
|
48
48
|
"release:prepare": "npm run release:clean && npm run release:dependencies && cpr template/ ${DIST_DIR}/template/ -o && cpr portal.html ${DIST_DIR}/ -o && cpr assets/ ${DIST_DIR}/ -o",
|
|
49
49
|
"release:build": "npm run release:prepare && SKIN=default npm run sass:build:release",
|
|
50
|
-
"watch": "sass --watch --style compressed --load-path=node_modules/ --no-source-map scss/index.scss ../
|
|
50
|
+
"watch": "sass --watch --style compressed --load-path=node_modules/ --no-source-map scss/index.scss ../ode-dev-server/assets/themes/cg771d/skins/default/theme.css"
|
|
51
51
|
}
|
|
52
52
|
}
|