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

Can Admin Disallow Changing Email Address and Usernames?

$
0
0

pkustl wrote:

This forum application is great. I have successfully built it and started to run. Our forum is close community which all users and emails are imported automatically from our school's database. All users are required to check their official email address regularly. So I do not want the users change their email addresses. Also, the system allocate an username to each one. This can not be changed too.
I think for a close community, many companies or school may have such kind of demands. Is there any way to modify the code and achieve the above mentioned objectives? Thanks!
@sam @codinghorror

Posts: 7

Participants: 7

Read full topic


Automatic submission of content to a Discourse forum?

$
0
0

Matt wrote:

Could I email/sms/tweet to a Discourse forum?

It would be cool to use Discourse as my single communication platform that would display all communications directed at me.

Are there existing Discourse API features that do this sort of thing?

I know the Twitter API could support it, and I assume something like that could would be doable with email.

Posts: 5

Participants: 3

Read full topic

Initial Discourse badge design spec

$
0
0

Jeff Atwood wrote:

Thanks to a generous grant from an awesome member of our community we now have the opportunity to hire someone on a contract basis to work on implementing a basic badge system in Discourse.

But first, we have to explain what the project is, and solicit feedback on it. Goals:

  • A simple badge system, by that I mean implementable in a reasonable amount of time (6-8 weeks?).
  • Something we are comfortable folding into core, and possibly enabling here and a few other willing partners, but will default to off for quite a while.
  • Something with a solid base architecture that we can build on later to add more features.
  • The contractor will work directly with the Discourse team, the project sponsor -- and you, the community!

So what should a simple, solid V1 badge system look like? The Discourse team discussed it and here's what we came up with:

What is a badge?

  • Name
  • Image
  • Description
  • Single/Multiple allowed
  • (optional) ruleset for auto-award

I believe the images are very important here, because the value of a badge likes partly in the cool image (sticker, if you will) that you get associated with your account.

Staff should be able to create an unlimited number of manually awarded badges. The automatic badges will probably be hard-coded in V1 because we don't want to implement a complicated rules engine. Perhaps there could be some rough parameters, but that's it..

Where will badges appear?

I think a simple number underneath the username in the left gutter is best. The number indicates the number of badges you've earned. I thought about another glyph like a trophy or star, but I think letting a simple number send the message does it without all the weird emotional baggage of a glyph.

Clicking the number will take you to the badges page on the user's profile. The badge page should show:

  • list of badges awarded aka "trophy case"
  • when they were awarded
  • by who, if manually awarded
  • why, if automatically awarded
  • how many times they were awarded (if multiples are possible)

How will badges be awarded?

  1. We must support manual award of badges by staff members for any reason, to any user. This is essential.

  2. We should also have a core of 10 badges that are auto-awarded for reasons that support our goal of civilized discourse. In other words, the badges encourage specific behaviors on the forum that help people have better conversations. These 10 should be exemplary, clearly excellent examples of good behaviors.

How will users be notified of the badge award?

Presumably through the notification stream as usual.

What should the 10 initial auto-awarded badges be?

And more importantly what positive community behavior do they encourage?

  1. (name tba) Filled out your user profile completely including an avatar. Why? A community full of avatars and useful profile information makes it easier to see who you're talking to.

  2. (name tba) Read the community guidelines (/faq) completely. Why? The community guidelines are everyone's recipe for civilized discourse.

  3. (name tba) Cast a like. Why? Learning to give your fellow community members a hearty pat on the back -- and avoiding meaningless "+1" and "me too" posts --

  4. (name tba) Quoted a post. Why? Quoting is crucial for flat discussions, learning to select text in another post (or use the quote button in the toolbar) helps keep discussions on topic and readable.

  5. (name tba) Replied as new topic. Why? The best way to keep topics on topic is to learn when to take your discussion to a related topic rather than replying directly.

  6. (name tba) Visited multiple days, read multiple topics. Why? Showing up regularly and reading a bunch of stuff the community is posting is the baseline of meaningful activity on any forum.

  7. (name tba) Read a long topic, every post, all the way to the end. Why? Endurance! And yes @sam we will check that you didn't just mindlessly scroll as fast as you could to get to the end, either. Read Time Matters.

  8. (name tba) Shared a topic that got clicked on. Why? Sharing topics with the outside world (using the share button and the URL that has your username on it) is how we attract new blood to any community.

  9. (name tba) Flagged a topic or post. Why? We put a trashcan on every street corner so the city can stay clean. Everyone has to pitch in.

  10. (name tba) Edited one of your posts. Why? We want people to be unafraid to edit their stuff to make corrections or improvements.

  11. (name tba) Trust level promotion. Why? This is kind of a stealth way of getting education about what trust levels mean in here. You go up a level, you get directed to a page that explains your new "powers" in badge form..

