public static function refresh_unit_completion($unit_id) { $modules = Unit_Module::get_modules($unit_id, 0, true); $input_modules = Unit_Module::get_input_module_types(); if (!empty($modules)) { // Traverse modules foreach ($modules as $module_id) { $module_type = Unit_Module::get_module_type($module_id); $module_is_input = in_array($module_type, $input_modules); // Only for input modules if ($module_is_input) { $module_meta = Unit_Module::get_module_meta($module_id); self::refresh_module_completion($unit_id, $module_id, $module_type, $module_meta); } } } }