mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-09-27 16:08:47 +03:00
translations system + french translation
This commit is contained in:
parent
2d55b7e38d
commit
71f12024d1
92
index.html
92
index.html
@ -123,17 +123,17 @@
|
|||||||
<body>
|
<body>
|
||||||
<header>
|
<header>
|
||||||
<h1><a href="https://faisalman.github.io/ua-parser-js">UAParser.js</a></h1>
|
<h1><a href="https://faisalman.github.io/ua-parser-js">UAParser.js</a></h1>
|
||||||
<h2>Lightweight JavaScript-based User-Agent String Parser</h2>
|
<h2 trans-key="description">Lightweight JavaScript-based User-Agent String Parser</h2>
|
||||||
</header>
|
</header>
|
||||||
<section class="result">
|
<section class="result">
|
||||||
<pre>
|
<pre>
|
||||||
</pre>
|
</pre>
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Browser</th>
|
<th trans-key="browser">Browser</th>
|
||||||
<th>Engine</th>
|
<th trans-key="engine">Engine</th>
|
||||||
<th>OS</th>
|
<th trans-key="os">OS</th>
|
||||||
<th>Device</th>
|
<th trans-key="device">Device</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td></td>
|
<td></td>
|
||||||
@ -155,20 +155,25 @@
|
|||||||
</table>
|
</table>
|
||||||
</section>
|
</section>
|
||||||
<section class="test">
|
<section class="test">
|
||||||
<p>Pick one user agent to be tested:</p>
|
<p trans-key="pick_one_label">Pick one user agent to be tested:</p>
|
||||||
<select>
|
<select>
|
||||||
<option>Pick one</option>
|
<option trans-key="pick_one_text">Pick one</option>
|
||||||
</select>
|
</select>
|
||||||
<p>Or enter any user-agent string you want to test here:</p>
|
<p trans-key="enter_user_agent_string">Or enter any user-agent string you want to test here:</p>
|
||||||
<input type="text" />
|
<input type="text" />
|
||||||
</section>
|
</section>
|
||||||
<footer>
|
<footer>
|
||||||
<p>
|
<p>
|
||||||
<span class="ua">UAParser.js</span> © 2012-2014 Faisal Salman. <br/>
|
<span class="ua">UAParser.js</span> © 2012-2014 Faisal Salman. <br/>
|
||||||
Dual licensed under GPLv2 & MIT license<br/>
|
<span trans-key="license">Dual licensed under GPLv2 & MIT license</span><br/>
|
||||||
Source & Docs: <a href="https://github.com/faisalman/ua-parser-js">https://github.com/faisalman/ua-parser-js</a><br/>
|
<span trans-key="source_and_docs">Source & Docs</span>: <a href="https://github.com/faisalman/ua-parser-js">https://github.com/faisalman/ua-parser-js</a><br/>
|
||||||
Node.js package: <a href="https://npmjs.org/package/ua-parser-js">https://npmjs.org/package/ua-parser-js</a><br/>
|
<span trans-key="nodejs_package">Node.js package</span>: <a href="https://npmjs.org/package/ua-parser-js">https://npmjs.org/package/ua-parser-js</a><br/>
|
||||||
$.ua: <a href="http://plugins.jquery.com/ua-parser-js/">http://plugins.jquery.com/ua-parser-js/</a>
|
<span trans-key="jquery">$.ua</span>: <a href="http://plugins.jquery.com/ua-parser-js/">http://plugins.jquery.com/ua-parser-js/</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<a href="?lang=en">English</a> |
|
||||||
|
<a href="?lang=fr">Français</a>
|
||||||
</p>
|
</p>
|
||||||
</footer>
|
</footer>
|
||||||
<script>
|
<script>
|
||||||
@ -231,7 +236,7 @@
|
|||||||
for(var i = 0; i < prop.length; i++){
|
for(var i = 0; i < prop.length; i++){
|
||||||
fill(tbl[i], prop[i]);
|
fill(tbl[i], prop[i]);
|
||||||
}
|
}
|
||||||
pre.innerHTML = 'Result for <span class="uastring">' + (uastring ? uastring.replace(/</g,'<') : navigator.userAgent + '</span><span> (User-Agent string of your browser)') + '</span> :';
|
pre.innerHTML = trans('result_for') + ' <span class="uastring">' + (uastring ? uastring.replace(/</g,'<') : navigator.userAgent + '</span><span> (' + trans('user_agent_string') + ')') + '</span> :';
|
||||||
}
|
}
|
||||||
fillTable();
|
fillTable();
|
||||||
var select = function(){
|
var select = function(){
|
||||||
@ -250,6 +255,67 @@
|
|||||||
sel.attachEvent('onchange', select);
|
sel.attachEvent('onchange', select);
|
||||||
txt.attachEvent('onkeydown', enter);
|
txt.attachEvent('onkeydown', enter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var forEach = function (array, callback, scope) {
|
||||||
|
for (var i = 0; i < array.length; i++) {
|
||||||
|
callback.call(scope, i, array[i]); // passes back stuff we need
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
function getTranslations() {
|
||||||
|
var translations = {
|
||||||
|
en: {
|
||||||
|
result_for: 'Result for',
|
||||||
|
user_agent_string: 'User-Agent string of your browser',
|
||||||
|
},
|
||||||
|
fr: {
|
||||||
|
description: 'Parseur léger de chaine "User-Agent" en JavaScript',
|
||||||
|
result_for: 'Résultat pour',
|
||||||
|
user_agent_string: 'Chaine "User-Agent"',
|
||||||
|
browser: 'Navigateur',
|
||||||
|
engine: 'Moteur',
|
||||||
|
os: 'Système d\'exploitation',
|
||||||
|
device: 'Appareil',
|
||||||
|
enter_user_agent_string: 'Entrez une chaine de "User-Agent" à tester:',
|
||||||
|
pick_one_label: 'Sélectionner un "User-Agent" à tester',
|
||||||
|
pick_one_text: 'Sélectionner',
|
||||||
|
license: 'Double license GPLv2 & MIT',
|
||||||
|
source_and_docs: 'Source et doc',
|
||||||
|
nodejs_package: 'Package Node.js',
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
return translations;
|
||||||
|
}
|
||||||
|
|
||||||
|
function trans(key) {
|
||||||
|
const queryLang = location.search.match(/lang=([a-z]+)/);
|
||||||
|
var locale = queryLang || navigator.language || navigator.userLanguage;
|
||||||
|
var translations = getTranslations();
|
||||||
|
|
||||||
|
if (!translations) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!translations[locale]) {
|
||||||
|
locale = 'en';
|
||||||
|
}
|
||||||
|
|
||||||
|
var localeTranslations = translations[locale];
|
||||||
|
return localeTranslations && localeTranslations[key];
|
||||||
|
}
|
||||||
|
|
||||||
|
var transKeys = document.querySelectorAll('[trans-key]');
|
||||||
|
|
||||||
|
forEach(transKeys, function (index, value) {
|
||||||
|
var transKey = value.getAttribute('trans-key');
|
||||||
|
var translatedText = trans(transKey);
|
||||||
|
|
||||||
|
if (translatedText) {
|
||||||
|
value.innerHTML = translatedText;
|
||||||
|
}
|
||||||
|
});
|
||||||
</script>
|
</script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var _gaq = _gaq || [];
|
var _gaq = _gaq || [];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user