Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 3647 | Rev 3653 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3643 stevensc 1
<?php
1 www 2
$currentUser = $this->currentUserHelper();
3
$currentUser = $currentUser->getUser();
4
 
5
$routeTimeline = $this->url('feeds/timeline');
6
 
7
 
8
$this->headLink()->appendStylesheet($this->basePath('plugins/nprogress/nprogress.css'));
9
$this->inlineScript()->appendFile($this->basePath('plugins/nprogress/nprogress.js'));
10
 
11
$this->inlineScript()->appendFile($this->basePath('plugins/ckeditor/ckeditor.js'));
12
 
13
 
14
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap-fileinput/css/fileinput.min.css'));
15
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap-fileinput/themes/explorer-fa/theme.css'));
16
 
17
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/plugins/piexif.js'));
18
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/plugins/sortable.js'));
19
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/fileinput.js'));
20
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/locales/es.js'));
21
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/themes/fa/theme.js'));
22
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/themes/explorer-fa/theme.js'));
23
 
24
 
25
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/jquery.validate.js'));
26
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/additional-methods.js'));
27
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/localization/messages_es.js'));
28
 
29
$this->inlineScript()->appendFile($this->basePath('plugins/jsrender/jsrender.min.js'));
30
 
31
 
32
$this->inlineScript()->appendFile($this->basePath('plugins/bootbox/bootbox.all.min.js'));
33
 
