function RM_ScheduleChange (regionPrefix, departureStationId, arrivalStationId)
{
	this.loader = 'loader';
	
	this.regionPrefix = regionPrefix;
	this.departureStationId = departureStationId;
	this.arrivalStationId = arrivalStationId;
	this.cacheTableList = {};
};


RM_ScheduleChange.prototype.init = function( options )
{
	for ( var i in options )
		this[ i ] = options[ i ];
	
	return this;
}


RM_ScheduleChange.prototype.loadTable = function (date)
{
	if (this.cacheTableList[date] == undefined)
	{
		regionPrefix = this.regionPrefix.substr( 0, 1 ).toUpperCase() + this.regionPrefix.substr( 1 );
		
		var getData = '&st1=' + this.departureStationId;
		getData += '&st2=' + this.arrivalStationId;
		getData += '&date=' + date;
		
		obPopup.show( this.loader );
		var obSelf = this;
		$.ajax({
			type: 'post',
			url: url.get('ajax') + '?Action=getEtrain' + regionPrefix + 'ScheduleChangeTableTemplate&rand=' + Math.random() + getData,
			dataType: 'json',
			success: function( data, textStatus )
			{
				obPopup.hide( obSelf.loader );
				obSelf.cacheTableList[date] = data.tableHtml;
				obSelf.displayTable(date);
				obSelf.changePrintUrl({'changeScheduleDate':date});
			},
			error: function( data, textError )
			{
				obMessage.add( 'error', lang.get('error.critical') ).show();
			}
		});
	}
	else
		this.displayTable(date);
}


RM_ScheduleChange.prototype.displayTable = function (date)
{
	$('#scheduleChangeTable').html(this.cacheTableList[date]);
	this.showTableByPage(1);
}


RM_ScheduleChange.prototype.showTableByPage = function( pageNumber )
{
	if ( this.selectedPageNumber == undefined )
		this.selectedPageNumber = 1;
	
	$('tr[rel="schedule_change_table_ajax_' + this.selectedPageNumber + '"]').css( 'display', 'none' );
	$('li[rel="page_navigation_' + this.selectedPageNumber + '"]').removeClass( 'active' );
	
	$('tr[rel="schedule_change_table_ajax_' + pageNumber + '"]').css( 'display', '' );
	$('li[rel="page_navigation_' + pageNumber + '"]').addClass( 'active' );
	
	this.selectedPageNumber = pageNumber;
	this.changePrintUrl({'changeSchedulePage':pageNumber - 1});
}


RM_ScheduleChange.prototype.changePrintUrl = function (args)
{
	var extraArgs = {'showChangeSchedule':true};
	$.extend(extraArgs, args);
	var printUrl = url.url(extraArgs, null, $('.print_ico').attr('href'));
	$('.print_ico').attr('href', printUrl);
}
