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

Moving the pillbar into the header

$
0
0

Nuck wrote:

I'm writing a large and rather involved theme which requires some of the markup to be modified, and I have a few questions regarding this.

First thing I want is to do is make it so that it shares a global header bar with the rest of our website, which includes the logo in it. In place of the logo, the Discourse bar ought to display the page's <title> or the pillbar (if the page has one, like on the topic list pages).

I'm modifying the .handlebars files on a fork (since git will hopefully make it easy enough to merge future changes in) and I'm trying to figure out what my environment inside the handlebars files is. Is there any documentation on the environment? Is it even possible or sane to move the pillbar up into header.js.handlebars?

Posts: 5

Participants: 3

Read full topic


Youtube is Z-fighting again

Allow meta to be unpinned for regular users

$
0
0

Hrishikesh Thakre wrote:

Once user becomes regular (from basis), meta topic pinned at the top isn't really important to him. He knows what site is about, functioning and other details. Why not allow him to unpin it. It takes unnecessarily large (6 sentences) premium space at the top.

Edit: It may also make more sense for the regular people on devices with smaller display like phone / mini pad etc..

Posts: 18

Participants: 9

Read full topic

New visitor message confusing people

$
0
0

ABiS wrote:

Continuing the discussion from User always considered "a new visitor", and "composer was opened without a draft key":

On the above case the user is also shown the message 'Welcome! As a new visitor, we thought you might like to start with the top discussion topics.' which is a nice touch the first time and possibly a few more times after that.

But a day or two later that message becomes confusing, people have no idea what trust levels are, that they are supposed to improve theirs and so forth. That message after a little while puzzles them and they think 'I'm not new, something must be wrong' and then they send me an email asking if there are issues with the site smile

I don't know how feasible that is but I think the message shouldn't be linked to the trust level but rather to the overall age of the user. Or maybe as simple as: show it the first couple of times they login and then don't.

Thoughts?

Posts: 17

Participants: 4

Read full topic

Viewing open / archived or closed topics

Beginners Guide to Deploy Discourse on Digital Ocean using Docker

$
0
0

Arpit Jalan wrote:

Ok, so you want to deploy your own instance of Discourse, and looking from where to start? You've come to the right place, here I'll walk you through the installation steps with the help of screenshots, so you won't find yourself lost, let's begin this wonderful journey.

Unlike many other Rails Apps the deployment of Discourse is extremely simple thanks to awesome Docker Image by @sam, all you need is a ssh access to cloud server. In this guide I'll assume that you are using Digital Ocean, while the steps will work fine on other cloud servers as well.

The below guide assumes that you have no knowledge of Ruby/Rails, Shell, so it will be detailed. Feel free to skip steps which you think, you are comfortable with.

Create new Digital Ocean Droplet

Discourse Team recommends a minimum of 1 GB Ram, so that's what we are gonna go with. For the sake of simplicity we will name the Hostname as discourse.

We will install Discourse on Ubuntu 12.04.3 x64 as this is recommended in Official Documentation.

