summaryrefslogtreecommitdiff
path: root/src/main/java/files/UserKeyboard.java
diff options
context:
space:
mode:
authormavlonerkinboev <mavlonbek.ibragimov007@gmail.com>2021-07-27 09:44:01 +0500
committermavlonerkinboev <mavlonbek.ibragimov007@gmail.com>2021-07-27 09:44:01 +0500
commitb6c235dfd453850a478ad4ffe7d334f87427ad9f (patch)
tree11e59546df0cd0e2422a9dadfa8c41c7ecb7e132 /src/main/java/files/UserKeyboard.java
parent3d93e3f7f845ceca4cea62302cc238e21bcd5429 (diff)
just another commit...
Diffstat (limited to 'src/main/java/files/UserKeyboard.java')
-rw-r--r--src/main/java/files/UserKeyboard.java87
1 files changed, 87 insertions, 0 deletions
diff --git a/src/main/java/files/UserKeyboard.java b/src/main/java/files/UserKeyboard.java
new file mode 100644
index 0000000..c5f2b82
--- /dev/null
+++ b/src/main/java/files/UserKeyboard.java
@@ -0,0 +1,87 @@
+package files;
+
+import com.pengrad.telegrambot.model.request.Keyboard;
+import com.pengrad.telegrambot.model.request.InlineKeyboardButton;
+import com.pengrad.telegrambot.model.request.InlineKeyboardMarkup;
+import com.pengrad.telegrambot.model.request.ReplyKeyboardMarkup;
+import org.jsoup.Jsoup;
+import org.jsoup.nodes.Element;
+import org.jsoup.select.Elements;
+
+import java.io.IOException;
+import java.util.ArrayList;
+
+public class UserKeyboard {
+ public static short seriesSize;
+
+ public static Keyboard getMain() {
+ return new ReplyKeyboardMarkup(
+ new String[]{"Поиск аниме"},
+ new String[]{"Онгоинги"},
+ new String[]{"Аниме сериалы"},
+ new String[]{"Аниме фильмы"})
+ .oneTimeKeyboard(true)
+ .resizeKeyboard(true)
+ .selective(true);
+ }
+
+ public static Keyboard getCarousel() {
+ InlineKeyboardMarkup inlineKeyboardMarkup = new InlineKeyboardMarkup();
+
+ inlineKeyboardMarkup.addRow(new InlineKeyboardButton("Смотреть / Скачать").callbackData("watchOrDownload"));
+ inlineKeyboardMarkup.addRow(new InlineKeyboardButton("Пред.").callbackData("previous"), new InlineKeyboardButton("След.").callbackData("next"));
+
+ return inlineKeyboardMarkup;
+ }
+
+ public static Keyboard getDub() {
+ return new InlineKeyboardMarkup(new InlineKeyboardButton("Anidub").callbackData("anidub"));
+ }
+
+ public static Keyboard getAnidub() throws IOException {
+ Anime[] anime = Anime.list;
+ Anime thisAnime = anime[Anime.indexOfAnime];
+
+ Elements seriesList = Parser.getPage(thisAnime.getUrl()).select("div[class=tabs-b video-box]").next().select("span");
+ ArrayList<String> series = new ArrayList<>();
+ ArrayList<String> seriesUrls = new ArrayList<>();
+
+ for (Element seriesTemp : seriesList) {
+ series.add(Jsoup.parse(String.valueOf(seriesTemp)).text());
+ }
+
+ for (Element seriesTemp : seriesList) {
+ String text = seriesTemp.toString();
+ int start = text.indexOf("=\"") + 2;
+ int end = text.indexOf("\" ");
+ char[] dst = new char[end - start];
+ text.getChars(start, end, dst, 0);
+ seriesUrls.add(String.valueOf(dst));
+ }
+
+ InlineKeyboardMarkup inlineKeyboardMarkup = new InlineKeyboardMarkup();
+ seriesSize = (short) series.size();
+ for (int i = 0; i < seriesSize; i++) {
+ if (i+2 < seriesSize) {
+ inlineKeyboardMarkup.addRow(
+ new InlineKeyboardButton(series.get(i)).url(seriesUrls.get(i)),
+ new InlineKeyboardButton(series.get(i+1)).url(seriesUrls.get(i+1)),
+ new InlineKeyboardButton(series.get(i+2)).url(seriesUrls.get(i+2))
+ );
+ i += 2;
+ } else if (i+1 < seriesSize) {
+ inlineKeyboardMarkup.addRow(
+ new InlineKeyboardButton(series.get(i)).url(seriesUrls.get(i)),
+ new InlineKeyboardButton(series.get(i+1)).url(seriesUrls.get(i+1))
+ );
+ i++;
+ } else {
+ inlineKeyboardMarkup.addRow(
+ new InlineKeyboardButton(series.get(i)).url(seriesUrls.get(i))
+ );
+ }
+ }
+
+ return inlineKeyboardMarkup;
+ }
+}