You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

39 regels
1.4 KiB

  1. 'use strict';
  2. /**
  3. * Translator for documentation pages.
  4. *
  5. * To enable translation you should include one of language-files in your index.html
  6. * after <script src='lang/translator.js' type='text/javascript'></script>.
  7. * For example - <script src='lang/ru.js' type='text/javascript'></script>
  8. *
  9. * If you wish to translate some new texsts you should do two things:
  10. * 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.
  11. * 2. Mark that text it templates this way <anyHtmlTag data-sw-translate>New Phrase</anyHtmlTag> or <anyHtmlTag data-sw-translate value='New Phrase'/>.
  12. * The main thing here is attribute data-sw-translate. Only inner html, title-attribute and value-attribute are going to translate.
  13. *
  14. */
  15. window.SwaggerTranslator = {
  16. _words:[],
  17. translate: function() {
  18. var $this = this;
  19. $('[data-sw-translate]').each(function() {
  20. $(this).html($this._tryTranslate($(this).html()));
  21. $(this).val($this._tryTranslate($(this).val()));
  22. $(this).attr('title', $this._tryTranslate($(this).attr('title')));
  23. });
  24. },
  25. _tryTranslate: function(word) {
  26. return this._words[$.trim(word)] !== undefined ? this._words[$.trim(word)] : word;
  27. },
  28. learn: function(wordsMap) {
  29. this._words = wordsMap;
  30. }
  31. };