#javascript #calendar
#javascript #Календарь
Вопрос:
У меня есть два календаря с событиями, и я хочу получать оба события одновременно и отображать в соответствии с отсортированными датой и временем (с днем прописью)
Я уже использую этот метод JavaScript для отображения одного календаря, и теперь у меня есть два календаря, поэтому я хочу объединить и отобразить :
calendar1= "https://www.googleapis.com/calendar/v3/calendars/<?php echo $cal_id1; ?>/events?key=<?php echo $apikey1; ?>";
calendar2= "https://www.googleapis.com/calendar/v3/calendars/<?php echo $cal_id2; ?>/events?key=<?php echo $apikey2; ?>";
formatGoogleCalendar.init({
calendarUrl:calendar1,calendar2,
past: false,
upcoming: true,
pastTopN: 5,
upcomingTopN: 7,
itemsTagName: 'li',
upcomingSelector: '#events-upcoming',
pastSelector: '#events-past',
upcomingHeading: '<div id="myDIV" class="header"><font style="float:left;">amp;nbsp;amp;nbsp;' digitdt 'amp;nbsp;amp;nbsp;amp;nbsp;amp;nbsp;</font><h2 style="margin:5px">Upcoming To Do List<font style="float:right; font-family:Digital-7; font-size:28pt;">amp;nbsp;amp;nbsp;amp;nbsp;amp;nbsp;Timeamp;nbsp;' digitxt '</font></h2></div>',
pastHeading: '',
format: ['<font style="color:#f44336; font-weight: bold; font-size: 28pt;">☞</font>amp;nbsp;amp;nbsp;<strong>', '*date*', '</strong>:<br>amp;nbsp;amp;nbsp;amp;nbsp;amp;nbsp; ', '*summary*', ' amp;mdash; ', '*description*', ' in ', '*location*']
});
Могу ли я передать 2 URL-адреса календаря и отобразить его таким образом?
calendarUrl:calendar1,calendar2,
Пожалуйста, помогите.
Спасибо.
Ответ №1:
Наконец я нашел решение простым способом объединить несколько календарей и получить все события в одном представлении в соответствии с датой / временем. Ниже приведен код, который я использовал.
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="FormatGoogleCalendar-master/dist/format-google-calendar.js"></script>
<!-- FormatGoogleCalendar Javascript file -->
<script src="FormatGoogleCalendar-master/dist/format-google-calendar.min.js"></script>
<script>
//declare calendar urls with calendar id and api key
var calender1 = "https://www.googleapis.com/calendar/v3/calendars/$cal_id/events?key=$apikey";
var calender2 = "https://www.googleapis.com/calendar/v3/calendars/$cal_id/events?key=$apikey";
//store the calendar urls in an array
var cals = [calender1,calender2];
var CAL_ID ="";
//loop through and get each calendar urls
for (j = 0; j < cals.length; j ) {
CAL_ID = cals[j];
formatGoogleCalendar.init({
calendarUrl:CAL_ID,
past: false,
upcoming: true,
pastTopN: 0,
upcomingTopN: 10,
itemsTagName: 'li',
upcomingSelector: '#events-upcoming',
pastSelector: '#events-past',
upcomingHeading: 'Upcoming Events',
pastHeading: '',
format: ['<font style="color:#f44336; font-weight: bold; font-size: 28pt;">☞</font>amp;nbsp;amp;nbsp;<strong>', '*date*', '</strong>:<br>amp;nbsp;amp;nbsp;amp;nbsp;amp;nbsp; ', '*summary*', ' amp;mdash; ', '*description*', ' in ', '*location*']
});
}
</script>
Надеюсь, что это может помочь и другим.