Skip to content

Commit

Permalink
Update soruces to 1.5.7.
Browse files Browse the repository at this point in the history
  • Loading branch information
raf64flo committed Nov 30, 2015
1 parent 3dfaa71 commit f7229d7
Show file tree
Hide file tree
Showing 65 changed files with 857 additions and 187 deletions.
21 changes: 21 additions & 0 deletions sources/CHANGELOG.md
@@ -1,3 +1,24 @@
# 1.5.7
* NEW: Add support for intermediate CA certificates for ssl
* NEW: Provide a script to clean up before running etherpad
* NEW: Use ctrl+shift+1 to do a ordered list
* NEW: Show versions of plugins on startup
* NEW: Add author on padCreate and padUpdate hook
* Fix: switchToPad method
* Fix: Dead keys
* Fix: Preserve new lines in copy-pasted text
* Fix: Compatibility mode on IE
* Fix: Content Collector to get the class of the DOM-node
* Fix: Timeslider export links
* Fix: Double prompt on file upload
* Fix: setText() replaces the entire pad text
* Fix: Accessibility features on embedded pads
* Fix: Tidy HTML before abiword conversion
* Fix: Remove edit buttons in read-only view
* Fix: Disable user input in read-only view
* Fix: Pads end with a single newline, rather than two newlines
* Fix: Toolbar and chat for mobile devices

# 1.5.6
* Fix: Error on windows installations

Expand Down
2 changes: 1 addition & 1 deletion sources/README.md
Expand Up @@ -4,7 +4,7 @@
# About
Etherpad is a really-real time collaborative editor maintained by the Etherpad Community.

Etherpad is written in Javascript(99.9%) on both the server and client so it's easy for developers to maintain and add new features. Because of this Etherpad has tons of customizations that you can leverage.
Etherpad is written in JavaScript(99.9%) on both the server and client so it's easy for developers to maintain and add new features. Because of this Etherpad has tons of customizations that you can leverage.

