lib/packages/core-classes.js
function(path_config) {

		var view,
			i = 0,
			count,
			result,
			tail = path_config.tail;

		if ('property_name' in path_config) {

			view = ('locator_type' in path_config) ? this.locateViewByPathConfig(path_config) : this;

			view = view.locateViewWithProperty(path_config.property_name);

			if (Lava.schema.DEBUG && !view) Lava.t("Property not found: " + path_config.property_name);

			result = view.getDataBinding(path_config.property_name);

		} else {

			if (Lava.schema.DEBUG && !('locator_type' in path_config)) Lava.t("Malformed scope path (1)");
			if (Lava.schema.DEBUG && !tail) Lava.t("Malformed scope path (2)");

			result = this.locateViewByPathConfig(path_config);

			if (Lava.schema.DEBUG && !result) Lava.t("View not found. "
				+ path_config.locator_type + ": " + path_config.locator + ", depth:" + path_config.depth);

		}

		if (tail) {

			for (count = tail.length; i < count; i++) {

				result = (typeof(tail[i]) == 'object')
					? result.getSegment(this.getScopeByPathConfig(tail[i]))
					: result.getDataBinding(tail[i]);

			}

		}

		return result;

	}
function(path_config) {

		var view,
			i = 0,
			count,
			result,
			tail = path_config.tail;

		if ('property_name' in path_config) {

			view = ('locator_type' in path_config) ? this.locateViewByPathConfig(path_config) : this;

			view = view.locateViewWithProperty(path_config.property_name);

			if (Lava.schema.DEBUG && !view) Lava.t("Property not found: " + path_config.property_name);

			result = view.getDataBinding(path_config.property_name);

		} else {

			if (Lava.schema.DEBUG && !('locator_type' in path_config)) Lava.t("Malformed scope path (1)");
			if (Lava.schema.DEBUG && !tail) Lava.t("Malformed scope path (2)");

			result = this.locateViewByPathConfig(path_config);

			if (Lava.schema.DEBUG && !result) Lava.t("View not found. "
				+ path_config.locator_type + ": " + path_config.locator + ", depth:" + path_config.depth);

		}

		if (tail) {

			for (count = tail.length; i < count; i++) {

				result = (typeof(tail[i]) == 'object')
					? result.getSegment(this.getScopeByPathConfig(tail[i]))
					: result.getDataBinding(tail[i]);

			}

		}

		return result;

	}
function ( path_config ) { var view , i = 0 , count , result , tail = path_config . tail ; if ( 'property_name' in path_config ) { view = ( 'locator_type' in path_config ) ? this . locateViewByPathConfig ( path_config ) : this ; view = view . locateViewWithProperty ( path_config . property_name ) ; if ( Lava . schema . DEBUG && ! view ) Lava . t ( "Property not found: " + path_config . property_name ) ; result = view . getDataBinding ( path_config . property_name ) ; } else { if ( Lava . schema . DEBUG && ! ( 'locator_type' in path_config ) ) Lava . t ( "Malformed scope path (1)" ) ; if ( Lava . schema . DEBUG && ! tail ) Lava . t ( "Malformed scope path (2)" ) ; result = this . locateViewByPathConfig ( path_config ) ; if ( Lava . schema . DEBUG && ! result ) Lava . t ( "View not found. " + path_config . locator_type + ": " + path_config . locator + ", depth:" + path_config . depth ) ; } if ( tail ) { for ( count = tail . length ; i < count ; i ++ ) { result = ( typeof ( tail [ i ] ) == 'object' ) ? result . getSegment ( this . getScopeByPathConfig ( tail [ i ] ) ) : result . getDataBinding ( tail [ i ] ) ; } } return result ; }
Get a scope or property binding by the given route
@param {_cScopeLocator} path_config
@returns {_iValueContainer}
Get a scope or property binding by the given route