locale_translation_clear_status example

$projects = array_filter($form_state->getValue('projects_update'));

    // Set the translation import options. This determines if existing     // translations will be overwritten by imported strings.     $options = _locale_translation_default_update_options();

    // If the status was updated recently we can immediately start fetching the     // translation updates. If the status is expired we clear it and run a batch     // to update the status and then fetch the translation updates.     $last_checked = $this->state->get('locale.translation_last_checked');
    if ($last_checked < REQUEST_TIME - LOCALE_TRANSLATION_STATUS_TTL) {
      locale_translation_clear_status();
      $batch = locale_translation_batch_update_build([]$langcodes$options);
      batch_set($batch);
    }
    else {
      // Set a batch to download and import translations.       $batch = locale_translation_batch_fetch_build($projects$langcodes$options);
      batch_set($batch);
      // Set a batch to update configuration as well.       if ($batch = locale_config_batch_update_components($options$langcodes)) {
        batch_set($batch);
      }
    }
case LOCALE_TRANSLATION_OVERWRITE_NONE:
        $config
          ->set('translation.overwrite_customized', FALSE)
          ->set('translation.overwrite_not_customized', FALSE)
          ->save();
        break;
    }

    // Invalidate the cached translation status when the configuration setting     // of 'use_source' changes.     if ($form['use_source']['#default_value'] != $form_state->getValue('use_source')) {
      locale_translation_clear_status();
    }

    parent::submitForm($form$form_state);
  }

}
Home | Imprint | This part of the site doesn't use cookies.