Un bookmarklet pour ouvrir des onglets avec différentes langues

Pour des tests d’intégration j’ai besoin d’ouvrir rapidement des onglets avec les différentes versions d’un site selon la langue.

L’url du site est construite comme ceci : http://fr.domain.com/MaPage/
Si votre site a une url différente (par exemple : domain.com/us/MaPage/) il faudra adapter le code.

Voici le code commenté :

javascript:(function(){
    // on demande à l'utilisateur de choisir ses langues
    var locale_user = prompt('Wanted locales:', 'us, fr');

    if (locale_user) {
        // on transforme la chaine entrée en tableau
        var locale_list = locale_user.split(',');

        // on récupère l'url de la page courante et on la sépare dans un tableau
        var host_parts = window.location.host.split('.');
        // on définit une variable avec la langue de la page courante
        var current_locale = host_parts[0];

        // on teste la langue de la page courante pour éviter d'avoir 2 onglets avec la même langue
        for (var i in locale_list) {
            host_parts[0] = locale_list[i].trim();

            if (hostArray[0] != current_locale) {
                // on reconstruit l'url et on l'ouvre dans une nouvelle fenêtre (onglet sur les nouveaux nav) 
                // c'est cette ligne que vous devez changer si votre url est différente de l'exemple
                window.open(window.location.protocol + '//' + host_parts.join('.') + window.location.pathname + window.location.search + window.location.hash);
            }
        }
    }
})();

 

Et voici le bookmarklet, faites glisser ce lien dans votre barre de favoris : MultiLocales

Si vous copiez le code ci-dessus n’oubliez pas d’enlever les commentaires car le navigateur mettra tout le code sur une seule ligne 😉

 

Source photo : Scanrail

HTML Vous pouvez utiliser ces balises HTML : <a> <b> <i> <code> <cite>