<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://karaoke.kjams.com/w/index.php?action=history&amp;feed=atom&amp;title=Code%2Fnew_kJams_server_pages_with_autologout</id>
	<title>Code/new kJams server pages with autologout - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://karaoke.kjams.com/w/index.php?action=history&amp;feed=atom&amp;title=Code%2Fnew_kJams_server_pages_with_autologout"/>
	<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;action=history"/>
	<updated>2026-06-09T13:58:43Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=7987&amp;oldid=prev</id>
		<title>Deusexmachina: /* = */</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=7987&amp;oldid=prev"/>
		<updated>2012-09-04T03:50:41Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;=&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 03:50, 4 September 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l455&quot;&gt;Line 455:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 455:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&amp;lt;script src=&amp;quot;main.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&amp;lt;script src=&amp;quot;main.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&amp;lt;script src=&amp;quot;common.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&amp;lt;script src=&amp;quot;common.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;		&amp;lt;script src=&quot;blockUnload.js&quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;		&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			&amp;lt;!--&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;			&amp;lt;!--&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key kjams_www-mw_:diff:1.41:old-7985:rev-7987:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=7985&amp;oldid=prev</id>
		<title>Deusexmachina at 03:28, 4 September 2012</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=7985&amp;oldid=prev"/>
		<updated>2012-09-04T03:28:08Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;amp;diff=7985&amp;amp;oldid=7984&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=7984&amp;oldid=prev</id>
		<title>Deusexmachina at 03:25, 4 September 2012</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=7984&amp;oldid=prev"/>
		<updated>2012-09-04T03:25:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;amp;diff=7984&amp;amp;oldid=5966&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5966&amp;oldid=prev</id>
		<title>Deusexmachina at 09:30, 11 June 2010</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5966&amp;oldid=prev"/>
		<updated>2010-06-11T09:30:19Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:30, 11 June 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l398&quot;&gt;Line 398:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 398:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==================&lt;/del&gt;=================================================================================================================================================&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=================================================================================================================================================&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key kjams_www-mw_:diff:1.41:old-5965:rev-5966:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5965&amp;oldid=prev</id>
		<title>Deusexmachina at 09:29, 11 June 2010</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5965&amp;oldid=prev"/>
		<updated>2010-06-11T09:29:45Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:29, 11 June 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l398&quot;&gt;Line 398:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 398:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;===========================================================&lt;/del&gt;===================================================================================================================================================================&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===================================================================================================================================================================&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key kjams_www-mw_:diff:1.41:old-5964:rev-5965:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5964&amp;oldid=prev</id>
		<title>Deusexmachina at 09:28, 11 June 2010</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5964&amp;oldid=prev"/>
		<updated>2010-06-11T09:28:47Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:28, 11 June 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l398&quot;&gt;Line 398:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 398:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=======================================================================================&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=======================================================================================================================================&lt;/ins&gt;=======================================================================================&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key kjams_www-mw_:diff:1.41:old-5963:rev-5964:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5963&amp;oldid=prev</id>
		<title>Deusexmachina at 09:27, 11 June 2010</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5963&amp;oldid=prev"/>
		<updated>2010-06-11T09:27:55Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:27, 11 June 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l396&quot;&gt;Line 396:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 396:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=======================================================================================&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;mainscreen.html&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
	<entry>
		<id>https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5962&amp;oldid=prev</id>
		<title>Deusexmachina: Created page with &#039;Since the official autologout was removed, I have re-edited my mainscreen.html page to re-implement it. In addition, this versin traps the delete key, so instead of doing the rat…&#039;</title>
		<link rel="alternate" type="text/html" href="https://karaoke.kjams.com/w/index.php?title=Code/new_kJams_server_pages_with_autologout&amp;diff=5962&amp;oldid=prev"/>
		<updated>2010-06-11T09:26:43Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;Since the official autologout was removed, I have re-edited my mainscreen.html page to re-implement it. In addition, this versin traps the delete key, so instead of doing the rat…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Since the official autologout was removed, I have re-edited my mainscreen.html page to re-implement it. In addition, this versin traps the delete key, so instead of doing the rather annoying web standard &amp;quot;back a page&amp;quot; when the user hits the delete key, it does the MUCH more intuitive &amp;quot;remove the currently selected song from the active playlist.&amp;quot; There may be some other tweaks, but those are the highlights. Simply replace the server files with these:&lt;br /&gt;
&lt;br /&gt;
(As always, I hope someone finds this helpful, and consider sending me a P.M. letting me know what you think)&lt;br /&gt;
&lt;br /&gt;
main.js:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/*   kJams Project - main.js&lt;br /&gt;
   Description: Main screen functionality.&lt;br /&gt;
   (c) 2007 kJams and David M. Cotter   */&lt;br /&gt;
