Commit graph

376 commits

Author SHA1 Message Date
muxator
b1a0e14ee2 AbsolutePaths: written findEtherpadRoot()
This is just a function (with an ugly side effect for caching purposes) that
heuristically tries to compute the Etherpad installation path when running under
Unix and win32 (they have different file system layouts).

This path can be used by Etherpad as a base for all the relative paths, in order
to be deterministic and not depending on cwd.
2018-08-23 07:02:45 +02:00
muxator
cbce3c1b08 AbsolutePaths: written utility function popIfEndsWith()
It will be necessary in the next commit to evaluate the Etherpad base
install path.
2018-08-23 07:02:45 +02:00
muxator
dbf7eff1fc AbsolutePaths: module for deterministically computing relative Etherpad paths
Empty for now.
2018-08-23 07:02:45 +02:00
muxator
ec5573f88c settings, APIHandler: generate more informative logs 2018-08-21 00:05:15 +02:00
muxator
b635371d52 settings: the default dirty.db location should be var/dirty.db
This is the location that is choosen by default when Etherpad starts with no
settings.json file.
It was different than the one contained into setting.json.template.
2018-08-21 21:57:13 +02:00
muxator
cb07805022 NodeVersion: take responsibility for ugly code 2018-08-22 00:12:53 +02:00
muxator
9d815c58b8 deprecations: get rid of DEP0005 about Buffer()
Similar code still lives in some dependent libraries.
It will be updated when upgrading the dependencies.

Fixes #3446
2018-08-14 19:45:03 +02:00
muxator
6d5a6cf795 caching_middleware: removed unnecessary escape in regex
Found by eslint with "no-useless-escape"
2018-08-14 19:33:10 +02:00
Masaru Nagaku
392f39b623 fix bug for getPadPlainText 2018-08-11 11:02:20 -03:00
Muh Muhten
3cedf474e5 Fix misparse of port when binding Unix socket
The hostname:port of URIs used in Minify are currently bogus and refer
to localhost only for historical reasons; there's no reason to retain
them and omitting them avoids generating an invalid URI when "port" is
not an integer.

Context: settings.port is passed to express's listen; if not numeric, it
is used a filename for a Unix domain socket.
This allows e.g. starting a server to be reverse-proxied on a multi-user
system, using the filesystem to handle access control and avoiding need
to allocate port numbers.

Before this change, etherpad-lite starts without error when configured
to listen on a Unix domain socket in this manner. However, `pad.js` and
`ace2_common.js` are generated incorrecting, causing an error
"Uncaught Error: The module at "ep_etherpad-lite/static/js/rjquery" does not exist."
when loading the editor:

When settings.port is a non-numeric string, e.g. `etherpad.sock`, a URI
of the form `http://localhost:etherpad.sock/static/js/rjquery.js` is
generated and parsed to find the file needed. In this case, the file
searched for is `:etherpad.sock/static/js/rjquery.js`, rather than the
expected `static/js/rjquery.js`. No such file exists, and the required
code is silently omitted from the bundle.

As a workaround, hard-code a (meaningless) hostname which can be parsed
correctly, since the current code makes no use of it anyway.
2018-08-10 01:57:30 +02:00
Michael Braun
971853ca58 remove -k argument as it is currently for both sessionkey and apikey 2018-08-09 19:42:14 +02:00
muxator
a69f8a3db9 runtime: deprecate Node <= 7. From Etherpad 1.8.0 minimum Node version will be 8 2018-07-28 23:33:24 +02:00
muxator
7544585908 runtime: enforce minimal node version to 6.9.0
Etherpad 1.6.6 does not run on node <= 5 already.
Node 6.9 is the first LTS release in the 6 series, and comes with npm 3.10.8.

Declarations in package.json are advisory unless the user has set
`engine-strict` config flag.

