Commit Graph

816 Commits

Author SHA1 Message Date
Marcin Kulik
4579951c2a Update token error page to new layout 2013-11-20 21:33:22 +01:00
Marcin Kulik
30da684934 Update 404 page for new layout 2013-11-20 21:33:22 +01:00
Marcin Kulik
35b3326987 Pimp up the repviews (thumbnails) a bit 2013-11-20 21:33:22 +01:00
Marcin Kulik
3362da04dc Update information on "About" page 2013-11-20 21:33:22 +01:00
Marcin Kulik
76ddc94561 Update docs pages for new layout 2013-11-20 21:33:22 +01:00
Marcin Kulik
cf78f0dfe0 Update the player to new design 2013-11-20 21:33:22 +01:00
Marcin Kulik
c0473dc217 Redesign homepage (and layout in general) 2013-11-20 21:33:22 +01:00
Marcin Kulik
7c83852945 Remove old ugly styles 2013-11-20 21:33:11 +01:00
Marcin Kulik
6009250a36 Display "asciicast:<id>" as a title for title-less asciicasts 2013-11-20 21:29:43 +01:00
Marcin Kulik
e01a9e23f5 Specify URLs for ToS and Privacy Policy for Persona 2013-10-26 23:57:07 +02:00
Marcin Kulik
d5ea271393 Use protocol-relative avatar URLs 2013-10-26 23:48:35 +02:00
Marcin Kulik
eb13fd2f83 Add terms of service page 2013-10-26 22:50:54 +02:00
Marcin Kulik
641b71d964 Fix the "Start recording" links on home page 2013-10-26 00:01:27 +02:00
Marcin Kulik
88e2e54477 Add privacy policy 2013-10-25 20:01:56 +02:00
Marcin Kulik
7a9a394121 Merge pull request #141 from sickill/persona
Sign in with an email (Persona)
2013-10-23 13:24:06 -07:00
Marcin Kulik
5674b488ae Fix the path to getting started page 2013-10-23 22:16:21 +02:00
Marcin Kulik
64585404e6 Make logo an actual image 2013-10-23 22:10:15 +02:00
Marcin Kulik
8728b47417 Use local copy of persona's include.js in dev environment 2013-10-23 22:00:02 +02:00
Marcin Kulik
888f3b7c80 Don't take current user's email from current profile page's user 2013-10-23 21:54:11 +02:00
Marcin Kulik
6ee6f20405 Improve the account settings page 2013-10-23 21:17:04 +02:00
Marcin Kulik
431fd87002 Use auth token for permanent sessions 2013-10-22 19:16:18 +02:00
Marcin Kulik
3e1feff84e Auto-strip whitespace from email and nickname 2013-10-22 17:58:15 +02:00
Marcin Kulik
5bd8b05a93 Validate presence and uniqueness of both nickname and email 2013-10-22 17:52:04 +02:00
Marcin Kulik
a194d361d0 Redirect to "getting started" page after sign up 2013-10-22 17:42:32 +02:00
Marcin Kulik
352fb6ede6 Improve wording 2013-10-22 17:42:32 +02:00
Marcin Kulik
cf822f9d5e Improvements to the new sign in flow 2013-10-22 17:08:12 +02:00
Marcin Kulik
4b5c02477b Don't override error message for user's nickname uniqueness 2013-10-20 19:08:41 +02:00
Marcin Kulik
8dba31ce71 Auto-focus nickname field on new user form 2013-10-20 19:07:40 +02:00
Marcin Kulik
a2b0a637fa Refactor User.for_credentials/for_email into class methods 2013-10-20 18:58:31 +02:00
Marcin Kulik
d4cbc3e504 Make Persona the only login option (with the ability to access old accounts) 2013-10-20 18:58:11 +02:00
Marcin Kulik
bc2b91f5a2 Extract base js assets bundle 2013-10-20 18:07:03 +02:00
Marcin Kulik
8c43aaf081 Add login via Mozilla Persona 2013-10-20 18:07:03 +02:00
Marcin Kulik
769acb6593 OmniAuthHelper is better name than OauthHelper
Conflicts:
	app/models/user.rb
	spec/models/user_spec.rb
