function undoChange() { if ($this->hasError()) { $this->sendError(); } if ($this->isApplied()) { // undo your magic here // Deactivate French modules vtlib_toggleLanguageAccess('fr_fr', false); $this->sendMsg('NO french!'); $this->sendMsg('Changeset cbupdate_example undone!'); $this->markUndone(); } else { $this->sendMsg('Changeset cbupdate_example not applied!'); } $this->finishExecution(); }
function installAddons() { $packageList = array('module' => array('ConfigEditor', 'Import', 'Integration', 'MailManager', 'Mobile', 'ModTracker', 'PBXManager', 'ServiceContracts', 'Services', 'VtigerBackup', 'WSAPP', 'cbupdater', 'CobroPago' => false, 'Assets' => false, 'CronTasks' => false, 'CustomerPortal' => false, 'FieldFormulas' => false, 'ModComments' => false, 'ProjectMilestone' => false, 'ProjectTask' => false, 'Project' => false, 'RecycleBin' => false, 'SMSNotifier' => false, 'Tooltip' => false, 'Webforms' => false), 'lang' => array('it_it' => true, 'pt_br' => false, 'en_gb' => false, 'de_de' => false, 'nl_nl' => false, 'fr_fr' => false, 'hu_hu' => false, 'es_mx' => false, 'es_es' => false)); $packageImport = new Vtiger_PackageImport(); foreach ($packageList as $type => $packages) { foreach ($packages as $package => $enabled) { if (is_numeric($package)) { $package = $enabled; $enabled = true; } switch ($type) { case 'module': $packageImport->importManifest('modules/' . $package); vtlib_toggleModuleAccess($package, $enabled, true); break; case 'lang': $packageImport->importManifest('include/language/' . $package . '.manifest.xml'); vtlib_toggleLanguageAccess($package, $enabled); break; } } } }
$smarty = new vtigerCRM_Smarty(); $smarty->assign("MOD", $mod_strings); $smarty->assign("APP", $app_strings); $smarty->assign("THEME", $theme); $smarty->assign("IMAGE_PATH", "themes/{$theme}/images/"); $module_disable = vtlib_purify($_REQUEST['module_disable']); $module_name = vtlib_purify($_REQUEST['module_name']); $module_enable = vtlib_purify($_REQUEST['module_enable']); $module_type = vtlib_purify($_REQUEST['module_type']); if ($module_name != '') { if ($module_type == 'language') { if ($module_enable == 'true') { vtlib_toggleLanguageAccess($module_name, true); } if ($module_disable == 'true') { vtlib_toggleLanguageAccess($module_name, false); } } else { if ($module_enable == 'true') { vtlib_toggleModuleAccess($module_name, true); } if ($module_disable == 'true') { vtlib_toggleModuleAccess($module_name, false); } } } // Check write permissions on the required directories $dir_notwritable = array(); if (!vtlib_isDirWriteable('test/vtlib')) { $dir_notwritable[] = 'test/vtlib'; }