Roberto Santini пре 3 година
родитељ
комит
937df56aac

+ 3
- 7
app/Exports/IssueExport.php Прегледај датотеку

@@ -18,13 +18,9 @@ class IssueExport implements FromCollection, WithHeadings
18 18
   public function headings(): array
19 19
   {
20 20
     return [
21
-      '#',
22
-      'Segnalazione',
23
-      'Cliente',
24
-      'Sede',
25
-      'Data',
26
-      'Ore',
27
-      'Tipo'
21
+      'Nome',
22
+      'Codice',
23
+      'Quantita'
28 24
     ];
29 25
   }
30 26
 

+ 28
- 6
app/Http/Controllers/IssueController.php Прегледај датотеку

@@ -327,11 +327,11 @@ class IssueController extends Controller
327 327
       // dd($project_id);
328 328
 
329 329
       $arrayIssues = [];
330
-      try{
331
-        foreach($timeEntries->object()->time_entries as $timeEntry){
330
+      foreach($timeEntries->object()->time_entries as $timeEntry){
331
+        try{
332 332
           $arrayIssues[] = $timeEntry->issue->id;
333
+        }catch(\Exception $e){
333 334
         }
334
-      }catch(\Exception $e){
335 335
       }
336 336
       $arrayIssues = array_unique($arrayIssues);
337 337
       // dd($arrayIssues);
@@ -352,15 +352,37 @@ class IssueController extends Controller
352 352
         }
353 353
 
354 354
         // Tempo onsite o viaggio
355
-        $tempoImpiegatoOnSite = Issue::getTempoImpiegato($issue->id, [Config::getValue(Config::ATTIVITA_ON_SITE), 14], $from, $to, 'Sì');
355
+        $tempoImpiegatoOnSite = Issue::getTempoImpiegato($issue->id, [Config::getValue(Config::ATTIVITA_ON_SITE)], $from, $to, 'Sì');
356
+        $tempoImpiegatoViaggio = Issue::getTempoImpiegato($issue->id, [14], $from, $to, 'Sì');
356 357
         $tempoImpiegatoRemota = Issue::getTempoImpiegato($issue->id, Config::getValue(Config::ATTIVITA_REMOTA), $from, $to, 'Sì');
357 358
 
358 359
         foreach($tempoImpiegatoOnSite as $tempo){
359
-          $collectionIssue->push(['id' => $issue->id, 'subject' => $issue->subject, 'cliente' => $issue->project->name, 'sede_cliente' => $sedeCliente, 'data' => Carbon::parse($tempo->spent_on)->format('d/m/Y'), 'ore' => $tempo->hours, 'tipo' => 'onsite']);
360
+          // arrotondamento tempo
361
+          $ore = $tempo->hours;
362
+          if($ore < 1){
363
+            $ore = 1;
364
+          }else{
365
+            $ore = round($ore*2)/2;
366
+          }
367
+
368
+          $collectionIssue->push([
369
+            'nome' => "Intervento Tecnico #".$issue->id." ".$issue->subject." - ".Carbon::parse($tempo->spent_on)->format('d/m/Y'),
370
+            'codice' => 'INT-ORE',
371
+            'quantita' => $ore]
372
+          );
373
+          $collectionIssue->push([
374
+            'nome' => "Diritto fisso di uscita - #".$issue->id." - ".$sedeCliente,
375
+            'codice' => 'INT-USC',
376
+            'quantita' => 1]
377
+          );
360 378
         }
361 379
 
362 380
         foreach($tempoImpiegatoRemota as $tempo){
363
-          $collectionIssue->push(['id' => $issue->id, 'subject' => $issue->subject, 'cliente' => $issue->project->name, 'sede_cliente' => $sedeCliente, 'data' => Carbon::parse($tempo->spent_on)->format('d/m/Y'), 'remota' => $tempo->hours, 'tipo' => 'remota']);
381
+          $collectionIssue->push([
382
+            'nome' => "Intervento Tecnico #".$issue->id." ".$issue->subject." - ".Carbon::parse($tempo->spent_on)->format('d/m/Y'),
383
+            'codice' => 'INT-ORE',
384
+            'quantita' => $tempo->hours]
385
+          );
364 386
         }
365 387
       }
366 388
 

BIN
public/assets/check.png Прегледај датотеку


BIN
public/assets/logo.png Прегледај датотеку


BIN
public/assets/uncheck.png Прегледај датотеку


+ 945
- 0
public/css/quill.snow.css Прегледај датотеку