Once you will complete with above steps you will receive a mail from Digital Ocean, providing root users password. (In case you have entered your SSH keys, then you don't require password to login).

Access your newly created Droplet

To access the droplet, type in following command in your terminal:

ssh root@162.243.201.40

Replace 162.243.201.40 with the IP address you got from Digital Ocean.

It will ask your permission to connect, type yes, and then it will ask you for root's password. The root's password is in your mail which Digital Ocean sent you. Type in the password and you will be welcomed by newly installed Ubuntu Server.

Install Git

To install Git, you just need to type in the command:

sudo apt-get install git

and you are good to go.

Install Docker

Run following commands:

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

Now we will perform a system reboot:

sudo reboot

Above command will log you out from ssh session, ssh in again:

ssh root@IP_ADDRESS

replace IP_ADDRESS with your IP Address.

Type in following commands:

sudo sh -c "wget -qO- https://get.docker.io/gpg | apt-key add -"
sudo sh -c "echo deb http://get.docker.io/ubuntu docker main\
> /etc/apt/sources.list.d/docker.list"
sudo apt-get update
sudo apt-get install lxc-docker

Install Discourse

If you have reached to this step, Congratulations! You have already done all the hard work, now you have a brand new Ubuntu Server with Docker installed. All you need to do now is install Discourse itself, which is the most easy step. Keep Calm.

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

mkdir /var/docker

Now we will clone the Official Discourse Docker Image in /var/docker folder:

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

Make sure to copy and run the above command as is, otherwise you will face problem which I faced.

Let's switch to /var/docker directory:

cd /var/docker

Now we will copy the samples/standalone.yml file and place it inside containers folder by name app.yml, so the path will become containers/app.yml, type in command:

cp samples/standalone.yml containers/app.yml

Now we need modify the newly copied app.yml with our default variables:

nano containers/app.yml

Nano is suggested by @riking because it works like a text editor, just use your arrow keys. Hit Ctrl-O to save and Ctrl-X to exit. In below screenshot I am using Vim.

You will see something like:

You may modify the file as per your requirement, but for the sake of simplicity I will only modify two variables DISCOURSE_DEVELOPER_EMAILS and DISCOURSE_HOSTNAME.

Notice that I renamed the DISCOURSE_HOSTNAME to discourse.techapj.com, this means that I want to host my instance of Discourse on http://discourse.techapj.com/, for this to work properly you will need to modify DNS Records (I will post a separate guide to configure DNS Records).

Save the file, and run following command:

sudo ./launcher bootstrap app

This command may take some time, but it's doing all the hard work for you. Go drink some coffee, while this command is automagically configuring the Discourse environment for you.

When this command executes, type in the following command to start instance of your Discourse app:

sudo ./launcher start app

Congratulations! You have your own live instance of Discourse running on the host you provided in app.yml file at the time of setup.

You can also access your instance of Discourse by visiting your IP_ADDRESS.

Okay, that's it for this guide. In my next post I'll talk about more advanced topics like Configuring mail, Tweaking admin, SSH access to running containers, etc.

Please provide your feedback, if anything needs to be improved, don't hesitate. Also the fine folks here at Discourse are always ready to help you, in case you face any problem.

I'll try to update this guide as frequently as possible.

[Last Update: January 24, 2014]

Posts: 41

Participants: 10

Read full topic

Permission Changes (moderators have less)

$
0
0

Sam Saffron wrote:

Moderators have been demoted in Discourse.

Back in May I demoted moderators a bit https://meta.discourse.org/t/moderator-permission-set/6307/5?u=sam , this has not been enough.

Some Discourse communities seem to need the ability to "fend off" certain discussions from moderators. For example: "Should we fire Sam?" discussion may only be visible to staff? that are in the HR group.

This change is quite wide, the following changes were made

  • Moderators follow the same visibility path from topics as regular users. A moderator will have to be in a group with "see" permissions to see discussion in a group.
  • Moderators can only handle flags in categories they can see
  • Moderators can not snoop through user's PMs
  • Moderators can not see topics they have no visibility to in user's profiles

Nothing changed when it comes to admins.

We believe this is a safer and more secure default.

Posts: 2

Participants: 1

Read full topic

Creating an Discourse User through API

$
0
0

zivel wrote:

Hello there

We are trying to integrate Discourse in our Groupmanagement-Tool. This means we have a group of people who can use discourse as group. So we need to set up a mechanism that would create a new Discourse instance and set up the user of that group in Discourse.

I was looking for API guidelines but didn't found any examples.

It would be great if there is an example, how I can talk to the REST API and create a user. Preferably in a Multisite environment.

Was anybody out there able to do such a thing? (even an example for changing a forum title through /admin/site_setting/title would be a great help for a start)

Thank you
- Renato

Posts: 11

Participants: 8

Read full topic


Mail coming through but not through Mandrill

$
0
0

Greg M wrote:

I followed these exactly: https://github.com/discourse/discourse/blob/master/docs/INSTALL-email.md
http://help.mandrill.com/entries/23060367-Can-I-configure-Postfix-to-send-through-Mandrill-

When I send a test email to my gmail address from the Discourse Admin, it goes through and I receive it in my inbox. However, it isn't showing up in my Mandrill App and doesn't give me a log like in the tutorial:

"Jun 24 01:30:30 discoursetest postfix/smtp[25861]: table hash:/etc/postfix/sasl/passwd(0,lock|fold_fix) has changed -- restarting
Jun 24 01:30:31 discoursetest postfix/smtp[25872]: 7CBF280294C: to=<spoonman@discourse.org>, relay=smtp.mandrillapp.com[54.234.14.176]:25, delay=332, delays=331/0.01/1.2/0.17, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as C515B6380D3)"

Here is my /var/mail/mail.log:

