<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JoelConty.com &#187; Desarrollo</title>
	<atom:link href="http://www.joelconty.com/wp/category/desarrollo/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.joelconty.com/wp</link>
	<description>Blog de Joel, el de Conty</description>
	<lastBuildDate>Thu, 19 Aug 2010 02:17:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Obtener dia de la semana dada una fecha dd/mm/yyyy</title>
		<link>http://www.joelconty.com/wp/2008/08/obtener-dia-de-la-semana-dada-una-fecha-ddmmyyyy/</link>
		<comments>http://www.joelconty.com/wp/2008/08/obtener-dia-de-la-semana-dada-una-fecha-ddmmyyyy/#comments</comments>
		<pubDate>Sat, 09 Aug 2008 01:33:19 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[dia de la semana]]></category>

		<guid isPermaLink="false">http://www.joelconty.com/wp/?p=45</guid>
		<description><![CDATA[Hace rato en el canal de #linux_mx  alguien me preguntó como hacer en PHP para obtener el día de la semana dada una fecha. Es algo muy sencillo. Aquí esta como se haría a traves de una función: #!/usr/bin/php -q &#60;? function getDayOfWeek($day, $month, $year){ return date(&#8216;l&#8217;, mktime(0, 0, 0, $month, $day, $year)); } $month [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_49" class="wp-caption alignright" style="width: 160px"><a href="http://www.joelconty.com/wp/wp-content/uploads/2008/08/garfield_monday.jpg"><img class="size-thumbnail wp-image-49" title="garfield_monday" src="http://www.joelconty.com/wp/wp-content/uploads/2008/08/garfield_monday-150x150.jpg" alt="monday" width="150" height="150" /></a><p class="wp-caption-text">monday</p></div>
<p>Hace rato en el canal de #linux_mx  alguien me preguntó como hacer en PHP para obtener el día de la semana dada una fecha.</p>
<p>Es algo muy sencillo. Aquí esta como se haría a traves de una función:</p>
<p>#!/usr/bin/php -q<br />
&lt;?<br />
function getDayOfWeek($day, $month, $year){<br />
return date(&#8216;l&#8217;, mktime(0, 0, 0, $month, $day, $year));<br />
}</p>
<p>$month = 8;<br />
$year = 2008;<br />
$day = 11;</p>
<p>print getDayOfWeek($day, $month, $year);<br />
// imprimiría &#8220;Monday&#8221;</p>
<p>?&gt;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelconty.com/wp/2008/08/obtener-dia-de-la-semana-dada-una-fecha-ddmmyyyy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recorrer un rango de fechas mediante php.</title>
		<link>http://www.joelconty.com/wp/2008/04/recorrer-un-rango-de-fechas-mediante-php/</link>
		<comments>http://www.joelconty.com/wp/2008/04/recorrer-un-rango-de-fechas-mediante-php/#comments</comments>
		<pubDate>Tue, 08 Apr 2008 22:20:46 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[fechas]]></category>

		<guid isPermaLink="false">http://www.joelconty.com/wp/archives/33</guid>
		<description><![CDATA[El amigo Montecristo, del canal de Linux, me preguntó como hacer en PHP para recorrer un rango de fechas. Como no hay una función nativa en php para eso, le hice un pequeño script que aquí muestro. Espero le sirva a alguien más: #!/usr/bin/php -q &#60;? //Configurar aqui ////////// //inicio $year_start = 2007; $month_start = [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.joelconty.com/wp/wp-content/uploads/2008/04/calendario-azteca3.gif"><img class="alignright size-thumbnail wp-image-35" style="float: right;" title="calendario-azteca3" src="http://www.joelconty.com/wp/wp-content/uploads/2008/04/calendario-azteca3-150x150.gif" alt="calendario" width="150" height="150" /></a>El amigo Montecristo, del canal de Linux, me preguntó como hacer en PHP para recorrer un rango de fechas. Como no hay una función nativa en php para eso, le hice un pequeño script que aquí muestro. Espero le sirva a alguien más:<span id="more-33"></span></p>
<pre>#!/usr/bin/php -q
&lt;?
//Configurar aqui //////////
//inicio
$year_start = 2007;
$month_start = 11;
$day_start = 1;

//fin
$year_end = 2008;
$month_end = 3;
$day_end = 10;
///////////////////////////////

if( ! checkdate($month_start, $day_start, $year_start)){
     print "invalid start date";
     exit;
}

if( ! checkdate($month_end, $day_end, $year_end)){
     print "invalid end date";
     exit;
}

//obtener el dia siguiente a la fecha final indicada
$day_end++;
if (! checkdate($month_end, $day_end, $year_end)){
     $day_end = 1;
     $month_end++;
     if (! checkdate($month_end, $day_end, $year_end)){
          $month_end = 1;
          $year_end++;
     }
}

//no editar abajo
$year = $year_start;
$month = $month_start;
$day = $day_start;

$finish = 0;
while ( ! $finish &amp;&amp; checkdate($month, $day, $year)) {
     $date = $month . '-' . $day . '-' . $year;
     //////////////////////////////////////
     //hacer algo con la fecha aqui
     print  $date; print "\n";
     //////////////////////////////////////

     $day++;
     if (! checkdate($month, $day, $year)){
          $day = 1;
          $month++;
          if (! checkdate($month, $day, $year)){
               $month = 1;
               $day = 1;
               $year++;
          }
     }

     if( $year == $year_end &amp;&amp; $month == $month_end &amp;&amp; $day == $day_end){
          $finish = true;
     }
}
?&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.joelconty.com/wp/2008/04/recorrer-un-rango-de-fechas-mediante-php/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Script para automatizar la creación de repositorios SVN.</title>
		<link>http://www.joelconty.com/wp/2008/04/script-para-automatizar-la-creacion-de-repositorios-svn/</link>
		<comments>http://www.joelconty.com/wp/2008/04/script-para-automatizar-la-creacion-de-repositorios-svn/#comments</comments>
		<pubDate>Sun, 06 Apr 2008 21:08:01 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.joelconty.com/wp/archives/31</guid>
		<description><![CDATA[Hola, Para continuar con los scripts en bash, como el que publiqué hace unos días para crear vhosts en apache, esta vez escribo para publicar un script para crear repositorios svn y luego su respectiva sandbox (copia de trabajo). A quien le podría resultar util? A quienes se dedican a la programación, en especial a [...]]]></description>
			<content:encoded><![CDATA[<p>Hola,</p>
<p><a href="http://www.joelconty.com/wp/wp-content/uploads/2008/04/evolve1at300dpi.gif"><img class="alignright size-thumbnail wp-image-34" style="float: right;" title="evolve1at300dpi" src="http://www.joelconty.com/wp/wp-content/uploads/2008/04/evolve1at300dpi-150x150.gif" alt="code" width="150" height="150" /></a>Para continuar con los scripts en bash, como el que publiqué hace unos días para crear vhosts en apache, esta vez escribo para publicar un script para crear repositorios svn y luego su respectiva sandbox (copia de trabajo).<span id="more-31"></span></p>
<p>A quien le podría resultar util? A quienes se dedican a la programación, en especial a la creación de sistemas para la web, y que en su trabajo diario tienen que lidiar con multiples proyectos, y por lo tanto, es probable que tenga que hacer esto repetidamente. En mi caso, yo hago eso, pero solo hasta fechas recientes decidí manejar mis proyectos personales a través de SubVersion. Antes solo lo utilizaba en el trabajo, y solo era un usuario, no administrador de ningún repositorio svn.</p>
<p>Un buen día decidí averiguar un poco acerca de la creación de los repositorios y vi lo sencillo que es en realidad. Mi mejor referencia fue esta página: <a title="SVN Tutorial" href="http://artis.imag.fr/~Xavier.Decoret/resources/svn/index.html" target="_blank">http://artis.imag.fr/~Xavier.Decoret/resources/svn/index.html </a></p>
<p>Así pues, decidí comenzar a utilizar svn en mis pequeños proyectos personales, y vi que el proceso que se sigue para crear un repositorio, luego agregar archivos al mismo y luego hacer un svn checkout  (obtener copia del juego de archivos en un directorio de trabajo) , era un candidato ideal para la automatización a través de un script bash. Y ayer que tuve tiempo, me puse a escribir dicho script.</p>
<p>Se da por asentado que subversion ha sido instalado con anterioridad. Si no lo tiene instalado y usa Debian/Ubuntu, solo corra el comando <strong>sudo aptitude install subversion</strong>.</p>
<p>Modo de uso:</p>
<p>Quizá quede más claro si ponemos un ejemplo.  Supongamos que estás trabajando en un proyecto x, el cual se localiza en tu directorio <strong>/var/www2/miproyecto.com</strong> . Luego, decides administrar este proyecto a través de subversion. Lo único que tienes que hacer, con este script seria:</p>
<p>1) Bajar el script ( <a title="create_svn" href="http://www.joelconty.com/wp/wp-content/uploads/2008/04/create_svn.zip">aquí</a>), descomprimirlo y darle permisos de ejecución ( chmod a+x create_svn.sh)</p>
<p>2) Hacer los cambios necesarios a la configuración, (lineas 14-18)</p>
<p>3) Correrlo asi:   <strong>sudo sh create_svn.sh miproyectom.com</strong></p>
<p>Lo que el script haria seria lo siguiente:</p>
<p>1) Crear el repositorio svn llamado <strong>miproyecto.com</strong>, asegurándose de que no exista un repositorio llamado miproyecto.com previamente.</p>
<p>2)Importar todos los archivos presentes en el directorio del proyecto ( <strong>/var/www2/miproyecto.com/</strong>) hacia el repositorio. Si el directorio estaba vacío inicialmente, el script crea un archivo  llamado index.php para que svn no vaya a dar un error al hacer la importación inicial.</p>
<p>3) Si el directorio tenía contenido, es decir archivos o subdirectorios, crea una copia temporal en <strong>/tmp/</strong> como respaldo en caso de algun error, dado que en el siguiente paso se borra todo el contenido.</p>
<p>4)Borrar todo el contenido del directorio <strong>/var/www2/miproyecto.com/</strong> , para asi poder en el siguiente paso hacer el checkout (obtener una copia de trabajo proveniente del repositorio).</p>
<p>5)Obtener la copia de trabajo en el directorio en cuestion. Pero ahora ya bajo control de svn.</p>
<p>6)En caso de que todo haya salido bien, y si es el caso, el programa te avisa que deberias eliminar la copia temporal de respaldo creada en<strong> /tmp/</strong>, dado que ya no es necesaria.</p>
<p>7) Y listo!!!! ya esta todo listo para que empiezes a hacer cambios en tus archivos, agregar mas archivos y luego hacer <strong>svn commit</strong> para agregar al repositorio tus modificaciones.</p>
<p>Para bajar el script haga <a title="create_svn" href="http://www.joelconty.com/wp/wp-content/uploads/2008/04/create_svn.zip">click aquí</a>. El script es muy sencillo, y a continuacion se muestra:</p>
<pre>#!/bin/sh
#get domain name from parameter
domain=$1;

