Fix update all titles

This commit is contained in:
CakesTwix 2024-09-23 21:36:24 +03:00
parent d0c45a6a62
commit 4cc6c79180
Signed by: CakesTwix
GPG key ID: 7B11051D5CE19825
7 changed files with 2 additions and 627 deletions

View file

@ -1,90 +0,0 @@
{% extends "base.html" %} {% block nav %}
<nav class="left drawer">
<header>
<nav>
<img src="https://www.beercss.com/favicon.png" class="circle">
<h6>Toloka2Web MD3</h6>
</nav>
</header>
<a href="/">
<i>home</i>
<div>Головна</div>
</a>
<a href="add">
<i>add</i>
<div>Додати</div>
</a>
<a href="settings">
<i>settings</i>
<div>Налаштування</div>
</a>
<div class="divider small-margin"></div>
<label>Інше</label>
<a class="active" href="about">
<i>person</i>
<div>Про застосунок</div>
</a>
<a href="help">
<i>help</i>
<div>Допомога</div>
</a>
</nav>
<nav class="left m">
<header>
<img src="https://www.beercss.com/favicon.png" class="circle">
</header>
<a>
<i>home</i>
<div>Home</div>
</a>
<a>
<i>search</i>
<div>Search</div>
</a>
<a>
<i>settings</i>
<div>Settings</div>
</a>
<a>
<i>more_vert</i>
<div>More</div>
</a>
</nav>
<nav class="bottom s">
<a>
<i>home</i>
</a>
<a>
<i>search</i>
</a>
<a>
<i>settings</i>
</a>
<a>
<i>more_vert</i>
</a>
</nav>
{% endblock %} {% block content %}
<div class="padding absolute center middle">
<article class="medium middle-align center-align">
<div>
<i class="extra">cloud</i>
<h5 class="primary-text">Toloka2Web v2</h5>
<p class="secondary-text">Зручний сайт для завантаження аніме до медіасерверу Jellyfin</p>
<div class="space"></div>
<nav class="center-align">
<a href="https://github.com"><i class="chip circle">code</i></a>
<a href="https://github.com"><i class="chip circle">bug_report</i></a>
<a href="https://mastodon.com"><i class="chip circle">diversity_3</i></a>
</nav>
</div>
</article>
</div>
{% endblock %}

View file

