Commit graph

330 commits

Author SHA1 Message Date
Iván Eixarch
9ec8a6e3d3 back to globalize... don't work :S 2012-11-28 04:02:55 +01:00
Iván Eixarch
97d77ea089 added my name in header 2012-11-27 00:11:45 +01:00
Iván Eixarch
6fe6103632 added languages for translatewiki 2012-11-26 23:40:31 +01:00
Iván Eixarch
460200981e Merge remote branch 'ether/develop' 2012-11-26 02:21:18 +01:00
Iván Eixarch
0250f8d55c Merge remote branch 'ether/develop' 2012-11-23 22:57:05 +01:00
Iván Eixarch
cc60b82a6e Import html by default and allow basic import/export features without abiword 2012-11-23 22:55:25 +01:00
Iván Eixarch
ef3231efd2 cleaning 2012-11-23 19:06:18 +01:00
Iván Eixarch
d0a17d5471 test import converting to html instead to txt by default 2012-11-23 18:18:03 +01:00
Wikinaut
eed6b752d4 initial https version fix #1148 2012-11-22 10:12:58 +01:00
Hyacinthe Cartiaux
d6027726e6
Fix urls, use github.com/ether
Signed-off-by: Hyacinthe Cartiaux <hyacinthe.cartiaux@uni.lu>
2012-11-22 01:12:30 +01:00
Iván Eixarch
1e71797ad5 Replace Globalize with languages module 2012-11-20 19:46:17 +01:00
John McLear
d6c0f96084 Merge pull request #1177 from marcelklehr/fix/optimize-l10n-loading-times
optimize l10n loading times
2012-11-17 07:31:21 -08:00
John McLear
73eafb92c2 Merge pull request #1178 from marcelklehr/fix/tests
Fix/tests
2012-11-17 07:31:03 -08:00
Marcel Klehr
364e6928b5 Make tests work on windows 2012-11-17 16:28:54 +01:00
Marcel Klehr
e131f60071 Serve English strings directly with /locales.ini 2012-11-17 14:33:01 +01:00
Marcel Klehr
a39faf9368 Fix #1115 correctly reference session cookie 2012-11-17 14:19:09 +01:00
John McLear
a3ff346547 Merge pull request #1152 from marcelklehr/fix/updatePadClients-error
PadMessageHandler: Make sure sessioninfos[session] still exists before p...
2012-11-14 10:44:30 -08:00
Marcel Klehr
f5563ab704 Move locale detection to the client
* l10n.js is doing locale detection already, so
we shouldn't interfere but help it do its job
* this should also fix the ?lang embed parameter
* Set language from cookie on page init for l10n
to load the right translation
2012-11-14 17:01:59 +01:00
Peter 'Pita' Martischka
6de7634357 merged develop back in 2012-11-13 07:43:48 -08:00
Peter 'Pita' Martischka
4c095202bd Merged branch feature/frontend-tests 2012-11-13 07:29:57 -08:00
Marcel Klehr
19c12239f6 Simplify lang setting in pad.html template 2012-11-12 18:04:21 +01:00
Marcel Klehr
7021a8b885 Add pad setting for UI lang 2012-11-12 16:49:15 +01:00
Marcel Klehr
a3504f70c4 Add i18n component 2012-11-10 14:12:17 +01:00
Marcel Klehr
e24ed46a08 PadMessageHandler: Make sure sessioninfos[session] still exists before pushing data to user. 2012-11-10 10:47:12 +01:00
Marcel Klehr
d26f5d64f7 Fix #1130 Reload settings on /admin/settings server restart 2012-11-06 17:35:52 +01:00
Marcel Klehr
e702a86c9f Add ability to reload settings 2012-11-06 17:35:05 +01:00
John McLear
28bcdcec25 Merge pull request #1124 from Wikinaut/fix-issue-377-add-favicon-url-settings-parameter
fix #377: add favicon url as optional settings.json parameter
2012-11-06 03:08:25 -08:00
John McLear
b9541f938b Merge pull request #1127 from Pita/admin-page
add express endpoint for admin index.html
2012-11-05 04:59:01 -08:00
John McLear
3766858dd2 add express endpoint for admin index.html 2012-11-05 12:58:02 +00:00
John McLear
b6a331b9ec Merge pull request #1120 from Pita/feature/settings-admin
Modify Server Settings in /admin/settings
2012-11-05 04:48:59 -08:00
John McLear
dfa0ae9181 Merge pull request #893 from marcelklehr/feature/plugin-settings
Add a new section in settings.json specifically for installed plugins.
2012-11-05 04:48:47 -08:00
Wikinaut
a575de7884 allow favicon.ico as pad name 2012-11-04 13:02:55 +01:00
Wikinaut
c92b5283fd fix #377: add favicon url as optional settings.json parameter 2012-11-04 11:26:17 +01:00
Peter 'Pita' Martischka
6408581adb merged develop back in 2012-11-03 18:16:36 +00:00
johnyma22
2f123970e6 Make express restart - I think this reloads settings 2012-11-02 15:21:12 +00:00
johnyma22
3ca450fefc make the server save settings 2012-11-02 15:10:01 +00:00
johnyma22
89e38ed4c2 Start putting file system together for admin settings, no where near complete 2012-11-02 13:16:15 +00:00
Marcel Klehr
6d543fbcb3 Add a setting for customizing the app title
the app title is inserted into the <title> of all tepmlates
2012-11-02 12:30:57 +01:00
Marcel Klehr
2d6e577683 Put up some '/admin doesn't exist' notice. 2012-11-01 19:45:26 +01:00
John McLear
5629063b9c Allow robots.txt to be custom 2012-11-01 13:32:04 +00:00
Marcel Klehr
ed2faa68c9 Pass on the req object to eejs hooks 2012-11-01 13:44:59 +01:00
Marcel Klehr
059f6d280e Pass on the render args to all eejs hooks
eejs.require('foo', {..render args..}) will
be passed on to all eejsBlock_X hooks as `hookContext.renderContext`
2012-11-01 13:44:06 +01:00
Peter 'Pita' Martischka
0420b89382 Merge pull request #1097 from Pita/develop
Pull in Develop branch so we can test latest develop
2012-10-29 07:25:34 -07:00
Marcel Klehr
e447a6fade Make sure npm is initialized before requiring things (fix #1092) 2012-10-28 18:02:49 +01:00
Peter 'Pita' Martischka
9537892c61 wrap spec files with a describe 2012-10-27 17:29:17 +01:00
Peter 'Pita' Martischka
cac27c864a load list of spec files from the server 2012-10-27 17:05:26 +01:00
Peter 'Pita' Martischka
cc7ddddd2f redirect from frontend to frontend/ 2012-10-27 16:41:17 +01:00
Peter 'Pita' Martischka
f59b643aa6 Merge branch 'develop' of github.com:Pita/etherpad-lite into feature/frontend-tests 2012-10-27 16:32:37 +01:00
Randy
596e20e123 Add default port of process.env.PORT if port isnt specified in settings.json 2012-10-25 10:21:34 -07:00
John McLear
d7ec050f34 Merge pull request #1035 from amtep/develop
Guard against malicious clients in USERINFO_UPDATE handling
2012-10-11 08:27:27 -07:00
Marcel Klehr
bedc51d2e3 Merge pull request #1057 from dmitryuv/sync-processing
fix for error handling in the callback code
2012-10-11 08:08:47 -07:00
Marcel Klehr
b0099a4aba Add plugin-specific sections in settings.json
Settings for specific plugins are written down as below:
{
  ...
  "ep_pluginname": {
    "foo":"bar"
  }
  ...
}
2012-10-11 16:22:40 +02:00
Dmitry
dbcdc2f956 fix for error handling in callback code
The callback code does not follow error handling guidelines, thus always
receiving NULL instead of results array.
2012-10-11 18:07:45 +04:00
Marcel Klehr
1461c4e19a Merge pull request #1056 from dmitryuv/sync-processing
Fix variable name in handleMessageHook
2012-10-11 07:05:51 -07:00
Dmitry
0fa954c1a0 fixed variable name in handleMessageHook
the code would never work as expected with this type
2012-10-11 17:51:57 +04:00
Chad Weider
9d1274abaf Drop method deprecated in Express 3.x. 2012-10-09 01:32:21 -07:00
Peter 'Pita' Martischka
ca6ebd6151 major restructering of the front end test framework 2012-10-08 00:34:29 +02:00
John McLear
90373964d3 Remove two instances of the same function name
Both functions did the same thing, the first function was buggy.  Might be worth someone looking through the history of this file and pointing out when I made this heinous error ;)
2012-10-06 02:36:51 +02:00
John McLear
db1a1a0e3e Merge pull request #1034 from d-a-n/develop
Added hooks for pad events create/edit/load/remove
2012-10-05 17:28:40 -07:00
johnyma22
c74aed986e Merge branch 'develop' of github.com:Pita/etherpad-lite into feature/frontend-tests 2012-10-04 18:55:57 +01:00
d-a-n
a521a12583 Changed pad_id to padID to follow projct standards. 2012-10-03 15:50:43 +03:00
d-a-n
358e481731 Changed pad hook names to follow naming conventions. Arguments will now be passed as hash. 2012-10-03 13:41:40 +03:00
Marcel Klehr
2684a1d295 Merge branch 'develop' into express-v3
Conflicts:
	src/node/hooks/express/errorhandling.js