Oct 24 18:28:08 ip-10-191-170-197 postfix/pickup[10588]: BEE9A201AF: uid=1001 from=<info@mydomain.com>
Oct 24 18:28:08 ip-10-191-170-197 postfix/cleanup[10613]: BEE9A201AF: message-id=<526966b89e9f9_188244cc73810851@design.mydomain.com.mail>
Oct 24 18:28:08 ip-10-191-170-197 postfix/qmgr[6450]: BEE9A201AF: from=<info@mydomain.com>, size=5997, nrcpt=1 (queue active)
Oct 24 18:28:08 ip-10-191-170-197 postfix/smtp[10615]: connect to gmail-smtp-in.l.google.com[2607:f8b0:400e:c01::1b]:25: Network is unreachable
Oct 24 18:28:10 ip-10-191-170-197 postfix/smtp[10615]: BEE9A201AF: to=<myname@gmail.com>, relay=gmail-smtp-in.l.google.com[173.194.79.27]:25, delay=1.6, delays=0.05/0.01/0.32/1.2, dsn=2.0.0, status=sent (250 2.0.0 OK 1382639289 f10si2633375pac.75 - gsmtp)
Oct 24 18:28:10 ip-10-191-170-197 postfix/qmgr[6450]: BEE9A201AF: removed

Posts: 8

Participants: 3

Read full topic

Can't change a user's trust level

Private Discourse forums, explanation of various settings

$
0
0

Sam Saffron wrote:

I have been cleaning up our "private forum support" today

https://github.com/discourse/discourse/commit/61281a3c81343e49d43933d784f3e48017a2d286

I wanted to cover what settings you have and what they mean:

  • invite_only: in invite only forums the only way to create a new account is by inviting a user, the only way of onboarding new users is by clicking the "invite user" button on a topic.
  • login_required: if login is required the only way to view content is by logging in.
  • must_approve_users: will only allow accounts on the site if they were approved by a moderator. If this setting is enabled, the "invite friends to reply" button will only be available to moderators, regardless of trust level.

To top this accounts can have the state "active" meaning we know the email is good, and "approved" meaning mod approved the account.

This salad of settings meant I needed to clean up some logic holes.

There was a bug that caused invited users to be "approved" but not "activated", this lead to the mess around missing digests etc.

There was a bug that allowed accounts still to be "registered" even in invite only mode, which I fixed.

We still need to clean up semantics of "approved vs active" the terminology feels wrong, in the past active was used for some of the things approved is.

Posts: 7

Participants: 4

Read full topic

Easier way to add users to a private category?

$
0
0

almereyda wrote:

Continuing the discussion from User and group permissions for private categories/boards and GitHub:


Considering I want to add a user to a private category.

Right now I have to add a person to a (security) group in admin and then add this group to the category in frontend.

I'd like to grant moderators the permission to add users to groups within the second tab of frontend's Edit Category screen without ever entering /admin, whereas I'd love to interact with group memberships in /admin/users/*/.

Is there any other discussion going on related to this idea?

Posts: 5

Participants: 2

Read full topic

Broken icons in Firefox

$
0
0

Charlie_Shum wrote:

Some of the icons are broken when the forum is viewing on firefox
But it is normal in Chrome

it seems to be the problem of charcater encoding or font?

Posts: 13

Participants: 6

Read full topic

Showing an image next to topic title

$
0
0

Shobhit Shrivastava wrote:

I am trying to show a product image next to a topic in topic list view.
How can I show an image next to topic title ? Is it already supported by discourse ? How do i go about rolling this out on my discourse instance.

Posts: 2

Participants: 1

Read full topic

Which is the "Secret Key" that you mention in Discourse Doc?

$
0
0

Roberto_Pezzali wrote:

In this documento on github

you mention a "API calls using the secret API bypass CSRF checks."

Which is this secret api? With the API I generate from the adminpanel I cannot change user email or create new posts, every time I have an "unexpected token at ''BAD CSRF' error.

Where I can find the magic key?

Posts: 1

Participants: 1

Read full topic


Getting Cloudflare IP's instead of client's IP

$
0
0

Kevin wrote:

I use cloudflare DDoS protection and seem to be getting the cloudflare ip address instead of the clients ip address when I check the user from the admin panel in the "Last IP Address" section.

My nginx config is standard and has the following which looks ok to me:

location @discourse {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;


    proxy_set_header X-Forwarded-Proto $thescheme;
    proxy_set_header Host $http_host;

    proxy_pass http://discourse;
  }

Any help appreciated.

Posts: 3

Participants: 3

Read full topic

Simple Discourse Deployment with Rubber

$
0
0

Scott Carleton wrote:

I've put together what I believe to be the simplest way of deploying Discourse yet using Rubber.

