<?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>Georgi.Budinov.com &#187; Programming</title>
	<atom:link href="http://georgi.budinov.com/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>https://georgi.budinov.com</link>
	<description>The sacred mission of a Web Developer - Get the job done!</description>
	<lastBuildDate>Wed, 02 Nov 2011 13:55:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>The CArrayDataProvider problem of Yii</title>
		<link>https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/</link>
		<comments>https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/#comments</comments>
		<pubDate>Sun, 18 Sep 2011 19:19:58 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[YiiFramework]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=921</guid>
		<description><![CDATA[Recently I started digging in the YiiFramework. The first things I want to know about the framework were the basics &#8211; how the MVC is accomplished, database connections, ready to use component and so on. As the development team is actually the team that was engaged with the Prado framework before, I assumed that Yii [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I started digging in the YiiFramework. The first things I want to know about the framework were the basics &#8211; how the MVC is accomplished, database connections, ready to use component and so on. As the development team is actually the team that was engaged with the Prado framework before, I assumed that Yii will be very similar which actually is not very true. Well I won&#8217;t talk now about all the stuff I noticed and I will go straight to one of the first things I got a little irritating.<br />
<span id="more-921"></span><br />
The thing is that all core components are bind or connected in some way to Active Records which is something I don&#8217;t use. That is a choice I have made and you can not sue me for that. I don&#8217;t like the concept and prefer to make my own queries &#8211; perhaps this is some for another post.</p>
<p>This is the case with the CArrayDataProvider. Actually they have CActiveDataProvider which is bind to AR and working like a charm. It is making two queries one with the data and one with the count of rows so you get a nice pagination component when using with a gridview or listview. Well this is not the case with CArrayDataProvider. They didn&#8217;t assume that someone like me would want to make himself the two queries and set the current page, total count of raws and pass the excerpt of them. What they actually do is using the array_slice method to get the needed portion of the page when using with a CPager. Well I can see that this has been done in the old ages. The component needs all the records from the database and will cut off the needed portion. This is insane. That is why I modified it a little bit &#8230; yeah it is almost nothing so it suits my needs. Just extend the CArrayDataProvider and include it.</p>
<pre class="brush: php;">
class ArrayDataProvider extends CArrayDataProvider
{
	/**
	 * Fetches the data from the persistent data storage.
	 * @return array list of data items
	 */
	protected function fetchData()
	{
		if(($sort=$this-&gt;getSort())!==false &amp;&amp; ($order=$sort-&gt;getOrderBy())!='')
			$this-&gt;sortData($this-&gt;getSortDirections($order));

		if(($pagination=$this-&gt;getPagination())!==false)
		{
			$pagination-&gt;setItemCount($this-&gt;getTotalItemCount());
			return $this-&gt;rawData;
			//return array_slice($this-&gt;rawData, $pagination-&gt;getOffset(), $pagination-&gt;getLimit());
		}
		else
			return $this-&gt;rawData;
	}
}
</pre>
<p>Usage:</p>
<pre class="brush: php;">
$viewData['dataProvider'] = new ArrayDataProvider(
			$array['rows'],
			array(
				'totalItemCount' =&gt; $array['count'],
				'pagination'=&gt;array(
					'pageSize' =&gt; 10,
				),
			)
		);
</pre>
<div class="social_bookmark"><script type="text/javascript"><!--
google_ad_client = "pub-1171831089941131";
google_ad_slot = "5499515740";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</div><!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/&amp;title=The+CArrayDataProvider+problem+of+Yii" title="Bookmark 'The CArrayDataProvider problem of Yii' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in Del.icio.us" alt="Bookmark 'The CArrayDataProvider problem of Yii' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/&amp;title=The+CArrayDataProvider+problem+of+Yii" title="Bookmark 'The CArrayDataProvider problem of Yii' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in digg" alt="Bookmark 'The CArrayDataProvider problem of Yii' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/" title="Bookmark 'The CArrayDataProvider problem of Yii' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in Technorati" alt="Bookmark 'The CArrayDataProvider problem of Yii' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/&amp;t=The+CArrayDataProvider+problem+of+Yii" title="Bookmark 'The CArrayDataProvider problem of Yii' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in Yahoo My Web" alt="Bookmark 'The CArrayDataProvider problem of Yii' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/&amp;title=The+CArrayDataProvider+problem+of+Yii" title="Bookmark 'The CArrayDataProvider problem of Yii' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in Google Bookmarks" alt="Bookmark 'The CArrayDataProvider problem of Yii' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/&amp;title=The+CArrayDataProvider+problem+of+Yii" title="Bookmark 'The CArrayDataProvider problem of Yii' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in Live-MSN" alt="Bookmark 'The CArrayDataProvider problem of Yii' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/&amp;t=The+CArrayDataProvider+problem+of+Yii" title="Bookmark 'The CArrayDataProvider problem of Yii' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in FaceBook" alt="Bookmark 'The CArrayDataProvider problem of Yii' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=The+CArrayDataProvider+problem+of+Yii&amp;c=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/" title="Bookmark 'The CArrayDataProvider problem of Yii' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in MySpace" alt="Bookmark 'The CArrayDataProvider problem of Yii' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/" title="Bookmark 'The CArrayDataProvider problem of Yii' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in Twitter" alt="Bookmark 'The CArrayDataProvider problem of Yii' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=The+CArrayDataProvider+problem+of+Yii&amp;url=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/" title="Bookmark 'The CArrayDataProvider problem of Yii' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in FriendFeed" alt="Bookmark 'The CArrayDataProvider problem of Yii' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/&amp;title=The+CArrayDataProvider+problem+of+Yii&amp;srcURL=https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/" title="Bookmark 'The CArrayDataProvider problem of Yii' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'The CArrayDataProvider problem of Yii' in Google Buzz" alt="Bookmark 'The CArrayDataProvider problem of Yii' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2011/09/the-carraydataprovider-problem-of-yii/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Adding a number of random generated unique strings into db</title>
		<link>https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/</link>
		<comments>https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/#comments</comments>
		<pubDate>Wed, 05 Jan 2011 13:47:34 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[Databases]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[random]]></category>
		<category><![CDATA[string]]></category>
		<category><![CDATA[unique]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=862</guid>
		<description><![CDATA[Today I accidentally got to a piece of code I have written long ago and really got surprised from me. I have created a not conventional solution to a interesting problem. Imagine you have to add a bunch of rows into a db table, for example promo codes, that has column holding randomly generated strings. [...]]]></description>
			<content:encoded><![CDATA[<p>Today I accidentally got to a piece of code I have written long ago and really got surprised from me. I have created a not conventional solution to a interesting problem. Imagine you have to add a bunch of rows into a db table, for example promo codes, that has column holding randomly generated strings. The strings should be unique of course, so we have unique key in the db! So instead of generating the string, checking if it is already in the table and if not -&gt; adding it to the table, I have just written this:</p>
<pre class="brush: php;">
$j = 0;
for($i=0; $i&lt;$count; $i++)
{
	while(true)
	{
		try
		{
			$code = str_makerand();
			$codeID = $this-&gt;addItem(
				$this-&gt;tableNameCodes,
				array('code'),
				array($code)
			);

			break;
		}
		catch(Exception $e){
			$j++;
			if($j=10) break;
		}
	}
}
</pre>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/&amp;title=Adding+a+number+of+random+generated+unique+strings+into+db" title="Bookmark 'Adding a number of random generated unique strings into db' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'Adding a number of random generated unique strings into db' in Del.icio.us" alt="Bookmark 'Adding a number of random generated unique strings into db' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/&amp;title=Adding+a+number+of+random+generated+unique+strings+into+db" title="Bookmark 'Adding a number of random generated unique strings into db' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'Adding a number of random generated unique strings into db' in digg" alt="Bookmark 'Adding a number of random generated unique strings into db' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/" title="Bookmark 'Adding a number of random generated unique strings into db' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'Adding a number of random generated unique strings into db' in Technorati" alt="Bookmark 'Adding a number of random generated unique strings into db' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/&amp;t=Adding+a+number+of+random+generated+unique+strings+into+db" title="Bookmark 'Adding a number of random generated unique strings into db' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'Adding a number of random generated unique strings into db' in Yahoo My Web" alt="Bookmark 'Adding a number of random generated unique strings into db' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/&amp;title=Adding+a+number+of+random+generated+unique+strings+into+db" title="Bookmark 'Adding a number of random generated unique strings into db' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'Adding a number of random generated unique strings into db' in Google Bookmarks" alt="Bookmark 'Adding a number of random generated unique strings into db' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/&amp;title=Adding+a+number+of+random+generated+unique+strings+into+db" title="Bookmark 'Adding a number of random generated unique strings into db' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'Adding a number of random generated unique strings into db' in Live-MSN" alt="Bookmark 'Adding a number of random generated unique strings into db' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/&amp;t=Adding+a+number+of+random+generated+unique+strings+into+db" title="Bookmark 'Adding a number of random generated unique strings into db' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'Adding a number of random generated unique strings into db' in FaceBook" alt="Bookmark 'Adding a number of random generated unique strings into db' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=Adding+a+number+of+random+generated+unique+strings+into+db&amp;c=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/" title="Bookmark 'Adding a number of random generated unique strings into db' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'Adding a number of random generated unique strings into db' in MySpace" alt="Bookmark 'Adding a number of random generated unique strings into db' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/" title="Bookmark 'Adding a number of random generated unique strings into db' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'Adding a number of random generated unique strings into db' in Twitter" alt="Bookmark 'Adding a number of random generated unique strings into db' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=Adding+a+number+of+random+generated+unique+strings+into+db&amp;url=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/" title="Bookmark 'Adding a number of random generated unique strings into db' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'Adding a number of random generated unique strings into db' in FriendFeed" alt="Bookmark 'Adding a number of random generated unique strings into db' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/&amp;title=Adding+a+number+of+random+generated+unique+strings+into+db&amp;srcURL=https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/" title="Bookmark 'Adding a number of random generated unique strings into db' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'Adding a number of random generated unique strings into db' in Google Buzz" alt="Bookmark 'Adding a number of random generated unique strings into db' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2011/01/adding-a-number-of-random-generated-unique-strings-into-db/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>YouTube&#8217;s policy for inappropriate content and the embed function</title>
		<link>https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/</link>
		<comments>https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/#comments</comments>
		<pubDate>Mon, 03 Jan 2011 13:05:22 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[embed]]></category>
		<category><![CDATA[inappropriate]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=849</guid>
		<description><![CDATA[Recently I noticed something in the way YouTube manages the videos flagged as inappropriate by some users. You know such videos you want to watch but you must be logged in. This way you accept and confirm you are older than 18 years. On my facebook profile I had a post with such a video [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I noticed something in the way YouTube manages the videos flagged as inappropriate by some users. You know such videos you want to watch but you must be logged in. This way you accept and confirm you are older than 18 years. On my facebook profile I had a post with such a video &#8211; it is embed of the video as you know. And guess what &#8211; everyone can play it. It doesn&#8217;t matter it you are logged in or not. Here is the example:<span id="more-849"></span></p>
<p>The YouTube video &#8211; <a rel="nofollow" href="http://www.youtube.com/watch?v=bJvIWGMe61E" target="_blank">http://www.youtube.com/watch?v=bJvIWGMe61E</a></p>
<p>Try this html code for the embed:</p>
<pre class="brush: xml;">
&lt;object width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/bJvIWGMe61E?fs=1&amp;amp;hl=en_US&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/bJvIWGMe61E?fs=1&amp;amp;hl=en_US&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;480&quot; height=&quot;385&quot;&gt;&lt;/embed&gt;&lt;/object&gt;
</pre>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/bJvIWGMe61E?fs=1&amp;hl=en_US" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/bJvIWGMe61E?fs=1&amp;hl=en_US" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>And what I am thinking is : Is this a bug or feature ?</p>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/&amp;title=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Del.icio.us" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/&amp;title=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in digg" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Technorati" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/&amp;t=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Yahoo My Web" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/&amp;title=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Google Bookmarks" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/&amp;title=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Live-MSN" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/&amp;t=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in FaceBook" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function&amp;c=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in MySpace" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Twitter" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function&amp;url=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in FriendFeed" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/&amp;title=YouTube%26%238217%3Bs+policy+for+inappropriate+content+and+the+embed+function&amp;srcURL=https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Google Buzz" alt="Bookmark 'YouTube&#8217;s policy for inappropriate content and the embed function' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2011/01/youtubes-policy-for-inappropriate-content-and-embed/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Integrating PHPList and CodeIgniter</title>
		<link>https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/</link>
		<comments>https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/#comments</comments>
		<pubDate>Sun, 31 Oct 2010 10:10:37 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[integration]]></category>
		<category><![CDATA[phplist]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=835</guid>
		<description><![CDATA[Hello to all. It was a busy month ,so I haven&#8217;t updated this blog for soo loong. Now I give you a small bonus . I was busy with a lot of stuff including writing a library for CodeIgniter dealing with PHPList integration. Before implementing it, I googled a lot for a ready to use [...]]]></description>
			<content:encoded><![CDATA[<p>Hello to all. It was a busy month ,so I haven&#8217;t updated this blog for soo loong. Now I give you a small bonus <img src='https://georgi.budinov.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . I was busy with a lot of stuff including writing a library for CodeIgniter dealing with PHPList integration. Before implementing it, I googled a lot for a ready to use library on this particular subject. No luck. So I found myself writing it for an hour and think it is pretty good in doing its job, at least for me <img src='https://georgi.budinov.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Here is the library <span id="more-835"></span>and enjoy.</p>
<p>NOTE: Have in mind that the CI and PHPLIST have a common function named &#8220;redirect&#8221;. You either need to rename that in CI or in PHPLIST.</p>
<pre class="brush: php;">
&lt;?php if (!defined('BASEPATH')) exit('No direct script access allowed');

/**
* CodeIgniter phplist Library
*
* CodeIgniter phplist bridge allowing adding users to lists and blacklisting them
*
* @author Georgi Budinov
* @version	1.0
* @link http://georgi.budinov.com
*/
class Phplist_library
{
    public $CI;

    /**
     * Constructor.
     */
    public function __construct()
    {
    	global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;
        if (!isset($this-&gt;CI))
		{
			$this-&gt;CI =&amp; get_instance();
		}

		$rootPath = $this-&gt;CI-&gt;config-&gt;item('root_path');

		define('BULLETIN_ROOT_PATH', $rootPath.'bulletin/');

		$phplist_root_path = (defined('PHPLIST_ROOT_PATH')) ? PHPLIST_ROOT_PATH : BULLETIN_ROOT_PATH;

		// Include needed files
		include($phplist_root_path . 'admin/defaultconfig.inc');
		include($phplist_root_path . 'config/config.php');
		include($phplist_root_path . 'admin/mysql.inc');
		include($phplist_root_path . 'admin/connect.php');
    }

    /**
     *
     * @param $email
     * @param $lists
     * @return mixed
     */
    public function user_add($email, $lists = array())
    {
    	if(!$email) return false;

    	if(is_array($lists) &amp;&amp; count($lists))
    	{
    		$userID = addNewUser($email);

    		if($userID &gt; 0)
    		{
    			foreach($lists as $list)
    			{
    				$this-&gt;userAddToList($userID, $list);
    			}
    		}
    	}
    	else
    	{
        	return addNewUser($email);
    	}
    }

	public function get_lists()
    {
    	$results = $this-&gt;getLists();

    	return $results;
    }

	public function user_add_list($email, $list)
    {
    	if(!$email || !$list) return;

    	$userid = $this-&gt;getUserIDByEmail($email);

    	if($userid &gt; 0)
    	{
    		$this-&gt;userAddToList($userid, $list);
    	}
    	else
    	{
    		return;
    	}
    }

	public function user_remove_list($email, $list)
    {
    	if(!$email || !$list) return;

    	$userid = $this-&gt;getUserIDByEmail($email);

    	if($userid &gt; 0)
    	{
    		$this-&gt;userRemoveToList($userid, $list);
    	}
    	else
    	{
    		return;
    	}
    }

    /**
     *
     * @param $email
     * @return mixed
     */
    public function user_blacklist($email)
    {
    	if(!$email) return;

    	return addUserToBlackList($email);
    }

	/**
     *
     * @param $email
     * @return mixed
     */
    public function user_unblacklist($email)
    {
    	if(!$email) return;

    	$userid = $this-&gt;getUserIDByEmail($email);

    	if($userid &gt; 0)
    	{
    		return unBlackList($userid);
    	}
    	else
    	{
    		return false;
    	}
    }

	private function getUserIDByEmail($email = '') {
	  global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;
	  if (!$email) return;

	  # workaround for integration webbler/phplist
	  if (!isset($table_prefix))
	    $table_prefix = &quot;phplist_&quot;;

	  if (isset($tables[&quot;attribute&quot;])) {
	    $att_table = $tables[&quot;attribute&quot;];
	    $user_att_table = $tables[&quot;user_attribute&quot;];
	    $usertable = $tables[&quot;user&quot;];
	  } else {
	    $att_table = &quot;attribute&quot;;
	    $user_att_table = &quot;user_attribute&quot;;
	    $usertable = &quot;user&quot;;
	  }
	  $email = mysql_real_escape_string($email, $database_connection);
	  $userid = Sql_Fetch_Row_Query(&quot;select id from {$usertable} where email = \&quot;$email\&quot;&quot;);
	  $id = $userid[0];

	  return $id;
	}

	private function userAddToList($id = 0, $listID = 0)
	{
		global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;

		$id = intval($id);
		$listID = intval($listID);
		if(!$id || !$listID) return false;

		$query = &quot;replace into &quot;.$tables[&quot;listuser&quot;].&quot; (userid,listid,entered) values($id,$listID,now())&quot;;
	    $result = Sql_query($query);
	}

	private function userRemoveToList($id = 0, $listID = 0)
	{
		global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;

		$id = intval($id);
		$listID = intval($listID);
		if(!$id || !$listID) return false;

		$query = &quot;delete from &quot;.$tables[&quot;listuser&quot;].&quot; where userid = $id and listid = $listID&quot;;
	    $result = Sql_query($query);
	}

	private function getLists()
	{
		global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;

		$results = array();
		$result = Sql_query(&quot;SELECT * FROM {$tables['list']} order by listorder&quot;);
		while ($row = Sql_fetch_array($result))
		{
			$results[$row['id']] = $row;
		}

		return $results;
	}
}

/* End of file phplist_library.php */
/* Location: ./application/libraries/phplist_library.php */
</pre>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">
<p>&lt;?php if (!defined(&#8216;BASEPATH&#8217;)) exit(&#8216;No direct script access allowed&#8217;);</p>
<p>/**<br />
* CodeIgniter phplist Library<br />
*<br />
* CodeIgniter phplist bridge allowing adding users to lists and blacklisting them<br />
*<br />
* @author Georgi Budinov<br />
* @version    1.0<br />
* @link http://georgi.budinov.com<br />
*/<br />
class Phplist_library<br />
{<br />
public $CI;</p>
<p>/**<br />
* Constructor.<br />
*/<br />
public function __construct()<br />
{<br />
global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;<br />
if (!isset($this-&gt;CI))<br />
{<br />
$this-&gt;CI =&amp; get_instance();<br />
}</p>
<p>$rootPath = $this-&gt;CI-&gt;config-&gt;item(&#8216;root_path&#8217;);</p>
<p>define(&#8216;BULLETIN_ROOT_PATH&#8217;, $rootPath.&#8217;bulletin/&#8217;);</p>
<p>$phplist_root_path = (defined(&#8216;PHPLIST_ROOT_PATH&#8217;)) ? PHPLIST_ROOT_PATH : BULLETIN_ROOT_PATH;</p>
<p>// Include needed files<br />
include($phplist_root_path . &#8216;admin/defaultconfig.inc&#8217;);<br />
include($phplist_root_path . &#8216;config/config.php&#8217;);<br />
include($phplist_root_path . &#8216;admin/mysql.inc&#8217;);<br />
include($phplist_root_path . &#8216;admin/connect.php&#8217;);<br />
}</p>
<p>/**<br />
*<br />
* @param $email<br />
* @param $lists<br />
* @return mixed<br />
*/<br />
public function user_add($email, $lists = array())<br />
{<br />
if(!$email) return false;</p>
<p>if(is_array($lists) &amp;&amp; count($lists))<br />
{<br />
$userID = addNewUser($email);</p>
<p>if($userID &gt; 0)<br />
{<br />
foreach($lists as $list)<br />
{<br />
$this-&gt;userAddToList($userID, $list);<br />
}<br />
}<br />
}<br />
else<br />
{<br />
return addNewUser($email);<br />
}<br />
}</p>
<p>public function get_lists()<br />
{<br />
$results = $this-&gt;getLists();</p>
<p>return $results;<br />
}</p>
<p>public function user_add_list($email, $list)<br />
{<br />
if(!$email || !$list) return;</p>
<p>$userid = $this-&gt;getUserIDByEmail($email);</p>
<p>if($userid &gt; 0)<br />
{<br />
$this-&gt;userAddToList($userid, $list);<br />
}<br />
else<br />
{<br />
return;<br />
}<br />
}</p>
<p>public function user_remove_list($email, $list)<br />
{<br />
if(!$email || !$list) return;</p>
<p>$userid = $this-&gt;getUserIDByEmail($email);</p>
<p>if($userid &gt; 0)<br />
{<br />
$this-&gt;userRemoveToList($userid, $list);<br />
}<br />
else<br />
{<br />
return;<br />
}<br />
}</p>
<p>/**<br />
*<br />
* @param $email<br />
* @return mixed<br />
*/<br />
public function user_blacklist($email)<br />
{<br />
if(!$email) return;</p>
<p>return addUserToBlackList($email);<br />
}</p>
<p>/**<br />
*<br />
* @param $email<br />
* @return mixed<br />
*/<br />
public function user_unblacklist($email)<br />
{<br />
if(!$email) return;</p>
<p>$userid = $this-&gt;getUserIDByEmail($email);</p>
<p>if($userid &gt; 0)<br />
{<br />
return unBlackList($userid);<br />
}<br />
else<br />
{<br />
return false;<br />
}<br />
}</p>
<p>private function getUserIDByEmail($email = &#8221;) {<br />
global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;<br />
if (!$email) return;</p>
<p># workaround for integration webbler/phplist<br />
if (!isset($table_prefix))<br />
$table_prefix = &#8220;phplist_&#8221;;</p>
<p>if (isset($tables["attribute"])) {<br />
$att_table = $tables["attribute"];<br />
$user_att_table = $tables["user_attribute"];<br />
$usertable = $tables["user"];<br />
} else {<br />
$att_table = &#8220;attribute&#8221;;<br />
$user_att_table = &#8220;user_attribute&#8221;;<br />
$usertable = &#8220;user&#8221;;<br />
}<br />
$email = mysql_real_escape_string($email, $database_connection);<br />
$userid = Sql_Fetch_Row_Query(&#8220;select id from {$usertable} where email = \&#8221;$email\&#8221;");<br />
$id = $userid[0];</p>
<p>return $id;<br />
}</p>
<p>private function userAddToList($id = 0, $listID = 0)<br />
{<br />
global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;</p>
<p>$id = intval($id);<br />
$listID = intval($listID);<br />
if(!$id || !$listID) return false;</p>
<p>$query = &#8220;replace into &#8220;.$tables["listuser"].&#8221; (userid,listid,entered) values($id,$listID,now())&#8221;;<br />
$result = Sql_query($query);<br />
}</p>
<p>private function userRemoveToList($id = 0, $listID = 0)<br />
{<br />
global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;</p>
<p>$id = intval($id);<br />
$listID = intval($listID);<br />
if(!$id || !$listID) return false;</p>
<p>$query = &#8220;delete from &#8220;.$tables["listuser"].&#8221; where userid = $id and listid = $listID&#8221;;<br />
$result = Sql_query($query);<br />
}</p>
<p>private function getLists()<br />
{<br />
global $tables, $table_prefix, $config, $usertable_prefix, $database_connection;</p>
<p>$results = array();<br />
$result = Sql_query(&#8220;SELECT * FROM {$tables['list']} order by listorder&#8221;);<br />
while ($row = Sql_fetch_array($result))<br />
{<br />
$results[$row['id']] = $row;<br />
}</p>
<p>return $results;<br />
}<br />
}</p>
<p>/* End of file phplist_library.php */<br />
/* Location: ./application/libraries/phplist_library.php */</p>
</div>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/&amp;title=Integrating+PHPList+and+CodeIgniter" title="Bookmark 'Integrating PHPList and CodeIgniter' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in Del.icio.us" alt="Bookmark 'Integrating PHPList and CodeIgniter' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/&amp;title=Integrating+PHPList+and+CodeIgniter" title="Bookmark 'Integrating PHPList and CodeIgniter' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in digg" alt="Bookmark 'Integrating PHPList and CodeIgniter' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/" title="Bookmark 'Integrating PHPList and CodeIgniter' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in Technorati" alt="Bookmark 'Integrating PHPList and CodeIgniter' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/&amp;t=Integrating+PHPList+and+CodeIgniter" title="Bookmark 'Integrating PHPList and CodeIgniter' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in Yahoo My Web" alt="Bookmark 'Integrating PHPList and CodeIgniter' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/&amp;title=Integrating+PHPList+and+CodeIgniter" title="Bookmark 'Integrating PHPList and CodeIgniter' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in Google Bookmarks" alt="Bookmark 'Integrating PHPList and CodeIgniter' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/&amp;title=Integrating+PHPList+and+CodeIgniter" title="Bookmark 'Integrating PHPList and CodeIgniter' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in Live-MSN" alt="Bookmark 'Integrating PHPList and CodeIgniter' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/&amp;t=Integrating+PHPList+and+CodeIgniter" title="Bookmark 'Integrating PHPList and CodeIgniter' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in FaceBook" alt="Bookmark 'Integrating PHPList and CodeIgniter' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=Integrating+PHPList+and+CodeIgniter&amp;c=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/" title="Bookmark 'Integrating PHPList and CodeIgniter' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in MySpace" alt="Bookmark 'Integrating PHPList and CodeIgniter' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/" title="Bookmark 'Integrating PHPList and CodeIgniter' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in Twitter" alt="Bookmark 'Integrating PHPList and CodeIgniter' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=Integrating+PHPList+and+CodeIgniter&amp;url=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/" title="Bookmark 'Integrating PHPList and CodeIgniter' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in FriendFeed" alt="Bookmark 'Integrating PHPList and CodeIgniter' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/&amp;title=Integrating+PHPList+and+CodeIgniter&amp;srcURL=https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/" title="Bookmark 'Integrating PHPList and CodeIgniter' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'Integrating PHPList and CodeIgniter' in Google Buzz" alt="Bookmark 'Integrating PHPList and CodeIgniter' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2010/10/integrating-phplist-and-codeigniter/feed/</wfw:commentRss>
		<slash:comments>38</slash:comments>
		</item>
		<item>
		<title>WAMP not working on localhost without active network connection</title>
		<link>https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/</link>
		<comments>https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/#comments</comments>
		<pubDate>Mon, 20 Sep 2010 08:28:28 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[network connection]]></category>
		<category><![CDATA[WAMP]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=815</guid>
		<description><![CDATA[Until recently I experienced strange problems with my WAMP server. It is not working when my machine is not connected to the internet. That was a piece of mystery for me. Actually the problem is still unknown for me although I fixed it My problem was that I had set the WAMP&#8217;s option &#8211; &#8216;Put [...]]]></description>
			<content:encoded><![CDATA[<p>Until recently I experienced strange problems with my WAMP server. It is not working when my machine is not connected to the internet. That was a piece of mystery for me. Actually the problem is still unknown for me although I fixed it <img src='https://georgi.budinov.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  My problem was that I had set the WAMP&#8217;s option &#8211; &#8216;Put online&#8217;. It took me reaaaally long time until I figure that this was causing the problems. It has to do something with the configurations in the httpd.conf but I am still unclear which setting it is enabling/disabling. Found a lot of threads on the internet about this so thought to share it.</p>
<p>Update: I feel stupid but actually the problem was just in FF. I am still a bit confused why changing the setting of WAMP has effect on the way FF is working &#8230;</p>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/&amp;title=WAMP+not+working+on+localhost+without+active+network+connection" title="Bookmark 'WAMP not working on localhost without active network connection' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'WAMP not working on localhost without active network connection' in Del.icio.us" alt="Bookmark 'WAMP not working on localhost without active network connection' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/&amp;title=WAMP+not+working+on+localhost+without+active+network+connection" title="Bookmark 'WAMP not working on localhost without active network connection' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'WAMP not working on localhost without active network connection' in digg" alt="Bookmark 'WAMP not working on localhost without active network connection' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/" title="Bookmark 'WAMP not working on localhost without active network connection' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'WAMP not working on localhost without active network connection' in Technorati" alt="Bookmark 'WAMP not working on localhost without active network connection' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/&amp;t=WAMP+not+working+on+localhost+without+active+network+connection" title="Bookmark 'WAMP not working on localhost without active network connection' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'WAMP not working on localhost without active network connection' in Yahoo My Web" alt="Bookmark 'WAMP not working on localhost without active network connection' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/&amp;title=WAMP+not+working+on+localhost+without+active+network+connection" title="Bookmark 'WAMP not working on localhost without active network connection' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'WAMP not working on localhost without active network connection' in Google Bookmarks" alt="Bookmark 'WAMP not working on localhost without active network connection' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/&amp;title=WAMP+not+working+on+localhost+without+active+network+connection" title="Bookmark 'WAMP not working on localhost without active network connection' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'WAMP not working on localhost without active network connection' in Live-MSN" alt="Bookmark 'WAMP not working on localhost without active network connection' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/&amp;t=WAMP+not+working+on+localhost+without+active+network+connection" title="Bookmark 'WAMP not working on localhost without active network connection' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'WAMP not working on localhost without active network connection' in FaceBook" alt="Bookmark 'WAMP not working on localhost without active network connection' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=WAMP+not+working+on+localhost+without+active+network+connection&amp;c=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/" title="Bookmark 'WAMP not working on localhost without active network connection' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'WAMP not working on localhost without active network connection' in MySpace" alt="Bookmark 'WAMP not working on localhost without active network connection' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/" title="Bookmark 'WAMP not working on localhost without active network connection' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'WAMP not working on localhost without active network connection' in Twitter" alt="Bookmark 'WAMP not working on localhost without active network connection' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=WAMP+not+working+on+localhost+without+active+network+connection&amp;url=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/" title="Bookmark 'WAMP not working on localhost without active network connection' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'WAMP not working on localhost without active network connection' in FriendFeed" alt="Bookmark 'WAMP not working on localhost without active network connection' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/&amp;title=WAMP+not+working+on+localhost+without+active+network+connection&amp;srcURL=https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/" title="Bookmark 'WAMP not working on localhost without active network connection' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'WAMP not working on localhost without active network connection' in Google Buzz" alt="Bookmark 'WAMP not working on localhost without active network connection' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2010/09/wamp-not-working-on-localhost-without-active-network-connection/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Non-latin characters in the url and ajax problems</title>
		<link>https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/</link>
		<comments>https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/#comments</comments>
		<pubDate>Sun, 19 Sep 2010 08:08:42 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[encodeURIComponent]]></category>
		<category><![CDATA[javascript function]]></category>
		<category><![CDATA[urlencode]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=796</guid>
		<description><![CDATA[These troubles have some history for me. In a month a go I experienced problems with calling ajax scripts with url holding utf8 characters &#8211; bulgarian alphabet for example. So I wrote a javascript function which actually was a bit messy that could handle the problem using encodeURIComponent. Afterwards I found that I simply could [...]]]></description>
			<content:encoded><![CDATA[<p>These troubles have some history for me. In a month a go I experienced problems with calling ajax scripts with url holding utf8 characters &#8211; bulgarian alphabet for example. So I wrote a javascript function which <span id="more-796"></span>actually was a bit messy that could handle the problem using encodeURIComponent. Afterwards I found that I simply could use urlencode in php which was a better choice according to me at that time. It looked far more clear to me, so I rewrote the functionality. Guess what &#8211; IE 6 problems. No matter that in the output of the javascript function encodeURIComponent and the php function urlencode seemed to be the same! So I had to revert back the functionality and thought to improve my javascript function and will just share that to you as it seems to be a very generic solution that will work with any url &#8230; Here it goes:</p>
<pre class="brush: php;">
function encodeCyrillicURIComponent(str)
{
	str = str.replace(
		new RegExp( &quot;[^a-zA-Z\/-:_]&quot;, &quot;g&quot; ),
		function($0)
		{
			return encodeURIComponent($0);
		}
	);

	return str;
}
</pre>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/&amp;title=Non-latin+characters+in+the+url+and+ajax+problems" title="Bookmark 'Non-latin characters in the url and ajax problems' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in Del.icio.us" alt="Bookmark 'Non-latin characters in the url and ajax problems' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/&amp;title=Non-latin+characters+in+the+url+and+ajax+problems" title="Bookmark 'Non-latin characters in the url and ajax problems' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in digg" alt="Bookmark 'Non-latin characters in the url and ajax problems' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/" title="Bookmark 'Non-latin characters in the url and ajax problems' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in Technorati" alt="Bookmark 'Non-latin characters in the url and ajax problems' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/&amp;t=Non-latin+characters+in+the+url+and+ajax+problems" title="Bookmark 'Non-latin characters in the url and ajax problems' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in Yahoo My Web" alt="Bookmark 'Non-latin characters in the url and ajax problems' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/&amp;title=Non-latin+characters+in+the+url+and+ajax+problems" title="Bookmark 'Non-latin characters in the url and ajax problems' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in Google Bookmarks" alt="Bookmark 'Non-latin characters in the url and ajax problems' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/&amp;title=Non-latin+characters+in+the+url+and+ajax+problems" title="Bookmark 'Non-latin characters in the url and ajax problems' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in Live-MSN" alt="Bookmark 'Non-latin characters in the url and ajax problems' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/&amp;t=Non-latin+characters+in+the+url+and+ajax+problems" title="Bookmark 'Non-latin characters in the url and ajax problems' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in FaceBook" alt="Bookmark 'Non-latin characters in the url and ajax problems' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=Non-latin+characters+in+the+url+and+ajax+problems&amp;c=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/" title="Bookmark 'Non-latin characters in the url and ajax problems' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in MySpace" alt="Bookmark 'Non-latin characters in the url and ajax problems' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/" title="Bookmark 'Non-latin characters in the url and ajax problems' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in Twitter" alt="Bookmark 'Non-latin characters in the url and ajax problems' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=Non-latin+characters+in+the+url+and+ajax+problems&amp;url=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/" title="Bookmark 'Non-latin characters in the url and ajax problems' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in FriendFeed" alt="Bookmark 'Non-latin characters in the url and ajax problems' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/&amp;title=Non-latin+characters+in+the+url+and+ajax+problems&amp;srcURL=https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/" title="Bookmark 'Non-latin characters in the url and ajax problems' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'Non-latin characters in the url and ajax problems' in Google Buzz" alt="Bookmark 'Non-latin characters in the url and ajax problems' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2010/09/non-latin-characters-in-the-url-and-ajax-problems/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Happy programmer&#8217;s day to all!</title>
		<link>https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/</link>
		<comments>https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/#comments</comments>
		<pubDate>Mon, 13 Sep 2010 09:53:25 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Programmer's day]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=753</guid>
		<description><![CDATA[Happy programmer&#8217;s day to all of us coding all the day and drinking beer. Cheers! Should we count the 128th day of the year for another programmer&#8217;s day ? Here in Bulgaria it is not a holiday at all but anyway + 1 vote from me! Bookmark It]]></description>
			<content:encoded><![CDATA[<p>Happy programmer&#8217;s day to all of us coding all the day and drinking beer. Cheers! Should we count the 128th day of the year for another programmer&#8217;s day ? Here in Bulgaria it is not a holiday at all but anyway</p>
<p>+ 1 vote from me!</p>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/&amp;title=Happy+programmer%26%238217%3Bs+day+to+all%21" title="Bookmark 'Happy programmer&#8217;s day to all!' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in Del.icio.us" alt="Bookmark 'Happy programmer&#8217;s day to all!' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/&amp;title=Happy+programmer%26%238217%3Bs+day+to+all%21" title="Bookmark 'Happy programmer&#8217;s day to all!' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in digg" alt="Bookmark 'Happy programmer&#8217;s day to all!' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/" title="Bookmark 'Happy programmer&#8217;s day to all!' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in Technorati" alt="Bookmark 'Happy programmer&#8217;s day to all!' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/&amp;t=Happy+programmer%26%238217%3Bs+day+to+all%21" title="Bookmark 'Happy programmer&#8217;s day to all!' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in Yahoo My Web" alt="Bookmark 'Happy programmer&#8217;s day to all!' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/&amp;title=Happy+programmer%26%238217%3Bs+day+to+all%21" title="Bookmark 'Happy programmer&#8217;s day to all!' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in Google Bookmarks" alt="Bookmark 'Happy programmer&#8217;s day to all!' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/&amp;title=Happy+programmer%26%238217%3Bs+day+to+all%21" title="Bookmark 'Happy programmer&#8217;s day to all!' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in Live-MSN" alt="Bookmark 'Happy programmer&#8217;s day to all!' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/&amp;t=Happy+programmer%26%238217%3Bs+day+to+all%21" title="Bookmark 'Happy programmer&#8217;s day to all!' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in FaceBook" alt="Bookmark 'Happy programmer&#8217;s day to all!' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=Happy+programmer%26%238217%3Bs+day+to+all%21&amp;c=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/" title="Bookmark 'Happy programmer&#8217;s day to all!' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in MySpace" alt="Bookmark 'Happy programmer&#8217;s day to all!' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/" title="Bookmark 'Happy programmer&#8217;s day to all!' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in Twitter" alt="Bookmark 'Happy programmer&#8217;s day to all!' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=Happy+programmer%26%238217%3Bs+day+to+all%21&amp;url=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/" title="Bookmark 'Happy programmer&#8217;s day to all!' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in FriendFeed" alt="Bookmark 'Happy programmer&#8217;s day to all!' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/&amp;title=Happy+programmer%26%238217%3Bs+day+to+all%21&amp;srcURL=https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/" title="Bookmark 'Happy programmer&#8217;s day to all!' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'Happy programmer&#8217;s day to all!' in Google Buzz" alt="Bookmark 'Happy programmer&#8217;s day to all!' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2010/09/happy-programmers-day-to-all/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Fix for wmode bug still existing in FireFox</title>
		<link>https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/</link>
		<comments>https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/#comments</comments>
		<pubDate>Sun, 12 Sep 2010 13:30:17 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=735</guid>
		<description><![CDATA[I had written a post already for the fixed wmode bug in the new version of flash player in FireFox but now I have made almost complete fix for the issue. The issue itself is appearing when you try to use shift+arrows selection shortcut in TextInput field. So what I did was just to extend [...]]]></description>
			<content:encoded><![CDATA[<p>I had written a post already for the <span style="text-decoration: line-through;">fixed</span> wmode bug in the new version of flash player in FireFox but now I have made almost complete fix for the issue. The issue itself is appearing when you try to use shift+arrows selection shortcut in TextInput field. So <span id="more-735"></span> what I did was just to extend the TextInput class and use that. The implementation perhaps looks quite strange, but works! Still not working fully as expected though but I played with that too much time and couldn&#8217;t adjust it to work absolutely fine. So if anyone wants to spent some more time on the code hete it is:</p>
<pre class="brush: as3;">
package
{
	import mx.controls.TextInput;
	import mx.events.FlexEvent;
	import flash.events.KeyboardEvent;
	import flash.events.Event;
	import flash.ui.Keyboard;
	import flash.external.ExternalInterface;

	public class CafeTextInput extends TextInput
	{
		private var ssi : int = 0;
		private var sei : int = 0;
		private var shiftDirection : String = 'none';
		private var lastShiftDirection : String = 'none';

		public function CafeTextInput()
		{
			super();
			var method:XML = &lt;![CDATA[
			     function( ){
			         return { ff: /Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent), version:navigator.appVersion};}
			    ]]&gt;
			var o:Object = ExternalInterface.call( method );

			if(o.ff)
			{
				this.addEventListener(KeyboardEvent.KEY_DOWN, onBeforeKeyDown, false, 10000);
				this.addEventListener(KeyboardEvent.KEY_DOWN, onAfterKeyDown, false, -10000);
			}
		}

		private function onBeforeKeyDown(e : KeyboardEvent) : void
        {
			if (e.keyCode == Keyboard.LEFT || e.keyCode == Keyboard.RIGHT)
			{
				if(ssi == -11111111 &amp;&amp; sei == -11111111)
				{
					ssi = this.selectionBeginIndex;
					sei = this.selectionEndIndex;
				}
			}
        }

        private function onAfterKeyDown(e : KeyboardEvent) : void
        {
			if (e.keyCode == Keyboard.LEFT || e.keyCode == Keyboard.RIGHT)
			{
				if(ssi != -11111111 &amp;&amp; sei != -11111111)
				{
					if(e.shiftKey)
					{
						if(sei == ssi)
						{
							shiftDirection = 'none';
						}

						if(e.keyCode == Keyboard.LEFT)
						{
							if(shiftDirection == 'right' &amp;&amp; lastShiftDirection != 'right')
							{
								sei--;
							}
							if(shiftDirection == 'none' &amp;&amp; ssi+1 == sei)
							{
								shiftDirection = 'left';
							}

							this.setSelection(sei, ssi);
							lastShiftDirection = 'left';
						}
						else if(e.keyCode == Keyboard.RIGHT)
						{
							if(shiftDirection == 'left' &amp;&amp; lastShiftDirection != 'left')
							{
								ssi++;
							}
							if(shiftDirection == 'none' &amp;&amp; ssi+1 == sei)
							{
								shiftDirection = 'right';
							}

							this.setSelection(ssi, sei);
							lastShiftDirection = 'right';
						}
					}
					else
					{
						shiftDirection = 'none';
						this.setSelection(ssi, sei);
					}

					ssi = -11111111;
					sei = -11111111;
				}
			}
                }
	}
}
</pre>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/&amp;title=Fix+for+wmode+bug+still+existing+in+FireFox" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Del.icio.us" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/&amp;title=Fix+for+wmode+bug+still+existing+in+FireFox" title="Bookmark 'Fix for wmode bug still existing in FireFox' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in digg" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Technorati" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/&amp;t=Fix+for+wmode+bug+still+existing+in+FireFox" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Yahoo My Web" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/&amp;title=Fix+for+wmode+bug+still+existing+in+FireFox" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Google Bookmarks" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/&amp;title=Fix+for+wmode+bug+still+existing+in+FireFox" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Live-MSN" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/&amp;t=Fix+for+wmode+bug+still+existing+in+FireFox" title="Bookmark 'Fix for wmode bug still existing in FireFox' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in FaceBook" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=Fix+for+wmode+bug+still+existing+in+FireFox&amp;c=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/" title="Bookmark 'Fix for wmode bug still existing in FireFox' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in MySpace" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Twitter" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=Fix+for+wmode+bug+still+existing+in+FireFox&amp;url=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/" title="Bookmark 'Fix for wmode bug still existing in FireFox' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in FriendFeed" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/&amp;title=Fix+for+wmode+bug+still+existing+in+FireFox&amp;srcURL=https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'Fix for wmode bug still existing in FireFox' in Google Buzz" alt="Bookmark 'Fix for wmode bug still existing in FireFox' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2010/09/fix-for-wmode-bug-still-existing-in-firefox/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PayPal and its account optional setting</title>
		<link>https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/</link>
		<comments>https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 10:27:30 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Account Optional Setting]]></category>
		<category><![CDATA[PayPal]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=712</guid>
		<description><![CDATA[I had played with PayPal&#8217;s integration in a few online stores but never got to this stupid situation. For those that are not aware, the &#8216;Account Optional Setting&#8217; allows the customers of an online store to pay directly, supplying the credit/debit/prepaid card information. This is really really awesome feature, because creating PayPal account is actually [...]]]></description>
			<content:encoded><![CDATA[<p>I had played with PayPal&#8217;s integration in a few online stores but never got to this stupid situation. For those that are not aware, the &#8216;Account Optional Setting&#8217; allows the customers of an online store to pay directly, supplying the credit/debit/prepaid card information. This is really really awesome feature, because creating PayPal account is actually not enough to make a payment. Customers must verify their cards through PayPal which is done by moving through some steps including:<span id="more-712"></span></p>
<ul>
<li>PayPal charges your account for 1.50 US Dollars or Euro &#8230; actually I am not very sure</li>
<li>Then you go to your bank account provider and ask for the description in the transaction. Should be 4 or 5 digit number which you need in the next step</li>
<li>Go to your PayPal account and supply that to verify</li>
</ul>
<p>That is it! Then you can make payments through your PayPal Account. Isn&#8217;t this too much to buy a pair of shoes ?</p>
<p>Here comes the Account Optional Setting which allows all of this to be skipped. The bad news are that merchant accounts from specific countries have this option available. On the other hand this is not mentioned anywhere in the docs!!! You get to know that when you start searching for the option. I found a list of countries that have this feature enabled in some forums &#8230; don&#8217;t know if it is updated:</p>
<ul>
<li><span style="color: #000000; font-size: x-small;">Australia<br />
</span></li>
<li><span style="color: #000000; font-size: x-small;">Belgium<br />
</span></li>
<li><span style="color: #000000; font-size: x-small;">Canada<br />
</span></li>
<li><span style="color: #000000; font-size: x-small;">France<br />
</span></li>
<li><span style="color: #000000; font-size: x-small;">Hong Kong<br />
</span></li>
<li><span style="color: #000000; font-size: x-small;">Netherlands<br />
</span></li>
<li><span style="color: #000000; font-size: x-small;">United Kingdom<br />
</span></li>
<li><span style="color: #000000; font-size: x-small;">United States </span></li>
</ul>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/&amp;title=PayPal+and+its+account+optional+setting" title="Bookmark 'PayPal and its account optional setting' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'PayPal and its account optional setting' in Del.icio.us" alt="Bookmark 'PayPal and its account optional setting' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/&amp;title=PayPal+and+its+account+optional+setting" title="Bookmark 'PayPal and its account optional setting' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'PayPal and its account optional setting' in digg" alt="Bookmark 'PayPal and its account optional setting' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/" title="Bookmark 'PayPal and its account optional setting' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'PayPal and its account optional setting' in Technorati" alt="Bookmark 'PayPal and its account optional setting' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/&amp;t=PayPal+and+its+account+optional+setting" title="Bookmark 'PayPal and its account optional setting' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'PayPal and its account optional setting' in Yahoo My Web" alt="Bookmark 'PayPal and its account optional setting' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/&amp;title=PayPal+and+its+account+optional+setting" title="Bookmark 'PayPal and its account optional setting' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'PayPal and its account optional setting' in Google Bookmarks" alt="Bookmark 'PayPal and its account optional setting' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/&amp;title=PayPal+and+its+account+optional+setting" title="Bookmark 'PayPal and its account optional setting' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'PayPal and its account optional setting' in Live-MSN" alt="Bookmark 'PayPal and its account optional setting' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/&amp;t=PayPal+and+its+account+optional+setting" title="Bookmark 'PayPal and its account optional setting' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'PayPal and its account optional setting' in FaceBook" alt="Bookmark 'PayPal and its account optional setting' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=PayPal+and+its+account+optional+setting&amp;c=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/" title="Bookmark 'PayPal and its account optional setting' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'PayPal and its account optional setting' in MySpace" alt="Bookmark 'PayPal and its account optional setting' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/" title="Bookmark 'PayPal and its account optional setting' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'PayPal and its account optional setting' in Twitter" alt="Bookmark 'PayPal and its account optional setting' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=PayPal+and+its+account+optional+setting&amp;url=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/" title="Bookmark 'PayPal and its account optional setting' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'PayPal and its account optional setting' in FriendFeed" alt="Bookmark 'PayPal and its account optional setting' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/&amp;title=PayPal+and+its+account+optional+setting&amp;srcURL=https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/" title="Bookmark 'PayPal and its account optional setting' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'PayPal and its account optional setting' in Google Buzz" alt="Bookmark 'PayPal and its account optional setting' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2010/09/paypal-and-its-account-optional-setting/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Prado and its page state</title>
		<link>https://georgi.budinov.com/2010/09/prado-and-its-page-state/</link>
		<comments>https://georgi.budinov.com/2010/09/prado-and-its-page-state/#comments</comments>
		<pubDate>Fri, 03 Sep 2010 13:44:55 +0000</pubDate>
		<dc:creator>Georgi Budinov</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Prado]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[page state]]></category>

		<guid isPermaLink="false">http://georgi.budinov.com/?p=685</guid>
		<description><![CDATA[I had some hard time tracking a bug of mine. The website is powered with the Prado framework latest version. It happened that the bug was a little tricky to be found. I have extended the TPage class and using it as MTPage. There I had a function used by a TDropDownList which is AutoPostBack [...]]]></description>
			<content:encoded><![CDATA[<p>I had some hard time tracking a bug of mine. The website is powered with the Prado framework latest version. It happened that the bug was a little tricky to be found. I have extended the TPage class and using it as MTPage. There I had a function used by a TDropDownList which is AutoPostBack enabled on changing the selected index &#8211; on the function executes $this-&gt;Response-&gt;reload(). The actual TDropDownList is in the MainLayOut.tpl file because it should be present on each page. But I have forgotten to use the following syntax:<br />
<span id="more-685"></span></p>
<pre class="brush: php;">
if (!$this-&gt;Page-&gt;IsPostBack &amp;&amp; !$this-&gt;Page-&gt;IsCallBack)
{
// do it here
}
</pre>
<p>That is why when I submitted another TDropDownList on the page it fired the function described above, which lead to a page reload. Silly &#8230;</p>
<p>Ok perhaps you are wondering why the title of the post is about page state &#8211; I just want to express my opinion on the page state idea which was reminded o me by this problem. I really find it helpful in programming, it is borrowed from ASP.NET and yes it has some problems when it has to hold a lot of that &#8211; mainly performance. But on the other hand it can save a lot of database queries &#8211; as the situation above &#8211; a db query to fill the dropdown after postback. Another very good usage is holding private variables on which the programmer can rely on that cannot be modified by the end user and this is due to its encryption.</p>
<!-- Social Bookmarking Reloaded BEGIN --><div class="social_bookmark"><em>Bookmark It</em><br /><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=https://georgi.budinov.com/2010/09/prado-and-its-page-state/&amp;title=Prado+and+its+page+state" title="Bookmark 'Prado and its page state' in Del.icio.us"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/delicious.png" title="Bookmark 'Prado and its page state' in Del.icio.us" alt="Bookmark 'Prado and its page state' in Del.icio.us" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=https://georgi.budinov.com/2010/09/prado-and-its-page-state/&amp;title=Prado+and+its+page+state" title="Bookmark 'Prado and its page state' in digg"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/digg.png" title="Bookmark 'Prado and its page state' in digg" alt="Bookmark 'Prado and its page state' in digg" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.technorati.com/faves?add=https://georgi.budinov.com/2010/09/prado-and-its-page-state/" title="Bookmark 'Prado and its page state' in Technorati"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/technorati.png" title="Bookmark 'Prado and its page state' in Technorati" alt="Bookmark 'Prado and its page state' in Technorati" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://myweb2.search.yahoo.com/myresults/bookmarklet?u=https://georgi.budinov.com/2010/09/prado-and-its-page-state/&amp;t=Prado+and+its+page+state" title="Bookmark 'Prado and its page state' in Yahoo My Web"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/yahoo_myweb.png" title="Bookmark 'Prado and its page state' in Yahoo My Web" alt="Bookmark 'Prado and its page state' in Yahoo My Web" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=https://georgi.budinov.com/2010/09/prado-and-its-page-state/&amp;title=Prado+and+its+page+state" title="Bookmark 'Prado and its page state' in Google Bookmarks"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/google.png" title="Bookmark 'Prado and its page state' in Google Bookmarks" alt="Bookmark 'Prado and its page state' in Google Bookmarks" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="https://favorites.live.com/quickadd.aspx?url=https://georgi.budinov.com/2010/09/prado-and-its-page-state/&amp;title=Prado+and+its+page+state" title="Bookmark 'Prado and its page state' in Live-MSN"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/live.png" title="Bookmark 'Prado and its page state' in Live-MSN" alt="Bookmark 'Prado and its page state' in Live-MSN" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.facebook.com/share.php?u=https://georgi.budinov.com/2010/09/prado-and-its-page-state/&amp;t=Prado+and+its+page+state" title="Bookmark 'Prado and its page state' in FaceBook"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/facebook.png" title="Bookmark 'Prado and its page state' in FaceBook" alt="Bookmark 'Prado and its page state' in FaceBook" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.myspace.com/Modules/PostTo/Pages/?t=Prado+and+its+page+state&amp;c=https://georgi.budinov.com/2010/09/prado-and-its-page-state/" title="Bookmark 'Prado and its page state' in MySpace"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/myspace.png" title="Bookmark 'Prado and its page state' in MySpace" alt="Bookmark 'Prado and its page state' in MySpace" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://twitter.com/home?status=https://georgi.budinov.com/2010/09/prado-and-its-page-state/" title="Bookmark 'Prado and its page state' in Twitter"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/twitter.png" title="Bookmark 'Prado and its page state' in Twitter" alt="Bookmark 'Prado and its page state' in Twitter" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://friendfeed.com/share/bookmarklet/frame#title=Prado+and+its+page+state&amp;url=https://georgi.budinov.com/2010/09/prado-and-its-page-state/" title="Bookmark 'Prado and its page state' in FriendFeed"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/friendfeed.png" title="Bookmark 'Prado and its page state' in FriendFeed" alt="Bookmark 'Prado and its page state' in FriendFeed" /></a><a class="social_img" onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,border=0,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.google.com/reader/link?url=https://georgi.budinov.com/2010/09/prado-and-its-page-state/&amp;title=Prado+and+its+page+state&amp;srcURL=https://georgi.budinov.com/2010/09/prado-and-its-page-state/" title="Bookmark 'Prado and its page state' in Google Buzz"><img src="https://georgi.budinov.com/wp-content/plugins/social-bookmarking-reloaded/googlebuzz.png" title="Bookmark 'Prado and its page state' in Google Buzz" alt="Bookmark 'Prado and its page state' in Google Buzz" /></a></div>
<!-- Social Bookmarking Reloaded END -->]]></content:encoded>
			<wfw:commentRss>https://georgi.budinov.com/2010/09/prado-and-its-page-state/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
