Wordpress | The uploaded file could not be moved to...

Use your ftp client and:

  • go to /wp-content and chmod 777
  • if it's necesary create the directory /wp-content/uploads
  • go to /wp-content/uploads and chmod 777
Now it have to be fixed :)

is_home(), is_front_page() not working

If you are facing troubles trying to use this functions (is_home(), is_front_page()) you have to 'clean the query' using the following function: wp_reset_query(); just before calling the function that you need.

How to use Apache James in MacOSx

1. Download James 2.3.2
2. Unzip it
3. Add this lines to run.sh

export JAVA_HOME="/Library/Java/Home"
export PHOENIX_JVM_OPTS="-Djava.net.preferIPv4Stack=true"

3. chmod 755 *.sh4. sudo sh run.sh

How to upload data to an development server in appengine (MAC OSx)

First download your data as described here.

Then install Charles Proxy App, start the proxy. Set in Proxy -> Proxy Settings to use not the 8888 port.

Finally start your development server and run this in the console.

$ python /path/to/library/google_appengine_python_1.5.5/appcfg.py upload_data --url=http://localhost:8888/remote_api --file=test.csv --application=your_app_id --email=you@gmail.com --passin

How to download data from an appengine app.

From the command line

$ python /path/to/library/google_appengine_python_1.5.5/appcfg.py download_data --application=your_app_id --url=http://app_name.appspot.com/remote_api --filename=test.csv

Uncompressed file formats in Android package

static const char* kNoCompressExt[] = {

".jpg", ".jpeg", ".png", ".gif",

".wav", ".mp2", ".mp3", ".ogg", ".aac",
".mpg", ".mpeg", ".mid", ".midi", ".smf", ".jet",
".rtttl", ".imy", ".xmf", ".mp4", ".m4a",
".m4v", ".3gp", ".3gpp", ".3g2", ".3gpp2",
".amr", ".awb", ".wma", ".wmv"
};

INSTALL_FAILED_INSUFFICIENT_STORAGE

If you are using SDK 2.2. add this "android:installLocation="preferExternal" to the AndroidManifiest.xml like:


    package="com.andrewsmith.android.darkness"
    android:installLocation="preferExternal"

How to add C++ support to Eclipse?

Help -> Install new software -> Work with -> Helios -> Programming Languages -> C/C++ Development Tools

;)

GCC 4.2 is not compatible with the Mac OS X 10.4 SDK

Go in the XCode to

Project > Edit Project Settings > Base SDK

And select MAC OSX 10.6 ;)

GWT Celltable ContextMenu in a Column

// create your column class
private class ContextMenuColumn extends Column<UserModel, String>{

  public ContextMenuColumn(Cell<String> cell) {
   super(cell);
  }

  @Override
  public String getValue(UserModel object) {
   return "/img/icons/contextual-menu.jpg";
  }
  
  @Override
  public void onBrowserEvent(Context context, Element elem, UserModel object, NativeEvent event) {
   final UserModel user = object;
   
   int left = elem.getParentElement().getAbsoluteLeft();
      int top = elem.getParentElement().getAbsoluteTop();
      
      final DialogBox dialog = new DialogBox();
      dialog.setText(constants.Actions());
      
      Anchor lnkEdit = new Anchor(constants.Edit());
      lnkEdit.addClickHandler(new ClickHandler() {
    @Override
    public void onClick(ClickEvent event) {
     placeController.goTo(new ControlPanelUsersEditPlace(user.getUserId()));
     dialog.hide();
    }
   });
      
      Anchor lnkUpdateState = new Anchor(user.getEnable() == false ? constants.Enable() : constants.Disable());
      lnkUpdateState.addClickHandler(new ClickHandler() {
    @Override
    public void onClick(ClickEvent event) {
     presenter.setEnabled(user.getUserId(), !user.getEnable());
     dialog.hide();
    }
   });
      
      Anchor lnkResetPassword = new Anchor(constants.ChangePassword());
      lnkResetPassword.addClickHandler(new ClickHandler() {
    @Override
    public void onClick(ClickEvent event) {
     presenter.resetPassword(user.getUserId());
     dialog.hide();
    }
   });
      
      Anchor lnkDelete = new Anchor(constants.Delete());
      lnkDelete.addClickHandler(new ClickHandler() {
    @Override
    public void onClick(ClickEvent event) {
     presenter.delete(user.getUserId());
     dialog.hide();
    }
   });
      
      VerticalPanel pnl = new VerticalPanel();
      pnl.add(lnkEdit);
      pnl.add(lnkUpdateState);
      pnl.add(lnkResetPassword);
      pnl.add(lnkDelete);
      
      dialog.setWidget(pnl);
      dialog.setPopupPosition(left - 20, top + 10);
      dialog.setAutoHideEnabled(true);
      dialog.show();
  }
 }

