ConfiguracionDrupal¶
Activamos LDAP:
- LDAP Integration
- Authentication
- Groups
Añadir server:
localhost
dc=sidelab,dc=es en Base DNs
Esto no lo vamos a activar de momento porque no sabemos si nos hará falta:
Ir a grupos:
Marcar Group by entry
LDAP DNs:
ou=groups,dc=sidelab,dc=es
Attribute:
memberUid
Activar opción clean urls
Activar módulo Secure Pages
- Al activar el módulo surgen unas alertas de warnings que se repiten en todas las pantallas (tanto de administración, como las de "cara al público") del tipo:
warning: Parameter 2 to securepages_link_alter() expected to be a reference, value given in /var/sidelab/includes/common.inc on line 2839.
warning: Parameter 2 to securepages_link_alter() expected to be a reference, value given in /var/sidelab/includes/common.inc on line 2839.
Siguiendo soluciones a errores parecidos, y entendiendo lo que significa la alerta, hemos buscado la funcion securepages_link_alter(), la cual se
encuentra en el archivo modules/securepages/securepages.module. Su cabecera es function securepages_link_alter (&$links , &$node ). La modificamos
quitandole el simbolo "&" al segundo argumento, por lo que queda: function securepages_link_alter (&$links , $node ), dejandose de producirse así la
alerta.
Modificar Site Configuration > File system (directorio de ficheros de drupal):
files
Activar módulo profiles:
incluir campo url para la página personal
Activar módulo Views:
- Views
- Views exporter
- Views UI
Activar módulo Organic Groups:
- Organic groups
- Organic groups access control
- Organic groups actions
Activar dentro de Otros:
- FCKeditor
Recordar que el módulo no viene completo desde los repositorios drupal, hay que bajarse el resto del contenido desde la página del autor
Para activar el manejor de imagenes:
- Image
- ImageAPI
- Image Attach
- Image Browser
- ImageAPI GD2
- ImageMagick Advanced Options
- ImageAPI ImageMagick
Despues de esta instalación han surgidos dos errores, referentes a los módulos FCKeditor, e Imagemagick.
El referente a ImageMagick es:
ImageMagick advanced options ImageMagick image toolkit is not properly installed
The modules/image/image.imagemagick.inc file must be copied to includes in order for the ImageMagick image toolkit to function.
El cual se solucionó copiando el archivo image.imagemagick.inc y copiandolo en la carpeta includes, como revela el error.
El referete a FCKeditor es:
FCKeditor 2.6.6
You are using a feature that requires $cookie_domain to be set, but it is not set in your settings.php (either built-in filebrowser or quick uploads are enabled in the Advanced profile).
Activar el módulo Agregator.
- Administer -> feed agregator. Se añade la ruta del feed.
- Site building -> Blocks. Se añade un bloque con el agregador.
- En Administer -> Permissions. Se activa "access news feeds" para los roles que se quiera que puedan ver el resumen de los feed.
Conseguir nube de tags.
- Seguir instrucciones de la resolucion del punto 8.2 [[http://blog.sidelab.es/?s=8.2]]
Resumido:
- Activar Taxonomy y crear vocabulario.
- Instalar módulo Tagadelic
Activar path y pathauto.
- Activar los módulos path, token, y pathauto.
Activar autotagger:
- Voy a seguir los pasos que hice en el drupal de desarrollo, punto 8.2
( [[http://blog.sidelab.es/?s=8.2]] )
- Al igual que en el blog de desarrollo surge un warning cuando quieres crear contenido:
warning: Missing argument 2 for variable_get(), called in /var/sidelab/modules/autotag/autotag.form_alter.inc on line 46 and defined in /var/sidelab/includes/bootstrap.inc on line 502.
He conseguido quitar la alerta de warning.
Para ello, he modificado el archivo /var/sidelab/modules/autotag/autotag.form_alter.inc.
Código anterior:
if(
variable_get('autotag_without_user_input',0) ||
!count($hide_vids) ||
strpos($_GET['q'], 'admin/content/node_import') !== FALSE ||
in_array($form['type']['#value'], variable_get('autotag_dont_autotag'))
)
Se observa que la función variable_get() tiene dos parámetros, aunque supongo que el segundo no se utiliza para nada. En la última parte de la condición se vuelve a llamar a la función pero sólo con un parámetro. Si le añadimos el parámetro "0" al igual que en la primera llamada. La alerta
desaparece.
Para cerrar la incidencia es necesario comprobar que el autotagger sigue funcionando.
Código actual:
if(
variable_get('autotag_without_user_input',0) ||
!count($hide_vids) ||
strpos($_GET['q'], 'admin/content/node_import') !== FALSE ||
in_array($form['type']['#value'], variable_get('autotag_dont_autotag',0))
)
Resolución del error en FCKeditor.
El error se produce porque el código del FCKeditor no esta preparado para un built-in file browser.
Para solucionarlo lo primero que tenemos que hacer es en el archivo /sites/default/settings.php es descomentar una variable para que admita cache:
$cookie_domain = 'www.sidelab.es';
Despues dentro del módulo viene un readme.txt donde vienen más instrucciones para conseguir un built-in file browser:
How to enable the built-in file browser
------------------------------
The editor gives the end user the flexibility to create a custom file browser
that can be integrated on it.
The included file browser allows users to view the content of a specific
directory on the server and add new content to that directory
(create folders and upload files).
1. To enable file browsing you need to edit the connector configuration file
in your fckeditor module directory, the file should be in:
sites/all/modules/fckeditor/fckeditor/editor/filemanager/connectors/php/config.php
In this file(s) you will need to enable the file browser by adding one
line that includes file with the special authentication function for
Drupal (filemanager.config.php). Add this code:
require_once '../../../../../filemanager.config.php';
straight below this line:
$Config['UserFilesAbsolutePath'] = '' ;
The config.php file also holds some other important settings, please
take a look at it and adjust it to your needs (optional).
2. Locate file named settings.php inside your drupal directory
(usually sites/default/settings.php) and set $cookie_domain variable to the
appropriate domain (remember to uncomment that line). If you not do this,
FCKeditor will claim that file browser is disabled
3. Enabling file uploads is a security risk. That's why you have to grant a
separate permission to enable the file browser to certain groups.
In "Administer > User Management > Permissions" assign the
"allow fckeditor file uploads" permissions.
4. Lastly, adjust the File browser settings for each profile: set "File browser type" to "Built-in filebrowser"
- He modificado el pathauto para que las páginas hijas, se construyan bajo la url del padre, mediante esta configuración:
[hierarchypath]/[title-raw]
Hay que recordar que tienen que ser obligatoriamente hijas de alguien, para que tengan esta configuración.
- He creado una vista, con un display tipo bloque, en el que se muestran por separado los "pfc" en los que uno esta inscrito ( pcf_my ), y otra vista, con su respectivo bloque, para que se muestren los "projects" en los que se esta inscrito ( project_my ).
Tambien se ha creado una vista, con un display tipo página que se muestra como un primary link, en el que estan todos los "pfc" ( og_copia ) y otra vista igual que la anterior pero con todos los "projects" ( projects_all ).
- He agregado un campo "Alumno" al tipo de contenido "pfc". Es un campo tipo texto, donde se pueden escribir 1 o 2 nombres y no es obligatorio.
- Al editar contenido, surgen unas alertas de warnings producidas por el módulo autotaggin:
warning: Invalid argument supplied for foreach() in /var/sidelab/modules/autotag/autotag.functions.inc on line 193.
Este warning es un bug documentado, y tiene su parche en
la direccion [[http://drupal.org/files/issues/autotag-issue_695120.patch]]. En el cuentan como tienes que modificar la instrucción:
foreach($_POST['files'] as $fid => $file_details){
por esta otra:
foreach((array)$_POST['files'] as $fid => $file_details){
Con esto queda solucionada la alerta. En el mismo parche viene información sobre el primer warning que solucione nada más instalar el módulo. Mi solución era colocar un 0 como segundo parámetro de la función. La solución del parche es colocar "array()" como segundo parametro. Dejo esta segunda solución por ser la oficial, me llena de orgullo haber solucionado por mi cuenta un bug oficial de drupal, aunque sea tan poquita cosa.
- He instalado el módulo Organic Group permissions, por si puede aportar alguna funcionalidad necesaria.
- He conseguido que las páginas que se van a agregando a un "pfc" se ordenen mostrandose primero las más antiguas, modificando la view: og_ghp_ron.
- He modificado los permisos, para que los usuarios registrados puedan ver toda la información de un "pfc"
- He modificado la configuración de OG para que al crear un contenido en un grupo, no se pueda elegir la audiencia. Asi no se puede crear contenido que no pertenezca a otro grupo.
- He creado una primera versión de un nuevo content type llamado "Articulo" con las indicaciones de Patxi.
- He creado varias versiones de vistas en las que se muestra los Articulos publicados, clasificados por Autor.
- Para realizar unas pruebas he instalado los módulos Linkit y Path Filter. Las pruebas estaban orientadas a obtener un linkador en el editor de
textos, que permitiera linkar hacia contenido propio de forma visual. De momento las alternativas que he barajado no son válidas, porque nece-
sitan de un editor de texto determinado, y no vale el que tenemos actualmente instalado. Las opciones son estas:
[[http://drupal.org/project/linkit]]
[[http://drupal.org/project/tinymce_node_picker]]
[[http://drupal.org/project/easylink]]
[[http://drupal.org/project/linktocontent]]
- Para crear una página por usuario con determinada información, se debe de modificar la pagina del perfil del usuario. Para investigar sobre el tema
me he instalado el módulo "Advanced Profile Kit".
- Se puede configurar la página del perfil de usuario sin el módulo APK, por lo que voy a proseguir con el módulo desactivado. Cuando entras en la
página del perfil, una vez que le has cambiado el aspecto, surgen unas 10 alertas asi:
warning: Parameter 3 to block_user() expected to be a reference, value given in /var/sidelab/includes/module.inc on line 483.
Asi que me he ido al archivo indicado, y la linea que produce los warning es:
$result = call_user_func_array($functions, $args);
La he modificado por esta otra:
$result = call_user_func_array($functions, &$args); Para que el segundo argumento sea pasado por referencia (creo). Con ello los errores han
desaparecido.
- Deshabilitado el módulo hierarchy.
- He creado el tipo de contenido Docencia
- He modificado el aspecto de la home.
- He modificado la hoja de estilos del Tema actual, para quitar el color naranja de los bloques, ya que lo estaba empezando a odiar con todas mis
fuerzas. Le he puesto el color azul que tendrían si estuviesen colocados en la parte derecha.
En themes/waffles/style.css
Modificando la etiqueta:
#sidebar-first h2.block-title{
/*background-color:#FF6600;*/ ->Color naranja
background-color:#51748C; ->Color azul
- He creado una página mediante paneles flexibles, y la he rellenado con las tres vistas correspondientes a los tres tipos de Docencias disponibles
- He tenido que desinstalar el anterior FCKeditor, e instalarlo bajo el módulo WYSIWYG. De esta forma he podido también instalar el módulo Node Picker
para tener la funcionalidad de hacer links a contenidos internos. Es posiblo que haya que volver a configurar FCKeditor.
- He añadido campos user reference a articulo, por si eso puede solucionar los problemas de las vistas.
- Con el objetivo de añadir iconos a los proyectos he realizado las siguientes acciones:
* He instalado los módulos: Filefield e ImageField.
* Las guía de uso de ImageField se puede encontrar en [[http://drupal.org/node/609628]]
* He configurado los campos del tipo de contenido Proyecto, añadiendole un campo de tipo "file" y de widget "image". He añadido limites a la reso-
lución permitida para el logotipo de 10x10<logotipo<20x20. Se le puede indicar también las extensiones permitidas y demás configuraciones.
* He añadido el campo "logotipo" a las vistas de los proyectos. Diciendole que es una imagen.
- He creado un nuevo input format "formato sin editor" para los campos en los que quiero escribir texto, pero no me interesa que aparezca el editor.