Updated the docs accordingly.
2018-07-28 23:33:24 +02:00
ilmar
a96aa88dad merge with ether/etherpad-lite develop branch 2018-05-21 16:18:40 +03:00
ilmar
4feccff530 merge with develop branch 2018-05-21 15:41:49 +03:00
ilmar
3c66425b60 List indent fix 2018-05-21 13:07:08 +03:00
ilmar
016497dbb4 prevLine/nextLine check fix 2018-05-14 22:57:15 +03:00
ilmar
47e20a2f49 line parsing fix 2018-05-03 00:07:07 +03:00
ilmar
6684f9bfe8 hook callAll to aCallAll 2018-05-02 11:45:48 +03:00
ilmar
7cc7bb1abc upgrade to 1.6.5 2018-04-24 12:25:56 +03:00
ilmar
d6fa065ef2 export html to original structure 2018-04-24 12:13:31 +03:00
ilmar
517b249394 D 2018-04-10 00:08:42 +03:00
ilmar
8502c04bee html lists export fix 2018-04-09 15:37:28 +03:00
Peter 'Pita' Martischka
6d5dc93dbf merged 2018-04-07 10:23:49 +01:00
ilmar
b4ad7cf452 Export lists fix + code linting and readability update 2018-04-05 23:27:02 +03:00
John McLear
6388055f51
Merge pull request #12 from nashe/no_findkeys_export
No findkeys during export
2018-04-04 19:36:59 +01:00
Peter 'Pita' Martischka
806c9207e3 remove findkeys from pad export 2018-04-04 18:02:54 +01:00
John McLear
d393bf4dd8
Merge pull request #3232 from michael-dev/develop
Make APIKEY and SESSIONKEY file customizable
2018-04-03 13:34:49 +01:00
Mikk Andresen
6f2466bebc Merge with upstream develop. 2018-04-02 13:47:16 +03:00
Luc Didry
82816acf4a Fix .doc export with LibreOffice (soffice) (#3338)
When using LibreOffice to convert pads to doc, we got `Error: no export filter for /tmp/xxxx.doc` (tested with LO 5 and 6). Maybe it's a regression from LO. Anyway, converting HTML to odt, then to doc works.

Thx to lpagliari for her review!
2018-03-08 10:44:11 -03:00
Joas Souza
f1fcd16894 Add settings to scroll on edition out of viewport (#3282)
* Add scroll when it edits a line out of viewport

By default, when there is an edition of a line, which is out of the
viewport, Etherpad scrolls the minimum necessary to make this line
visible. This makes that the line stays either on the top or the bottom
of the viewport. With this commit, we add a setting to make possible to
scroll to a position x% pixels from the viewport. Besides of that, we
add a setting to make an animation of this scroll.
If nothing is changed on settings.json the Etherpad default behavior is
kept
2018-01-03 19:57:28 -02:00
ilmar
76f211b0bf ExportHtml.js update 2017-11-01 09:48:23 +02:00
ilmar
5469ce85cd exportHTML update 2017-10-31 22:46:24 +02:00
Michael Braun
4cce3bcbed Make APIKEY und SESSIONKEY file customizable
Running multiple instances sometimes requires different api- and session-keys for security reasons.
2017-07-31 15:31:45 +02:00
Patrick Easters
d72d79ea82 Fetch credentials arg from CLI 2017-07-05 15:20:02 -04:00
Luiza Pagliari
0cb8d31e95 [fix] Have one setting for each shortcut to create ordered list
This is an adjustment to #2891.
2017-05-11 14:56:09 -03:00
Luiza Pagliari
97038c2183 [fix] Fix shortcut enabling flag for 'ESC'
This is an adjustment to #2891.
2017-05-11 12:36:20 -03:00
Luiza Pagliari
1ebcf0dc47 Merge pull request #2891 from bhldev/padShortcutDisable
Added pad shortcut disabling feature to settings.json
2017-05-11 11:29:25 -03:00
Luiza Pagliari
009cd31243 [feature] Create option to automatically reconnect after a few seconds
On some erros that display a modal with "Force reconnect" button, allow
Etherpad to automatically reload pad after a few seconds. Amount of
seconds is defined on settings.json.

Still need to create tests for this feature, and implement i18n.
2017-04-04 11:09:24 -03:00
joassouza
0025613ba6 Refactor code 2017-02-07 15:06:49 -02:00
joassouza
d1e6c8492d Fix minification of code 2017-02-07 13:04:22 -02:00
Dan Bornstein
0a9d02562d Handle relative paths properly, when @importing. 2016-09-09 12:59:02 -07:00
Dan Bornstein
a5a7ebea3d Handle @import during CSS minification.
This meant plumbing a callback through to `compressCSS()`, which meant that
I had to alter the innards of `getFileCompressed()`. I tried to	leave that
function looking more understandable than when I found it; for example,	I
flattened out the nested `if`.

I went ahead and upgraded the version of `clean-css` while I was in the
territory.
2016-09-09 12:32:24 -07:00
Dan Bornstein
a0403ffc22 Remove unused parameter noDocType.
My editor also auto-stripped some EOL whitespace.
2016-09-08 09:46:13 -07:00
Dan Bornstein
879ae7c67d Remove the noDocType argument, which was only ever passed as false. 2016-09-08 09:41:23 -07:00
Dan Bornstein
6d7f128b87 Use an EEJS template for HTML export instead of inlining it in the JS code.
The semantics of all the substitutions are identical to what they were before.
I _did_ take the liberty of formatting the CSS to be a bit more readable
(at the cost of adding a little bit of whitespace).
2016-08-24 16:25:31 -07:00
Stefan
6b9711cb70 Fixed path check 2016-06-20 00:22:29 +02:00
John McLear
b3b17c2190 Merge pull request #2991 from LokeshN/deactivate-settings
Issue #2960 - deactivate settings.json
2016-06-13 14:41:30 +08:00
LokeshN
a8d5dc0693 Issue #2960 - deactivate settings.json
Deactivate settings.json in Admin dashboard
2016-05-22 21:12:21 +05:30
Stefan
835bca7967 Use fs.statSync instead of fs.existsSync (deprecated) 2016-05-16 16:51:12 +02:00
John McLear
6b6a028355 include the padId 2016-04-09 20:01:49 +01:00
Brian Lim
26aeb7b705 Added pad shortcut disabling feature 2016-01-21 07:38:41 -05:00
Chris Birk
7f517eca0b check for soffice before removing export paths 2015-12-17 21:54:04 -06:00
John McLear
98016665e4 working logic 2015-12-02 11:54:37 +00:00
Luiza Pagliari
92a8253449 Create hook exportHtmlAdditionalTagsWithData
The new hook does the same as exportHtmlAdditionalTags, but is declared
in another hook to avoid confusion about how to export tags when they
are stored as ['tag', 'value'] on attribute pool.

This complements #2762, as per @Gared suggestions.
2015-11-03 07:16:55 -02:00
John McLear
3aff0001a1 Merge pull request #2798 from ypid/fixed_get_git_hash
Get git commit hash even if the repo only points to a bare repo.
2015-10-22 16:13:58 +01:00
John McLear
50171a4c3c Merge pull request #2805 from storytouch/indentationSetting
Create setting to control if a new line will be indented or not
2015-10-22 16:12:07 +01:00
Simon Gaeremynck
7289e89070 Use Etherpad rather than Etherpad Lite when exporting HTML 2015-10-22 16:09:44 +01:00
Simon Gaeremynck
2bfc3026d2 Allow LibreOffice to be used when exporting a pad
This commit adds support for LibreOffice when exporting a pad to doc, pdf, ..

This commit also cleans up some export logic when exporting to txt
2015-10-20 19:46:08 +01:00
Luiza Pagliari
5deb06d589 Create setting to control if a new line will be indented or not
Currently pressing ENTER on a line that ends with ':', '[', '(' or '{'
automaticaly indents the new line with 4 spaces. The variable added by
this commit to settings.json allow an Etherpad instance to not have this
behavior.
2015-10-13 18:39:23 -03:00
Robin Schneider
29441a8ae1
Get git commit hash even if the repo only points to a bare repo.
* Used by https://github.com/debops/ansible-etherpad
2015-10-07 15:43:29 +02:00
Luiza Pagliari
1d134f0b13 Fixing ed52626. It was closing the span with </span data-TAG=VALUE>, not </span> 2015-09-17 15:30:09 -03:00
Luiza Pagliari
ed5262650a Generating pad HTML with tags like <span data-TAG="VALUE"> instead of <TAG:VALUE> 2015-09-07 03:55:56 -07:00
Luiza Pagliari
1a5985dc75 Accepting Arrays on 'exportHtmlAdditionalTags' to handle attributes stored as ['key', 'value'] (and not only ['key', 'true']) 2015-08-24 07:58:45 -07:00
Thomas Russell Murphy
b557927b72 Fix link to etherpad-lite on GitHub 2015-08-03 21:53:54 -05:00
Stéphane Alnet
0b3216ecb6 Do not extend Array.prototype 2015-05-22 12:27:08 +02:00
John McLear
757ad765d3 use removeItem instead of remove namespace 2015-05-22 11:09:21 +01:00
John McLear
41d24a8c8f Merge branch 'develop' of github.com:ether/etherpad-lite into develop 2015-05-19 16:44:57 +01:00
John McLear
b662d5c618 dont show editing buttons in R/O view 2015-05-19 16:43:19 +01:00
Simon Gaeremynck
7fe99cccad Using log4js in TidyHtml 2015-05-18 17:43:46 +01:00
Simon Gaeremynck
786b43efc8 Tidy HTML before trying to convert it with abiword 2015-05-18 16:24:41 +01:00
Xavid
9e86fb279b Fix backend tests with new setText() implementation; tests depended
on the old setText() behavior leaving the last character.
2015-05-06 08:45:22 -04:00
Tom Hunkapiller
6ff7d4e9a6 revert to old path handling, but strip out "..". fixes #2614 2015-04-15 14:31:21 -05:00
louis
0fa7650df8 dont allow directory traversal #2 2015-04-12 17:12:35 +02:00
John McLear
e3f95d0c9c Merge pull request #2604 from ether/pad-options
session key is now ignored and also padOptions are available in settings
2015-04-11 22:33:46 +01:00
Peter 'Pita' Martischka
fc0cac0cad merge object settings into default settings 2015-04-11 22:01:46 +01:00
John McLear
8ed12c7776 session key is now ignored and also padOptions are available in settings 2015-04-11 21:22:00 +01:00
John McLear
4a70837de9 Merge pull request #2602 from devoidfury/fix/import-large-etherpad
fix large etherpad import, fixes #2524
2015-04-11 20:09:01 +01:00
Tom Hunkapiller
a896d67e8c make setPadRaw async; streamline .etherpad file import handling chain 2015-04-11 12:02:19 -05:00
Stefan
a3ed82ad06 Move sessionKey setting from settings.json to SESSIONKEY.txt 2015-04-11 18:45:14 +02:00
Stefan
db5bdc8719 Log version number and git-sha on server start 2015-04-11 00:13:04 +02:00
Stefan
8e4c961207 Add version number to plugins-info page 2015-04-10 23:52:17 +02:00
John McLear
9d4e5f6e35 dont allow directory traversal 2015-04-10 22:02:22 +01:00
John McLear
a5345524e1 Merge pull request #2566 from ether/editbar-accessibility
Accessibility
2015-04-07 21:25:27 +01:00
John McLear
3a969f8dd8 pass error messages to pad text if shown during startup 2015-04-06 00:13:38 +01:00
John McLear
e027083136 timeslider settings for fonts 2015-04-05 15:18:36 +01:00
John McLear
662216b6cf slightly different alt stuff 2015-03-31 16:36:44 +01:00
John McLear
ef38bcad9f make buttons i18n friendly and a better experience 2015-03-31 13:57:18 +01:00
John McLear
7b726cbc02 more working logic and also pretty nice screen reader experience 2015-03-26 13:58:57 +00:00
John McLear
ec1956b4b6 read for button activity 2015-03-26 12:42:07 +00:00
John McLear
5761e998de first semi working alt f9 functionality 2015-03-25 11:03:45 +00:00
webzwo0i
a0fb65205c oops, fix export with wildcards 2015-03-14 00:02:23 +01:00
John McLear
178309e10d Merge branch 'develop' of github.com:ether/etherpad-lite into develop 2015-02-26 12:13:41 +00:00
John McLear
470b0ba2a6 Merge pull request #2520 from ether/load-testing-settings
allow for load testing connections to hit by a setting
2015-02-22 14:41:09 +00:00
John McLear
d5bec1701e fix export of bad pads and also limit import to files 2015-02-21 12:33:30 +00:00
John McLear
ec6a2b5ba9 allow for load testing connections to hit by a setting 2015-02-16 23:02:19 +00:00
webzwo0i
37924e441a add try-catch clause around calls to applyToAText 2015-02-16 09:01:30 +01:00
John McLear
ddc69831b2 working, need to test though 2015-02-11 17:59:05 +00:00
John McLear
b9802616b6 use latest cleanCSS 2015-02-04 17:57:34 +00:00
Stefan
4c64b7a670 Revert 'asyncLineHTMLForExport' hook 2015-01-25 22:08:40 +01:00