@@ -0,0 +1,945 @@
1
+/*!
2
+ * Quill Editor v1.3.7
3
+ * https://quilljs.com/
4
+ * Copyright (c) 2014, Jason Chen
5
+ * Copyright (c) 2013, salesforce.com
6
+ */
7
+.ql-container {
8
+  box-sizing: border-box;
9
+  font-family: Helvetica, Arial, sans-serif;
10
+  font-size: 13px;
11
+  height: 100%;
12
+  margin: 0px;
13
+  position: relative;
14
+}
15
+.ql-container.ql-disabled .ql-tooltip {
16
+  visibility: hidden;
17
+}
18
+.ql-container.ql-disabled .ql-editor ul[data-checked] > li::before {
19
+  pointer-events: none;
20
+}
21
+.ql-clipboard {
22
+  left: -100000px;
23
+  height: 1px;
24
+  overflow-y: hidden;
25
+  position: absolute;
26
+  top: 50%;
27
+}
28
+.ql-clipboard p {
29
+  margin: 0;
30
+  padding: 0;
31
+}
32
+.ql-editor {
33
+  box-sizing: border-box;
34
+  line-height: 1.42;
35
+  height: 100%;
36
+  outline: none;
37
+  overflow-y: auto;
38
+  padding: 12px 15px;
39
+  tab-size: 4;
40
+  -moz-tab-size: 4;
41
+  text-align: left;
42
+  white-space: pre-wrap;
43
+  word-wrap: break-word;
44
+}
45
+.ql-editor > * {
46
+  cursor: text;
47
+}
48
+.ql-editor p,
49
+.ql-editor ol,
50
+.ql-editor ul,
51
+.ql-editor pre,
52
+.ql-editor blockquote,
53
+.ql-editor h1,
54
+.ql-editor h2,
55
+.ql-editor h3,
56
+.ql-editor h4,
57
+.ql-editor h5,
58
+.ql-editor h6 {
59
+  margin: 0;
60
+  padding: 0;
61
+  counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;
62
+}
63
+.ql-editor ol,
64
+.ql-editor ul {
65
+  padding-left: 1.5em;
66
+}
67
+.ql-editor ol > li,
68
+.ql-editor ul > li {
69
+  list-style-type: none;
70
+}
71
+.ql-editor ul > li::before {
72
+  content: '\2022';
73
+}
74
+.ql-editor ul[data-checked=true],
75
+.ql-editor ul[data-checked=false] {
76
+  pointer-events: none;
77
+}
78
+.ql-editor ul[data-checked=true] > li *,
79
+.ql-editor ul[data-checked=false] > li * {
80
+  pointer-events: all;
81
+}
82
+.ql-editor ul[data-checked=true] > li::before,
83
+.ql-editor ul[data-checked=false] > li::before {
84
+  color: #777;
85
+  cursor: pointer;
86
+  pointer-events: all;
87
+}
88
+.ql-editor ul[data-checked=true] > li::before {
89
+  content: '\2611';
90
+}
91
+.ql-editor ul[data-checked=false] > li::before {
92
+  content: '\2610';
93
+}
94
+.ql-editor li::before {
95
+  display: inline-block;
96
+  white-space: nowrap;
97
+  width: 1.2em;
98
+}
99
+.ql-editor li:not(.ql-direction-rtl)::before {
100
+  margin-left: -1.5em;
101
+  margin-right: 0.3em;
102
+  text-align: right;
103
+}
104
+.ql-editor li.ql-direction-rtl::before {
105
+  margin-left: 0.3em;
106
+  margin-right: -1.5em;
107
+}
108
+.ql-editor ol li:not(.ql-direction-rtl),
109
+.ql-editor ul li:not(.ql-direction-rtl) {
110
+  padding-left: 1.5em;
111
+}
112
+.ql-editor ol li.ql-direction-rtl,
113
+.ql-editor ul li.ql-direction-rtl {
114
+  padding-right: 1.5em;
115
+}
116
+.ql-editor ol li {
117
+  counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;
118
+  counter-increment: list-0;
119
+}
120
+.ql-editor ol li:before {
121
+  content: counter(list-0, decimal) '. ';
122
+}
123
+.ql-editor ol li.ql-indent-1 {
124
+  counter-increment: list-1;
125
+}
126
+.ql-editor ol li.ql-indent-1:before {
127
+  content: counter(list-1, lower-alpha) '. ';
128
+}
129
+.ql-editor ol li.ql-indent-1 {
130
+  counter-reset: list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;
131
+}
132
+.ql-editor ol li.ql-indent-2 {
133
+  counter-increment: list-2;
134
+}
135
+.ql-editor ol li.ql-indent-2:before {
136
+  content: counter(list-2, lower-roman) '. ';
137
+}
138
+.ql-editor ol li.ql-indent-2 {
139
+  counter-reset: list-3 list-4 list-5 list-6 list-7 list-8 list-9;
140
+}
141
+.ql-editor ol li.ql-indent-3 {
142
+  counter-increment: list-3;
143
+}
144
+.ql-editor ol li.ql-indent-3:before {
145
+  content: counter(list-3, decimal) '. ';
146
+}
147
+.ql-editor ol li.ql-indent-3 {
148
+  counter-reset: list-4 list-5 list-6 list-7 list-8 list-9;
149
+}
150
+.ql-editor ol li.ql-indent-4 {
151
+  counter-increment: list-4;
152
+}
153
+.ql-editor ol li.ql-indent-4:before {
154
+  content: counter(list-4, lower-alpha) '. ';
155
+}
156
+.ql-editor ol li.ql-indent-4 {
157
+  counter-reset: list-5 list-6 list-7 list-8 list-9;
158
+}
159
+.ql-editor ol li.ql-indent-5 {
160
+  counter-increment: list-5;
161
+}
162
+.ql-editor ol li.ql-indent-5:before {
163
+  content: counter(list-5, lower-roman) '. ';
164
+}
165
+.ql-editor ol li.ql-indent-5 {
166
+  counter-reset: list-6 list-7 list-8 list-9;
167
+}
168
+.ql-editor ol li.ql-indent-6 {
169
+  counter-increment: list-6;
170
+}
171
+.ql-editor ol li.ql-indent-6:before {
172
+  content: counter(list-6, decimal) '. ';
173
+}
174
+.ql-editor ol li.ql-indent-6 {
175
+  counter-reset: list-7 list-8 list-9;
176
+}
177
+.ql-editor ol li.ql-indent-7 {
178
+  counter-increment: list-7;
179
+}
180
+.ql-editor ol li.ql-indent-7:before {
181
+  content: counter(list-7, lower-alpha) '. ';
182
+}
183
+.ql-editor ol li.ql-indent-7 {
184
+  counter-reset: list-8 list-9;
185
+}
186
+.ql-editor ol li.ql-indent-8 {
187
+  counter-increment: list-8;
188
+}
189
+.ql-editor ol li.ql-indent-8:before {
190
+  content: counter(list-8, lower-roman) '. ';
191
+}
192
+.ql-editor ol li.ql-indent-8 {
193
+  counter-reset: list-9;
194
+}
195
+.ql-editor ol li.ql-indent-9 {
196
+  counter-increment: list-9;
197
+}
198
+.ql-editor ol li.ql-indent-9:before {
199
+  content: counter(list-9, decimal) '. ';
200
+}
201
+.ql-editor .ql-indent-1:not(.ql-direction-rtl) {
202
+  padding-left: 3em;
203
+}
204
+.ql-editor li.ql-indent-1:not(.ql-direction-rtl) {
205
+  padding-left: 4.5em;
206
+}
207
+.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right {
208
+  padding-right: 3em;
209
+}
210
+.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right {
211
+  padding-right: 4.5em;
212
+}
213
+.ql-editor .ql-indent-2:not(.ql-direction-rtl) {
214
+  padding-left: 6em;
215
+}
216
+.ql-editor li.ql-indent-2:not(.ql-direction-rtl) {
217
+  padding-left: 7.5em;
218
+}
219
+.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right {
220
+  padding-right: 6em;
221
+}
222
+.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right {
223
+  padding-right: 7.5em;
224
+}
225
+.ql-editor .ql-indent-3:not(.ql-direction-rtl) {
226
+  padding-left: 9em;
227
+}
228
+.ql-editor li.ql-indent-3:not(.ql-direction-rtl) {
229
+  padding-left: 10.5em;
230
+}
231
+.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right {
232
+  padding-right: 9em;
233
+}
234
+.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right {
235
+  padding-right: 10.5em;
236
+}
237
+.ql-editor .ql-indent-4:not(.ql-direction-rtl) {
238
+  padding-left: 12em;
239
+}
240
+.ql-editor li.ql-indent-4:not(.ql-direction-rtl) {
241
+  padding-left: 13.5em;
242
+}
243
+.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right {
244
+  padding-right: 12em;
245
+}
246
+.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right {
247
+  padding-right: 13.5em;
248
+}
249
+.ql-editor .ql-indent-5:not(.ql-direction-rtl) {
250
+  padding-left: 15em;
251
+}
252
+.ql-editor li.ql-indent-5:not(.ql-direction-rtl) {
253
+  padding-left: 16.5em;
254
+}
255
+.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right {
256
+  padding-right: 15em;
257
+}
258
+.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right {
259
+  padding-right: 16.5em;
260
+}
261
+.ql-editor .ql-indent-6:not(.ql-direction-rtl) {
262
+  padding-left: 18em;
263
+}
264
+.ql-editor li.ql-indent-6:not(.ql-direction-rtl) {
265
+  padding-left: 19.5em;
266
+}
267
+.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right {
268
+  padding-right: 18em;
269
+}
270
+.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right {
271
+  padding-right: 19.5em;
272
+}
273
+.ql-editor .ql-indent-7:not(.ql-direction-rtl) {
274
+  padding-left: 21em;
275
+}
276
+.ql-editor li.ql-indent-7:not(.ql-direction-rtl) {
277
+  padding-left: 22.5em;
278
+}
279
+.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right {
280
+  padding-right: 21em;
281
+}
282
+.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right {
283
+  padding-right: 22.5em;
284
+}
285
+.ql-editor .ql-indent-8:not(.ql-direction-rtl) {
286
+  padding-left: 24em;
287
+}
288
+.ql-editor li.ql-indent-8:not(.ql-direction-rtl) {
289
+  padding-left: 25.5em;
290
+}
291
+.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right {
292
+  padding-right: 24em;
293
+}
294
+.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right {
295
+  padding-right: 25.5em;
296
+}
297
+.ql-editor .ql-indent-9:not(.ql-direction-rtl) {
298
+  padding-left: 27em;
299
+}
300
+.ql-editor li.ql-indent-9:not(.ql-direction-rtl) {
301
+  padding-left: 28.5em;
302
+}
303
+.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right {
304
+  padding-right: 27em;
305
+}
306
+.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right {
307
+  padding-right: 28.5em;
308
+}
309
+.ql-editor .ql-video {
310
+  display: block;
311
+  max-width: 100%;
312
+}
313
+.ql-editor .ql-video.ql-align-center {
314
+  margin: 0 auto;
315
+}
316
+.ql-editor .ql-video.ql-align-right {
317
+  margin: 0 0 0 auto;
318
+}
319
+.ql-editor .ql-bg-black {
320
+  background-color: #000;
321
+}
322
+.ql-editor .ql-bg-red {
323
+  background-color: #e60000;
324
+}
325
+.ql-editor .ql-bg-orange {
326
+  background-color: #f90;
327
+}
328
+.ql-editor .ql-bg-yellow {
329
+  background-color: #ff0;
330
+}
331
+.ql-editor .ql-bg-green {
332
+  background-color: #008a00;
333
+}
334
+.ql-editor .ql-bg-blue {
335
+  background-color: #06c;
336
+}
337
+.ql-editor .ql-bg-purple {
338
+  background-color: #93f;
339
+}
340
+.ql-editor .ql-color-white {
341
+  color: #fff;
342
+}
343
+.ql-editor .ql-color-red {
344
+  color: #e60000;
345
+}
346
+.ql-editor .ql-color-orange {
347
+  color: #f90;
348
+}
349
+.ql-editor .ql-color-yellow {
350
+  color: #ff0;
351
+}
352
+.ql-editor .ql-color-green {
353
+  color: #008a00;
354
+}
355
+.ql-editor .ql-color-blue {
356
+  color: #06c;
357
+}
358
+.ql-editor .ql-color-purple {
359
+  color: #93f;
360
+}
361
+.ql-editor .ql-font-serif {
362
+  font-family: Georgia, Times New Roman, serif;
363
+}
364
+.ql-editor .ql-font-monospace {
365
+  font-family: Monaco, Courier New, monospace;
366
+}
367
+.ql-editor .ql-size-small {
368
+  font-size: 0.75em;
369
+}
370
+.ql-editor .ql-size-large {
371
+  font-size: 1.5em;
372
+}
373
+.ql-editor .ql-size-huge {
374
+  font-size: 2.5em;
375
+}
376
+.ql-editor .ql-direction-rtl {
377
+  direction: rtl;
378
+  text-align: inherit;
379
+}
380
+.ql-editor .ql-align-center {
381
+  text-align: center;
382
+}
383
+.ql-editor .ql-align-justify {
384
+  text-align: justify;
385
+}
386
+.ql-editor .ql-align-right {
387
+  text-align: right;
388
+}
389
+.ql-editor.ql-blank::before {
390
+  color: rgba(0,0,0,0.6);
391
+  content: attr(data-placeholder);
392
+  font-style: italic;
393
+  left: 15px;
394
+  pointer-events: none;
395
+  position: absolute;
396
+  right: 15px;
397
+}
398
+.ql-snow.ql-toolbar:after,
399
+.ql-snow .ql-toolbar:after {
400
+  clear: both;
401
+  content: '';
402
+  display: table;
403
+}
404
+.ql-snow.ql-toolbar button,
405
+.ql-snow .ql-toolbar button {
406
+  background: none;
407
+  border: none;
408
+  cursor: pointer;
409
+  display: inline-block;
410
+  float: left;
411
+  height: 24px;
412
+  padding: 3px 5px;
413
+  width: 28px;
414
+}
415
+.ql-snow.ql-toolbar button svg,
416
+.ql-snow .ql-toolbar button svg {
417
+  float: left;
418
+  height: 100%;
419
+}
420
+.ql-snow.ql-toolbar button:active:hover,
421
+.ql-snow .ql-toolbar button:active:hover {
422
+  outline: none;
423
+}
424
+.ql-snow.ql-toolbar input.ql-image[type=file],
425
+.ql-snow .ql-toolbar input.ql-image[type=file] {
426
+  display: none;
427
+}
428
+.ql-snow.ql-toolbar button:hover,
429
+.ql-snow .ql-toolbar button:hover,
430
+.ql-snow.ql-toolbar button:focus,
431
+.ql-snow .ql-toolbar button:focus,
432
+.ql-snow.ql-toolbar button.ql-active,
433
+.ql-snow .ql-toolbar button.ql-active,
434
+.ql-snow.ql-toolbar .ql-picker-label:hover,
435
+.ql-snow .ql-toolbar .ql-picker-label:hover,
436
+.ql-snow.ql-toolbar .ql-picker-label.ql-active,
437
+.ql-snow .ql-toolbar .ql-picker-label.ql-active,
438
+.ql-snow.ql-toolbar .ql-picker-item:hover,
439
+.ql-snow .ql-toolbar .ql-picker-item:hover,
440
+.ql-snow.ql-toolbar .ql-picker-item.ql-selected,
441
+.ql-snow .ql-toolbar .ql-picker-item.ql-selected {
442
+  color: #06c;
443
+}
444
+.ql-snow.ql-toolbar button:hover .ql-fill,
445
+.ql-snow .ql-toolbar button:hover .ql-fill,
446
+.ql-snow.ql-toolbar button:focus .ql-fill,
447
+.ql-snow .ql-toolbar button:focus .ql-fill,
448
+.ql-snow.ql-toolbar button.ql-active .ql-fill,
449
+.ql-snow .ql-toolbar button.ql-active .ql-fill,
450
+.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,
451
+.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,
452
+.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,
453
+.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,
454
+.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,
455
+.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,
456
+.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,
457
+.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,
458
+.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,
459
+.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,
460
+.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,
461
+.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,
462
+.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,
463
+.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,
464
+.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,
465
+.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,
466
+.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,
467
+.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,
468
+.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,
469
+.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,
470
+.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,
471
+.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill {
472
+  fill: #06c;
473
+}
474
+.ql-snow.ql-toolbar button:hover .ql-stroke,
475
+.ql-snow .ql-toolbar button:hover .ql-stroke,
476
+.ql-snow.ql-toolbar button:focus .ql-stroke,
477
+.ql-snow .ql-toolbar button:focus .ql-stroke,
478
+.ql-snow.ql-toolbar button.ql-active .ql-stroke,
479
+.ql-snow .ql-toolbar button.ql-active .ql-stroke,
480
+.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,
481
+.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,
482
+.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,
483
+.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,
484
+.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,
485
+.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,
486
+.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,
487
+.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,
488
+.ql-snow.ql-toolbar button:hover .ql-stroke-miter,
489
+.ql-snow .ql-toolbar button:hover .ql-stroke-miter,
490
+.ql-snow.ql-toolbar button:focus .ql-stroke-miter,
491
+.ql-snow .ql-toolbar button:focus .ql-stroke-miter,
492
+.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,
493
+.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,
494
+.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,
495
+.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,
496
+.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,
497
+.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,
498
+.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,
499
+.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,
500
+.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,
501
+.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter {
502
+  stroke: #06c;
503
+}
504
+@media (pointer: coarse) {
505
+  .ql-snow.ql-toolbar button:hover:not(.ql-active),
506
+  .ql-snow .ql-toolbar button:hover:not(.ql-active) {
507
+    color: #444;
508
+  }
509
+  .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,
510
+  .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,
511
+  .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,
512
+  .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill {
513
+    fill: #444;
514
+  }
515
+  .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,
516
+  .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,
517
+  .ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,
518
+  .ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter {
519
+    stroke: #444;
520
+  }
521
+}
522
+.ql-snow {
523
+  box-sizing: border-box;
524
+}
525
+.ql-snow * {
526
+  box-sizing: border-box;
527
+}
528
+.ql-snow .ql-hidden {
529
+  display: none;
530
+}
531
+.ql-snow .ql-out-bottom,
532
+.ql-snow .ql-out-top {
533
+  visibility: hidden;
534
+}
535
+.ql-snow .ql-tooltip {
536
+  position: absolute;
537
+  transform: translateY(10px);
538
+}
539
+.ql-snow .ql-tooltip a {
540
+  cursor: pointer;
541
+  text-decoration: none;
542
+}
543
+.ql-snow .ql-tooltip.ql-flip {
544
+  transform: translateY(-10px);
545
+}
546
+.ql-snow .ql-formats {
547
+  display: inline-block;
548
+  vertical-align: middle;
549
+}
550
+.ql-snow .ql-formats:after {
551
+  clear: both;
552
+  content: '';
553
+  display: table;
554
+}
555
+.ql-snow .ql-stroke {
556
+  fill: none;
557
+  stroke: #444;
558
+  stroke-linecap: round;
559
+  stroke-linejoin: round;
560
+  stroke-width: 2;
561
+}
562
+.ql-snow .ql-stroke-miter {
563
+  fill: none;
564
+  stroke: #444;
565
+  stroke-miterlimit: 10;
566
+  stroke-width: 2;
567
+}
568
+.ql-snow .ql-fill,
569
+.ql-snow .ql-stroke.ql-fill {
570
+  fill: #444;
571
+}
572
+.ql-snow .ql-empty {
573
+  fill: none;
574
+}
575
+.ql-snow .ql-even {
576
+  fill-rule: evenodd;
577
+}
578
+.ql-snow .ql-thin,
579
+.ql-snow .ql-stroke.ql-thin {
580
+  stroke-width: 1;
581
+}
582
+.ql-snow .ql-transparent {
583
+  opacity: 0.4;
584
+}
585
+.ql-snow .ql-direction svg:last-child {
586
+  display: none;
587
+}
588
+.ql-snow .ql-direction.ql-active svg:last-child {
589
+  display: inline;
590
+}
591
+.ql-snow .ql-direction.ql-active svg:first-child {
592
+  display: none;
593
+}
594
+.ql-snow .ql-editor h1 {
595
+  font-size: 2em;
596
+}
597
+.ql-snow .ql-editor h2 {
598
+  font-size: 1.5em;
599
+}
600
+.ql-snow .ql-editor h3 {
601
+  font-size: 1.17em;
602
+}
603
+.ql-snow .ql-editor h4 {
604
+  font-size: 1em;
605
+}
606
+.ql-snow .ql-editor h5 {
607
+  font-size: 0.83em;
608
+}
609
+.ql-snow .ql-editor h6 {
610
+  font-size: 0.67em;
611
+}
612
+.ql-snow .ql-editor a {
613
+  text-decoration: underline;
614
+}
615
+.ql-snow .ql-editor blockquote {
616
+  border-left: 4px solid #ccc;
617
+  margin-bottom: 5px;
618
+  margin-top: 5px;
619
+  padding-left: 16px;
620
+}
621
+.ql-snow .ql-editor code,
622
+.ql-snow .ql-editor pre {
623
+  background-color: #f0f0f0;
624
+  border-radius: 3px;
625
+}
626
+.ql-snow .ql-editor pre {
627
+  white-space: pre-wrap;
628
+  margin-bottom: 5px;
629
+  margin-top: 5px;
630
+  padding: 5px 10px;
631
+}
632
+.ql-snow .ql-editor code {
633
+  font-size: 85%;
634
+  padding: 2px 4px;
635
+}
636
+.ql-snow .ql-editor pre.ql-syntax {
637
+  background-color: #23241f;
638
+  color: #f8f8f2;
639
+  overflow: visible;
640
+}
641
+.ql-snow .ql-editor img {
642
+  max-width: 100%;
643
+}
644
+.ql-snow .ql-picker {
645
+  color: #444;
646
+  display: inline-block;
647
+  float: left;
648
+  font-size: 14px;
649
+  font-weight: 500;
650
+  height: 24px;
651
+  position: relative;
652
+  vertical-align: middle;
653
+}
654
+.ql-snow .ql-picker-label {
655
+  cursor: pointer;
656
+  display: inline-block;
657
+  height: 100%;
658
+  padding-left: 8px;
659
+  padding-right: 2px;
660
+  position: relative;
661
+  width: 100%;
662
+}
663
+.ql-snow .ql-picker-label::before {
664
+  display: inline-block;
665
+  line-height: 22px;
666
+}
667
+.ql-snow .ql-picker-options {
668
+  background-color: #fff;
669
+  display: none;
670
+  min-width: 100%;
671
+  padding: 4px 8px;
672
+  position: absolute;
673
+  white-space: nowrap;
674
+}
675
+.ql-snow .ql-picker-options .ql-picker-item {
676
+  cursor: pointer;
677
+  display: block;
678
+  padding-bottom: 5px;
679
+  padding-top: 5px;
680
+}
681
+.ql-snow .ql-picker.ql-expanded .ql-picker-label {
682
+  color: #ccc;
683
+  z-index: 2;
684
+}
685
+.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill {
686
+  fill: #ccc;
687
+}
688
+.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke {
689
+  stroke: #ccc;
690
+}
691
+.ql-snow .ql-picker.ql-expanded .ql-picker-options {
692
+  display: block;
693
+  margin-top: -1px;
694
+  top: 100%;
695
+  z-index: 1;
696
+}
697
+.ql-snow .ql-color-picker,
698
+.ql-snow .ql-icon-picker {
699
+  width: 28px;
700
+}
701
+.ql-snow .ql-color-picker .ql-picker-label,
702
+.ql-snow .ql-icon-picker .ql-picker-label {
703
+  padding: 2px 4px;
704
+}
705
+.ql-snow .ql-color-picker .ql-picker-label svg,
706
+.ql-snow .ql-icon-picker .ql-picker-label svg {
707
+  right: 4px;
708
+}
709
+.ql-snow .ql-icon-picker .ql-picker-options {
710
+  padding: 4px 0px;
711
+}
712
+.ql-snow .ql-icon-picker .ql-picker-item {
713
+  height: 24px;
714
+  width: 24px;
715
+  padding: 2px 4px;
716
+}
717
+.ql-snow .ql-color-picker .ql-picker-options {
718
+  padding: 3px 5px;
719
+  width: 152px;
720
+}
721
+.ql-snow .ql-color-picker .ql-picker-item {
722
+  border: 1px solid transparent;
723
+  float: left;
724
+  height: 16px;
725
+  margin: 2px;
726
+  padding: 0px;
727
+  width: 16px;
728
+}
729
+.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg {
730
+  position: absolute;
731
+  margin-top: -9px;
732
+  right: 0;
733
+  top: 50%;
734
+  width: 18px;
735
+}
736
+.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=''])::before,
737
+.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=''])::before,
738
+.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=''])::before,
739
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=''])::before,
740
+.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=''])::before,
741
+.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=''])::before {
742
+  content: attr(data-label);
743
+}
744
+.ql-snow .ql-picker.ql-header {
745
+  width: 98px;
746
+}
747
+.ql-snow .ql-picker.ql-header .ql-picker-label::before,
748
+.ql-snow .ql-picker.ql-header .ql-picker-item::before {
749
+  content: 'Normal';
750
+}
751
+.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]::before,
752
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before {
753
+  content: 'Heading 1';
754
+}
755
+.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]::before,
756
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before {
757
+  content: 'Heading 2';
758
+}
759
+.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]::before,
760
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before {
761
+  content: 'Heading 3';
762
+}
763
+.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]::before,
764
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before {
765
+  content: 'Heading 4';
766
+}
767
+.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]::before,
768
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before {
769
+  content: 'Heading 5';
770
+}
771
+.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]::before,
772
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before {
773
+  content: 'Heading 6';
774
+}
775
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]::before {
776
+  font-size: 2em;
777
+}
778
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before {
779
+  font-size: 1.5em;
780
+}
781
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]::before {
782
+  font-size: 1.17em;
783
+}
784
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]::before {
785
+  font-size: 1em;
786
+}
787
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]::before {
788
+  font-size: 0.83em;
789
+}
790
+.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]::before {
791
+  font-size: 0.67em;
792
+}
793
+.ql-snow .ql-picker.ql-font {
794
+  width: 108px;
795
+}
796
+.ql-snow .ql-picker.ql-font .ql-picker-label::before,
797
+.ql-snow .ql-picker.ql-font .ql-picker-item::before {
798
+  content: 'Sans Serif';
799
+}
800
+.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]::before,
801
+.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]::before {
802
+  content: 'Serif';
803
+}
804
+.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]::before,
805
+.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]::before {
806
+  content: 'Monospace';
807
+}
808
+.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]::before {
809
+  font-family: Georgia, Times New Roman, serif;
810
+}
811
+.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]::before {
812
+  font-family: Monaco, Courier New, monospace;
813
+}
814
+.ql-snow .ql-picker.ql-size {
815
+  width: 98px;
816
+}
817
+.ql-snow .ql-picker.ql-size .ql-picker-label::before,
818
+.ql-snow .ql-picker.ql-size .ql-picker-item::before {
819
+  content: 'Normal';
820
+}
821
+.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]::before,
822
+.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]::before {
823
+  content: 'Small';
824
+}
825
+.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]::before,
826
+.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]::before {
827
+  content: 'Large';
828
+}
829
+.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]::before,
830
+.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]::before {
831
+  content: 'Huge';
832
+}
833
+.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]::before {
834
+  font-size: 10px;
835
+}
836
+.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]::before {
837
+  font-size: 18px;
838
+}
839
+.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]::before {
840
+  font-size: 32px;
841
+}
842
+.ql-snow .ql-color-picker.ql-background .ql-picker-item {
843
+  background-color: #fff;
844
+}
845
+.ql-snow .ql-color-picker.ql-color .ql-picker-item {
846
+  background-color: #000;
847
+}
848
+.ql-toolbar.ql-snow {
849
+  border: 1px solid #ccc;
850
+  box-sizing: border-box;
851
+  font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
852
+  padding: 8px;
853
+}
854
+.ql-toolbar.ql-snow .ql-formats {
855
+  margin-right: 15px;
856
+}
857
+.ql-toolbar.ql-snow .ql-picker-label {
858
+  border: 1px solid transparent;
859
+}
860
+.ql-toolbar.ql-snow .ql-picker-options {
861
+  border: 1px solid transparent;
862
+  box-shadow: rgba(0,0,0,0.2) 0 2px 8px;
863
+}
864
+.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label {
865
+  border-color: #ccc;
866
+}
867
+.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options {
868
+  border-color: #ccc;
869
+}
870
+.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,
871
+.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover {
872
+  border-color: #000;
873
+}
874
+.ql-toolbar.ql-snow + .ql-container.ql-snow {
875
+  border-top: 0px;
876
+}
877
+.ql-snow .ql-tooltip {
878
+  background-color: #fff;
879
+  border: 1px solid #ccc;
880
+  box-shadow: 0px 0px 5px #ddd;
881
+  color: #444;
882
+  padding: 5px 12px;
883
+  white-space: nowrap;
884
+}
885
+.ql-snow .ql-tooltip::before {
886
+  content: "Visit URL:";
887
+  line-height: 26px;
888
+  margin-right: 8px;
889
+}
890
+.ql-snow .ql-tooltip input[type=text] {
891
+  display: none;
892
+  border: 1px solid #ccc;
893
+  font-size: 13px;
894
+  height: 26px;
895
+  margin: 0px;
896
+  padding: 3px 5px;
897
+  width: 170px;
898
+}
899
+.ql-snow .ql-tooltip a.ql-preview {
900
+  display: inline-block;
901
+  max-width: 200px;
902
+  overflow-x: hidden;
903
+  text-overflow: ellipsis;
904
+  vertical-align: top;
905
+}
906
+.ql-snow .ql-tooltip a.ql-action::after {
907
+  border-right: 1px solid #ccc;
908
+  content: 'Edit';
909
+  margin-left: 16px;
910
+  padding-right: 8px;
911
+}
912
+.ql-snow .ql-tooltip a.ql-remove::before {
913
+  content: 'Remove';
914
+  margin-left: 8px;
915
+}
916
+.ql-snow .ql-tooltip a {
917
+  line-height: 26px;
918
+}
919
+.ql-snow .ql-tooltip.ql-editing a.ql-preview,
920
+.ql-snow .ql-tooltip.ql-editing a.ql-remove {
921
+  display: none;
922
+}
923
+.ql-snow .ql-tooltip.ql-editing input[type=text] {
924
+  display: inline-block;
925
+}
926
+.ql-snow .ql-tooltip.ql-editing a.ql-action::after {
927
+  border-right: 0px;
928
+  content: 'Save';
929
+  padding-right: 0px;
930
+}
931
+.ql-snow .ql-tooltip[data-mode=link]::before {
932
+  content: "Enter link:";
933
+}
934
+.ql-snow .ql-tooltip[data-mode=formula]::before {
935
+  content: "Enter formula:";
936
+}
937
+.ql-snow .ql-tooltip[data-mode=video]::before {
938
+  content: "Enter video:";
939
+}
940
+.ql-snow a {
941
+  color: #06c;
942
+}
943
+.ql-container.ql-snow {
944
+  border: 1px solid #ccc;
945
+}

+ 8
- 0
public/js/quill.min.js
Разлика између датотеке није приказан због своје велике величине
Прегледај датотеку


+ 1
- 0
public/plugins/datatables/css/dataTables.bootstrap4.min.css
Разлика између датотеке није приказан због своје велике величине
Прегледај датотеку


Loading…
Откажи
Сачувај