Commit Graph

751 Commits

Author SHA1 Message Date
Omar Roth
e4ba09549a Change sign in messages to protect user privacy 2018-07-20 11:34:27 -05:00
Omar Roth
e180cf70f8 Fix sort options for Atom feed 2018-07-20 11:24:13 -05:00
Omar Roth
6135006b26 Add Atom feed 2018-07-20 11:19:49 -05:00
Omar Roth
ac8fb9d8c8 Add 'raw' and 'quality' options to embedded videos 2018-07-19 11:04:29 -05:00
Omar Roth
d29ea79a5d Add separate user accounts 2018-07-18 20:15:18 -05:00
Omar Roth
61e3c39ecd Add 'secure' for cookies when SSL enabled 2018-07-18 19:29:03 -05:00
Omar Roth
18f8a4ae1a Add latest_only and sort options for subscription feed 2018-07-18 09:20:34 -05:00
Omar Roth
0bb07e55f5 Add ability to automatically extract video signature funtion 2018-07-17 10:53:17 -05:00
Omar Roth
7119395045 Refresh account for subscription feed and manager 2018-07-17 08:19:45 -05:00
Omar Roth
a6292d956d Add option to change max_results 2018-07-16 19:31:49 -05:00
Omar Roth
cae8e1b883
Merge pull request #9 from omarroth/add-preferences
Add user preferences
2018-07-16 18:46:16 -05:00
Omar Roth
70085db5d2 Bump size for referer URL 2018-07-16 15:12:10 -05:00
Omar Roth
e87c6186e7
Merge pull request #8 from omarroth/embed-options
Add 'autoplay', 'controls', 'loop' to embedded player options
2018-07-16 15:09:38 -05:00
Omar Roth
7494e864b4 Add handling for invalid login 2018-07-16 12:50:41 -05:00
Omar Roth
58b5e97fc4 Add speed and fix <select> options 2018-07-16 11:57:52 -05:00
Omar Roth
96c520b02b Add user preferences 2018-07-16 11:24:24 -05:00
Omar Roth
f68b27da7c Organize routes 2018-07-16 08:18:59 -05:00
Omar Roth
23711a127c Add 'autoplay', 'controls', 'loop' to embedded player options 2018-07-16 08:08:18 -05:00
Omar Roth
f189cd7c48 Speed up /videoplayback streaming 2018-07-15 22:10:29 -05:00
Omar Roth
73247d75ca Add fix for mimetype in /videoplayback 2018-07-15 21:53:24 -05:00
Omar Roth
9cb96de426 Add CORS header for /videoplayback redirect 2018-07-15 21:01:35 -05:00
Omar Roth
aa389399bc Add fix for videoplayback requests with trailing slash 2018-07-15 20:54:01 -05:00
Omar Roth
f05afaf342 Add dash support for videos that already have manifest 2018-07-15 20:39:56 -05:00
Omar Roth
38af1b4c1b Add /embed/:id 2018-07-14 08:36:31 -05:00
Omar Roth
72690f587e Clarify request types 2018-07-08 15:22:32 -05:00
Omar Roth
4671bcf71a Add support for Google Authenticator codes 2018-07-08 08:57:06 -05:00
Omar Roth
eb1df96e1b Remove patch and update file structure 2018-07-06 07:59:56 -05:00
Omar Roth
a789114f43 Fix login 2018-07-06 07:49:48 -05:00
Omar Roth
99c02722db Remove all cookies on sign out 2018-07-05 19:50:22 -05:00
Omar Roth
431fa642bf Add /subscription_manager 2018-07-05 19:48:55 -05:00
Omar Roth
1ada71e5ba Move user state into before_all 2018-07-05 18:43:26 -05:00
Omar Roth
a01bdf6c16 Add /user endpoint 2018-07-05 11:25:15 -05:00
Omar Roth
f5ea832721 Upgrade to Crystal 0.25 and update signature 2018-06-19 16:20:08 -05:00
Omar Roth
650b8a50fc Add subscribe button to channel page 2018-06-14 19:06:22 -05:00
Omar Roth
e9e6bbd710 Update options for videoplayback preflight 2018-06-06 21:46:57 -05:00
Omar Roth
e0dd56f4ff Fix dash endpoint 2018-06-06 17:55:51 -05:00
Omar Roth
36ba69be1f Add channel page 2018-06-02 19:52:58 -05:00
Omar Roth
e865a801aa Spin parts into components 2018-06-01 17:26:00 -05:00
Omar Roth
b8d4951a48 Add support for "t" param in watch page 2018-05-30 09:10:56 -05:00
Omar Roth
471f5345e2 Remove local links for video playback 2018-05-29 19:19:24 -05:00
Omar Roth
61cd135780 Use local links for video playback 2018-05-29 18:40:36 -05:00
Omar Roth
f79825fc80 General cleanup 2018-05-29 18:40:29 -05:00
Omar Roth
c6539c803a Fix typo 2018-05-07 22:04:58 -05:00
Omar Roth
fdcfe0bb14 Seperate new videos in subscription feed 2018-05-07 21:57:47 -05:00
Omar Roth
75f8fcd40b Add support for AAhBBmCCsDDms in video start and end params 2018-05-07 20:38:13 -05:00
Omar Roth
dce9ef3e8b Add clearer message for login failure 2018-05-05 20:51:31 -05:00
Omar Roth
6d3e88aeb5 Unify formatting 2018-05-03 20:36:48 -05:00
Omar Roth
58410e09f7 Clarify crawl option 2018-05-01 18:51:16 -05:00
Omar Roth
ae68213dc7 Add TFA 2018-04-29 09:40:33 -05:00
Omar Roth
1ea7290892 Add video refresh 2018-04-28 10:50:02 -05:00
Omar Roth
6a7d19163e General cleanup 2018-04-28 09:32:36 -05:00
Omar Roth
d753e52680 Add Fiber.yield to jobs 2018-04-28 09:32:35 -05:00
Omar Roth
92f78ff541 Remove client pool 2018-04-28 09:32:05 -05:00
Omar Roth
19f5729e18 Add support for incorrect password on /login 2018-04-28 09:29:08 -05:00
Omar Roth
742fa6a705 Add negative offset for subscription feed 2018-04-17 16:27:55 -05:00
Omar Roth
84aef70803 Set referer if referer is /login 2018-04-17 15:58:00 -05:00
Omar Roth
fd609ee7e5 Allow range in videoplayback headers 2018-04-16 20:49:00 -05:00
Omar Roth
4cfddcfb42 Add allow headers for preflight requests 2018-04-16 20:43:06 -05:00
Omar Roth
86627d8303 Add options for videoplayback 2018-04-16 19:41:38 -05:00
Omar Roth
11e871ba83 Add CORS header for videoplayback 2018-04-16 19:31:57 -05:00
Omar Roth
9898b2900f Change status_code to that of response for videoplayback 2018-04-16 19:19:02 -05:00
Omar Roth
6c5cbca575 Add support for fvip in videoplayback 2018-04-16 13:08:10 -05:00
Omar Roth
830d6fae8e Add support for using local links in manifest 2018-04-15 22:57:17 -05:00
Omar Roth
bc068721ab Add filtered handler for videoplayback 2018-04-15 22:56:58 -05:00
Omar Roth
f08199e7cf Add /videoplayback endpoint 2018-04-15 20:47:37 -05:00
Omar Roth
4bf0e538e4 Add dark theme 2018-04-13 21:32:14 -05:00
Omar Roth
6bbbfcb919 Combine enable_subscriptions and disable_notifications 2018-04-13 20:11:16 -05:00
Omar Roth
0c5b92a6cb Add error handling for channel refresh 2018-04-11 17:37:06 -05:00
Omar Roth
2a4b643539 Add label to fmt_stream 2018-04-10 21:36:43 -05:00
Omar Roth
316ca2ab34 Add gzip for views 2018-04-09 22:41:32 -05:00
Omar Roth
b3e84e27f8 Allow channel_threads to be configured and increase pool_size 2018-04-09 22:07:09 -05:00
Omar Roth
e8349ae46b Don't sort ad_slots 2018-04-08 12:47:39 -05:00
Omar Roth
22800efbc4 Clean up decrypt_signature for watch page 2018-04-08 12:31:20 -05:00
Omar Roth
3b13cf46c5 Add referer redirect 2018-04-07 21:36:09 -05:00
Omar Roth
44ebf0ed8e Add detection for ad tags and category 2018-04-07 20:09:20 -05:00
Omar Roth
69dd52bac3 Use generic url for thumbnails 2018-04-05 20:54:56 -05:00
Omar Roth
841308929d Add &start and &end to watch page 2018-04-05 20:46:32 -05:00
Omar Roth
ff91ec820c Remove notifications once viewed 2018-04-05 20:07:14 -05:00
Omar Roth
e2b5b7793a Use fill_links once instead of per comment 2018-04-05 20:06:22 -05:00
Omar Roth
815aeeb29c Fix subscriptions on watch page 2018-04-03 22:09:53 -05:00
Omar Roth
10c1cfa4b5 Use optional query for watch page 2018-04-03 17:06:50 -05:00
Omar Roth
e2c50d4d1f Use get_user for watch page 2018-04-03 16:52:58 -05:00
Omar Roth
8d66493c01 Remove string interpolation from SQL queries 2018-04-02 18:38:03 -05:00
Omar Roth
a54f59ad74 Minor refactor 2018-04-01 10:09:08 -05:00
Omar Roth
29545a7a6f Remove nonfunctional element on login page 2018-04-01 10:01:34 -05:00
Omar Roth
57102c54c7 Add notifications 2018-03-31 19:09:27 -05:00
Omar Roth
7757eca92c Add subscribe and unsubscribe button 2018-03-31 09:51:14 -05:00
Omar Roth
2c5d75dcce Add enable and disable notifications (bell dinging feature) 2018-03-30 20:52:10 -05:00
Omar Roth
6c4cfbe39d Add users table 2018-03-29 21:41:05 -05:00
Omar Roth
239a6c892c Use seperate table for videos pulled from RSS 2018-03-28 22:29:54 -05:00
Omar Roth
e89f15a65c Use alternate thumbnail url for search page 2018-03-28 19:01:07 -05:00
Omar Roth
f047f87100 Use alternative url for watch page thumbnails 2018-03-28 18:52:02 -05:00
Omar Roth
799e172609 Clean up comments 2018-03-25 22:21:24 -05:00
Omar Roth
edfe1eefe8 Add channel refresh 2018-03-25 22:18:29 -05:00
Omar Roth
15f4d95ab4 Add fix for testing authentication 2018-03-24 22:56:41 -05:00
Omar Roth
253ea8113b Minor fix for filters and search 2018-03-24 22:39:07 -05:00
Omar Roth
076eaa7635 Add subscriptions 2018-03-24 22:38:35 -05:00
Omar Roth
2490833b6b Add logout 2018-03-22 12:44:36 -05:00
Omar Roth
48da2ced46 Add error handling for top videos 2018-03-19 12:35:35 -05:00
Omar Roth
02f1cd1a8b Remove error message 2018-03-17 00:02:02 -05:00
Omar Roth
39df8ab200 Add rescue for video ranking 2018-03-16 23:57:31 -05:00
Omar Roth
2be57276a2 Add refresh for top videos 2018-03-16 23:01:35 -05:00
Omar Roth
46f8032fb9 Fix dash manifest 2018-03-16 21:10:38 -05:00
Omar Roth
7704b76f45 Fix HTTP redirect 2018-03-16 19:58:33 -05:00
Omar Roth
97b93d548b Disable language filtering when there is no key 2018-03-16 19:52:25 -05:00
Omar Roth
997449ab4b Add language detection for top videos 2018-03-16 19:36:49 -05:00
Omar Roth
6581f96b70 Add fix for HTTP::Cookies 2018-03-16 12:06:03 -05:00
Omar Roth
d8372aa83e Add login page 2018-03-16 11:40:29 -05:00
Omar Roth
e8013c6d5c Use try instead of ternary 2018-03-14 18:06:21 -05:00
Omar Roth
c8a798e13c Add fix for streams 2018-03-14 18:05:19 -05:00
Omar Roth
f33cbb8b92 Add sources for iOS 2018-03-13 18:41:09 -05:00
Omar Roth
e37e9a0b8e Add qualityselector 2018-03-13 18:37:56 -05:00
Omar Roth
1a6c28735c Fix DASH manifest to be more similar to YT's 2018-03-12 22:16:38 -05:00
Omar Roth
8fb97a4511 Add suppor for dash manifest 2018-03-12 20:36:49 -05:00
Omar Roth
6795c183af Remove logging for Reddit comments 2018-03-11 10:36:15 -05:00
Omar Roth
d664d6b371 Only use HSTS if SSL is enabled 2018-03-11 10:29:40 -05:00
Omar Roth
31d1315c60 Fix HSTS header 2018-03-11 10:24:12 -05:00
Omar Roth
6d7ae6f638 Only add HTTP query if it exists 2018-03-09 14:13:26 -06:00
Omar Roth
cf07b66c12 Use 301 for HTTP redirect 2018-03-09 14:11:30 -06:00
Omar Roth
84fc87229c Add full path redirect 2018-03-09 13:35:31 -06:00
Omar Roth
2596410b97 Add HTTP redirect 2018-03-09 13:22:04 -06:00
Omar Roth
eb1d1e30d1 Add config file 2018-03-09 12:42:23 -06:00
Omar Roth
e22d6d8549 Add max-age for static assets 2018-03-09 11:28:57 -06:00
Omar Roth
caf82ccb8f Add error message for reddit comments 2018-03-09 10:47:25 -06:00
Omar Roth
fd1bd35b42 Remove macro 2018-03-07 22:15:21 -06:00
Omar Roth
4ae88cd286 Add mapping macro and move templated into helpers.cr 2018-03-07 17:58:33 -06:00
Omar Roth
b388181cd4 Use different source for fallback thumbnail 2018-03-07 16:48:43 -06:00
Omar Roth
24fc14ac7a Add player title and thumbnail 2018-03-07 16:48:26 -06:00
Omar Roth
ebe51c91d7 Add local alternatives for video links 2018-03-06 22:00:35 -06:00
Omar Roth
b14b26f7c2 Make rank_videos less greedy 2018-03-06 00:34:26 +00:00
Omar Roth
72826c4d96 Fix regression for youtube pool 2018-03-04 22:25:03 -06:00
Omar Roth
971b471d72 Fix param conflict 2018-03-04 11:39:56 -06:00
Omar Roth
df228c82de Fix param conflict 2018-03-04 11:37:12 -06:00
Omar Roth
be6ced202c Fix CLI options 2018-03-04 11:17:46 -06:00
Omar Roth
2144c388a5 Fix user-agent string 2018-03-04 11:00:35 -06:00
Omar Roth
814cdc9971 Major fixes, add options for YT, add User-Agent for Reddit 2018-03-04 10:59:03 -06:00
Omar Roth
f0b33b2975 Clean up Video class 2018-03-04 08:54:19 -06:00
Omar Roth
1bf492ce78 Clarify wait option 2018-03-03 18:23:39 -06:00
Omar Roth
cf9931e2a1 Add support for redirect in URL description 2018-03-03 18:18:03 -06:00
Omar Roth
fc2e10a54f Fix client reuse 2018-03-03 17:45:54 -06:00
Omar Roth
323d27a5f6 Add wait time option and add handling for reddit_pool 2018-03-03 15:26:47 -06:00
Omar Roth
24cea8f3e7 Add reddit comments 2018-03-03 15:06:14 -06:00
Omar Roth
dff93f67f9 Add author for item 2018-02-26 20:59:18 -06:00
Omar Roth
3a95d21808 Minor fixes 2018-02-26 18:59:02 -06:00
Omar Roth
7828cd9767 Remove html from DB 2018-02-26 18:58:45 -06:00
Omar Roth
13ef4440d0 Replace signature function with generic catchall 2018-02-22 13:01:37 -06:00
Omar Roth
225625a0fb Add redirect for missing params 2018-02-15 12:05:39 -06:00
Omar Roth
8956623347 Add fix to top_videos for empty database 2018-02-15 11:55:44 -06:00
Omar Roth
5b47be2b4d Run 'crystal tool format' 2018-02-13 10:43:15 -06:00
Omar Roth
4d1fa61bf0 Only add signature if stream has decrypted signature 2018-02-12 19:54:11 -06:00
Omar Roth
1d301a5055 Add support for different signature functions 2018-02-11 22:06:29 -06:00
Omar Roth
42df0df5a0 Clean up argument creation 2018-02-11 22:05:22 -06:00
Omar Roth
6adbcd050c Clarify listen param and update icon 2018-02-11 17:01:32 -06:00
Omar Roth
da97dfad8e Fix arg parsing 2018-02-11 16:48:27 -06:00
Omar Roth
dc45fbfad6 Use error template for 404 and 500 2018-02-10 09:15:23 -06:00
Omar Roth
ecb1999795 Ensure clients are recycled properly 2018-02-08 20:19:44 -06:00
Omar Roth
5159ec0f6e Pull rank_videos into seperate thread 2018-02-07 22:04:47 -06:00
Omar Roth
d4c88f2844 Fix watch for videos that don't have fmt_stream 2018-02-06 17:30:53 -06:00
Omar Roth
6167ce30b0 Disable logging for connection pool 2018-02-06 17:30:14 -06:00
Omar Roth
76c008d319 Make sure extra options don't override Kemal defaults 2018-02-05 19:37:09 -06:00
Omar Roth
c8d2d12282 Add default number of threads 2018-02-05 19:08:36 -06:00
Omar Roth
990bca5af5 Refactor client creation 2018-02-05 19:07:49 -06:00
Omar Roth
0e704056a1 Make sure client gets returned to pool 2018-02-05 18:52:21 -06:00
Omar Roth
d1a2b193aa Change client timeout and make sure there is always a client available 2018-02-05 17:57:53 -06:00
Omar Roth
a9cea62d5b Add home page 2018-02-05 17:56:40 -06:00
Omar Roth
a9ef931856 Fix error handling 2018-02-04 19:42:42 -06:00
Omar Roth
d79c1ff3e9 Fix video indexing 2018-02-04 19:42:13 -06:00
Omar Roth
1facca5408 Replace unnecessary constant 2018-02-04 19:40:06 -06:00
Omar Roth
03aeb27b40 Add ability to specify number of threads 2018-02-03 16:13:14 -06:00
Omar Roth
1e2139d78c Add ability to decrypt signature for vflxuxnEY/en_US/base.js 2018-02-03 14:41:59 -06:00
Omar Roth
d7d905447f Change license 2018-01-28 11:32:40 -06:00
Omar Roth
236fdb85ff Move functions into helpers.cr 2018-01-27 20:09:27 -06:00
Omar Roth
cf49306ffb Fix index out of bounds error 2018-01-21 17:49:27 -06:00
Omar Roth
5c1bd5fae6 Run 'crystal tool format' 2018-01-21 11:07:32 -06:00
Omar Roth
02b6990240 Get videos from search 2018-01-21 11:04:58 -06:00
Omar Roth
daba77d665 Merge changes 2018-01-20 18:21:47 -06:00
Omar Roth
a236d7a4e8 Fix several bugs in connection pool 2018-01-20 18:19:55 -06:00
Omar Roth
01d16ec6af Move helpers into seperate file 2018-01-20 18:19:12 -06:00
Omar Roth
6418d87a63 Add fix for videos that don't have specific keys 2018-01-19 18:31:47 -06:00
Omar Roth
19309f5ef6 Fix client refresh 2018-01-20 00:20:12 +00:00
Omar Roth
f77dcb7f9b Randomly refresh HTTP clients 2018-01-19 18:51:57 +00:00
Omar Roth
61e3b47210 Add id 'pool' for connetion pool 2018-01-19 03:46:29 +00:00
Omar Roth
c36b22a16d Refresh connection pool 2018-01-16 21:42:48 -06:00
Omar Roth
f09f971af7 Fix audio-only for video.js 2018-01-16 16:28:49 -06:00
Omar Roth
9f63fcaa1e Fix up search 2018-01-16 16:28:40 -06:00
Omar Roth
b21365248d Add speed control 2018-01-15 20:30:57 -06:00
Omar Roth
38cff5a752 Freshen up for the big dance 2018-01-14 21:16:09 -06:00
Omar Roth
60c618942f Add wait for empty connection pool 2018-01-07 17:18:24 -06:00
Omar Roth
dfdeb02c7f Try using connection pool for getting videos 2018-01-07 13:03:53 -06:00
Omar Roth
d65106d8b1 Speed up get_video 2018-01-07 11:42:24 -06:00
Omar Roth
060c4da96d Add related videos and clean up video class 2018-01-06 20:39:24 -06:00
Omar Roth
d1eb81b653 Add audio-only 2018-01-03 20:06:16 -06:00
Omar Roth
87601d1400 Run 'crystal tool format' 2017-12-30 15:38:09 -06:00
Omar Roth
7fc7a47849 Remove unused info 2017-12-30 15:36:29 -06:00
Omar Roth
a0d34367bc Adds description, video class, wilson score... 2017-12-30 15:35:28 -06:00
Omar Roth
f7f5f91316 Adds description, video class, wilson score... 2017-12-30 15:34:51 -06:00
Omar Roth
86a8e181bf Add search 2017-12-30 15:21:43 -06:00
Omar Roth
764fdf42ef Add fix for args order and rename videos table 2017-12-01 07:07:10 -06:00
Omar Roth
740caf8fd9 Update shard.yml and fix postgres queries 2017-11-30 18:23:16 -06:00
Omar Roth
8d6de7deba Add primitive postgres support 2017-11-29 21:49:26 -06:00
Omar Roth
383ed8b209 Rename project 2017-11-29 18:12:23 -06:00