Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev Autor Línea Nro. Línea
4113 efrain 1
<?php
2
 
3
$routeEvents = $this->url('calendar/events');
4
 
4398 efrain 5
$this->headLink()->appendStylesheet($this->basePath('vendors/nprogress/nprogress.css'));
6
$this->inlineScript()->appendFile($this->basePath('vendors/nprogress/nprogress.js'));
4113 efrain 7
 
8
$this->headLink()->appendStylesheet($this->basePath('vendors/fullcalendar/fullcalendar.css'));
9
 
10
$this->inlineScript()->appendFile($this->basePath('vendors/fullcalendar/lib/moment.min.js'));
11
$this->inlineScript()->appendFile($this->basePath('vendors/fullcalendar/fullcalendar.js'));
12
$this->inlineScript()->appendFile($this->basePath('vendors/fullcalendar/locale/es-us.js'));
13
$this->inlineScript()->appendFile($this->basePath('vendors/popper/umd/popper.js'));
14
 
15
 
4692 stevensc 16
$defaultDate = date('Y-m-d');
4113 efrain 17
 
18
$this->inlineScript()->captureStart();
19
echo <<<JS
20
jQuery( document ).ready(function( $ ) {
21
 
22
    var data_resources  = new Array();
23
    var data_events = new Array();
24
 
25
    $('#calendar').fullCalendar({
26
        header: {
4716 stevensc 27
            left: 'title',
28
            right: 'month,agendaWeek,agendaDay,listWeek,prev,next'
4113 efrain 29
          },
30
          defaultDate: '$defaultDate',
31
          editable: true,
32
          navLinks: true, // can click day/week names to navigate views
33
          eventLimit: true, // allow "more" link when too many events
34
          events: {
35
            url: '$routeEvents',
36
            error: function() {
37
              $('#script-warning').show();
38
            }
4694 stevensc 39
          },
4976 stevensc 40
          eventClick: function(event) {
4694 stevensc 41
            if (event.url) {
42
              window.open(event.url, "_blank");
43
              return false;
44
            }
4976 stevensc 45
          },
4694 stevensc 46
          eventRender: function(eventObj, \$el) {
4113 efrain 47
            $('.popover').remove();
48
            \$el.popover({
4148 efrain 49
                title: eventObj.title,
4141 efrain 50
                content: eventObj.agenda,
5050 efrain 51
                trigger: 'click', // 'hover',
4113 efrain 52
                placement: 'top',
53
                container: 'body',
4398 efrain 54
 
4113 efrain 55
                popperOptions : {
56
                    removeOnDestroy: true
57
                },
58
                options : {
59
                    removeOnDestroy: true
60
                },
61
                 html: true
62
            });
4141 efrain 63
        },
4113 efrain 64
 
65
    });
66
 
4398 efrain 67
 
68
 
69
    $('body').on('click', 'a.goto-backend', function(e) {
70
        e.preventDefault();
71
        var action = $(this).attr('href');
72
 
73
        NProgress.start();
74
        $.ajax({
75
            'dataType'  : 'json',
76
            'method'    : 'get',
77
            'url'       :  action,
78
            'data'      :  $('#form').serialize(),
79
        }).done(function(response) {
80
            if(response['success']) {
81
              window.open(response['data'], '_backend')
82
            } else {
83
                $.fn.showError(response['data']);
84
            }
85
        }).fail(function( jqXHR, textStatus, errorThrown) {
86
            $.fn.showError(textStatus);
87
        }).always(function() {
88
            NProgress.done();
89
        });
90
 
91
    });
92
 
93
 
94
 
4131 efrain 95
 
96
 
4113 efrain 97
});
98
JS;
99
$this->inlineScript()->captureEnd();
4718 stevensc 100
$this->headLink()->appendStylesheet('/css/calendar.css');
4981 stevensc 101
$this->headLink()->appendStylesheet('/look-and-field/calendar.css');
4188 stevensc 102
$this->inlineScript()->appendFile('/react-bundles/calendar/calendarBundle.js');
4113 efrain 103
?>
104
<section class="info-page">
4188 stevensc 105
  <div class="container">
106
    <div class="row">
107
      <div id="calendar" class="col-12 col-md-8"></div>
108
      <div id="calendar-events" class="col-12 col-md-4"></div>
109
    </div>
110
  </div>
4192 stevensc 111
</section>
112
<script>
113
  const isMobile = Boolean(window.innerWidth < 768)
114
  const row = document.querySelector('.container .row')
115
 
116
  if (isMobile) row.setAttribute('style', 'gap: 1rem;')
117
</script>