<?xml version="1.0" encoding="UTF-8"?> <model package="extArtist" baseClass="xPDOObject" platform="mysql" defaultEngine="MyISAM" version="1.1"> <!-- the main artist extra data table, inherit & extend modUser --> <object class="Artistdata" table="artistdata" extends="modUser"> <field key="internalkey" dbtype="int" precision="10" attributes="unsigned" phptype="integer" null="false" default="" /> <field key="banner" dbtype="varchar" precision="255" phptype="string" null="true" /> <field key="bio" dbtype="longtext" phptype="string" null="true" /> <field key="mname" dbtype="text" phptype="string" null="true" /> <field key="mphone" dbtype="text" phptype="string" null="true" /> <field key="memail" dbtype="text" phptype="string" null="true" /> <field key="website" dbtype="text" phptype="string" null="true" /> <field key="facebook" dbtype="text" phptype="string" null="true" /> <field key="youtube" dbtype="text" phptype="string" null="true" /> <field key="twitter" dbtype="text" phptype="string" null="true" /> <composite alias="agenremap" local="internalkey" foreign="uid" cardinality="many" owner="local" /> </object> <!-- map user ids to multiple genre names --> <object class="Agenremap" table="agenremap" extends="xPDOSimpleObject"> <field key="uid" dbtype="int" precision="10" phptype="integer" null="false" default="" /> <field key="gid" dbtype="int" precision="10" phptype="integer" null="false" default="" /> </object> <!-- a simple list of genres [indie, jazz, blues etc] --> <object class="Agenres" table="agenres" extends="xPDOSimpleObject"> <field key="genre" dbtype="varchar" precision="100" phptype="string" null="false" default="" /> </object> <!-- map user ids to the location and type of media they own --> <object class="Amedia" table="amedia" extends="xPDOSimpleObject"> <field key="uid" dbtype="int" precision="10" phptype="integer" null="false" default="" /> <field key="type" dbtype="int" precision="10" phptype="integer" null="false" default="" /> <field key="location" dbtype="varchar" precision="255" phptype="string" null="false" default="" /> </object> <!-- a simple list of media types [images, zips, video etc] --> <object class="Amediatypes" table="amediatypes" extends="xPDOSimpleObject"> <field key="value" dbtype="varchar" precision="255" phptype="string" null="false" default="" /> </object> </model>
<?php
/**
* @package extendeduser
* @subpackage user.mysql
*/
class extUser extends modUser {
function __construct(xPDO & $xpdo) {
parent :: __construct($xpdo);
$this->set('class_key','extUser');
}
}
?>
<?php
$x = $modx->getService('extendeduser','Sampleclass',$modx->getOption('core_path',null, MODX_CORE_PATH).'components/extendeduser/',$scriptProperties);
if (!($x instanceof Extendeduser)) {
$modx->log(modX::LOG_LEVEL_ERROR,'[Extendeduser] Could not load Extendeduser class.');
$modx->event->output(true);
}
return;
Fatal error: Call to undefined method stdClass::output() in /var/www/vhosts/domain.com/httpdocs/core/cache/includes/elements/modsnippet/27.include.cache.php on line 10
$this->modx->addPackage('extendeduser', $this->extPath .'model/', 'ut_');
$this->modx->addPackage('extendeduser', $this->extPath .'model/extendeduser/');
<?php
$x = $modx->getService('extendeduser','Sampleclass',$modx->getOption('core_path',null, MODX_CORE_PATH).'components/extendeduser/',$scriptProperties);
if (!($x instanceof Extendeduser)) {
$modx->log(modX::LOG_LEVEL_ERROR,'[Extendeduser] Could not load Extendeduser class.');
$modx->event->output(true);
}
return;
[2012-04-09 20:59:14] (ERROR @ /manager/index.php) Could not load class: Sampleclass from sampleclass. [2012-04-09 20:59:14] (ERROR @ /manager/index.php) Problem getting service extendeduser, instance of class Sampleclass, from path /var/www/vhosts/domain.com/httpdocs/core/components/extendeduser/ [2012-04-09 20:59:14] (ERROR @ /manager/index.php) [Extendeduser] Could not load Extendeduser class.
$modx->getService('extendeduser','Sampleclass',...)$modx->getService('extendeduser','extUser',...)
if (!class_exists('Sampleclass')) {
class Sampleclass
{
function __construct(modX & $modx, array $config= array ()) {
/* Import modx as a reference */
$this->modx= & $modx;
/* Establish the environment */
$this->extPath= $modx->getOption('core_path',null, MODX_CORE_PATH).'components/extendeduser/';
$this->modx->addPackage('extendeduser', $this->extPath .'model/', 'ut_');
$this->_config= array_merge(array (
'userID' => $this->modx->user->get('id'),
), $config);
/* Define the user */
$this->userObj = $this->setUser($this->_config['userID']);
$this->userID = $this->userObj->get('id');
}
function __destruct() {
unset ($this->extPath, $this->userObj, $this->userID, $this->_config);
}
/**
* Returns object of type Phone.
*/
public function getPhoneObj() {
$this->userObj->getOne('Phones');
return $this->userObj->Phones;
}
/**
* Returns object utUser instance of modUser Defaults to current user.
* @param $userID
*/
public function getUserObj($userID) {
return $this->modx->getObject('modUser', $userID);
}
/**
* Establishes the user.
* @param int $userID
*/
public function setUser($userID){
return $this->getUserObj($userID);
}
}
}
$x = $modx->getService(..,..,$modx->getOption('core_path',null, MODX_CORE_PATH).'components/extendeduser/',$scriptProperties);$x = $modx->getService(..,..,$modx->getOption('core_path',null, MODX_CORE_PATH).'components/extendeduser/model/',$scriptProperties);