voussoir
480eeb9ac3
Update common.js request, get, post functions like Etiquette.
2020-05-21 20:29:43 -07:00
voussoir
5c4b2e9d21
Add jsonify.py.
2020-05-21 20:28:52 -07:00
voussoir
21af1576c2
Move endpoints into separate files like Etiquette.
2020-05-21 20:04:02 -07:00
voussoir
13a72ec7fc
Move CSS and JS into separate folders under static.
2020-05-21 19:43:45 -07:00
voussoir
55d0bb463c
Add utility merge_db.py.
2020-05-21 17:33:59 -07:00
voussoir
57d87560a4
Add interface for setting automark state.
2020-05-21 17:28:34 -07:00
voussoir
0c5823cbeb
Indicate automark state on /channels listing.
2020-05-21 17:26:12 -07:00
voussoir
34f24d9940
Let default state of automark be pending, not None.
2020-05-21 17:25:06 -07:00
voussoir
af494e2684
Rename CSS class channel_card_downloaded -> channel_card_no_pending.
2020-05-21 17:22:07 -07:00
voussoir
e165b16edc
Rstrip the "Z" off of timestamps.
...
This only started occuring recently.
2020-05-06 21:23:24 -07:00
voussoir
cd7a59cbfa
Sort channel names case-insensitive.
2020-05-06 21:23:02 -07:00
voussoir
0562c51d6c
Use mark_state instead of doing the sql update here.
2020-04-15 16:34:33 -07:00
voussoir
2f5ec40b89
Big: Object-oriented channels & videos, match Etiquette structure.
...
- Channels and videos are now objects instead of just dictionaries.
- Copied Etiquette's use of cachemanager mixin to cache those objects.
- Copied Etiquette's use of sql_ methods.
- Copied Etiquette's use of namespaced javascript.
- Copied Etiquette's use of config file.
- Redid video_card css to use grid, better on mobile.
- Improved usage of URL parameters with class=merge_class.
- Wrote some actual content on readme.
2020-04-05 18:59:16 -07:00
voussoir
4689609c97
Add links for sort by date, duration, views, random.
2020-04-03 14:24:48 -07:00
voussoir
1bc3df5efe
Split DB_INIT into pragmas and full init, like Etiquette.
2020-04-03 11:23:51 -07:00
voussoir
11a147fbcd
Use insert_filler for add_channel.
2020-04-03 11:12:56 -07:00
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