Commit Graph

394 Commits (94ee832a2716788978a6f5597bd0d97d0c64daec)

Author SHA1 Message Date
voussoir 718399806a Add channel_name to videos before returning them, show on listings.
Previously, when viewing a /videos listing, there was a link
called (Chan) to bring you to the channel page, but since videos
only carried author_id and not author_name it was always kind of
ugly. This will inject that attribute on the way out.
I know, this would be more properly written as an SQL join in the
first place, but my row-dict conversion isn't set up for that and
I'm planning on converting this all to object-based returns instead
of dicts soon.
2020-04-03 08:49:35 -07:00
voussoir 1b456bf900 Let embedded video fit width of the video card instead of hard px.
This makes the page much easier to use on mobile. On desktop I think
the new size may be a little overwhelming but I'll try getting used
to it, and anyway I think it simply makes more sense than the
arbitrary size from earlier.
2020-04-03 08:43:47 -07:00
voussoir 275db1e608 Fix typo googleapicliet -> googleapiclient. 2020-03-28 17:07:18 -07:00
voussoir 4effa64694 Move endpoints to new endpoints.py. 2020-03-28 17:05:43 -07:00
voussoir 1b2778ca7a Rename ycdl_flask.py to common.py. 2020-03-28 16:56:06 -07:00
voussoir 790fbd7b9a Remove this ifmain. 2020-03-28 16:53:39 -07:00
voussoir d407326392 Move make_json_response into new jsonify.py. 2020-03-28 16:51:40 -07:00
voussoir c7ef2dd41b Rearrange these imports. 2020-03-28 16:49:33 -07:00
voussoir 428ada8c83 Rename inner ycdl_flask folder to backend.
Following the same thing as I did with etiquette.
2020-03-28 16:47:37 -07:00
voussoir 201ae70ba0 Use argparse to expose refresher thread controls. 2020-03-28 16:44:47 -07:00
voussoir 9fe7057021 Move refresher thread launcher into a function. 2020-03-28 16:42:54 -07:00
voussoir d0bfbaadfe Add method insert_playlist. 2020-03-17 20:53:18 -07:00
voussoir 1a7662b6bd Add method get_playlist_videos. 2020-03-17 20:53:10 -07:00
voussoir 08ae8a9394 Update reference to ycdldb. 2020-03-17 20:52:50 -07:00
voussoir 9b227c6e5f Add link to random pending videos on homepage. 2020-03-13 14:38:27 -07:00
voussoir b5f892d595 Add ?orderby url parameter. 2020-03-11 18:02:09 -07:00
voussoir 672abf9d86 Hold Shift to not deselect videos after setting a state. 2020-03-11 14:30:56 -07:00
voussoir 26328865e1 Pass list of all states to page for autogeneration of elements. 2020-03-11 14:30:12 -07:00
voussoir b48c2fc37c Rename ycdl.py -> ycdldb.py; add exceptions.py. 2020-03-11 14:27:27 -07:00
voussoir 3d3da805b6 Stop selecting text when shift-clicking to select videos. 2020-03-11 13:01:55 -07:00
voussoir 81b864ec19 main should return args.func(args) value. 2020-02-08 17:20:27 -08:00
voussoir 6691c49481 Add parameter skip_failures to refresh_all_channels. 2020-01-19 10:53:49 -08:00
voussoir 03b5e97d33 Add ycdl_logo.svg.
It's just the favicon anyway.
2020-01-19 10:51:54 -08:00
voussoir 29d819fe97 Add a refresher thread to keep your sub box up to date. 2020-01-06 22:07:43 -08:00
voussoir 78ce6a6f41 Add views column and some other database changes.
And various other changes which have been sitting here for too long.
2020-01-06 22:07:25 -08:00
voussoir 420a14bb88 Add a logger to ytapi. 2020-01-06 22:03:18 -08:00
voussoir 4706a0a6a7 Add 'sub box' link to 100 latest videos from all channels. 2020-01-06 22:01:58 -08:00
voussoir 1c69a2aa59 Personal changes. 2020-01-06 22:01:23 -08:00
voussoir a29a637bcb Put the refresh buttons inside spans. 2020-01-06 21:56:45 -08:00
voussoir 2826e8972f Add link directly to channel's pending page. 2020-01-06 21:56:22 -08:00
voussoir 12c2b882f2 Add the meta viewport property. 2020-01-06 21:55:01 -08:00
voussoir 9160d25293 Fix seconds_to_hms bug!
Embarrassing. If M was zero then you got HH:SS.
2020-01-06 20:25:58 -08:00
voussoir 74607b7e60 Index (author, download) so that listing all channels is faster. 2019-01-31 17:43:01 -08:00
voussoir 6b24b7416c Modifying search box reapplies download filter, removes cards.
Example: If you are using the /pending filter, and use the search
box to find some videos and ignore them, then those videos will
be removed from the DOM. That way they aren't still there when you
clear the text box to see the other pending videos.
2019-01-25 15:54:31 -08:00
voussoir c667ebd872 Batch requests & filterbox & update metadata
- Download / Ignore on multiple videos is batched into a single
  request, like it should have been all along.
- Text box at the top of the page lets you search for terms live
  instead of loading various ?q urls.
- Doing a force refresh will actually update the metadata of old
  videos instead of skipping them.
2019-01-23 21:22:09 -08:00
voussoir f1f12423b1 Changes
- Add thumbnails to the card (dynamically loaded)
- Add button for embedding the video
- Store video duration in db (use update script)
- Separate links for filter views with and without query.
2018-12-17 19:17:53 -08:00
voussoir ba1961349c It's been a while 2017-10-08 21:39:07 -07:00
voussoir 72e121d585 minor improvement 2017-05-21 13:59:07 -07:00
voussoir a8faad6573 Improve channel management page
Select multiple videos with ctrl and shift
Simplify code to hide / show action buttons
2017-05-21 13:58:59 -07:00
voussoir 1c85df8ba1 Add /videos to get overall list of videos. 2017-05-21 13:51:15 -07:00
voussoir 2959673f74 Add Youtube.get_related_videos 2017-05-21 13:50:17 -07:00
voussoir 7c7a9b881b rename some helper scripts 2016-12-12 19:50:41 -08:00
voussoir 90eedca0d7 checkpoint 2016-12-06 22:11:09 -08:00
voussoir bd263b2ed7 checkpoint 2016-11-28 20:16:16 -08:00