2012-10-03 10:09:00 +02:00
Richard Braakman
85b44119ae USERINFO_UPDATE: construct a new message for broadcast
The server was reusing the client's message when broadcasting userinfo
updates. This would allow a malicious client to insert arbitrary fields
into a message that the other clients would trust as coming from the
server. For example, adding "disconnect" or renaming other authors.

This commit fixes it by having the server construct a new message with
known fields before broadcasting.
2012-10-02 23:27:30 +03:00
d-a-n
64a3d60b94 Added pad hooks (create, load, edit, remove) 2012-10-02 22:30:13 +03:00
Marcel Klehr
7656001cb5 Don't shut down the whole server, if error handling middleware is called.
The errors passed to error handling middleware aren't that severe, so it's fine to just stay alive...
2012-10-02 20:11:18 +02:00
Peter 'Pita' Martischka
ba4ebbba3b Setted up an enviroment for frontend tests, first steps 2012-10-02 00:35:43 +01:00
Richard Braakman
2e72a1e489 Prevent server crash in handleClientReady
The client might have disconnected between callbacks so don't try to
write to the session before checking this. The main callback of this
function now has a single check at its top.

Removed a redundant check halfway through the callback.

Also normalized use of client.id for the session index instead of a mix of
client.id and sessionId.

Added some explanatory comments.
2012-09-28 23:23:00 +03:00
Richard Braakman
413ddb393e Add some explanatory comments to handleUserChanges() 2012-09-28 22:49:20 +03:00
Richard Braakman
7aaef01346 Prettify session handling in handleUserChanges
Also add a comment to explain what's going on with thisSession.
No changes in behavior.
2012-09-27 23:07:00 +03:00
Richard Braakman
f1b4206cad Fix crash when client submits changeset based on too-old revision
We had a problem with the server running out of stack space if a client
submitted a changeset based on a revision more than about 1000 revs old.
(944 was our cutoff but yours may vary). This happened in the wild with
about 30 people editing via flaky wifi. A disconnected client would try
to submit a fairly old changeset when reconnecting, and a few minutes
was enough for 30 people to generate that many revs.

