From cb8f221a1c22d0fd2fbb47f27f3e85be6d38d178 Mon Sep 17 00:00:00 2001 From: Maxim Lihachev Date: Wed, 9 Nov 2016 13:12:09 +0500 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=BC=D0=B5=D1=85=D0=B0=D0=BD=D0=B8=D0=B7=D0=BC=20?= =?UTF-8?q?=D0=BE=D0=B1=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=BA=D0=B8=20=D1=81?= =?UTF-8?q?=D0=BB=D0=BE=D0=B2-=D0=B8=D1=81=D0=BA=D0=BB=D1=8E=D1=87=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/feminitives.js | 53 ++++++++++++++++++++++++++++++++++------------------- 1 file changed, 34 insertions(+), 19 deletions(-) diff --git a/js/feminitives.js b/js/feminitives.js index fd1afe3..0a062f3 100644 --- a/js/feminitives.js +++ b/js/feminitives.js @@ -40,7 +40,7 @@ function show_help() { var HTML = { container: "", _select: function(element) { return document.getElementById(this.container + "-" + element); }, - input: function() { return this._select("word").toLowerCase(); }, + input: function() { return this._select("word"); }, dict: function() { return this._select("dict"); }, content: function() { return this._select("content"); }, full: function() { return this._select("full"); }, @@ -129,10 +129,25 @@ FEM.endings = { }; //Слова со специфичными определениями -FEM.exeptions = { +FEM.exceptions = { 'феминист' : [['профеминист', 'союзник'], "Мифическое создание, якобы поддерживающее феминизм."] } +//Проверка на исключение +FEM.exceptions.contains = function(word) { + return Object.keys(this).indexOf(word) === -1 ? false : true; +} + +//Список значений +FEM.exceptions.feminitives = function(word) { + return [random_word(this[word][0]), this[word][0]]; +} + +//Дефиниция слова-исключения +FEM.exceptions.definition = function(word) { + return this[word][1]; +} + //Слова для замены FEM.words = { 'тот' : 'т_а', @@ -294,27 +309,27 @@ function get_wiktionary(term) { //Создание и вывод феминитива function tr(word) { //Исходное слово - var wd = word || HTML.input().value.trim().split(" ")[0]; + var wd = word || HTML.input().value.trim().toLowerCase().split(" ")[0]; + var feminitives = ""; - if (wd) { - HTML.dict().innerHTML = ""; - HTML.content().innerHTML = ""; + HTML.dict().innerHTML = ""; + HTML.content().innerHTML = ""; - //Вывод дефиниции - get_wiktionary(wd); - - var feminitives = make_feminitives(wd); - - //Вывод информации - HTML.dict().innerHTML = feminitives[1].join(" | ") - || "Это слово и так прекрасно. Оставим его как есть."; - HTML.content().innerHTML = feminitives[0].replace(/(.)/, s => s.toUpperCase()); - - // - HTML.input().value = wd; - } else { + //Вывод информации + if (!wd) { show_help(); + } else if (FEM.exceptions.contains(wd)) { + HTML.full().innerHTML = FEM.exceptions.definition(wd); + feminitives = FEM.exceptions.feminitives(wd); + } else { + get_wiktionary(wd); + feminitives = make_feminitives(wd); } + //Вывод информации + HTML.input().value = wd; + HTML.content().innerHTML = feminitives[0].replace(/(.)/, s => s.toUpperCase()); + HTML.dict().innerHTML = feminitives[1].join(" | ") + || "Это слово и так прекрасно. Оставим его как есть."; } //------------------------------------------------------------------------------