wrolpi/app/src/api.js

541 lines
16 KiB
JavaScript
Raw Normal View History

import {API_URI, ARCHIVES_API, DEFAULT_LIMIT, OTP_API, secondsToDateTime, VIDEOS_API} from "./components/Common";
import {toast} from 'react-semantic-toasts';
function timeoutPromise(ms, promise) {
// Create a timeout wrapper around a promise. If the timeout is reached, throw an error. Otherwise, return
// the results of the promise.
return new Promise((resolve, reject) => {
const timeoutId = setTimeout(() => {
reject(new Error("promise timeout"))
}, ms);
promise.then(
(res) => {
clearTimeout(timeoutId);
resolve(res);
},
(err) => {
clearTimeout(timeoutId);
reject(err);
}
);
})
}
async function apiCall(url, method, body, ms = 10000) {
let init = {method};
if (body !== undefined) {
init.body = JSON.stringify(body);
}
// Create a fetch promise, this will be awaited by the timeout.
let promise = fetch(url, init);
try {
// await the response or error.
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
let response = await timeoutPromise(ms, promise);
if (200 <= response.status < 300) {
// Request was successful.
return response;
}
// Request encountered an error.
let copy = response.clone();
let code = (await copy.json())['code'];
if (response.status === 403 && code === 17) {
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
toast({
type: 'error',
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
title: 'WROL Mode is enabled!',
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
description: 'This functionality is not enabled while WROL Mode is enabled!',
time: 5000,
});
}
return response;
} catch (e) {
// Timeout, or some other exception.
if (e.message === 'promise timeout') {
toast({
type: 'error',
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
title: 'Server failed to respond!',
description: 'Timeout while waiting for server response. See server logs.',
time: 5000,
});
} else {
toast({
type: 'error',
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
title: 'Error!',
description: 'See client logs',
time: 5000,
});
}
throw e;
}
}
// Convenience functions for API calls.
let apiGet = async (url) => {
return await apiCall(url, 'GET')
};
let apiDelete = async (url) => {
return await apiCall(url, 'DELETE')
};
let apiPost = async (url, body) => {
return await apiCall(url, 'POST', body)
};
let apiPut = async (url, body) => {
return await apiCall(url, 'PUT', body)
};
let apiPatch = async (url, body) => {
return await apiCall(url, 'PATCH', body)
};
export async function updateChannel(link, channel) {
return await apiPut(`${VIDEOS_API}/channels/${link}`, channel);
}
export async function createChannel(channel) {
return await apiPost(`${VIDEOS_API}/channels`, channel);
}
export async function deleteChannel(channel_link) {
return apiDelete(`${VIDEOS_API}/channels/${channel_link}`);
}
export async function getChannels() {
let response = await apiGet(`${VIDEOS_API}/channels`);
return (await response.json())['channels'];
}
export async function getChannel(link) {
let response = await apiGet(`${VIDEOS_API}/channels/${link}`);
return (await response.json())['channel'];
}
export async function searchVideos(offset, limit, channel_link, searchStr, order_by, filters) {
// Build a search query to retrieve a list of videos from the API
offset = offset || 0;
limit = limit || DEFAULT_LIMIT;
let body = {offset, limit, filters};
if (searchStr) {
body.search_str = searchStr;
}
if (channel_link) {
body.channel_link = channel_link;
}
body.order_by = order_by ? order_by : 'rank'
let response = await apiPost(`${VIDEOS_API}/search`, body);
if (response.status === 200) {
let data = await response.json();
return [data['videos'], data['totals']['videos']];
} else {
throw Error(`Unable to search videos`);
}
}
export async function getVideo(video_id) {
let response = await apiGet(`${VIDEOS_API}/video/${video_id}`);
let data = await response.json();
return [data['video'], data['prev'], data['next']];
}
export async function deleteVideo(video_id) {
let response = await apiDelete(`${VIDEOS_API}/video/${video_id}`);
if (response.status !== 204) {
toast({
type: 'error',
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
title: 'Unexpected server response',
description: 'Failed to delete video. See server logs.',
time: 5000,
});
}
}
export async function getDirectories(search_str) {
let form_data = {'search_str': search_str || null};
let response = await apiPost(`${VIDEOS_API}/directories`, form_data);
if (response.status === 200) {
return (await response.json())['directories'];
}
return [];
}
export async function getConfig() {
let response = await apiGet(`${API_URI}/settings`);
let data = await response.json();
return data['config'];
}
export async function saveConfig(config) {
return await apiPatch(`${API_URI}/settings`, config);
}
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
export async function getDownloads() {
let response = await apiGet(`${API_URI}/download`);
let data = await response.json();
return data;
}
export async function validateRegex(regex) {
let response = await apiPost(`${API_URI}/valid_regex`, {regex});
return (await response.json())['valid'];
}
export async function favoriteVideo(video_id, favorite) {
let body = {favorite: favorite, video_id};
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
let response = await apiPost(`${VIDEOS_API}/favorite`, body);
return (await response.json())['favorite'];
}
export async function getStatistics() {
let response = await apiGet(`${VIDEOS_API}/statistics`);
return (await response.json())['statistics'];
}
export async function refresh() {
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
let response = await apiPost(`${VIDEOS_API}/refresh`);
return await response.json();
}
export async function download() {
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
let response = await apiPost(`${VIDEOS_API}/download`);
return await response.json();
}
export async function downloadChannel(link) {
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
let url = `${VIDEOS_API}/download/${link}`;
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
let response = await apiPost(url);
let json = await response.json();
if (response.status === 400 && json['code'] === 30) {
toast({
type: 'error',
title: 'Cannot Download!',
description: 'This channel does not have a download record. Create one!',
time: 5000,
});
}
}
export async function refreshChannel(link) {
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
let url = `${VIDEOS_API}/refresh/${link}`;
await fetch(url, {method: 'POST'});
}
export async function encryptOTP(otp, plaintext) {
let body = {otp, plaintext};
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
let response = await apiPost(`${OTP_API}/encrypt_otp`, body);
if (response.status !== 200) {
toast({
type: 'error',
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
title: 'Error!',
description: 'Failed to encrypt OTP',
time: 5000,
});
return;
}
return await response.json();
}
export async function decryptOTP(otp, ciphertext) {
let body = {otp, ciphertext};
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
let response = await apiPost(`${OTP_API}/decrypt_otp`, body);
if (response.status !== 200) {
toast({
type: 'error',
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
title: 'Error!',
description: 'Failed to decrypt OTP',
time: 5000,
});
return;
}
return await response.json();
}
export async function getCategories() {
let response = await apiGet(`${API_URI}/inventory/categories`);
return (await response.json())['categories'];
}
export async function getBrands() {
let response = await apiGet(`${API_URI}/inventory/brands`);
return (await response.json())['brands'];
}
export async function getInventories() {
let response = await apiGet(`${API_URI}/inventory`);
return (await response.json())['inventories'];
}
export async function getInventory(inventoryId) {
let response = await apiGet(`${API_URI}/inventory/${inventoryId}`);
return await response.json();
}
export async function saveInventory(inventory) {
return await apiPost(`${API_URI}/inventory`, inventory);
}
export async function updateInventory(inventoryId, inventory) {
delete inventory['id'];
return await apiPut(`${API_URI}/inventory/${inventoryId}`, inventory);
}
export async function deleteInventory(inventoryId) {
return await apiDelete(`${API_URI}/inventory/${inventoryId}`);
}
export async function getItems(inventoryId) {
let response = await apiGet(`${API_URI}/inventory/${inventoryId}/item`);
return await response.json();
}
export async function saveItem(inventoryId, item) {
return await apiPost(`${API_URI}/inventory/${inventoryId}/item`, item);
}
export async function updateItem(itemId, item) {
return await apiPut(`${API_URI}/inventory/item/${itemId}`, item);
}
export async function deleteItems(itemIds) {
let i = itemIds.join(',');
await apiDelete(`${API_URI}/inventory/item/${i}`);
}
2021-12-31 22:35:23 -07:00
export async function deleteArchive(archive_id) {
return await apiDelete(`${API_URI}/archive/${archive_id}`);
}
export async function searchArchives(offset, limit, domain = null, searchStr = null) {
// Build a search query to retrieve a list of videos from the API
offset = parseInt(offset || 0);
limit = parseInt(limit || DEFAULT_LIMIT);
let body = {offset, limit};
if (domain) {
body['domain'] = domain;
}
if (searchStr) {
body['search_str'] = searchStr;
}
let response = await apiPost(`${ARCHIVES_API}/search`, body);
if (response.status === 200) {
let data = await response.json();
2021-12-31 22:35:23 -07:00
return [data['archives'], data['totals']['archives']];
} else {
toast({
type: 'error',
title: 'Unable to search archives',
description: 'Cannot search archives. See server logs.',
time: 5000,
});
}
}
export async function refreshArchives() {
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
return await apiPost(`${ARCHIVES_API}/refresh`);
}
export async function fetchDomains() {
let response = await apiGet(`${ARCHIVES_API}/domains`);
if (response.status === 200) {
let data = await response.json();
return [data['domains'], data['totals']['domains']];
} else {
toast({
type: 'error',
title: 'Domains Error',
description: 'Unable to fetch Domains. See server logs.',
time: 5000,
});
}
}
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
export async function postDownload(urls, downloader) {
let body = {urls: urls, downloader: downloader};
Arbitrary videos can be downloaded. (#63) * Squashed commit of the following: commit c527475fcb4d4906457be5c10f0e9c6dee7fedc1 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:16:36 2021 -0700 Only saving a favorite video to the config if it has a source_id. commit ae8b712ebeaef467b8d5a5b87ca0f4f276373a0d Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:14:26 2021 -0700 Ading description and changing Save button to Download. commit 03a72be6dfdfa383915950a80e3f1ee9febf6705 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:09:44 2021 -0700 Removing uploader for now. commit 5d0231284bf84e459687f6ab903b06bf4e3762bd Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:07:17 2021 -0700 Removing unique data from example info. commit 9cc721a32d4715d9d6433e51db3b35e039c78d68 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 22:02:33 2021 -0700 Updating downloader tests. commit 8e193b03349ae4613f105418cd3e8176c7101304 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:53:31 2021 -0700 Toasting error when WROL Mode is enabled. Disabling new downloads during WROL Mode. commit 48c4311c31db8f2d2c8dd0a65f979a5f0a49a911 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:45:06 2021 -0700 Raising error if download exits without a 0. Clearing kill event when starting a new download. commit 54ba3a890d59facc837410d34bf7afb40db3b685 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 14 21:16:46 2021 -0700 Downloads can be restarted and killed. commit bd60751262247259c3e9ceb5116e017d6314c219 Author: Roland <roland@learningselfreliance.com> Date: Mon Dec 13 16:28:18 2021 -0700 Downloads can be started again. Downloads are sorted on Downloads page. commit ea7f39231b92982ae0b263b76c5bd1902cc8169d Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 21:24:16 2021 -0700 Building Downloads tab. commit d3321872ac3743ff6df781b07ef0fb537f1d4c98 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 20:41:46 2021 -0700 Not scheduling channels withtout a URL/frequency. commit 84f268a0d4f58c85f86b6377900492e0766f6619 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 19:56:08 2021 -0700 Channel downloads will be spread out when each channel is created. commit 26fa6beea38ef3f8d6b7bf218f18222a51a87a60 Author: Roland <roland@learningselfreliance.com> Date: Sat Dec 11 13:08:11 2021 -0700 Recurring downloads are renewed on startup. commit fc2ab850533f1c3ad073f4692c7dea2be43e85d6 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 17:03:57 2021 -0700 Fetching download again after do_download. commit fdadad327fc09c17a49eb63b11e632fb72cc3195 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 16:20:51 2021 -0700 Fixing error with test. Mock was not being reset. commit 070dee238e53377acd22097c63cf3794e68ed423 Author: Roland <roland@learningselfreliance.com> Date: Fri Dec 10 15:36:39 2021 -0700 Fixed bug in date handling (big surprise). commit e53a8992268d68620c679455adaec3a590f20602 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 16:48:36 2021 -0700 Using chunks for regular channel refresh. commit 3bd60c58d1bef0226325f321978c0434b36b3be5 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:22:02 2021 -0700 Reformatting. commit 4fdc325f25a32c311ca6543fe321624b2bd564b2 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 15:13:34 2021 -0700 Creating function that refreshes NO CHANNEL videos. commit d67feafb6c2994f5a4a1295920a70db369cc6816 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:35:54 2021 -0700 Removing unused functions. commit 6b3918e4e78fbac64920f85c4de0df873ec366a1 Author: Roland <roland@learningselfreliance.com> Date: Wed Dec 1 14:31:48 2021 -0700 Removing reporter and events. This will be replaced in the future with some sort of SSE. commit 54fa1b0f5e93ca25c80b780dcdc3876b700273b1 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:55:43 2021 -0700 Better error handling for archive button. commit c31d124e511b27f626ed2df71486d47302b396f3 Author: Roland <roland@learningselfreliance.com> Date: Sun Nov 28 17:29:43 2021 -0700 Displaying View Count in a human readable format. commit 0ee2bd65588fd93b475cad6144e76f1b45191b39 Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 09:29:41 2021 -0700 Fixing tests. commit e64aff32bab95c311ea3747e1a21b58b99750d5e Author: Roland <roland@learningselfreliance.com> Date: Sat Nov 27 08:59:51 2021 -0700 Handling when a Video has no Channel in UI. commit b9549ecd5aac03c002adca7b7667f0a7189b662a Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 26 08:35:36 2021 -0700 Downloaders can raise UnrecoverableDownloadError to signal a downlaod should not be retried. commit da88798e2584d3e84900a70e34166c8c208c64fb Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 20:40:29 2021 -0700 Downloaders can refuse a download, which will then be deleted. commit b865d856121db5ec8a3660c5d3c13b9846fde688 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:35:43 2021 -0700 Removing relative path handling. commit 6d7757870b02ba030d78b3ef7e43f28b906eea61 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 19:28:27 2021 -0700 Using __json__ for Video and Channel models. commit 649e4d6a61608272759d1e7ee02b490bb5c20b3e Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 18:23:38 2021 -0700 Fixing video links in UI. commit 9d081af12742070b8519bd752812130cb5dbe393 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:42:38 2021 -0700 Fixing docs. commit 1202cbe0f9ae744d7801b53a5071cded8ea39924 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:40:36 2021 -0700 Fixing wrolpi tests. commit 3f6af8cc1123f2f63a3fc0f21ec4d994c642cf13 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 24 14:13:35 2021 -0700 Fixing tests to use MediaPath. commit faec04f2a5e4c267a502c03884940a9c5bcfe387 Author: Roland <roland@learningselfreliance.com> Date: Fri Nov 19 10:21:20 2021 -0700 Testing when a video has no channel. commit cbf22aad7a0b72e61685e0236e843554b57c4af1 Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 16:24:03 2021 -0700 Using MediaPath for Video and Channel models. Testing VideoDownloader.do_download. commit 7916ed61e43439e6cd60f23ce3fdf6c1a75bf02d Author: Roland <roland@learningselfreliance.com> Date: Thu Nov 18 12:43:44 2021 -0700 Channels/Videos downloaders can get gotten. commit 808ef796cec01db6e7009065f9e26d25d9500ce2 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 21:45:19 2021 -0700 Upgrading to Sanic 21.9.1. commit ea32813be28e78393ac456ee782a7245c098188f Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 20:29:01 2021 -0700 Creating Downloader and DownloaderManager classes which handle downloading URLs. commit e859a77a77277ddf8b6e221ec9c9383c8ab91d66 Author: Roland <roland@learningselfreliance.com> Date: Wed Nov 17 12:41:39 2021 -0700 Creating UI segement which allows the download/upload of media. * Displaying all recurring downloads. * Not downloading channels with empty url. * Showing positive row for recurring downloads. * Removing default last_successful_download. * Only displaying Last Successful Download when there is one. * Refreshing videos before finding missing videos. * Using short video path name for log. * Removing download history feature in favor of new Downloads page. * Only showing info date if it exists. * Making get_or_create_channel more reliable. * Allowing null for channel download frequency. * Logging when searching for channel. * Storing channel's source_id in config. * Importing using link instead of name. * Getting channel id when importing channels. * Removing redunant parentheses from repr. * Preserving database channel values if there are not values in the config. * Only highlighting pending downloads. * Deleting old downloads periodically. * Sorting recurring by next_download/frequency. * Creating fixtures for channels, media directory and db session. * Removing unused function. Wrapping config for tests. * Deleting channel download when deleting a channel. * Testing that a channel's download is deleted when the channel is deleted. * Updating youtube-dl * Switching from youtube-dl in favor of yt-dlp. * Sorting once-downlaods by last_successful_download then id. * Adding special handling to video_url_resolver for full urls. * Consolidating downloader methods and functions. Reversing once-download sort order so the most recently downloaded are at the top. * Getting session if one is not provided. * Adding test for create_downloads. * Not passing format option when getting filename. * Linting Signed-off-by: Roland <roland@learningselfreliance.com>
2021-12-20 16:08:13 -07:00
let response = await apiPost(`${API_URI}/download`, body);
return response;
}
export async function killDownload(download_id) {
let response = await apiPost(`${API_URI}/download/${download_id}/kill`);
return response;
}
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
export async function killDownloads() {
let response = await apiPost(`${API_URI}/download/kill`);
console.log('killDownloads', response);
return response;
}
export async function startDownloads() {
let response = await apiPost(`${API_URI}/download/enable`);
console.log('startDownloads', response);
return response;
}
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
export async function getDownloaders() {
try {
let response = await apiGet(`${API_URI}/downloaders`);
return await response.json();
} catch (e) {
console.log('getDownloaders', e);
return {};
}
Squashed commit of the following: commit 1663e1be9e1a9b82521be9ae257e0b91bfdd3199 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:37:25 2021 -0700 Setting downloader to video when a channel schedules it's videos for download. commit a6811f9e87b0754cc7c1dd197ae300f197620bbb Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:33:27 2021 -0700 Setting channel downloader when spreading channel downloads. commit b63c8f132aa00705c1a46dc04c51a4889fcd7ec7 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:28:53 2021 -0700 Fixing DownloadManager.kill commit 120ce7cd2cff981d2af7e8d33d139be9e2b50e13 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:10:12 2021 -0700 Fixing OTP api urls. commit d3b985241b0851c926feafb1b875ab6203057bf2 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:07:48 2021 -0700 Channel Cancel button does not submit form. commit 9d1a0ecd55f08a4bf255030045c1307c3d716157 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 19:00:53 2021 -0700 A Channel without an existing Download cannot be downloaded. commit e7c920f3825a0f12f5475f01ce11632665cdb3f6 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:41:02 2021 -0700 Fixing typing. commit d56c8fde249e94f858214c16197da1b8a0919422 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:36:02 2021 -0700 Testing bad downloader param. commit e3c57ef674ecdf3bd39df4fe341e516ba0edab92 Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:31:35 2021 -0700 Adding __json__ to Downloader for sending them to the FE. Hiding ChannelDownloader because it will be handled specifically. commit 047b50711919b6aa2d4a7fe8e25a963e60d4ee3a Author: Roland <roland@learningselfreliance.com> Date: Thu Dec 30 18:20:37 2021 -0700 Downloader can be specified by the user. commit 4a169ba43cfd75edf0db0d89f78ec1bf4c4dfe3a Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:37:30 2021 -0700 Download info a set in create_downloads. commit 8778d53fa1063faffba8e2ba505cd9f0de7be20e Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:21:43 2021 -0700 Fixing Download.info_json name. commit b28bacfd5be6b0df82944b246db7248cc4e3c405 Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:17:53 2021 -0700 Downloader names are in the class, not in the init. commit f5ce952da01540a856eb5a0b084496da5c9279cf Author: Roland <roland@learningselfreliance.com> Date: Tue Dec 28 18:07:42 2021 -0700 Download info can be saved during the download process and can be used by the Downloader.
2021-12-30 20:45:11 -07:00
}
Squashed commit of the following: commit 54d06bf8045fceaa2684348d110792e6833b170c Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:46:14 2022 -0700 Can't delete files when WROL Mode is enabled. commit 2d91f1983aae47bdb3f6dc7fc2bd2ae642c1126a Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:37:42 2022 -0700 Fixing bug where files could not be deleted in series. commit eed818c50682b19de9f18da2d4daedc54408cc49 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:26:31 2022 -0700 Fixing fake_now to reset now() when complete. commit 183e98cbec25784720ebaeabfac8af4a3fc87da8 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:08:14 2022 -0700 Files can be deleted and downloaded. commit c5bcd25a3da041f42b9e11eae804aa359ab9e985 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 14:41:07 2022 -0700 Files can be deleted or downloaded. commit 690b332bb4f89aa4e97ce2590b35bd4a71fefd87 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 14:11:05 2022 -0700 File is opened in new tab when file is selected. commit ba8ead6f3185d0a398c4f89cecb5958f5e7731a3 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 13:32:32 2022 -0700 Removing files sort because React FE sorts them itself. commit 4e04753234b11d615c5992bc08e9dd9fb7226c05 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 13:29:52 2022 -0700 Duplicate directories are ignored. commit c2f7d7929f37655e5c2d11767a512571263b35ef Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 12:22:38 2022 -0700 Multiple directories can be requested. commit 31678139c0799d0034d564cc1f8ae448234df90c Author: Roland <roland@learningselfreliance.com> Date: Fri Jan 28 17:21:33 2022 -0700 Files are displayed with the correct modified time. Files can be recursively viewed. commit a2d10a1dd792e518c8c6ad8f699b5d416c3d07e4 Author: Roland <roland@learningselfreliance.com> Date: Thu Jan 27 22:37:19 2022 -0700 Files can be viewed. Folders display their children.
2022-01-29 16:50:22 -07:00
const replaceFileDatetimes = (files) => {
for (let i = 0; i < files.length; i++) {
let file = files[i]['modified'];
if (file['modified']) {
files[i]['modified'] = secondsToDateTime(file['modified']);
}
}
return files;
}
2022-02-01 14:11:14 -07:00
export async function filesSearch(offset, limit, searchStr) {
const body = {search_str: searchStr, offset: parseInt(offset), limit: parseInt(limit)};
const response = await apiPost(`${API_URI}/files/search`, body);
if (response.status === 200) {
let data = await response.json();
let [files, total] = [data['files'], data['totals']['files']];
files = replaceFileDatetimes(files);
return [files, total];
} else {
toast({
type: 'error',
title: 'Unable to search files',
description: 'Cannot search files. See server logs.',
time: 5000,
});
}
2022-02-01 14:11:14 -07:00
}
export async function refreshFiles() {
return await apiPost(`${API_URI}/files/refresh`);
}
Squashed commit of the following: commit 54d06bf8045fceaa2684348d110792e6833b170c Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:46:14 2022 -0700 Can't delete files when WROL Mode is enabled. commit 2d91f1983aae47bdb3f6dc7fc2bd2ae642c1126a Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:37:42 2022 -0700 Fixing bug where files could not be deleted in series. commit eed818c50682b19de9f18da2d4daedc54408cc49 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:26:31 2022 -0700 Fixing fake_now to reset now() when complete. commit 183e98cbec25784720ebaeabfac8af4a3fc87da8 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:08:14 2022 -0700 Files can be deleted and downloaded. commit c5bcd25a3da041f42b9e11eae804aa359ab9e985 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 14:41:07 2022 -0700 Files can be deleted or downloaded. commit 690b332bb4f89aa4e97ce2590b35bd4a71fefd87 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 14:11:05 2022 -0700 File is opened in new tab when file is selected. commit ba8ead6f3185d0a398c4f89cecb5958f5e7731a3 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 13:32:32 2022 -0700 Removing files sort because React FE sorts them itself. commit 4e04753234b11d615c5992bc08e9dd9fb7226c05 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 13:29:52 2022 -0700 Duplicate directories are ignored. commit c2f7d7929f37655e5c2d11767a512571263b35ef Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 12:22:38 2022 -0700 Multiple directories can be requested. commit 31678139c0799d0034d564cc1f8ae448234df90c Author: Roland <roland@learningselfreliance.com> Date: Fri Jan 28 17:21:33 2022 -0700 Files are displayed with the correct modified time. Files can be recursively viewed. commit a2d10a1dd792e518c8c6ad8f699b5d416c3d07e4 Author: Roland <roland@learningselfreliance.com> Date: Thu Jan 27 22:37:19 2022 -0700 Files can be viewed. Folders display their children.
2022-01-29 16:50:22 -07:00
export async function getFiles(directories) {
let body = {directories: directories || []};
let response = await apiPost(`${API_URI}/files`, body);
let {files} = await response.json();
files = replaceFileDatetimes(files);
return files;
Squashed commit of the following: commit 54d06bf8045fceaa2684348d110792e6833b170c Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:46:14 2022 -0700 Can't delete files when WROL Mode is enabled. commit 2d91f1983aae47bdb3f6dc7fc2bd2ae642c1126a Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:37:42 2022 -0700 Fixing bug where files could not be deleted in series. commit eed818c50682b19de9f18da2d4daedc54408cc49 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:26:31 2022 -0700 Fixing fake_now to reset now() when complete. commit 183e98cbec25784720ebaeabfac8af4a3fc87da8 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 16:08:14 2022 -0700 Files can be deleted and downloaded. commit c5bcd25a3da041f42b9e11eae804aa359ab9e985 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 14:41:07 2022 -0700 Files can be deleted or downloaded. commit 690b332bb4f89aa4e97ce2590b35bd4a71fefd87 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 14:11:05 2022 -0700 File is opened in new tab when file is selected. commit ba8ead6f3185d0a398c4f89cecb5958f5e7731a3 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 13:32:32 2022 -0700 Removing files sort because React FE sorts them itself. commit 4e04753234b11d615c5992bc08e9dd9fb7226c05 Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 13:29:52 2022 -0700 Duplicate directories are ignored. commit c2f7d7929f37655e5c2d11767a512571263b35ef Author: Roland <roland@learningselfreliance.com> Date: Sat Jan 29 12:22:38 2022 -0700 Multiple directories can be requested. commit 31678139c0799d0034d564cc1f8ae448234df90c Author: Roland <roland@learningselfreliance.com> Date: Fri Jan 28 17:21:33 2022 -0700 Files are displayed with the correct modified time. Files can be recursively viewed. commit a2d10a1dd792e518c8c6ad8f699b5d416c3d07e4 Author: Roland <roland@learningselfreliance.com> Date: Thu Jan 27 22:37:19 2022 -0700 Files can be viewed. Folders display their children.
2022-01-29 16:50:22 -07:00
}
export async function deleteFile(file) {
let body = {file: file};
await apiPost(`${API_URI}/files/delete`, body);
}
2022-01-30 16:59:26 -07:00
export async function getVersion() {
let response = await apiGet(`${API_URI}/settings`);
let data = await response.json();
return data['version'];
}
export async function getHotspotStatus() {
let response = await apiGet(`${API_URI}/hotspot`);
if (response.status === 200) {
let {status} = await response.json();
return status;
} else {
let code = (await response.json())['code'];
if (response.status === 400 && code === 34) {
// Must not be running on a RPi. Don't warn the user.
return null;
} else {
toast({
type: 'error',
title: "Can't get Hotspot status",
description: 'Failed to get Hotspot status. Check client and server logs.',
time: 5000,
});
}
}
return null;
}
export async function setHotspot(on) {
let response;
if (on) {
response = await apiPost(`${API_URI}/hotspot/on`);
} else {
response = await apiPost(`${API_URI}/hotspot/off`);
}
if (response.status === 204) {
return null;
} else {
let code = (await response.json())['code'];
if (code === 34) {
toast({
type: 'error',
title: 'Unsupported!',
description: 'Hotspot is only supported on a Raspberry Pi!',
time: 5000,
});
} else {
toast({
type: 'error',
title: 'Error!',
description: 'Could not modify hotspot. See server logs.',
time: 5000,
});
}
}
}
2022-02-07 13:37:58 -07:00
export async function getThrottleStatus() {
let response = await apiGet(`${API_URI}/throttle`);
if (response.status === 200) {
let {status} = await response.json();
return status;
} else {
let code = (await response.json())['code'];
if (response.status === 400 && code === 34) {
// Must not be running on a RPi. Don't warn the user.
return null;
} else {
toast({
type: 'error',
title: "Can't get throttle status",
description: 'Failed to get CPU Throttle status. Check client and server logs.',
time: 5000,
});
}
}
return null;
}
export async function setThrottle(on) {
let response;
if (on) {
response = await apiPost(`${API_URI}/throttle/on`);
} else {
response = await apiPost(`${API_URI}/throttle/off`);
}
if (response.status === 204) {
return null;
} else {
let code = (await response.json())['code'];
if (code === 34) {
toast({
type: 'error',
title: 'Unsupported!',
description: 'Throttle is only supported on a Raspberry Pi!',
time: 5000,
});
} else {
toast({
type: 'error',
title: 'Error!',
description: 'Could not modify throttle. See server logs.',
time: 5000,
});
}
}
}