#if no domain provided, die
if [ -z $domain ] ; then
echo "Error: missing domain name"
echo "Usage:   sh create_svn.sh mydomain.com"
exit
fi

#################  Configuration ##################
# Configure these variables according to your needs
svn_path="/home/joel/svn" #no trailing /
www_path="/var/www2" #no trailing /
svn_owner="joel:users"
document_root_owner="joel:users"
############################################

#more variables
#don't edit these, they are set based on the values of the variables set in the configuration section above
svn_repo="${svn_path}/${domain}"
svn_repo_dir="${svn_repo}/"
svn_repo_url="file://${svn_repo}"
document_root="${www_path}/${domain}"
document_root_dir="${document_root}/"
temp_path="/tmp/${domain}"
temp_path_dir="${temp_path}/"

#check if repo exists
if [ -e $svn_repo ] ; then
echo "Repository ${svn_repo} already exists"
exit
fi

#if document root does not exist, create it and put a bogus file
doc_existed=1
if [ ! -e $document_root ] ; then
echo "Creating ${document_root} ."
mkdir -p $document_root
bogusfile="${document_root}/index.php"
echo "" &gt; $bogusfile
doc_existed=0
fi

#create repository
echo "Creating svn repository"
svnadmin create --fs-type fsfs $svn_repo