I know, I know, you probably have a dozen badge ideas. But before you post,

  • We want a limited list of badges in V1 to keep it simple. So the only way your badge is getting on this list is if it's way more awesome than one of the 10 that's already here.

  • Before proposing anything, PLEASE consider first: what positive community behavior would your badge encourage? If you can't explain that first, don't do it.

Anything else?

I'm sure I've forgotten or neglected to cover a bunch of stuff. Feedback welcome. And remember, we're trying to keep this simple in V1!

Posts: 101

Participants: 25

Read full topic

Spam problem: 52 spam posts in one hour, can't Delete Spammer

$
0
0

Lowell Heddings wrote:

This user signed up and spammed 52 posts in about 30 minutes. Now I can't use the Delete Spammer feature. I also can't use the "Delete all posts" feature that normally shows up in the profile admin.

http://discuss.howtogeek.com/users/jadybloch/activity

Lots of flags for being a spammer. The delete spammer features shouldn't tap out.

They somehow managed to get their trust level up to 1... in an hour.

Posts: 17

Participants: 5

Read full topic

"Your topic is similar to..." Always comes up

$
0
0

Callan Bryant wrote:

On my install, no matter what I start typing, if I pause, the 'is similar' notice comes up. Is this a bug or just intended design? I guess it would make sense if it's just looking for the closest match. There are only about 8 posts in our forum at the moment.

At least on my dataset, the suggestions are definitely irrelevant. Perhaps it should only prompt when the dataset is big enough?

Posts: 10

Participants: 4

Read full topic

How can you hide the MiniProfiler?

$
0
0

Alfonso Muñoz Pomer Fuentes wrote:

I have an instance of Discourse already set up and running in production mode, but the little snippets of execution times by MiniProfiler still show up. How can you disable it? Does it affect performance significantly?

Posts: 11

Participants: 8

Read full topic

Checklist: A simple markdownified checkbox-plugin with inline-updating

$
0
0

Benjamin Kampmann wrote:

Hey folks,

I'm glad to share with you my new Checklist plugin.

Essentially it adds a markdown dialect to render [] and [*] into pretty checkboxes. See this preview screenshot:

On top, if the user has the rights to edit the post and such checkboxes are found, the user can toggle them by clicking them. For more details, please check the project Readme.

Enjoy.

Update

Just updated to a new version. See changelog:

  • switching to font-awesome based rendering
  • adding the new [_] option
  • adding doc reference to shared-edits plugin
  • fix issue when that updating after [x] or [-] wasn't possible
  • this unfortunately is backwards incompatible, if checkboxes don't show up anymore, you need to re-save them to the database.

Posts: 10

Participants: 4

Read full topic

Change to DD Mmm / Mmm 'YY for post dates

$
0
0

Kane York wrote:

Quick! Which of these two is older?

Errr.... Oh! The one with the apostrophe!

Took you a second, didn't it?

I took an impromptu poll on IRC to confirm this:

<ii> riking_: it doesnt say if its feb 2013 or 13th of feb etc
<ii> the '13 would suggest 2013 tho

(after getting it wrong)
<culex> I thought Feb didn'th ave the apostrophe

<Malqua> no
<Malqua> it was definitely jan ??, 13

I think that the date formats, even for English, should be changed to DD Mmm (so 13 Jan) and Mmm 'YY (the current, so Feb '13). This way, they are visually different.

Posts: 10

Participants: 4

Read full topic


Moderator action "posts" don't stand out enough

$
0
0

FichteFoll wrote:

I did mention this about a year ago, but it was inside of another thread and not the core topic, even though it deserves to be one.