@ -1,202 +0,0 @@
{% extends "base.html" %} {% block nav %}
<nav class="left drawer min">
<header>
<nav>
<img src="https://www.beercss.com/favicon.png" class="circle">
<h6>Toloka2Web MD3</h6>
</nav>
</header>
<a href="/">
<i>home</i>
<div>Головна</div>
</a>
<a class="active" href="add">
<i>add</i>
<div>Додати</div>
</a>
<a href="settings">
<i>settings</i>
<div>Налаштування</div>
</a>
<div class="divider small-margin"></div>
<label>Інше</label>
<a href="about">
<i>person</i>
<div>Про застосунок</div>
</a>
<a href="help">
<i>help</i>
<div>Допомога</div>
</a>
</nav>
<nav class="left m">
<header>
<img src="https://www.beercss.com/favicon.png" class="circle">
</header>
<a>
<i>home</i>
<div>Home</div>
</a>
<a>
<i>search</i>
<div>Search</div>
</a>
<a>
<i>settings</i>
<div>Settings</div>
</a>
<a>
<i>more_vert</i>
<div>More</div>
</a>
</nav>
<nav class="bottom s">
<a>
<i>home</i>
</a>
<a>
<i>search</i>
</a>
<a>
<i>settings</i>
</a>
<a>
<i>more_vert</i>
</a>
</nav>
{% endblock %} {% block content %}
<p class="large-text">
<h6><i>add</i> Додати новий контент</h6>
</p>
<nav class="scroll">
<div class="center-align">
<button class="circle small" id="step_1"><i>search</i></button>
<div class="small-margin">Знайти торрент</div>
</div>
<hr class="max">
<div class="center-align">
<button class="circle small" id="step_2"><i>info</i></button>
<div class="small-margin">Метадані</div>
</div>
<hr class="max">
<div class="center-align">
<button class="circle small" disabled id="step_3"><i>add</i></button>
<div class="small-margin">Додати WIP</div>
</div>
</nav>
<form action="/add" id="search_form">
<div class="field large prefix round fill">
<i class="front">search</i>
<input id="search-box" name="query" type="text" placeholder="https://toloka.to/t680082">
</menu>
</div>
</form>
{% if torrent %}
<article id="torrent_card" class="no-padding">
<div class="grid large-space">
<div class="s12 m6 l3">
<img class="responsive" src={{torrent.img}}>
</div>
<div class="s9">
<div class="padding">
<h5 class="primary-text">{{torrent.name}}</h5>
<hr class="medium">
<div>
<a class="chip no-margin"><i>language_gb_english</i><span>{{torrent.size}}</span></a>
<a class="chip no-margin"><i>signature</i><span>{{torrent.author}}</span></a>
<a class="chip no-margin"><i>calendar_month</i><span>{{torrent.date}}</span></a>
<a class="chip no-margin"><i>star_rate</i><span>{{torrent.rating}}</span></a>
<a class="chip no-margin"><i>thumb_up</i><span>{{torrent.thanks}}</span></a>
</div>
<hr class="large">
{{torrent.description}}
<hr class="large">
<div>
<a class="green no-margin button" onclick="twoStage('{{torrent.url}}')">
<i>add</i>
<span>Додати</span>
</a>
</div>
</div>
</div>
</div>
</article>
<article class="center-align" style="display: none;" id="two_stage">
<form action="/add">
<div class="grid">
<div class="field label prefix border s6">
<i>folder</i>
<input type="text" name="dirname" value="{{torrent.files[0].folder_name}}">
<label>Назва директорії</label>
</div>
<div class="field label prefix border s6">
<i>numbers</i>
<select name="season-index">
{% for season in range(1, 10) %}
<option>{{season}}</option>
{% endfor %}
</select>
<label>Індекс сезону</label>
</div>
<div class="field label prefix border s6">
<i>numbers</i>
<select name="episode-index">
{% for option_index in range(episode_integers|length) %}
<option value="{{option_index + 1}}">{{episode_integers[option_index]}}</option>
{% endfor %}
</select>
<label>Індекс епізоду</label>
</div>
<div class="field label prefix border s6">
<i>route</i>
<input type="text" name="filepath" value="{{default_dir}}">
<label>Місце завантаження</label>
</div>
<input style="display: none;" type="text" name="toloka_url" value="{{torrent.url}}">
<div class="field label prefix border s6">
<i>numbers</i>
<input type="number" name="adjusted-episode-number" value="0">
<label>Скільки додати до епізоду</label>
</div>
<button class="border small-round s12" type="submit">
<i>add</i>
<span>Додати</span>
</button>
</div>
</form>
</article>
{% endif %}
<script>
function twoStage() {
document.getElementById("search_form").remove();
document.getElementById("torrent_card").remove();
document.getElementById("step_1").innerHTML = "<i>done</i>"
$("#two_stage").toggle();
}
</script>
{% endblock %}

View file

@ -1,44 +0,0 @@
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<meta name="google" content="notranslate">
<title>Toloka2Web</title>
<link href="https://cdn.jsdelivr.net/npm/beercss@3.6.13/dist/cdn/beer.min.css" rel="stylesheet">
<script type="module" src="https://cdn.jsdelivr.net/npm/beercss@3.6.13/dist/cdn/beer.min.js"></script>
<script type="module"
src="https://cdn.jsdelivr.net/npm/material-dynamic-colors@1.1.2/dist/cdn/material-dynamic-colors.min.js"></script>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-cookie/3.0.1/js.cookie.min.js"></script>
</head>
<body class="dark">
{% block nav %}{% endblock %}
<header class="surface-dim">
<nav>
<h5 class="max"></h5>
<a class="chip circle"><i>palette</i><input id="color-picker" type="color"></a>
<a class="chip circle" onclick="document.body.classList.toggle('dark');"><i>light_mode</i></a>
</nav>
</header>
<main class="responsive">
{% block content %}{% endblock %}
</main>
<script>
addEventListener("DOMContentLoaded", function startup() {
colorPicker = document.querySelector("#color-picker");
colorPicker.addEventListener("change", updateAll, false);
ui("theme", Cookies.get('my-color'));
})
function updateAll(event) {
ui("theme", event.target.value);
Cookies.set('my-color', event.target.value);
}
</script>
</body>
</html>

