]> git.mxchange.org Git - friendica.git/blob - view/templates/calendar/calendar_head.tpl
Merge pull request #12883 from xundeenergie/easy-image-attach
[friendica.git] / view / templates / calendar / calendar_head.tpl
1 <link rel="stylesheet" type="text/css" href="{{$baseurl}}/view/asset/fullcalendar/dist/fullcalendar.min.css?v={{$smarty.const.FRIENDICA_VERSION}}" />
2 <link rel="stylesheet" type="text/css" href="{{$baseurl}}/view/asset/fullcalendar/dist/fullcalendar.print.min.css?v={{$smarty.const.FRIENDICA_VERSION}}" media="print" />
3 <script type="text/javascript" src="{{$baseurl}}/view/asset/moment/min/moment-with-locales.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
4 <script type="text/javascript" src="{{$baseurl}}/view/asset/fullcalendar/dist/fullcalendar.min.js?v={{$smarty.const.FRIENDICA_VERSION}}"></script>
5
6 <script>
7         function showEvent(eventid) {
8                 $.get(
9                         '{{$event_api}}/' + eventid,
10                         function(data){
11                                 $.colorbox({html:data});
12                         }
13                 );
14         }
15
16         function doEventPreview() {
17                 $('#event-edit-preview').val(1);
18                 $.post('events', $('#event-edit-form').serialize(), function(data) {
19                         $.colorbox({ html: data });
20                 });
21                 $('#event-edit-preview').val(0);
22         }
23
24         // disable the input for the finish date if it is not available
25         function enableDisableFinishDate() {
26                 if( $('#id_nofinish').is(':checked'))
27                         $('#id_finish_text').prop("disabled", true);
28                 else
29                         $('#id_finish_text').prop("disabled", false);
30         }
31
32         $(document).ready(function() {
33                 $('#events-calendar').fullCalendar({
34                         defaultView: '{{$i18n.defaultView|escape:'quotes'}}',
35                         firstDay: '{{$i18n.firstDay|escape:'quotes'}}',
36                         monthNames: [
37                                 '{{$i18n.January|escape:'quotes'}}',
38                                 '{{$i18n.February|escape:'quotes'}}',
39                                 '{{$i18n.March|escape:'quotes'}}',
40                                 '{{$i18n.April|escape:'quotes'}}',
41                                 '{{$i18n.May|escape:'quotes'}}',
42                                 '{{$i18n.June|escape:'quotes'}}',
43                                 '{{$i18n.July|escape:'quotes'}}',
44                                 '{{$i18n.August|escape:'quotes'}}',
45                                 '{{$i18n.September|escape:'quotes'}}',
46                                 '{{$i18n.October|escape:'quotes'}}',
47                                 '{{$i18n.November|escape:'quotes'}}',
48                                 '{{$i18n.December|escape:'quotes'}}'
49                         ],
50                         monthNamesShort: [
51                                 '{{$i18n.Jan|escape:'quotes'}}',
52                                 '{{$i18n.Feb|escape:'quotes'}}',
53                                 '{{$i18n.Mar|escape:'quotes'}}',
54                                 '{{$i18n.Apr|escape:'quotes'}}',
55                                 '{{$i18n.May|escape:'quotes'}}',
56                                 '{{$i18n.Jun|escape:'quotes'}}',
57                                 '{{$i18n.Jul|escape:'quotes'}}',
58                                 '{{$i18n.Aug|escape:'quotes'}}',
59                                 '{{$i18n.Sep|escape:'quotes'}}',
60                                 '{{$i18n.Oct|escape:'quotes'}}',
61                                 '{{$i18n.Nov|escape:'quotes'}}',
62                                 '{{$i18n.Dec|escape:'quotes'}}'
63                         ],
64                         dayNames: [
65                                 '{{$i18n.Sunday|escape:'quotes'}}',
66                                 '{{$i18n.Monday|escape:'quotes'}}',
67                                 '{{$i18n.Tuesday|escape:'quotes'}}',
68                                 '{{$i18n.Wednesday|escape:'quotes'}}',
69                                 '{{$i18n.Thursday|escape:'quotes'}}',
70                                 '{{$i18n.Friday|escape:'quotes'}}',
71                                 '{{$i18n.Saturday|escape:'quotes'}}'
72                         ],
73                         dayNamesShort: [
74                                 '{{$i18n.Sun|escape:'quotes'}}',
75                                 '{{$i18n.Mon|escape:'quotes'}}',
76                                 '{{$i18n.Tue|escape:'quotes'}}',
77                                 '{{$i18n.Wed|escape:'quotes'}}',
78                                 '{{$i18n.Thu|escape:'quotes'}}',
79                                 '{{$i18n.Fri|escape:'quotes'}}',
80                                 '{{$i18n.Sat|escape:'quotes'}}'
81                         ],
82                         allDayText: '{{$i18n.allday|escape:'quotes'}}',
83                         noEventsMessage: '{{$i18n.noevent|escape:'quotes'}}',
84                         buttonText: {
85                                 today: '{{$i18n.today|escape:'quotes'}}',
86                                 month: '{{$i18n.month|escape:'quotes'}}',
87                                 week: '{{$i18n.week|escape:'quotes'}}',
88                                 day: '{{$i18n.day|escape:'quotes'}}'
89                         },
90                         events: '{{$calendar_api}}',
91                         header: {
92                                 left: 'prev,next today',
93                                 center: 'title',
94                                 right: 'month,agendaWeek,agendaDay'
95                         },
96                         timeFormat: 'H:mm',
97                         eventClick: function(calEvent) {
98                                 showEvent(calEvent.id);
99                         },
100                         loading: function(isLoading) {
101                                 if(!isLoading) {
102                                         $('td.fc-day').dblclick(function() { window.location.href='/calendar/event/new?start=' + $(this).data('date'); });
103                                 }
104                         },
105
106                         eventRender: function(event, element, view) {
107                                 if (event.item['author-name']==null) return;
108                                 switch(view.name){
109                                         case "month":
110                                                 element.find(".fc-title").html(
111                                                         "{0}".format(
112                                                                 event.title
113                                                         ));
114                                                 break;
115                                         case "agendaWeek":
116                                                 element.find(".fc-title").html(
117                                                         "{0}<p>{1}</p><p>{2}</p>".format(
118                                                                 event.item['author-name'],
119                                                                 event.item.desc,
120                                                                 event.item.location
121                                                         ));
122                                                 break;
123                                         case "agendaDay":
124                                                 element.find(".fc-title").html(
125                                                         "{0}<p>{1}</p><p>{2}</p>".format(
126                                                                 event.item['author-name'],
127                                                                 event.item.desc,
128                                                                 event.item.location
129                                                         ));
130                                                 break;
131                                 }
132                         }
133
134                 })
135
136                 // show event popup
137                 let hash = location.hash.split("-");
138                 if (hash.length === 2 && hash[0] === "#link") showEvent(hash[1]);
139         });
140 </script>
141
142 <script language="javascript" type="text/javascript">
143         $(document).ready(function() {
144                 $("#comment-edit-text-desc").bbco_autocomplete('bbcode');
145
146                 $('#id_share').change(function() {
147
148                         if ($('#id_share').is(':checked')) {
149                                 $('#acl-wrapper').show();
150                         }
151                         else {
152                                 $('#acl-wrapper').hide();
153                         }
154                 }).trigger('change');
155
156                 $('#contact_allow, #contact_deny, #group_allow, #group_deny').change(function() {
157                         let selstr;
158                         $('#contact_allow option:selected, #contact_deny option:selected, #group_allow option:selected, #group_deny option:selected').each( function() {
159                                 selstr = $(this).html();
160                                 $('#jot-public').hide();
161                         });
162                         if(selstr == null) {
163                                 $('#jot-public').show();
164                         }
165                 }).trigger('change');
166
167                 // disable the finish time input if the user disable it
168                 $('#id_nofinish').change(function() {
169                         enableDisableFinishDate()
170                 }).trigger('change');
171         });
172 </script>
173