Script Add para Google Calendar

  • Por
Clase PHP que nos permite crear un botón con información para agregar un evento, cita, etc. a nuestro calendario Google.
En el artículo de hoy vamos a ver una clase escrita en PHP 5 que nos permite mostrar botones en nuestra web que creen eventos en nuestros Google Calendar.

La creación de dicha clase pertenece a John Wetsell y puedes encontrar más sobre él en la ficha de PHPClasses.

Esta clase tiene una licencia GPL, por lo que podemos utilizarla en nuestros proyectos sin ningún problema.

Podemos pasar a describir un poco su funcionamiento y luego ver como se implementa.

Lo primero que tenemos que saber es que toma como parámetros de las fechas de inicio y fin, el título y la ubicación de un evento dado.

Es decir nosotros le decimos los datos del evento y la clase nos crea un botón que nos permite agregar dicho evento a nuestro calendario de Google.

Para poder utilizar esta clase necesitamos añadir una carpeta en nuestro servidor llamada add-calendar. Dentro de dicha carpeta tenemos otra carpeta con las librerías necesarias para su funcionamiento. En este caso se llama _classes.
Bien pues con eso ya tenemos lista la clase para poderla utilizar.

Ahora vamos a ver el código necesario para poder trabajar con dicha clase.

<?php

require('_classes/Autoloader.class.php');
Autoloader::setCacheFilePath('tmp/class_path_cache.txt');
Autoloader::excludeFolderNamesMatchingRegex('/^CVS|..*$/');
Autoloader::setClassPaths(array(
'_classes/',
));
spl_autoload_register(array('Autoloader', 'loadClass'));


echo "<pre>";
$params = array('title' => 'Prueba',
'datetime' => array('start' => '2013-06-31 20:00', 'end' => '2013-07-01 02:00'),
'location' => 'Curro',
'description' => 'Probando esta clase.'
);

$gCal = GoogleCalendar::createEventReminder($params);
echo $gCal;

Comentamos el código anterior:

Lo primero que tenemos que hacer es incluir la carpeta _classes que comentamos anteriormente.
A continuación realizamos una sería de instrucciones que no varían nunca, es decir, podemos copiar y pegar, y básicamente lo que hacen es crear un archivo temporal y un array.

Todo eso es código obligado y solo fijaros en las rutas de la carpeta _classes y del archivo temporal, deben ser correctos o no funcionará vuestro código.

A continuación metemos en el array que hemos creado antes los datos de nuestro evento. Si os fijáis, es bien sencillo, tan sólo tenemos que darle un titulo, una fecha de inicio, otra de fin, una localización y la descripción del evento.

En este código hemos puesto los datos directamente pero ya depende de vosotros como añadir dichos datos, ya sea directamente o desde una base de datos, etc.

Para finalizar lo que hacemos es crear el link (con aspecto de botón) con lo que hemos pasado en el array, y lo mostramos en la parte del código que necesitemos.

Como podéis ver es muy sencilla de utilizar y te puede venir muy bien si por ejemplo tienes una web donde muestras información sobre conciertos, eventos sociales, etc. Les puedes dar la posibilidad a tus visitantes de agregar los eventos a sus calendarios.

Si queréis descargaros la clase u obtener más información sobre Add to Google Calendar podéis visitar la página de PHPClasses que contiene toda la información necesaria.

Autor

Sara Alvarez

Equipo DesarrolloWeb.com

Compartir

Comentarios

Diego

02/7/2013
Ejemplo
antes en cada una de las explicaciones ponian un link para ver una página de ejemplo. Ahora no lo veo.
Gracias

OTqD2fAg

20/10/2013
1yAOfqg6vBTW
Cartuchos de tintas copaltibmes de calidad Thanks a lot for giving everyone a very remarkable chance to check tips from this website. It is always so cool plus packed with a lot of fun for me personally and my office friends to visit your web site more than 3 times weekly to read through the ne

1985richard_tex_tex

20/12/2013
Error 75
buenos dias

estuve revisando el codigo y veo que me arroja error 75 en la clase de GoogleCalendar hay una parte que tiene +=$this->config... supongo que es por ahi el error... alguien sabe como corregir este error... les dejo los mensajes de errores que me arroja...

Fatal error: Using $this when not in object context in C:AppServwwweventosControl\_classesGoogleCalendar.class.php on line 75

Warning: file_put_contents(C:/AppServ/www/eventos/control/tmp/class_path_cache.txt) [function.file-put-contents]: failed to open stream: No such file or directory in C:AppServwwweventosControl\_classesAutoloader.class.php on line 149

Fatal error: Autoloader could not write the cache file: C:/AppServ/www/eventos/control/tmp/class_path_cache.txt in C:AppServwwweventosControl\_classesAutoloader.class.php on line 151