Commit graph

85 commits

Author SHA1 Message Date
Roland
c79e28ff02
Upgrading base packages. Fixing failing test from merge. 2022-01-31 21:45:46 -07:00
Roland
c277a75a1a
Video tests pass with updated Sanic. 2022-01-31 21:30:07 -07:00
Roland
b1ed453466
Upgrading Sanic. Updating tests and schemas. 2022-01-31 21:30:07 -07:00
Roland
d17ad50d56
Archive tabs are handled by TabRouter. 2022-01-29 21:24:39 -07:00
Roland
dc888c6392
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
Roland
83b9e3fc8f
Adding more video name parse tests. Using limiting match. 2022-01-27 21:09:22 -07:00
Roland
30b235a04e
Using greedy regex match on source_id. 2022-01-27 21:06:30 -07:00
Roland
8b0196ede3
Using new methods in download_channel. 2022-01-27 20:47:52 -07:00
Roland
8e47d2a9a0
Removing spread_channel_downloads function in favor of DownloadManager managing next_download. 2022-01-27 20:36:34 -07:00
Roland
b0465cb7f2
Restoring pytest fixture so PyCharm can find fixtures. 2022-01-26 17:15:35 -07:00
Roland
3dda813b9e
Download.next_download is assigned by the DownloadManager. 2022-01-26 17:10:18 -07:00
Roland
93204a0b2a
Displaying captions on video page. 2022-01-25 10:16:29 -07:00
Roland
0315def174
Videos can be sorted by their modification date. 2022-01-25 08:51:55 -07:00
Roland
f305d7912f
channel may be None. 2022-01-16 13:37:44 -07:00
Roland
6f58a2b563
Chrome attempts to screenshot in the current directory, but if the current directory is not a real user directory, the screenshot fail.s 2022-01-16 13:35:18 -07:00
Roland
1d9fe2f649
Setting channel id rather than channel because the channel may be in a different session. 2022-01-16 10:27:24 -07:00
Roland
89e3edb157
Creating functions to unify finding/making video directories. 2022-01-16 10:17:06 -07:00
Roland
a70e049823
Creating channel directory if it does not exist. 2022-01-16 09:28:22 -07:00
Roland
ca96bce6b7
Finding yt-dlp bin on startup. 2022-01-15 20:07:38 -07:00
Roland
e0b5966717
Creating videos and archives directory when they don't exist. 2022-01-15 19:58:38 -07:00
Roland
474e68cc3d
Fixing a few bugs in preparation for sneak peek. 2022-01-15 18:05:51 -07:00
Roland
fa0ccedd8b
Fetching next_download for each channel. 2022-01-15 13:52:43 -07:00
Roland
4f770bd215
Not counting empty videos in Channel statistics. 2022-01-15 13:31:53 -07:00
Roland
4a2fb577da
Creating channel directory if requested. 2022-01-15 13:23:57 -07:00
Roland
7d23a914e6
Info_json may not yet be a MediaPath. 2022-01-14 16:13:17 -07:00
Roland
f9a1f736ca
Not adding video when it was already in the session. 2022-01-14 16:11:14 -07:00
Roland
8b9d44df5c
Using str to check if video file is relative to channel directory. 2022-01-14 16:06:23 -07:00
lrnselfreliance
86893ef7f1
Feature/video validate (#74)
* Videos are marked as validated so they will not be tried again.  All previous bulk methods are combined into one.

* Passing json to fixture factory to avoid writing the files in every test.

* Adding log to explain if refresh is slow.

* Generating video poster if one cannot be found.

* Generating video poster if no poster can be found.

* Videos without a video file (yet to be downloaded) are not validated.

* Video title is extracted from the video file name as a last resort.

* Keeping existing view count because it may be from the channel, which will be more recent.

* Downloads should only be downloaded after they are due, not the same day.

* Setting manager on new downloads.

* Checking if downloading is disabled in loop.

* Adding log when refresh is complete.

* Not generating posters by default.  This is to avoid deleting files.

* Not converting posters unless channel has that enabled.

* Not logging on valid because all posters will be checked.

* Validating videos in upsert.

* Using video name parser in upsert.

* Using validate_video in upsert so that data is only read once from disk.

* Attaching manager in download_manager.get_download.

* Adding 22 to preferred video format for odd 720p resolution.

Signed-off-by: Roland <roland@learningselfreliance.com>
2022-01-14 15:54:51 -07:00
Roland
f21dfa4195
Deferring large video columns from select. 2022-01-11 08:56:27 -07:00
Roland
8f48e1b0d2
Commiting using channel session. 2022-01-07 14:46:03 -07:00
Roland
a96d6f97f3
A Channel must be refreshed before download. 2022-01-07 14:41:28 -07:00
Roland
b9606c1b31
Adding check to ensure that tests are running in test db. 2022-01-07 13:59:43 -07:00
Roland
512fb532d8
Revert "Raising error if channel directory does not exist."
This reverts commit 90e7d682fa.
2022-01-07 13:33:47 -07:00
Roland
1d69e5417a
Making calling optional_session optional. 2022-01-07 10:33:52 -07:00
Roland
90e7d682fa
Raising error if channel directory does not exist. 2022-01-06 19:53:29 -07:00
Roland
30affa20cd
Using archive request when testing. 2022-01-06 14:20:21 -07:00
Roland
2447ced632
Enabling downloads. 2022-01-06 13:56:49 -07:00
lrnselfreliance
6e55e7360b
Feature/raspberry pi archive (#72)
* Converting OTP PDF generation to Latex to avoid installing wkhtmltopdf.

* Creating temporary_directory_path to simplify creating a TemporaryDirectory of type Path.

* Removing author

* Linting

* Installing texlive-latex-extra for more readable font.

* Raspberry pi has to archive locally.

Signed-off-by: Roland <roland@learningselfreliance.com>
2022-01-06 13:56:19 -07:00
Roland
9091efaf2b
Not setting validated unless the conversion was successful. 2022-01-05 15:10:11 -07:00
lrnselfreliance
bedcc3a5e9
Bugfix/favorites import (#71)
* Favorite videos are saved even if the DB is wiped.

* Logging when importing.

* Warning when favorite video cannot be found.

* Handling when a favorited video has no channel.

* Fixing link name in log.

* vid2 was not in a channel.

Signed-off-by: Roland <roland@learningselfreliance.com>
2022-01-05 12:52:38 -07:00
Roland
e6fa9c79f7
Importing videos config after successful refresh. This is apply favorites to videos. 2022-01-05 09:50:46 -07:00
Roland
f3b49b3551
Handling when a video has no channel, but should not be downloaded again. 2022-01-04 16:24:02 -07:00
Roland
0c2250ea12
Skipping video when download URL is bad. 2022-01-04 16:21:27 -07:00
Roland
a190348263
Ignoring and warning about error when refreshing a channel's videos. 2022-01-04 15:10:44 -07:00
Roland
b6c7ef1d99
Using video path as alternate title on video player. Showing 'No Description' when no description is available. 2022-01-04 14:48:01 -07:00
Roland
61abff1c5e
Video titles have HTML entities replaced. 2022-01-04 14:30:45 -07:00
Roland
9da3b3d8b2
Creating api_param_limiter which can be used to restrict limit or offset. 2022-01-04 12:15:11 -07:00
Roland
fe9bdc190e
Using more broad video format selection. 2022-01-04 10:31:37 -07:00
Roland
51b7c1cc75
Reformatting pages in a consistent way. 2022-01-04 09:07:28 -07:00
lrnselfreliance
c23b014add
Feature/archive search (#70)
* Working through archive search.

* Using custom hook.

* Setting archive.contents duration creation.

* Archive search and domain list use custom hooks.

* Watching search param using value, not history.

* Search params are preserved on load.  Search and domain can be cleared.

* Fixing archive external link.

* Archive search form is new generic SearchInput.

* Reworking Archives empty states.

* Simplifying Archives logic.

* Fixing bug which displayed the wrong empty state during loading.

* Archives can be synced and deleted.

* Changing wording of archive delete.

* Removing URL table.

* Deleting domain if it has no archives.

* Fixing FE use of archive.url.  Fixing bug with get_domains.

* Universal results are displayed on Welcome page.

* Creating ExternalLink to open a link in a new tab.g

* Increasing size of search headers.

* Adding divider to ease reading.

* Adding More button below search results.

* Disabling More buttons when there are no results.

* Ordering videos by rank so linked results are at the top.

Signed-off-by: Roland <roland@learningselfreliance.com>
2022-01-03 15:13:38 -07:00