LesOlivex

Servicios informáticos



Capturar WebCam desde consola

Category : Consola, Herramientas, Linux may 8th, 2019

Capturamos webcam y mostramos imagen desde consola.

Instalación para debian/ubuntu:

sudo apt install fswebcam qiv

Ejecutar:

fswebcam /tmp/test.png ; qiv /tmp/test.png

Herraminetas para MarkDown en debian/ubuntu

Category : Edición de texto, Herramientas, Linux may 8th, 2019
Herraminetas para MarkDown en debian/ubuntu

Instalación de herramientas en ubuntu/debian: sudo apt-get install pandoc texlive Ejemplo: pandoc ejemplo.md -o /tmp/ejemplo.pdf Editor gráfico Remarkable: Ejemplo de…

Convertir fichero csv a markdown (csv2md)

Convertir fichero csv a markdown (csv2md)

Instalación Ejemplo de uso En caso de que el separador sea un tabulador. Para definir el tabulador entre comillas tecleamos…

Redirigir http a https con htaccess

Category : apache sep 22nd, 2016
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.dominio.com/$1 [R,L]

Campos de usuarios en drupal

Category : Drupal, php, Programación mar 3rd, 2015

Drupal

Desde nuestro módulo podemos añadir o modificar los campos de un usuario.


//set up the user fields
$fields = array(
'name' => $data['UID'],
'mail' => ( $GLOBALS['anonymous'] ) ? 'test-'.$data['UID'].'@test.com' : $data['Email'],
'pass' => $password,
'status' => ( $data['Locked'] == 0 ) ? 1 : 0 ,
// 'init' => ( $GLOBALS['anonymous'] ) ? 'test-'.$data['UID'].'@test.com' : $data['Email'],
'language' => ( isset($langs[$data['Lang']]) ) ? $langs[$data['Lang']] : $langs['default'] ,
'roles' => array(
DRUPAL_AUTHENTICATED_RID => 'authenticated user',
),

// User custom fields
'ces_firstname' => array(LANGUAGE_NONE => array(array('value' => $data['Firstname']))),
'ces_surname' => array(LANGUAGE_NONE => array(array('value' => $data['Surname']))),
'ces_address' => array(LANGUAGE_NONE => array(array('value' => $data['Address1']."\n".$data['Address2']))),
'ces_town' => array(LANGUAGE_NONE => array(array('value' => $data['Address3']))),
'ces_postcode' => array(LANGUAGE_NONE => array(array('value' => $data['Postcode']))),
'ces_phonemobile' => array(LANGUAGE_NONE => array(array('value' => $data['PhoneM']))),
'ces_phonework' => array(LANGUAGE_NONE => array(array('value' => $data['PhoneW']))),
'ces_phonehome' => array(LANGUAGE_NONE => array(array('value' => $data['PhoneH']))),
'ces_website' => array(LANGUAGE_NONE => array(array('value' => $data['WebSite']))),

);

$user_drupal = user_save('', $fields);

Añadir protocolo en firefox

Category : Programación, Vim mar 3rd, 2015

Muy útil en la programación, ya que de una lista se presenta de archivos afectados, o de tareas pendientes sobre el código, se puede hacer que desde firefox abra tu editor con el archivo y la linea adecuada. El editor que utilizo es vim y una aplicación realizada en bash que me gestiona las tareas. Dentro de este programa se mira en que formato viene el archivo que se desea editar, si es el de firefox:

mt_editor_dev='/usr/bin/gvim -geometry 500x50 --servername $proyecto --remote-silent '

archivos=$@

if [ `echo "$archivos" | grep 'vim:'` ] ; then

   # También puede venir en formato web vim:/home/eduardo/archivo.php@linea

   local archivo="`echo $archivos | cut -d: -f2`"
   local linea="`echo $archivos | cut -d@ -f2`"
   archivo="`echo $archivo | cut -d@ -f1`"
   archivo=`echo $archivo | sed 's/^\///g' | sed 's/^\///g'`

   cmd="$editor +$linea $archivo"
   eval "$cmd"

fi

Este es una parte del script que utilizo y la que mira si el archivo que queremos editar viene en formato de firefox. Debería ser adaptado a cada caso. Se coloca el script en por ejemplo $HOME/bin/editar dandole permisos de ejecución:

chmod +x $HOME/bin/editar

En firefox añadimos la siguiente entrada tipo logico (si/no) nueva desde about:config:

network.protocol-handler.expose.vim

Y como valor false.

Esto hará que la próxima vez que firefox se encuentre con un enlace como vim://directorio/archivo.php@32 preguntara con que aplicación se quiere lanzar escogiendo $HOME/bin/editar

Tema hijo en wordpress

Category : Programación, Wordpress ene 27th, 2015

Creamos una carpeta en wp-content/themes/tema-hijo Añadimos nuestro functions.php que se sumara al del tema base Añadimos nuestro style.css que cogerá el del tema base:

/*
Theme Name: Tema hijo
Theme URI: -
Description: Tema derivado de Padre
Author: Eduardo Magrané
Author URI: -
Template: tema_padre
Version: 1.0
*/

@import url('../carpeta_padre/style.css');

#css_propio {
   border: 1px solid green;
}

* El Template: define el tema padre y debe ser el nombre del directorio que lo contiene.

Copiamos los archivos que queremos modificar como header.php a nuestro directorio

Recoger los campos personalizados de los posts en wordpress – post meta

Category : Programación, Wordpress ene 27th, 2015

Recoger los datos de los campos personalizados en los posts:

$datos = get_post_meta (get_the_ID(),array(), false);

if ( isset($datos['edad_de_los_hijos']) && ! empty($datos['fecha'][0]) ) {
   echo "<p><span class='info_taxonomia_dades_titol'>Edad de los niños: </span>"
       ."<span class='valor_fecha'>"
       .mysql2date(get_option('date_format'),$datos['fecha'][0], true)
       ."</span>"
       ."</p>";
   }

Recoger la información de los campos personalizados de una taxonomía en wordpress

Category : Programación, Wordpress ene 27th, 2015

Ejemplo sobre una taxonomía denominada where.

$slug_taxonomia_actual = get_query_var('where');
if ( $slug_taxonomia_actual ) {
   $taxonomia_actual = get_term_by('slug', $slug_taxonomia_actual,'where');
   $location = get_field('Location', 'where_'.$taxonomia_actual->term_id);
}

Presentar imagen aleatoria de un post en wordpress

Category : Programación, Wordpress ene 27th, 2015

Creamos shortcode de gallery con una sola imagen aleatoria sobre el post actual en single.php

// Presentar una sola imagen aleatoria del post

 $consulta_img = "SELECT ID FROM wp_posts 
    WHERE post_parent=".get_the_ID()." AND post_type like 'attachment' 
    ORDER BY RAND() LIMIT 1";

 $lista_imagenes = FALSE ;
 $resultado_img = $wpdb->get_results( $consulta_img );
 if ( count($resultado_img) != 0 ) $lista_imagenes = TRUE;

 if ( $lista_imagenes ) {

  $lista_imagenes = "";
  foreach ( $resultado_img as $fila ) { $lista_imagenes .= $fila->ID."," ; }
  $lista_imagenes = rtrim($lista_imagenes,',');

  // Galería de imágenes

  ?>
  <p>
  <div id="galeria_pais">
  <?php echo _do_shortcode('[_gallery columns="1" link="file" include="'.$lista_imagenes.'"]'); ?>
  </div>
  </p>
  <?php
}

Añado guiones bajos para que no lo interprete wordpress.