2013-10-20 18:06:13 +02:00
Marcin Kulik
ac64d04a51 Remove old unused backbone code 2013-10-20 18:04:09 +02:00
Marcin Kulik
f05b787ac3 Remove debug console.log statement 2013-10-20 17:32:46 +02:00
Marcin Kulik
ef8449b44c Keep the sane line length 2013-10-20 17:29:19 +02:00
Marcin Kulik
4bc0982c78 Keep test uploads in a separate dir but still under public/ 2013-10-20 16:45:34 +02:00
Marcin Kulik
a2baeb91ea Add a default value for headers in AsciicastCreator 2013-10-20 16:41:37 +02:00
Marcin Kulik
a31cae3548 Fix a typo 2013-10-17 23:18:08 +02:00
Marcin Kulik
791f6ea6a5 Missing dot. 2013-10-14 21:24:45 +02:00
Marcin Kulik
d324fcd714 Add the "medium" font size for the embedded player 2013-10-14 21:10:18 +02:00
Marcin Kulik
b61a321299 Adjust user_agent parsing to take python implementation into an account 2013-10-14 21:10:17 +02:00
Marcin Kulik
fa9db48620 Words 2013-10-14 21:10:17 +02:00
Marcin Kulik
3ecf1ff936 Put installation instructions on a separate docs page 2013-10-14 21:10:17 +02:00
Marcin Kulik
0740174224 Update getting started docs 2013-10-14 21:10:16 +02:00
Marcin Kulik
6e8e204aaa Words 2013-10-14 21:10:16 +02:00
Marcin Kulik
0620b685bf Add the embedding docs 2013-10-14 21:10:12 +02:00
Marcin Kulik
7e5af6ed56 Favor uname over user_agent when accepting upload 2013-10-13 12:29:30 +02:00
Marcin Kulik
f86734bf50 Revert "Favor uname over user_agent"
This reverts commit 97931ceaed.
2013-10-13 12:28:58 +02:00
Marcin Kulik
97931ceaed Favor uname over user_agent 2013-10-13 11:51:41 +02:00
Marcin Kulik
012736304e Add support to the embed script for specifying the playback speed 2013-10-13 11:40:15 +02:00
Marcin Kulik
39ea1778dd Fix shape of the play button in embedded widget under FF 2013-10-12 19:02:24 +02:00
Marcin Kulik
90954c03b6 Add support to embed script for making the terminal font 2x bigger 2013-10-12 16:34:31 +02:00
Marcin Kulik
f689595446 Fix origin check for hosts with non 80 port 2013-10-12 16:26:23 +02:00
Marcin Kulik
8c9b580367 Remove unneeded sass imports 2013-10-12 14:53:46 +02:00
Marcin Kulik
2913c04570 Add ability to start playback in widget via postMessage 2013-10-12 13:24:48 +02:00
Marcin Kulik
01d6026dd1 Add FAQ page 2013-10-12 00:20:42 +02:00
Marcin Kulik
8eb0c910e7 Update "options" page 2013-10-11 20:48:11 +02:00
Marcin Kulik
d74ead2263 Store client's user agent on Asciicast record 2013-10-11 20:44:49 +02:00
Marcin Kulik
e4cb9c0657 New installation instructions 2013-10-06 13:50:17 +02:00
Marcin Kulik
bb9e492390 Words 2013-10-06 13:02:37 +02:00
Marcin Kulik
d1b4d6eabd Make sure progress indicator value is never larger than 100 2013-10-04 18:45:52 +02:00
Marcin Kulik
a43311aeba Update installation instructions for OSX 2013-10-04 12:10:08 +02:00
Marcin Kulik
405e2a7a9d Update installation instructions 2013-10-03 19:22:36 +02:00
Marcin Kulik
d71da5b369 Move asciicast attributes preparation to AsciicastAttributes 2013-09-25 21:42:59 +02:00
Marcin Kulik
f3ecd376d7 Update updated_at on all claimed asciicasts 2013-09-25 21:42:59 +02:00
Marcin Kulik
32a2f44eb6 Move user token creation/assignment to a service object 2013-09-25 21:42:59 +02:00
Marcin Kulik
b08ffd48b4 Make the ViewCounter a controller dependency in the form of a private method 2013-09-25 21:42:40 +02:00
Marcin Kulik
f02daa9069 BrushPresenter -> BrushDecorator 2013-09-24 12:31:18 +02:00
Marcin Kulik
681558074a Update brew install URL to the working one 2013-09-24 11:08:15 +02:00
Marcin Kulik
0350f908a9 Move TimingParser to services 2013-09-23 21:21:07 +02:00
Marcin Kulik
438e962a5a Convert docs to slim 2013-09-23 21:05:33 +02:00
Marcin Kulik
8efb95252e Remove unused template for FAQ page 2013-09-23 19:24:41 +02:00
Marcin Kulik
83a8976746 Remove unused assets 2013-09-23 19:13:06 +02:00
Marcin Kulik
0634f52c99 Change all occurrences of old project name to the new one 2013-09-23 19:05:36 +02:00
Marcin Kulik
5c80bf21f1 Don't display cursor when it's invisible... obviously 2013-09-23 11:27:27 +02:00
Marcin Kulik
e15828b56a Bring back cursor blinking 2013-09-23 11:09:25 +02:00
Marcin Kulik
3c4ac3666e Update copy & code to use the new name 2013-09-22 14:07:42 +02:00
Marcin Kulik
9dad3840fa Use yajl for parsing terminal snapshots 2013-09-22 12:25:34 +02:00
Marcin Kulik
e3678da97a Remove Oj - it leaks like a little puppy 2013-09-22 11:18:49 +02:00
Marcin Kulik
ee636bf958 Update the player to use backend-generated JSON frames 2013-09-21 13:05:13 +02:00
Marcin Kulik
a1cd6ca2ae Bring on the terminal.c! 2013-09-21 13:05:13 +02:00
Marcin Kulik
82ff7148a9 Make sure the preview snapshot always has requested height 2013-09-21 13:05:12 +02:00
Marcin Kulik
f15f2e11a5 Avoid making a copy of feed data string 2013-09-21 13:05:12 +02:00
Marcin Kulik
b3da1c0656 Don't crash when stdout data is shorter than expected 2013-09-21 13:05:12 +02:00
Marcin Kulik
79f8eaf2ed Fix display of reversed characters in the thumbnails and the preview 2013-09-21 13:05:12 +02:00
Marcin Kulik
82fa03863d Adjust Snapshot#crop to work on already optimized lines 2013-09-21 13:05:12 +02:00
Marcin Kulik
ff153fff1a Make Terminal return already optimized snapshot 2013-09-20 23:05:34 +02:00
Marcin Kulik
0e2c1784c6 Use terminal binary as a base for Terminal 2013-09-20 23:05:33 +02:00
Marcin Kulik
e537c1b78a Only release terminal if it is not nil 2013-09-14 13:13:58 +02:00
Marcin Kulik
e862acedb7 Animation frames generation on the backend 2013-09-10 21:29:17 +02:00
Marcin Kulik
bc6e1ddc3d Make implementation of Stdout more readable 2013-09-02 21:54:19 +02:00
Marcin Kulik
9e152c3172 Sanitize all characters coming from TSM::Screen#draw
It happens that libtsm's screen_draw returns a character that can't be
properly encoded as utf-8. As what we get is only meant to be displayed
and not interpreted we can replace these invalid characters with a
questio mark, which is a common practice for printing invalid chars.
2013-08-29 15:10:46 +02:00
Marcin Kulik
26801d207f Make Asciicast use BufferedStdout instead of Stdout 2013-08-28 16:56:40 +02:00
Marcin Kulik
c3fc452b91 Make Grid#crop easier to read 2013-08-28 16:22:59 +02:00
Marcin Kulik
731fb11e8b Simplify Grid#trailing_empty_lines implementation 2013-08-28 16:21:31 +02:00
Marcin Kulik
b47fa27968 Refactor Snapshot to use Grid under the hood 2013-08-27 20:31:31 +02:00
Marcin Kulik
d324200b01 Add BufferedStdout class whose #each yields at 60 hz tops 2013-08-27 20:31:27 +02:00
Marcin Kulik
c775bc8b06 Use less spans for thumbnail rendering 2013-08-26 11:02:32 +02:00
Marcin Kulik
31a880b7aa Simplify Snapshot and its presenter 2013-08-25 20:49:23 +02:00
Marcin Kulik
34b39d0db3 Simplify the structure returned by Terminal#snapshot
Each screen character is in its own, separate cell now. In addition the char
attributes don't include attributes that are "falsy".
2013-08-25 17:41:04 +02:00
Marcin Kulik
065e2cbc30 Split AsciicastStreamer#attributes_for_streaming into smaller methods 2013-08-25 16:45:37 +02:00
Marcin Kulik
731751650c Keep the lines shorther than 80 chars 2013-08-25 16:34:02 +02:00
Marcin Kulik
cdc2f01753 Find or build user from omniauth hash in the middleware 2013-08-19 17:08:13 +02:00
Marcin Kulik
40856933aa Support "blink" attribute in the thumbnails 2013-08-15 23:05:09 +02:00
Marcin Kulik
a53c8de5b9 Pass paths to decompressed stdout files to Stdout 2013-08-15 20:58:41 +02:00
Marcin Kulik
cf3e812e8e Move duration info below the thumbnail 2013-08-15 20:45:51 +02:00
Marcin Kulik
bae9bfdbc7 Use correct singular/plural form for asciicast count 2013-08-14 21:36:17 +02:00
Marcin Kulik
13119b2987 Display asciicast length on thumbnails 2013-08-14 20:40:24 +02:00
Marcin Kulik
44a7b0788e Convert asciicasts#_preview to slim 2013-08-14 19:38:01 +02:00
Marcin Kulik
49a2abe32b Make the "when by whom" font smaller 2013-08-14 19:27:32 +02:00
Marcin Kulik
abe0b77bcd Convert asciicast#index to slim 2013-08-14 18:16:03 +02:00
Marcin Kulik
562cd0ef0b Add "Show more" link on the homepage 2013-08-14 18:11:46 +02:00
Marcin Kulik
5c141003a1 Use "asciicast" over "Asciicast" in UI 2013-08-14 17:32:03 +02:00
Marcin Kulik
2e9b0a4718 Remove boring empty trailing lines from thumbnails 2013-08-14 17:24:36 +02:00
Marcin Kulik
9086aae060 Remove unused code 2013-08-14 16:38:33 +02:00
Marcin Kulik
6acea6da70 Use tilde prefix for nickname only in profile url 2013-08-14 16:30:49 +02:00
Marcin Kulik
4bb61b614f Prevent bots from following Edit links 2013-08-14 13:45:55 +02:00
Marcin Kulik
452f5869cf Fix Bzip2Uploader#decompressed_path for S3 storage 2013-08-13 20:13:09 +02:00
Marcin Kulik
869ca9d896 Adjust JS player to new asciicast JSON representation 2013-08-13 19:52:54 +02:00
Marcin Kulik
6db65b2a6c Serve asciicast as JSON in chunks 2013-08-13 19:52:54 +02:00
Marcin Kulik
7e1b41dfef Code reformating in TimingParser 2013-08-13 19:52:54 +02:00
Marcin Kulik
d21be98a5c Adjust SnapshotCreator to the latest API changes in Terminal and Stdout 2013-08-13 19:52:54 +02:00
Marcin Kulik
0c3494d174 Require explicit call to Terminal#snapshot for getting the snapshot 2013-08-13 19:52:53 +02:00
Marcin Kulik
6c8dbf4173 Make Stdout provide data in chunks 2013-08-13 19:52:53 +02:00
Marcin Kulik
fa4c5e4664 Replace Bzip2Uploader#decompressed with #decompressed_path 2013-08-13 19:52:53 +02:00
Marcin Kulik
40da1823d6 Do not send X-Frame-Options header in embeddable widget action 2013-08-09 08:54:09 +02:00
Marcin Kulik
c22cb1cdcc Get rid of the asciicast comments that are not used anymore 2013-08-08 15:25:27 +02:00
Marcin Kulik
20645271a1 Update models and helpers to use new Rails 4 syntax 2013-08-08 15:08:11 +02:00
Marcin Kulik
3f879e79da Ensure terminal gets released even in case of an exception 2013-08-06 14:00:30 +02:00
Marcin Kulik
0a8cc6ff8a One more attempt to fix the memory leak 2013-08-06 12:50:38 +02:00
Marcin Kulik
4767442875 Make Snapshot#crop return the snapshot of exact requested height 2013-08-06 00:37:37 +02:00
Marcin Kulik
7c9a9842af Adjust color of the play prompt triangle to match color thumbnails better 2013-08-06 00:37:37 +02:00
Marcin Kulik
ade244e5d0 Fix rendering of snapshot in the player 2013-08-06 00:37:37 +02:00
Marcin Kulik
62be399455 Refactor player styles and use them for snapshots 2013-08-06 00:37:36 +02:00
Marcin Kulik
5ecf209a53 Add some TODO comments 2013-08-06 00:37:36 +02:00
Marcin Kulik
7d5a544650 Generate thumbnails from JSON snapshot via Snapshot/SnaphotPresenter 2013-08-06 00:37:36 +02:00
Marcin Kulik
ddf0e57b39 Update SnapshotWorker to generate colorful snapshots 2013-08-06 00:37:35 +02:00
Marcin Kulik
c8d574b243 Serialize asciicast snapshot just as JSON 2013-08-06 00:37:35 +02:00
Marcin Kulik
59e31baa1b Process incoming asciicast with AsciicastCreator 2013-08-06 00:37:35 +02:00
Marcin Kulik
86a4662fe5 Abstract stdout_data and stdout_timing as a single value object 2013-08-06 00:37:34 +02:00
Marcin Kulik
caa6c52759 Rename stdout to stdout_data, stdin to stdin_data 2013-08-06 00:37:34 +02:00
Marcin Kulik
55fe325ec4 Add Bzip2Uploader for uploading, retrieving and decompressing bzip2 files 2013-08-06 00:37:34 +02:00
Marcin Kulik
1aefeb4d6b Introduce BaseUploader with common store_dir for all uploaders 2013-08-06 00:37:34 +02:00
Marcin Kulik
56a2bb2378 Fix Snapshot#crop to not burn when height > line count 2013-08-06 00:37:33 +02:00
Marcin Kulik
d93ac84c21 Refactor AsciicastDecorator#thumbnail to render colorful thumbnail 2013-08-06 00:37:33 +02:00
Marcin Kulik
86f728364c Add Brush model 2013-08-06 00:37:32 +02:00
Marcin Kulik
e947524533 Add a simple model representing a terminal snapshot 2013-08-06 00:37:32 +02:00
Marcin Kulik
8daf2d0f7f Serialize Snapshot with Snapshot::Serializer 2013-08-06 00:37:32 +02:00
Marcin Kulik
a10a447c53 Make the snapshots the hashes 2013-08-06 00:37:32 +02:00
Marcin Kulik
49df9e9082 Make SnapshotWorker a Sidekiq based worker 2013-07-05 14:09:43 +02:00
Marcin Kulik
5087533126 Do the snapshotting in the service object 2013-07-05 14:09:42 +02:00
Marcin Kulik
e85104179e Fix unbzipping of stdout files 2013-06-18 15:25:54 +02:00
Marcin Kulik
a81d9dadb3 Use tsm gem for snapshot generation 2013-06-14 22:52:55 +02:00
Marcin Kulik
4e1f01dc99 Add logging to SnapshotWorker 2013-06-14 00:11:30 +02:00
Marcin Kulik
2d6b60e027 Fix AsciicastDecorator#embed_script 2013-06-13 22:58:47 +02:00
Marcin Kulik
df6bed3541 Merge branch 'master' into embed 2013-06-13 22:40:17 +02:00
Marcin Kulik
8a52605266 Add spec for AsciicastDecorator#embed_script 2013-06-13 22:39:34 +02:00
Marcin Kulik
013eade63c Count view only once in the same browser 2013-06-13 22:26:27 +02:00
Marcin Kulik
feec862f99 Display embed link on the asciicast's page 2013-06-13 11:45:00 +02:00
Marcin Kulik
20cf58e89b Make the render expose its width and height 2013-06-12 23:58:24 +02:00
Marcin Kulik
f0b66b6399 Center overlays according to viewport/container width 2013-06-12 23:50:31 +02:00
Marcin Kulik
e182cce8ee Don't use document.write to insert the player into the DOM 2013-06-12 22:47:39 +02:00
Marcin Kulik
f22837f4e9 Add "embed" css/js bundles 2013-06-12 21:52:15 +02:00
Marcin Kulik
d1dcd08861 Initial version of iframe-based embedding 2013-06-12 21:33:30 +02:00
Marcin Kulik
7a3bc80340 Prevent progress bar to span more than 1 line 2013-06-12 11:27:41 +02:00
Marcin Kulik
22ae493513 Fix terminal's line-height even more! 2013-06-12 11:07:54 +02:00
Marcin Kulik
1e57bee513 Fix terminal line's line-height 2013-06-11 17:41:24 +02:00
Marcin Kulik
49be5d6fe2 Convert layout to slim 2013-06-10 17:15:52 +02:00
Marcin Kulik
597eb5174b Use old-sass syntax for stylesheets 2013-06-01 19:30:26 +02:00
Marcin Kulik
127f68a778 Fix Api::CommentsController#index 2013-05-28 11:13:01 +02:00
Marcin Kulik
87128c0873 Remove commented out code 2013-05-28 11:13:01 +02:00
Marcin Kulik
078b04e3a1 Fix asciicast page when its author has other asciicasts 2013-05-28 11:13:01 +02:00
Marcin Kulik
4c5c0c7d0e Fix logging in after draper upgrade 2013-05-28 11:13:01 +02:00
Marcin Kulik
7659fe722e Fix UsersController#show 2013-05-28 11:13:01 +02:00
Marcin Kulik
a6bbdf7a39 Load homepage asciicast in before_filter 2013-05-28 11:13:01 +02:00
Marcin Kulik
3e2bc439a0 Make sure docs pages are fine 2013-05-28 11:13:01 +02:00
Marcin Kulik
62a3ffed92 Don't check for webkit anymore when enabling WebWorker player 2013-05-28 11:13:00 +02:00
Marcin Kulik
f5a91c680b Fix draper vs kaminari issue 2013-05-28 11:13:00 +02:00
Marcin Kulik
5f53c66639 Update decorators to use new Draper API 2013-05-28 11:13:00 +02:00
Marcin Kulik
95a0e44798 Use http url for avatar in footer 2013-05-28 11:12:59 +02:00
Mike Fiedler
fee3e947bd Fixed upgrade command
`brew update foo` => This command updates brew itself, and does not take formula names.