// create your column and add it to your table
Column<UserModel, String> contextMenuColumn = new ContextMenuColumn(new MyImageCell());

table.addColumn(contextMenuColumn);

GWT Celltable add a Row Handler

Handler<UserModel> rowHandler = new Handler<UserModel>() {
@Override
public void onCellPreview(CellPreviewEvent<UserModel> event) {
if (event.getColumn() != 0 && event.getNativeEvent().getType().equals("click")) {
placeController.goTo(new CompanyUsersEditPlace(event.getValue().getUserId(), user.getCompanyId()));
}
}
};

table.addCellPreviewHandler(rowHandler);

GWT Celltable and Checkbox Column

// you need a selection model
private final MultiSelectionModel<usermodel> selectionModel = new MultiSelectionModel<usermodel>(operatorKeyProvider);

// you need a selection manager
private final DefaultSelectionEventManager<usermodel> selectionManager = DefaultSelectionEventManager.createCheckboxManager();

// you need the table ;)
@UiField CellTable<usermodel> table;

// then ...
selectionModel.addSelectionChangeHandler(
new SelectionChangeEvent.Handler() {
public void onSelectionChange(SelectionChangeEvent event) {
StringBuilder sb = new StringBuilder();
boolean first = true;
List&lt;UserModel&gt; selected = new ArrayList&lt;UserModel&gt;(selectionModel.getSelectedSet());

Collections.sort(selected);
for (UserModel value : selected) {
if (first) {
first = false;
} else {
sb.append(&quot;, &quot;);
}
sb.append(value.getFirstName());
}
}
});

table.setSelectionModel(selectionModel, selectionManager);

// create your column
Column<UserModel, Boolean> checkBoxColumn = new Column<UserModel, Boolean>(new CheckboxCell()) {

   @Override
   public Boolean getValue(UserModel object) {
    return selectionModel.isSelected(object);
   }
   
   @Override
   public FieldUpdater<UserModel, Boolean> getFieldUpdater() {
       return null;
      } 
   
  };

SVN Checksum Mismatch Netbeans - Mac

http://andrew.hedges.name/blog/2009/01/25/how-to-recover-from-checksum-mismatch-errors-in-svn

How to delete recursively SVN files in MacOSx

find . -name .svn -exec rm -rf {} \;

GWT UiBinder.useSafeHtmlTemplates warning

Add in the module descriptor this property:

How to use JSTL in Appengine.

1. You DONT'T have to include JSTL support in your web.xml
2. In your JSP put this attribute: isELIgnored="false" ie: <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1" isELIgnored="false" %>

Upload a file to an options page WP

http://www.wptavern.com/forum/themes-templates/1346-creating-upload-function-options-page.html#post13306

Cómo escuchar Rock and Pop 95.9 en Mac

1. Abrir VLC

2. File -> Network -> Open URL: http://streaming.fmrockandpop.com/rockandpop

Cómo instalar maven en Windows XP

1. Descargar una versión de maven desde acá (bajar los binarios).
2. Descomprimir en C:
3. Agregar el directorio en el cual se descomprimió maven a la variable de entorno PATH
4. Asegurarse que existe una variable de entorno llamada JAVA_HOME que apunte al directorio del jdk instalado.
5. En una consola correr mvn --version

Cómo instalar SVN en Eclipse?

Para instalar los conectores, acceder a la siguiente URL desde e Update Manager de Eclipse.

http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/

So you have an awesome idea?

The resume is dead

http://the99percent.com/tips/7025/The-Resume-Is-Dead-The-Bio-Is-King

Cómo validar fechas con jQuery

1. Incluir jQuery
2. Incluir Date.js

jQuery.validator.addMethod("australianDate", function(value, element) { 
    return Date.parseExact(value, "d/M/yyyy");
});

$("#myForm").validate({
   rules : {
      birth_date : { australianDate : true }
   }
});

3.1. Para formatear el input incluir http://digitalbush.com/projects/masked-input-plugin/

3.2.

$("#birth_date").mask("99/99/9999");

Tomado de acá

Cómo utilizar Zend_Auth_Adapter con Web Services

<?
class My_Auth_Adapter implements Zend_Auth_Adapter_Interface {

    const OK_RESPONSE = 'OK';
    const KO_RESPONSE = 'KO';

    private $_username = '';
    private $_password = '';
    private $_data = null;

