Quantcast
Channel: Discourse Meta - Latest topics
Viewing all 60642 articles
Browse latest View live

What exactly goes on when DELETE /session/username is invoked?

$
0
0

@Kevin_Wildenradt wrote:

I am invoking this endpoint using a CSRF token just like the Discourse UI does. Observing the backend logs seems to indicate that the session is deleted on some level, but this seems to have no effect on logging the user out. E.g. if I make this call to delete but do not wipe the user's _t cookie, they are not logged out, even if I wipe the session cookie. It would seem that as long as I can wipe the browser's _t cookie the user is logged out, and that making the call to DELETE /session/username is effectively useless. Is there any actual back end cleanup going on here, or is this endpoint just a way for the discourse backend to wipe the browser's cookie?

Posts: 5

Participants: 3

Read full topic


New Category Setting - Make all topics wiki by default

$
0
0

@jomaxro wrote:

What would you like done?

We'd like to see a new category setting that when enabled causes all new topics to be wiki topics by default. This is a minimum part of this topic. The make wiki action should happen regardless of the user's trust level, bypassing site settings for min trust to edit wiki post and min trust to allow self wiki.

Some additional notes:

  1. This should not modify or work around the existing wiki site settings. The make wiki action should be done by System, not the user making the post.
  2. There does not need to be an edit log for the make wiki action, but having a log isn't a problem.
  3. Users whose trust level is less than min trust to edit wiki post can edit their own wiki posts they created, but still cannot edit other wiki posts even in a wiki category - exactly how wiki editing works now.

The new settings page would look something like this (highlighting for screenshot emphasis only):

When do you need it done?

We'd like to see this done within a month's time, with a hard deadline of January 6.

What is your budget, in $ USD that you can offer for this task?

Negotiable. Please PM with an offer if interested.

Posts: 1

Participants: 1

Read full topic

Add headers to denote version on API responses

$
0
0

@ibnesayeed wrote:

In addition to the meta tag in the markup, it would be useful to also include a response header such as x-generator or x-powered-by. For example x-generator is used by Drupal CMS in combination with the generator meta tag. Having this information in the header would be great for tools that interact with the API where it is often easier to discover some meta information without requesting or parsing the content.

I think the right place to inject this header would be in the application controller where x-discourse-route header is being added, but I might be wrong as I don't know the code base well.

Posts: 10

Participants: 4

Read full topic

Posted Internal Link Not Loading Dynamically

Failure trying to rebuild. Server dead in the water

$
0
0

@kcoop wrote:

My server failed again because it ran out of disk space, because the automated backups are still generating more than they should (whole nother story). I deleted the oldest backup, and ran ./launcher rebuild app. Got the following, multiple times:

FAILED

Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake assets:precompile' failed with return #
Location of failure: /pups/lib/pups/exec_command.rb:108:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"bundle_exec", "cmd"=>["su discourse -c 'bundle install --deployment --verbose --without test --without development'", "su discourse -c 'bundle exec rake db:migrate'", "su discourse -c 'bundle exec rake assets:precompile'"]}
c45fbf7d797e6039ef7ee7cd2d07692df73ce7622861af489b112ec498a93335
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one

Scrolling up, I see the following stack dump:

