109 Commits

Author SHA1 Message Date
Tom Ashworth
aeee052d79 Add github buttons and routes. 2013-06-17 16:54:58 +01:00
Remy Sharp
e34b4a97dd Merge branch 'ably-forks-api' 2013-06-11 12:43:10 +01:00
Matthew O'Riordan
14b984f55c Allow client interface to be turned on/off with ENV vars
Building on pull request https://github.com/remy/jsbin/pull/610, this allows these settings to be configured as an Environment variable.  This is needed for Heroku support, see pull request https://github.com/remy/jsbin/pull/607
2013-05-27 13:50:24 +01:00
Tom Ashworth
c6df7180df Support switching off user-related menus via config. 2013-05-24 15:44:58 +01:00
Matthew O'Riordan
a234941cf3 API can require an API key for a user (disallow anonymous) 2013-05-20 07:18:57 +02:00
Matthew O'Riordan
52fa78aa31 API middleware adding req.isApi 2013-05-19 16:36:03 +02:00
Matthew O'Riordan
364dec1b25 Modify middleware to bypass CSRF for exact or regex matches 2013-05-19 14:16:48 +02:00
Matthew O'Riordan
3457710bbd Create Bin via API route 2013-05-19 11:49:43 +02:00
Remy Sharp
c6b09e08d6 echo version when jsbin runs 2013-02-21 11:20:57 +00:00
Tom Ashworth
61db8cd38e Monitoring spikes, db method calls and errors. 2013-02-14 15:30:33 +00:00
Remy Sharp
9b7fa6bb2f Merge branch 'master' of github.com:remy/jsbin 2013-01-10 14:45:16 +00:00
Remy Sharp
39f5a2404e upgraded to Express 3.0.x 2013-01-10 14:45:12 +00:00
Tom Ashworth
820405dd13 Update to make mergable. 2012-12-31 13:37:35 +00:00
Tom Ashworth
4c4f83a45c Add max age of a year to cookies, fix 408 2012-12-11 14:25:12 +00:00
Aron Carroll
2caed53c1c Improve API for setting max request limit
Renamed the key to "max-request-size" and allow units to be provided
rather than just a number. The default is now 1MB.
2012-10-27 18:11:52 +01:00
Aron Carroll
fd3493da4d Include the limitContentLength() middleware in the app 2012-10-11 19:50:19 +02:00
Aron Carroll
916efcd08c Remove support for parsing multipart form content
This is causing errors when users create bins containing multipart forms
and submit them. The server attempts to parse them before they hit the
router layer. So now only json and url encoded data is supported.
2012-10-11 10:19:15 +02:00
Aron Carroll
e96cbc7a07 Add soak and flatten as npm modules. #338
This allows JSBin to be installed behind networks that block the
git:// protocol.
2012-09-19 09:34:41 +01:00
Remy Sharp
ce2a18b695 Logger was being ignored! 2012-08-16 16:43:54 +01:00
Aron Carroll
d826022300 Lint and reinstating logging 2012-08-10 13:57:07 +01:00
Remy Sharp
824a174862 updated csrf to support custom ignored routes 2012-08-10 13:06:51 +01:00
Aron Carroll
9654168e7b Remove debugging modules... 2012-08-03 15:49:34 +01:00
Aron Carroll
d9c2cd4a83 Lint the node source 2012-08-03 13:04:48 +01:00
Remy Sharp
e347346dc0 Allow JSBIN_URL to change BOTH the port and the url port - important for the executable 2012-07-27 18:41:45 +01:00
Remy Sharp
de689c3165 Allow developers to hook in before and after jsbin server configure 2012-07-27 18:11:12 +01:00
Remy Sharp
0b18c1edfe jsbin binary funky times - support logger on command line 2012-07-27 14:57:03 +01:00
Remy Sharp
31960336d7 Make logger a config option 2012-07-27 14:18:05 +01:00
Aron Carroll
d6b97dbf03 Set default timezone to UTC. Fixes #232
We need to run node in the same timezone as MySQL uses to store it's
dates so that the node-mysql module coerces the dates correctly. So by
default we assume UTC but this can be configured using the "timezone"
option.
2012-07-20 12:36:12 +01:00
Aron Carroll
66f880f500 Allow email to be disabled by setting "email": null 2012-07-14 12:20:52 +01:00
Aron Carroll
666eea776b Mailer now accepts any options supported by nodemailer
Config now uses same format as database in that there is an adapter
Sendmail/SMTP/SES and a matching key of options. Sendmail is used
by default. Closes #224.

Usage:

    "adapter": "SMTP",
    "SMTP": {
      "service": "Gmail",
      "auth": {
        "user": "user@example.com",
        "pass": "somelongpassword"
      }
    }

See: https://github.com/andris9/Nodemailer/ for a list of options.
2012-07-14 11:28:02 +01:00
Aron Carroll
850da94579 Improve handling of mailer when no credentials are provided
Now gracefully handle missing email credentials rather than blowing up.
2012-07-13 22:37:14 +01:00
Aron Carroll
de1d994346 Improved use of url.prefix setting
Now instead of mounting jsbin inside another express() instance we
simply mount the router and static files under the prefix.
2012-07-13 15:49:37 +01:00
Aron Carroll
67c83fb298 Tidy up the port code
We now detect the port from the POST environment variable. If this fails
we extract it from the url.host setting. This then available via
app.set("port") for use in your own modules.
2012-07-13 15:29:29 +01:00
Aron Carroll
31fda88c32 Move all configuration into a app.configure() block 2012-07-13 14:43:50 +01:00
Aron Carroll
f4f122a654 Move routes into a separate file to keep things tidy 2012-07-13 13:55:33 +01:00
Aron Carroll
74c7ed3884 Move the hogan renderer into a separate file 2012-07-13 13:38:15 +01:00
Aron Carroll
55a9044dda Set NODE_ENV from the config file unless already defined 2012-07-13 13:33:10 +01:00
Remy Sharp
fc73f1525d Live now moved to "/watch" 2012-07-08 00:09:23 +01:00
Remy Sharp
1a95be4a98 Reversing @aron's port logic (this broke launching the server behind a proxy) 2012-07-07 10:05:20 +01:00
Remy Sharp
2e411b26c9 Don't read the port from the env - because we can't proxy with it 2012-07-07 09:56:04 +01:00
Aron Carroll
69a623952a Remove gobo, may he rest in peace 2012-07-07 00:03:56 +01:00
Aron Carroll
ed926fafd5 Sort out the port assignment in app.js 2012-07-06 23:58:40 +01:00
Aron Carroll
40ad33c178 Define the "basepath" app setting 2012-07-06 22:27:34 +01:00
Aron Carroll
95f0b688f6 Add app.connect() function to allow database connections 2012-07-06 21:49:29 +01:00
Aron Carroll
1ea3f7cfae Show flash messages when requesting email reset 2012-07-06 16:58:47 +01:00
Aron Carroll
ba3281ab94 Using new account route handler 2012-07-06 16:26:28 +01:00
Remy Sharp
57ce5ec7ac Allow user to use permalink /rem/last for easy device testing 2012-07-05 00:26:14 +01:00
Remy Sharp
3c0f8083ff Adding static support 2012-07-03 23:21:09 +01:00
Remy Sharp
bca1846d45 Disabled helper - it wasn't there to allow for proxying 2012-07-03 23:03:42 +01:00
Remy Sharp
c54f28fc52 Fixed order of code, helper was being created with production set to false before reading config 2012-07-03 22:46:47 +01:00