/*** ——————————————————————————————————————————————————————————————————————————————————————————————————————————— ***/
/*** ——————————————————————————————————————————————————————————————————————————————————————————————————————————— ***/
/***																											 ***/
/***						  			   VORTEX	  	  Version 0.1.8											 ***/
/***					  				 Dernière Mise à Jour : 10-06-01										 ***/
/***																											 ***/
/*** ——————————————————————————————————————————————————————————————————————————————————————————————————————————— ***/
/***																											 ***/
/***											   Conversion												 	 ***/
/***	Ce script contient une méthode unique "Aspiration" prévue pour être utilisée dans les autres méthodes	 ***/
/***	de cybORg afin de permettre de plus grandes possibilités dans les différentes méthodes du framework.	 ***/
/***																											 ***/
/*** ——————————————————————————————————————————————————————————————————————————————————————————————————————————— ***/
/***									       cybORg version 0.05											 	 ***/
/***									        MIND version 0.2											 	 ***/
/*** ——————————————————————————————————————————————————————————————————————————————————————————————————————————— ***/
//
// © Ockam Razor — ockam.razor@gmail.com
// cybORg pakage — Since 21/11/2009
// MIND universe — Since 26/12/2009



/* ———————————————————————————————————————————————————————————————————————————————————————— */
/*																							*/
/*										   VARIABLES										*/
/*		  				 	Variables de gestion générale de VorteX							*/
/*																							*/
/* ———————————————————————————————————————————————————————————————————————————————————————— */

// Objet de variables
var VorteX = new Object();




/* ———————————————————————————————————————————————————————————————————————————————————————— */
/*																							*/
/*										   ASPIRATION										*/
/*		 Aspiration et traitement d'une valeur pour retourner un traitement si besoin		*/
/*																							*/
/* ———————————————————————————————————————————————————————————————————————————————————————— */

function Aspiration( Valeur ,	// ————> Valeur initiale
					 Defaut		// ————> Valeur par défaut
				   ){
	   
	// S'il y a une valeur ——>
	if( Valeur != null && Valeur != undefined ){
	
		// Si la valeur est un chiffre ——> Le renvoie dessuite
		if( TypeOf( Valeur , "Number" ) ){ return Valeur; }
		//
		// Sinon, s'il s'agit d'un string ——> La traite
		else if( TypeOf( Valeur , "String" ) ){ return VorteX.Traitement( Valeur ); }
		//
		// Sinon ——> La renvoie telle qu'elle
		else { return Valeur; }
	
	// S'il n'y a pas de valeur ——>
	} else {
		
		// Retourne la valeur par défaut s'il y en a une
		return Defaut || Valeur;
	}
}


// —————— TRAITEMENT
// Traite la chaine

VorteX.Traitement = function( Valeur ){
	
	// Récupère les quatres parties de la chaine
	var PartiesValeur = Valeur.split( " ; " );
	
	// Pour la première partie, si elle existe ——>
	if( VorteX[ PartiesValeur[ 0 ] ] ){
		//
		// La lance par le biais de ses arguments
		Valeur = eval( "VorteX." + PartiesValeur[ 0 ] + "(" + ( PartiesValeur[ 1 ] || "" ) + ")" );
	}
	
	// S'il y a une seconde partie ——>
	if( PartiesValeur[ 2 ] ){
		
		// Si elle existe ——>
		if( VorteX[ PartiesValeur[ 2 ] ] ){
			//
			// La lance par le biais de ses arguments
			Valeur = eval( "VorteX." + PartiesValeur[ 2 ] + "(" + Valeur + ( PartiesValeur[ 3 ] != null && PartiesValeur[ 3 ] != undefined ? ",\"" + PartiesValeur[ 3 ] + "\"" : "" ) + ")" );
		}
	}
	
	// Retourne la valeur
	return Valeur;
}




/* ———————————————————————————————————————————————————————————————————————————————————————— */
/*																							*/
/*										  TRAITEMENTS										*/
/*		 				  Les différentes méthodes de traitements							*/
/*																							*/
/* ———————————————————————————————————————————————————————————————————————————————————————— */

// —————— RANDOM
// Calcul élatoire

VorteX.random = function( Min , Max ){
	//
	Min = ( Min != null ) ? Number( Min ) : 0;
	Max = ( Max != null ) ? Number( Max ) : 1;
	//
	return Random( Min , Max );
}


// —————— JS
// Calcul sous forme JavaScript

VorteX.js = function( Contenu ){
	//
	return eval( Contenu );
}




/* ———————————————————————————————————————————————————————————————————————————————————————— */
/*																							*/
/*									  POST TRAITEMENTS										*/
/*		 			 Les différentes méthodes de traitements additives						*/
/*																							*/
/* ———————————————————————————————————————————————————————————————————————————————————————— */

// —————— ROUND
// Arrondies
//
VorteX.round = function( Valeur ){ return Math.round( Valeur ); }
//
VorteX.floor = function( Valeur ){ return Math.floor( Valeur ); }
//
VorteX.ceil = function( Valeur ){ return Math.ceil( Valeur ); }


// —————— ABS
// Mise en absolue
//
VorteX.abs = function( Valeur ){ return Math.abs( Valeur ); }


// —————— POST JS
// Calcul sous forme JavaScript à partir de la valeur récupérée

VorteX.postJs = function( Valeur , Contenu ){
	//
	Trace("====>" + Valeur + " , "  + Contenu)
	Contenu = CharacterConversion( Contenu , "Valeur" , Valeur );
	//
	return eval( Contenu );
}




/* ———————————————————————————————————————————————————— VorteX - cybORg ———————————————————————————————————————————————————————————— */