Commit graph

80 commits

Author SHA1 Message Date
Sebastian Castro
378dbe8485 skins: Improve clientPluginNames class helper
Moving classes to html tag so it can be used to style other part of template depending on plugins like #users, #chat etc...
Rename plugin class with "plugin-" prefix, because there were conflicts with some plugins using the same .ep_font_color class to apply css rules
2019-02-22 19:48:46 +01:00
muxator
0ad8291ae7 hooks: restore Internet Explorer 11 compatibility.
Compatibility with IE11 regressed in 23eab79946 while working for #3488.
That commit made use of modern js syntax, not supported by IE11.

- Removed arrow functions, replaced with normal functions.
- Removed the spread operator (<...iterable>) and the "new Set()" construct,
  replaced with _.uniq()

At some point IE11 compatibility will be dropped.
Ditching it now, for such a small gain, is not wise.

Fixes #3500.
2018-11-28 20:03:39 +01:00
muxator
23eab79946 pad.html: for each client plugin, add a class to #editorcontainerbox
This commit implements the following behaviour:

1. adds a function clientPluginNames() to hooks.js (mimicking what is done in
   static.js), which returns an array containing the list of currently installed
   client side plugins. The array is eventually empty.

2. calls that function in pad.html at rendering time (thus server-side) to
   populate a class attribute.

Example results:
- with no client-side plugins installed:
  <div id="editorcontainerbox" class="">

- with some client-side plugins installed:
  <div id="editorcontainerbox" class="ep_author_neat ep_adminpads">