View file

@ -1,191 +0,0 @@
{% extends "base.html" %}
{% block nav %}
<nav class="left drawer">
<header>
<nav>
<img src="https://www.beercss.com/favicon.png" class="circle">
<h6>Toloka2Web MD3</h6>
</nav>
</header>
<a class="active" href="/">
<i>home</i>
<div>Головна</div>
</a>
<a href="add">
<i>add</i>
<div>Додати</div>
</a>
<a href="settings">
<i>settings</i>
<div>Налаштування</div>
</a>
<div class="divider small-margin"></div>
<label>Інше</label>
<a href="about">
<i>person</i>
<div>Про застосунок</div>
</a>
<a href="help">
<i>help</i>
<div>Допомога</div>
</a>
</nav>
<nav class="left m">
<header>
<img src="https://www.beercss.com/favicon.png" class="circle">
</header>
<a>
<i>home</i>
<div>Home</div>
</a>
<a>
<i>search</i>
<div>Search</div>
</a>
<a>
<i>settings</i>
<div>Settings</div>
</a>
<a>
<i>more_vert</i>
<div>More</div>
</a>
</nav>
<nav class="bottom s">
<a>
<i>home</i>
</a>
<a>
<i>search</i>
</a>
<a>
<i>settings</i>
</a>
<a>
<i>more_vert</i>
</a>
</nav>
{% endblock %}
{% block content %}
<p class="large-text">
<h6><i>hub</i> Торенти</h6>
</p>
<button class="round fill">
<span>Сортування</span>
<i>arrow_drop_down</i>
<menu>
<a href="search?query=&sort=name">За назвою</a>
<a href="search?query=&sort=date">За датою</a>
<a href="search?query=&sort=releasename">За релізером</a>
</menu>
</button>
<p class="large-text">
<h6><i>work</i> Дії</h6>
</p>
<a class="chip" onclick="updateByCodename('')">
<i id="update_all_icon">done_all</i>
<span>Оновити</span>
</a>
<form action="/">
<div class="field large prefix round fill">
<i class="front">search</i>
<input id="search-box" name="query" type="text">
</menu>
</div>
</form>
{%for item in titles%}
<article class="no-padding" id="{{item.codename}}">
<div class="grid">
<div class="s12 m6 l3">
<img class="responsive " src={{item.image}}>
</div>
<div class="s9">
<div class="padding">
<h5 class="primary-text">{{item.torrent_name}} ({{item.codename}})</h5>
<hr class="medium">
<div>
<a class="chip no-margin"><i>route</i><span>{{item.download_dir}}</span></a>
<a class="chip no-margin"><i>signature</i><span>{{item.release_group}}</span></a>
<a class="chip no-margin"><i>calendar_month</i><span>{{item.publish_date}}</span></a>
<a class="chip no-margin"><i>tag</i><span>{{item.hash}}</span></a>
</div>
<hr class="large">
<div>
<a class="chip primary-border no-margin" href="https://toloka.to/{{item.guid}}">
<i>link</i>
<span>Посилання</span>
</a>
<a class="chip green-border no-margin" onclick="updateByCodename('{{item.codename}}')">
<i>update</i>
<span>Оновити</span>
</a>
<a class="chip amber-border no-margin" onclick="editByCodename('{{item.codename}}')">
<i>edit</i>
<span>Редагувати</span>
</a>
<a class="chip red-border no-margin" onclick="deleteByCodename('{{item.codename}}')">
<i>delete</i>
<span>Видалити</span>
</a>
</div>
</div>
</div>
</div>
</article>
{%endfor%}
<dialog id="dialog">
<h5 class="primary-text" id="torrent_title">Інформація</h5>
<div id="torrent_info"></div>
<nav class="right-align no-space">
<button class="transparent link" onclick="document.querySelector('#dialog').close();">Ок</button>
</nav>
</dialog>
<script>
function deleteByCodename(codename) {
fetch(`/delete/${codename}`);
document.getElementById(codename).remove();
}
function editByCodename(codename) {
location.href = (`/edit/${codename}`);
}
function updateByCodename(codename) {
if (codename == "") {
$('#update_all_icon').html("update")
}
$.ajax({
url: `/update/${codename}`,
type: 'GET',
success: function (response) {
if (response.hasOwnProperty("error")) {
$('#torrent_title').html("Помилка")
$('#torrent_info').html(`${response.error}`)
document.querySelector('#dialog').showModal();
} else {
$('#update_all_icon').html("done_all")
var operation_html = ""
document.querySelector('#dialog').showModal();
for (var i = 0; i < response.operation_logs.length; i++) {
operation_html += `* ${response.operation_logs[i]}<br>`
}
$('#torrent_info').html(`${operation_html}`)
}
},
error: function (result) {
document.querySelector('#dialog').showModal();
}
});
}
</script>
{% endblock %}