Etherpad is designed to be easily embeddable and provides a [HTTP API](https://github.com/ether/etherpad-lite/wiki/HTTP-API)
that allows your web application to manage pads, users and groups. It is recommended to use the [available client implementations](https://github.com/ether/etherpad-lite/wiki/HTTP-API-client-libraries) in order to interact with this API.
Expand Down
14 changes: 7 additions & 7 deletions sources/bin/convert.js
Expand Up @@ -34,13 +34,13 @@ var sql = "SET CHARACTER SET UTF8;\n" +
fs.writeSync(sqlOutput, sql);
log("done");

//set setings for ep db
var etherpadDB= new mysql.Client();
etherpadDB.host = settings.etherpadDB.host;
etherpadDB.port = settings.etherpadDB.port;
etherpadDB.database = settings.etherpadDB.database;
etherpadDB.user = settings.etherpadDB.user;
etherpadDB.password = settings.etherpadDB.password;
var etherpadDB = mysql.createConnection({
host : settings.etherpadDB.host,
user : settings.etherpadDB.user,
password : settings.etherpadDB.password,
database : settings.etherpadDB.database,
port : settings.etherpadDB.port
});

//get the timestamp once
var timestamp = new Date().getTime();
Expand Down
2 changes: 1 addition & 1 deletion sources/bin/run.sh
Expand Up @@ -21,7 +21,7 @@ if [ "$(id -u)" -eq 0 ] && [ $ignoreRoot -eq 0 ]; then
echo "You shouldn't start Etherpad as root!"
echo "Please type 'Etherpad rocks my socks' or supply the '--root' argument if you still want to start it as root"
read rocks
if [ ! $rocks = "Etherpad rocks my socks" ]
if [ ! "$rocks" == "Etherpad rocks my socks" ]
then
echo "Your input was incorrect"
exit 1
Expand Down
14 changes: 7 additions & 7 deletions sources/doc/api/hooks_client-side.md
Expand Up @@ -203,10 +203,10 @@ Things in context:

This hook is called before the content of a node is collected by the usual methods. The cc object can be used to do a bunch of things that modify the content of the pad. See, for example, the heading1 plugin for etherpad original.

E.g. if you need to apply an attribute to newly inserted characters,
E.g. if you need to apply an attribute to newly inserted characters,
call cc.doAttrib(state, "attributeName") which results in an attribute attributeName=true.

If you want to specify also a value, call cc.doAttrib(state, "attributeName:value")
If you want to specify also a value, call cc.doAttrib(state, "attributeName::value")
which results in an attribute attributeName=value.


Expand Down Expand Up @@ -257,7 +257,7 @@ This hook gets called every time the client receives a message of type `name`. T

`collab_client.js` has a pretty extensive list of message types, if you want to take a look.

##aceStartLineAndCharForPoint-aceEndLineAndCharForPoint
##aceStartLineAndCharForPoint-aceEndLineAndCharForPoint
Called from: src/static/js/ace2_inner.js

Things in context:
Expand All @@ -272,7 +272,7 @@ Things in context:
This hook is provided to allow a plugin to turn DOM node selection into [line,char] selection.
The return value should be an array of [line,char]

##aceKeyEvent
##aceKeyEvent
Called from: src/static/js/ace2_inner.js

Things in context:
Expand All @@ -286,7 +286,7 @@ Things in context:
This hook is provided to allow a plugin to handle key events.
The return value should be true if you have handled the event.

##collectContentLineText
##collectContentLineText
Called from: src/static/js/contentcollector.js

Things in context:
Expand All @@ -299,7 +299,7 @@ Things in context:
This hook allows you to validate/manipulate the text before it's sent to the server side.
The return value should be the validated/manipulated text.

##collectContentLineBreak
##collectContentLineBreak
Called from: src/static/js/contentcollector.js

Things in context:
Expand All @@ -311,7 +311,7 @@ Things in context:
This hook is provided to allow whether the br tag should induce a new magic domline or not.
The return value should be either true(break the line) or false.

##disableAuthorColorsForThisLine
##disableAuthorColorsForThisLine
Called from: src/static/js/linestylefilter.js

Things in context:
Expand Down
28 changes: 28 additions & 0 deletions sources/doc/api/hooks_server-side.md
Expand Up @@ -110,6 +110,7 @@ Called from: src/node/db/Pad.js
Things in context:

1. pad - the pad instance
2. author - the id of the author who created the pad

This hook gets called when a new pad was created.

Expand All @@ -128,6 +129,7 @@ Called from: src/node/db/Pad.js
Things in context:

1. pad - the pad instance
2. author - the id of the author who updated the pad

This hook gets called when an existing pad was updated.

Expand Down Expand Up @@ -214,6 +216,32 @@ function handleMessage ( hook, context, callback ) {
};
```

## handleMessageSecurity
Called from: src/node/handler/PadMessageHandler.js

Things in context:

1. message - the message being handled
2. client - the client object from socket.io

This hook will be called once a message arrives. If a plugin calls `callback(true)` the message will be allowed to be processed. This is especially useful if you want read only pad visitors to update pad contents for whatever reason.

**WARNING**: handleMessageSecurity will be called, even if the client is not authorized to send this message. It's up to the plugin to check permissions.

Example:

```
function handleMessageSecurity ( hook, context, callback ) {
if ( context.message.boomerang == 'hipster' ) {
// If the message boomer is hipster, allow the request
callback(true);
}else{
callback();
}
};
```


## clientVars
Called from: src/node/handler/PadMessageHandler.js

Expand Down
44 changes: 24 additions & 20 deletions sources/settings.json.template
Expand Up @@ -10,12 +10,12 @@
// favicon default name
// alternatively, set up a fully specified Url to your own favicon
"favicon": "favicon.ico",

//IP and port which etherpad should bind at
"ip": "0.0.0.0",
"port" : 9001,

/*
/*
// Node native SSL support
// this is disabled by default
//
Expand All @@ -24,7 +24,7 @@

"ssl" : {
"key" : "/path-to-your/epl-server.key",
"cert" : "/path-to-your/epl-server.crt"
"cert" : "/path-to-your/epl-server.crt",
"ca": ["/path-to-your/epl-intermediate-cert1.crt", "/path-to-your/epl-intermediate-cert2.crt"]
},

Expand All @@ -37,17 +37,17 @@
"dbSettings" : {
"filename" : "var/dirty.db"
},

/* An Example of MySQL Configuration
"dbType" : "mysql",
"dbSettings" : {
"user" : "root",
"host" : "localhost",
"password": "",
"user" : "root",
"host" : "localhost",
"password": "",
"database": "store"
},
*/

//the default text of a pad
"defaultPadText" : "Welcome to Etherpad!\n\nThis pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!\n\nGet involved with Etherpad at http:\/\/etherpad.org\n",

Expand All @@ -65,7 +65,7 @@
"chatAndUsers": false,
"lang": "en-gb"
},

/* Shoud we suppress errors from being visible in the default Pad Text? */
"suppressErrorsInPadText" : false,

Expand All @@ -77,35 +77,39 @@

/* Users, who have a valid session, automatically get granted access to password protected pads */
"sessionNoPassword" : false,
/* if true, all css & js will be minified before sending to the client. This will improve the loading performance massivly,

/* if true, all css & js will be minified before sending to the client. This will improve the loading performance massivly,
but makes it impossible to debug the javascript/css */
"minify" : true,

/* How long may clients use served javascript code (in seconds)? Without versioning this
may cause problems during deployment. Set to 0 to disable caching */
"maxAge" : 21600, // 60 * 60 * 6 = 6 hours

/* This is the path to the Abiword executable. Setting it to null, disables abiword.
Abiword is needed to advanced import/export features of pads*/
Abiword is needed to advanced import/export features of pads*/
"abiword" : null,

/* This is the path to the Tidy executable. Setting it to null, disables Tidy.
Tidy is used to improve the quality of exported pads*/
"tidyHtml" : null,

/* Allow import of file types other than the supported types: txt, doc, docx, rtf, odt, html & htm */
"allowUnknownFileEnds" : true,

/* This setting is used if you require authentication of all users.
Note: /admin always requires authentication. */
"requireAuthentication" : false,

/* Require authorization by a module, or a user with is_admin set, see below. */
"requireAuthorization" : false,

/*when you use NginX or another proxy/ load-balancer set this to true*/
"trustProxy" : false,

/* Privacy: disable IP logging */
"disableIPlogging" : false,
"disableIPlogging" : false,

/* Users for basic authentication. is_admin = true gives access to /admin.
If you do not uncomment this, /admin will not be available! */
/*
Expand All @@ -126,7 +130,7 @@

// Allow Load Testing tools to hit the Etherpad Instance. Warning this will disable security on the instance.
"loadTest": false,

/* The toolbar buttons configuration.
"toolbar": {
"left": [
Expand All @@ -148,7 +152,7 @@

/* The log level we are using, can be: DEBUG, INFO, WARN, ERROR */
"loglevel": "INFO",

//Logging configuration. See log4js documentation for further information
// https://github.com/nomiddlename/log4js-node
// You can add as many appenders as you want here:
Expand Down
5 changes: 4 additions & 1 deletion sources/src/locales/ar.json
Expand Up @@ -5,7 +5,8 @@
"Tux-tn",
"Alami",
"Meno25",
"Test Create account"
"Test Create account",
"محمد أحمد عبد الفتاح"
]
},
"index.newPad": "باد جديد",
Expand Down Expand Up @@ -37,6 +38,7 @@
"pad.settings.padSettings": "إعدادات الباد",
"pad.settings.myView": "رؤيتي",
"pad.settings.stickychat": "الدردشة دائما على الشاشة",
"pad.settings.chatandusers": "أظهر الدردشة والمستخدمين",
"pad.settings.colorcheck": "ألوان التأليف",
"pad.settings.linenocheck": "أرقام الأسطر",
"pad.settings.rtlcheck": "قراءة المحتويات من اليمين إلى اليسار؟",
Expand Down Expand Up @@ -110,6 +112,7 @@
"timeslider.month.december": "ديسمبر",
"timeslider.unnamedauthors": "بدون اسم {{num}} {[plural(num) واحد: كاتب، آخر: مؤلف]}",
"pad.savedrevs.marked": "هذا التنقيح محدد الآن كمراجعة محفوظة",
"pad.savedrevs.timeslider": "يمكنك عرض المراجعات المحفوظة بزيارة متصفح التاريخ",
"pad.userlist.entername": "أدخل اسمك",
"pad.userlist.unnamed": "غير مسمى",
"pad.userlist.guest": "ضيف",
Expand Down
3 changes: 3 additions & 0 deletions sources/src/locales/ast.json
Expand Up @@ -92,6 +92,9 @@
"timeslider.exportCurrent": "Esportar la versión actual como:",
"timeslider.version": "Versión {{version}}",
"timeslider.saved": "Guardáu el {{day}} de {{month}} de {{year}}",
"timeslider.playPause": "Reproducir/posar el conteníu del bloc",
"timeslider.backRevision": "Dir a la revisión anterior d'esti bloc",
"timeslider.forwardRevision": "Dir a la revisión siguiente d'esti bloc",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "de xineru",
"timeslider.month.february": "de febreru",
Expand Down
3 changes: 3 additions & 0 deletions sources/src/locales/be-tarask.json
Expand Up @@ -94,6 +94,9 @@
"timeslider.exportCurrent": "Экспартаваць актуальную вэрсію як:",
"timeslider.version": "Вэрсія {{version}}",
"timeslider.saved": "Захавана {{day}}.{{month}}.{{year}}",
"timeslider.playPause": "Прайграць / спыніць зьмест дакумэнту",
"timeslider.backRevision": "Вярнуць рэдагаваньне гэтага дакумэнту",
"timeslider.forwardRevision": "Перайсьці да наступнага рэдагаваньня гэтага дакумэнту",
"timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "студзень",
"timeslider.month.february": "люты",
Expand Down
5 changes: 4 additions & 1 deletion sources/src/locales/br.json
Expand Up @@ -22,7 +22,7 @@
"pad.toolbar.clearAuthorship.title": "Diverkañ al livioù oc'h anaout an aozerien (Ktrl+Pennlizherenn+C)",
"pad.toolbar.import_export.title": "Enporzhiañ/Ezporzhiañ eus/war-zu ur furmad restr disheñvel",
"pad.toolbar.timeslider.title": "Istor dinamek",
"pad.toolbar.savedRevision.title": "Doareoù enrollet",
"pad.toolbar.savedRevision.title": "Enrollañ an adweladenn",
"pad.toolbar.settings.title": "Arventennoù",
"pad.toolbar.embed.title": "Rannañ hag enframmañ ar pad-mañ",
"pad.toolbar.showusers.title": "Diskwelet implijerien ar Pad",
Expand Down Expand Up @@ -95,6 +95,9 @@
"timeslider.exportCurrent": "Ezporzhiañ an doare bremañ evel :",
"timeslider.version": "Stumm {{version}}",
"timeslider.saved": "Enrollañ {{day}} {{month}} {{year}}",
"timeslider.playPause": "Lenn / Ehan endalc'hoù ar pad",
"timeslider.backRevision": "Kilit eus un adweladenn er pad-mañ",
"timeslider.forwardRevision": "Araogiñ un adweladenn er pad-mañ",
"timeslider.dateformat": "{{month}}/{{day}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Genver",
"timeslider.month.february": "C'hwevrer",
Expand Down
6 changes: 5 additions & 1 deletion sources/src/locales/cs.json
Expand Up @@ -5,7 +5,8 @@
"Jezevec",
"Juandev",
"Leanes",
"Quinn"
"Quinn",
"Aktron"
]
},
"index.newPad": "Založ nový Pad",
Expand Down Expand Up @@ -96,6 +97,9 @@
"timeslider.exportCurrent": "Exportovat nynější verzi jako:",
"timeslider.version": "Verze {{version}}",
"timeslider.saved": "Uloženo {{day}} {{month}} {{year}}",
"timeslider.playPause": "Pustit / pozastavit obsah padu",
"timeslider.backRevision": "Jít v tomto padu o revizi zpět",
"timeslider.forwardRevision": "Jít v tomto padu o revizi vpřed",
"timeslider.dateformat": "{{day}} {{month}} {{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "leden",
"timeslider.month.february": "únor",
Expand Down
3 changes: 3 additions & 0 deletions sources/src/locales/de.json
Expand Up @@ -96,6 +96,9 @@
"timeslider.exportCurrent": "Exportiere diese Version als:",
"timeslider.version": "Version {{version}}",
"timeslider.saved": "gespeichert am {{day}}. {{month}} {{year}}",
"timeslider.playPause": "Padinhalte abspielen/pausieren",
"timeslider.backRevision": "Eine Version in diesem Pad zurück gehen",
"timeslider.forwardRevision": "Eine Version in diesem Pad vorwärts gehen",
"timeslider.dateformat": "{{day}}.{{month}}.{{year}} {{hours}}:{{minutes}}:{{seconds}}",
"timeslider.month.january": "Januar",
"timeslider.month.february": "Februar",
Expand Down

0 comments on commit f7229d7

Please sign in to comment.