www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/cached_environment.rb:20:in block in initialize'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/cached_environment.rb:47:in
load'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/base.rb:66:in find_asset'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/base.rb:73:in
find_all_linked_assets'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:134:in block in find'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:133:in
each'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:133:in find'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:185:in
compile'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-rails-3.1.1/lib/sprockets/rails/task.rb:68:in block (3 levels) in define'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/rake/sprocketstask.rb:147:in
with_logger'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-rails-3.1.1/lib/sprockets/rails/task.rb:67:in block (2 levels) in define'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/rake-11.2.2/exe/rake:27:in
'
/usr/local/bin/bundle:22:in load'
/usr/local/bin/bundle:22:in
'
MiniRacer::RuntimeError: Error: Assertion Failed: Using {{controller}} or any path based on it ('javascripts/connectors/user-custom-preferences/protect-history' @ L3:C28) has been removed in Ember 2.0
JavaScript at new Error (native)
JavaScript at Error.EmberError (:9091:21)
JavaScript at assert (:6024:13)
JavaScript at Object.assert (:8855:34)
JavaScript at assertPath (:16427:22)
JavaScript at assertPaths (:16422:7)
JavaScript at assertHash (:16411:7)
JavaScript at :16397:7
JavaScript at Walker.visit (:23457:7)
JavaScript at ElementNode (:23473:16)
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:167:in eval_unsafe'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:167:in
block (2 levels) in eval'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:217:in timeout'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:166:in
block in eval'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:63:in block in with_lock'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:63:in
synchronize'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:63:in with_lock'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/mini_racer-0.1.7/lib/mini_racer.rb:164:in
eval'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/mini_racer_runtime.rb:27:in block in eval'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/mini_racer_runtime.rb:66:in
translate'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/mini_racer_runtime.rb:26:in eval'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/execjs-2.7.0/lib/execjs/mini_racer_runtime.rb:34:in
call'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/barber-0.11.1/lib/barber/precompiler.rb:31:in compile'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/barber-0.11.1/lib/barber/precompiler.rb:8:in
compile'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/ember-handlebars-template-0.7.4/lib/ember/handlebars/template.rb:166:in block in precompile_ember_handlebars'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/cache.rb:85:in
fetch'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/ember-handlebars-template-0.7.4/lib/ember/handlebars/template.rb:165:in precompile_ember_handlebars'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/ember-handlebars-template-0.7.4/lib/ember/handlebars/template.rb:89:in
call'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/ember-handlebars-template-0.7.4/lib/ember/handlebars/template.rb:39:in call'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:75:in
call_processor'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:57:in block in call_processors'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:56:in
reverse_each'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:56:in call_processors'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:75:in
call_processor'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:57:in block in call_processors'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:56:in
reverse_each'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:56:in call_processors'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:134:in
load_from_unloaded'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:60:in block in load'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:317:in
fetch_asset_from_dependency_cache'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:44:in load'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/cached_environment.rb:20:in
block in initialize'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/cached_environment.rb:47:in load'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/bundle.rb:23:in
block in call'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/utils.rb:196:in dfs'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/bundle.rb:24:in
call'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:75:in call_processor'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:57:in
block in call_processors'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:56:in reverse_each'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/processor_utils.rb:56:in
call_processors'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:134:in load_from_unloaded'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:60:in
block in load'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:317:in fetch_asset_from_dependency_cache'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/loader.rb:44:in
load'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/cached_environment.rb:20:in block in initialize'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/cached_environment.rb:47:in
load'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/base.rb:66:in find_asset'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/base.rb:73:in
find_all_linked_assets'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:134:in block in find'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:133:in
each'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:133:in find'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/sprockets/manifest.rb:185:in
compile'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-rails-3.1.1/lib/sprockets/rails/task.rb:68:in block (3 levels) in define'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-3.6.3/lib/rake/sprocketstask.rb:147:in
with_logger'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/sprockets-rails-3.1.1/lib/sprockets/rails/task.rb:67:in block (2 levels) in define'
/var/www/discourse/vendor/bundle/ruby/2.3.0/gems/rake-11.2.2/exe/rake:27:in
'
/usr/local/bin/bundle:22:in load'
/usr/local/bin/bundle:22:in
'

Any words of wisdom? I have some unhappy users.

Posts: 7

Participants: 3

Read full topic

Auto backup does not create log and does not notify admin?

$
0
0

@STiNGER wrote:

Yesterday I upgraded from Discourse v1.7.0.beta8 to v1.7.0.beta9.
Straight after, I configured backups so that every night at 3:30 a backup is made.
I am keeping the last 10 backups.

This morning I noticed a new backup file was created.
The log however said "No logs yet" and was empty.
Also, the admin user had not received a notification that the backup had succeeded successfully.

Is this the expected behavior?
Is the backup log only created and the admin user only notified when doing manual backups?

Posts: 1

Participants: 1

Read full topic

Change Default Avatar in home page (for original author avatar)

Updating CName Records

$
0
0

@King_Daniel wrote:

Hi guys, i am slightly stuck in the installation process. For some reason my domain provider has suggested i add the cname files via my hosting account(where my main domainis hosted) while tryinna do this i am finding it difficult getting valuses to insert as cname... Please see the image below, i would be glad to get help on this here.

What value am i to insert in the Cname section below?
BTW my discourse installation at discourse.example.com is coming up but seems to be broken. i think this may be the cause and fix. Would appreciate any help getting this done.
Thanks Guys

Posts: 1

Participants: 1

Read full topic


Pasting images into the composer is still not working in IE11

$
0
0

@Inkyeong wrote:

I want to serivce it all browsers such as IE, Chrome, firefox.
Pasting images into the composer is cleary working well in Chrome and firefox.
but IE11 is still not working.
so I develop function for Pasting images into the composer in IE11.
It is based on _firefoxPastingHack() function because looks like IE11 behave like Firefox.
May I add this code for new pull request?

_iePastingHack(){
 const uaMatch = navigator.userAgent.match(/Trident\/(\d+)\.\d/);
 if (uaMatch){

   const pasteFile = function(){
     var type = "image";
     var content = "";
   }

   var pasteList = [];

   this.$().append( Ember.$("<div id='contenteditable' contenteditable='true' style='height: 0; width: 0; overflow: hidden'></div>") );
   this.$("textarea").off('keydown.contenteditable');
   this.$("textarea").on('keydown.contenteditable', event => {
       if ((event.ctrlKey || event.metaKey) && (event.keyCode === 86)) {

         const textarea = this.$("textarea")[0];
         const selectionStart = textarea.selectionStart;
         const selectionEnd = textarea.selectionEnd;

         // Focus the contenteditable div.
         const contentEditableDiv = this.$('#contenteditable');
         contentEditableDiv.focus();

         // The paste doesn't finish immediately and we don't have any onpaste
         // event, so wait for 100ms which _should_ be enough time.
         setTimeout(() => {

           var file = new pasteFile();

           const dataURLtoBlob = function(dataURL) {
             // Decode the dataURL
             var binary = atob(dataURL.split(',')[1]);
             // Create 8-bit unsigned array
             var array = [];
             for(var i = 0; i < binary.length; i++) {
                array.push(binary.charCodeAt(i));
             }
             // Return our Blob object
             return new Blob([new Uint8Array(array)], {type: 'image/png'});
           };

           const pastedImg  = contentEditableDiv.find('img');
           if (pastedImg.length === 1) {
              file.type = "image";                                                                                                                                                                                330,3-6       51%
              file.content = dataURLtoBlob(pastedImg.attr('src'));
              pasteList.push(file);
              pastedImg.remove();
            }else{
              if(contentEditableDiv.text() != ""){
                contentEditableDiv.find("br").replaceWith("\n");

                file.type = "text";
                file.content = contentEditableDiv.text();
                pasteList.push(file);
                contentEditableDiv.text("");
              }else{
                file = pastedList[pastedList.length-1];
              }
            }

            // For restoring the selection.
            const textareaContent = $(textarea).val()
                 ,startContent = textareaContent.substring(0, selectionStart)
                 ,endContent = textareaContent.substring(selectionEnd);

            const restoreSelection = function(pastedText) {
              textarea.focus();
              $(textarea).val( startContent + pastedText + endContent );
              textarea.selectionStart = selectionStart + pastedText.length;
              textarea.selectionEnd = textarea.selectionStart;
            };

            if (file.type == "text") {
              restoreSelection(file.content);
            } else {
              restoreSelection("");
              this.$().fileupload('add', {files: file.content});
            }

          }, 100);
        }
    });
  }
}

Posts: 1

Participants: 1

Read full topic

AmazonSES and Bitnami AMI

$
0
0

@zetaone wrote:

Hi.

We are using AmazonSES and Bitnami AMI.
Email has been verified and IAM User credentials generated.

But we are not clear what will go into some of these since all we have are the Access Key and Secret Credentials:

smtp_address = "smtp.gmail.com"  (OK)
smtp_port = 587  (OK)
smtp_domain = example.com  (not sure)
smtp_user_name = 'your_user@domain.com' (not sure)
smtp_password = 'your_password' (not sure)
smtp_enable_start_tls = true (OK)
authentication = plain

If anyone has used this configuration before, please could you enlighten us?

Posts: 1

Participants: 1

Read full topic

Set direction of text depending on text itself

$
0
0

@Aymane_Shuichi wrote:

Facebook has it !

When Writing with an RTL language the ticker goes to the other way which gives a very intuitive experience.

I need this for my community because we are bilingual.
Thanks Discourse .. Love

Posts: 1

Participants: 1

Read full topic

Fenced code block with lang hint breaks subsequent formatting

$
0
0

@Patrick_David wrote:

A test google link and some simple formatting.

