jueves, 23 de enero de 2014

Agrupando marcas de Openlayers en un mapa con Views


Si tenemos un tipo de contenido con geoField podemos hacer un bloque o pagina en la que aparezca un unico mapa con todas las localizaciones del geofield, para hacerlo :
  1. Creamos una vista, por ejemplo le llamamos Mapas, creamos una pagina con un formato OpenLayers Map.
  2. Añadimos OpenLayers Data Overlay
  3. Activamos Force Using fields en las settings del formato Openlayers Map
  4. Al activar la opcion anterior ya podemos añadir cambios a ls vista, añadimos el campo geofield y lo configuramos como en la imagen siguiente 
  5. A continuacion clickamos en el formato de la vista Openlayers map y activamos OpenLayers Data Overlay.
  6. Ahora en las settings de OpenLayers tendremos que elegir la fuente de los datos del mapa, que deben de ser WKT y el campo que las proporciona. Luego los campos que apareceran en el pop-up o tooltips. Solo deja elegir dos campos para el tooltip, pero no hay problema, si en Description Content elejimos la opcion <entire node> nos desplegara los Views Mode del node el cual podremos tunear a nuestro gusto y será displayado en el tooltip
  7. Si quieremos añadir filtros a la vista tambien podremos. 
Una vez seguidos estos pasos ya tendremos configurado el mapa para que nos muestre todas las marcas en uno solo. Al salvar esta vista lo que estamos haciendo es crear una capa para utilizar superpuesta sobre cualquiera de los mapas que tengamos creados en Openlayers. Para utilizarla no hay mas que editar el mapa correspondiente desde admin/structure/openlayers/maps y activar la capa desde la pestaña Layers & Styles


Ahora solo nos queda crear una vista para utilizar el mapa con la capa activada, formato de la vista
OpenLayers Map y en las settings seleccionamos el mapa que tiene la capa activada


Para activar los popups para que al picar encima de la marca nos salga la informacion del nodo hay que configurar en el Behaviours del mapa correspondiente la opcion Pop up for Features y por supuesto activar la capa correspondiente
El resultado final a toda pagina quedaria algo asi:



miércoles, 19 de septiembre de 2012

Bloques y argumentos

Problema:
Quiero que cuando se visualice  un nodo Articulo,  las imágenes que contiene ese nodo, se visualicen en un bloque en una de las regiones de la plantilla que utilizo.

Una solución:
  • Creo un bloque mediante una vista y selecciono los campos del tipo de contenido Articulo que quiero visualizar en el bloque.
  • Añado el Nid como contextual Filter
  • Activamos la opcion Provide default value, que le indica a Drupal que debe de hacer cuando se visualice el bloque y no haya ningún argmuento para el .Le decimos lo que debe de hacer mediante PHP, utilizando la funcion de Drupal menu_get_object que recibe como objeto por defecto el nodo que se esta visualizando, capturamos el Nid y lo retornamos como argumento.

  • Salvamos la vista y colocamos el bloque en la región correspondiente
Un inconveniente:
  1. Si activamos el nodo en una pagina sin un Nodo nos dará error  Notice: Trying to get property of non-object en eval() (liña 2....   por ese motivo debemos de asegurar que el bloque se visualice únicamente en los nodos correspondientes.
Saludos

martes, 24 de enero de 2012

Insertando un mapa en Drupal 7 con Openlayers

Por fin voy viendo la luz en este apasionante modulo. Openlayers nos permite añadir mapas de distintos proveedores a nuestra web. Los proveedores puede ser Google Maps, Virtual Earth, Yahoo Maps y OpenStreetMaps (OSM), este ultimo es un proyecto colaborativo para crear mapas libres y editables.

Al grano, empiezo explicando lo mas básico que es añadir un mapa con una localización en un tipo de contenido, mediante un campo del tipo GeoField.
Antes de nada debemos de habilitar los modulos necesarios que son:
  1. Geofield
  2. Libraries
  3. Openlayers (habilito Openlayers, Openlayers UI y Openlayers Views)
  4. GeoPHP es un extra, debemos de descargarlo a sites/all/libraries/geoPHP.
    • En la versión  7.x-2.0-beta7 no es necesario descargar esta libreria, por lo menos para las configuraciones básicas, es necesario y suficiente  el modulo geophp que tambien se integra con lal ibreria GeoPHP (23-01-2014)
  5. OpenLayers biblioteca de OpenLayers Javascript . Se descarga un tar.gz de openlayers.org y se descomprime en sites/all/libraries/openlayers

lunes, 23 de enero de 2012

Acciones y Triggers

Podemos crear acciones que respondan a eventos sobre los nodos, el sistema, los usuarios o las taxonomias.
Para poder configurarlos primeramente debemos de activar el modulo del core Trigger.
Por defecto, una vez habilitado el modulo, este tiene preconfiguradas una serie de disparadores o triggers. Para verlos hay que ir a Estructura->Disparadores.
Si queremos otras acciones que no nos viene configuradas las tendremos que configurar, para ello hay que dirigirse a Configuracion-> Acciones.
Por ejemplo, si queremos que los usarios al loguearse sean dirigidos a la pagina principal pues configuramos la accion Redirigir a la URL indicando a donde. Despues desde Disparadores crearemos un  DISPARADOR: DESPUÉS DE QUE UN USUARIO HAYA INICIADO SESIÓN   asociandole la acción del sistema Redirigir a una URL.




jueves, 22 de diciembre de 2011

Multicarga de archivos desde un campo imagen o archivo

Algun dia nos puede surgir la necesidad de añadir un campo del tipo imagen o archivo a un tipo de contenido con la caracteristica de que podamos añadir multiples archivos de una sola vez en vez de ir uno a uno.
En Drupal 6 esto se podia hacer con el modulo  Image FUpload pero no es compatible con Drupal 7. Para Drupal 7 encontre el modulo  Multiupload Filefield Widget que depende de Multiupload Imagefield Widget, los dos a fecha de hoy todavia en desarrollo.
Para trabajar con ellos no hay mas que activarlos y luego crear un campo en un tipo de contenido y definirlo como imagen o archivo y el tipo de control tiene que  ser Multiupload.

Solo tiene un inconveniente, aunque para mi ni lo es NO ES COMPATIBLE CON INTERNET EXPLORER.

viernes, 25 de noviembre de 2011

Mis extensiones en Chrome

Tengo el Chrome  como navegador principal y de las extensiones que uso recomiendo:
  1. Bitly, acortador de URLs
  2. Color Pick,  nos permite capturar el codigo de color de cualquier parte una web
  3. Boton de Me Gusta de Facebook

jueves, 17 de noviembre de 2011

Panels y rules

Si queremos controlar la visibilidad de un campo determinado en una pagina hecha con panels lo podemos hacer fácilmente añadiendo una Rules al campo elegido.