Using this topic as an example, you can see a bunch of "moderative posts" (which is what I'll call them) that tell you that something has been done. They look like normal posts and they are written in the first person perspective, but they are not normal posts, and I feel like the yellow background is not enough to tell that "action has taken place". It was worse when the background was a slight blue.

So, why is this a problem? Well, I currently see two issues with this:

  1. As I saw these the first time I immediately thought: "Why do these people create such a lengthy post for closing a thread?" I know it's common practice to announce who closed a thread so that users know where to address their complaints (I moderated a community for a while), but in that case this is a lot redundant information.
  2. It looks like a normal post and not like something created automatically. You can even like it or bookmark it - or flag and reply to it. I guess being able to reply is reasonable since it opens a public discussion about a moderator decision, but all the other stuff is unnecessary and even that is not really useful in 95% of the cases.

As an example for where this is handled differently I'd like to point to github's issues. (Random example issue)

As you can see, action is clearly different from comments and it is immediately obvious what action has been performed due to the icons.
In a place dedicated to discussions (such as discourse) comments and action should be visually distinguishable even for first-time visitors.

Posts: 12

Participants: 7

Read full topic

Migrating an old Discourse install to Docker

$
0
0

Sam Saffron wrote:

Deploying Discourse on Docker is currently our recommended setup. It avoids many pitfalls installations have, such as misconfigured nginx, sub-optimal Ruby defaults and so on.

The Docker based setup ensures we are all on the same page when diagnosing installation issues and completely eradicates a class of support calls.

Today, all sites hosted by Discourse are on Docker.

This is a basic guide on how to move your current Discourse setup to a Docker based setup.

Getting started

First, get a blank site with working email installed. Follow the guide at https://github.com/discourse/discourse_docker and install a new, empty Discourse instance.

Tips:

  • Bind the web to a different port than port 80, if you are on the same box. Eg:

    expose:
      - "81:80"
  • Be sure to enter your email in the developer email section, so you get admin:

    env:
      # your email here
      DISCOURSE_DEVELOPER_EMAILS: 'my_email@email.com'
  • Make sure email is setup and working by visiting /admin/email and sending a test email.

  • Make sure you have ssh access to your container ./launcher ssh my_container must work.

If any of the above is skipped your migration will fail.

At the end of this process you will have a working website. Carry on.

Exporting and importing the old site

  • Ensure you are running the absolute latest version of Discourse. We had bugs in the export code in the past, make sure you are on latest before attempting an export.

  • On your current instance

    • go to /admin/backups and click on the button.
    • once the backup is done, you will be able to it.
  • On your newly installed docker instance

    • enable the allow_restore site setting
    • refresh your browser for the change to be taken into account
    • go to /admin/backups and your backup.
    • once your upload is done, click on the button
  • Destroy old container ./launcher destroy web

  • Change port binding so its on 80

  • Start a new container

Yay. You are done.

Posts: 8

Participants: 4

Read full topic

Change Discourse domain (Docker)

$
0
0

Brandon Mathis wrote:

Hey guys. How can I change the domain of my site if I installed with docker. New users that sign up are be directed to the old domain frowning

Posts: 5

Participants: 3

Read full topic

Admin panel doesn't load custom css

$
0
0

Sebastien Miquerolle wrote:

I noticed this issue recently on my dark theme forum. When I go directly to the admin panel, or open it in a new tab/new windows, it doesn't load the custom css and I have a white admin panel. And after that, if I return to the forum (on the same tab), the forum is white (instead of dark).

Seems that the custom css is only loaded when the first load is on the forum, not if the first load is on the admin panel.

I tried on Chrome and IE10.

Posts: 5

Participants: 3

Read full topic

How should we implement polls?

$
0
0

Sam Saffron wrote:

Continuing the discussion from So, you want to help out with Discourse:

Almost all forum software out there supports "polls". They can be quite fun and allow you to easily gauge what people like / dislike.

@Hunter was asking for some sort of spec of how I would see this work, so here I go.

  • Polls should be designed as a standalone plugin. This important cause it ensures our extensibility story is solid and allows us, further down the line, to upgrade poll functionality outside of core releases.

  • I think polls should simple be an extension of markdown that only applies on the first post in a topic. Eg:

    <poll>
    - This is the first option
    - This is the second option
    - This is the third option
    </poll>
  • Initial implementation should only allow one vote per option.

  • Initial implementation should not allow for anonymous voting.

  • Choices must be locked in after 5 minutes

  • On initial render it should not display the results, you must either vote or click on "show results" to see them.

  • Initial implementation does not need to worry about randomising options on first view

  • Data for the polls should be stored in Topic or Post meta_data (an hstore column) or in PluginStore, a custom migration in a plugin is a major work to undertake which we can skip for now.

  • Controller to receive voting should be registered by the plugin using a rails engine, example is my blog https://github.com/samsaffron/blog

Questions / ideas?

I would like to keep the first go at this rather simple with minimal features.

Posts: 63

Participants: 26

Read full topic

Amazon kindle books - don't work for embed image, etc

$
0
0

Briancguy wrote:

Discourse does a great job of embedding the information about a book when you post the link, but if you post a link to the kindle version of the book - it doesn
t work. Here is an example:

Posts: 2

Participants: 2

Read full topic

Shared Edit: share the permission to edit your post with other users

$
0
0

Benjamin Kampmann wrote:

Heyah,

I'm proud to announce another plugin of mine. Inspired by wanting to be able to use my Checklist plugin collaboratively with other people, I created the Shared Edit Plugin. Once installed and enabled (see installation section of the readme), another action appears on ones posts allowing to share the permission to edit the post with other users:

users

Once saved, those other users will be able to edit that post, too. Also allowing to check the check boxes of the checklist plugin. Of course their changes will show up in the normal history.

Enjoy.

Posts: 3

Participants: 3

Read full topic


Beginners Guide to Deploy Discourse on Digital Ocean using Docker

$
0
0

Arpit Jalan wrote:

The Discourse Docker Image makes it easy to set up Discourse on a cloud server. We will use Digital Ocean, although these steps will work on other similar services.

This guide assumes that you have no knowledge of Ruby/Rails or Linux shell. Feel free to skip steps you are comfortable with.

Create New Digital Ocean Droplet

Discourse requires a minimum of 1 GB RAM, however 2 GB RAM is strongly recommended. We'll use "discourse" as the Hostname.

Install Discourse on Ubuntu 12.04.3 LTS x64. We always recommend using the current LTS distribution.

You will receive a mail from Digital Ocean with the root password to your Droplet. (However, if you use SSH keys, you may not need a password to log in.)

Access Your Droplet

Connect to your Droplet via SSH:

ssh root@192.168.1.1

(Alternately, use Putty on Windows)

Replace 192.168.1.1 with the IP address of your Droplet.

You will be asked for permission to connect, type yes, then the root password, which is in the email Digital Ocean sent you when the Droplet was set up. Enter it.

Install Git

apt-get install git

Generate SSH Key

We strongly recommend setting a SSH key because you may need to access the Rails console for debugging purposes. This cannot be done after bootstrapping the app.

ssh-keygen -t rsa -C "your_email@example.com"

(We want the default settings, so when asked to enter a file in which to save the key, just press enter. Via GitHub's SSH guide.)

Install Docker

apt-get update
apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring

Reboot the server:

reboot

This will log you out from your SSH session, so reconnect:

ssh root@192.168.1.1

Finish installing Docker:

wget -qO- https://get.docker.io/ | sh

Install Discourse

Create a /var/docker folder where all the Docker related stuff will reside:

mkdir /var/docker

Clone the Official Discourse Docker Image into this /var/docker folder:

git clone https://github.com/discourse/discourse_docker.git /var/docker

Switch to your Docker folder:

cd /var/docker

Copy the samples/standalone.yml file into the containers folder as app.yml, so the path becomes containers/app.yml:

cp samples/standalone.yml containers/app.yml

Edit app.yml:

nano containers/app.yml

(We recommend Nano because it works like a typical GUI text editor, just use your arrow keys. Hit CtrlO then Enter to save and CtrlX to exit. However, feel free to choose whatever text editor you like. In the below screenshot we use Vim.)

Edit as desired, but at minimum set DISCOURSE_DEVELOPER_EMAILS and DISCOURSE_HOSTNAME.

We renamed DISCOURSE_HOSTNAME to discourse.techapj.com, this means that we want to host our instance of Discourse on http://discourse.techapj.com/. You'll need to modify your DNS records to reflect the IP address and preferred URL address of your server.

Mail Setup

Email is critical to Discourse. We strongly recommend configuring mail settings before bootstrapping.

  • If you already have a mail server, put your existing mail server credentials in the app.yml file.

  • Otherwise, create a free account on Mandrill (or Mailgun, or Mailjet), and put your mail credentials (available via the Mandrill dashboard) in the app.yml file. The settings you want to change are DISCOURSE_SMTP_ADDRESS, DISCOURSE_SMTP_PORT, DISCOURSE_SMTP_USER_NAME, DISCOURSE_SMTP_PASSWORD.

  • Be sure you remove the comment character # from the beginning of these mail configuration lines!

Add Your SSH Key

If you successfully generated the SSH key as described earlier, get it:

cat ~/.ssh/id_rsa.pub

Copy the entire output and paste it into the ssh_key setting in the app.yml file.

Bootstrap Discourse

Be sure to save the app.yml file, and begin bootstrapping Discourse:

./launcher bootstrap app

This command may take some time, so be prepared to wait. It is automagically configuring your Discourse environment.

After that completes, start Discourse:

./launcher start app

Congratulations! You now have your own instance of Discourse, accessible via the domain name you entered in app.yml earlier.

You can also access it by visiting the server IP address directly, e.g. http://192.168.1.1.

Log In and Become Admin

Sign into your Discourse instance. If you configured DISCOURSE_DEVELOPER_EMAILS and your email matches, your account will be made Admin by default.

If your account was not made admin, try SSH'ing into your container (assuming you entered your SSH key in the app.yml file):

./launcher ssh app
sudo -iu discourse
cd /var/www/discourse
RAILS_ENV=production bundle exec rails c
u = User.last
u.admin = true
u.save

This will manually make the first user an admin.

If anything needs to be improved in this guide, feel free to ask on meta.discourse.org, or even better, submit a pull request.

Posts: 133

Participants: 30

Read full topic

Backup / restore puts database password on screen and in log

$
0
0

Michael wrote:

When making or restoring a backup, the database password is not only shown in the 'log' screen, but it appears in the log file as well. That doesn't seem like a very good idea...

Running: PGPASSWORD=XXXXXXXX pg_dump --schema=public --file='/var/www/discourse/tmp/backups/dbXXXX/2014-03-10-173034/dump.sql' --no-owner --no-privileges --verbose --host=localhost --username=uXXXX dbXXXX

Posts: 2

Participants: 2

Read full topic

File Upload: Permission denied

$
0
0

Richard wrote:

Hello!

I installed bitnami discourse on Amazon EC2 and updated to 0.9.8.9. It's working but I have the following message in the production log when I try to upload a file:

<message>Permission denied - /opt/bitnami/apps/discourse/htdocs/public/uploads</message>

http://***.com.br/uploadsErrno::EACCES

The permissions seem OK:

Thank you.

Posts: 2

Participants: 1

Read full topic

When Do Category Topic Counts Update?

$
0
0

Zander Macquitty wrote:

I've just set up my very first discourse forum and I've noticed that the topic counts either don't update quickly or perhaps at all. I have a screenshot which shows a category with two posts ah hour ago and the number of daily, weekly and monthly posts are "0". Unfortunately, I'm not able to upload this at this time as I am a new user. My question is: when is this value updated? Is there any way to cause this value to update more frequently?

Aside from this minor issue, setting Discourse up has been surprisingly painless. Thank you so much!

Zander

Posts: 4

Participants: 3

Read full topic

RuntimeError: can't modify frozen object

$
0
0

Michael Gutteridge wrote:

I've got a broken Discourse install. It's installed from Docker and is current.

I've attempted to rename the server using the procedure described here and have somehow managed to b0rk it. The server appears to start properly, but accessing it yeilds this error in production.log:

    Started GET "/" for 140.107.75.238 at 2014-03-11 14:36:37 +0000
Processing by ListController#latest as HTML
RuntimeError: can't modify frozen object: SELECT COUNT(*) AS count_all, notification_type AS notification_type FROM "notifications"  WHERE "notifications"."user_id" = $1 AND (id > 7 and read = false) GROUP BY notification_type
Completed 500 Internal Server Error in 220ms

RuntimeError (can't modify frozen object):
  app/models/user.rb:221:in `unread_notifications_by_type'
  app/models/user.rb:235:in `unread_notifications'
  app/controllers/application_controller.rb:230:in `preload_current_user_data'
  app/controllers/application_controller.rb:145:in `preload_json'
  lib/middleware/anonymous_cache.rb:104:in `call'
  config/initializers/quiet_logger.rb:10:in `call_with_quiet_assets'
  config/initializers/silence_logger.rb:19:in `call'
  lib/middleware/unicorn_oobgc.rb:95:in `process_client'

Is there any advice as to how I should proceed?

Thanks much..

Posts: 8

Participants: 4

Read full topic

Viewing all 60642 articles
Browse latest View live




Latest Images