A fenced code block, with language set to C++ ( ```C++):

#include "MIDIUSB.h"

#define ENCODER_PIN_A A3
#define ENCODER_PIN_B A2
#define NUMBER_CLICKS 30 // the number of clicks per rotation of the encoder

#define SLIDER_PIN A1
#define SLIDER_MAX 1015 // my fader has a tiny resistance when completely open

unsigned long loopTime;
uint8_t encoder_state_prev;
uint8_t encoder_pos_prev = 0;
uint8_t slider_7bit_prev = 0;

A test [google link](http://www.gooogle.com) and some **simple** _formatting_. A new paragraph. Another fenced code block:

test

If you are seeing raw markdown above the test code block, something is amiss. :slight_smile:

Changing the language for the first fenced code block to cpp or leaving it blank fixes the problem, but using C++ or c++ both cause it to happen, which is odd if we're still using highlight.js because it seems to indicate that it should work?

This seems possibly related to this topic:

Though in this case I'm not using curly braces, but normal (I think markdown compliant fenced blocks).

Here is a gist with the top part of this post (apparently working ok on github):

Posts: 4

Participants: 2

Read full topic

:( Error while trying to load Something went wrong

$
0
0

@adrelanos wrote:

v1.7.0.beta9 +4

:(
Error
while trying to load
Something went wrong.

Getting this since a while. How to debug? How to fix?

There is nothing in apache error log.

Posts: 9

Participants: 3

Read full topic

Bulk Invite not working after recent update

$
0
0

@SMT wrote:

Hi, The bulk invite feature is not working after the latest update (1.7.0.beta9). The button is unclickable. It worked one time only but it not allowed me to pick txt file as it was allowing before.

Posts: 4

Participants: 3

Read full topic

Composing a prefilled topic via url - tag parameter breaks it

$
0
0

@Ernest_Oppetit wrote:

Hi

Was looking forward to using https://meta.discourse.org/t/compose-a-new-pre-filled-topic-via-url/28074 with tags

This works
https://forums.improbable.io/new-topic?title=topic%20title&body=topic%20body&category=feedback

But this does not
https://forums.improbable.io/new-topic?title=topic%20title&body=topic%20body&category=feedback&tags=docs-issue
(leads to a page that says 'there are no latest posts' even though there are)

The docs-issue tag already exists

Is this expected?

Thanks in advance

Posts: 2

Participants: 2

Read full topic


Mobile : Post Amend / Tag Selection

$
0
0

@RobMeade wrote:

Hi,

I noticed the other day that one of our users had mentioned he had tagged his post incorrectly. I attempted to modify the tag using my mobile (Android). I typed in the first few characters of the correct tag and it appeared in the suggestive search results, however, when I then tapped it, instead of it selecting it for the field, it took me to a new page which listed all of the other topics using that tag.

On the desktop version this behaviour doesn't occur, using the mouse, I am able to select the tag having entered some of the first characters and it is then placed in the field, at this point I am then able to submit the post.

Any thoughts?

Kind regards

Rob

Posts: 8

Participants: 3

Read full topic

Does notifications work if you add a tag via editing?

$
0
0

@Rob_Nicholson wrote:

Guess I could test this on a live system but what happens if you post a topic and then edit it to include some more @tags? Does the system send the notifications just to the new tags added?

Posts: 3

Participants: 2

Read full topic

Modifying Privacy Policy to conform with EU law

$
0
0

@njamdal wrote:

I'm trying to formulate a privacy policy for those of us who are neither lawyers nor an organization large enough to hire any, but do care about privacy. I need the privacy policy to conform to my country's privacy laws.

This task is similar to adopting it to the EU's General Data Protection Regulation (GDPR). This law won't come into force quite yet, but I'm sure quite a few Discourse administrators will need to adopt their privacy policy to it anyways. Therefore I'm creating this topic about the questions concerning this. Be aware that I'm not an expert. My comments consist mainly of assumptions and questions.

There have been topics with similar questions, but I haven't found any answers

https://meta.discourse.org/t/default-ip-log-retention-time/42135
https://meta.discourse.org/t/faq-privacy-policy-for-non-english-discourse/19412
https://meta.discourse.org/t/data-retention-policy-implementation/38470
(As a new user my link count per post is restricted.)

The most relevant parts of the law are Article 12–13 (beginning on page one in [this]http://eur-lex.europa.eu/legal-content/EN/TXT/PDF/?uri=OJ:L:2016:119:FUL PDF document; more easily accessable on this web page). I don't think Article 14 applies.

Article 12 states, among other things, that information all information related to the Privacy Policy should be in “in a concise, transparent, intelligible and easily accessible form, using clear and plain language, in particular for any information addressed specifically to a child.”

Article 13 is about “Information to be provided where personal data are collected from the data subject”. It states:

  1. Where personal data relating to a data subject are collected from the data subject, the controller shall, at the time when personal data are obtained, provide the data subject with all of the following information:
    (a) the identity and the contact details of the controller and, where applicable, of the controller's representative;

That would the the administrator.

(b) the contact details of the data protection officer, where applicable;

Usually not applicable.

(c) the purposes of the processing for which the personal data are intended as well as the legal basis for the processing;

As to the purpose, basically what the section [What do we use your information for?]https://meta.discourse.org/privacy#use in the Discourse Privacy Policy says. The legal basis would be the GDPR.

(d) where the processing is based on point (f) of Article 6(1), the legitimate interests pursued by the controller or by a third party;

Processing is mainly based on Article 6(1) point (f), but point (a): consent of the data subject. I guess the logging the IP addresses of visitors serves a legitimate interest of the controller; but I don't know about storing cookies on the data subject's computer.

(e) the recipients or categories of recipients of the personal data, if any;

None, assuming one does not use Google Analytics.

(f) where applicable, the fact that the controller intends to transfer personal data to a third country or international organisation and the existence or absence of an adequacy decision by the Commission, or in the case of transfers referred to in Article 46 or 47, or the second subparagraph of Article 49(1), reference to the appropriate or suitable safeguards and the means by which to obtain a copy of them or where they have been made available;

Ok, let's just pretend the data stays in the EU.

  1. In addition to the information referred to in paragraph 1, the controller shall, at the time when personal data are obtained, provide the data subject with the following further information necessary to ensure fair and transparent processing:

(a) the period for which the personal data will be stored, or if that is not possible, the criteria used to determine that period;

The Discourse Privacy Policy states:

We will make a good faith effort to:

  • Retain server logs containing the IP address of all requests to this server no more than 90 days.
  • Retain the IP addresses associated with registered users and their posts no more than 5 years.

First of all, I don't think a good faith effort is good enough. Secondly and asking as an administrator, what piece(es) of software actually keeps the server logs when Discourse is set up with Docker? Discourse itself only logs the IP addresses of registered visitors, right? As to the IP addresses of registered users, are these logged for visits only? Then it should not be too hard to anonymize them by deleting the last byte after a set amount of time.

(b) the existence of the right to request from the controller access to and rectification or erasure of personal data or restriction of processing concerning the data subject or to object to processing as well as the right to data portability;

Eh...?

(c) where the processing is based on point (a) of Article 6(1) or point (a) of Article 9(2), the existence of the right to withdraw consent at any time, without affecting the lawfulness of processing based on consent before its withdrawal;

So a data subject can have all his or her data deleted if requested?

(d) the right to lodge a complaint with a supervisory authority;
(e) whether the provision of personal data is a statutory or contractual requirement, or a requirement necessary to enter into a contract, as well as whether the data subject is obliged to provide the personal data and of the possible consequences of failure to provide such data;

Standard phrasings will pop up in time.

(f) the existence of automated decision-making, including profiling, referred to in Article 22(1) and (4) and, at least in those cases, meaningful information about the logic involved, as well as the significance and the envisaged consequences of such processing for the data subject.

I don't think this applies to Discourse.

Posts: 1

Participants: 1

Read full topic

Wordpress plugin to add link only

$
0
0

@marclouis wrote:

I wanted to setup a couple of wordpress blogs to share a discourse environment, but still leave wordpress native commenting in place, so just add "continue discussion about this post at discourse.otherdoman.com" above (or below) the native comments, and have that running aon a couple of wordpress blogs.
Also, I can see bloggers forgetting to tick the post to discourse option, can that be set to enabled by default.
I have discourse working on stage sites fine as it looks like it's intended, but can't figure these two things out.

Posts: 4

Participants: 2

Read full topic

Cannot create new topics (already disabled plugins)

$
0
0

@Joe_Fedric wrote:

I'm unable to post or reply to posts on my forum. This occurs when I select the "New Topic" button on my desktop and mobile sites:

Given the plugin-third-party mention in the console, I disabled all of my plugins, rebuilt, same error. It occurs on Mac and Windows.

I'm not sure when this issue started, maybe sometime this afternoon. I did not make any changes on my side to cause the break, it just stopped working all of a sudden. Anyone else getting this, or know how to troubleshoot/resolve this problem?

Thanks for any advice you can provide.

Posts: 2

Participants: 2

Read full topic

Viewing all 60642 articles
Browse latest View live


Latest Images