Ir al contenido principal

Entradas

Mostrando entradas de abril, 2011

Pantalla de Administración para Alfresco

En otras ocasiones, he posteado algunos scripts para facilitar la administración de usuarios/grupos en alfresco. El inconveniente que le encuentro a trabajar directamente con los scripts, es que para pasarle los datos (usuarios, grupos, listas,...) hay que editar directamente el js, lo que hace perder tiempo y añade la posibilidad de introducir errores en el script. He estado investigando un poco el tema de los WebScripts, y es precisamente lo que estaba buscando. Con ellos podemos interactuar con los scripts a través de amigables formularios. He creado una serie de ellos basándome en los js que ya tenía (con algunas modificaciones) y este ha sido el resultado. Añado algunas imágenes para que veáis cómo queda: - Pantalla principal de administración: - Ver grupos por usuario. Dado un usuario, te muestra los grupos a los que pertenece: - Inserta un usuario en varios grupos. Dado un usuario y una lista de grupos, añade este usuario a los grupos indicados: - Copia los permisos de un usua

Administración de usuarios/grupos en alfresco (II)

Siguiendo con los scripts para la administración de usuario y grupos en alfresco, añado algunos más que pueden resultar útiles: - grupos_por_usuario.js: Su propio nombre ya es bastante descriptivo, se trata de un script que dado un usuario, nos devuelve los grupos a los que este usuario está añadido. Y digo añadido y no pertenece, puesto que no nos da el listado de grupos padres-hijos a los que pertenece por herencia, sino directamente los grupos a los que este usuario ha sido añadido. //Variable a rellenar var usuario=""; //Funcion que comprueba si un usuario dado existe como hijo de un grupo dado function comprueba_grupo_usuario (grupo, usuario) { scr_grupo = groups.getGroup(grupo); var usuarios = scr_grupo.getChildUsers(); var encontrado = false; var i = 0; while ( i<usuarios.length && !encontrado) { if ( usuarios[i].getFullName() == usuario ){ encontrado = true; } i++; } return encontrado; } //Creamos el log que devolveremos var logFile = space.childBy

Parsear un fichero de configuración

Con frecuencia necesitamos cambiar ciertas variables o campos de un fichero de configuración para adaptarlo a nuestro sistema. Cuando esto se convierte en una tarea repetitiva y sobre todo cuando son muchos los valores a cambiar, se hace interesante automatizar este proceso. Una forma de hacerlo es a través de algún script, en mi caso lo he hecho en python. En dicho script definimos las variables a buscar y los nuevos valores a tomar. Recorrerá el fichero buscando coincidencias con las variables y les pondrá los valores que hemos indicado (independientemente de si tienen o no ya un valor). Sería algo así: #!/usr/bin/env python # -*- coding: iso-8859-15 -*- """ USO: sustituye.py fichero_origen > fichero_destino Este script toma un argumento por la linea de comandos: el nombre del fichero a parsear. El resultado lo podemos redirigir a un nuevo fichero o ver como quedaría por pantalla. """ from cStringIO import StringIO import re, sys #Conjunto de variable

Publicar el contenido de logs a través de tomcat

Se crea en $TOMCAT_HOME/conf/Catalina/localhost/ un xml para el nuevo contexto que se va a utilizar para acceder a los logs: logs.xml: <Context path="/logs" docBase="/ruta/de/logs" crossContext="false" debug="1" reloadable="true" > </Context> El docBase debe ser la ruta absoluta donde estén los logs que se quieran publicar. Y en el direcotorio de los logs, creamos un direcotorio WEB-INF, y dentro un web.xml con el siguiente contenido: <?xml version="1.0" encoding="ISO-8859-1"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <servlet> <servlet-name>logs</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> <init-para