Commit Graph

232 Commits

Author SHA1 Message Date
Xaekai 6a0608bf7e Explicit type conversion in version number comparison. 2017-11-27 23:56:21 -08:00
Xaekai aa5066762b This resolves an issue where Google returns HTTP200 but provides an HTML redirect to a login portal instead of video data.
Closes #718
2017-11-27 23:37:41 -08:00
Calvin Montgomery 342e5d406a Drive userscript: support violentmonkey (#713) 2017-11-27 22:42:50 -08:00
Calvin Montgomery 85169fbb56 Update drive userscript (#714) 2017-11-15 22:27:31 -08:00
Calvin Montgomery 82bd645781 Minor cleanup of some no longer used client stuff 2017-08-13 22:33:54 -07:00
Calvin Montgomery 04c9d48779 custom-media: implement queueing and playback changes 2017-08-08 20:35:17 -07:00
Calvin Montgomery dac2e41488 Fix and enable efficient emotes by default 2017-08-05 12:22:58 -07:00
Calvin Montgomery 7bd9934e58 Minor cleanup of no longer used things 2017-07-26 20:32:51 -07:00
Calvin Montgomery f593f7283c Replace alert() with modal for ACP password reset
Some browsers (e.g. Chrome) don't allow copying text out of alert()
dialogs.
2017-07-24 22:35:15 -07:00
Calvin Montgomery c152a19624 Ignore library cached metadata when queueing
The use of the channel library as a cache for metadata to avoid
re-requesting metadata for known media is an optimization that dates
back to 1.0.  However, it doesn't have any TTL, is prone to bugs, and is
of dubious value.

This commit ignores the results of the library check when queueing a new
video, opting to always re-request the metadata.  This fixes a few bugs:

  * Google Drive metadata being lost when storing in library
  * Streamable metadata being lost when storing in library
  * Videos in the channel library that are now unavailable on their
    source website being queueable and then failing to play (e.g. deleted
    YouTube videos).

In its place, a small fail-open check is left behind to emit metric
counters on how many queues would have been cache-hits, to provide
insight into whether a proper caching solution (i.e. one not tacked on
top of the library) would be worth pursuing or not.  This will be
removed eventually.
2017-07-15 14:41:37 -07:00
Xaekai 2dc6504a77 Use a consistent pattern. 2017-06-16 21:37:30 -07:00
Xaekai f89832a6d1 Gracefully allow script authors time to update their code 2017-06-15 22:09:09 -07:00
Calvin Montgomery e9c519c6e2 Add twitch clip support (#659) 2017-05-27 11:49:43 -07:00
Xaekai 5163c2acb1 Glory to the dark lord 2017-05-25 08:04:19 -07:00
Calvin Montgomery d23b5278b1 Rename Hitbox -> Smashcast 2017-05-20 16:50:00 -07:00
Calvin Montgomery 02587dbb5c Merge pull request #664 from Xaekai/emote.rename
Emote renaming
2017-05-18 22:02:50 -07:00
Xaekai 8434d20826 Fix minor issues with emote rename 2017-05-17 09:50:47 -07:00
Xaekai 8e3ce4e1c3 Emote renaming
This allow emotes to be renamed in the same fashion the image URLs can be changed.
2017-05-16 10:08:53 -07:00
Xaekai 929e1b2c69 Add support for embedded VidMe URLs 2017-05-14 19:21:01 -07:00
Xaekai 8b95b9fc41 Fix UStream URL Generation 2017-05-14 04:02:32 -07:00
Calvin Montgomery ef9c744003 Use HTTPS in formatURL 2017-04-11 21:57:05 -07:00
Calvin Montgomery 8d40c87dda Deprecate jwplayer and googleplus videos 2017-04-11 21:55:31 -07:00
Calvin Montgomery b1a328d2e0 Implement max total video time per user 2017-04-03 21:18:40 -07:00
Calvin Montgomery 0ce6fbba20 Fix an issue with playlist item matching 2017-03-26 11:04:02 -07:00
Calvin Montgomery 9dc82ad444 Enforce stricter validation on polls 2017-03-20 21:37:32 -07:00
Calvin Montgomery 4701e767b6 Another fix for the new emote code 2017-03-03 23:59:07 -08:00
Calvin Montgomery 6672f5f75e Minor fix to new emote method 2017-03-02 18:53:34 -08:00
Calvin Montgomery 20326194f7 Add execEmotesEfficient behind feature flag
For #645.  Disabled by default, I'll selectively enable it to be sure it
works and then remove the old implementation.
2017-03-01 21:16:55 -08:00
Calvin Montgomery a80512aa60 Fix #646 2017-02-23 20:10:57 -08:00
Calvin Montgomery 2c57719318 Support changing the ratio of video:chat width 2017-01-23 21:47:21 -08:00
Calvin Montgomery b0ff4d5ef0 Make delete from channel library a configurable permission 2017-01-23 21:16:39 -08:00
Calvin Montgomery 27e168ba8b Integrate new tab completion methods
There is now an option to choose which tab completion method to use.
Also, emotes can be tab completed.
2017-01-10 22:26:46 -08:00
Calvin Montgomery ee8cf35cdf Add checks for a couple JSPREF edge cases 2017-01-09 21:02:42 -08:00
Calvin Montgomery e2abb90d14 Add HTTPS check for ffmpeg and custom embeds 2017-01-05 20:58:07 -08:00
Calvin Montgomery d21943ecc7 Whitelist m4a/aac for ffmpeg 2016-12-17 19:53:17 -08:00
Calvin Montgomery 453ed607ba [http deprecation] enforce HTTPS for externalcss URLs 2016-12-10 23:23:57 -08:00
Calvin Montgomery afa18c4749 Fix Google Drive URL 2016-10-20 19:07:03 -07:00
Calvin Montgomery 3c11ac6cf5 Add jitter and retry logic to google drive userscript lookups 2016-10-08 10:33:18 -07:00
Calvin Montgomery d0d2002a5f Fix some drive userscript issues 2016-10-07 19:55:41 -07:00
Calvin Montgomery f62d9bc271 Add twitch vod support 2016-09-04 18:53:38 -07:00
Calvin Montgomery af6e958c49 Merge remote-tracking branch 'origin' into ip-session-age 2016-08-24 19:48:58 -07:00
calzoneman 74cb1b3efc Implement time parsing/formatting for channel settings 2016-08-10 21:59:36 -07:00
calzoneman 8305c235eb Add initial channel setting for new account chat delay 2016-08-10 21:59:30 -07:00
calzoneman e99bfcd47b Merge branch '3.0' into videojs-hls 2016-08-09 22:41:55 -07:00
calzoneman 7b95777d99 Add a few things missed last commit 2016-08-08 20:34:03 -07:00
calzoneman d06c614ccc Add HLS support (and upgrade Video.JS) 2016-08-06 21:14:52 -07:00
calzoneman 88c42af139 Add streamable.com support (#585) 2016-08-02 22:35:00 -07:00
Xaekai 285dab9ed7 Prevent rendering of <iframes> and <objects> in the error message when attempting to queue them as supported host links instead of custom embeds.
I thought about just moving the parse failure message handling to queueMessage, but that quickly turned into a minefield of pain. This gets the job done for now.
2016-07-22 19:22:15 -07:00
Calvin Montgomery aaa21aad05 Merge pull request #598 from Xaekai/imagestrip
Image strip option
2016-07-14 23:44:49 -07:00
Xaekai aded7b1f38 Allow users to strip images from chat. 2016-07-14 23:37:29 -07:00
calzoneman d01d558ed6 Fill in incomplete CSEmoteList changes 2016-07-12 23:04:07 -07:00
calzoneman ce260e0f5c Greatly improve performance of channel settings emote list
The channel settings emote list is now paginated and leverages the same
basic code as the emote browser, but with a different renderer.  Fixes
 #594 and kills an ugly function.
2016-07-11 23:55:07 -07:00
Xaekai aa6066dfd5 Reduce the number of places the default theme is hardcoded from 6 to 1. 2016-07-08 19:01:31 -07:00
Xaekai 0aa73a4b14 Add missing formatter entry for vid.me 2016-07-07 23:32:09 -07:00
calzoneman 6f56862307 Add vidme support (#568) 2016-06-25 17:09:48 -07:00
calzoneman 5f773d46c9 Fix poll timestamps with no unit 2016-06-05 23:01:03 -07:00
calzoneman 5a2aa396fe Fix #575 2016-05-25 17:39:22 -07:00
calzoneman beb99c5632 Improve UI for new poll timeout entry
Resolves #565
2016-05-21 16:52:48 -07:00
calzoneman 0922ce8e66 Remove dead client code 2016-05-21 16:24:41 -07:00
calzoneman 7e623daebb Fix #573 2016-05-21 16:18:52 -07:00
calzoneman a00820a4c6 Fix queue progress bar for youtube playlists 2016-05-21 16:13:58 -07:00
calzoneman 75245e4d98 Include video ID in the progress bar to prevent false clears 2016-05-19 21:31:10 -07:00
calzoneman 8ed50d0b08 Add progress bar to the queue 2016-05-19 21:24:06 -07:00
calzoneman b35b2a6e7e Clean up ffprobe error reporting
The error messages were a bit difficult for users to understand due to a
combination of including useless technical information and lacking
userful user information.  The error messages are more verbose now and
give a better indication of what went wrong.
2016-05-19 20:51:39 -07:00
calzoneman 59c7571ad5 Fix emote click-to-insert behavior 2016-05-04 20:52:55 -07:00
calzoneman d59daab2ae Make EmoteList self-contained instead of referencing globals 2016-03-29 23:31:02 -07:00
calzoneman 4e011c0d26 Change modflair label to "Name Color"
Also combined adminflair and modflair into one button (the button has 2
states if you're a moderator, or 3 states if you're a site
administrator).  Resolves #517
2016-03-29 22:30:16 -07:00
calzoneman 7448429341 Fix #566
Refactored the ffprobe stream-selection logic to handle rejected files
better:

  * Streams tagged as a non-default disposition are not considered
  * If a file has any video stream, the audio stream will be ignored

This should prevent videos from being misreported as invalid audio
codecs, etc.
2016-03-21 23:28:21 -07:00
calzoneman 865a7453d9 Undo HD layout before applying synchtube, fluid (#549) 2016-01-03 22:53:29 -08:00
calzoneman 5a2ef2d24d Minor fixes for queueWarn 2015-12-20 22:35:24 -08:00
calzoneman 176d4cb06f Show custom title UI for `fi:` override (#523) 2015-12-13 11:18:46 -08:00
calzoneman 11d4c4ca62 Reject blank emote names and images 2015-12-05 18:52:39 -08:00
calzoneman b0d5e92350 Fix autoscrolling changes 2015-12-05 17:57:33 -08:00
calzoneman 3c5d36919b Fix positioning and background color of new message indicator 2015-11-29 10:29:56 -08:00
calzoneman 23f39ab2f5 Improve chat autoscroll behavior
The previous behavior (don't autoscroll if the mouse is over the chat
area) was not intuitive and caused problems for people in chat only
mode, which led to a lot of people assuming that it was a glitch.

This change introduces the following behavior:

  * Hovering over chat no longer affects autoscroll.
  * Scrolling up in chat turns off autoscroll.
  * Scrolling to the bottom of the chatbox resumes autoscroll.
  * If a new message is added while autoscroll is off, a "New Messages
    Below" indicator is added to the bottom of the chatbox.
2015-11-29 09:49:21 -08:00
calzoneman 44745d86ac Fix for Wii U browser
Apparently it doesn't send the login cookie if you explicitly set the
socket.io transports to prefer websockets.  Magic.
2015-10-29 20:50:10 -07:00
calzoneman dacda65961 Prevent unnecessary duplicate profile boxes 2015-10-19 20:28:33 -07:00
calzoneman 3356a55fbd Fix modal issue 2015-09-16 20:20:51 -07:00
Calvin Montgomery dda5077727 Merge pull request #498 from calzoneman/comma-multi-queue
Add comma-separated queueing for multiple items
2015-07-21 21:46:28 -07:00
calzoneman 06347d6c25 Fix hidePlayer() 2015-07-16 21:43:21 -07:00
calzoneman d76af73286 Add comma-separated queueing for multiple items 2015-07-16 19:14:55 -07:00
calzoneman 70be8a6713 Resolve merge conflict 2015-07-06 11:28:18 -07:00
Calvin Montgomery 62ed922c73 Fix leader 2015-07-05 13:29:06 -07:00
calzoneman d9f06a50de Fix 484 2015-06-04 00:57:51 -04:00
Anthony Parsons 35b2920c52
Fix a typo 2015-05-21 17:48:00 +01:00
calzoneman 7bc247ede2 Fix 'remove video' option 2015-05-14 13:14:45 -05:00
calzoneman 8b69485448 Show emote list button in chat only 2015-05-14 11:42:26 -05:00
calzoneman 86bd20d5cc Minor fix for emote insertion 2015-05-13 12:19:03 -05:00
calzoneman 8927613da7 Add emote search, sort toggle 2015-05-13 12:17:32 -05:00
calzoneman 691ec3055c Fix emote insertion behavior 2015-05-12 13:53:19 -05:00
calzoneman 389dd0d5ab Initial emote list implementation 2015-05-12 13:50:59 -05:00
Xaekai 2dd1db166a Fix annoyance: Clicking Remove video scrolls to top 2015-05-06 12:14:56 -07:00
calzoneman e2c3b2daad Fix PM maxlength and throttling 2015-04-23 21:49:15 -05:00
Erik 566c4c174e make sure the user understand this is for real 2015-04-20 16:09:21 -04:00
calzoneman f4a9f0b21b linewrap queue alerts 2015-03-27 19:08:58 -05:00
calzoneman 3290501e81 Fix google drive/google+ 'highest available' quality 2015-03-20 14:23:44 -05:00
calzoneman f3fe933f6e Support new google drive link format 2015-03-20 13:57:13 -05:00
Erik 3ae2deca7c Fix cancel for kick/ban/ipban 2015-02-21 21:34:25 -05:00
Xaekai 1c263f825b Add line start anchors to the shorthand URI parsers 2015-02-21 12:26:03 -08:00
Xaekai 1f7940711d Resolve missing closing parenthesis on the generic matcher. 2015-02-18 18:44:17 -08:00