ideas icon indicating copy to clipboard operation
ideas copied to clipboard

Comments extensions to keep comments on CKAN server

Open formwandler opened this issue 10 years ago • 16 comments

Currently the only working comments extension is ckanext-disqus, which uses an external commenting provider and system for data storing. For various reasons [1] a comments extension would be very nice, that stores the comments in the CKAN backend itself.

There is an approach for such an extension with ckanext-comments. Maybe Isso could also be used.

[1] See also this discussion on mailinglist.

formwandler avatar Apr 17 '14 13:04 formwandler

I think the better approach would be to find a way to support CKAN auth for Isso. Whilst my extension would work (with more time and effort) it seems like unnecessary work if an existing active community could be contributing indirectly.

I'd say this is a very important extension to make available, engagement is a big issue and as the ML conversation points out, relying on Drupal for comments is heinous.

rossjones avatar Apr 17 '14 13:04 rossjones

Another option is Discourse which has a rather simple Single Sign On API pattern https://meta.discourse.org/t/official-single-sign-on-for-discourse/13045

BoingBoing uses Discourse in a Disqus-esque way http://boingboing.net/2014/04/22/afterparty-doped-up-technothr.html#more-278022

maxious avatar Apr 22 '14 11:04 maxious

We just finished creating ckanext-discourse v0.1 :)

I took @maxious hint about how BoingBoing is using Discourse and it allows you to comment on packages, orgs and groups.

We'll be releasing the extension later this month after some more testing/clean-up. We're currently working on optionally emailing the maintainer/author when a discourse comment is posted.

jqnatividad avatar Feb 03 '15 22:02 jqnatividad

Great news @jqnatividad, looking forward to see it

amercader avatar Feb 04 '15 15:02 amercader

:+1: really looking forward to this too

wardi avatar Feb 04 '15 16:02 wardi

+1 Thank you for your efforts @jqnatividad .

gjlawran avatar Feb 10 '15 14:02 gjlawran

@jqnatividad Here another poor soul looking forward to put a hand on that upcoming extension. Any fresh news?

The team over at https://github.com/OpenDevelopmentMekong/ would be very interesting on contributing to this, since the requirement for a commenting system is quite critical for the next iteration of http://data.opendevelopmentmekong.net . Some man-power would be available within the upcoming weeks...

acorbi avatar May 12 '15 10:05 acorbi

I bit the bullet and upgraded Ross' extension (use new Jinja template system, no dependency on data.gov.uk repos, added some email notifications for data authors/system administrators etc.) https://github.com/maxious/ckanext-comments

Would be thrilled to get any suggestions/improvements :)

maxious avatar May 12 '15 10:05 maxious

@maxious I will give a try and provide comments soon. Thanks for letting know!

acorbi avatar May 12 '15 10:05 acorbi

Sorry, the release of ckanext-discourse is taking longer than I thought. Will push to release it by CKANcon. The quirks with the Discourse API, and some side effects of CKAN i18n and Atom feeds on URLs caused some rework.

jqnatividad avatar May 12 '15 14:05 jqnatividad

Thanks for the infos @jqnatividad. Waiting for 2 weeks until release would be OK-ish for us, but It would be great if you could share some details on what the extension will be capable of, what features are planned for future releases and where you would like to see some collabo happening....

Possible? Alternatively, granting read-only access to the code repo for me to take a look at the code would be also great! I could help out with beta-testing in exchange :)

acorbi avatar May 12 '15 14:05 acorbi

You can get a sense of ckanext-discourse capabilities by checking out data.beta.nyc and talk.beta.nyc. Right now, we've enabled commenting on packages, organizations, groups, showcases, and data requests. We've also patched some CKAN extensions to support Discourse's one-boxing so CKAN urls are expanded when used in Discourse threads. This is really nothing more than making sure that the requisite Open Graph metadata is generated in the templates.

I'll push to have the release before CKANcon and will give you access.

Joel Natividad +1 347-565-5635 @jqnatividad

Ontodia, Inc. 137 Varick Street, 2nd Floor, New York, NY 10013 opendata.city * civicdashboards.com * nycpedia.com

On Tue, May 12, 2015 at 10:27 AM, Alex Corbi [email protected] wrote:

Thanks for the infos @jqnatividad https://github.com/jqnatividad. Waiting for 2 weeks until release would be OK-ish for us, but It would be great if you could share some details on what the extension will be capable of, what features are planned for future releases and where you would like to see some collabo happening....

Possible? Alternatively, granting read-only access to the code repo for me to take a look at the code would be also great! I could help out with beta-testing in exchange :)

— Reply to this email directly or view it on GitHub https://github.com/ckan/ideas-and-roadmap/issues/44#issuecomment-101300664 .

jqnatividad avatar May 12 '15 16:05 jqnatividad

@jqnatividad Thanks! Some assumptions/questions, please kindly briefly confirm/clarify :

  • A discourse instance needs to be installed and maintained separately. The plug-in will be configured to interact with it, correct?
  • As I understand, CKAN users cannot be used to login directly into the discourse instance. They need to sign-up in the discourse instance separately. Is the plugin creating a user on discourse for each CKAN user? If so, what happens if a user gets deleted on CKAN?
  • Analog to the users, everytime a new dataset is created on CKAN, the corresponding discourse Thread gets created with the same name. What happens when the dataset gets deleted/renamed?
  • Will ckanext-discourse support different privacy levels or the ability to show the discussion only for certain user roles? This is one of the requirements we have and would be a feature I could imagine contributing to, in case it is not provided out-of-the-box.

Gracias de nuevo!

acorbi avatar May 13 '15 13:05 acorbi

Hi @acorbi. Would love to open it up to the community so we can collectively scratch our itches :) To your queries:

  • Yes. A separate discourse instance needs to be installed and maintained separately. We actively track the latest discourse beta (currently 1.3.0.beta9)
  • Right now, there's no user integration and the auths are separate. We thought about SSO integration initially and did some prelim work, but didn't finish it. Explored doing it thru Auth0.com coz Discourse has an Auth0 plugin already, and Auth0 also gets you SSO-as-a-Service and integration with enterprise auth and other social logins. Would love to see a ckanext-auth0.
  • Right now, a new discourse thread is created in a designated category using a configurable username (in our case, DataBot) for every new dataset, group, org, data request, showcase. Its smart enough to discern multiple URLs pointing to the same CKAN entity coz of i18n issues and Atom Feeds having different URLs (Atom Feeds uses dataset ID, rather than human readable version of URL ), but you need to manually groom threads every now and then. Maybe use https://github.com/deniszgonjanin/ckanext-webhooks in a future version?
  • Since beta.nyc is an open community portal, there are no privacy levels at the moment. FYI, Discourse's concept of privacy is limited to PMs, Private Categories and Trust Levels (https://meta.discourse.org/t/what-do-user-trust-levels-do/4924) and is not really a fine-grained permissioning system. You may want to piggyback off CKAN's permissioning in combination with Private Categories, but I can see that becoming very complicated very quickly since Discourse's Private Categories provides all or nothing access, so you'll end up with lots of Private Cats.

jqnatividad avatar May 13 '15 19:05 jqnatividad

Thanks for working on this @jqnatividad, I'm excited to get my hands on it! Any updates? Is it possible to get private access before a public release happens?

sleitner avatar Jul 01 '15 20:07 sleitner

Just wanted to confirm that it has been publicly available for a while https://github.com/Ontodia/ckanext-discourse

Will have to update it though, and there's nothing like a client project to focus the mind :)

jqnatividad avatar Nov 11 '16 20:11 jqnatividad