Файловый менеджер - Редактировать - /home/wuectly/www/components/com_icagenda/views/list/tmpl/default_vcal.php
Назад
<?php /** *------------------------------------------------------------------------------ * iCagenda v3 by Jooml!C - Events Management Extension for Joomla! 2.5 / 3.x *------------------------------------------------------------------------------ * @package com_icagenda * @copyright Copyright (c)2012-2015 Cyril Rezé, Jooml!C - All rights reserved * * @license GNU General Public License version 3 or later; see LICENSE.txt * @author Tom-Henning (MaW) / Cyril Rezé (Lyr!C) * @link http://www.joomlic.com * * @version 3.5.6 2015-05-11 * @since 3.2.9 *------------------------------------------------------------------------------ */ // No direct access to this file defined('_JEXEC') or die(); require_once JPATH_COMPONENT . '/helpers/iCalcreator.class.php'; //$v = new vCalendar($config); $v = new vCalendar(); $v->setConfig( 'filename', 'icagenda.ics' ); $v->prodid = 'iCagenda'; $config = JFactory::getConfig(); // Joomla 3.x / 2.5 SWITCH if (version_compare(JVERSION, '3.0', 'ge')) { $offset = $config->get('offset'); } else { $offset = $config->getValue('config.offset'); } $dateTimeZone = new DateTimeZone($offset); $dateTime = new DateTime("now", $dateTimeZone); $timeOffset = $dateTimeZone->getOffset($dateTime); $timezone = ($timeOffset / 3600); $tz = 'UTC'; $v->setProperty( 'method', 'PUBLISH' ); $v->setProperty( 'X-WR-CALDESC', '' ); $v->setProperty( 'X-WR-TIMEZONE', $tz); $xprops = array( 'X-LIC-LOCATION' => $tz); if (version_compare(PHP_VERSION, '5.3.0') >= 0) { iCalUtilityFunctions::createTimezone($v, $tz, $xprops); } $stamp = $this->data; $get_date = ''; $href='#'; $start_Datetime = ''; $start_Date = ''; $end_Datetime = ''; $end_Date = ''; foreach ($stamp->items as $item) { $s_dates = $item->dates; $single_dates = unserialize($s_dates); if (JRequest::getVar('date', '')) { $var_one_date = JRequest::getVar('date'); $one_ex = explode('-', $var_one_date); $get_one_date = $one_ex['0'].'-'.$one_ex['1'].'-'.$one_ex['2'].' '.$one_ex['3'].':'.$one_ex['4'].':00'; $get_date = date('Y-m-d-H-i', strtotime($get_one_date)-$timeOffset); } else { $get_date = date('Y-m-d-H-i', strtotime($item->next)-$timeOffset); } $ex = explode('-', $get_date); $this_date = $ex['0'].'-'.$ex['1'].'-'.$ex['2'].' '.$ex['3'].':'.$ex['4']; $startdate = date('Y-m-d-H-i', strtotime($item->start_datetime)-$timeOffset); $enddate = date('Y-m-d-H-i', strtotime($item->end_datetime)-$timeOffset); if ( ($get_date >= $startdate) && ($get_date <= $enddate) && ( ! in_array($this_date, $single_dates)) ) { $weekdays = ($item->weekdays || $item->weekdays == '0') ? true : false; if ($weekdays) { $startdate = date('Y-m-d-H-i', strtotime($this_date)); $enddate = date('Y-m-d', strtotime($this_date)) . '-' . date('H-i', strtotime($item->end_datetime)-$timeOffset); } $ex_S = explode('-', $startdate); $ex_E = explode('-', $enddate); $start_Datetime = $ex_S['0'].$ex_S['1'].$ex_S['2'].'T'.$ex_S['3'].$ex_S['4'].'00Z'; $end_Datetime = $ex_E['0'].$ex_E['1'].$ex_E['2'].'T'.$ex_E['3'].$ex_E['4'].'00Z'; // $start_Date = $ex_S['0'].$ex_S['1'].$ex_S['2']; // $end_Date = $ex_E['0'].$ex_E['1'].$ex_E['2']; } else { $start_Datetime = $end_Datetime = $ex['0'].$ex['1'].$ex['2'].'T'.$ex['3'].$ex['4'].'00Z'; // $start_Date = $end_Date = $ex['0'].$ex['1'].$ex['2']; } $urllink = JUri::getInstance()->toString(); $cleanurl = preg_replace('/&tmpl=[^&]*/', '', $urllink); $cleanurl = preg_replace('/&vcal=[^&]*/', '', $cleanurl); $vevent = &$v->newComponent('vevent'); $vevent->setProperty('categories', $item->cat_title); $vevent->setProperty('summary', $item->title); $vevent->setProperty('description', strip_tags($item->desc)); $vevent->setProperty('url', $item->Event_Link); $vevent->setUID($item->id); if ( $item->contact_name != '' ) { $vevent->setOrganizer($item->contact_name, $item->contact_email); } // if ($item->displaytime == 1) // { $vevent->setProperty('dtstart', $start_Datetime); $vevent->setProperty('dtend', $end_Datetime); // } // else // { // All day event (if time not displayed) // $vevent->setProperty('dtstart', $start_Date, array("VALUE" => "DATE")); // $vevent->setProperty('dtend', $end_Date, array("VALUE" => "DATE")); // //$vevent->setProperty ("duration" , "PT24H"); // } $vevent->setProperty('location',$item->place_name); } $v->returnCalendar();
| ver. 1.4 |
Github
|
.
| PHP 8.1.34 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка