/*
 * $Id: Resources.js,v 1.1 2010/07/20 17:26:24 ggortsema Exp $
 * Copyright (C) 2008 IP Labs GmbH <http://www.iplabs.de/>
 * All rights reserved.
 */

 
/**
 * @fileoverview
 *
 * aspadmin.Resources class to hold the resources for page elements
 * like texts and image paths.
 * 
 * @author Vladimir Sakhovski
 * @version $Revision: 1.1 $
 */

jade.require("aspadmin");
jade.require("jade.StringUtils");

aspadmin.Resources = function() 
{
	this.notForTransfer = true;
	this.map = [];
}

aspadmin.Resources.prototype.hasKey = function(key) {
	return (typeof this.map[key] != 'undefined');
};

aspadmin.Resources.prototype.addValue = function(key, value) {
	this.map[key] = value;
};

aspadmin.Resources.prototype.getValue = function(key, args, arg1, arg2, arg3) {
	var msg = this.map[key];
	
	//jade.Log.debug('aspadmin.Resources.getValue found message: '+msg+' args: '+typeof(args));
	if (typeof(args) != 'undefined')
	{
		if (typeof(args) == 'object')
		{
			for (var i = 0; i<args.length; i++)
			{
				msg = jade.StringUtils.replaceAll(msg, "{"+i+"}", args[i]);
			}
		}
		else
		{
			msg = jade.StringUtils.replaceAll(msg, "{0}", args);
		}
		
		if (typeof(arg1) != 'undefined')
		{
			msg = jade.StringUtils.replaceAll(msg, "{1}", arg1);
		}
		if (typeof(arg2) != 'undefined')
		{
			msg = jade.StringUtils.replaceAll(msg, "{2}", arg2);
		}
		if (typeof(arg3) != 'undefined')
		{
			msg = jade.StringUtils.replaceAll(msg, "{3}", arg3);
		}
	}
	return msg;
};