First, some background on Rubber. Rubber is a capistrano extension that keeps all configuration within your codebase and manages tasks by what roles a server has similar to Chef/Puppet etc.

It's advantages are:

  1. All config is within your codebase and configurable using ERB within the configs
  2. It's abstraction simplifies the process enough so that you get down to two commands to setup and one command to update.
    rubber vulcanize discourse and cap rubber:create_staging to start
    cap deploy to update
    But it also allows complete configurablility to scale to a full production architecture
  3. Utilizes cloud providers such as AWS, Rackspace, Digital Ocean or your own generic ubuntu box
  4. Been used in production by many companies for years

Advantages for Discourse:

  1. Separates application code and ops code
  2. The Discourse team can update the Rubber template with the best
    options and rubber will handle the upgrading without having to check
    file diffs
  3. Replaces BluePill for process management
  4. Custom Discourse infrastructure tasks can be written into Rubber for easy customer use

I've written up a Gist for using Rubber with Discourse (PR here)

I'm hoping to get it down to 3 lines:

  1. gem install rubber
  2. rubber vulcanize discourse
  3. edit minimal config for your provider
  4. cap rubber:create_staging

It's still a little rough so I'd appreciate some feedback.

Edit: Adding the contents of the gist to be discussed here.

Long Version:

Setup

git clone https://github.com/discourse/discourse.git
cd discourse
echo "gem 'rubber', github: 'ScotterC/rubber', branch: 'discourse'" >> Gemfile
bundle
rubber vulcanize discourse reply with n to overwrite questions

Edit config/rubber/rubber.yml

app_name: discourse
domain: discourse.com

For EC2:

key_name and key_file # => Requires EC2 keypair
access_key: AWS_KEY
secret_access_key: AWS_SECRET
account: AWS_ACCOUNT
image_type: m1.small
staging_roles: "web,app,db:primary=true,redis_master,sidekiq,discourse"

Other Providers see:
Edit config/rubber/rubber-ruby.yml

ruby_version: 2.0.0-p247

Discourse config:

Remove duplicate 'rubber' line from Gemfile
bundle
cd config/
cp redis.yml.sample redis.yml
cp environments/production.rb.sample environments/production.rb
cd ../

Deploy

cap rubber:create_staging

Prompts:
hit return for hostname prompt
hit return for roles if they mimic above staging roles
computer password for access to /etc/hosts

Note:
if it fails with vboxadd: unrecognized service. Make sure you're not using Capistrano 2.15.5. Comment out reinstall_virtualbox_additions task in rubber/deploy-setup.rb and run cap rubber:bootstrap && cap deploy:migrations

When create_staging finishes. In your browser production.discourse.com should be a discourse site

Posts: 8

Participants: 5

Read full topic

How to reload discourse for changes to take effect?

$
0
0

Abhishek Gupta wrote:

So i am using VM to run a local instance of discourse in developer mode. Just a silly question,

Say i edited something in \app\assets\javascripts\discourse\views\post-view.js

How to make sure it takes effect? , what commands i need to run?

if used http://blog.discourse.org/2013/04/discourse-as-your-first-rails-app/

# create an alias to synchronize the code from the shared folder to a local folder
alias sin="rsync -a --delete /vagrant ~"
# actually synchronize (can take a minute for the first run)
sin
# switch to the local folder
cd ~/vagrant
# standard procedure to update, migrate and launch the application
bundle install
bundle exec rake db:migrate
bundle exec rails s

So what i need do to?

Posts: 4

Participants: 3

Read full topic

"unexpected token at 'BAD CSRF'" when updating email

$
0
0

Roberto_Pezzali wrote:

I have this error when I try to update a user email through api.

client.update_email("pippopippo", "batman@example.com")
DiscourseApi::Error: 399: unexpected token at ''BAD CSRF']'

Any solution to update a user email? I must implement app -> discourse one way user sync and I can create a user but I cannot update a user email.

Posts: 5

Participants: 2

Read full topic

Better organization of the subcategories

$
0
0

Martina Mitseva wrote:

Hello there!

I am Martina,
I would like to ask about your help.
Can you tell me where is the option in order to change,hide or organize the subcategories better?
Because I want when people enter the forum to have good overview of our menu, not to appear disorganized subcategories ...
For instance when you open the main page and there is General section, you can see messy subcategories such as Property owner/manager/agent.

Thank you in advance! wink

Posts: 6

Participants: 4

Read full topic

Viewing all 60613 articles
Browse latest View live


Latest Images