Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
evsmash/widgets / libs / Http / Calendars.php
Size: Mime:
<?php

namespace Evsmash\Widgets\Http;

use Evsmash\Core\Http\Base;

use Evsmash\Core\Helpers\Date;
use Evsmash\Core\Helpers\H;
use Evsmash\Core\Helpers\Redirect;
use Evsmash\Core\Helpers\Sanitize;
use Evsmash\Core\Input\Route;
use Evsmash\Core\Simpy\Element;

use Evsmash\Settings\Widget;

class Calendars extends Base {

	// apple
	public function apple() {

		// widget
		$widget = Element::check(new Widget, Route::id());

		// recipient
		$settings = settings('widget', ['name' => 'evsmash-widgets-misc-countdown', 'id' => $widget->id]);

		// data
		$date = Date::modify($settings->date, '-2 hour', 'Ymd').'T'.Date::modify($settings->date, '-2 hour', 'His').'Z';
		$text = Sanitize::clean($settings->description).' - '.cfg('domain');
		
		// content
		$content = 'BEGIN:VCALENDAR%0D%0AVERSION:2.0%0D%0APRODID:opis%0D%0ABEGIN:VEVENT%0D%0ADTSTART:'.$date.'%0D%0ADTEND:'.$date.'%0D%0ADTSTAMP:'.$date.'%0D%0ASUMMARY:'.$text.'%0D%0AUID:11584%0D%0AEND:VEVENT%0D%0AEND:VCALENDAR%0D%0A';
		
		// file
		header("Content-type:text/calendar");
        header('Content-Disposition: attachment; filename="ubranesklep.ics"');
        header('Content-Length: '.strlen($content));
        header('Connection: close');
        echo $content;
        die();

	}

	// google
	public function google() {

		// widget
		$widget = Element::check(new Widget, Route::id());

		// recipient
		$settings = settings('widget', ['name' => 'evsmash-widgets-misc-countdown', 'id' => $widget->id]);

		// data
		$date = Date::modify($settings->date, '-2 hour', 'Ymd').'T'.Date::modify($settings->date, '-2 hour', 'His').'Z';
		$text = Sanitize::clean($settings->description).' - '.cfg('domain');

		// link
		$link = 'https://calendar.google.com/calendar/render?action=TEMPLATE&dates='.$date.'%2F'.$date.'&details=&location=&text='.$text;
		
		// redirect
		Redirect::to($link);		

	}

}