#do initial import
echo "Performing initial import"
svn import $document_root_dir file:///$svn_repo -m "initial import"

#create temporary backup of stuff in the document root  if there was already stuff in it
if [ $doc_existed -eq 1 ] ; then
echo "Creating temporary directory to backup files"
mkdir -p $temp_path

#check if temp dir exists
if [ ! -e $temp_path_dir ] ; then
echo "Creating $temp_path_dir"
mkdir -p $temp_path_dir
fi

#ok to rsynk
echo "rsync-ing  to ${temp_path_dir}"
rsync -avz $document_root_dir $temp_path_dir
fi

#Go to the original directory and wipe it out
cd $document_root_dir

curr_path=`pwd`
if [ $curr_path != $document_root ] ; then
echo "Could not change to ${document_root} directory"
exit
fi

if [ -z $document_root_dir ] ; then
echo "Invalid value for document root  ${document_root}"
exit
fi

#protection
if [ $curr_path = "/" ] ; then
echo "Danger!!!!!"
exit
fi

#delete the stuff in the document root directory
echo "Deleting files..."
rm -rf $document_root_dir

#move to parent root
echo "Changing directory to ${www_path}"
cd $www_path

#checkout the files from the repo
echo "Doing the initial svn checkout"
svn co $svn_repo_url

