/** * Updates a module * * @param type $args * @return type */ public function actionUpdate($args, $force = false) { if (!isset($args[0])) { print "Error: Module Id required!\n\n"; print $this->getHelp(); return; } $moduleId = $args[0]; if (!Yii::app()->moduleManager->isInstalled($moduleId)) { print "\nModule " . $moduleId . " is not installed!\n"; return; } // Look online for module $onlineModules = new OnlineModuleManager(); $moduleInfo = $onlineModules->getModuleInfo($moduleId); if (!isset($moduleInfo['latestCompatibleVersion'])) { print "No compatible version for " . $moduleId . " found online!\n"; return; } if (!$force) { $module = Yii::app()->moduleManager->getModule($moduleId); if ($moduleInfo['latestCompatibleVersion']['version'] == $module->getVersion()) { print "Module " . $moduleId . " already up to date!\n"; return; } } $onlineModules->update($moduleId); print "Module " . $moduleId . " successfully updated!\n"; }