126 Commits

Author SHA1 Message Date
Remy Sharp
b02dad6d2d revert domain cookie change - seems to break login - crap 2013-09-13 09:45:56 +01:00
Remy Sharp
38105883b4 Fixed redirect on team pages to login
BUT: requires clearing of cookies for it to work first. Not ideal...ref #857
2013-09-12 16:45:50 +01:00
Remy Sharp
e3718aca56 s/runnerHost/runner/g 2013-09-12 12:04:15 +01:00
Dustin Miller
be3ab85f96 Added option url.runnerhost, remove regexp jsbin to run.jsbin in URL 2013-09-09 17:58:33 -05:00
Remy Sharp
7c3452ad52 asthetics 2013-09-02 22:23:13 +01:00
Remy Sharp
71c4a23483 Merge branch 'ably-forks-api-fixup' 2013-09-02 22:02:02 +01:00
Remy Sharp
095bf1dad0 Fixed #754 no longer requires config with github id
If there's no github config found, then it returns a dummy function.
2013-08-05 21:56:40 +01:00
Remy Sharp
d2cbb1838b resolve merge conflict 2013-07-14 10:43:39 +01:00
Matthew O'Riordan
a97f5daa11 Allow any config property to be overridden with Env var
Using format JSBIN_[KEY]_[KEY]=whatever

for example the following config setting:
   {
     "url": {
       "host": "localhost:3300"
     }
   }
can be overriden with the following environment variable set
JSBIN_URL_HOST=my.url.com
2013-07-07 17:06:44 +01:00
Tom Ashworth
746dd02d20 Merge branch 'master' into feature/github-login-521
Conflicts:
	lib/app.js
2013-07-04 11:14:28 +01:00
Remy Sharp
40b7700b18 Merge pull request #652 from remy/fix/xss-651
Prevent XSS to main jsbin window by running all live rendering inside of run.jsbin.com (also supports local installs). Also exposes a feature to allow embeddable runner *only* allowing users to create their own UI to inject code.
2013-07-04 02:56:42 -07:00
Tom Ashworth
0fe84eafe8 Move runner to dynamix render and add build script. 2013-07-03 16:40:11 +01:00
Tom Ashworth
e484278835 Redirect gist.jsbin to correct gist URL. 2013-06-26 13:43:28 +01:00
Tom Ashworth
482a3daa84 Hook Github to existing user. 2013-06-24 11:14:13 +01:00
Tom Ashworth
bb041bface Redirect insecure connections. 2013-06-19 10:36:14 +01:00
Tom Ashworth
568b5a8da0 Detect SSL and alter URLs to match. 2013-06-18 16:24:39 +01:00
Tom Ashworth
2d5195bbc9 Support creating a new user with gihub, but sessions are broken. 2013-06-18 13:44:55 +01:00
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