Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including ep_comments_page with all npm packages installed. Try it out:

var epCommentsPage = require("ep_comments_page")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

ep_comments_page v0.0.35

Adds comments on sidebar and link it to the text. Support for Page View, requires ep_page_view

Comments and annotations for Etherpad

Screen shot

Installing this plugin with git.

npm install ep_page_view
git clone https://github.com/JohnMcLear/ep_comments.git node_modules/ep_comments_page
cd node_modules/ep_comments_page
npm install

Extra settings

This plugin has some extra features that can be enabled by changing values on settings.json of your Etherpad instance.

Alternative comment display

There is an alternative way to display comments. Instead of having all comments visible on the right of the page, you can have just an icon on the right margin of the page. Comment details are displayed when user clicks on the comment icon:

Screen shot

To use this way of displaying comments, make sure you have installed ep_page_view, and add the following to your settings.json:

// Display comments as icons, not boxes
"ep_comments_page": {
  "displayCommentAsIcon": true
},

Highlight selected text when creating a comment

It is also possible to mark the text originally selected when user adds a comment: Screen shot

To enable this feature, add the following code to your settings.json:

// Highlight selected text when adding comment
"ep_comments_page": {
  "highlightSelectedText": true
},

Warning: there is a side effect when you enable this feature: a revision is created everytime the text is highlighted, resulting on apparently "empty" changes when you check your pad on the timeslider. If that is an issue for you, we don't recommend you to use this feature.

Creating comment via API

If you need to add comments to a pad:

  • Call this route to create the comments on Etherpad and get the comment ids:

    curl -X POST http://localhost:9001/p/THE_PAD_ID/comments -d "apikey=YOUR_API_KEY" -d 'data=[{"name":"AUTHOR","text":"COMMENT"}, {"name":"ANOTHER_AUTHOR","text":"ANOTHER_COMMENT"}]'
    

    The response will be:

    {"code":0,"commentIds":["c-VEtzKolgD5krJOVU","c-B8MEmAT0NJ9usUwc"]}
    
  • Use the returned comment ids to set the pad HTML via API:

    My comment goes <span class="comment c-VEtzKolgD5krJOVU">here<span>.
    

    Result: Screen shot

NOTE: Adding a comment to a pad via API will make the other editors with that pad to be alerted, but this feature is only active if your Etherpad is run in loadTest mode. Read the Etherpad Guide for how to enable load testing.

License

Apache 2

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free