    public function setIdentity($username) {
        $this->_username = $username;
    }

    public function setCredential($password) {
        $this->_password = $password;
    }

    /**
     * Authenticate the user
     * 
     * @return Zend_Auth_Result 
     */
    public function authenticate() {
        $endpointLoginAuthor = Zend_Registry::get('config')->endpoint->userService->loginAuthor;

        $client = new Zend_Rest_Client($endpointLoginAuthor);
        $client->username($this->_username);
        $client->password($this->_password);

        $response = $client->get();
        
        $authenticated = ($response->ResponseDescription == $this::OK_RESPONSE);
        $authResult = Zend_Auth_Result::FAILURE;

        $authMessages = array();

        if ($authenticated){
            // user is authenticated, overwrite the auth result:
            $authResult = Zend_Auth_Result::SUCCESS;
            $this->_data = $response->Author;
        } else {
            // Couldn't authenticate the user, set a message:
            $authMessages[] = 'Datos de acceso inválidos.';
        }

        // return the result:
        return new Zend_Auth_Result( $authResult, $this->_username, $authMessages );

    }

    /**
     *
     * @param <type> $returnColumns
     * @param <type> $omitColumns
     * @return <type> SimpleXMLObject
     */
     public function getResultRowObject($returnColumns = null, $omitColumns = null){
        // If no data is set, return false:
        if (!$this->_data) {
            return false;
        }

        return $this->_data;
    }
}

?>


Cómo tener 2 cuentas de Gmail abiertas en el mismo navegador

1. Anda a http://www.google.com/accounts e ingresa con el usuario y contraseña de una de tus cuentas, idealmente la principal

2. Donde dice "Multiple sign-in", dale a "Edit" en caso de que tengas esta opción en off.

3. En la siguiente pantalla selecciona "On" y marca todos los checkboxes que aparecen ahí.

4. Le das "Save" o "Guardar" y arriba de la página te dirá que tus cambios han sido guardados. Ahí mismo te da la opción de volver (back).

5. Cuando hayas regresado a la página anterior, arriba a la derecha verás activada la cuenta con que acabas de ingresar y la opción de ingresar con una segunda cuenta.

Cómo listar las categorías de wordpress mediante un query de mysql.

SELECT DISTINCT ID, post_title, post_name, guid, post_date, post_content
FROM wp_posts AS p
INNER JOIN wp_term_relationships AS tr ON (
p.ID = tr.object_id

)
INNER JOIN wp_term_taxonomy AS tt ON (
tr.term_taxonomy_id = tt.term_taxonomy_id
AND taxonomy = 'category' AND tt.term_id
IN ( 16 )
)
ORDER BY id DESC
Cambiar el 16 por el id de la categoria a buscar. 

Cómo setear un JDK en eclipse.ini

Luego de instalar Maven en Eclipse, aparece un cartel solictando que haya seteado un JDK en eclipse.ini


1. Editar el archivo eclipse.ini (que se encuentra dentro del directorio de Eclipse).
2. Poner en la primer linea del archivo:


-vm
path/to/jdk/bin/javaw.exe

Cómo agregar una JDK en Eclipse

1. Window -> Preferences -> Java -> Installed JREs
2. Add -> Standard VM -> path/al/jdk (por ejemplo: "C:\Archivos de programa\Java\jdk1.6.0_25")

Cómo instalar JDK de Java en Windows XP

1. Bajar el SDK de Java http://java.sun.com/javase/downloads/index.jsp
2. Correr el instalador.
3. Click derecho sobre "Mi PC" -> Opciones de Entorno -> Variables de Entorno
4. Buscar la variable "Path", editar, y agregar al final la ubicación del compilador de Java, por ejemplo: ;C:\Java\jdk1.6.0_02\bin
5. Crear una variable llamada "Classpath" y poner como valor: "C:\Java\jdk1.6.0_02\src.zip\"
6. Para testear si salió todo ok abrir una consola (Inicio -> Programas -> Accesorios -> Símbolo del Sistema) y tipear "java" y luego "javac".

Cómo mover la carpeta "Mis Documentos" en Windows XP

1. En el escritorio -> Click derecho sobre "Mis Documentos".
2. Propiedades.
3. Cambiar la ruta en "Destino" a la ruta deseada.

Cómo agregar un disco rígido en Windows XP

1. Click derecho sobre Mi PC
2. Click en Administrar
3. Administración de discos
4. Seleccionar el Volumen
5. Dar formato y agregar como unidad

Visor PDF con JS (JQuery + Google Viewer API)

0. Agregar Jquery y fancybox (JS + CSS) al head

1. En el JS

