﻿var Common = new Object();
var Expander = new Object();

Expander.register = function(contentId, exImageId, colImageId, isExpanded, stateId)
{
	Expander[contentId] = new Expander.Panel(contentId, exImageId, colImageId, isExpanded, stateId);
	setTimeout("Expander.initialize('" + contentId + "');", 5);
}

Expander.initialize = function(contentId)
{
	var ex = Expander[contentId];
	if (ex != null)
	{
		ex.initialize();
	}
}

Expander.Panel = function(contentId, exImageId, colImageId, isExpanded, stateId)
{
	this.contentId = contentId;
	this.exImageId = exImageId;
	this.colImageId = colImageId;
	this.isExpanded = isExpanded;
	this.stateId = stateId;

	var img = document.getElementById(this.exImageId);
	img.exPanel = this;
	img.onclick = this.handleClick;
	img = document.getElementById(this.colImageId);
	img.exPanel = this;
	img.onclick = this.handleClick;
}

Expander.Panel.prototype.initialize = function()
{
	try
	{
		if (this.isExpanded)
		{
			this.expand();
		}
		if (!this.isExpanded)
		{
			this.collapse();
		}
	}
	catch(err) 
	{
		alert(err.message);
	}
}

Expander.Panel.prototype.applyState = function()
{
	var state = document.getElementById(this.stateId);
	if (state != null)
	{
		state.value = this.isExpanded;
	}
}

Expander.Panel.prototype.handleClick = function()
{
	var panel = this.exPanel;
	if (panel.isExpanded)
	{
		panel.collapse();
	}
	else
	{
		panel.expand();
	}
	panel.isExpanded = !panel.isExpanded;
	panel.applyState();
}

Expander.Panel.prototype.expand = function()
{
	var content = document.getElementById(this.contentId);
	content.style.display = 'inline';
	var img = document.getElementById(this.colImageId);
	img.style.display = 'inline';
	img = document.getElementById(this.exImageId);
	img.style.display = 'none';
}

Expander.Panel.prototype.collapse = function()
{
	var content = document.getElementById(this.contentId);
	content.style.display = 'none';
	var img = document.getElementById(this.colImageId);
	img.style.display = 'none';
	img = document.getElementById(this.exImageId);
	img.style.display = 'inline';
}

Common.showBanner = function(show)
{
	var banner = document.getElementById('rcs__banner');
	if (banner)
	{
		banner.style.display = show ? 'block' : 'none';
	}
}