Пример #1
0
 /**
  * smartUpdateAllOfBlocks
  * 
  * @param   XoopsModule  &$module
  * @param   Legacy_ModuleInstallLog  &$log
  * 
  * @return  void
  **/
 public static function smartUpdateAllOfBlocks(&$module, &$log)
 {
     $dirname = $module->get('dirname');
     $fileReader = new Legacy_ModinfoX2FileReader($dirname);
     $dbReader = new Legacy_ModinfoX2DBReader($dirname);
     $blocks =& $dbReader->loadBlockInformations();
     $blocks->update($fileReader->loadBlockInformations());
     foreach ($blocks->mBlocks as $block) {
         switch ($block->mStatus) {
             case LEGACY_INSTALLINFO_STATUS_LOADED:
                 Letag_InstallUtils::updateBlockTemplateByInfo($block, $module, $log);
                 break;
             case LEGACY_INSTALLINFO_STATUS_UPDATED:
                 Letag_InstallUtils::updateBlockByInfo($block, $module, $log);
                 break;
             case LEGACY_INSTALLINFO_STATUS_NEW:
                 Letag_InstallUtils::installBlockByInfo($block, $module, $log);
                 break;
             case LEGACY_INSTALLINFO_STATUS_DELETED:
                 Letag_InstallUtils::uninstallBlockByFuncNum($block->mFuncNum, $module, $log);
                 break;
             default:
                 break;
         }
     }
 }