aboutsummaryrefslogtreecommitdiffstats
path: root/www/swagger/lang/translator.js
diff options
context:
space:
mode:
authorlj1412 <lji@research.att.com>2017-02-14 15:10:01 +0000
committerlj1412 <lji@research.att.com>2017-02-14 15:10:03 +0000
commitd3ab0372565dbdbf202d819f071539e5047615dc (patch)
treebfcdaed109cc22454efc178168a57f1910bdbcc2 /www/swagger/lang/translator.js
parentb8d6bbecc10156e9b99f40b743bcac18086e86fa (diff)
Init dcae.dmaapbc
Change-Id: I67a7bab881544651bbff6bedb9551975c7ee10ca Signed-off-by: lj1412 <lji@research.att.com>
Diffstat (limited to 'www/swagger/lang/translator.js')
-rw-r--r--www/swagger/lang/translator.js39
1 files changed, 39 insertions, 0 deletions
diff --git a/www/swagger/lang/translator.js b/www/swagger/lang/translator.js
new file mode 100644
index 0000000..591f6d4
--- /dev/null
+++ b/www/swagger/lang/translator.js
@@ -0,0 +1,39 @@
+'use strict';
+
+/**
+ * Translator for documentation pages.
+ *
+ * To enable translation you should include one of language-files in your index.html
+ * after <script src='lang/translator.js' type='text/javascript'></script>.
+ * For example - <script src='lang/ru.js' type='text/javascript'></script>
+ *
+ * If you wish to translate some new texsts you should do two things:
+ * 1. Add a new phrase pair ("New Phrase": "New Translation") into your language file (for example lang/ru.js). It will be great if you add it in other language files too.
+ * 2. Mark that text it templates this way <anyHtmlTag data-sw-translate>New Phrase</anyHtmlTag> or <anyHtmlTag data-sw-translate value='New Phrase'/>.
+ * The main thing here is attribute data-sw-translate. Only inner html, title-attribute and value-attribute are going to translate.
+ *
+ */
+window.SwaggerTranslator = {
+
+ _words:[],
+
+ translate: function(sel) {
+ var $this = this;
+ sel = sel || '[data-sw-translate]';
+
+ $(sel).each(function() {
+ $(this).html($this._tryTranslate($(this).html()));
+
+ $(this).val($this._tryTranslate($(this).val()));
+ $(this).attr('title', $this._tryTranslate($(this).attr('title')));
+ });
+ },
+
+ _tryTranslate: function(word) {
+ return this._words[$.trim(word)] !== undefined ? this._words[$.trim(word)] : word;
+ },
+
+ learn: function(wordsMap) {
+ this._words = wordsMap;
+ }
+};