The stack kept growing because pad.getRevisionChangeset was being answered
from the cache, so no I/O interrupted the callback chain. (This was seen with
mysql, I don't know about other backends.)

This patch forces a nextTick every 200 revisions to solve this problem.
2012-09-26 03:01:59 +03:00
Richard Braakman
e16008b371 Fix sessioninfos race that can cause crash during USER_CHANGES handling
When stress testing etherpad-lite we occasionally got this error:

TypeError: Cannot read property 'author' of undefined
    at /home/etherpad/etherpad-lite/src/node/handler/PadMessageHandler.js:556:47

handleUserChanges was accessing sessioninfos[client.id].author in a callback,
after spending some time in the loop that updates the changeset to the
latest revision. It's possible for a disconnect request to be processed
during that loop so the session might no longer be there.

This patch fixes it by looking up the author at the start of the function.
2012-09-26 03:01:59 +03:00
Marcel Klehr
0c9c1f514f Fix socket.io auth: Use connect to parse signed cookies (migrate to express v3) 2012-09-22 16:03:40 +02:00
Marcel Klehr
0f436d5916 Migrate error handling middleware to express v3 2012-09-22 15:22:15 +02:00
Marcel Klehr
794c3d1afe Set secret on cookieParser (migrate to express v3) 2012-09-22 14:05:41 +02:00
Marcel Klehr
71579d1478 Fix res.send (migrate to express v3) 2012-09-22 13:51:39 +02:00
Marcel Klehr
ff7cf991c9 Upgrade log4js to v0.5 2012-09-21 21:39:08 +02:00
Marcel Klehr
4416210471 Differentiate between http server and express app 2012-09-21 17:12:22 +02:00
Marcel Klehr
a72ade4494 Fix async.forEach in MultiSession code 2012-09-19 17:48:26 +02:00
Marcel Klehr
b9da0e187e Revert "Fixed foreach loop on session IDs, was breaking EP on single session in cookie."
This reverts commit 443a71bc9c.

	modified:   src/node/db/SecurityManager.js
2012-09-19 17:42:36 +02:00
John McLear
0883043eb9 Merge pull request #1014 from marcelklehr/feature/list-all-groups
Add listAllGroups API endpoint
2012-09-18 15:36:19 -07:00
johnyma22
443a71bc9c Fixed foreach loop on session IDs, was breaking EP on single session in cookie. 2012-09-18 16:30:26 +01:00
Marcel Klehr
f8f002adc0 Add listAllGroups API endpoint
Adds a database key that lists all groups
2012-09-17 23:03:56 +02:00
Marcel Klehr
bbc8848af3 Still support API endpoints of v1 in v1.1 2012-09-17 16:29:39 +02:00
Marcel Klehr
ad16c0d0d4 Bump API version to v1.1 2012-09-13 16:13:54 +02:00
johnyma22
c8b6d3b4f3 attempt to put correct init in right place but could be wrong 2012-09-12 19:38:53 +01:00
johnyma22
603f251824 error handling and close is removed in express 3 2012-09-12 19:34:33 +01:00
John McLear
d44c7f0bb5 Merge pull request #994 from cweider/parent-plugins
Parent plugins
2012-09-12 04:52:38 -07:00
John McLear
389e0d09b0 Merge pull request #740 from cweider/plugin-cleanup
Plugin cleanup
2012-09-12 04:52:23 -07:00
Chad Weider
feeab5c1b2 Fix cache headers for missing files. 2012-09-11 22:27:14 -07:00
Chad Weider
b691606c4e Replace ParentRequire hack.
Instead of hacking with the internals of require, make client_plugins aware
and capable of sharing behavior.
2012-09-11 21:16:47 -07:00
Chad Weider
1258ed3a0d Split client and server plugin functionality.
There is virtually no shared code for the client, extract it into its own
module and do away with the switches.
2012-09-11 21:16:47 -07:00
Marcel Klehr
d05d587f21 Don't break if there is no session cookie. 2012-09-11 20:59:19 +02:00
John McLear
a4bd92c184 Merge pull request #983 from Pita/feature/multiple-api-versions
Add support for multiple api versions
2012-09-11 11:29:24 -07:00
Chad Weider
03bcd07741 Use packaged version of Tinycon. 2012-09-09 18:18:59 -07:00
Chad Weider
1541237654 Use packaged version of UNorm. 2012-09-09 18:18:59 -07:00
Chad Weider
0da4acfdb5 Use packaged edition of async. 2012-09-09 18:18:59 -07:00
Chad Weider
8e735b0841 Use packaged edition of underscore. 2012-09-09 18:18:59 -07:00
Chad Weider
b47f6ae905 Use packaged edition of security module. 2012-09-09 18:18:59 -07:00
Chad Weider
c4fa2ecddb Don't prefix libraries that are prefixed by '$'. #hack 2012-09-09 18:18:58 -07:00