&lt;br /&gt;
var timer = null;&lt;br /&gt;
var allowBackspace = false;&lt;br /&gt;
var inSearch = {&lt;br /&gt;
   on: function() {allowBackspace = true;},&lt;br /&gt;
   off: function() {allowBackspace = false;}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_populatePlaylists() {&lt;br /&gt;
   //Remove anything that was already there&lt;br /&gt;
   divObj = document.getElementById(&amp;quot;playlists&amp;quot;);&lt;br /&gt;
   &lt;br /&gt;
   for (var i = 0; i &amp;lt; divObj.childNodes.length; i++) {&lt;br /&gt;
	  divObj.removeChild(divObj.childNodes[i]);&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   list = new KJDropList();&lt;br /&gt;
   list.create(divObj);&lt;br /&gt;
   playlistsList = list;&lt;br /&gt;
   &lt;br /&gt;
   getPlaylists(url_playlists, m_playlistsLoaded);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_playlistsLoaded(list) {&lt;br /&gt;
   listCtrl = document.getElementById(&amp;quot;playlists&amp;quot;).childNodes[0].parent;&lt;br /&gt;
   &lt;br /&gt;
   for (var i = 0; i &amp;lt; list.length; i++) {&lt;br /&gt;
	  if ((list[i][&amp;#039;name&amp;#039;] == &amp;quot;Library&amp;quot;) || (list[i][&amp;#039;name&amp;#039;] == &amp;quot;History&amp;quot;))&lt;br /&gt;
		 dropTarget = false;&lt;br /&gt;
	  else&lt;br /&gt;
		 dropTarget = true;&lt;br /&gt;
	  &lt;br /&gt;
	  listCtrl.addItem(&amp;quot;p&amp;quot; + list[i][&amp;#039;id&amp;#039;], list[i][&amp;#039;name&amp;#039;], dropTarget, null, false);&lt;br /&gt;
	  &lt;br /&gt;
	  //Library and History items are not rearrangeable&lt;br /&gt;
	  if ((list[i][&amp;#039;name&amp;#039;] == &amp;quot;Library&amp;quot;) || (list[i][&amp;#039;name&amp;#039;] == &amp;quot;History&amp;quot;))&lt;br /&gt;
		 document.getElementById(&amp;quot;p&amp;quot; + list[i][&amp;#039;id&amp;#039;]).rearrange = false;&lt;br /&gt;
	  else&lt;br /&gt;
		 document.getElementById(&amp;quot;p&amp;quot; + list[i][&amp;#039;id&amp;#039;]).rearrange = true;&lt;br /&gt;
	  &lt;br /&gt;
	  //Keep track of ids for &amp;#039;Tonight&amp;#039; and &amp;#039;Favorites&amp;#039;&lt;br /&gt;
	  if (list[i][&amp;#039;name&amp;#039;] == &amp;quot;Tonight&amp;quot;) {&lt;br /&gt;
		 pTonightID = list[i][&amp;#039;id&amp;#039;];&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  if (list[i][&amp;#039;name&amp;#039;] == &amp;quot;Favorites&amp;quot;) {&lt;br /&gt;
		 pFavoritesID = list[i][&amp;#039;id&amp;#039;];&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  //Store the playlist name in the DOM object&lt;br /&gt;
	  document.getElementById(&amp;quot;p&amp;quot; + list[i][&amp;#039;id&amp;#039;]).name = list[i][&amp;#039;name&amp;#039;];&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   listCtrl.color();&lt;br /&gt;
   listCtrl.evtClick = m_populateSongs;&lt;br /&gt;
   listCtrl.evtDropInto = m_playlistDrop;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_populateSongs(playlist) {&lt;br /&gt;
   playlist = playlist.substring(1);&lt;br /&gt;
   &lt;br /&gt;
   //Hide&lt;br /&gt;
   if (songsList) {&lt;br /&gt;
	  songsList.hide();&lt;br /&gt;
	  &lt;br /&gt;
	  if (songsList.playlist != &amp;quot;1&amp;quot;) {&lt;br /&gt;
		 songsList.destroy();&lt;br /&gt;
	  }&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   //Hide &amp;quot;No Playlist&amp;quot; message, show waiting message&lt;br /&gt;
   document.getElementById(&amp;quot;message&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   document.getElementById(&amp;quot;msg_dosearch&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   document.getElementById(&amp;quot;msg_error&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;&amp;#039;;&lt;br /&gt;
   &lt;br /&gt;
   //If the list is already loaded, simply display it&lt;br /&gt;
   if ((playlist == &amp;quot;1&amp;quot;) &amp;amp;&amp;amp; (songsLists[playlist] != undefined)) {&lt;br /&gt;
	  songsList = songsLists[playlist];&lt;br /&gt;
	  songsList.show();&lt;br /&gt;
	  document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   //If it&amp;#039;s the library, request that user do a search first&lt;br /&gt;
   else if (playlist == &amp;quot;1&amp;quot;) {&lt;br /&gt;
	  document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
	  document.getElementById(&amp;quot;msg_dosearch&amp;quot;).style.display = &amp;#039;&amp;#039;;&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   else {&lt;br /&gt;
	  //Playlist DOM object&lt;br /&gt;
	  playlistObj = document.getElementById(&amp;quot;p&amp;quot; + playlist);&lt;br /&gt;
	  &lt;br /&gt;
	  //Which columns are needed?&lt;br /&gt;
	  var columns = Array(&amp;quot;#&amp;quot;, &amp;quot;Song Name&amp;quot;, &amp;quot;Artist&amp;quot;, &amp;quot;Album&amp;quot;);&lt;br /&gt;
	  &lt;br /&gt;
	  if (playlistObj.name == &amp;quot;Tonight&amp;quot;) {&lt;br /&gt;
		 columns.push(&amp;quot;Pitch&amp;quot;);&lt;br /&gt;
		 columns.push(&amp;quot;Add to&amp;quot;);&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  else if (playlistObj.name == &amp;quot;Favorites&amp;quot;) {&lt;br /&gt;
		 columns.push(&amp;quot;Add to&amp;quot;);&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  else {&lt;br /&gt;
		 columns.push(&amp;quot;Add to&amp;quot;);&lt;br /&gt;
		 columns.push(&amp;quot;Add to&amp;quot;);&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  songsList = new KJList();&lt;br /&gt;
	  songsList.rearrange = playlistObj.rearrange;&lt;br /&gt;
	  songsList.playlist = playlist;&lt;br /&gt;
	  songsList.playlistName = playlistObj.name;&lt;br /&gt;
	  songsList.create(document.getElementById(&amp;quot;songs&amp;quot;));&lt;br /&gt;
	  songsList.setColumns(columns, 0);&lt;br /&gt;
	  songsList.evtDrop = m_songRearrange;&lt;br /&gt;
	  songsLists[playlist] = songsList;&lt;br /&gt;
	  getSongs(url_songs, m_songsLoaded, &amp;quot;playlist=&amp;quot; + playlist);&lt;br /&gt;
	  &lt;br /&gt;
	  if (false) {&lt;br /&gt;
		 songsList.evtColClick = null;&lt;br /&gt;
	  }&lt;br /&gt;
	  else {&lt;br /&gt;
		 songsList.evtColClick = m_sortSongs;&lt;br /&gt;
	  }&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   m_sessionCheckin();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_songsLoaded(list) {&lt;br /&gt;
   //Hide waiting message&lt;br /&gt;
   document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   &lt;br /&gt;
   //Rearrangeable?&lt;br /&gt;
   if (songsList.rearrange)&lt;br /&gt;
	  var rearrange = true;&lt;br /&gt;
   else&lt;br /&gt;
	  var rearrange = false;&lt;br /&gt;
   &lt;br /&gt;
   for (var i = 0; i &amp;lt; list.length; i++) {&lt;br /&gt;
	  //Add to favorites&lt;br /&gt;
	  var favsButton = document.createElement(&amp;quot;INPUT&amp;quot;);&lt;br /&gt;
	  favsButton.type = &amp;quot;button&amp;quot;&lt;br /&gt;
	  favsButton.name = songsList.playlist + &amp;quot;-&amp;quot; + list[i][&amp;#039;itemId&amp;#039;];&lt;br /&gt;
	  favsButton.songId = list[i][&amp;#039;id&amp;#039;];&lt;br /&gt;
	  favsButton.value = &amp;quot;Favorites&amp;quot;;&lt;br /&gt;
	  favsButton.onmousedown = m_addToFavorites;&lt;br /&gt;
	  &lt;br /&gt;
	  //Add to Tonight&lt;br /&gt;
	  var tonightButton = document.createElement(&amp;quot;INPUT&amp;quot;);&lt;br /&gt;
	  tonightButton.type = &amp;quot;button&amp;quot;;&lt;br /&gt;
	  tonightButton.name = songsList.playlist + &amp;quot;-&amp;quot; + list[i][&amp;#039;itemId&amp;#039;];&lt;br /&gt;
	  tonightButton.songId = list[i][&amp;#039;id&amp;#039;];&lt;br /&gt;
	  tonightButton.value = &amp;quot;Tonight&amp;quot;;&lt;br /&gt;
	  tonightButton.onmousedown = m_addToTonight;&lt;br /&gt;
   &lt;br /&gt;
	  //Columns&lt;br /&gt;
	  var columns = Array(i, list[i][&amp;#039;name&amp;#039;], list[i][&amp;#039;artist&amp;#039;]);&lt;br /&gt;
	  &lt;br /&gt;
	  if (typeof(list[i][&amp;#039;album&amp;#039;]) == &amp;quot;object&amp;quot;) {&lt;br /&gt;
		 var dropDown = document.createElement(&amp;quot;SELECT&amp;quot;);&lt;br /&gt;
		 dropDown.name = list[i][&amp;#039;id&amp;#039;];&lt;br /&gt;
		 &lt;br /&gt;
		 for (var j = 0; j &amp;lt; list[i][&amp;#039;album&amp;#039;][&amp;#039;items&amp;#039;].length; j++) {&lt;br /&gt;
			var optionObj = document.createElement(&amp;quot;OPTION&amp;quot;);&lt;br /&gt;
			optionObj.value = list[i][&amp;#039;album&amp;#039;][&amp;#039;items&amp;#039;][j];&lt;br /&gt;
			optionObj.innerHTML = optionObj.value;&lt;br /&gt;
			&lt;br /&gt;
			if (list[i][&amp;#039;album&amp;#039;][&amp;#039;default&amp;#039;] == j) {&lt;br /&gt;
			   optionObj.selected = true;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			dropDown.appendChild(optionObj);&lt;br /&gt;
		 }&lt;br /&gt;
		 &lt;br /&gt;
		 columns.push(dropDown);&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  else {&lt;br /&gt;
		 columns.push(list[i][&amp;#039;album&amp;#039;]);&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  if (songsList.playlistName == &amp;quot;Tonight&amp;quot;) {&lt;br /&gt;
		 //Drop-down&lt;br /&gt;
		 var options = {&amp;quot;+6&amp;quot; : 6, &amp;quot;+5&amp;quot; : 5, &amp;quot;+4&amp;quot; : 4, &amp;quot;+3&amp;quot; : 3, &amp;quot;+2&amp;quot; : 2, &amp;quot;+1&amp;quot; : 1, &amp;quot;0&amp;quot; : 0, &amp;quot;-1&amp;quot; : -1, &amp;quot;-2&amp;quot; : -2, &amp;quot;-3&amp;quot; : -3, &amp;quot;-4&amp;quot; : -4, &amp;quot;-5&amp;quot; : -5, &amp;quot;-6&amp;quot; : -6}&lt;br /&gt;
		 var dropDown = document.createElement(&amp;quot;SELECT&amp;quot;);&lt;br /&gt;
		 dropDown.name = list[i][&amp;#039;itemId&amp;#039;];&lt;br /&gt;
		 dropDown.songId = list[i][&amp;#039;id&amp;#039;];&lt;br /&gt;
		 dropDown.onchange = m_changePitch;&lt;br /&gt;
		 for (option in options) {&lt;br /&gt;
			var optionObj = document.createElement(&amp;quot;OPTION&amp;quot;);&lt;br /&gt;
			optionObj.value = options[option];&lt;br /&gt;
			optionObj.innerHTML = option;&lt;br /&gt;
			&lt;br /&gt;
			if(list[i][&amp;#039;pitch&amp;#039;] == options[option]) {&lt;br /&gt;
			   optionObj.selected = true;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			dropDown.appendChild(optionObj);&lt;br /&gt;
		 }&lt;br /&gt;
		 &lt;br /&gt;
		 columns.push(dropDown);&lt;br /&gt;
		 columns.push(favsButton);&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  else if (songsList.playlistName == &amp;quot;Favorites&amp;quot;) {&lt;br /&gt;
		 columns.push(tonightButton);&lt;br /&gt;
	  }&lt;br /&gt;
	  &lt;br /&gt;
	  else {&lt;br /&gt;
		 columns.push(tonightButton);&lt;br /&gt;
		 columns.push(favsButton);&lt;br /&gt;
	  }&lt;br /&gt;
   &lt;br /&gt;
	  index = songsList.addItem(songsList.playlist + &amp;quot;-&amp;quot; + list[i][&amp;#039;itemId&amp;#039;], columns, rearrange, null, false);&lt;br /&gt;
	  &lt;br /&gt;
	  document.getElementById(songsList.getByIndex(index)).songName   = list[i][&amp;#039;name&amp;#039;];&lt;br /&gt;
	  document.getElementById(songsList.getByIndex(index)).songId      = list[i][&amp;#039;id&amp;#039;];&lt;br /&gt;
	  document.getElementById(songsList.getByIndex(index)).piIx      = list[i][&amp;#039;itemId&amp;#039;];&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   songsList.color();&lt;br /&gt;
   &lt;br /&gt;
   if (songsList.playlistName != &amp;quot;Tonight&amp;quot; &amp;amp;&amp;amp; songsList.playlistName != &amp;quot;History&amp;quot;) {&lt;br /&gt;
	  songsList.evtColClick = m_sortSongs;&lt;br /&gt;
   }&lt;br /&gt;
   else {&lt;br /&gt;
	  songsList.evtColClick = null;&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_songRearrange(list, song, index, oldIndex) {&lt;br /&gt;
   sendData(url_rearrange, &amp;quot;playlist=&amp;quot; + list.playlist + &amp;quot;&amp;amp;index=&amp;quot; + index + &amp;quot;&amp;amp;oldIndex=&amp;quot; + oldIndex);&lt;br /&gt;
   m_sessionCheckin();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_playlistDrop(song, index, nodeId) {&lt;br /&gt;
   playlists   = document.getElementById(&amp;quot;playlists&amp;quot;).childNodes[0].parent;&lt;br /&gt;
   item      = songsList.getByID(song);&lt;br /&gt;
   &lt;br /&gt;
   if (songsLists[playlists.getByIndex(index).substring(1)]) { songsLists[playlists.getByIndex(index).substring(1)].destroy(); }&lt;br /&gt;
   songsLists[playlists.getByIndex(index).substring(1)] = null;&lt;br /&gt;
   sendData(url_drop, &amp;quot;playlist=&amp;quot; + playlists.getByIndex(index).substring(1) + &amp;quot;&amp;amp;song=&amp;quot; + songsList.getByID(song).songId);&lt;br /&gt;
   &lt;br /&gt;
   m_setStatus(&amp;quot;Added \&amp;quot;&amp;quot; + item.songName + &amp;quot;\&amp;quot; to \&amp;quot;&amp;quot; + m_getPlaylistName(playlists.getByIndex(index)) + &amp;quot;\&amp;quot; ...&amp;quot;);&lt;br /&gt;
   m_sessionCheckin();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_addToTonight(event) {&lt;br /&gt;
   playlists = document.getElementById(&amp;quot;playlists&amp;quot;).childNodes[0].parent;&lt;br /&gt;
   m_playlistDrop(event.target.name, playlists.getIndex(&amp;quot;p&amp;quot; + pTonightID), event.target.name);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_addToFavorites(event) {&lt;br /&gt;
   playlists = document.getElementById(&amp;quot;playlists&amp;quot;).childNodes[0].parent&lt;br /&gt;
   m_playlistDrop(event.target.name, playlists.getIndex(&amp;quot;p&amp;quot; + pFavoritesID), event.target.name);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_sortSongs(list, column) {&lt;br /&gt;
   list.removeAll();&lt;br /&gt;
   list.setPrimaryCol(column);&lt;br /&gt;
   document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;&amp;#039;;&lt;br /&gt;
   &lt;br /&gt;
   if (document.getElementById(&amp;quot;searchfield&amp;quot;).value) {&lt;br /&gt;
	  search = &amp;quot;&amp;amp;search=&amp;quot; + document.getElementById(&amp;quot;searchfield&amp;quot;).value;&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   getSongs(url_sort, m_songsLoaded, &amp;quot;playlist=&amp;quot; + list.playlist + &amp;quot;&amp;amp;orderby=&amp;quot; + column + search);&lt;br /&gt;
   m_sessionCheckin();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_changePitch(event) {&lt;br /&gt;
   sendData(url_pitch, &amp;quot;song=&amp;quot; + event.target.songId + &amp;quot;&amp;amp;pitch=&amp;quot; + event.target.value);&lt;br /&gt;
   m_sessionCheckin();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_doSearch() {&lt;br /&gt;
   //Remove old search list if it&amp;#039;s there&lt;br /&gt;
   if (songsLists[&amp;quot;1&amp;quot;]) {&lt;br /&gt;
	  songsLists[&amp;quot;1&amp;quot;].parentObj.removeChild(songsLists[&amp;quot;1&amp;quot;].container);&lt;br /&gt;
	  songsLists[&amp;quot;1&amp;quot;].parentObj.removeChild(songsLists[&amp;quot;1&amp;quot;].columnsObj);&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   //Hide currently loaded list&lt;br /&gt;
   if (songsList) {&lt;br /&gt;
	  songsList.hide();&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   document.getElementById(&amp;quot;msg_dosearch&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   document.getElementById(&amp;quot;message&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   document.getElementById(&amp;quot;msg_error&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
   var columns = Array(&amp;quot;#&amp;quot;, &amp;quot;Song Name&amp;quot;, &amp;quot;Artist&amp;quot;, &amp;quot;Album&amp;quot;, &amp;quot;Add to&amp;quot;, &amp;quot;Add to&amp;quot;);&lt;br /&gt;
   &lt;br /&gt;
   songsList = new KJList();&lt;br /&gt;
   songsList.rearrange = false;&lt;br /&gt;
   songsList.playlist = &amp;quot;1&amp;quot;;&lt;br /&gt;
   songsList.playlistName = &amp;quot;Library&amp;quot;;&lt;br /&gt;
   songsList.create(document.getElementById(&amp;quot;songs&amp;quot;));&lt;br /&gt;
   songsList.setColumns(columns, 1);&lt;br /&gt;
   songsLists[&amp;quot;1&amp;quot;] = songsList;&lt;br /&gt;
   &lt;br /&gt;
   getSongs(url_search, m_songsLoaded, &amp;quot;search=&amp;quot; + document.getElementById(&amp;quot;searchfield&amp;quot;).value);&lt;br /&gt;
   m_sessionCheckin();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function searchKeyPressed(event) {&lt;br /&gt;
   if (event.keyCode == 13) {&lt;br /&gt;
	  m_doSearch();&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_getSongName(id) {&lt;br /&gt;
   songObj = document.getElementById(id);&lt;br /&gt;
   return songObj.songName;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_getPlaylistName(id) {&lt;br /&gt;
   playlistObj = document.getElementById(id);&lt;br /&gt;
   return playlistObj.name;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function kj_data_error(id, desc) {&lt;br /&gt;
   songsLists[songsList.id] = null;&lt;br /&gt;
   songsList.hide();&lt;br /&gt;
   document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
   &lt;br /&gt;
   document.getElementById(&amp;quot;msg_error&amp;quot;).innerHTML = &amp;quot;Error: &amp;quot; + desc&lt;br /&gt;
   document.getElementById(&amp;quot;msg_error&amp;quot;).style.display = &amp;#039;&amp;#039;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_setStatus(status, revert) {&lt;br /&gt;
   statusObj = document.getElementById(&amp;quot;status&amp;quot;);&lt;br /&gt;
   statusObj.innerHTML = status;&lt;br /&gt;
}&lt;br /&gt;
function trapDelete() {&lt;br /&gt;
   var keyID = (window.event) ? event.keyCode : e.keyCode;&lt;br /&gt;
   if (keyID==8 &amp;amp;&amp;amp; !allowBackspace){&lt;br /&gt;
	  return false;&lt;br /&gt;
   }&lt;br /&gt;
   return true;&lt;br /&gt;
}&lt;br /&gt;
function m_keyPressed(event) {&lt;br /&gt;
   //This is not IE-compliant code.&lt;br /&gt;
   if (event.keyCode == 46 || event.keyCode ==8) {&lt;br /&gt;
	  if (!songsList.selection) {&lt;br /&gt;
		 return;&lt;br /&gt;
	  }&lt;br /&gt;
   &lt;br /&gt;
	  playlistName   = songsList.playlistName;&lt;br /&gt;
&lt;br /&gt;
	  if (playlistName != &amp;quot;Library&amp;quot; &amp;amp;&amp;amp; playlistName != &amp;quot;History&amp;quot;) {&lt;br /&gt;
		 selection   = songsList.selection;&lt;br /&gt;
		 item      = songsList.getByID(selection);&lt;br /&gt;
		 &lt;br /&gt;
		 songsList.select(null);&lt;br /&gt;
		 sendData(url_remove, &amp;quot;playlist=&amp;quot; + songsList.playlist + &amp;quot;&amp;amp;piIx=&amp;quot; + item.piIx);&lt;br /&gt;
		 m_setStatus(&amp;quot;Removed \&amp;quot;&amp;quot; + item.songName + &amp;quot;\&amp;quot; ...&amp;quot;);&lt;br /&gt;
		 songsList.removeItem(selection);&lt;br /&gt;
	  }&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_sessionCheckin() {&lt;br /&gt;
   /* A true or false value is set by the server before delivering this script&lt;br /&gt;
	  depending on preference.&lt;br /&gt;
   if (!{auto_logout}) {&lt;br /&gt;
	  return;&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   if (timer == null) {&lt;br /&gt;
	  timer = setInterval(&amp;quot;m_sessionLogout()&amp;quot;, {timeout} * 1000);&lt;br /&gt;
   }&lt;br /&gt;
   else {&lt;br /&gt;
	  clearInterval(timer);&lt;br /&gt;
	  timer = null;&lt;br /&gt;
	  return m_sessionCheckin();&lt;br /&gt;
   }&lt;br /&gt;
	*/&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function m_sessionLogout() {&lt;br /&gt;
//   window.location=url_login;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
mainscreen.html&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt; &lt;br /&gt;
	&amp;lt;head&amp;gt; &lt;br /&gt;
		&amp;lt;title&amp;gt;kJams Server&amp;lt;/title&amp;gt; &lt;br /&gt;
	&lt;br /&gt;
		&amp;lt;script src=&amp;quot;spry/xpath.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; &lt;br /&gt;
		&amp;lt;script src=&amp;quot;spry/SpryData.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; &lt;br /&gt;
		&amp;lt;script src=&amp;quot;ui.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; &lt;br /&gt;
		&amp;lt;script src=&amp;quot;data.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; &lt;br /&gt;
		&amp;lt;script src=&amp;quot;main.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; &lt;br /&gt;
		&amp;lt;script src=&amp;quot;common.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; &lt;br /&gt;
		&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;
			var timer = 0;&lt;br /&gt;
			function set_interval() {&lt;br /&gt;
				//the interval &amp;#039;timer&amp;#039; is set as soon as the page loads&lt;br /&gt;
				timer=setInterval(&amp;quot;auto_logout()&amp;quot;,120000);&lt;br /&gt;
				// the figure &amp;#039;120000&amp;#039; above indicates how many milliseconds the timer be set to.&lt;br /&gt;
				//Eg: to set it to 2 mins, calculate 2min= 2x60=120 sec = 120,000 millisec. So set it to 120000&lt;br /&gt;
			}&lt;br /&gt;
			function reset_interval() {&lt;br /&gt;
				//resets the timer. The timer is reset on each of the below events:&lt;br /&gt;
				// 1. mousemove   2. mouseclick   3. key press 4. scroliing&lt;br /&gt;
				//first step: clear the existing timer&lt;br /&gt;
				if (timer != 0) {&lt;br /&gt;
					clearInterval(timer);&lt;br /&gt;
					timer = 0;&lt;br /&gt;
				}&lt;br /&gt;
				//second step: implement the timer again&lt;br /&gt;
				timer=setInterval(&amp;quot;auto_logout()&amp;quot;,120000);&lt;br /&gt;
				//completed the reset of the timer&lt;br /&gt;
			}&lt;br /&gt;
 &lt;br /&gt;
			function auto_logout() {&lt;br /&gt;
				//this function will redirect the user to the logout script&lt;br /&gt;
				window.location=logoutlink;&lt;br /&gt;
			}&lt;br /&gt;
		&amp;lt;/script&amp;gt; &lt;br /&gt;
		&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt; &lt;br /&gt;
			#main {&lt;br /&gt;
				padding: 10px;&lt;br /&gt;
				margin-right: 20px;&lt;br /&gt;
				margin-left: 20px;&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #000000;&lt;br /&gt;
				border-width: 1px;&lt;br /&gt;
				background: url(&amp;#039;metal.jpg&amp;#039;);&lt;br /&gt;
				cursor: default;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#title {&lt;br /&gt;
				padding-right: 30px;&lt;br /&gt;
				text-align: left;&lt;br /&gt;
				font-family: Arial Black;&lt;br /&gt;
				font-size: 24pt;&lt;br /&gt;
				font-weight: bold;&lt;br /&gt;
				margin-bottom: 5px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#search {&lt;br /&gt;
				width: 100%;&lt;br /&gt;
				text-align: center;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#searchfield {&lt;br /&gt;
				height: 21px;&lt;br /&gt;
				width: 144px;&lt;br /&gt;
				background: url(&amp;#039;search.png&amp;#039;);&lt;br /&gt;
				border-width: 0px;&lt;br /&gt;
				padding-left: 7px;&lt;br /&gt;
				padding-right: 7px;&lt;br /&gt;
				padding-top: 2px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#left {&lt;br /&gt;
				float: left;&lt;br /&gt;
				width: 200px;&lt;br /&gt;
				margin: 0px;&lt;br /&gt;
				margin-left: 0px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#status {&lt;br /&gt;
				text-align: center;&lt;br /&gt;
				color: #333333;&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				margin: 0px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#playlists .KJList {&lt;br /&gt;
				overflow: auto;&lt;br /&gt;
				height: 240px;&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				background-color: #FFFFFF;&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #999999;&lt;br /&gt;
				border-width: 1px;&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#playlists .KJList td {&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				margin: 0px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#playlists .KJList table {&lt;br /&gt;
				margin: 0px;&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#photo {&lt;br /&gt;
				padding: 3px;&lt;br /&gt;
				width: 190px;&lt;br /&gt;
				height: 143px;&lt;br /&gt;
				max-height: 150px;&lt;br /&gt;
				overflow: hidden;&lt;br /&gt;
				margin-top: 5px;&lt;br /&gt;
				background-color: #FFFFFF;&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #999999;&lt;br /&gt;
				border-width: 1px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#songs {&lt;br /&gt;
				border-style: solid&lt;br /&gt;
				border-color: #999999;&lt;br /&gt;
				border-width: 1px;&lt;br /&gt;
				margin-left: 220px;&lt;br /&gt;
				background-color: #FFFFFF;&lt;br /&gt;
				min-height: 400px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			&lt;br /&gt;
			#message, #waiting, #msg_dosearch, #msg_error {&lt;br /&gt;
				text-align: center;&lt;br /&gt;
				font-size: 14pt;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#songs .KJList {&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				height: 400px;&lt;br /&gt;
				overflow: auto;&lt;br /&gt;
				!background-color: #FFFFFF;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListColumn {&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				margin: 0px;&lt;br /&gt;
				background: url(&amp;#039;column-bg.jpg&amp;#039;);&lt;br /&gt;
				cursor: default;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListColumn td {&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #999999;&lt;br /&gt;
				border-width: 0px;&lt;br /&gt;
				border-right-width: 1px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListColumn .primary {&lt;br /&gt;
				background: url(&amp;#039;column-selected-bg.jpg&amp;#039;);&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListItem, .KJListItem_alt, .KJListItem_selected, .KJListItem_drag, .KJListItem_target, .KJListItem_alt_target {&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				padding-top: 0px;&lt;br /&gt;
				padding-bottom: 0px;&lt;br /&gt;
				margin: 0px;&lt;br /&gt;
				cursor: default;&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #FFFFFF;&lt;br /&gt;
				border-width: 0px;&lt;br /&gt;
				border-bottom-width: 1px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListItem_alt {&lt;br /&gt;
				background-color: #EEEEFF;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListItem_selected {&lt;br /&gt;
				background-color: #4444FF;&lt;br /&gt;
				color: #FFFFFF;&lt;br /&gt;
			}&lt;br /&gt;
						&lt;br /&gt;
			.KJListItem_target, .KJListItem_alt_target {&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #000000;&lt;br /&gt;
				border-width: 0px;&lt;br /&gt;
				border-top-width: 1px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListItem_alt_target {&lt;br /&gt;
				background-color: #EEEEFF;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJListItem_drag {&lt;br /&gt;
				position: absolute;&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #000000;&lt;br /&gt;
				border-width: 1px;&lt;br /&gt;
				background-color: #DDDDDD;&lt;br /&gt;
				filter:alpha(opacity=40); /* for IE */&lt;br /&gt;
				-moz-opacity:0.4;&lt;br /&gt;
				opacity: 0.4;	&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJList input {&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				margin: 0px;&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #000000;&lt;br /&gt;
				border-width: 1px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			.KJList input:active {&lt;br /&gt;
				background-color: #000000;&lt;br /&gt;
				color: #FFFFFF;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#playlists .KJListItem, #playlists .KJListItem_alt, #playlists .KJListItem_selected, #playlists .KJListItem_target, #playlists .KJListItem_alt_target {&lt;br /&gt;
				background: url(&amp;#039;playlist-icon.gif&amp;#039;);&lt;br /&gt;
				background-repeat: no-repeat;&lt;br /&gt;
				padding: 0px;&lt;br /&gt;
				padding-left: 20px;&lt;br /&gt;
				border-style: solid;&lt;br /&gt;
				border-color: #FFFFFF;&lt;br /&gt;
				border-width: 3px;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			&lt;br /&gt;
			#playlists .KJListItem_alt {&lt;br /&gt;
				background-color: #EEEEFF;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#playlists .KJListItem_selected {&lt;br /&gt;
				background-color: #4444FF;&lt;br /&gt;
				color: #FFFFFF;&lt;br /&gt;
			}&lt;br /&gt;
			&lt;br /&gt;
			#playlists .KJListItem_target, #playlists .KJListItem_alt_target {&lt;br /&gt;
				border-color: #000000;&lt;br /&gt;
				background-color: #9999FF;&lt;br /&gt;
			}&lt;br /&gt;
 &lt;br /&gt;
			.clear {&lt;br /&gt;
				clear: both;&lt;br /&gt;
			}&lt;br /&gt;
		&amp;lt;/style&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
	&amp;lt;/head&amp;gt; &lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;body onLoad=&amp;quot;set_interval()&amp;quot; onmousemove=&amp;quot;reset_interval()&amp;quot; onclick=&amp;quot;reset_interval()&amp;quot; onkeypress=&amp;quot;reset_interval()&amp;quot; onscroll=&amp;quot;reset_interval()&amp;quot;&amp;gt; &lt;br /&gt;
		&amp;lt;div id=&amp;quot;main&amp;quot;&amp;gt; &lt;br /&gt;
			&amp;lt;table&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td id=&amp;quot;title&amp;quot;&amp;gt;&amp;lt;nobr&amp;gt;*DeusExMachina&amp;lt;/nobr&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td id=&amp;quot;search&amp;quot;&amp;gt;&amp;lt;nobr&amp;gt;Search Library: &amp;lt;input type=&amp;quot;search&amp;quot; id=&amp;quot;searchfield&amp;quot; name=&amp;quot;search&amp;quot; onkeypress=searchKeyPressed(event) onblur=&amp;quot;inSearch.off()&amp;quot; onfocus=&amp;quot;inSearch.on()&amp;quot; /&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; style=&amp;quot;&amp;quot; name=&amp;quot;dosearch&amp;quot; value=&amp;quot;Go&amp;quot; onclick=m_doSearch() /&amp;gt;&amp;lt;/nobr&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td id=&amp;quot;help&amp;quot;&amp;gt;&amp;lt;nobr&amp;gt;[ &amp;lt;a id=&amp;quot;helplink&amp;quot; href=&amp;quot;&amp;quot;&amp;gt;Help&amp;lt;/a&amp;gt; ] [ &amp;lt;a id=&amp;quot;logoutlink&amp;quot; href=&amp;quot;&amp;quot;&amp;gt;Logout&amp;lt;/a&amp;gt; ]&amp;lt;/nobr&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt; &lt;br /&gt;
			&lt;br /&gt;
			&amp;lt;div&amp;gt; &lt;br /&gt;
				&amp;lt;div id=&amp;quot;left&amp;quot;&amp;gt; &lt;br /&gt;
					&amp;lt;div id=&amp;quot;playlists&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; &lt;br /&gt;
					&amp;lt;div id=&amp;quot;photo&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;kjams-main.jpg&amp;quot; /&amp;gt;&amp;lt;/div&amp;gt; &lt;br /&gt;
				&amp;lt;/div&amp;gt; &lt;br /&gt;
				&lt;br /&gt;
				&amp;lt;div id=&amp;quot;songs&amp;quot;&amp;gt;&amp;lt;p id=&amp;quot;msg_error&amp;quot;&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;p id=&amp;quot;msg_dosearch&amp;quot;&amp;gt;Please enter a search.&amp;lt;/p&amp;gt;&amp;lt;p id=&amp;quot;message&amp;quot;&amp;gt;No Playlist Selected.&amp;lt;/p&amp;gt;&amp;lt;p id=&amp;quot;waiting&amp;quot;&amp;gt;Please wait, loading playlist...&amp;lt;/p&amp;gt;&amp;lt;/div&amp;gt; &lt;br /&gt;
				&lt;br /&gt;
				&amp;lt;div class=&amp;quot;clear&amp;quot;&amp;gt; &amp;lt;/div&amp;gt; &lt;br /&gt;
				&amp;lt;div id=&amp;quot;status&amp;quot;&amp;gt;Welcome to kJams!&amp;lt;/div&amp;gt; &lt;br /&gt;
			&amp;lt;/div&amp;gt; &lt;br /&gt;
		&amp;lt;/div&amp;gt; &lt;br /&gt;
		&lt;br /&gt;
		&amp;lt;script language=&amp;quot;javascript&amp;quot;&amp;gt; &lt;br /&gt;
			//Bind key press function&lt;br /&gt;
			document.onkeyup = m_keyPressed;&lt;br /&gt;
			//Prevent browser from seeing the Delete key press&lt;br /&gt;
			document.onkeydown=trapDelete;&lt;br /&gt;
 &lt;br /&gt;
			//Hide message fields&lt;br /&gt;
			document.getElementById(&amp;quot;waiting&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
			document.getElementById(&amp;quot;msg_dosearch&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
			document.getElementById(&amp;quot;msg_error&amp;quot;).style.display = &amp;#039;none&amp;#039;;&lt;br /&gt;
			&lt;br /&gt;
			//Plug in help and logout URLs&lt;br /&gt;
			document.getElementById(&amp;quot;helplink&amp;quot;).href = url_help;&lt;br /&gt;
			document.getElementById(&amp;quot;logoutlink&amp;quot;).href = url_login;&lt;br /&gt;
			&lt;br /&gt;
			//Playlists&lt;br /&gt;
			m_populatePlaylists();&lt;br /&gt;
		&lt;br /&gt;
			if (0) {&lt;br /&gt;
				//Song list&lt;br /&gt;
				var songs = new KJList();&lt;br /&gt;
				songs.create(document.getElementById(&amp;quot;songs&amp;quot;));&lt;br /&gt;
				songs.setColumns(Array(&amp;quot;#&amp;quot;, &amp;quot;Song Name&amp;quot;, &amp;quot;Artist&amp;quot;, &amp;quot;Pitch&amp;quot;, &amp;quot;Add to&amp;quot;, &amp;quot;Add to&amp;quot;), 1);&lt;br /&gt;
				&lt;br /&gt;
				//Set clipping&lt;br /&gt;
				songs.setClipping({&amp;#039;right&amp;#039; : songs.getColumnWidth(5) + songs.getColumnWidth(4) + songs.getColumnWidth(3)});&lt;br /&gt;
				&lt;br /&gt;
				getSongs(url_songs, populateList, &amp;#039;playlist=1&amp;#039;);&lt;br /&gt;
				&lt;br /&gt;
				function populateList(songList) {&lt;br /&gt;
					for(var i = 0; i &amp;lt; songList.length; i++) {&lt;br /&gt;
						songs.addItem(songList[i][&amp;#039;number&amp;#039;], Array(songList[i][&amp;#039;number&amp;#039;], songList[i][&amp;#039;name&amp;#039;], songList[i][&amp;#039;artist&amp;#039;], &amp;quot;&amp;lt;select&amp;gt;&amp;lt;option&amp;gt;+6&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;+5&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;+4&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;+3&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;+2&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;+1&amp;lt;/option&amp;gt;&amp;lt;option selected&amp;gt;0&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;-1&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;-2&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;-3&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;-4&amp;lt;/option&amp;gt;&amp;lt;option&amp;gt;-5&amp;lt;/option&amp;gt;&amp;lt;/select&amp;gt;&amp;quot;, &amp;quot;&amp;lt;input type=\&amp;quot;submit\&amp;quot; value=\&amp;quot;Tonight\&amp;quot; /&amp;gt;&amp;quot;, &amp;quot;&amp;lt;input type=\&amp;quot;submit\&amp;quot; value=\&amp;quot;Favorites\&amp;quot; /&amp;gt;&amp;quot;), null, null, false);&lt;br /&gt;
					}&lt;br /&gt;
					&lt;br /&gt;
					songs.color();&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		&amp;lt;/script&amp;gt; &lt;br /&gt;
	&amp;lt;/body&amp;gt; &lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Deusexmachina</name></author>
	</entry>
</feed>