Hence: `brew upgrade asciiio` => Error: asciiio-HEAD already installed
2013-05-20 22:14:15 -03:00
Marcin Kulik
2e8fc48473 Set MAX_DELAY constant on model, not decorator 2012-12-18 21:38:49 +01:00
Marcin Kulik
9977e69ace Fix ensure_owner 2012-12-11 12:22:25 +01:00
Marcin Kulik
50f84295af More space between asciicast description and thumbnails 2012-12-10 23:40:09 +01:00
Marcin Kulik
b284781620 Cover all scenatios in asciicasts controller specs 2012-12-09 21:25:45 +01:00
Marcin Kulik
11bab12afb Extract AsciicastJSONDecorator from AsciicastDecorator 2012-12-09 21:23:37 +01:00
Marcin Kulik
9ac2c49180 Custom scopes for paginated lists 2012-12-09 21:22:12 +01:00
Marcin Kulik
1e07fafb2e When terminal_type is empty also return '?' 2012-12-09 16:14:26 +01:00
Marcin Kulik
816e09703a Cleanup author/profile links 2012-12-08 22:29:21 +01:00
Marcin Kulik
3b2dc7f998 Simplify author_profile_link 2012-12-08 20:51:20 +01:00
Marcin Kulik
780dff5db1 Decorate users in UserMailer 2012-12-08 20:51:20 +01:00
Marcin Kulik
a1fad7ccb7 Decorate User#nickname 2012-12-08 20:51:20 +01:00
Marcin Kulik
80619928a8 Decorate current_user 2012-12-08 20:51:19 +01:00
Marcin Kulik
3f53f2ad50 Use decorates_association instead of custom method 2012-12-08 20:51:19 +01:00
Marcin Kulik
c1e576e5dd "Other asciicasts by this user" 2012-12-08 20:51:19 +01:00
Marcin Kulik
af95da5fe8 Pass asciicasts to 'previews' partial explicitly 2012-12-08 20:51:19 +01:00
Marcin Kulik
cd16719be6 It's asciicast, not preview 2012-12-08 19:59:56 +01:00
Marcin Kulik
2c006d5fdf Improve AsciicastDecorator#description 2012-12-08 18:21:24 +01:00
Marcin Kulik
0e2f78af1d Split asciicasts#show into more partials 2012-12-08 18:11:03 +01:00