	function searchboxcode_init()
	{
		$('tickerbox').observe('keydown', function(e) 
		{ 
			if(e.keyCode == Event.KEY_RETURN) 
			{ 
				var newlocation = 'http://www.ezraschartbooks.com/index.php?page=stockchart&ticker='+$('tickerbox').value;
				// window.open(newlocation, 'stockchart');
				window.open(newlocation, '_top');
				Event.stop(e);
			}
			else {  return; }
		});
		new Form.Element.DelayedObserver('tickerbox', .5, function() {findticker(); });

		$('bookbox').observe('keydown', function(e) { return; });
		new Form.Element.DelayedObserver('bookbox', .5, function() {findbook(); });
	}

	function test() { alert("test"); }

	function groupaschartbook(groupname)
	{
		$('body').style.cursor = "progress";
		$('groupline').style.cursor = "progress";
		var line = '<input type=hidden id=newchartbookname name=newchartbookname value='+groupname+'>';
		line += '<input type=hidden id=newchartdesc name=newchartdesc value='+groupname+'>';
		line += '<input type=hidden id=userbooks name=userbooks value='+groupname+'>';
		line += '<input type=hidden id=tickertoadd name=tickertoadd>';
		$('tickerdiv').insert(line);

		var ncb = createnewchartbook();
		var tickerlist = $$('span.tickerspan');
		tickerlist.each(function(item) 
		{ 
			$('tickertoadd').value = item.innerHTML;
			tickeradder();
		});
		$('body').style.cursor = "default";
		$('groupline').style.cursor = "pointer";
		alert('Chartbook '+groupname+' created.');
	}

	function hidetickerdiv() { $('tickerdiv').hide(); }
	function hidebookdiv() { $('bookdiv').hide(); }

	function findbook()
	{
	// alert("finding ticker");
		$('bookbox_waitpic').style.display = "inline";
		$('bookdiv').innerHTML = "";
		$('bookdiv').show();
		var searchterm = $('bookbox').value;
		if(searchterm != "")
		{
			var thisuser = $('thisuser').value;
			var xline = '<span class=textbutton onclick="hidebookdiv()" style="float:right;">[x]</span><br>';

			new Ajax.Request('/ajax/bookbox.pl', {
			method: 'get',
			parameters: '&searchterm='+searchterm,
			onComplete: function(request)
			{
				var rtxt = request.responseText;
				rval = rtxt.evalJSON();

				if(rval)
				{
					var table = '<table border=0 style="float:left;">';
					table += '<tr><td align=center colspan=3 style="border-bottom:1px blue dotted;">Chartbooks</td><td align=left style="width:30px; border-bottom:blue 1px dotted;">'+xline+'</td></tr>';
					for(i = 0; i <= rval.count; i++)
					{
						var thisbooknumber = rval[i].chartbookkey;
						var bookname = rval[i].name;
						var thisticker = rval[i].ticker;
						var booktype = rval[i].booktype;
						var parentsector = rval[i].parentsector;
	
						var author = rval[i].author;
						if(author == "admin") { author = ''; }
						// author = author.substr(0,6);
	
						var lc = '';
						var status = '';
						if(thisticker != 'noticker') 
						{ 
							lc = '<b>'+thisticker+'</b>'; 
							status = "->"
						}
	
						var pane = '';
						if(booktype == "sector")  { pane = "&pane=marketsectorlist"; }
						if(booktype == "subsector")
						{ 
							var button = 'button_'+parentsector;
							pane = '&pane=marketsectorlist&subpane='+button;
						}
						
						var regex = new RegExp(searchterm, "ig");
						var replacementterm = '<b>'+searchterm+'</b>';
						bookname = bookname.substr(0,35);
						bookname = bookname.replace(regex, replacementterm);
						var chartbooklink = '<span class=tickerspan><a href=/chartbook.php?page=chartbook&booknumber='+thisbooknumber+pane+'>'+bookname+'</a>';
						table += '<tr><td>'+lc+'</td><td>'+status+'</td><td>'+chartbooklink+'</td><td>'+author+'</tr>';
					};
					table += '</table>';
				}
				else
				{
					var table = '<table><tr><td>No results found </td><td>'+xline+'</td></tr></table>';
				}
				$('bookdiv').insert(table);
				$('bookbox_waitpic').hide();
			},
			onFailure: function() { alert('Chartbook search failed.  Please contact administrator'); }
			});
		}
		else 
		{ 
			hidebookdiv();
			$('bookbox_waitpic').hide(); 
		}
	}

	function findticker()
	{
		$('tickerbox_waitpic').style.display = "inline";
		$('tickerdiv').innerHTML = "";
		$('tickerdiv').show();
		var searchterm = $('tickerbox').value;
		var groupname = "search:"+searchterm;
		if(searchterm != "")
		{
			var thisuser = $('thisuser').value;
			var cbline =  "<span id=groupline name=groupline class=tinygreenfont>[ view results as a chartbook ]</span>";
			if(thisuser == "public")
			{
				cbline =  "<span id=groupline name=groupline style=\"color:blue;\"></span>";
			}
			var xline = '<span class=textbutton onclick="hidetickerdiv()">[x]</span><br>';
			var topline = cbline+xline;

			new Ajax.Request('/ajax/tickerbox.pl', {
			method: 'get',
			parameters: '&searchterm='+searchterm,
			onComplete: function(request)
			{
				var rtxt = request.responseText;
				rval = rtxt.evalJSON();

				if(rval)
				{
					var table = '<table border=0 style="width:295px";>';
					table = table+'<tr><td colspan=2 style="border-bottom:blue 1px dotted;">'+cbline+'</td><td style="border-bottom:blue 1px dotted;">'+xline+'</td></tr>';

					for(i = 0; i <= rval.count; i++)
					{
						var thisticker = rval[i].ticker;
						var cname = "";
						if(rval[i].companyname) { cname = rval[i].companyname.substr(0, 20); }
						var cnamespan = '<span class=tinybluefont>'+cname+'</span>';
						var tickerspan = '<span class=tickerspan>'+thisticker+'</span>';
						var tline = '<tr><td><div class=tline><a href=/stockchart.php?page=stockchart&ticker='+thisticker+'>'+tickerspan+'</a></td><td> '+cnamespan+'</td></tr></div>';
					table = table + tline;
					};
					table = table+'</table>';
					$('tickerdiv').insert(table);
					if(thisuser != "public") { $('groupline').observe('click', function(e) { groupaschartbook(groupname) } ); }
				}
				else
				{
					$('tickerdiv').insert('No results found '+xline);
				}
				$('tickerbox_waitpic').hide();
			},
			onFailure: function() { alert('Ticker search failed.  Please contact administrator'); }
			});
		}
		else 
		{ 
			hidetickerdiv();
			$('tickerbox_waitpic').hide(); 
		}
	}