Looking at the existing code (src/node/hooks/express/static.js#L39-L57), a
client-side plugin is defined as a plugin that implements at least a client side
hook.

NOTE: there is currently no support for notifying plugin removal/installation
      to the connected clients: for now, in order to get an updated class list,
      the clients will have to refresh the page.

Fixes #3488
2018-10-02 21:22:13 +02:00
Claudius Mbemba
8d60bd5234 fixed plugin dependency issue
running ./bin/run.sh after the 1st time caused the following error "TypeError: Cannot read property 'dependencies' of undefined".
fixed it.
2017-05-30 05:36:29 +02:00
Stefan
00c9caf7a3 Updated npm to 4.0.2 and removed recursive searching for ep-plugins 2016-11-20 11:28:17 +01:00
John McLear
1f471b0f81 show versions of plugins at startup, fixes #2642 2015-04-28 23:41:55 +01:00
Stefan
da86110f58 Use https to download plugins.json 2015-01-24 12:55:17 +01:00
Stefan
3c6db077ed Change domain for plugins.json request 2015-01-18 14:22:27 +01:00
John McLear
cfa3f15f94 Merge pull request #2373 from webzwo0i/avoid-global-vairables
dont make local variables global
2014-12-16 00:41:41 +00:00
webzwo0i
5d15f655f0 dont make local variables global 2014-12-14 22:01:28 +01:00
Beau Gunderson
645ec830b0 Don't crash on bad plugins.json; fixes #2323 2014-11-18 13:59:36 -08:00
John McLear
e5d77c3763 indentation 2014-11-12 21:39:03 +00:00
John McLear
fc5152c2f3 remove logging 2014-11-06 17:38:38 +00:00
John McLear
c7061e47db use request and a remote ep plugin only endpoint 2014-11-04 17:06:47 +00:00
kpn3m000
da0fe98edc Fixes search on plugins without Description
example "tables_ssl"
2014-07-03 14:24:41 +02:00
luto
f70309645c pluginfw: accept 'null' as a hook-result, as this is needed by handleMessage 2014-06-12 13:33:17 +02:00
Luc Didry
3d8452b143 Replace tabs indentation with spaces indentation
Some files are obviously external libraries, I didn't touch them
2013-12-05 08:41:29 +01:00
Marcel Klehr
6a02302fc9 /admin/plugins: Fix search algorithm (use string match in lower case)
fix #1903
2013-09-23 19:55:35 +02:00
Florent Viard
6f478c4de1 Fix to check if searchTerm is not "undefined" before trying to use it to filter search results.
Signed-off-by: Florent Viard <fviard@lacie.com>
2013-09-11 11:36:09 +02:00
Marcel Klehr
324b9b1f5f pluginfw/installer: Only restart the server when all tasks have finished
fixes #1685
2013-04-08 16:14:03 +02:00
Marcel Klehr
981a33f01e pluginfw/installer.js fire callbacks only once 2013-03-26 14:40:19 +01:00
Marcel Klehr
5d7a8adcb7 Silence npm when using npm.commands.search 2013-03-26 11:33:04 +01:00
Marcel Klehr
9109bd206e Catch all errors in pluginfw/installer.js 2013-03-26 11:20:12 +01:00
Marcel Klehr
1ebbcd2f30 Don't leak event listeners in pluginfw/installer.js
fixes #921
2013-03-25 17:22:51 +01:00
Marcel Klehr
b297784288 Make npm registry access code more sane 2013-03-25 16:51:12 +01:00
Marcel Klehr
0070eab416 Fix caching of npm search results and only make one registry request on /admin/plugins
fixes #1488
2013-03-25 12:45:23 +01:00
John McLear
4cfac2f624 fix extract and checkPad 2013-02-18 08:29:25 -08:00
mluto
037478cbcd Made plugin search not casesensitive 2013-01-31 19:05:23 +01:00
Marcel Klehr
23dd4c73e2 pluginfw/installer.js: Don't freak out users with cryptic errors, just use the error message 2013-01-24 22:40:31 +01:00
John McLear
b5c263dd37 improve search to use description too, bit more cpu heavy for thats okay 2012-12-03 01:41:01 +00:00
Marcel Klehr
78e64ffea8 Mimic, replace or work around removed npm utils. 2012-10-28 18:34:20 +01: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
Chad Weider
9394495364 Inject plugins into hooks. 2012-09-11 21:16:47 -07:00
Chad Weider
3631f0ece3 Inject special normalization behavior. 2012-09-11 21:16:47 -07:00
Chad Weider
e375b6212a Static functions are static. 2012-09-11 21:16:47 -07:00
Chad Weider
b0d71df604 Fix worthless indentation. 2012-09-11 21:16:47 -07:00
Chad Weider
19a7208c97 Clean up requires. 2012-09-09 18:18:59 -07:00
Chad Weider
0da4acfdb5 Use packaged edition of async. 2012-09-09 18:18:59 -07:00
Egil Moeller
a0548af021 Merge branch 'develop' of git://github.com/Pita/etherpad-lite into restartserver 2012-07-03 23:32:37 +02:00
Egil Moeller
b438a278a1 Make the server restart on plugin install 2012-07-03 23:31:44 +02:00
Marcel Klehr
227477967f Fix plugin loader
make it work on client side and with relative paths
2012-06-29 12:40:16 +02:00
Marcel Klehr
b0d369883b Fix plugin loader to work with windows paths (e.g. 'D:\foo\...') 2012-06-28 15:58:28 +02:00
Egil Moeller
3338db9485 Bugfixes 2012-06-05 13:32:33 +02:00
Egil Moeller
cf2f0b72a3 More plugin information 2012-06-04 14:33:38 +02:00
Chad Weider
a28bbd0b3f Definition will not have an effect if already defined - force redefinition. 2012-05-28 16:43:20 -07:00
Chad Weider
774e2a1517 Fix indentation. 2012-05-28 16:43:20 -07:00
Matthias Bartelmeß
513deef768 added baseURL export to pad.js, timeslider.js, plugins.js, fixing #670 2012-04-25 10:23:58 +02:00
John McLear
0a9fcc267f Merge pull request #658 from redhog/master
Bugfixes for when plugins are installed as dependencies for other plugins
2012-04-20 05:56:57 -07:00
Egil Moeller
72c972b256 Bugfix for recursive dependency-installation and paths 2012-04-20 14:37:53 +02:00