| Current Path : /home/jlgagfroyt/www/AAOLD/components/com_jevents/helpers/ |
| Current File : /home/jlgagfroyt/www/AAOLD/components/com_jevents/helpers/jevExportHelper.php |
<?php
/**
* JEvents Component for Joomla
*
* @version $Id: jevExportHelper.php
* @package JEvents
* @copyright Copyright (C) 2008-2019 GWE Systems Ltd
* @license GNU/GPLv2, see http://www.gnu.org/licenses/gpl-2.0.html
* @link http://www.jevents.net
*/
// no direct access
defined('_JEXEC') or die;
/**
* JEvents component helper.
*
* @package Jevents
* @since 1.6
*/
use Joomla\String\StringHelper;
class JevExportHelper {
static function getAddToGCal($row)
{
$eventData = JevExportHelper::getEventStringArray($row);
$urlString['title'] = "text=".$eventData['title'];
$urlString['dates'] = "dates=".$eventData['dates'];
$urlString['location'] = "location=".$eventData['location'];
$urlString['trp'] = "trp=false";
$urlString['websiteName'] = "sprop=".$eventData['sitename'];
$urlString['websiteURL'] = "sprop=name:".$eventData['siteurl'];
$urlString['details'] = "details=".$eventData['details'];
$link = "http://www.google.com/calendar/event?action=TEMPLATE&".implode("&", $urlString);
return $link;
}
static function getAddToYahooCal($row)
{
$eventData = JevExportHelper::getEventStringArray($row);
$urlString['title'] = "title=".$eventData['title'];
$urlString['st'] = "st=".$eventData['st'];
$urlString['et'] = "et=".$eventData['et'];
$urlString['rawdetails'] = "desc=".$eventData['details'];
$urlString['location'] = "in_loc=".$eventData['location'];
$link = "http://calendar.yahoo.com/?v=60&view=d&type=20&".implode("&", $urlString);
return $link;
}
static function getEventStringArray($row)
{
$urlString['title'] = urlencode($row->title());
$params = JComponentHelper::getParams(JEV_COM_COMPONENT);
$tz = $params->get("icaltimezonelive", "");
if ($tz){
$urlString['dates'] = JevDate::strftime("%Y%m%dT%H%M%S",$row->getUnixStartTime())."/".JevDate::strftime("%Y%m%dT%H%M%S",$row->getUnixEndTime())."&ctz=".$tz;
}
else {
$urlString['dates'] = JevDate::strftime("%Y%m%dT%H%M%SZ",$row->getUnixStartTime())."/".JevDate::strftime("%Y%m%dT%H%M%SZ",$row->getUnixEndTime());
}
$urlString['st'] = JevDate::strftime("%Y%m%dT%H%M%SZ",$row->getUnixStartTime());
$urlString['et'] = JevDate::strftime("%Y%m%dT%H%M%SZ",$row->getUnixEndTime());
$urlString['duration'] = (int)$row->getUnixEndTime() - (int)$row->getUnixStartTime();
$urlString['duration'] = (int)$row->getUnixEndTime() - (int)$row->getUnixStartTime();
$urlString['location'] = urlencode(isset($row->_locationaddress) ? $row->_locationaddress : $row->location());
$urlString['sitename'] = urlencode(JFactory::getApplication()->get('sitename'));
$urlString['siteurl'] = urlencode(JUri::root());
$urlString['rawdetails'] = urlencode($row->get('description'));
$urlString['details'] = strip_tags($row->get('description'));
if (JString::strlen($urlString['details'])>500) {
$urlString['details'] = JString::substr( $urlString['details'], 0, 500 ) . ' ...';
//Check if we should include the link to the event
if ($params->get('source_url', 0) == 1) {
$link = $row->viewDetailLink($row->yup(),$row->mup(),$row->dup(),true, $params->get('default_itemid', 0));
$uri = JURI::getInstance(JURI::base());
$root = $uri->toString(array('scheme', 'host', 'port'));
$urlString['details'] .= ' ' .JText::_('JEV_EVENT_IMPORTED_FROM') .$root . JRoute::_($link, true, -1);
}
}
$urlString['details'] = urlencode($urlString['details']);
return $urlString;
}
}