<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.1" -->
<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/"
	>

<channel>
	<title>Pavel's Weblog</title>
	<link>http://pavel.kuzub.com</link>
	<description>Things I am willing to share</description>
	<pubDate>Sat, 08 Oct 2011 12:49:00 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.1</generator>
	<language>en</language>
			<item>
		<title>iPK Combo 1.2 Release</title>
		<link>http://pavel.kuzub.com/ipk-combo-12-release</link>
		<comments>http://pavel.kuzub.com/ipk-combo-12-release#comments</comments>
		<pubDate>Fri, 08 Jul 2011 20:59:03 +0000</pubDate>
		<dc:creator>Pavel Kuzub</dc:creator>
		
		<category><![CDATA[Sidebar Gadgets]]></category>

		<guid isPermaLink="false">http://pavel.kuzub.com/ipk-combo-12-release</guid>
		<description><![CDATA[It&#8217;s been a long journey spending hours every evening working towards identifying and fixing hung issue of gadget under Internet Explorer 9. I thought I did it numerous times, but I was not there yet at that moment as time testing showed. Again, majority of code has been revised and rewritten and every line has [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a long journey spending hours every evening working towards identifying and fixing hung issue of gadget under Internet Explorer 9. I thought I did it numerous times, but I was not there yet at that moment as time testing showed. Again, majority of code has been revised and rewritten and every line has been under suspect.</p>
<p>Luckily, I have come up to conclusion on how to handle this freezing/hanging issue properly, so gadget will no longer bother you on your Windows shutdown or closing Settings screen. </p>
<p>I couldn&#8217;t leave new release without any new features, since many would not find the reason to upgrade, so I checked by notes on what was wanted and added System Drives utilization information.<br />
Unlike other gadgets showing Drives information I have seen on the Gallery, I have made my gadget show all your ready drives by default and you can configure exceptions instead. This way, whenever you plug in flash drive or mount a network drive - the gadget will automatically pick it up and expand the gadget with one more line representing the Drive. Similarly, if you unplug the drive - it will disappear from the gadget dynamically. All animated, of course, and simply working out of the box.</p>
<p>As there might be more releases going forward, I decided to add check for an update, so that you would know exactly when new version is available for your download. Once new version is out - you will see notification on the gadget with a link to download page.</p>
<p>Way too many improvements are delivering with this release, but they are so behind the scene, that you will not notice, so no need to list them except that it will use slightly less CPU now after running for a while.</p>
<p>Please go to the original <a href="http://pavel.kuzub.com/ipk-combo" >iPK Combo</a> post for download information.</p>
<p>Leave me your feedback! That&#8217;s all my motivation for this free software</p>
]]></content:encoded>
			<wfw:commentRss>http://pavel.kuzub.com/ipk-combo-12-release/feed</wfw:commentRss>
		</item>
		<item>
		<title>iPK Combo 1.1 Release</title>
		<link>http://pavel.kuzub.com/ipk-combo-11-release</link>
		<comments>http://pavel.kuzub.com/ipk-combo-11-release#comments</comments>
		<pubDate>Tue, 22 Mar 2011 07:12:46 +0000</pubDate>
		<dc:creator>Pavel Kuzub</dc:creator>
		
		<category><![CDATA[Sidebar Gadgets]]></category>

		<guid isPermaLink="false">http://pavel.kuzub.com/ipk-combo-11-release</guid>
		<description><![CDATA[Hello Folks,
This is to let you know it has passed a year since the original release of iPK Combo 1.0 Windows Gadget. Your feedback has turned me on and I have created time for developing new update - thanks for your feedback!
Please go to the original iPK Combo post for download information.
I started with IE9 [...]]]></description>
			<content:encoded><![CDATA[<p>Hello Folks,<br/></p>
<p>This is to let you know it has passed a year since the original release of iPK Combo 1.0 Windows Gadget. Your feedback has turned me on and I have created time for developing new update - thanks for your feedback!<br />
Please go to the original <a href="http://pavel.kuzub.com/ipk-combo" >iPK Combo</a> post for download information.</p>
<p>I started with IE9 transparency fix which turned to be an easy fix, but at that time I could not stop developing more features I have heard from you guys! </p>
<p>One of the wishlist contained adding grey color and I decided to redraw signal and battery graphics that way, to enable you picking any colors you want to enable smooth fade between these custom colors. </p>
<p>The next step was to enable you guys picking the color comfortably without entering the hex of it - that is where I have come up with a great deal - <a href="http://www.eyecon.ro/colorpicker/" onclick="javascript:urchinTracker('/outbound/article/http://www.eyecon.ro/colorpicker/');">Color Picker</a> by Stefan Petre. Modified a little to fit our size and needs. </p>
<p>Next step was redoing the Properties page to fit all the data handy in tabs and adding sliders to change animation speed and external IP refresh interval. </p>
<p>Then I noticed that there was no way to show any of the IP addresses without showing the signal, so I have redone the code to enable this as well. </p>
<p>Then I noticed that a nice little globe that I love is not seen any often as it only shows when checking external IP and hides when it is done, but since IP is returned so fast - the globe does not appear at all, so I decided to add a little delay before it hides so we could enjoy its rotation - hope you like it.</p>
<p>I also noticed that if an access point is longer to fit within small area - I was simply hiding overflow, but it was done by the space as a delimiter, so potentially if you have a long name of access point without spaces - it could not show at all. I switched this behavior to make the digits longer than 10 a bit more invisible and continue under percentage.</p>
<p>Another important finding to me was that there was a minor memory leak when you consume animation and a little performance tweaking project started. I have revised the code removing unnecessary variables wherever I spotted the case and could not spotted the leak. I got help of the tool called <a href="http://outofhanwell.com/ieleak/" onclick="javascript:urchinTracker('/outbound/article/http://outofhanwell.com/ieleak/');">Drip</a>, but the leak was not that simple to be identifiable. Nevertheless, I have identified the leak and <a href="http://pavel.kuzub.com/settimeout-memory-leak" >fixed it</a>.</p>
<p>Hope this update with release my hands out of the code for a while and enable my wife using all my free time <img src='http://pavel.kuzub.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Thank you for using iPK Combo gadget! Cheers!</p>
]]></content:encoded>
			<wfw:commentRss>http://pavel.kuzub.com/ipk-combo-11-release/feed</wfw:commentRss>
		</item>
		<item>
		<title>setTimeout memory leak</title>
		<link>http://pavel.kuzub.com/settimeout-memory-leak</link>
		<comments>http://pavel.kuzub.com/settimeout-memory-leak#comments</comments>
		<pubDate>Sun, 20 Mar 2011 19:13:12 +0000</pubDate>
		<dc:creator>Pavel Kuzub</dc:creator>
		
		<category><![CDATA[Javascript]]></category>

		<category><![CDATA[setTimeout memory leak]]></category>

		<guid isPermaLink="false">http://pavel.kuzub.com/settimeout-memory-leak</guid>
		<description><![CDATA[For those who use setTimeout function in Javascript - do not pass name of function you want to trigger as a sting. If used with string - Javascript will use EVAL to execute it - this is creating a memory leak if used for instant loop. Garbadge collector will not clear the memory after calling [...]]]></description>
			<content:encoded><![CDATA[<p>For those who use setTimeout function in Javascript - do not pass name of function you want to trigger as a sting. If used with string - Javascript will use EVAL to execute it - this is creating a memory leak if used for instant loop. Garbadge collector will not clear the memory after calling clearTimeout and delete setTimeout object. Insted of using string - use blank funtion and put funtion you want to trigger inside. This will not involve EVAL, but will generate a pointer that Garbadge collector will handle and free up memory.</p>
<blockquote style="margin-right: 0px" dir="ltr"><p><code><font size="1"><br />
// generates memory leak:<br />
myTimeout = setTimeout(&#8221;myFunction()&#8221;, 1000);<br />
// no memory leak (no parameters to pass):<br />
myTimeout = setTimeout(myFunction, 1000);<br />
// OR:<br />
myTimeout = setTimeout(function() { myFunction(); }, 1000);<br />
</font></code>
</p></blockquote>
<p>Unfortunately, all the the samples of setTimeout function out there in the internet are passing string as parameter. Hard to identify memory leak, but it is there.</p>
]]></content:encoded>
			<wfw:commentRss>http://pavel.kuzub.com/settimeout-memory-leak/feed</wfw:commentRss>
		</item>
		<item>
		<title>Photo Gallery</title>
		<link>http://pavel.kuzub.com/photo-gallery</link>
		<comments>http://pavel.kuzub.com/photo-gallery#comments</comments>
		<pubDate>Sun, 10 Oct 2010 20:59:59 +0000</pubDate>
		<dc:creator>Pavel Kuzub</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://pavel.kuzub.com/photo-gallery</guid>
		<description><![CDATA[I have finally set my photo gallery to share some personal photos. Primarily for my personal use, but what a hell - I am willing to share them  
You can access it here: Gallery
]]></description>
			<content:encoded><![CDATA[<p>I have finally set my photo gallery to share some personal photos. Primarily for my personal use, but what a hell - I am willing to share them <img src='http://pavel.kuzub.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>You can access it here: <a href="http://pavel.kuzub.com/gallery/" >Gallery</a></p>
]]></content:encoded>
			<wfw:commentRss>http://pavel.kuzub.com/photo-gallery/feed</wfw:commentRss>
		</item>
		<item>
		<title>Transmission All-in-One manage script</title>
		<link>http://pavel.kuzub.com/transmission-all-in-one-manage-script</link>
		<comments>http://pavel.kuzub.com/transmission-all-in-one-manage-script#comments</comments>
		<pubDate>Sat, 09 Oct 2010 19:29:33 +0000</pubDate>
		<dc:creator>Pavel Kuzub</dc:creator>
		
		<category><![CDATA[Transmission]]></category>

		<guid isPermaLink="false">http://pavel.kuzub.com/transmission-all-in-one-manage-script</guid>
		<description><![CDATA[Hello Guys,
I would like to share with you script that I was working on time-by-time for past month or two. I was originally using numerous scripts I found over the web to do what I need, but non of them were able to manage Transmission queue on My Book due to the bug related to [...]]]></description>
			<content:encoded><![CDATA[<p>Hello Guys,</p>
<p>I would like to share with you script that I was working on time-by-time for past month or two. I was originally using numerous scripts I found over the web to do what I need, but non of them were able to manage Transmission queue on My Book due to the bug related to this system that prevent showing torrent status (Stopped/Download/Seed) correctly from transmission-remote list output.<br />
So I start developing my own script to use debug mode of Transmission Remote and parse JSON within bash to properly identify torrent state and to apply manage logic. Finally I end-up with single script to do everything I would think of someone would need from Transmission.</p>
<p>Let&#8217;s call it <strong>Transmission All-in-One manage script</strong>. Version 1.0</p>
<h3>
<p>Features:</p>
</h3>
<ul>
<li>Install/UnInstall startup and shutdown scripts (overwrites default Optware scripts)</li>
<li>Enable/Disable startup of Transmission on boot as check flag</li>
<li>Start/Stop/ReStart of Transmission</li>
<li>Stability fix by setting EVENT_NOEPOLL=1; EVENT_NOEVPORT=1; EVENT_NODEVPOLL=1</li>
<li>Updating Blocklist from download.m0k.org</li>
<li>Edit Transmission config file and if changed force Transmission to re-read config file</li>
<li>Watch Transmission and Restart if not responding</li>
<li>Status of torrents in Transmission Remote native output format</li>
<li>Torrents Queue manage:
<ul>
<li>start and stop torrents according to MAX_TO_DOWNLOAD and MAX_TO_SEED values</li>
<li>stop seeding once Max Ratio is reached</li>
<li>respects ratio-limit from Transmission config file</li>
<li>move torrent data to Complete folder once enough seeded and remove from Transmission list if succeeded</li>
<li>use minimum calls to Transmission Remote</li>
<li>watch check included</li>
<li>overcome torrent Status bug on WD MyBook system by parsing JSON instead of regular list output</li>
</ul>
</li>
</ul>
<h3>Installation:</h3>
<blockquote style="margin-right: 0px" dir="ltr">
<p><code><font size="1">cd /opt/bin<br />
wget -O transmission http://pavel.kuzub.com/scripts/transmission<br />
chmod a+x transmission<br />
transmission install<br />
</font></code></p>
</blockquote>
<h3>CRON Jobs:</h3>
<blockquote style="margin-right: 0px" dir="ltr">
<p><code><font size="1">#Transmission Queue Control every 5 minutes<br />
*/5 * * * * /opt/bin/transmission queue</p>
<p>#Transmission Restart every 2 hours as stability workaround<br />
0 */2 * * * /opt/bin/transmission restart</font> </code></p>
</blockquote>
<h3>Usage:</h3>
<blockquote style="margin-right: 0px" dir="ltr">
<p><code><font size="1"># Start Transmission<br />
transmission start</p>
<p># Stop Transmission<br />
transmission stop</p>
<p># Call Boot procedure<br />
transmission startup</p>
<p># Enable starting Transmission on boot procedure<br />
transmission startup on</p>
<p># Disable starting Transmission on boot procedure<br />
transmission startup off</p>
<p># Show Transmission Remote List<br />
transmission status</p>
<p># Restart Transmission<br />
transmission restart</p>
<p># Open VI (or another editor) to edit settings.json<br />
transmission edit</p>
<p># Watch Transmission and kick if needed<br />
transmission watch</p>
<p># Queue manage (for CRON)<br />
transmission queue</p>
<p># Install startup and shutdown scripts<br />
transmission install</p>
<p># Uninstall startup and shutdown scripts<br />
transmission uninstall</p>
<p># Show commands<br />
transmission usage<br />
</font></code></p>
</blockquote>
<h3>Community discussion:</h3>
<p><a href="http://mybookworld.wikidot.com/forum/t-270179/transmission-all-in-one-manage-script" onclick="javascript:urchinTracker('/outbound/article/http://mybookworld.wikidot.com/forum/t-270179/transmission-all-in-one-manage-script');">WD MyBook World Edition</a></p>
]]></content:encoded>
			<wfw:commentRss>http://pavel.kuzub.com/transmission-all-in-one-manage-script/feed</wfw:commentRss>
		</item>
		<item>
		<title>iPK Combo</title>
		<link>http://pavel.kuzub.com/ipk-combo</link>
		<comments>http://pavel.kuzub.com/ipk-combo#comments</comments>
		<pubDate>Sun, 21 Mar 2010 17:57:31 +0000</pubDate>
		<dc:creator>Pavel Kuzub</dc:creator>
		
		<category><![CDATA[Sidebar Gadgets]]></category>

		<category><![CDATA[battery]]></category>

		<category><![CDATA[cpu]]></category>

		<category><![CDATA[drives]]></category>

		<category><![CDATA[memory]]></category>

		<category><![CDATA[network]]></category>

		<category><![CDATA[sidebar]]></category>

		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://pavel.kuzub.com/ipk-combo</guid>
		<description><![CDATA[


Gadget shows Wireless signal, Access point name, Wireless IP, External IP, CPU load, Free RAM memory, System Drives utilization, Laptop battery level and estimated time of battery life.
Introduce smooth animation and complete customization - you control exactly what items you want to see, animation speed, color pattern, etc.

Greetings goes to iSlayer for original gadgets that [...]]]></description>
			<content:encoded><![CDATA[<p><!-- lytebox -->
<link href="/lytebox/lytebox.css" rel="stylesheet" type="text/css" media="screen" />
<script src="/lytebox/lytebox.js" type="text/javascript" language="javascript"></script><!-- / lytebox --></p>
<p><span style="float:right; padding:0 0 0 10px;"><img src="http://pavel.kuzub.com/images/iPK_Combo_1.2_img1.png" border="0" /></span>Gadget shows Wireless signal, Access point name, Wireless IP, External IP, CPU load, Free RAM memory, System Drives utilization, Laptop battery level and estimated time of battery life.<br/><br />
Introduce smooth animation and complete customization - you control exactly what items you want to see, animation speed, color pattern, etc.
</p>
<p>Greetings goes to iSlayer for original gadgets that inspired me.</p>
<p><a href="http://pavel.kuzub.com/tools/iPK%20Combo.gadget" >Download iPK Combo 1.2</a></p>
<p>Gadget use PHP script that is hosted on this website as well as whatismyip.org to identify your IP address. This can be changed in gadget settings - any webpage that is showing your external IP can be used - gadget will find the IP address on that page.</p>
<p><br/></p>
<h3>
<p>What&#8217;s New in 1.2:</p>
</h3>
<ul>
<li>Fix: Freezing/Hang issue on IE9
<li>Fix: Massive CPU and memory usage improvemets
<li>New: System Drives added
<li>New: New Version notification
<li>New: many minor improvements
</ul>
<h3>
<p>What&#8217;s New in 1.1</p>
</h3>
<ul>
<li>Fix: IE9 transparency bug
<li>Fix: Minor memory leak fixed
<li>Fix: Enable Show IP whithout Signal
<li>New: Skin custom color and fade
<li>New: Redesigned graphics
<li>New: New Properties page
<li>Minor optimizations
</ul>
<p>More Screenshots: <a href="http://pavel.kuzub.com/images/iPK_Combo_1.2_img2.jpg" rel="lyteboxiPKCombo12" title="iPK Combo 1.2 Properties 1" >one</a>, <a href="http://pavel.kuzub.com/images/iPK_Combo_1.2_img3.jpg" rel="lyteboxiPKCombo12" title="iPK Combo 1.2 Properties 2" >two</a>, <a href="http://pavel.kuzub.com/images/iPK_Combo_1.2_img4.jpg" rel="lyteboxiPKCombo12" title="iPK Combo 1.2 Properties 3" >two</a></p>
<p><br/><br/></p>
]]></content:encoded>
			<wfw:commentRss>http://pavel.kuzub.com/ipk-combo/feed</wfw:commentRss>
		</item>
		<item>
		<title>Lytebox 3.20 Modification</title>
		<link>http://pavel.kuzub.com/lytebox</link>
		<comments>http://pavel.kuzub.com/lytebox#comments</comments>
		<pubDate>Sun, 09 Sep 2007 15:29:05 +0000</pubDate>
		<dc:creator>Pavel Kuzub</dc:creator>
		
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://pavel.kuzub.com/lytebox</guid>
		<description><![CDATA[


This page is a brief demonstration of additional functionalify of Lytebox by Markus F. Hay. I took version 3.20 as a base and have added things I want too see there. Take a look by clicking on links below:

Click to Close
Next features Demo            Test [...]]]></description>
			<content:encoded><![CDATA[<p><!-- lytebox --></p>
<link href="/lytebox/lytebox.css" rel="stylesheet" type="text/css" media="screen" />
<p><script src="/lytebox/lytebox.js" type="text/javascript" language="javascript"></script><!-- / lytebox --></p>
<p>This page is a brief demonstration of additional functionalify of Lytebox by Markus F. Hay. I took version 3.20 as a base and have added things I want too see there. Take a look by clicking on links below:</p>
<p>
<a href="/lytebox/2.jpg" rel="lytebox" title="Single Image. Click on image to Close">Click to Close</a><br />
<a href="/lytebox/1.jpg" target="_blank" rel="lytebox[]" title="Clicking on right side: Next image. Clicking on left side: Close">Next features Demo</a><br/><a href="/lytebox/2.jpg" rel="lytebox[]" title="Clicking on INFO button will show additional notes" rev="[info]This is a frame&lt;br/&gt;This text is passed to this page through GET parameter. You can fully customize the look of this page.&lt;br/&gt;&lt;br/&gt;To return back to image - click BACK button, or CLOSE to exit.[/info]"> </a> <a href="/lytebox/3.jpg" rel="lytebox[]" title="Clicking on EXIF button will show EXIF information about current image" rev="[exif=true]"> </a> <a href="/lytebox/4.jpg" rel="lytebox[]" title="You can enable both buttons to any image" rev="[info]Some information here[/info][exif=true]"> </a> <a href="/lytebox/5.jpg" rel="lytebox[]" title="As navigation over image prevent regular image saving, you can save this image by saving link target in context menu. Note the link to current image while mouse is over image" rev=""> </a> <a href="/lytebox/9.jpg" rel="lytebox[]" title="If the image is bigger than your screen, RESIZE button will appear. Clicking on RESIZE will make image fitting your screen. Clicking again will restor to original size" rev=""> </a> <a href="/lytebox/7.jpg" rel="lytebox[]" title="On last image in the group, NEXT button turns to CLOSE button" rev=""> </a> <a href="/lytebox/8.jpg" rel="lyteshow[]" title="Both INFO and EXIF" rev="[info]This is a lighthouse number 8.[/info][exif=true]">Test them on Slideshow</a><br />
<a href="/lytebox/12.jpg" rel="lyteshow[]" title="INFO only" rev="[info]Try hotkeys to navigate, open INFO, EXIF information, as well as resize image[/info]"> </a> <a href="/lytebox/10.jpg" rel="lyteshow[]" title="EXIF only" rev="[exif=true]"> </a> <a href="/lytebox/15.jpg" rel="lyteshow[2]" title="Slide show will terminate shortly" rev="[info]test Show[/info][exif=true]">Single Slideshow</a><br />
<a href="http://google.com" target="_blank" rel="lyteframe[]" rev="width:800px; height:400px; scrolling:auto;" title="Google in Frame" onclick="javascript:urchinTracker('/outbound/article/http://google.com');">Google in Lyteframe</a><br/><a href="http://yahoo.com" target="_blank" rel="lyteframe[]" rev="width:600px; height:400px; scrolling:auto;" title="Yahoo in Frame" onclick="javascript:urchinTracker('/outbound/article/http://yahoo.com');">Yahoo in Lyteframe</a><br/></p>
<p>New features:<br />
- Show Hints<br />
- Click to Close<br />
- Easy Save<br />
- Show Additional Infomation page<br />
- Show image EXIF information<br />
- Button to resize big images<br />
- Save button (disabled in this demo)<br />
- All text strings are in config area (easy localization)<br />
- Frame tweeks<br />
- and other minor code tweeks (you can now <a href="http://dean.edwards.name/packer/"title="JavaScript Compressor"  onclick="javascript:urchinTracker('/outbound/article/http://dean.edwards.name/packer/');">compress JS file</a> with no further execution errors)</p>
<p>Download: <a href="/lytebox/lytebox_mod.zip">lytebox_mod.zip</a></p>
<p>Sincerely,<br />
Pavel Kuzub</p>
<p>Thanks for Jim Bertucci, for his initiative and his photos used in this demo.</p>
]]></content:encoded>
			<wfw:commentRss>http://pavel.kuzub.com/lytebox/feed</wfw:commentRss>
		</item>
	</channel>
</rss>

