From 4f1f5094eef32d57de5a5c874d679bdbc9a0286b Mon Sep 17 00:00:00 2001 From: Maxim Lihachev Date: Tue, 10 Jan 2017 23:47:27 +0500 Subject: [PATCH] =?UTF-8?q?programming:=20=D0=A4=D0=B5=D0=BC=D0=B8=D0=BD?= =?UTF-8?q?=D0=B8=D0=B7=D0=B0=D1=82=D0=BE=D1=80=20v1.3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- feminizator.html | 4 ++-- js/feminitives.js | 38 +++++++++++++++++++++++++------------- 3 files changed, 28 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 858b06d..d3f4701 100644 --- a/README.md +++ b/README.md @@ -34,5 +34,5 @@ феминитивов и просто мысли. ##Версия - 1.2 + 1.3 diff --git a/feminizator.html b/feminizator.html index d5fe14e..9865d67 100644 --- a/feminizator.html +++ b/feminizator.html @@ -17,7 +17,7 @@
-

Феминизатор v1.2

+

Феминизатор v1.3

@@ -45,7 +45,7 @@
? - +
diff --git a/js/feminitives.js b/js/feminitives.js index 8b3b987..e7bef98 100644 --- a/js/feminitives.js +++ b/js/feminitives.js @@ -65,17 +65,6 @@ HTML.init = function(root) { this.button().onclick = () => tr(); }; -//Разбор параметров -var URL = {opt: {}}; - -URL.parse = function() { - var gy = window.location.search.substring(1).split("&"); - gy.forEach(arg => { - let ft = arg.split("="); - this.opt[ft[0]] = this.opt[ft[0]] || decodeURIComponent(ft[1]); - }); -}; - //------------------------------------------------------------------------------ //Правила создания феминитивов @@ -87,7 +76,8 @@ FEM.endings = { ['ан', 0], ['рг', 1], ['ст', 0], //специалист -> специалистка - ['ец', 2] //канадец -> канадка + ['ец', 2], //канадец -> канадка + ['ет', 0] //авторитет -> авторитетка ], 'ина' : [ ['ас', 0] @@ -101,6 +91,7 @@ FEM.endings = { ['ач', 0], //врач -> врачиня ['ст', 0], //специалист -> специалистиня ['од', 0], //метод -> методиня + ['ет', 2], //авторитет -> авторитиня ['ец', 2] //канадец -> канадиня ], 'киня' : [ @@ -119,6 +110,7 @@ FEM.endings = { ['ый', 2], //учёный -> учёнесса ['ст', 0], //специалист -> специалистесса ['од', 0], //метод -> методесса + ['ет', 2], //авторитет -> авторитесса ['ец', 2] //канадец -> канадесса ], 'ица' : [ @@ -133,20 +125,26 @@ FEM.endings = { ['ач', 0], //врач -> врачица ['ст', 3], //специалист -> специалица ['од', 0], //метод -> методица + ['ет', 2], //авторитет -> авторитица ['ец', 2] //канадец -> канадица ], 'ница' : [ ['ль', 0], ['ас', 0], + ['ет', 0], //авторитет -> авторитетица ['ец', 2] //канадец -> канадница ], 'ая' : [ ['[ыио]й', 2], //учёный -> учёная, знающий -> знающая + ['ое', 2] ], //----- ДАЛЬШЕ ИДЁТ ШИЗА ----- 'ии' : [ ['и[ия]', 2], //металлургии -> металлург_ии, произведения -> произведении ], + 'ца' : [ + ['ие', 1], //металлургии -> металлург_ии, произведения -> произведении + ], 'ми' : [ ['ми', 2] //знаниями -> знания_ми ], @@ -236,6 +234,12 @@ function construct_feminitive(stem, ending, gap) { return gap ? stem + css_gender_gap + css_end(ending) : stem + "_" + ending; } +//Отправка адреса страницы в vk.com +function share_page() { + var new_tab = window.open("http://vk.com/share.php?url=" + URL.opt.href,'_blank'); + new_tab.focus(); +} + //Сохранение изображения с феминитивом function download_image() { html2canvas(HTML.image(), { @@ -332,6 +336,10 @@ function tr(word) { var wd = word || HTML.input().value.trim().toLowerCase().split(" ")[0]; var feminitives = ""; + //Изменение адреса + window.location.hash = wd; + URL.opt.href = window.location.href; + HTML.dict().innerHTML = ""; HTML.content().innerHTML = ""; @@ -358,10 +366,14 @@ function tr(word) { //------------------------------------------------------------------------------ +var URL = {opt: {}}; + //Инициализация с разбором адресной строки function init(container) { HTML.init(container); - URL.parse(); + + URL.opt.href = window.location.href; + URL.opt.word = window.location.hash.substring(1) || null; if (URL.opt.word) { HTML.input().value = URL.opt.word.replace(/\+/g," ");