domingo, 3 de noviembre de 2013

Plugin Banco del tiempo para Wordpress

En breve saldrá a la luz el plugin de Banco del tiempo para Wordpress!

Os dejo el enlace: http://www.time-bank.info/

Intercambia tiempo entre los usuarios de wordpress de forma segura y transparente, con un funcionamiento similar al sistema de transacciones bancarias.

viernes, 25 de octubre de 2013

Bash / shell linphonecsh hang pick swap commands

Hi!  I have been working on some scripts that I would like to share ;)

We have done a LAMP CRM system + asterisk + linphonecsh commands.

The Hotkeys to execute Shell / Bash commands are (works with icewm):
Pick Up call, Hang up call, Swap between a Streaming running call and a Paused call
.

These scripts are working incredible for us!
Cheers,


FILE: /home/.icewm/keys
key "Ctrl+1" linphonecsh init
key "Ctrl+2" linphonecsh register --host asterisk --username YOURUSERNAME --password YOURPASSWORD
key "Ctrl+0" linphonecsh exit

key "Ctrl+Up" /home/guillermo/pickup
key "Ctrl+Down" /home/guillermo/hangup
key "Ctrl+s" /home/guillermo/swap


FILE: home/.icewm/startup
linphonecsh init
sleep 4
linphonecsh register --host asterisk --username YOURUSERNAME --password YOURPASSWORD


FILE: home/pickup
# Pickup calls linphonecsh

linphonecsh generic calls | grep -E 'IncomingReceived' | awk '{ print $1 " " $5 " " $6 " " }' | tr -d '|' >hanguparchive

# grep search incoming calls

awk -v qt="'" '{

    # Vars definition
    estado1=$2; id1=$1; 
  
    system ("linphonecsh generic " qt "answer " id1 qt );

}' hanguparchive


FILE: home/hangup
# Hangup calls linphonecsh

linphonecsh generic calls | grep -E 'StreamsRunning' | awk '{ print $1 " " $5 " " $6 " " }' | tr -d '|' >hangdownarchive

awk -v qt="'" '{

    # Vars definition
    estado1=$2; id1=$1; 
       
    system ("linphonecsh generic " qt "terminate " id1 qt );

}' hangdownarchive


FILE: home/swap
# SWAP PAUSED and STREAMING CALLS

linphonecsh generic calls | grep -E 'Paused|StreamsRunning' | awk '{ print $1 " " $5 " " $6 " " }' | tr -d '\n' | tr -d '|' >callsarchive

awk -v qt="'" '{

    # Var definitions (estado = status)
    estado1=$2; estado2=$4; id1=$1; id2=$3;

    # Si hay 2 llamadas activas:
    if ((estado1)&&(estado2)) { 
       
        # case 1: status1 Active (or running) and 2 paused
        if ((estado1=="StreamsRunning")&&(estado2=="Paused")){
        system ("linphonecsh generic " qt "pause " id1 qt );
        #system ("sleep 0.4");
        system ("linphonecsh generic " qt "resume " id2 qt );       
        }       
       
        # case 2: status1 Paused and 2 Running
        if ((estado1=="Paused")&&(estado2=="StreamsRunning")){
        system ("linphonecsh generic " qt "pause " id2 qt );
        #system ("sleep 0.4");
        system ("linphonecsh generic " qt "resume " id1 qt );       
        }       

        # case 3: both calls in paused
        if ((estado1=="Paused")&&(estado2=="Paused")){
        system ("linphonecsh generic " qt "resume " id1 qt );       
        }

        # case 4: both calls are active
        if ((estado1=="StreamsRunning")&&(estado2=="StreamsRunning")){
        system ("linphonecsh generic " qt "pause " id2 qt );       
        }

    # Only one call running  
    }else{

        if (estado1=="Paused"){
        system ("linphonecsh generic " qt "resume " id1 qt );       
        }       
        if (estado1=="StreamsRunning"){
        system ("linphonecsh generic " qt "pause " id1 qt );       
        }       
   
    }
}' callsarchive

miércoles, 4 de abril de 2012

Problema safari altura portada ARRAS

Este es el truco para que en safari se visualize bien arras:

hay que añadir esta linea en 2c-r-fixed.css

.home #container {
    width:918px;
    float:left;
}

ojo con hiddens. El sidebar lateral xoxo genera problemas si no lo eliminas desde sidebar.php

jueves, 23 de febrero de 2012

Orden de salida de titulo, foto, excerpt en ARRAS

en arras / library / tapestries.php se puede cambiar el orden en el que se muestra el título, excerpt y foto.
Linea 317 está la función.

Cambiando la funcion original por esta ponemos el título encima de la foto de ARRAS

function arras_generic_postheader($tapestry, $show_meta = false) {
    global $post;
   
    $postheader .= '

' . get_the_title() . '

';

   
    $postheader .= '
';
    $postheader .= '';
    $postheader .= arras_get_thumbnail($tapestry . '-thumb');
   
    if ($show_meta) {   
        $postheader .= '';
    }
   
    $postheader .= '
';

    $postheader .= '
';
   
    return $postheader;
}

viernes, 10 de febrero de 2012

jueves, 9 de febrero de 2012

Modificar tabla gestión administrativa usuarios Wordpress

En /wp-admin/includes/class-wp-users-list-table.php está la programación que hace listado de los usuarios de wordpress.

jueves, 5 de enero de 2012

Qtranslate variable idioma - Permalink

si necesitas saber el idioma en el que está trabajando el qtranslate sobre wordpress:


esta es tu función:
qtrans_getLanguage();
 
puedes hacer:
 
