Trucos Joomla & virtuemart

Aveces necesitamos traernos datos de joomla o virtuemart en paginas no-joomla por decirlo de alguna manera y si estamos a ciegas es muy dificil este pequeño fichero lo utilizo siempre cuando necesito hacer un guión no-joomla básicamente lo que hace es decirle al framework de joomla que somos el bootstrap de joomla y de tal manera que nos permite cargar su framework y con el haremos una serie de cosillas que están explicadas a modo de comentario en el código espero les sea de utilidad, para entender este pequeño guión debemos tener las nociones basicas de programacion orientada a objetos basicamente clases y obviamente objetos jajaja XD bueno sin mas ahi les va Untitled
<?php
 /* File: cheat.php
  * Company: Grisunder
  * Coder: GrisUNO
  * Date: 07/08/2012
  * Desc: emula ser una pagina joomla
  */
 
/* iniciando el framework de joomla 1.5 */ 
define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(__FILE__) );
define( 'DS', DIRECTORY_SEPARATOR );
require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/includes/defines.php';
require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/includes/framework.php';
require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/administrator/components/com_virtuemart/classes/ps_database.php';
/* ps_database.php es la clase que hace las consultas sql de virtuemart */
require_once $_SERVER['SUBDOMAIN_DOCUMENT_ROOT'].'/administrator/components/com_virtuemart/classes/ps_user.php';
/* la clase ps_user.php se usa para traerme el objeto user de virtuemart*/
JDEBUG ? $_PROFILER->mark( 'afterLoad' ) : null;
$mainframe =& JFactory::getApplication('site');
$mainframe->initialise(); // para las sessiones esto es muy importante!!
/* terminando la carga del framework de joomla 1.5 */ 
$oDb =& JFactory::getDBO();  // se trae la conexión a la db de joomla
$oSes =& JFactory::getSession(); // me traigo la instancia de la session de joomla
$oCurrentUser = JFactory::getUser(); // se trae el usuario en uso de joomla
$oUsr =& ps_user::getUserInfo($oCurrentUser->id); /* se trae todo el objeto usuario y algunos debug
de la calse ps_user de virtuemart */
$sTipo_usuario = $oUsr->record[0]->perms; // si necesito el tipo de usuario
$oSes->set('datos',array()); // setea un arreglo vacío en la sesion de joomla
extract($_POST); // extrae todo el arreglo post en variables con los nombres de sus indices y su contenido.
/*
nomenclatura para variables: el primer carácter utilizo la primera letra del tipo de la variable.
a = array

n = numeric
s = string
f = float
o = object
m = mixed
*/
?>

Comentarios

Entradas populares