﻿var Condition					= function ( )
{
	var self					= this ;
	
	self.bindable				= BindableCollection ;
	self.bindable( ) ;
	
	var bindableInitalise		= self.initalise ;
	self.name					= "Condition" ;

	var baseAddBlankItem		= self.addBlankItem ;

	var itemRsn					= [ ] ;
	var itemTimeControl			= new BaseClass( ) ;

	self.motorwayRsn			= Guid.Empty( ) ;
	self.directionRsn			= Guid.Empty( ) ;

	self.getItems				= function( )
	{
		textmeback.Entities.Condition.GetConditionFromLocationAndDirection( self.motorwayRsn , self.directionRsn , self.onGetItems ) ;
		return					true ;
	} ;

	var timedReload				= function( )
	{
		setTimeout( self.getItems ,300000 ) ; // 5 minutes
		return					true ;
	} ;

	self.initalise				= function( )
	{
		self.htmlElementTag		= "ConditionItem" ;
		if (self.templateUrl == null || self.templateUrl == "")
			self.templateUrl	= "Layouts/Templates/ConditionItem.htm" ;
		self.className			= "textmeback.Entities.Condition.GetConditionFromLocationAndDirection" ;

		self.registerOnGetItemsCompleted( timedReload ) ;

		// Must set the response of this into a variable or the method will itself return true and not continue.
		if ( bindableInitalise( ) == false )
		{
			return				false;
		}

		return					true ;
	} ;

	// Object create OK	
	return						true;
} ;