$(".test").fancybox({
'width'    : '75%',
'height'   : '90%',
'autoScale'                     : false,
'transitionIn'                  : 'none',
'transitionOut'                 : 'none',
'type'    : 'iframe'
});


2. En el html

<a class="prueba" href="http://docs.google.com/gview?url=http://mysite.com/mipdf.pdf&embedded=true">Prueba</a>

Como apagaron el cartel de la 9 de Julio

Cómo setear desde un Controller variables de un Zend_Layout

En el controller:
 

class MyController extends Zend_Controller_Action {
    public function init() {
        $this->_helper->layout->getView()->myVar = 'Value'; 
    }
}

En el layout.phtml

<? echo $this->myVar; ?>

Como debuggear con MAMP y Netbeans

1. Desde la consola:

vi /Applications/MAMP/conf/php5.3/php.ini

2. Buscar [xdebug] y agregar:


[xdebug]
xdebug.default_enable=1

xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_autostart=1

zend_extension="/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"

3. Reinicar MAMP

4. En Netbeans click derecho sobre el proyecto -> "Debug"

Como escuchar radio Metro 95.1 en Mac

1. Bajar VLC
2. File -> Open Network


3. Ingresar la URL http://streaming.metro951.com/metro


Como ignorar carpetas SVN - Eclipse

1. Window - Preferences
2. Team -> Ignored Resources
3. Add Pattern "lib" (por ejemplo)
4. Apply

Cómo setear el include path de php para un determinado Virtual Host de Apache

Se puede hacer editando el archivo http.conf

Por ejemplo:

<VirtualHost *>
ServerName mysite.local
DocumentRoot "/path/to/site"
<Directory "/path/to/site">
php_value include_path ".:/include/path/"
</Directory>
</VirtualHost>

MAMP carga muy lento cuando se llama a Zend_Session::start();

El session handler tiene algún problema al intentar guardar las sessiones en disco.

Entonces se puede utilizar Zend para utilizar otro adapter y por ejemplo guardar las sesiones en una BD.

// Comment
$db = Zend_Db::factory('Pdo_Mysql', array(
    'host'        =>'localhost',
    'username'    => 'dbuser',
    'password'    => '****',
    'dbname'    => 'mydb'
));

//you can either set the Zend_Db_Table default adapter
//or you can pass the db connection straight to the save handler $config
Zend_Db_Table_Abstract::setDefaultAdapter($db);
$config = array(
    'name'           => 'session',
    'primary'        => 'id',
    'modifiedColumn' => 'modified',
    'dataColumn'     => 'data',
    'lifetimeColumn' => 'lifetime'
);

//create your Zend_Session_SaveHandler_DbTable and
//set the save handler for Zend_Session
Zend_Session::setSaveHandler(new Zend_Session_SaveHandler_DbTable($config));

// start session
Zend_Session::start();

Trucos Mac

1) Divertido comando de consola que dice lo que le pidamos:

# say i love mac

2) Para poner el protector de pantalla como fondo de la mac:

# /System/Library/Frameworks/ScreenSaver.framework/Resources/ScreenSaverEngine.app/
Contentes/MacOs/ScreenSaverEngine -background

Como montar un pendrive en modo Single User (Mac)

1) Lo primero, asegurate que la particion esta libre de errores
/sbin/fsck -y

2) Monta la particion con permisos de root
mount -uw /

3) Crea una carpeta donde montar el volumen USB
mkdir /Volumes/USB

4) ANTES DE CONECTAR EL USB, fijate que dispositivos tienes actualmente
ls /dev

5) Conecta el disco USB, y vuelve a hacer un
ls /dev

6) El que es diferente entre los dos listados, es el disco USB (por ejemplo disk1s2)

7) Monta el disco USB con el comando mount, por defecto, OSX monta discos HFS

mount /dev/disk1s2 /Volumes/USB


7.1) Si el disco es FAT32 por ejemplo
FAT32
mount -t msdos /dev/disk1s1 /Volumes/USB

Modos de arranque en Mac