View file

@ -1,98 +0,0 @@
{% extends "base.html" %} {% block nav %}
<nav class="left drawer">
<header>
<nav>
<img src="https://www.beercss.com/favicon.png" class="circle">
<h6>Toloka2Web MD3</h6>
</nav>
</header>
<a href="/">
<i>home</i>
<div>Головна</div>
</a>
<a href="add">
<i>add</i>
<div>Додати</div>
</a>
<a class="active" href="settings">
<i>settings</i>
<div>Налаштування</div>
</a>
<div class="divider small-margin"></div>
<label>Інше</label>
<a href="about">
<i>person</i>
<div>Про застосунок</div>
</a>
<a href="help">
<i>help</i>
<div>Допомога</div>
</a>
</nav>
<nav class="left m">
<header>
<img src="https://www.beercss.com/favicon.png" class="circle">
</header>
<a>
<i>home</i>
<div>Home</div>
</a>
<a>
<i>search</i>
<div>Search</div>
</a>
<a>
<i>settings</i>
<div>Settings</div>
</a>
<a>
<i>more_vert</i>
<div>More</div>
</a>
</nav>
<nav class="bottom s">
<a>
<i>home</i>
</a>
<a>
<i>search</i>
</a>
<a>
<i>settings</i>
</a>
<a>
<i>more_vert</i>
</a>
</nav>
{% endblock %} {% block content %}
<p class="large-text">
<h6><i>settings</i> Налаштування WIP</h6>
</p>
<div class="large-space"></div>
<article class="primary-text">
<a class="row wave"><i>person</i> Обліковий запис Tokoka.to</a>
<hr>
<a class="row wave"><i>hub</i> BitTorrent</a>
<hr>
<a class="row wave"><i>comic_bubble</i> Аніме</a>
<hr>
<a class="row wave"><i>bug_report</i> Дебагінг</a>
</article>
<article class="secondary-text">
<a class="row wave"><i>title</i> Toloka2Web v2</a>
<hr>
<a class="row wave"><i>conversion_path</i> v0.0.1</a>
</article>
{% endblock %}

View file

@ -9,7 +9,7 @@
</form> </form>
<nav> <nav>
<a class="chip" onclick="updateByCodename('')"> <a class="chip" @click="updateByCodename('')">
<i id="update_all_icon">done_all</i> <i id="update_all_icon">done_all</i>
<span>Завантажити нові серії</span> <span>Завантажити нові серії</span>
</a> </a>

View file

@ -20,7 +20,7 @@
<article class="secondary-text"> <article class="secondary-text">
<a class="row wave"><i>title</i> Toloka2Web v2 Vue Version</a> <a class="row wave"><i>title</i> Toloka2Web v2 Vue Version</a>
<hr> <hr>
<a class="row wave"><i>conversion_path</i> v1.0.0</a> <a class="row wave"><i>conversion_path</i> v1.0.1</a>
</article> </article>
</template> </template>