echo qtrans_getLanguage(); // devuelve idioma 

miércoles, 4 de enero de 2012

Capas semi transparentes, opacidad en HTML CSS

Para los navegadores safari, explorer y mozilla hay que usar todo esto:

filter:alpha(opacity=86); opacity:0.86; -moz-opacity:0.86;

viernes, 16 de diciembre de 2011

Activar permalinks en Opencart

Los permalinks en opencart no están del todo resueltos por defecto. Hay módulos en la web oficial de opencart que funcionan mejor y gestionan correctamente el idioma.

La activación de permalinks en Opencart se hace cambiando htaccess.txt por .htaccess en el directorio raiz y Sistema -> configuración (editar tu sitio) -> Pestaña Servidor -> Activa "Usar URL's SEO".

Terminado esto tienes que irte a las categorias y productos y escribir en el campo "Palabra clave SEO" el nombre SEO que le quieres dar a la categoria o producto. Si no haces esto no te irán los permalinks!

Eliminar divisas en opencart

Primero tenemos que ir a Sistema -> configuración y editar nuestro site. En la pestaña local seleccionamos Euro o la que queramos.

Posteriormente podemos ya eliminar el resto de monedas que no usemos en Sistema -> Localización -> Moneda

jueves, 1 de diciembre de 2011

Como obtener el id de facebok? How to get the facebook ID?

Lo explican en muchos sitios pero nada es un lio y encima no funciona, asi que he encontrado una mejor:

Sal de tu cuenta de facebook y busca en google tu nombre + facebook.

Haz clic sobre MURO o INFORMACIÓN (lateral izquierdo)
y arriba en la barra de URL (donde se ponen las direcciones web tipo http://www.google.com) te aparecerá entre otras variables la de ID:


Te saldrá algo así:
http://es-la.facebook.com/r.php?profile_id=1294349655&next=http%3A%2F%2Fes-la.facebook.com%2Ftunombreyapellidos&friend_or_subscriber=friend

Solo te queda copiar los numeros donde pone profile_id
y este es tu ID!


miércoles, 30 de noviembre de 2011

Excerpt: Cortar strings (cadenas) sin cortar palabras

Como hacer un excerpt "a pelo" sin contar con wordpress ;)

El artículo del autor lo explica muy claro.

Y por si acaso dejo constancia:

En PHP tenemos multitud de funciones para tratar cadenas de caracteres. Una de ellas, substr, nos devuelve un fragmento o porción de la cadena que estamos manipulando. El problema viene cuando queremos que no se  corte la última palabra de la subcadena que obtenemos. Ninguna función de manipulación de cadenas es capaz de identificar una palabra y no cortarla, pero podemos utilizar una combinación de éstas funciones para obtener una subcadena sin cortar palabras por la mitad.

Con el código que describo a continuación podéis cortar una cadena, dado un número de caracteres, sin partir la última palabra de la subcadena resultante.
$texto = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.';
$cantidadCaracteres = 25;
 
//1.- Obtenemos un fragmento de la cadena desde el índice cero hasta la longitud dada por la variable$cantidadCaracteres
$subcadena = substr($texto,0,$cantidadCaracteres);
 
//2.- strrpos encuentra la posición de la ultima aparición de un caracter, en éste caso el último espacio en blanco de la cadena que obtenemos con substr
$indiceUltimoEspacio = strrpos($subcadena," ");
 
//3.- Con substr obtenemos una subcadena de $texto desde la posicion inicial hasta la posición del último espacio que nos interesa
echo substr($texto,0, $indiceUltimoEspacio);
//salida por pantalla-> Lorem ipsum dolor sit
 
Y ahora el mismo código  en una sola línea:
$texto = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.';
$cantidadCaracteres = 25;
echo substr($texto,0,strrpos(substr($texto,0,$cantidadCaracteres)," "));
 



Fuente:
http://promineostudios.com/blog/articulo/cortar-una-cadena-de-caracteres-sin-partir-la-ultima-palabra

miércoles, 23 de noviembre de 2011

Envio mail automatico al administrador

Desde sistema, configuración, editar (tienda) -> Mail,
podemos decidir si recibimos mail cuando un usario nuevo crea una cuenta o cuando se hace un nuevo pedido

Mails enviados de opencart

Todos los mails y formato que envia opencart se pueden encontrar en:
/www/catalog/language/spanish/mail

lunes, 21 de noviembre de 2011

Buena traducción de Open Cart a catalán (y gratis)!

http://www.opencart.com/index.php?route=extension/extension/info&extension_id=3389&path=2&filter_license=0&page=16&sort=e.date_added&order=ASC

Como discriminar según idioma en las plantillas TPL de opencart?

Discriminamos usando la variable $lang. if ($lang="es"){ ... } else{ }

Si $lang no está definida en la plantilla usar este código para generarlo:
$lang = $this->language->get('code');

domingo, 20 de noviembre de 2011

Como se hace un "is_home" en opencart?

if (!isset($this->request->get['route'])) || $this->request->get['route'] = 'common/home') {
echo "This is homepage";
}

Variable de control de idioma para plantillas Opencart

$lang es quien define la variable de idioma de opencart.

lunes, 14 de noviembre de 2011

jueves, 27 de octubre de 2011

Capa con Float left que se posicione en el centro

Código CSS:

#content {
position:relative;
float:left;
width:997px;
min-height:712px;
margin:auto;
margin-top:0px;
background-color:#FFFFFF;
/*nos posicionamos en el centro del navegador top*/
left:50%;
/*indicamos que el margen izquierdo, es la mitad de la anchura*/
margin-left:-499px;
}