From 272105f8cf986297c7684d4697a82e98e560015f Mon Sep 17 00:00:00 2001 From: Mikhail Berdnikov Date: Tue, 22 Oct 2019 01:28:03 +0300 Subject: [PATCH 1/4] template_fix, render fix --- .../chineseDuck.Bot/Providers/FontFlashCardGenerator.cs | 9 +++++---- src/server/api/db/modelsHolder.js | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs b/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs index 0d32bd3ee..62c97382e 100644 --- a/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs +++ b/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs @@ -139,7 +139,7 @@ public GenerateImageResult Generate(IWord word, ELearnMode learnMode) { var renderOptions = GetRenderOptions(ArialUnicodeMainFont, y); var transChars = CutToMaxRow(CutToMaxLength(word.Translation, MainMaxCharsCount, string.Empty), - MainMaxLineCharsCount); + MainMaxLineCharsCount, true); var size = TextMeasurer.Measure(transChars, renderOptions); y += size.Height + LineSpace; @@ -152,7 +152,7 @@ public GenerateImageResult Generate(IWord word, ELearnMode learnMode) if (learnMode == ELearnMode.FullView && !string.IsNullOrEmpty(word.Usage)) { - var usageChars = CutToMaxRow(CutToMaxLength(word.Usage, MainMaxCharsCount), MainMaxLineCharsCount); + var usageChars = CutToMaxRow(CutToMaxLength(word.Usage, MainMaxCharsCount), MainMaxLineCharsCount, true); var renderOptions = GetRenderOptions(KaitiMainFont, y); var size = TextMeasurer.Measure(usageChars, renderOptions); y += size.Height + LineSpace; @@ -206,7 +206,7 @@ private static string CutToMaxLength(string input, int maxLength, string postfix return needCut ? input.Substring(0, maxLength - postfixIfCut.Length) + postfixIfCut : input; } - private static string CutToMaxRow(string input, int maxLengthInRow) + private static string CutToMaxRow(string input, int maxLengthInRow, bool useSpace = false) { var sb = new StringBuilder(); var stringCount = 0; @@ -214,7 +214,8 @@ private static string CutToMaxRow(string input, int maxLengthInRow) foreach (var ch in input) { var curLetter = ch.ToString(); - if (curLetter != " " && curLetter != Environment.NewLine) + + if (curLetter == " " && useSpace || curLetter != " " && curLetter != Environment.NewLine) { stringCount++; sb.Append(curLetter); diff --git a/src/server/api/db/modelsHolder.js b/src/server/api/db/modelsHolder.js index fbda95490..680632b0e 100644 --- a/src/server/api/db/modelsHolder.js +++ b/src/server/api/db/modelsHolder.js @@ -54,7 +54,7 @@ export class ModelsHolder { mh.idIncrement.findByIdAndUpdate( "userid", - { $inc: { seq: 1 } }, + { $inc: { seq: 2 } }, { upsert: true, new: true }, function(err, counter) { if (err) { From 1d909c31b1c8c157160b5daee8432961c04069dd Mon Sep 17 00:00:00 2001 From: Mikhail Berdnikov Date: Tue, 22 Oct 2019 01:51:20 +0300 Subject: [PATCH 2/4] template_fix, space fix --- .../chineseDuck.Bot/Providers/FontFlashCardGenerator.cs | 8 ++++---- src/bot/chineseDuck.BotService/Commands/FolderCommand.cs | 3 ++- src/bot/chineseDuck.BotService/ReleaseNotes.txt | 4 ++++ 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs b/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs index 62c97382e..800ad8965 100644 --- a/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs +++ b/src/bot/chineseDuck.Bot/Providers/FontFlashCardGenerator.cs @@ -139,7 +139,7 @@ public GenerateImageResult Generate(IWord word, ELearnMode learnMode) { var renderOptions = GetRenderOptions(ArialUnicodeMainFont, y); var transChars = CutToMaxRow(CutToMaxLength(word.Translation, MainMaxCharsCount, string.Empty), - MainMaxLineCharsCount, true); + MainMaxLineCharsCount); var size = TextMeasurer.Measure(transChars, renderOptions); y += size.Height + LineSpace; @@ -152,7 +152,7 @@ public GenerateImageResult Generate(IWord word, ELearnMode learnMode) if (learnMode == ELearnMode.FullView && !string.IsNullOrEmpty(word.Usage)) { - var usageChars = CutToMaxRow(CutToMaxLength(word.Usage, MainMaxCharsCount), MainMaxLineCharsCount, true); + var usageChars = CutToMaxRow(CutToMaxLength(word.Usage, MainMaxCharsCount), MainMaxLineCharsCount); var renderOptions = GetRenderOptions(KaitiMainFont, y); var size = TextMeasurer.Measure(usageChars, renderOptions); y += size.Height + LineSpace; @@ -206,7 +206,7 @@ private static string CutToMaxLength(string input, int maxLength, string postfix return needCut ? input.Substring(0, maxLength - postfixIfCut.Length) + postfixIfCut : input; } - private static string CutToMaxRow(string input, int maxLengthInRow, bool useSpace = false) + private static string CutToMaxRow(string input, int maxLengthInRow) { var sb = new StringBuilder(); var stringCount = 0; @@ -215,7 +215,7 @@ private static string CutToMaxRow(string input, int maxLengthInRow, bool useSpac { var curLetter = ch.ToString(); - if (curLetter == " " && useSpace || curLetter != " " && curLetter != Environment.NewLine) + if (curLetter != Environment.NewLine) { stringCount++; sb.Append(curLetter); diff --git a/src/bot/chineseDuck.BotService/Commands/FolderCommand.cs b/src/bot/chineseDuck.BotService/Commands/FolderCommand.cs index b1fcae044..15f92a275 100644 --- a/src/bot/chineseDuck.BotService/Commands/FolderCommand.cs +++ b/src/bot/chineseDuck.BotService/Commands/FolderCommand.cs @@ -42,7 +42,8 @@ public override AnswerItem Reply(MessageItem mItem) { var user = _repository.GetUser(mItem.ChatId); var folders = _repository.GetUserFolders(mItem.ChatId); - var currentFolder = folders.First(a => a.Id == user.CurrentFolderId); + var currentFolder = folders.FirstOrDefault(a => a.Id == user.CurrentFolderId) ?? + folders.First(a => a.Id == 0); var answerItem = new AnswerItem { diff --git a/src/bot/chineseDuck.BotService/ReleaseNotes.txt b/src/bot/chineseDuck.BotService/ReleaseNotes.txt index c93e3ff42..b59ba3b80 100644 --- a/src/bot/chineseDuck.BotService/ReleaseNotes.txt +++ b/src/bot/chineseDuck.BotService/ReleaseNotes.txt @@ -1,5 +1,9 @@ Release notes: +ver.0.6.1.0 (22 october 2019) +========================= +[+] pre-installed folders + ver.0.5.0.0 (31 march 2019) ========================= [*] beta is ready From e46cd9c22126844a9a7c7c6f8093616461a1743d Mon Sep 17 00:00:00 2001 From: Mikhail Berdnikov Date: Tue, 22 Oct 2019 01:52:29 +0300 Subject: [PATCH 3/4] 0.6.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c3a79f538..a6fc00731 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "chinese_duck", "url": "https://chineseduck.online", - "version": "0.6.0", + "version": "0.6.1", "description": "Chinese Duck Bot", "main": "server/index.js", "scripts": { From ada415be74bf6080608a9508b1f43c4c91b2c26b Mon Sep 17 00:00:00 2001 From: Mikhail Berdnikov Date: Tue, 22 Oct 2019 02:08:39 +0300 Subject: [PATCH 4/4] +HSK1 --- src/shared/hsk/HSK1en.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/shared/hsk/HSK1en.csv b/src/shared/hsk/HSK1en.csv index da3c64fff..db365f6ee 100644 --- a/src/shared/hsk/HSK1en.csv +++ b/src/shared/hsk/HSK1en.csv @@ -1,4 +1,4 @@ -我;I, me +我;I, me 我们;we, us (pl.) 你;you 你们;you (pl.)