34
$this->inlineScript()->captureStart();
35
echo <<<JS
36
jQuery( document ).ready(function( $ ) {
37
    var feed_unique_shared = '';
38
 
39
    $.validator.addMethod('requiredContent', function (value, element, param) {
40
        value = $.trim($.fn.stripHtml(value));
41
        return value.length > 0;
42
    }, 'ERROR_REQUIRED');
43
 
44
    $.fn.reload = function(page) {
45
        NProgress.start();
46
        $.ajax({
47
            'dataType'  : 'json',
48
            'accept'    : 'application/json',
49
            'method'    : 'get',
50
            'data'      : {
51
                'page' : page
52
            },
53
            'url'       :  '$routeTimeline'
54
        }).done(function(response) {
55
            if(response['success']) {
56
                $('.posts-section').empty();
57
 
58
                $( ".posts-section" ).append(
59
                    $( "#feedTemplate" ).render( response['data']['current']['items'] )
60
                );
61
 
62
 
63
                if(response['data']['total']['pages'] > 1 ) {
64
 
65
                    $('#paginator-process-comm').show();
66
                    if(response['data']['current']['page']  > 1) {
67
                        $('#btn-page-previous').data('page', response['data']['current']['page'] - 1);
68
                        $('#btn-page-previous').show();
69
                    } else {
70
                         $('#btn-page-previous').hide();
71
                    }
72
                    if(response['data']['current']['page'] <  response['data']['total']['pages']) {
73
                        $('#btn-page-next').data('page', response['data']['current']['page'] + 1);
74
                        $('#btn-page-next').show();
75
                    } else {
76
                         $('#btn-page-next').hide();
77
                    }
78
 
79
                    $('#paginator-process-comm').show();
80
 
81
                } else {
82
                    $('#paginator-process-comm').hide();
83
                }
84
 
85
 
86
            } else {
87
                $.fn.showError(response['data']);
88
            }
89
        }).fail(function( jqXHR, textStatus, errorThrown) {
90
            $.fn.showError(textStatus);
91
        }).always(function() {
92
            NProgress.done();
93
        });
94
 
95
    }
96
 
97
    $('#btn-page-previous').click(function(e) {
98
        e.preventDefault();
99
 
100
        var page = $(this).data('page');
101
        $.fn.reload(page);
102
 
103
    });
104
 
105
    $('#btn-page-next').click(function(e) {
106
        e.preventDefault();
107
 
108
        var page = $(this).data('page');
109
        $.fn.reload(page);
110
 
111
    });
112
 
113
    $.validator.setDefaults({
114
        debug: true,
115
        highlight: function(element) {
116
            $(element).addClass('form-group-has-error');
117
        },
118
        unhighlight: function(element) {
119
            $(element).removeClass('form-group-has-error');
120
        },
121
        errorElement: 'div',
122
        errorClass: 'form-group-invalid-feedback',
123
        errorPlacement: function(error, element) {
124
            if(element.context.id == 'file') {
125
                error.insertAfter(element.parent().parent().parent());
126
            } else {
127
               if(element.parent('.form-group').length) {
128
                    error.insertAfter(element.parent());
129
                } else {
130
                    error.insertAfter(element);
131
                }
132
            }
133
 
134
 
135
        }
136
    });
137
 
138
    $.fn.showFormErrorValidator = function(fieldname, errors) {
139
        var field = $(fieldname);
140
        if(field) {
141
            $(field).addClass('form-group-has-error');
142
 
143
            var error = $('<div id="' + fieldname +'-error" class="form-group-invalid-feedback">' + errors + '</div>');
144
 
145
            var element = $(fieldname)
146
            if(element.parent('.form-group').length) {
147
                error.insertAfter(element.parent());
148
            } else if(element.parent('.file-loading').length) {
149
                error.insertAfter(element.parent().parent());
150
            } else {
151
                error.insertAfter(element);
152
            }
153
        }
154
    };
155
 
156
    var validatorFeed = $('#form-feed').validate({
157
        debug: true,
158
        onclick: false,
159
        onkeyup: false,
160
        onfocusout: false,
161
        ignore: [],
162
        rules: {
163
            'shared_with' : {
164
                required: true,
165
            },
166
           'description': {
167
                updateCkeditor:function() {
168
                        CKEDITOR.instances.description_feed.updateElement();
169
                },
170
                required: true
171
            },
172
        },
173
 
174
        submitHandler: function(form)
175
        {
176
            $('input[type="submit"]').prop('disabled', true);
177
            NProgress.start();
178
            $.ajax({
179
                'dataType'  : 'json',
180
                'accept'    : 'application/json',
181
                'method'    : 'post',
182
                'url'       : $('#form-feed').attr('action'),
183
                'data'      : $('#form-feed').serialize(),
184
            }).done(function(response) {
185
                if(response['success']) {
186
                    var s = $( "#feedTemplate" ).render( response['data'] );
187
                    $(s).prependTo(".posts-section");
188
 
189
                   $('#form-feed')[0].reset()
190
                    $("#modal-feed-box").modal('hide');
191
                } else {
192
                    validatorFeed.resetForm();
193
                    if(jQuery.type(response['data']) == 'string') {
194
                        $.fn.showError(response['data']);
195
                    } else  {
196
                        $.each(response['data'], function( fieldname, errors ) {
197
                            $.fn.showFormErrorValidator('#form-feed #' + fieldname, errors);
198
                        });
199
                    }
200
                }
201
            }).fail(function( jqXHR, textStatus, errorThrown) {
202
                $.fn.showError(textStatus);
203
            }).always(function() {
204
                $('input[type="submit"]').prop('disabled', false);
205
                NProgress.done();
206
            });
207
            return false;
208
        },
209
        invalidHandler: function(form, validator) {
210
 
211
        }
212
    });
213
 
214
    $('.btn-modal-feed-close').click(function(e) {
215
        e.preventDefault();
216
        $('#form-feed')[0].reset()
217
        $('#modal-feed-box').modal('hide');
218
        return false;
219
    });
220
 
221
    $('#description-main, #btn-description-main').click(function(e) {
222
        e.preventDefault();
223
 
224
        $('#form-feed')[0].reset()
225
        validatorFeed.resetForm();
226
        $("#modal-feed-box").modal('show');
227
    })
228
 
229
    var validatorFeedImage = $('#form-feed-image').validate({
230
        debug: true,
231
        onclick: false,
232
        onkeyup: false,
233
        onfocusout: false,
234
        ignore: [],
235
        rules: {
236
            'shared_with' : {
237
                required: true,
238
            },
239
           'description': {
240
                updateCkeditor:function() {
241
                        CKEDITOR.instances.description_image.updateElement();
242
                },
243
                required: true
244
            },
245
           'file': {
246
                required: true,
247
                extension: 'jpg|jpeg|png',
248
                accept: 'image/jpg,image/jpeg,image/png'
249
            },
250
        },
251
 
252
        submitHandler: function(form)
253
        {
254
            var formdata = false;
255
            if (window.FormData){
256
                formdata = new FormData(form); //form[0]);
257
            }
258
 
259
            $('input[type="submit"]').prop('disabled', true);
260
            NProgress.start();
261
            $.ajax({
262
                'dataType'  : 'json',
263
                'accept'    : 'application/json',
264
                'method'    : 'post',
265
                'url'       :  $('#form-feed-image').attr('action'),
266
                'data'      : formdata ? formdata : $('#form-feed-image').serialize(),
267
                'processData': false,
268
                'contentType': false,
269
            }).done(function(response) {
270
                if(response['success']) {
271
 
272
 
273
                    var s = $( "#feedTemplate" ).render( response['data'] );
274
                    $(s).prependTo(".posts-section");
275
 
276
                    $("#modal-feed-image-box").modal('hide');
277
                } else {
278
                    validatorFeedImage.resetForm();
279
                    if(jQuery.type(response['data']) == 'string') {
280
                        $.fn.showError(response['data']);
281
                    } else  {
282
                        $.each(response['data'], function( fieldname, errors ) {
283
                            $.fn.showFormErrorValidator('#form-feed-image #' + fieldname, errors);
284
                        });
285
                    }
286
                }
287
            }).fail(function( jqXHR, textStatus, errorThrown) {
288
                $.fn.showError(textStatus);
289
            }).always(function() {
290
                $('input[type="submit"]').prop('disabled', false);
291
                NProgress.done();
292
            });
293
            return false;
294
        },
295
        invalidHandler: function(form, validator) {
296
 
297
        }
298
    });
299
 
300
    var validatorFeedVideo = $('#form-feed-video').validate({
301
        debug: true,
302
        onclick: false,
303
        onkeyup: false,
304
        onfocusout: false,
305
        ignore: [],
306
        rules: {
307
            'shared_with' : {
308
                required: true,
309
            },
310
           'description': {
311
                updateCkeditor:function() {
312
                        CKEDITOR.instances.description_video.updateElement();
313
                },
314
                required: true
315
            },
316
           'file': {
317
                required: true,
318
                extension: 'webm,mp4,webm',
319
                accept: 'video/webm,video/mpeg,video/mp4'
320
            },
321
        },
322
 
323
        submitHandler: function(form)
324
        {
325
            var formdata = false;
326
            if (window.FormData){
327
                formdata = new FormData(form); //form[0]);
328
            }
329
 
330
            $('input[type="submit"]').prop('disabled', true);
331
            NProgress.start();
332
            $.ajax({
333
                'dataType'  : 'json',
334
                'accept'    : 'application/json',
335
                'method'    : 'post',
336
                'url'       :  $('#form-feed-video').attr('action'),
337
                'data'      : formdata ? formdata : $('#form-feed-video').serialize(),
338
                'processData': false,
339
                'contentType': false,
340
            }).done(function(response) {
341
                if(response['success']) {
342
                    var s = $( "#feedTemplate" ).render( response['data'] );
343
                    $(s).prependTo(".posts-section");
344
 
345
                    $("#modal-feed-video-box").modal('hide');
346
                } else {
347
                    validatorFeedVideo.resetForm();
348
                    if(jQuery.type(response['data']) == 'string') {
349
                        $.fn.showError(response['data']);
350
                    } else  {
351
                        $.each(response['data'], function( fieldname, errors ) {
352
                            $.fn.showFormErrorValidator('#form-feed-video #' + fieldname, errors);
353
                        });
354
                    }
355
                }
356
            }).fail(function( jqXHR, textStatus, errorThrown) {
357
                $.fn.showError(textStatus);
358
            }).always(function() {
359
                $('input[type="submit"]').prop('disabled', false);
360
                NProgress.done();
361
            });
362
            return false;
363
        },
364
        invalidHandler: function(form, validator) {
365
 
366
        }
367
    });
368
 
369
    var validatorFeedDocument = $('#form-feed-document').validate({
370
        debug: true,
371
        onclick: false,
372
        onkeyup: false,
373
        onfocusout: false,
374
        ignore: [],
375
        rules: {
376
            'shared_with' : {
377
                required: true,
378
            },
379
           'description': {
380
                updateCkeditor:function() {
381
                        CKEDITOR.instances.description_document.updateElement();
382
                },
383
                required: true
384
            },
385
           'file': {
386
                required: true,
387
                extension: 'pdf',
388
                accept: 'application/pdf'
389
            },
390
        },
391
 
392
        submitHandler: function(form)
393
        {
394
            var formdata = false;
395
            if (window.FormData){
396
                formdata = new FormData(form); //form[0]);
397
            }
398
 
399
            $('input[type="submit"]').prop('disabled', true);
400
            NProgress.start();
401
            $.ajax({
402
                'dataType'  : 'json',
403
                'accept'    : 'application/json',
404
                'method'    : 'post',
405
                'url'       :  $('#form-feed-document').attr('action'),
406
                'data'      : formdata ? formdata : $('#form-feed-document').serialize(),
407
                'processData': false,
408
                'contentType': false,
409
            }).done(function(response) {
410
                if(response['success']) {
411
                    var s = $( "#feedTemplate" ).render( response['data'] );
412
                    $(s).prependTo(".posts-section");
413
 
414
                    $("#modal-feed-document-box").modal('hide');
415
                } else {
416
                    validatorFeedDocument.resetForm();
417
                    if(jQuery.type(response['data']) == 'string') {
418
                        $.fn.showError(response['data']);
419
                    } else  {
420
                        $.each(response['data'], function( fieldname, errors ) {
421
                            $.fn.showFormErrorValidator('#form-feed-document #' + fieldname, errors);
422
                        });
423
                    }
424
                }
425
            }).fail(function( jqXHR, textStatus, errorThrown) {
426
                $.fn.showError(textStatus);
427
            }).always(function() {
428
                $('input[type="submit"]').prop('disabled', false);
429
                NProgress.done();
430
            });
431
            return false;
432
        },
433
        invalidHandler: function(form, validator) {
434
 
435
        }
436
    });
437
 
438
 
439
 
440
 
441
 
442
    $('a.fa-file').on('click', function(e){
443
        e.preventDefault();
444
 
445
        $('#form-feed-document #shared_with').val('');
446
        $('#form-feed-document #file').val('');
447
        CKEDITOR.instances.description_document.setData('');
448
 
449
        $('#form-feed-document')[0].reset()
450
        validatorFeedDocument.resetForm();
451
        $('#modal-feed-document-box').modal('show');
452
    });
453
 
454
    $('#form-feed-document #file').fileinput({
455
        theme: 'fa',
456
        language: 'es',
457
        showUpload: false,
458
        dropZoneEnabled: false,
459
        maxFileCount: 1,
460
        allowedFileExtensions: ['pdf'],
461
    });
462
 
463
 
464
    $('.btn-modal-feed-document-close').on('click', function(e){
465
        e.preventDefault();
466
 
467
        $('#modal-feed-document-box').modal('hide');
468
        return false;
469
    });
470
 
471
 
472
    $('a.fa-camera').on('click', function(e){
473
        e.preventDefault();
474
 
475
        $('#form-feed-image #shared_with').val('');
476
        $('#form-feed-image #file').val('');
477
        CKEDITOR.instances.description_image.setData('');
478
 
479
        $('#form-feed-image')[0].reset()
480
        validatorFeedImage.resetForm();
481
        $('#modal-feed-image-box').modal('show');
482
    });
483
 
484
    $('#form-feed-image #file').fileinput({
485
        theme: 'fa',
486
        language: 'es',
487
        showUpload: false,
488
        dropZoneEnabled: false,
489
        maxFileCount: 1,
490
        allowedFileExtensions: ['jpg', 'jpeg', 'png', 'gif'],
491
    });
492
 
493
 
494
    $('.btn-modal-feed-image-close').on('click', function(e){
495
        e.preventDefault();
496
 
497
        $('#modal-feed-image-box').modal('hide');
498
        return false;
499
    });
500
 
501
 
502
    $('a.fa-video-camera').on('click', function(e){
503
        e.preventDefault();
504
 
505
        $('#form-feed-video #shared_with').val('');
506
        $('#form-feed-video #file').val('');
507
        CKEDITOR.instances.description_video.setData('');
508
 
509
 
510
        $('#form-feed-video')[0].reset()
511
        validatorFeedVideo.resetForm();
512
        $('#modal-feed-video-box').modal('show');
513
    });
514
 
515
    $('#form-feed-video #file').fileinput({
516
        theme: 'fa',
517
        language: 'es',
518
        showUpload: false,
519
        dropZoneEnabled: false,
520
        maxFileCount: 1,
521
        allowedFileExtensions: ['mp4', 'mpeg','webm'],
522
    });
523
 
524
 
525
    $('.btn-modal-feed-video-close').on('click', function(e){
526
        e.preventDefault();
527
 
528
        $('#modal-feed-video-box').modal('hide');
529
        return false;
530
    });
531
 
532
    $('body').on('click', 'a.btn-indicator', function(e) {
533
 
534
        e.preventDefault();
535
    });
536
 
537
 
538
 
539
 
540
 
541
 
542
    $('body').on('submit', 'form.form-comment-feed', function(e) {
543
        e.preventDefault();
544
 
545
        var form = $(this);
546
        var url = form.attr('action');
547
        var unique  = $(this).data('feed-unique');
548
 
549
        NProgress.start();
550
        $.ajax({
551
            'dataType'  : 'json',
552
            'accept'    : 'application/json',
553
            'method'    : 'post',
554
            'url'       :  url,
555
            'data'      : form.serialize(),
556
        }).done(function(response) {
557
            if(response['success']) {
558
                $('#comment-' + unique).val('');
559
 
560
                var s = $( "#commentTemplate" ).render( response['data'] );
561
                $(s).appendTo('.comment-sec-' + unique + ' ul');
562
 
563
                $('#btn-comments-' + unique).html('<i class="fa fa-comments"></i> ' + response['total_comments']);
564
 
565
                $('form.form-comment-feed > input[name="comment"]').val('');
566
 
567
            } else {
568
               $.fn.showError(response['data']);
569
            }
570
        }).fail(function( jqXHR, textStatus, errorThrown) {
571
            $.fn.showError(textStatus);
572
        }).always(function() {
573
            NProgress.done();
574
        });
575
        return false;
576
 
577
    });
578
 
579
 
580
    $.fn.deleteFeed = function(url, feed_unique) {
581
 
582
 
583
        NProgress.start();
584
        $.ajax({
585
            'dataType'  : 'json',
586
            'accept'    : 'application/json',
587
            'method'    : 'post',
588
            'url'       :  url,
589
        }).done(function(response) {
590
            if(response['success']) {
591
              $('.post-bar-' +  feed_unique).remove();
592
 
593
                $.fn.showSuccess(response['data']);
594
            } else {
595
                $.fn.showError(response['data']);
596
            }
597
        }).fail(function( jqXHR, textStatus, errorThrown) {
598
            $.fn.showError(textStatus);
599
        }).always(function() {
600
            NProgress.done();
601
        });
602
 
603
    }
604
 
605
    $('body').on('click', 'a.btn-feed-trash', function(e) {
606
        e.preventDefault();
607
        var url = $(this).data('link');
608
        var feed_unique = $(this).data('feed-unique');
609
 
610
 
611
 
612
 
613
        bootbox.confirm({
614
            message: 'Esta seguro de borrar esta publicación',
615
            buttons: {
616
                confirm: {
617
                    label: 'Si',
618
                    className: 'btn-danger'
619
                },
620
                cancel: {
621
                    label:  'No',
622
                    className: 'btn-default'
623
                }
624
            },
625
            callback: function (result) {
626
               if(result) {
627
                    $.fn.deleteFeed(url, feed_unique);
628
                }
629
            }
630
        });
631
    });
632
 
633
 
634
    $.fn.deleteComment = function(url, unique) {
635
 
636
         var feed_unique = $('.comment-' + unique).closest('div.comment-sec').data('feed-unique');
637
 
638
        NProgress.start();
639
        $.ajax({
640
            'dataType'  : 'json',
641
            'accept'    : 'application/json',
642
            'method'    : 'post',
643
            'url'       :  url,
644
        }).done(function(response) {
645
            if(response['success']) {
646
 
647
                $('.comment-' + unique).closest('li').remove();
648
                $('#btn-comments-' + feed_unique).html('<i class="fa fa-comments"></i> ' + response['data']['total_comments']);
649
 
650
                $.fn.showSuccess(response['data']['message']);
651
            } else {
652
                $.fn.showError(response['data']);
653
            }
654
        }).fail(function( jqXHR, textStatus, errorThrown) {
655
            $.fn.showError(textStatus);
656
        }).always(function() {
657
            NProgress.done();
658
        });
659
 
660
 
661
    }
662
 
663
 
664
    $('body').on('click', 'a.btn-comment-trash', function(e) {
665
        e.preventDefault();
666
        var url = $(this).data('link');
667
        var unique = $(this).data('comment-unique');
668
 
669
 
670
        bootbox.confirm({
671
            message: 'Esta seguro de borrar este comentario',
672
            buttons: {
673
                confirm: {
674
                    label: 'Si',
675
                    className: 'btn-danger'
676
                },
677
                cancel: {
678
                    label:  'No',
679
                    className: 'btn-default'
680
                }
681
            },
682
            callback: function (result) {
683
               if(result) {
684
                   $.fn.deleteComment(url, unique);
685
                }
686
            }
687
        });
688
    });
689
 
690
 
691
    $('div.modal').on("hide.bs.modal", function() {
692
    	$(".wrapper").removeClass("overlay");
693
    })
694
 
695
 
696
    $.fn.reload(1);
697
 
3646 stevensc 698
    CKEDITOR.replace('description_feed', {
699
				// Reset toolbar settings, so full toolbar will be generated automatically.
700
				toolbar: null,
701
				toolbarGroups: [
3650 stevensc 702
                    { name: 'links', groups: [ 'links' ] },
703
                    '/',
704
                    { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
3646 stevensc 705
                ],
3650 stevensc 706
				removeButtons: 'Underline,Subscript,Superscript,Anchor',
3646 stevensc 707
				removePlugins: 'elementspath,Anchor',
708
				height: 100
709
			});
1 www 710
    CKEDITOR.replace('description_video');
711
    CKEDITOR.replace('description_image');
712
    CKEDITOR.replace('description_document');
713
 
714
 
715
});
716
 
717
 
718
JS;
719
$this->inlineScript()->captureEnd();
720
 
721
?>
722
 
3643 stevensc 723
    <section class="content-header">
724
    	<div class="container-fluid">
725
        	<div class="row mb-2">
726
            	<div class="col-sm-12">
727
                	<h1>LABEL_FEEDS</h1>
728
    			</div>
729
    		</div>
730
    	</div><!-- /.container-fluid -->
731
    </section>
1 www 732
 
3643 stevensc 733
 
734
    <section class="content">
735
    	<div class="container-fluid">
736
        	<div class="feed-container">
737
                <div class="">
738
                    <div class="main-ws-sec">
1 www 739
                        <div class="">
3643 stevensc 740
                            <div class="">
741
                                <div class="post-bar">
742
                                    <form id="form-main" name="form-main">
743
                                        <div class="post_topbar">
1 www 744
 
3643 stevensc 745
                                            <div class="mar-top clearfix">
746
                                                <div class="form-group">
747
                                                </div>
748
                                                <div class="form-group">
749
                                                    <textarea id="description-main" name="description-main" placeholder="¿Qué tienes en mente?" class="form-control" readonly="readonly" rows="2"></textarea>
750
                                                </div>
751
                                            </div>
752
                                            <div class="mar-top clearfix">
753
                                                <button class="btn btn-sm btn-primary pull-right" type="button" id="btn-description-main"><i class="fa fa-pencil fa-fw"></i> LABEL_SHARE </button>
754
                                                <a class="btn btn-trans btn-icon fa fa-video-camera add-tooltip" href="#"></a>
755
                                                <a class="btn btn-trans btn-icon fa fa-camera add-tooltip" href="#"></a>
756
                                                <a class="btn btn-trans btn-icon fa fa-file add-tooltip" href="#"></a>
1 www 757
                                            </div>
758
                                        </div>
3643 stevensc 759
                                    </form>
760
                                </div>
1 www 761
                            </div>
762
                        </div>
3643 stevensc 763
                            <!--posts-section star-->
764
                        <div class="posts-section" >
765
 
766
                        </div>
767
 
768
                        <div class="process-comm" id="paginator-process-comm" style="display: none">
769
                            <button class="btn btn-sm btn-primary" data-page="0" id="btn-page-previous"> <i class="fa fa-chevron-left" aria-hidden="true"></i> LABEL_PREVIOUS </button>
770
                            <button class="btn btn-sm btn-primary" data-page="0" id="btn-page-next"> LABEL_NEXT <i class="fa fa-chevron-right" aria-hidden="true"></i> </button>
771
                        </div>
772
                            <!--posts-section end-->
1 www 773
                    </div>
3643 stevensc 774
                </div> <!--main-ws-sec end-->
775
		    </div>
776
	    </div>
777
    </section>
1 www 778
 
779
 
780
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-image-box">
3643 stevensc 781
	<div class="modal-dialog" role="document">
782
		<?php
783
		$form = $this->formFeed;
1 www 784
        $form->setAttributes([
785
            'method' => 'post',
786
            'action' => $this->url('feeds/add'),
787
            'name' => 'form-feed-image',
788
            'id' => 'form-feed-image',
3643 stevensc 789
            'enctype' => 'multipart/form-data'
1 www 790
        ]);
791
        $form->prepare();
792
        echo $this->form()->openTag($form);
3643 stevensc 793
 
794
 
795
        ?>
796
		<div class="modal-content">
797
    		<div class="modal-header">
798
         		<h3 class="modal-title">LABEL_SHARE_IMAGE</h3>
799
        	</div>
800
   			<div class="modal-body">
1 www 801
                <div class="form-group">
3643 stevensc 802
                	<?php
1 www 803
                    $element = $form->get('description');
804
                    $element->setAttributes(['id' => 'description_image', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
805
                    echo $this->formTextArea($element);
806
                    ?>
3643 stevensc 807
   				</div>
808
   				<div class="form-group">
809
                	<div class="file-loading">
810
                 		<?php
1 www 811
                        $element = $form->get('file');
812
                        $element->setAttributes(['accept' => 'image/jpg,image/jpeg,image/png']);
813
                        echo $this->formFile($element);
814
                        ?>
3643 stevensc 815
                	</div>
816
          		</div>
817
          	</div>
818
           	<div class="modal-footer">
819
           		<button type="submit" class="btn btn-sm btn-primary save">LABEL_UPLOAD</button>
820
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-image-close">LABEL_CANCEL</button>
821
			</div>
822
 
823
		</div>
824
    	<a href="#" title="" class="close-box btn-feed-image-close"><i class="la la-close"></i></a>
825
    	<?php echo $this->form()->closeTag($form); ?>
826
	</div>
1 www 827
</div>
828
 
829
 
830
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-video-box">
3643 stevensc 831
	<div class="modal-dialog" role="document">
832
		<?php
833
		$form = $this->formFeed;
1 www 834
        $form->setAttributes([
835
            'method' => 'post',
836
            'action' => $this->url('feeds/add'),
837
            'name' => 'form-feed-video',
838
            'id' => 'form-feed-video',
3643 stevensc 839
            'enctype' => 'multipart/form-data'
1 www 840
        ]);
841
        $form->prepare();
842
        echo $this->form()->openTag($form);
3643 stevensc 843
 
1 www 844
 
3643 stevensc 845
        ?>
846
		<div class="modal-content">
847
    		<div class="modal-header">
848
         		<h3 class="modal-title">LABEL_SHARE_VIDEO</h3>
849
        	</div>
850
   			<div class="modal-body">
1 www 851
                <div class="form-group">
3643 stevensc 852
                	<?php
1 www 853
                    $element = $form->get('description');
854
                    $element->setAttributes(['id' => 'description_video', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
855
                    echo $this->formTextArea($element);
856
                    ?>
3643 stevensc 857
   				</div>
858
   				<div class="form-group">
859
                	<div class="file-loading">
860
                 		<?php
1 www 861
                        $element = $form->get('file');
862
                        $element->setAttributes(['accept' => 'video/webm,video/mpeg,video/mp4']);
863
                        echo $this->formFile($element);
864
                        ?>
3643 stevensc 865
                	</div>
866
          		</div>
867
         	</div>
868
         	<div class="modal-footer">
869
            	<button type="submit" class="btn btn-sm btn-primary save">LABEL_UPLOAD</button>
870
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-video-close">LABEL_CANCEL</button>
871
           	</div>
872
 
873
		</div>
874
    	<a href="#" title="" class="close-box btn-feed-video-close"><i class="la la-close"></i></a>
875
    	<?php echo $this->form()->closeTag($form); ?>
876
	</div>
1 www 877
</div>
878
 
879
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-document-box">
3643 stevensc 880
	<div class="modal-dialog" role="document">
881
		<?php
882
		$form = $this->formFeed;
1 www 883
        $form->setAttributes([
884
            'method' => 'post',
885
            'action' => $this->url('feeds/add'),
886
            'name' => 'form-feed-document',
887
            'id' => 'form-feed-document',
3643 stevensc 888
            'enctype' => 'multipart/form-data'
1 www 889
        ]);
890
        $form->prepare();
891
        echo $this->form()->openTag($form);
3643 stevensc 892
 
1 www 893
 
3643 stevensc 894
 
895
        ?>
896
		<div class="modal-content">
897
    		<div class="modal-header">
898
         		<h3 class="modal-title">LABEL_SHARE_DOCUMENT</h3>
899
        	</div>
900
   			<div class="modal-body">
1 www 901
                <div class="form-group">
3643 stevensc 902
                	<?php
1 www 903
                    $element = $form->get('description');
904
                    $element->setAttributes(['id' => 'description_document', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
905
                    echo $this->formTextArea($element);
906
                    ?>
3643 stevensc 907
   				</div>
908
   				<div class="form-group">
909
                	<div class="file-loading">
910
                 		<?php
1 www 911
                        $element = $form->get('file');
912
                        $element->setAttributes(['accept' => 'application/pdf']);
913
                        echo $this->formFile($element);
914
                        ?>
3643 stevensc 915
                	</div>
916
          		</div>
917
          	</div>
1 www 918
            <div class="modal-footer">
3643 stevensc 919
            	<button type="submit" class="btn btn-sm btn-primary save">LABEL_UPLOAD</button>
920
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-document-close">LABEL_CANCEL</button>
1 www 921
            </div>
3643 stevensc 922
		</div>
923
    	<a href="#" title="" class="close-box btn-feed-document-close"><i class="la la-close"></i></a>
924
    	<?php echo $this->form()->closeTag($form); ?>
925
	</div>
1 www 926
</div>
927
 
928
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-box">
3643 stevensc 929
	<div class="modal-dialog" role="document">
930
		<?php
931
		$form = $this->formFeed;
1 www 932
        $form->setAttributes([
933
            'method' => 'post',
934
            'action' => $this->url('feeds/add'),
935
            'name' => 'form-feed',
936
            'id' => 'form-feed',
937
        ]);
938
        $form->prepare();
939
        echo $this->form()->openTag($form);
3643 stevensc 940
 
1 www 941
 
3643 stevensc 942
 
943
        ?>
944
		<div class="modal-content">
945
    		<div class="modal-header">
946
         		<h3 class="modal-title">LABEL_SHARE</h3>
947
        	</div>
948
   			<div class="modal-body">
1 www 949
                <div class="form-group">
3643 stevensc 950
                	<?php
1 www 951
                    $element = $form->get('description');
952
                    $element->setAttributes(['id' => 'description_feed', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
953
                    echo $this->formTextArea($element);
954
                    ?>
3643 stevensc 955
   				</div>
956
   			</div>
1 www 957
            <div class="modal-footer">
3643 stevensc 958
            	<button type="submit" class="btn btn-sm btn-primary save">LABEL_SAVE</button>
959
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-close">LABEL_CANCEL</button>
1 www 960
            </div>
3643 stevensc 961
		</div>
962
    	<a href="#" title="" class="close-box btn-modal-feed-close"><i class="la la-close"></i></a>
963
    	<?php echo $this->form()->closeTag($form); ?>
964
	</div>
1 www 965
</div>
966
 
967
 
968
 
969
 
970
<script id="commentTemplate" type="text/x-jsrender">
3643 stevensc 971
                    <li>
1 www 972
				        <div class="comment-list">
973
							 <div class="comment comment-{{:unique}}" >
974
    					         <a href="{{>user_url}}"><h3>{{>user_name}}</h3>
975
    						     <span><img src="<?php echo $this->basePath('images/clock.png') ?>" alt="">{{>time_elapsed}}
976
                                {{if link_delete}}
977
                                    <a href="#" class="btn-comment-trash" data-link="{{:link_delete}}" data-comment-unique="{{>unique}}"><i class="fa fa-trash"></i></a>
978
                                {{/if}}
979
                                 </span>
980
 
981
								 <p>{{>comment}}</p>
982
						     </div>
983
	                   </div>
984
	               </li>
985
</script>
986
 
987
<script id="feedTemplate" type="text/x-jsrender">
988
    <div class="post-bar post-bar-{{>feed_unique}}">
989
        <div class="post_topbar">
990
            <div class="usy-dt">
991
                <a href="{{>owner_url}}">
992
                    <img src="{{>owner_image}}" alt="" style="width:50px; height: auto">
993
                    <div class="usy-name">
994
                        <h3>{{>owner_name}}</h3>
995
                        <span>
996
                            <img src="<?php echo $this->basePath('images/clock.png') ?>" alt="">
997
                            {{>owner_time_elapse}}
998
                            {{if feed_delete_url}}
999
                                <a href="#" class="btn-feed-trash" data-link="{{:feed_delete_url}}" data-feed-unique="{{>feed_unique}}"><i class="fa fa-trash"></i></a>
1000
                            {{/if}}
1001
                        </span>
1002
                    </div>
1003
                </a>
1004
            </div>
1005
        </div>
1006
        <div class="job_descp">
1007
            <p>
1008
            <div  class="show-read-more">{{:owner_description}}</div>
1009
            </p>
1010
            {{if owner_file_image}}
1011
             <img src="{{>owner_file_image}}" class="Entradas">
1012
            {{/if}}
1013
            {{if owner_file_video}}
1014
             <video src="{{>owner_file_video}}" controls  poster="{{>owner_file_image_preview}}">
1015
            {{/if}}
1016
            {{if owner_file_document}}
1017
                <a href="{{>owner_file_document}}" target="_blank">Descargar</a>
1018
            {{/if}}
1019
 
1020
    {{if shared_name}}
1021
    <div class="post-bar">
1022
        <div class="post_topbar">
1023
            <div class="usy-dt">
1024
                <img src="{{>shared_image}}" alt="" style="width:50px; height: auto">
1025
                <div class="usy-name">
1026
                    <h3>{{>shared_name}}</h3>
1027
                    <span><img style="width: 12px; height: auto" src="<?php echo $this->basePath('images/clock.png') ?>" alt="">{{>shared_time_elapse}}</span>
1028
                </div>
1029
            </div>
1030
        </div>
1031
        <div class="job_descp">
1032
            <p>
1033
            <div  class="show-read-more">{{:shared_description}}</div>
1034
            </p>
1035
            {{if shared_file_image}}
1036
             <img src="{{>shared_file_image}}" class="Entradas">
1037
            {{/if}}
1038
            {{if shared_file_video}}
1039
             <video src="{{>shared_file_video}}" controls  poster="{{>shared_file_image_preview}}">
1040
            {{/if}}
1041
            {{if shared_file_document}}
1042
                <a href="{{>shared_file_document}}" target="_blank">Descargar</a>
1043
            {{/if}}
1044
        </div>
1045
    </div>
1046
    {{/if}}
1047
 
1048
 
1049
        </div>
1050
        <div class="job-status-bar">
1051
            <ul class="like-com">
1052
                <li>
1053
                    <a href="#" id="btn-comments-{{>feed_unique}}" class="btn-indicator"><i class="fa fa-comments"></i> {{>owner_comments}}</a>
1054
                </li>
1055
                <li>
1056
                    <a href="#" id="btn-share-{{>feed_unique}}" class="btn-indicator"><i class="fa fa-share"></i> {{>owner_shared}}</a>
1057
                </li>
1058
            </ul>
1059
 
1060
        </div>
1061
        {{if comments}}
1062
            <div class="comment-section">
1063
                <div class="comment-sec comment-sec-{{>feed_unique}}" data-feed-unique="{{>feed_unique}}">
1064
                    <ul>
1065
                        {{for comments}}
1066
                            <li>
1067
                                <div class="comment-list">
1068
                                    <div class="comment comment-{{:unique}}" >
1069
                                        <span><img src="<?php echo $this->basePath('images/clock.png') ?>" alt="">{{>time_elapsed}}
1070
                                        <a href="{{>user_url}}"><h3>{{>user_name}}</h3>
1071
                                        {{if link_delete}}
1072
                                            <a href="#" class="btn-comment-trash" data-link="{{:link_delete}}"
1073
                                                data-comment-unique="{{>unique}}"><i class="fa fa-trash"></i></a>
1074
                                        {{/if}}
1075
                                        </span>
1076
 
1077
                                        <p>{{>comment}}</p>
1078
                                    </div>
1079
                                </div>
1080
                            </li>
1081
                        {{/for}}
1082
                    </ul>
1083
                </div>
1084
            </div>
1085
        {{/if}}
1086
        <div class="comment_box">
1087
            <form  class="form-comment-feed" data-feed-unique="{{>feed_unique}}"  action="{{>comment_add_url}}">
1088
                <input type="text" name="comment" id="comment-{{>feed_unique}}" maxlength="256"  placeholder="LABEL_WRITE_A_COMMENT">
1089
                <button type="submit">LABEL_SEND</button>
1090
            </form>
1091
        </div>
1092
    </div>
1093
</script>