De lo que trata este artículo es de
que en nuestro portal de 'joomla' aparezca un módulo donde se muestre
un calendario con eventos que se importará de "Google Calendar", suponiendo que ya
estamos utilizando un calendario de este tipo para registrar nuestros
eventos públicos, de forma que no tengamos que volver a
introducirlos. Por tanto, no se trata de incrustar el código html del calendario que tengamos en "Google Calendar" dentro de un
artículo del portal o de forma similar a como se puede hacer en un blog, sino
de que nos aparezca en un módulo que podremos colocar en la posición
que queramos.
Para empezar lo que tenemos que hacer
es irnos a la “configuración” de nuestro calendario en “Google
Calendar”
Una vez dentro de la configuración, de
entre las opciones del menú superior, seleccionamos “Calendarios”,
y acontinuación se nos visulizan los calendarios disponibles que
tenemos, pinchando en el calendario que queremos importar.
Una vez que se ha hecho esto, aparecerá
una nueva ventana con los “Detalles del calendario seleccionado”,
y de nuevo, en el menú de la parte superior, seleccionamos la opción
“Compartir este calendario”. En la ventana que nos aparecerá
ahora, tendremos que marcar la casilla, si es que no lo está ya, de
“Hacer público este calendario” (Nota: sólo es necesario ésta,
así que si al marcarla se marca automática la otra casilla que está
justo debajo: “Compartir únicamente mi información de
libre/ocupado (ocultar detalles)”, la desmacaremos) y a
continuación haremos clic en “Guardar”.
Al hacer esto nos saldrá un mensaje de
advertencia diciéndonos que todo el mundo podrá ver nuestro
eventos, pero de eso es de lo que se trata, que todo el mundo pueda
verlos o consultarlos en nuestro portal. Le decimos que “SI”,
volvemos al calendario y nos salimos de la sesión de “Google
Calendar”, ya no la necesitaremos abierta.
Ahora lo que tenemos que hacer es
instalar una nueva extensión para mostrar el calendario como un módulo
y poder importarlo desde “Google Calendar”en nuestro portal Joomla
2.5, para ello, lo primero que tenemos que hacer es bajarnos dicha
extensión, en concreto la “gcalendar” (lo podemos hacer desde aquí).
Para instalar la extensión, entramos
como administrador en nuestro portal, desde el 'backend' y nos vamos
a "Extensiones->Gestor de Extensiones" y ahora selecconamos el
paquete con la extensión que no hemos bajado antes y pulsamos sobre
“Subir e instalar”.
Si todo ha ido bien y no se ha
producido ningún error, se nos habrán instalados varios módulos y
algún que otro plugin, aunque por defecto aparecerán todos
desactivados/despublicados. Para lo que queremos conseguir sólo
necesitaremos publicar el módulo de “GCalendar - Información
general” , y esto lo conseguimos hacer desde "Extensiones->Gestor
de Módulos", buscamos el que necesitamos y lo activamos/publicamos.
Para poder ver el módulo en nuestro
portal (aunque de momento sin ningún calendario importado),
necesitamos hacer clic sobre el nombre de este módulo que acabamos
de publicar, para poder acceder a su configuración, donde tendremos
que cambiar la posición y el lugar donde queremos que aparezca en
nuestra plantilla, así como si queremos que aparezca en todas las
páginas o en algunas en concreto (“Asignación de menú”); en mi
caso, la opción “Mostrar Título”, la pongo como “Oculta”.
Podemos modificar si queremos, el día en que queremos que empiece la
semana. Un posible ejemplo de como quedaría la configuración es:
Bien, hasta aquí ya tenemos nuestro
módulo de Gcalendar instalado y situado en la posición que nos
interesa de nuestro portal, ahora sólo hay que importar y añadirle
nuestro calendario de “Google Calendar”, porque el que aparece
ahora sólo es un calendario sin contenido, sin eventos.
Para importar el calendario tendremos
que ir a "Componentes->GCalendar-> Panel de Control" y pinchamos
sobre el botón de “Importar Calendario”. En la nueva ventana que
nos aparece, tan sólo tendremos que introducir el usuario que tiene
los permisos adecuados del calendario y la contraseña (o dicho de
otra forma, los datos que introducimos para acceder el “Google
Calendar”) y una vez introducidos hacemos clic el botón de
“Login”.
Si los datos introducidos son
correctos, nos aparecerá el nombre del calendiaro “sombreado”,
es decir, nos lo ha “importado” y ahora tendremos que “añadirlo”,
para ello simplemente marcamos su casilla y pulsamos sobre el botón
“Añadir”, y ahora ya nos aparecerá como activo.
Si hacemos clic sobre el calendario
importado y añadido, accederemos a la sección de “Detalles”, en
la que en principio no tenemos que hacer nada, puesto que nuestro
calendario está puesto como público (las opciones de “Magic
Cookie” o “Usuario/Contraseña” es para cuando el calendario no
está puesto como “Público”, así que no tenemos que modicar
nada). Si desea se puede modificar el color (este color es para
indicar en el calendario, los dias en los que hay eventos, y es útil
cuando se importan más de un calendaro, ya que al hacer clic sobre
un día del calendario, por ejemplo, nos aparecerían todos los
eventos de los calendarios importados y añadidos, pero con distinto
color los eventos de cada calendario; si sólo tenemos un calendario
nos daría igual).
Pues con esto en principio ya podríamos
ver nuestro calendario de Google Calendar importado en nuestro módulo
del portal, e incluso podemos hacer clic en un día determinado para
ampliar el calendiario (aparecería ahora en la parte central de
nuestro portal) y poder ver además, los eventos por día, semana o
meses...
Si tenemos algún problema, es decir,
no se visualizan los eventos de nuestro calendario, podremos hacer un
chequeo para ver que error se está produciendo, para ello, desde el
'backend' y como administrador, nos iremos a
"Componentes-> GCalendar-Panel de
Control-> Herramientas-> Comprobación del Sistema".
Si todo está OK, nos debería salir
algo como esto:
Otra cosa que puede sucedernos, es que
modifiquemos nuestro 'Google Calendar', y los cambios no se reflejen
automáticamente en nuestro portal, pero esto puede ser debido a que
el calendario en nuestro portal estaría en caché, así que para
asegurarnos de que es esto, podemos limpiar la caché, pero me
refiero a LA DEL PORTAL, no a la del navegador. Para limpiar la caché
de nuestro portal, nos vamos a “Sitio->Mantenimiento-Limpiar la
Caché” y ahí limpiar lo que nos aparezca...
muy bien explicado, gracias! para gente como yo estos blogs son una panacea.
ResponderEliminarPues nada, me alegro que te haya servido de algo, y gracias a ti por leer este blog, que lo que intenta es compartir experiencias y conocimientos o divulgar estos de un modo u otro. Un saludo.
EliminarEstimado amigo,
ResponderEliminarFelicitarlo por tan clara explicación. Tengo algunas consultas a ver si me puedes ayudar:
- Desde joomla, puedo agregar eventos al calendario y/o modificar los ya ingresados. O solo puedo ver solamente.
- Como hago para que solo algunos usuarios de mo web joomla puedan ver el calendario y no todo el mundo.
Gracias
Gracias a ti por leer este blog. En cuanto a tus consultas te respondo.
Eliminar- Con el componente "GCalendar" desde joomla me temo que no vas a poder agregar/modificar eventos y que estos te aparezcan en google calendar, tan sólo te permite importarlos y visualizarlos. Para lo que tu buscas tendrías que instalar el paquete "GCalendar Action Pack", aunque yo no lo he probado porque para las necesidades que tenemos con nuestra web nos viene bien simplemente con el "GCalendar". Este paquete de "GCalendar Action Pack", añade funciones extras al GCalendar que ya tengas instalado, tales como crear y editar eventos directamente desde tu página "GCalendar" y propagarlos directamente a Google calendar. Te dejo aquí un enlace si quieres más información sobre este paquete: https://g4j.digital-peak.com/extensions/gcalendar-action-pack
¿Cuál es la única pega? pues que no sé exactamente si para poder bajártelo tienes que pasar por caja o hacer una pequeña contribución/donación, pero esto lo puedes mirar en el enlace que te he puesto.
- En cuanto a tu segunda pregunta, y referida siempre al "GCalendar" (al básico, para que nos entendamos), así a bote pronto y sin hacer nada más, lo que puedes hacer por ejemplo, si NO quieres que todo el mundo cuando acceda a tu web vea el calendario, es hacerlo visible sólo para lo usuario registrados, o por los administrados que tienen un permiso especial. Para esto tendrías que ir a Extensiones->Gestor de módulos, pinchar en seleccionar GCalendar, y el apartado de "Detalles", hay una casilla que es "Acceso", ahí por defecto tendrás: Public (Público, para todo el mundo), Registered (sólo para usuarios registrados en el portal) o Special (para administradores del portal, además del superadminitrador). Esto sin hacer nada, porque también puedes instalar algún complemento para poder ampliar esta lista (Public, Registered, Special), siempre que tampoco quieras que todos los usuarios registrados puedan verlo y sólo algunos de ellos con lo que tendrías que crear tu propia ACL (Lista de control de acceso)....
Muy bien explicado! Mil gracias!
ResponderEliminarme sale este error al querer logearme... ha que se debe, o que tengo q hacer para poder solucionarlo y acceder a google
ResponderEliminarUnable to Connect to ssl://www.google.com:443. Error #63850704: Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?
Pues así sin más pistas de en qué tipo de servidor estás trabajando, que éstas utilizando, etc.. lo único que puedo decirte es lo que te dice el error, o sea, que parece un tema de configuración de tu PHP, donde igual no está habilitado el protocolo de transporte "ssl". En algunos sitios he visto que este error se ha resuelto tocando un fichero de configuración el "php.ini", y buscando la línea que contiene:
Eliminar;extension=php_openssl.dll
En esta línea, lo que habría que hacer es quitar el "punto y coma" inicial, o sea, descomentar la línea para que tenga efecto y no la tome como un comentario. Una vez salvados los cambios, habría que reiniciar el Apache, porque sino, aunque se haya cambiado el fichero no se tendrían en cuenta los cambios en el servidor.