Updates locked system language weights.
function language_update_locked_weights() {
// Get maximum weight to update the system languages to keep them on bottom.
$max_weight = db_query('SELECT MAX(weight) FROM {language} WHERE locked = 0')
->fetchField();
// Loop locked languages to maintain the existing order.
foreach (language_list(Language::STATE_LOCKED) as $language) {
$max_weight++;
// Update system languages weight.
db_update('language')
->fields(array(
'weight' => $max_weight,
))
->condition('langcode', $language->langcode)
->execute();
}
}