<?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>Vladimir Cvetic &#187; Programming</title>
	<atom:link href="http://www.hazaah.com/cat/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hazaah.com</link>
	<description>buffle the world</description>
	<lastBuildDate>Thu, 12 Nov 2009 14:30:29 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Aptana (eclipse) YUI compressor</title>
		<link>http://www.hazaah.com/programming/javascript/aptana-eclipse-yui-compressor/</link>
		<comments>http://www.hazaah.com/programming/javascript/aptana-eclipse-yui-compressor/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 10:24:01 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=157</guid>
		<description><![CDATA[This post is mostly note to self&#8230; but some may find it useful.
For javascript compression, merging etc on Aptana (&#8230;eclipse&#8230;) use:
http://www.rockstarapps.com/joomla-1.5.8/products/downloads.html
]]></description>
			<content:encoded><![CDATA[<p>This post is mostly note to self&#8230; but some may find it useful.</p>
<p>For javascript compression, merging etc on Aptana (&#8230;eclipse&#8230;) use:<br />
<a href="http://www.rockstarapps.com/joomla-1.5.8/products/downloads.html">http://www.rockstarapps.com/joomla-1.5.8/products/downloads.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/javascript/aptana-eclipse-yui-compressor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bash job queuing: Task Spooler</title>
		<link>http://www.hazaah.com/programming/bash-job-queuing-task-spooler/</link>
		<comments>http://www.hazaah.com/programming/bash-job-queuing-task-spooler/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 15:19:02 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=155</guid>
		<description><![CDATA[Today I found nifty little tool for queuing bash jobs, Task Spooler.
Imagine you hava list of jobs that are dependant on each other.
First job converts video from one format to another, second job should trigger if first job was successful and do some status updating. This is exactly a thing Task Spooler will help you [...]]]></description>
			<content:encoded><![CDATA[<p>Today I found nifty little tool for queuing bash jobs, <a href="http://vicerveza.homeunix.net/~viric/soft/ts/">Task Spooler</a>.</p>
<p>Imagine you hava list of jobs that are dependant on each other.<br />
First job converts video from one format to another, second job should trigger if first job was successful and do some status updating. This is exactly a thing Task Spooler will help you with.<br />
It will prevent simultaneous video conversions by queuing them to run one after another.</p>
<p>Downside is that it listens to port 80 and I haven&#8217;t found a way to change that port. This is a &#8220;bad&#8221; thing because most people have apache listening on port 80 too, so to restart apache you will need to kill all Task Spooler processes or you will get an error that goes something like this:<br />
<em>Address already in use: make_sock: could not bind to address 0.0.0.0:80<br />
no listening sockets available, shutting down</em>.</p>
<p>I will probably play with it some more and try to build out of the box methods for callbacks&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/bash-job-queuing-task-spooler/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>toGDImage() broken: Patching ffmpeg-php 0.6.0</title>
		<link>http://www.hazaah.com/programming/togdimage-broken-patching-ffmpeg-php-060/</link>
		<comments>http://www.hazaah.com/programming/togdimage-broken-patching-ffmpeg-php-060/#comments</comments>
		<pubDate>Sun, 08 Feb 2009 17:51:40 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=152</guid>
		<description><![CDATA[As fallow-up to previous post (link).

After toying with fresh ffmpeg-php 0.6.0 I kept getting error:
Fatal error: failed to convert frame to gd image

Problem lies in broken function _php_avframe_to_gd_image in ffmpeg_frame.c, in the base ffmpeg-php package.
To fix this problem download this patch file and apply it to ffmpeg_frame.c like so:

cd /path/to/ffmpeg-php-0.6.0/
wget http://hazaah.com/download/ffmpeg_frame.c.patch
patch -p0 ffmpeg_frame.c < ffmpeg_frame.c.patch

Reinstall [...]]]></description>
			<content:encoded><![CDATA[<p>As fallow-up to previous post (<a href="http://www.hazaah.com/ubuntu/how-to-ffmpeg-ffmpeg-php-lame-libogg-libvorbis-flvtool2-mplayer-mencoder-amr/">link</a>).</p>
<p>
After toying with fresh ffmpeg-php 0.6.0 I kept getting error:<br />
<em>Fatal error: failed to convert frame to gd image</em>
</p>
<p>Problem lies in broken function _php_avframe_to_gd_image in ffmpeg_frame.c, in the base ffmpeg-php package.<br />
To fix this problem <strong><a href="http://hazaah.com/download/ffmpeg_frame.c.patch">download this patch file</a></strong> and apply it to ffmpeg_frame.c like so:</p>
<pre>
cd /path/to/ffmpeg-php-0.6.0/
wget http://hazaah.com/download/ffmpeg_frame.c.patch
patch -p0 ffmpeg_frame.c < ffmpeg_frame.c.patch
</pre>
<p>Reinstall ffmpeg-php &#038;&#038; restart apache.</p>
<p>Thats all.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/togdimage-broken-patching-ffmpeg-php-060/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Ferdinand.PhotoTag &#8211; Facebook like photo tagging</title>
		<link>http://www.hazaah.com/programming/php/ferdinandphototag-facebook-like-photo-tagging/</link>
		<comments>http://www.hazaah.com/programming/php/ferdinandphototag-facebook-like-photo-tagging/#comments</comments>
		<pubDate>Mon, 22 Dec 2008 14:21:57 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=147</guid>
		<description><![CDATA[I have just released very simple photo tagging solution. It works much like Facebook tagging and requires Prototype and optionally PHP5/MySQL (you can always make backend from scratch in any lang/db you wish&#8230; it requires novice skills).
Tested in Firefox, IE6+, Safari and Chrome.
Here is the link: http://ferdinand.rs/javascript/ferdinandphototag
]]></description>
			<content:encoded><![CDATA[<p>I have just released very simple photo tagging solution. It works much like Facebook tagging and requires Prototype and optionally PHP5/MySQL (you can always make backend from scratch in any lang/db you wish&#8230; it requires novice skills).</p>
<p>Tested in Firefox, IE6+, Safari and Chrome.</p>
<p>Here is the link: <a href="http://ferdinand.rs/javascript/ferdinandphototag">http://ferdinand.rs/javascript/ferdinandphototag</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/php/ferdinandphototag-facebook-like-photo-tagging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ferdinand.Slider &#8211; Javascript news slider</title>
		<link>http://www.hazaah.com/programming/ferdinand-slider/</link>
		<comments>http://www.hazaah.com/programming/ferdinand-slider/#comments</comments>
		<pubDate>Tue, 09 Dec 2008 14:59:37 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Wordpress Plugins]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=121</guid>
		<description><![CDATA[Moved
Go to new addres >>

location.href="http://ferdinand.rs/javascript/ferdinandslider";

]]></description>
			<content:encoded><![CDATA[<h1>Moved</h1>
<p><a href="http://ferdinand.rs/javascript/ferdinandslider">Go to new addres >></a><br />
<script>
location.href="http://ferdinand.rs/javascript/ferdinandslider";
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/ferdinand-slider/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple PHP error handling</title>
		<link>http://www.hazaah.com/programming/simple-php-error-handling/</link>
		<comments>http://www.hazaah.com/programming/simple-php-error-handling/#comments</comments>
		<pubDate>Fri, 28 Nov 2008 13:58:40 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=111</guid>
		<description><![CDATA[Here is a very simple way of custom handling php errors.
To use code below, apart from including it in your functions file, you will need to call function display_debug(); at the end of every page (assuming you wish to display debug on every page).
Nifty feature is that you don&#8217;t have to worry about turning off [...]]]></description>
			<content:encoded><![CDATA[<p>Here is a very simple way of custom handling php errors.<br />
To use code below, apart from including it in your functions file, you will need to call function display_debug(); at the end of every page (assuming you wish to display debug on every page).</p>
<p>Nifty feature is that you don&#8217;t have to worry about turning off debug on production version of your website. Simply populate $ips array with IP addresses you are using and debug will be displayed only to you.</p>
<p>To display mysql errors in this debug, use trigger_error function (example trigger_error($sql.&#8217; &#8216;.mysql_error($link) ,&#8217;DB_ERROR&#8217;);)</p>
<pre>
$ips = array('127.0.0.1','88.99.109.119');
set_error_handler("ErrorHandler");

function ErrorHandler($errno, $errstr, $errfile, $errline)
{
	global $error_handler;

	if (preg_match("/DB_ERROR/iUs", $errno))
	{
		$error_handler[] = "<strong>DB_ERROR*</strong> $errstr\n" . "Fatal error on line $errline in $errfile";
	}

    switch ($errno) {
   	case E_ERROR:
    case E_USER_ERROR:
        $error_handler[] = "<strong>E_USER_ERROR</strong> $errstr on line $errline in $errfile. $errstr\n";
        break;

    case E_WARNING:
	case E_USER_WARNING:
        $error_handler[] = "<strong>E_USER_WARNING</strong> on line $errline in $errfile. $errstr\n";
        break;

    case E_NOTICE:
	case E_USER_NOTICE:
        $error_handler[] = "<strong>NOTICE</strong> on line $errline in $errfile. $errstr\n";
        break;

	case E_PARSE:
        $error_handler[] = "<strong>E_PARSE</strong> on line $errline in $errfile. $errstr\n";
        break;

	case E_STRICT:
        $error_handler[] = "<strong>E_STRICT</strong> on line $errline in $errfile. $errstr\n";
        break;

	case E_DEPRECATED:
        $error_handler[] = "<strong>E_STRICT</strong> on line $errline in $errfile. $errstr\n";
        break;

    default:
        $error_handler[] = "<strong>UNKNOWN</strong> on line $errline in $errfile. $errstr\n";
        break;
    }
    return true;
}

function display_debug()
{
	global $error_handler, $_GET, $_POST, $_SERVER, $_SESSION, $_COOKIE, $_REQUEST, $ips;

	if (!in_array($_SERVER['REMOTE_ADDR'], $ips))
	{
		return;
	}
	?>
<style>
		#debug {
			background:#F9F7ED;
			font-family:Arial, Helvetica, sans-serif;
			font-size:12px;
			padding:10px;
			height:400px;
			width:98%;
			margin:30px auto;
			border:1px solid #333;
			overflow:auto;
		}
	</style>
<div id="debug">
		<?
		foreach($error_handler as $error)
		{
		?>
<p class="single_error">
				<?=$error?>
			

		<?
		}
		?>
<hr size="1" />
		<strong>$_GET</strong>
<pre><?print_r($_GET);?></pre>
<p>		<strong>$_POST</strong></p>
<pre><?print_r($_POST);?></pre>
<p>		<strong>$_REQUEST</strong></p>
<pre><?print_r($_REQUEST);?></pre>
<p>		<strong>$_COOKIE</strong></p>
<pre><?print_r($_REQUEST);?></pre>
<p>		<strong>$_SERVER</strong></p>
<pre><?print_r($_SERVER);?></pre>
<p>		<strong>$_SESSION</strong></p>
<pre><?print_r($_SESSION);?></pre>
</p></div>
<p>	<?<br />
}</p>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/simple-php-error-handling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sort multi dimensional array</title>
		<link>http://www.hazaah.com/programming/sort-multi-dimensional-array/</link>
		<comments>http://www.hazaah.com/programming/sort-multi-dimensional-array/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 09:35:51 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=109</guid>
		<description><![CDATA[
/*
 * Sort multi dimensional array
 *
 * @author Vladimir Cvetic < vladimir[ at ]ferdinand.rs >
 * @param $a array Array you wish to sort
 * @param $index mixed Value of the key by wich you wish to sort
 * @param $order string Sort direction
 * @param $natsort bool Natural sorting true or false
 * [...]]]></description>
			<content:encoded><![CDATA[<pre>
/*
 * Sort multi dimensional array
 *
 * @author Vladimir Cvetic < vladimir[ at ]ferdinand.rs >
 * @param $a array Array you wish to sort
 * @param $index mixed Value of the key by wich you wish to sort
 * @param $order string Sort direction
 * @param $natsort bool Natural sorting true or false
 * @param $case_sensitive bool Case sensitive true or false
 */
function Sort2dArray ($a, $index, $order='asc', $natsort=false, $case_sensitive=false)
{
	if(is_array($a) &#038;&#038; sizeof($a)>0)
	{
		foreach(array_keys($a) as $key)
			$temp[$key]=$a[$key][$index];
		if(!$natsort)
			($order=='asc')? asort($temp) : arsort($temp);
		else
		{
			($case_sensitive)? natsort($temp) : natcasesort($temp);
			if($order!='asc')
				$temp=array_reverse($temp,true);
		}
		foreach(array_keys($temp) as $key)
			(is_numeric($key))? $sorted[]=$a[$key] : $sorted[$key]=$a[$key];
		return $sorted;
	}
	return $a;
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/sort-multi-dimensional-array/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Smarty plugin: module</title>
		<link>http://www.hazaah.com/programming/smarty-plugin-module/</link>
		<comments>http://www.hazaah.com/programming/smarty-plugin-module/#comments</comments>
		<pubDate>Fri, 07 Nov 2008 09:05:14 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=105</guid>
		<description><![CDATA[Some time ago I wrote this useful smarty plugin wich will enable you to call method of any php class from smarty html template.
It&#8217;s very simple and it goes:

/**
 * @author Vladimir Cvetic < vladimir[at]ferdinand.rs >
 */
function smarty_function_module($params, &#038;$smarty)
{
	/* Check if required params are valid */
	if (!isset($params['class']))
	{
		$smarty->trigger_error('Module name is not defined!');
		return false;
	}
	if (!isset($params['method']))
	{
		$smarty->trigger_error('Method name is [...]]]></description>
			<content:encoded><![CDATA[<p>Some time ago I wrote this useful smarty plugin wich will enable you to call method of any php class from smarty html template.<br />
It&#8217;s very simple and it goes:</p>
<pre>
/**
 * @author Vladimir Cvetic < vladimir[at]ferdinand.rs >
 */
function smarty_function_module($params, &#038;$smarty)
{
	/* Check if required params are valid */
	if (!isset($params['class']))
	{
		$smarty->trigger_error('Module name is not defined!');
		return false;
	}
	if (!isset($params['method']))
	{
		$smarty->trigger_error('Method name is not defined!', E_USER_ERROR);
		return false;
	}
	elseif (!method_exists($params['class'],$params['method']))
	{
		$smarty->trigger_error('Method is not defined in module! -> '. $params['class'].'::'.$params['method'], E_USER_ERROR);
		return false;
	}

	return call_user_func($params['class'].'::'.$params['method'], $params);
}
</pre>
<p>Example usage:<br />
{module class=&#8221;CLASS_NAME&#8221; method=&#8221;CLASS_METHOD_NAME&#8221; param1=&#8221;string1&#8243; param2=77}</p>
<p>Your class method will receive one parameter (associative array), which will contain all parameters passed to smarty function. I this example array would look like this:</p>
<pre>
Array
(
    [class] => 'CLASS_NAME'
    [method] => 'CLASS_METHOD_NAME'
    [param1] => 'string1'
    [param2] => 77
)
</pre>
<p>To install this plugin simply create file named function.module.php in smarty plugins folder and copy&#038;paste function to that file.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/smarty-plugin-module/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JLoader PHP Class</title>
		<link>http://www.hazaah.com/programming/php/jloader-php-class/</link>
		<comments>http://www.hazaah.com/programming/php/jloader-php-class/#comments</comments>
		<pubDate>Mon, 06 Oct 2008 11:49:07 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=98</guid>
		<description><![CDATA[So here is one very simple php class. In past it has proven to be very useful in cases where you need to load multiple javascript files or on large project with a lot of modules (especially if those modules are developed by different persons).
It will help you to avoid double js file loads, it [...]]]></description>
			<content:encoded><![CDATA[<p>So here is one very simple php class. In past it has proven to be very useful in cases where you need to load multiple javascript files or on large project with a lot of modules (especially if those modules are developed by different persons).<br />
It will help you to avoid double js file loads, it will also help you keep only one copy of each js file on server.</p>
<p>Enjoy:</p>
<pre>
/**
 * @author Vladimir Cvetic @ Ferdinand Development
 * @email vladimir@ferdinand.rs
 * @phone +381 60 5000240
 *
 * @version 1.0.0
 *
 * Example 1:
 * $jloader = new JLoader();
 * $jloader->load('prototype', '1.6.0.2');
 * $jloader->printjs();
 * Output:
 * <script type="text/javascript" src="/common/jloader/prototype/prototype.js?ver=1.6.0.2"></script>
 *
 * Example 2:
 * $jloader = new JLoader();
 * $jloader->load('prototype', '1.6.0.2');
 * $jloader->load('prototype', false, '/javascript/my_prototype.js');
 * $jloader->printjs();
 * Output:
 * <script type="text/javascript" src="/javascript/my_prototype.js"></script>
 *
 * Example 3:
 * $jloader = new JLoader();
 * $jloader->repository = "/javascript/";
 * $jloader->load('prototype', '1.6.0.2');
 * $jloader->printjs();
 * Output:
 * <script type="text/javascript" src="/javascript/prototype/prototype.js?ver=1.6.0.2"></script>
 *
 * Example 4:
 * $jloader = new JLoader();
 * $jloader->repository = "/javascript/";
 * $jloader->load('prototype', '1.6.0.2');
 * $jloader->load('mootools', '1.2');
 * $jloader->load('custom_script', '1.0', '/scripts/custom_script.js', array('scriptaculous','jquery'));
 * $jloader->printjs();
 * Output:
 * <script type="text/javascript" src="/javascript/prototype/prototype.js?ver=1.6.0.2"></script>
 * <script type="text/javascript" src="/javascript/mootools/mootools.js?ver=1.2"></script>
 * <script type="text/javascript" src="/javascript/scriptaculous/scriptaculous.js"></script>
 * <script type="text/javascript" src="/javascript/jquery/jquery.js"></script>
 * <script type="text/javascript" src="/scripts/custom_script.js?ver=1.0"></script>
 */
class JLoader{

	public $loaded = array();
	public $repository = "/common/jloader";
	public $home_path = "/www/mysite";

	function JLoader()
	{
		return true;
	}

	/**
	 *
	 * @since 1.0.0
	 *
	 * @param string $handler Valid external file handler name.
	 * @param int|bool $ver Optional. Script version number. Default is false.
	 * @param array|bool $depends Array of valid handler dependencies.
	 * @return bool
	 */
	function load($handler, $ver = false, $src = false, $depends=false)
	{
		global $conf;

		if ($src!=false)
		{
			$src = $src;
		}
		elseif ($ver!=false)
		{
			$src = $this->repository."/$handler/$handler.js?ver=$ver";
		}
		else
		{
			$src = $this->repository."/$handler/$handler.js";
		}

		if ($src!=false)
		{
			if (!file_exists($src))
			{
				trigger_error("ExtLoader::load($handler, $ver, $src) sad file ".$src." doesn't exist.");
				return false;
			}
		}
		else
		{
			if (!file_exists($this->home_path.$src))
			{
				trigger_error("ExtLoader::load($handler, $ver, $src) sad file ".$this->home_path.$src." doesn't exist.");
				return false;
			}
		}
		if ($depends!=false)
		{
			foreach($depends as $script)
			{
				$this->load($script);
			}
		}
		$this->loaded[$handler] = '<script type="text/javascript" src="'.$src.'"></script>';

		return true;
	}

	/**
	 * Print loaded Javascript files.
	 *
	 * @since 1.0.0
	 *
	 * @return unknown
	 */
	function printjs()
	{

		foreach($this->loaded as $script)
		{
			echo $script."\n";
		}
	}

}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/php/jloader-php-class/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Wordbook: Wordpress and Facebook integration</title>
		<link>http://www.hazaah.com/programming/wordpress-plugins/wordbook-wordpress-and-facebook-integration/</link>
		<comments>http://www.hazaah.com/programming/wordpress-plugins/wordbook-wordpress-and-facebook-integration/#comments</comments>
		<pubDate>Mon, 08 Sep 2008 13:26:45 +0000</pubDate>
		<dc:creator>Vladimir Cvetic</dc:creator>
				<category><![CDATA[Wordpress Plugins]]></category>

		<guid isPermaLink="false">http://www.hazaah.com/?p=96</guid>
		<description><![CDATA[I have just finished first public release of Wordpress plugin &#8220;Wordbook&#8220;.

Wordbook is Wordpress plugin desinged to integrate Facebook in your blog and your blog in Facebook.
Some of the features include Facebook gallery on your blog, both as a widged and full featured gallery, blog posts appear on Facebook Mini-Feed, display almost anything from your Facebook [...]]]></description>
			<content:encoded><![CDATA[<p>I have just finished first public release of Wordpress plugin &#8220;<a href="http://wordbook.ferdinand.rs">Wordbook</a>&#8220;.</p>
<blockquote><p>
Wordbook is Wordpress plugin desinged to integrate Facebook in your blog and your blog in Facebook.</p>
<p>Some of the features include Facebook gallery on your blog, both as a widged and full featured gallery, blog posts appear on Facebook Mini-Feed, display almost anything from your Facebook account to your blog. This is Facebook and Wordpress only plugin, it will not be extended to other social network sites or other blogging software.
</p></blockquote>
<p>Wordbook has it&#8217;s own website: <a href="http://wordbook.ferdinand.rs/">wordbook.ferdinand.rs</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hazaah.com/programming/wordpress-plugins/wordbook-wordpress-and-facebook-integration/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
