common/corpus-common-addon/app/components/doc-language.js
author ymh <ymh.work@gmail.com>
Tue, 23 Feb 2016 17:47:57 +0100
changeset 127 5cd8c3065c38
child 134 c06d08c8a1b8
permissions -rw-r--r--
extract common functionalities to common module. First application to lexvo name resolving
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
127
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
import Ember from 'ember';
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
import * as constants from 'corpus-common-addon/utils/constants'
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
export default Ember.Component.extend({
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
    tagName: "span",
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
    lexvoResolver: Ember.inject.service(),
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
    _resolveLexvoIds: Ember.on('init', Ember.observer('language', function() {
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
      this.get('lexvoResolver').getName(this.get('language')).then(function(str) {
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
          this.set('resolvedName', str);
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
      }.bind(this));
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
    })),
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
    code: Ember.computed('language', function() {
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
      var rawLanguage = this.get('language');
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
      if(rawLanguage && rawLanguage.startsWith(constants.LEXVO_BASE_URL) ) {
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
        return rawLanguage.substr(constants.LEXVO_BASE_URL.length);
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
      }
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
      return rawLanguage;
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
    }),
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
    isLanguageLink: Ember.computed.match('language', /^http\:\/\//)
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
5cd8c3065c38 extract common functionalities to common module. First application to lexvo name resolving
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
});