function osc_check_languages_update($force = false) { $total = getPreference('languages_update_count'); if ($force) { return _osc_check_languages_update(); } else { if (time() - osc_languages_last_version_check() > 24 * 3600) { osc_add_hook('admin_footer', 'check_languages_admin_footer'); } } return $total; }
function osc_check_languages_update( $force = false ) { $total = 0; $array = array(); $array_downloaded = array(); // check if exist a new version each day if( (time() - osc_languages_last_version_check()) > (24 * 3600) || $force ) { $languages = OSCLocale::newInstance()->listAll(); foreach($languages as $lang) { if(osc_check_language_update($lang['pk_c_code'], $lang['s_version'] )) { $array[] = $lang['pk_c_code']; $total++; } $array_downloaded[] = $lang['pk_c_code']; } osc_set_preference( 'languages_to_update' , json_encode($array) ); osc_set_preference( 'languages_downloaded', json_encode($array_downloaded) ); osc_set_preference( 'languages_update_count', $total ); osc_set_preference( 'languages_last_version_check', time() ); osc_reset_preferences(); } else { $total = getPreference('languages_update_count'); } return $total; }