/**
 * @name 
 * @author Alexis Bouhet - www.lahautesociete.com
 * @version 1.0
 * @date November 04, 2010
 * @category 
 * @copyright (c) 2010 La Haute Société (www.lahautesociete.com)
 * @license
 * @example
 */

/**
 * Créer un package selon un nom.
 * Par exemple pour "com.site.www" on va créer un objet "www" dans un "objet" site dans un objet "com".
 * L'objet com étant global.
 * @param pPackageName : Le nom du package de base en reverse DNS, par exemple "com.site.www"
 * @return
 */
function createPackage (pPackageName)
{
	// Splitter le nom de chaque package
	var packages = pPackageName.split(".");
	
	// Par défaut on est en scope global
	var j = window;
	
	// Parcourir les packages
	for (var i in packages)
	{
		// Si ce package n'existe pas dans son parent
		// Alors on créé un objet vide
		if (j[packages[i]] == null)
			j[packages[i]] = {};
		
		// On enregistre cet objet comme étant le parent du prochain
		j = j[packages[i]];
	}
}

/**
 * Créer les packages MVC.
 * Ajoute des objets "models", "views" et "controllers" dans le package
 * @param pPackageName : Le nom du package de base en reverse DNS, par exemple "com.site.www"
 * @return null
 */
function createMVC (pPackageName)
{
	createPackage(pPackageName + ".models");
	createPackage(pPackageName + ".views");
	createPackage(pPackageName + ".controllers");
}

/**
 * Importer les packages
 */
/*
Object.prototype.import = function (pScope, pPackageName)
{
	// Splitter le nom de chaque package
	var packages = pPackageName.split(".");
	
	var j = window;
	
	for (var i in packages)
	{
		if (i == packages.length - 1)
		{
			if (i == "*")
			{
				for (var j in packages[i])
				{
					pScope[j] = packages[i][j];
				}
			}
			else
			{
				pScope[i] = packages[i];
			}
		}
		else
		{
			j = j[packages[i]];
		}
	}
};*/

function Class ()
{
	
}
