function test_backupTables() { $GLOBALS['_MAX']['CONF']['pluginPaths']['repo'] = $GLOBALS['_MAX']['CONF']['pluginPaths']['repo'] . '|' . MAX_PATH . $this->testpathData . 'plugins_repo/'; $zipFile = $this->testpathData . 'plugins_repo/' . 'testPluginPackage_v3.zip'; $plugin = $this->testpathData . 'plugins_repo/' . 'testPluginPackage.zip'; if (file_exists($zipFile) && !unlink($zipFile)) { $this->fail('error unlinking ' . $zipFile); return false; } if (!copy(MAX_PATH . $zipFile, MAX_PATH . $plugin)) { $this->fail('error copying ' . $zipFile); return false; } if (!file_exists(MAX_PATH . $plugin)) { $this->fail('file does not exist ' . $plugin); return false; } TestEnv::installPluginPackage('testPluginPackage', false); $prefix = $GLOBALS['_MAX']['CONF']['table']['prefix']; $oExport = new OX_PluginExport(); $oExport->init('testPluginPackage'); $aTables = OA_DB_Table::listOATablesCaseSensitive('testplugin_table'); $this->assertEqual(count($aTables), 1); $this->assertEqual($aTables[0], $prefix . 'testplugin_table'); $this->assertTrue($oExport->backupTables('testPluginPackage')); $aTables = OA_DB_Table::listOATablesCaseSensitive('testplugin_table'); $this->assertEqual(count($aTables), 2); $this->assertEqual($aTables[0], $prefix . 'testplugin_table'); $this->assertPattern('/' . $prefix . 'testplugin_table_' . date('Ymd') . '_[\\d]{6}/', $aTables[1]); TestEnv::uninstallPluginPackage('testPluginPackage', false); TestEnv::restoreConfig(); TestEnv::restoreEnv(); }
if ($aPackageInfo['readme']) { $readme = file_get_contents($aPackageInfo['readme']); } $aPackageInfo['package'] = true; $oTpl->assign('aPackage', $aPackageInfo); $oTpl->assign('aPlugins', $aComponents); $oTpl->assign('readme', $readme); $oTpl->assign('backURL', MAX::constructURL(MAX_URL_ADMIN, "plugin-index.php?selection=packages")); $oTpl->assign('aMessages', $aMessages); $oTpl->assign('aErrors', $oExporter->aErrors); } else { if (array_key_exists('backup', $_POST)) { require_once LIB_PATH . '/Plugin/PluginExport.php'; $oExporter = new OX_PluginExport(); $oExporter->init($plugin); $aMessages = $oExporter->backupTables($plugin); $oTpl = new OA_Admin_Template('plugin-view.html'); $aPackageInfo = $oPluginManager->getPackageInfo($plugin); $aComponents = $aPackageInfo['contents']; unset($aPackageInfo['contents']); if ($aPackageInfo['readme']) { $readme = file_get_contents($aPackageInfo['readme']); } $aPackageInfo['package'] = true; $oTpl->assign('aPackage', $aPackageInfo); $oTpl->assign('aPlugins', $aComponents); $oTpl->assign('readme', $readme); $oTpl->assign('backURL', MAX::constructURL(MAX_URL_ADMIN, "plugin-index.php?selection=packages")); $oTpl->assign('aMessages', $aMessages ? $aMessages : array()); $oTpl->assign('aErrors', $oExporter->aErrors); } else {