protected function createTables() { if ($this->config->getDatabase() != null) { $modelPath = $this->packageCorePath . 'model/'; $this->modx->addPackage($this->config->getLowCaseName(), $modelPath, $this->config->getDatabase()->getPrefix()); foreach ($this->config->getDatabase()->getSimpleObjects() as $simpleObject) { $this->modx->loadClass($simpleObject); } $manager = $this->modx->getManager(); foreach ($this->config->getDatabase()->getTables() as $table) { $manager->createObjectContainer($table); } } }
if (!defined('MODX_BASE_PATH')) { require 'build.config.php'; } /* define sources */ $root = dirname(dirname(__FILE__)) . '/'; $sources = array('root' => $root, 'build' => $root . '_build/', 'source_core' => $root . 'core/components/' . PKG_NAME_LOWER, 'model' => $root . 'core/components/' . PKG_NAME_LOWER . '/model/', 'schema' => $root . 'core/components/' . PKG_NAME_LOWER . '/model/schema/', 'xml' => $root . 'core/components/' . PKG_NAME_LOWER . '/model/schema/' . PKG_NAME_LOWER . '.mysql.schema.xml'); unset($root); require MODX_CORE_PATH . 'model/modx/modx.class.php'; require $sources['build'] . '/includes/functions.php'; $modx = new modX(); $modx->initialize('mgr'); $modx->getService('error', 'error.modError'); $modx->setLogLevel(modX::LOG_LEVEL_INFO); $modx->setLogTarget('ECHO'); $modx->loadClass('transport.modPackageBuilder', '', false, true); if (!XPDO_CLI_MODE) { echo '<pre>'; } /** @var xPDOManager $manager */ $manager = $modx->getManager(); /** @var xPDOGenerator $generator */ $generator = $manager->getGenerator(); // Remove old model rrmdir($sources['model'] . PKG_NAME_LOWER . '/mysql'); // Generate a new one $generator->parseSchema($sources['xml'], $sources['model']); $modx->log(modX::LOG_LEVEL_INFO, 'Model generated.'); if (!XPDO_CLI_MODE) { echo '</pre>'; }
* @subpackage build */ $mtime = microtime(); $mtime = explode(" ", $mtime); $mtime = $mtime[1] + $mtime[0]; $tstart = $mtime; set_time_limit(0); /* initialize xpdo */ require_once dirname(__FILE__) . '/build.config.php'; require_once MODX_CORE_PATH . 'model/modx/modx.class.php'; $modx = new modX(); $modx->initialize('mgr'); $modx->setLogTarget('ECHO'); $modx->setLogLevel(modX::LOG_LEVEL_INFO); $modx->setPackage('rpx.user', dirname(dirname(__FILE__)) . '/model/'); $modx->getManager(); $generator = $modx->manager->getGenerator(); $generator->classTemplate = <<<EOD <?php /** * [+phpdoc-package+] * [+phpdoc-subpackage+] */ class [+class+] extends [+extends+] {} ?> EOD; $generator->platformTemplate = <<<EOD <?php /** * [+phpdoc-package+] * [+phpdoc-subpackage+]