MODOS O SECUENCIAS DE ARRANQUE
Siempre tras oír el “GONG” o campana de inicio…
- Tecla C: arranca desde un CD o DVD que contenga el S.O. de Apple.
- Tecla D: Inicia el Apple Hardware Test (AHT), desde el DVD de instalación.
- Presionar ALT-CMD-P-R hasta que escuches dos beeps. Resetea la NVRAM.
- Presionar ALT durante el arranque inicia la ventana de Selección de Arranque, donde puedes elegir el volumen desde el que arrancar.
- Presionando ALT-N también aparecerá el primer volumen de red que contenga un sistema de arranque compatible.
- Teclas ALT-T: Arranca tu sistema operativo a través del Firewire de otro ordenador (Target Disk Mode).
- Teclas ALT-N: Arranca desde una unidad de red donde se encuentre el sistema operativo (Netboot).
- Tecla Mayúscula: Arranca el sistema en modo seguro (safe mode), eliminando de forma temporal el acceso manual al sistema, así como las extensiones del kernel que no sean esenciales.
- Tecla CMD-V: arranca tu sistema en modo Verbose (arranque visual línea por línea).
- Tecla CMD-S: El arranque se produce en modo Single-User Mode (usuario único).

How to delete a GWT module.

1. Google -> Web Toolkit Settings -> remove the module.
2. Run As -> Run Configurations -> Arguments, and remove the deleted

How to display UTF-8 chars in a JSP

1. <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
2.
3. File -> Properties -> Resource -> Text File Encoding -> UTF-8
4. If you are using resource bundle you can use this: http://englove.blogspot.com/2011/01/how-to-use-utf-8-encoding-with.htm

Por qué Google eligió Jetty y no Tomcat para correr en Appengine

http://www.infoq.com/news/2009/08/google-chose-jetty

El groncho y la dama.

Joysticks History Chart

Currency conversion apis

Yahoo Currency Conversion Example:http://kuppalli.wordpress.com/2008/11/15/get-live-currency-value-using-yahoo-api/

Google Currency Conversion Example: http://oohhyeah.blogspot.com/2009/01/google-currency-conversion-api.html

GAE storage article by IBM

http://www.ibm.com/developerworks/java/library/j-gaestorage/?ca=drs-

Remote datastore lib

http://code.google.com/p/remote-datastore/

StripTags in Java

public class Utils {
   public static String stripTags(String text) {
        return text.replaceAll("\\<.*?\\>","").trim();
   }
}

JQuery iPhone Slider

http://jquery.hinablue.me/jqiphoneslide/

Java Class to use Goo.gl API with Gson

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.net.URL;
import java.net.URLConnection;
import java.util.Scanner;

import com.google.gson.Gson;


public class Shortener {
    private static final String URL_GOOGL_SERVICE = "https://www.googleapis.com/urlshortener/v1/url";
   
    private static final Gson gson = new Gson();
   
    public static String shorten(String longUrl) {
        String result = new String();
        GsonGooGl gsonGooGl = new GsonGooGl(longUrl);
       
        try {
            URL url = new URL(URL_GOOGL_SERVICE);
           
            URLConnection   urlConn = url.openConnection();
            urlConn.setDoInput (true);                                                            // Let the run-time system (RTS) know that we want input.
            urlConn.setDoOutput (true);                                                            // Let the RTS know that we want to do output.
            urlConn.setUseCaches (false);                                                        // No caching, we want the real thing.
            urlConn.setRequestProperty("Content-Type", "application/json");                        // Specify the content type.
           
           
            DataOutputStream printout = new DataOutputStream (urlConn.getOutputStream ());        // Send POST output.
            String content = gson.toJson(gsonGooGl);
            printout.writeBytes (content);
            printout.flush ();
            printout.close ();
           
            DataInputStream input = new DataInputStream (urlConn.getInputStream ());            // Get response data.
           
            Scanner sc = new Scanner(input);
            while(sc.hasNext()) {
                result += sc.next();
            }
           
            GooGlResult gooGlResult = gson.fromJson(result, GooGlResult.class);
           
            return gooGlResult.getId();
        } catch (Exception ex) {
           System.out.println(ex);
           return null;
        }
    }
}

class GsonGooGl {
    public GsonGooGl(){}
    public GsonGooGl(String longUrl){
        this.longUrl = longUrl;
    }
   
    private String longUrl;

    public String getLongUrl() {
        return longUrl;
    }
    public void setLongUrl(String longUrl) {
        this.longUrl = longUrl;
    }
   
   
}

class GooGlResult {
    public GooGlResult(){}
   
    private String kind;
    private String id;
    private String longUrl;
   
    public String getKind() {
        return kind;
    }
    public void setKind(String kind) {
        this.kind = kind;
    }
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getLongUrl() {
        return longUrl;
    }
    public void setLongUrl(String longUrl) {
        this.longUrl = longUrl;
    }
   
   
}


To use:

System.out.println(Shortener.shorten("http://goorkers.com")); 

How to use UTF-8 encoding with ResourceBundle (Java)

By default ResourceBundle uses ISO-8859-1.

But you can use this excelent hack http://www.thoughtsabout.net/blog/archives/000044.html