#change ownership of directories
echo "Changing file ownership"
chown -R $svn_owner $svn_repo_dir
chown -R $document_root_owner  $document_root_dir

#reminder to delete the temporary backup if it was done
if [ $doc_existed -eq 1 ] ; then
echo "\n\n";
echo "-----------------------------------------------------------------------------------------"
echo "Check if everything was created correctly."
echo "In case something went wrong, there is a backup copy of your files here:"
echo $temp_path_dir
echo "If everything is fine, you should remove the temporary backup "
echo "running the following command rm -rf ${temp_path_dir}"
echo "-----------------------------------------------------------------------------------------"
fi</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.joelconty.com/wp/2008/04/script-para-automatizar-la-creacion-de-repositorios-svn/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Automatizar la creación de vhosts en apache2 en ubuntu.</title>
		<link>http://www.joelconty.com/wp/2008/03/automatizar-la-creacion-de-vhosts-en-apache2-en-ubuntu/</link>
		<comments>http://www.joelconty.com/wp/2008/03/automatizar-la-creacion-de-vhosts-en-apache2-en-ubuntu/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 07:46:12 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[apache2]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[vhost]]></category>

		<guid isPermaLink="false">http://www.joelconty.com/wp/archives/26</guid>
		<description><![CDATA[Como parte de mi trabajo como desarrollador, con frecuencia tengo que probar diferentes sistemas o scripts (escritos generalmente en PHP), tales como CMS, blogs, galerías, shopping carts, etc. por lo cual, me veo en la necesidad de instalarlos en mi pc. Trabajo en una máquina con Ubuntu Gutsy, con apache2, mysql 5, y php 5. [...]]]></description>
			<content:encoded><![CDATA[<p><a title="apache" href="http://www.joelconty.com/wp/wp-content/uploads/2008/03/apache_painting_headdress.gif"><img src="http://www.joelconty.com/wp/wp-content/uploads/2008/03/apache_painting_headdress.thumbnail.gif" alt="apache" align="right" /></a>Como parte de mi trabajo como desarrollador, con frecuencia tengo que probar diferentes sistemas o scripts (escritos generalmente en PHP), tales como CMS, blogs, galerías, shopping carts, etc. por lo cual, me veo en la necesidad de instalarlos en mi pc. Trabajo en una máquina con Ubuntu Gutsy, con apache2, mysql 5, y php 5.<span id="more-26"></span></p>
<p>Acostumbro tener cada script en un directorio dedicado y crear un host virtual en apache para cada script. Estos scripts están accesibles localmente en mi pc. Mi preferencia es inventar un nombre de dominio ficticio el cual configuro localmente en mi pc,  creando una entrada en el archivo de hosts ( /etc/hosts ) de mi pc, para no trabajar con el típico localhost. He venido usando nombres de dominio con la extension .us (por ningun motivo en especial, simplemente se me ocurrió).</p>
<p>Un buen día, se me hizo tedioso el proceso que tenia que hacer para configurar uno de estos hosts en mi pc, tarea repetitiva, y como todo buen programador decidí escribir un pequeño script para automatizar esta tarea.</p>
<p>El script es sencillo, está escrito en bash. Y a continuación lo pongo a disposición de todo aquel que guste leerlo, usarlo y/o modificarlo. La advertencia que hago es que solo esta probado bajo ubuntu con apache2 como webserver.</p>
<p>Como se usa? muy facil:</p>
<p>sudo create_vhost  nombredeldomino.extension [caracter opcional extra]</p>
<p><strong>Ejemplo: </strong></p>
<p><strong>sudo create_vhost midominio.us 2</strong></p>
<p>Nota: el  argumento &#8217;2&#8242; que pongo en el ejemplo es opcional. Acostumbro nombrar mis dominios de prueba de la forma www2.midominio.us, el caracter &#8217;2&#8242; es para eso, pero si omites el 2, el vhost se creara como www.midominio.us.</p>
<p>El script hara lo siguiente:</p>
<p>-Crear el archivo del vhost en tu /etc/apache2/sites-available</p>
<p>-Crear el enlace simbólico requerido en /etc/apache2/sites-enabled apuntando al archivo mencionado en la linea anterior.</p>
<p>-Crear una entrada en el archivo /etc/hosts para crear el dominio ficticio que estará disponible solo localmente apuntando a la ip local 127.0.0.1</p>
<p>-Crear el directorio donde se instalará el script en /var/www[2]/midominio.us</p>
<p>-En mi caso particular, también copia la librería de depuración que utilizo para mis scripts php en ese directorio&#8230; pero eso no lo incluyo aquí, ya que eso es tema aparte. Esas líneas las exclui del script que aqui publico.</p>
<p>-Por ultimo, reinicia el servidor web apache.</p>
<p>Nota: es importante correr el comando con sudo, ya que de otra manera el script no podrá realizar los cambios necesarios en el sistema, dado que el usuario normal no tiene privilegios suficientes. Para mayor facilidad, yo recomiendo ponerlo en /bin/ para que esté disponible siempre sin proveer la ruta, y luego darle la propiedad de ejecutable  (  sudo chmod a+x /bin/create_vhost ).</p>
<p>Para descargar el código hacer <a title="create_vhost" href="http://www.joelconty.com/wp/wp-content/uploads/2008/03/create_vhost.zip">click aquí</a></p>
<p>El código es este:</p>
<pre>#!/bin/sh    

#get domain name from parameter
domain=$1;    

#if no domain provided, die
if [ -z $domain ] ; then
	echo "missing domain name"
	exit
fi     

#if second parameter provided use it
alt_www=$2;    

#get count of sites in apache
site_count=`find /etc/apache2/sites-enabled/ -type l |wc -l`    

#figure out number format depending of count
if [ $site_count -lt 10 ] ; then
	site_count_formatted="00${site_count}"
elif [ $site_count -lt 100 ] ; then
	site_count_formatted="0${site_count}"
else
	site_count_formatted=$site_count
fi    

#set some variables
adminemail="user@domain.com"
sites_available_dir="/etc/apache2/sites-available"
sites_enabled_dir="/etc/apache2/sites-enabled"
sites_available_file="${sites_available_dir}/${domain}"
sites_enabled_file="${sites_enabled_dir}/${site_count_formatted}-${domain}"
document_root="/var/www${alt_www}/${domain}/"    

#create vhost for apache
touch $sites_available_file
echo "" &gt; $sites_available_file
echo "        ServerName www${alt_www}.${domain}" &gt;&gt; $sites_available_file
echo "        ServerAdmin ${adminemail}" &gt;&gt; $sites_available_file
echo "        DocumentRoot /var/www${alt_www}/${domain}" &gt;&gt; $sites_available_file
echo "        ErrorLog /var/log/apache2/${domain}.error.log" &gt;&gt; $sites_available_file
echo "        CustomLog /var/log/apache2/${domain}.access.log combined" &gt;&gt; $sites_available_file
echo "" &gt;&gt; $sites_available_file
echo "        " &gt;&gt; $sites_available_file
echo "                Options FollowSymLinks" &gt;&gt; $sites_available_file
echo "                AllowOverride None" &gt;&gt; $sites_available_file
echo "        " &gt;&gt; $sites_available_file
echo "" &gt;&gt; $sites_available_file
echo "        " &gt;&gt; $sites_available_file
echo "                Options Indexes FollowSymLinks MultiViews" &gt;&gt; $sites_available_file
echo "                AllowOverride All" &gt;&gt; $sites_available_file
echo "                Order allow,deny" &gt;&gt; $sites_available_file
echo "                allow from all" &gt;&gt; $sites_available_file
echo "        " &gt;&gt; $sites_available_file
echo "        LogLevel warn" &gt;&gt; $sites_available_file
echo "        ServerSignature Off" &gt;&gt; $sites_available_file
echo "" &gt;&gt; $sites_available_file
ln -s $sites_available_file $sites_enabled_file    

#create entry in the hosts file
echo "127.0.0.1	www${alt_www}.${domain}" &gt;&gt; /etc/hosts    

#create the directories
mkdir -p ${document_root}    

#restart apache
/etc/init.d/apache2 restart</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.joelconty.com/wp/2008/03/automatizar-la-creacion-de-vhosts-en-apache2-en-ubuntu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HTML Widgets</title>
		<link>http://www.joelconty.com/wp/2007/12/html-widgets/</link>
		<comments>http://www.joelconty.com/wp/2007/12/html-widgets/#comments</comments>
		<pubDate>Sat, 29 Dec 2007 22:40:06 +0000</pubDate>
		<dc:creator>Joel</dc:creator>
				<category><![CDATA[Desarrollo]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[widgets]]></category>

		<guid isPermaLink="false">http://www.joelconty.com/wp/archives/21</guid>
		<description><![CDATA[En mi trabajo tengo la necesidad de escribir código HTML, cosa que me resulta tediosa. En muchas ocasiones prefiero usar Dreamweaver para generar trozos de html como por ejemplo una tabla, la creo, la lleno con el contenido necesario, luego la selecciono y en la ventana donde se ve el codigo HTML corto el código [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Write" href="http://www.joelconty.com/wp/wp-content/uploads/2007/12/write.gif"><img class="alignright" style="float: right;" src="http://www.joelconty.com/wp/wp-content/uploads/2007/12/write.thumbnail.gif" alt="Write" align="left" /></a>En mi trabajo tengo la necesidad de escribir código HTML, cosa que me resulta tediosa. En muchas ocasiones prefiero usar Dreamweaver para generar trozos de html como por ejemplo una tabla, la creo, la lleno con el contenido necesario, luego la selecciono y en la ventana donde se ve el codigo HTML corto el código y lo pego en mi editor.</p>
<p>Para evitar este proceso y hacerlo programáticamente en PHP, escribí algo de codigo, que aquí pongo a disposición del que le interese, el cual sirve para generar algunos elementos HTML en forma fácil y sencilla.  Es un conjunto de clases, donde cada clase sirve para generar un elemento HTML. Trae las siguientes clases:  table, form, radio, radioset, checkbox, checkboxset, select, anchor, paragraphp, textbox, textarea,  hiddenbox, heading, y algun otro elemento que se me escapa por ahorita.  Conforme vaya creando mas los ire agregando ahi mismo.</p>
<p>Si te interesa checar esta libreria, ver ejemplos y código, <a title="Codigo html widgets" href="http://www.joelconty.com/htmlwidgets/" target="_blank">clickea aquí</a>.</p>
<p>Para descargarla <a title="libreria htmlwidgets" href="http://joelconty.com/htmlwidgets.zip" target="_blank">clickea aquí</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.joelconty.com/wp/2007/12/html-widgets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
