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

How to create categories from plugin

$
0
0

@vinothkannans wrote:

I am developing new community-hub plugin for discourse where any registered users can create categories for their group / community. So the plugin should create categories itself in some criteria.

Can anyone help me to do this programmatically via plugin. And I welcome contributors for my new plugin :slight_smile:

Posts: 1

Participants: 1

Read full topic


Docker installation not working

$
0
0

@rhotimee wrote:

I tried launcher rebuild or launcher cleanup, but it keeps bringing up this error. pls help.

 root@vps320093:/var/discourse# ./launcher rebuild app

WARNING: We are about to start downloading the Discourse base image
This process may take anywhere between a few minutes to an hour, depending on your network speed

Please be patient

Unable to find image 'discourse/discourse:1.3.7' locally
1.3.7: Pulling from discourse/discourse
7f3a89592205: Pulling fs layer
ec4a109d9ed7: Pulling fs layer
ec4a109d9ed7: Verifying Checksum
ec4a109d9ed7: Download complete
/usr/bin/docker: write /var/lib/docker/tmp/GetImageBlob910720681: no space left on device.
See '/usr/bin/docker run --help'.
Your Docker installation is not working correctly

See: https://meta.discourse.org/t/docker-error-on-bootstrap/13657/18?u=sam

Posts: 14

Participants: 3

Read full topic

Ghost copies when splitting topics

$
0
0

@Silvanus wrote:

In our forum, due to the nature of subject matter, we have noticed that very often topics tend to split in such a way that a new subject matter emerges while entangled with the first one. This results in that it is really, really hard to split the thread into two, because it is possible that the discussion in several messages can be seen as belonging to both threads (old subject, new subject).

Now, to provide easier splitting of topics, I would suggest a feature: instead of simply moving some threads, you could "ghost copy" them, so that in the new thread there are copies of the original messages in old thread, but these are linked in such a fashion that liking/editing etc. one message affects both. This way they could be part of the new discussion that they seeded.

tl;dr Choose messages > instead of "Move to a (new) topic" you have "Copy to a (new) topic". Would not double really so statistics would still be ok.

Posts: 1

Participants: 1

Read full topic

Drafts and multiple platforms – love it!

$
0
0

@Silvanus wrote:

I actually noticed this the other day. I started writing a message on desktop, but soon realized I'd have to draw a small diagram and include it to the message. I drew the diagram on paper, switched to mobile, took a pic, uploaded it to the message draft, and then continued writing on desktop. This functionality is amazing! Really helps my idea workflow, which still uses a lot of paper :slight_smile:

Posts: 2

Participants: 2

Read full topic

"Problem" upgrading Discourse to 1.7.0.beta7

$
0
0

@dylanh724 wrote:

Seems that it failed at ... uglify? What? :stuck_out_tongue:

LOG IS HERE (Click)
$ cd /var/www/discourse && git fetch && git reset --hard HEAD@{upstream}

HEAD is now at beac81d Support both _actions and actions for delegating


*** Please be patient, next steps might take a while ***


$ bundle install --deployment --without test --without development
Warning: the running version of Bundler (1.13.1) is older than the version that created the lockfile (1.13.6). We suggest you upgrade to the latest version of Bundler by running gem install bundler.
Fetching gem metadata from https://rubygems.org/............
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/.

Using listen 0.7.3
Using logster 1.2.5
Using lru_redux 1.1.0
Using memory_profiler 0.9.6
Using metaclass 0.0.4
Using method_source 0.8.2
Using mock_redis 0.15.4
Using moneta 0.8.0
Using msgpack 0.7.6
Using multi_json 1.12.1
Using multi_xml 0.5.5
Using mustache 1.0.3
Using netrc 0.11.0
Using oauth 0.4.7
Using oj 2.14.3
Using ruby-openid 2.7.0
Using redis 3.3.0
Using pg 0.18.4
Using slop 3.6.0
Using puma 3.6.0
Using r2 0.2.6
Using bundler 1.13.1
Using rails_multisite 1.0.4
Using raindrops 0.16.0
Using rb-fsevent 0.9.7
Using trollop 2.1.2
Using rinku 2.0.0
Using rmmseg-cpp 0.2.9
Using rspec-support 3.4.1
Using rtlit 0.0.5
Using sass 3.2.19
Using tilt 2.0.5
Using shoulda-context 1.2.1
Using simple-rss 1.3.1
Using simplecov-html 0.10.0
Using spork 1.0.0rc4
Using stackprof 0.2.10
Using timecop 0.8.1
Using rake-compiler 0.9.9
Using tzinfo 1.2.2
Using nokogiri 1.6.8.1
Using rack-test 0.6.3
Using message_bus 2.0.2
Using rack-mini-profiler 0.10.1
Using rack-protection 1.5.3
Using mail 2.6.4
Using aws-sdk-core 2.5.3
Using babel-transpiler 0.7.0
Using uglifier 3.0.2
Using barber 0.11.1
Using ember-data-source 1.0.0.beta.16.1
Using sprockets 3.6.3
Using unf 0.1.4
Using thin 1.7.0
Using faraday 0.9.2
Using rb-inotify 0.9.7
Using given_core 3.7.1
Using omniauth 1.3.1
Using image_optim 0.20.2
Using mini_racer 0.1.7
Using mocha 1.1.0
Using rack-openid 1.3.1
Using openid-redis-store 0.0.2
Using redis-namespace 1.5.2
Using sidekiq 4.1.2
Using pry 0.10.4
Using unicorn 5.1.0
Using rbtrace 0.4.8
Using rspec-core 3.4.4
Using rspec-expectations 3.4.0
Using rspec-mocks 3.4.1
Using simplecov 0.11.1
Using fast_xor 1.1.3
Using activesupport 4.2.7.1
Using loofah 2.0.3
Using nokogumbo 1.4.7
Using onebox 1.5.60
Using ruby-readability 0.7.0
Using sinatra 1.4.6
Using aws-sdk-resources 2.5.3
Using ember-handlebars-template 0.7.3
Using domain_name 0.5.25
Using oauth2 1.0.0
Using omniauth-oauth 1.1.0
Using omniauth-openid 1.0.1
Using sidekiq-statistic 1.2.0
Using pry-nav 0.2.4
Using pry-rails 0.3.4
Using rspec 3.4.0
Using rails-deprecated_sanitizer 1.0.3
Using globalid 0.3.7
Using activemodel 4.2.7.1
Using shoulda-matchers 2.8.0
Using rails-html-sanitizer 1.0.3
Using sanitize 4.0.1
Using aws-sdk 2.5.3
Using http-cookie 1.0.2
Using omniauth-oauth2 1.3.1
Using omniauth-twitter 1.2.1
Using rspec-given 3.7.1
Using rspec-html-matchers 0.7.0
Using rails-dom-testing 1.0.7
Using activejob 4.2.7.1
Using active_model_serializers 0.8.3
Using activerecord 4.2.7.1
Using rails-observers 0.1.2
Using shoulda 3.5.0
Using rest-client 1.8.0
Using omniauth-facebook 3.0.0
Using omniauth-github-discourse 1.1.2
Using omniauth-google-oauth2 0.3.1
Using omniauth-instagram 1.0.2
Using actionview 4.2.7.1
Using seed-fu 2.3.5
Using actionpack 4.2.7.1
Using actionmailer 4.2.7.1
Using railties 4.2.7.1
Using sprockets-rails 3.1.1
Using discourse-qunit-rails 0.0.9
Using jquery-rails 4.0.5
Using rspec-rails 3.4.2
Using rails 4.2.7.1
Using sass-rails 5.0.4
Using ember-rails 0.18.5
Using spork-rails 4.0.0
Bundle complete! 99 Gemfile dependencies, 177 gems now installed.
Gems in the group development were not installed.
Bundled gems are installed into ./vendor/bundle.
$ bundle exec rake multisite:migrate
Migrating default


== Seed from /var/www/discourse/db/fixtures/001_categories.rb

== Seed from /var/www/discourse/db/fixtures/002_groups.rb

== Seed from /var/www/discourse/db/fixtures/003_post_action_types.rb
- PostActionType {:id=>1, :name_key=>"bookmark", :is_flag=>false, :position=>1}
- PostActionType {:id=>2, :name_key=>"like", :is_flag=>false, :icon=>"heart", :position=>2}
- PostActionType {:id=>3, :name_key=>"off_topic", :is_flag=>true, :position=>3}
- PostActionType {:id=>4, :name_key=>"inappropriate", :is_flag=>true, :position=>4}
- PostActionType {:id=>5, :name_key=>"vote", :is_flag=>false, :position=>5}
- PostActionType {:id=>8, :name_key=>"spam", :is_flag=>true, :position=>6}
- PostActionType {:id=>6, :name_key=>"notify_user", :is_flag=>true, :position=>7}
- PostActionType {:id=>7, :name_key=>"notify_moderators", :is_flag=>true, :position=>8}

== Seed from /var/www/discourse/db/fixtures/004_screened_ip_addresses.rb
- ScreenedIpAddress {:id=>1, :ip_address=>"10.0.0.0/8", :action_type=>2}
- ScreenedIpAddress {:id=>2, :ip_address=>"192.168.0.0/16", :action_type=>2}
- ScreenedIpAddress {:id=>3, :ip_address=>"127.0.0.0/8", :action_type=>2}
- ScreenedIpAddress {:id=>4, :ip_address=>"172.16.0.0/12", :action_type=>2}
- ScreenedIpAddress {:id=>5, :ip_address=>"fc00::/7", :action_type=>2}

== Seed from /var/www/discourse/db/fixtures/005_badge_types.rb
- BadgeType {:id=>1, :name=>"Gold"}
- BadgeType {:id=>2, :name=>"Silver"}
- BadgeType {:id=>3, :name=>"Bronze"}

== Seed from /var/www/discourse/db/fixtures/006_badges.rb
- BadgeGrouping {:id=>1, :name=>"Getting Started", :default_position=>10}
- BadgeGrouping {:id=>2, :name=>"Community", :default_position=>11}
- BadgeGrouping {:id=>3, :name=>"Posting", :default_position=>12}
- BadgeGrouping {:id=>4, :name=>"Trust Level", :default_position=>13}
- BadgeGrouping {:id=>5, :name=>"Other", :default_position=>14}
- Badge {:id=>1, :default_name=>"Basic User", :badge_type_id=>3, :query=>"\n SELECT u.id user_id, current_timestamp granted_at FROM users u\n WHERE trust_level >= 1 AND (\n :backfill OR u.id IN (:user_ids)\n )\n", :default_badge_grouping_id=>4, :trigger=>4, :default_allow_title=>false, :default_icon=>"fa-user", :system=>true}
- Badge {:id=>2, :default_name=>"Member", :badge_type_id=>3, :query=>"\n SELECT u.id user_id, current_timestamp granted_at FROM users u\n WHERE trust_level >= 2 AND (\n :backfill OR u.id IN (:user_ids)\n )\n", :default_badge_grouping_id=>4, :trigger=>4, :default_allow_title=>false, :default_icon=>"fa-user", :system=>true}
- Badge {:id=>3, :default_name=>"Regular", :badge_type_id=>2, :query=>"\n SELECT u.id user_id, current_timestamp granted_at FROM users u\n WHERE trust_level >= 3 AND (\n :backfill OR u.id IN (:user_ids)\n )\n", :default_badge_grouping_id=>4, :trigger=>4, :default_allow_title=>true, :default_icon=>"fa-user", :system=>true}
- Badge {:id=>4, :default_name=>"Leader", :badge_type_id=>1, :query=>"\n SELECT u.id user_id, current_timestamp granted_at FROM users u\n WHERE trust_level >= 4 AND (\n :backfill OR u.id IN (:user_ids)\n )\n", :default_badge_grouping_id=>4, :trigger=>4, :default_allow_title=>true, :default_icon=>"fa-user", :system=>true}
- Badge {:id=>17, :default_name=>"Reader", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>false, :show_posts=>false, :query=>" SELECT id user_id, current_timestamp granted_at\n FROM users\n WHERE id IN\n (\n SELECT pt.user_id\n FROM post_timings pt\n JOIN badge_posts b ON b.post_number = pt.post_number AND\n b.topic_id = pt.topic_id\n JOIN topics t ON t.id = pt.topic_id\n LEFT JOIN user_badges ub ON ub.badge_id = 17 AND ub.user_id = pt.user_id\n WHERE ub.id IS NULL AND t.posts_count > 100\n GROUP BY pt.user_id, pt.topic_id, t.posts_count\n HAVING count(*) >= t.posts_count\n )\n", :default_badge_grouping_id=>1, :auto_revoke=>false, :system=>true}
- Badge {:id=>16, :default_name=>"Read Guidelines", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>false, :show_posts=>false, :query=>" SELECT user_id, read_faq granted_at\n FROM user_stats\n WHERE read_faq IS NOT NULL AND (user_id IN (:user_ids) OR :backfill)\n", :default_badge_grouping_id=>1, :trigger=>8, :system=>true}
- Badge {:id=>14, :default_name=>"First Link", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>" SELECT l.user_id, l.post_id, l.created_at granted_at\n FROM\n (\n SELECT MIN(l1.id) id\n FROM topic_links l1\n JOIN badge_posts p1 ON p1.id = l1.post_id\n JOIN badge_posts p2 ON p2.id = l1.link_post_id\n WHERE NOT reflection AND p1.topic_id <> p2.topic_id AND not quote AND\n (:backfill OR ( p1.id in (:post_ids) ))\n GROUP BY l1.user_id\n ) ids\n JOIN topic_links l ON l.id = ids.id\n", :default_badge_grouping_id=>1, :trigger=>2, :system=>true}
- Badge {:id=>15, :default_name=>"First Quote", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>" SELECT ids.user_id, q.post_id, q.created_at granted_at\n FROM\n (\n SELECT p1.user_id, MIN(q1.id) id\n FROM quoted_posts q1\n JOIN badge_posts p1 ON p1.id = q1.post_id\n JOIN badge_posts p2 ON p2.id = q1.quoted_post_id\n WHERE (:backfill OR ( p1.id IN (:post_ids) ))\n GROUP BY p1.user_id\n ) ids\n JOIN quoted_posts q ON q.id = ids.id\n", :default_badge_grouping_id=>1, :trigger=>2, :system=>true}
- Badge {:id=>11, :default_name=>"First Like", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>" SELECT pa1.user_id, pa1.created_at granted_at, pa1.post_id\n FROM (\n SELECT pa.user_id, min(pa.id) id\n FROM post_actions pa\n JOIN badge_posts p on p.id = pa.post_id\n WHERE post_action_type_id = 2 AND\n (:backfill OR pa.post_id IN (:post_ids) )\n GROUP BY pa.user_id\n ) x\n JOIN post_actions pa1 on pa1.id = x.id\n", :default_badge_grouping_id=>1, :trigger=>1, :system=>true}
- Badge {:id=>13, :default_name=>"First Flag", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>false, :query=>" SELECT pa1.user_id, pa1.created_at granted_at, pa1.post_id\n FROM (\n SELECT pa.user_id, min(pa.id) id\n FROM post_actions pa\n JOIN badge_posts p on p.id = pa.post_id\n WHERE post_action_type_id IN (3,4,7,8) AND\n (:backfill OR pa.post_id IN (:post_ids) )\n GROUP BY pa.user_id\n ) x\n JOIN post_actions pa1 on pa1.id = x.id\n", :badge_grouping_id=>1, :default_badge_grouping_id=>1, :trigger=>1, :auto_revoke=>false, :system=>true}
- Badge {:id=>25, :default_name=>"Promoter", :default_icon=>"fa-user-plus", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>false, :show_posts=>false, :query=>"\n SELECT u.id user_id, current_timestamp granted_at\n FROM users u\n WHERE u.id IN (\n SELECT invited_by_id\n FROM invites i\n JOIN users u2 ON u2.id = i.user_id\n WHERE i.deleted_at IS NULL AND u2.active AND u2.trust_level >= 0 AND not u2.blocked\n GROUP BY invited_by_id\n HAVING COUNT(*) >= 1\n ) AND u.active AND NOT u.blocked AND u.id > 0 AND\n (:backfill OR u.id IN (:user_ids) )\n", :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>true, :system=>true}
- Badge {:id=>26, :default_name=>"Campaigner", :default_icon=>"fa-user-plus", :badge_type_id=>2, :multiple_grant=>false, :target_posts=>false, :show_posts=>false, :query=>"\n SELECT u.id user_id, current_timestamp granted_at\n FROM users u\n WHERE u.id IN (\n SELECT invited_by_id\n FROM invites i\n JOIN users u2 ON u2.id = i.user_id\n WHERE i.deleted_at IS NULL AND u2.active AND u2.trust_level >= 1 AND not u2.blocked\n GROUP BY invited_by_id\n HAVING COUNT(*) >= 3\n ) AND u.active AND NOT u.blocked AND u.id > 0 AND\n (:backfill OR u.id IN (:user_ids) )\n", :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>true, :system=>true}
- Badge {:id=>27, :default_name=>"Champion", :default_icon=>"fa-user-plus", :badge_type_id=>1, :multiple_grant=>false, :target_posts=>false, :show_posts=>false, :query=>"\n SELECT u.id user_id, current_timestamp granted_at\n FROM users u\n WHERE u.id IN (\n SELECT invited_by_id\n FROM invites i\n JOIN users u2 ON u2.id = i.user_id\n WHERE i.deleted_at IS NULL AND u2.active AND u2.trust_level >= 2 AND not u2.blocked\n GROUP BY invited_by_id\n HAVING COUNT(*) >= 5\n ) AND u.active AND NOT u.blocked AND u.id > 0 AND\n (:backfill OR u.id IN (:user_ids) )\n", :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>true, :system=>true}
- Badge {:id=>12, :default_name=>"First Share", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>" SELECT views.user_id, i2.post_id, i2.created_at granted_at\n FROM\n (\n SELECT i.user_id, MIN(i.id) i_id\n FROM incoming_links i\n JOIN badge_posts p on p.id = i.post_id\n WHERE i.user_id IS NOT NULL\n GROUP BY i.user_id\n ) as views\n JOIN incoming_links i2 ON i2.id = views.i_id\n", :default_badge_grouping_id=>1, :trigger=>0, :system=>true}
- Badge {:id=>21, :default_name=>"Nice Share", :badge_type_id=>3, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>" SELECT views.user_id, i2.post_id, current_timestamp granted_at\n FROM\n (\n SELECT i.user_id, MIN(i.id) i_id\n FROM incoming_links i\n JOIN badge_posts p on p.id = i.post_id\n WHERE i.user_id IS NOT NULL\n GROUP BY i.user_id,i.post_id\n HAVING COUNT(*) > 25\n ) as views\n JOIN incoming_links i2 ON i2.id = views.i_id\n", :default_badge_grouping_id=>2, :trigger=>0, :system=>true}
- Badge {:id=>22, :default_name=>"Good Share", :badge_type_id=>2, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>" SELECT views.user_id, i2.post_id, current_timestamp granted_at\n FROM\n (\n SELECT i.user_id, MIN(i.id) i_id\n FROM incoming_links i\n JOIN badge_posts p on p.id = i.post_id\n WHERE i.user_id IS NOT NULL\n GROUP BY i.user_id,i.post_id\n HAVING COUNT(*) > 300\n ) as views\n JOIN incoming_links i2 ON i2.id = views.i_id\n", :default_badge_grouping_id=>2, :trigger=>0, :system=>true}
- Badge {:id=>23, :default_name=>"Great Share", :badge_type_id=>1, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>" SELECT views.user_id, i2.post_id, current_timestamp granted_at\n FROM\n (\n SELECT i.user_id, MIN(i.id) i_id\n FROM incoming_links i\n JOIN badge_posts p on p.id = i.post_id\n WHERE i.user_id IS NOT NULL\n GROUP BY i.user_id,i.post_id\n HAVING COUNT(*) > 1000\n ) as views\n JOIN incoming_links i2 ON i2.id = views.i_id\n", :default_badge_grouping_id=>2, :trigger=>0, :system=>true}
- Badge {:id=>5, :default_name=>"Welcome", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>" SELECT p.user_id, min(post_id) post_id, min(pa.created_at) granted_at\n FROM post_actions pa\n JOIN badge_posts p on p.id = pa.post_id\n WHERE post_action_type_id = 2 AND\n (:backfill OR pa.post_id IN (:post_ids) )\n GROUP BY p.user_id\n", :default_badge_grouping_id=>2, :trigger=>1, :system=>true}
- Badge {:id=>9, :default_name=>"Autobiographer", :badge_type_id=>3, :multiple_grant=>false, :query=>" SELECT u.id user_id, current_timestamp granted_at\n FROM users u\n JOIN user_profiles up on u.id = up.user_id\n WHERE bio_raw IS NOT NULL AND LENGTH(TRIM(bio_raw)) > 10 AND\n uploaded_avatar_id IS NOT NULL AND\n (:backfill OR u.id IN (:user_ids) )\n", :default_badge_grouping_id=>1, :trigger=>8, :system=>true}
- Badge {:id=>10, :default_name=>"Editor", :badge_type_id=>3, :multiple_grant=>false, :query=>" SELECT p.user_id, min(p.id) post_id, min(p.created_at) granted_at\n FROM badge_posts p\n WHERE p.self_edits > 0 AND\n (:backfill OR p.id IN (:post_ids) )\n GROUP BY p.user_id\n", :badge_grouping_id=>1, :default_badge_grouping_id=>1, :trigger=>2, :system=>true}
- Badge {:id=>6, :default_name=>"Nice Post", :badge_type_id=>3, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>"\n SELECT p.user_id, p.id post_id, p.updated_at granted_at\n FROM badge_posts p\n WHERE p.post_number > 1 AND p.like_count >= 10 AND\n (:backfill OR p.id IN (:post_ids) )\n", :default_badge_grouping_id=>3, :trigger=>1, :system=>true}
- Badge {:id=>7, :default_name=>"Good Post", :badge_type_id=>2, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>"\n SELECT p.user_id, p.id post_id, p.updated_at granted_at\n FROM badge_posts p\n WHERE p.post_number > 1 AND p.like_count >= 25 AND\n (:backfill OR p.id IN (:post_ids) )\n", :default_badge_grouping_id=>3, :trigger=>1, :system=>true}
- Badge {:id=>8, :default_name=>"Great Post", :badge_type_id=>1, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>"\n SELECT p.user_id, p.id post_id, p.updated_at granted_at\n FROM badge_posts p\n WHERE p.post_number > 1 AND p.like_count >= 50 AND\n (:backfill OR p.id IN (:post_ids) )\n", :default_badge_grouping_id=>3, :trigger=>1, :system=>true}
- Badge {:id=>18, :default_name=>"Nice Topic", :badge_type_id=>3, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>"\n SELECT p.user_id, p.id post_id, p.updated_at granted_at\n FROM badge_posts p\n WHERE p.post_number = 1 AND p.like_count >= 10 AND\n (:backfill OR p.id IN (:post_ids) )\n", :default_badge_grouping_id=>3, :trigger=>1, :system=>true}
- Badge {:id=>19, :default_name=>"Good Topic", :badge_type_id=>2, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>"\n SELECT p.user_id, p.id post_id, p.updated_at granted_at\n FROM badge_posts p\n WHERE p.post_number = 1 AND p.like_count >= 25 AND\n (:backfill OR p.id IN (:post_ids) )\n", :default_badge_grouping_id=>3, :trigger=>1, :system=>true}
- Badge {:id=>20, :default_name=>"Great Topic", :badge_type_id=>1, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>"\n SELECT p.user_id, p.id post_id, p.updated_at granted_at\n FROM badge_posts p\n WHERE p.post_number = 1 AND p.like_count >= 50 AND\n (:backfill OR p.id IN (:post_ids) )\n", :default_badge_grouping_id=>3, :trigger=>1, :system=>true}
- Badge {:id=>24, :default_name=>"Anniversary", :default_icon=>"fa-clock-o", :badge_type_id=>2, :query=>" SELECT u.id AS user_id, MIN(u.created_at + interval '1 year') AS granted_at\n FROM users u\n JOIN posts p ON p.user_id = u.id\n WHERE u.id > 0\n AND u.active\n AND NOT u.blocked\n AND u.created_at + interval '1 year' < now()\n AND p.deleted_at IS NULL\n AND NOT p.hidden\n AND p.created_at + interval '1 year' > now()\n AND (:backfill OR u.id IN (:user_ids))\n GROUP BY u.id\n HAVING COUNT(p.id) > 0\n", :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>28, :default_name=>"Popular Link", :badge_type_id=>3, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>" SELECT tl.user_id, post_id, current_timestamp granted_at\n FROM topic_links tl\n JOIN posts p ON p.id = post_id AND p.deleted_at IS NULL\n JOIN topics t ON t.id = p.topic_id AND t.deleted_at IS NULL AND t.archetype <> 'private_message'\n WHERE NOT tl.internal\n AND tl.clicks >= 50\n GROUP BY tl.user_id, tl.post_id\n", :badge_grouping_id=>3, :default_badge_grouping_id=>3, :trigger=>0, :system=>true}
- Badge {:id=>29, :default_name=>"Hot Link", :badge_type_id=>2, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>" SELECT tl.user_id, post_id, current_timestamp granted_at\n FROM topic_links tl\n JOIN posts p ON p.id = post_id AND p.deleted_at IS NULL\n JOIN topics t ON t.id = p.topic_id AND t.deleted_at IS NULL AND t.archetype <> 'private_message'\n WHERE NOT tl.internal\n AND tl.clicks >= 300\n GROUP BY tl.user_id, tl.post_id\n", :badge_grouping_id=>3, :default_badge_grouping_id=>3, :trigger=>0, :system=>true}
- Badge {:id=>30, :default_name=>"Famous Link", :badge_type_id=>1, :multiple_grant=>true, :target_posts=>true, :show_posts=>true, :query=>" SELECT tl.user_id, post_id, current_timestamp granted_at\n FROM topic_links tl\n JOIN posts p ON p.id = post_id AND p.deleted_at IS NULL\n JOIN topics t ON t.id = p.topic_id AND t.deleted_at IS NULL AND t.archetype <> 'private_message'\n WHERE NOT tl.internal\n AND tl.clicks >= 1000\n GROUP BY tl.user_id, tl.post_id\n", :badge_grouping_id=>3, :default_badge_grouping_id=>3, :trigger=>0, :system=>true}
- Badge {:id=>36, :name=>"Appreciated", :default_name=>"Appreciated", :default_icon=>"fa-heart", :badge_type_id=>3, :query=>" SELECT p.user_id, current_timestamp AS granted_at\n FROM posts AS p\n WHERE p.like_count >= 1\n AND (:backfill OR p.user_id IN (:user_ids))\n GROUP BY p.user_id\n HAVING count(*) > 20\n", :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>37, :name=>"Respected", :default_name=>"Respected", :default_icon=>"fa-heart", :badge_type_id=>2, :query=>" SELECT p.user_id, current_timestamp AS granted_at\n FROM posts AS p\n WHERE p.like_count >= 2\n AND (:backfill OR p.user_id IN (:user_ids))\n GROUP BY p.user_id\n HAVING count(*) > 100\n", :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>31, :name=>"Admired", :default_name=>"Admired", :default_icon=>"fa-heart", :badge_type_id=>1, :query=>" SELECT p.user_id, current_timestamp AS granted_at\n FROM posts AS p\n WHERE p.like_count >= 5\n AND (:backfill OR p.user_id IN (:user_ids))\n GROUP BY p.user_id\n HAVING count(*) > 300\n", :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>38, :default_name=>"Thank You", :default_icon=>"fa-heart", :badge_type_id=>3, :query=>" SELECT us.user_id, current_timestamp AS granted_at\n FROM user_stats AS us\n INNER JOIN posts AS p ON p.user_id = us.user_id\n WHERE p.like_count > 0\n AND us.likes_given >= 10\n AND (:backfill OR us.user_id IN (:user_ids))\n GROUP BY us.user_id, us.likes_given\n HAVING COUNT(*) > 20\n", :badge_grouping_id=>2, :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>32, :default_name=>"Gives Back", :default_icon=>"fa-heart", :badge_type_id=>2, :query=>" SELECT us.user_id, current_timestamp AS granted_at\n FROM user_stats AS us\n INNER JOIN posts AS p ON p.user_id = us.user_id\n WHERE p.like_count > 0\n AND us.likes_given >= 100\n AND (:backfill OR us.user_id IN (:user_ids))\n GROUP BY us.user_id, us.likes_given\n HAVING COUNT(*) > 100\n", :badge_grouping_id=>2, :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>39, :default_name=>"Empathetic", :default_icon=>"fa-heart", :badge_type_id=>1, :query=>" SELECT us.user_id, current_timestamp AS granted_at\n FROM user_stats AS us\n INNER JOIN posts AS p ON p.user_id = us.user_id\n WHERE p.like_count > 0\n AND us.likes_given >= 1000\n AND (:backfill OR us.user_id IN (:user_ids))\n GROUP BY us.user_id, us.likes_given\n HAVING COUNT(*) > 500\n", :badge_grouping_id=>2, :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>33, :name=>"Out of Love", :default_name=>"Out of Love", :default_icon=>"fa-heart", :badge_type_id=>3, :query=>" SELECT gdl.user_id, current_timestamp AS granted_at\n FROM given_daily_likes AS gdl\n WHERE gdl.limit_reached\n AND (:backfill OR gdl.user_id IN (:user_ids))\n GROUP BY gdl.user_id\n HAVING COUNT(*) >= 1\n", :badge_grouping_id=>2, :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>34, :name=>"Higher Love", :default_name=>"Higher Love", :default_icon=>"fa-heart", :badge_type_id=>2, :query=>" SELECT gdl.user_id, current_timestamp AS granted_at\n FROM given_daily_likes AS gdl\n WHERE gdl.limit_reached\n AND (:backfill OR gdl.user_id IN (:user_ids))\n GROUP BY gdl.user_id\n HAVING COUNT(*) >= 5\n", :badge_grouping_id=>2, :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>35, :name=>"Crazy in Love", :default_name=>"Crazy in Love", :default_icon=>"fa-heart", :badge_type_id=>1, :query=>" SELECT gdl.user_id, current_timestamp AS granted_at\n FROM given_daily_likes AS gdl\n WHERE gdl.limit_reached\n AND (:backfill OR gdl.user_id IN (:user_ids))\n GROUP BY gdl.user_id\n HAVING COUNT(*) >= 20\n", :badge_grouping_id=>2, :default_badge_grouping_id=>2, :trigger=>0, :auto_revoke=>false, :system=>true}
- Badge {:id=>40, :default_name=>"First Mention", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>" SELECT acting_user_id AS user_id, min(target_post_id) AS post_id, min(p.created_at) AS granted_at\n FROM user_actions\n JOIN posts p ON p.id = target_post_id\n JOIN topics t ON t.id = topic_id\n JOIN categories c on c.id = category_id\n WHERE action_type = 7\n AND NOT read_restricted\n AND p.deleted_at IS NULL\n AND t.deleted_at IS NULL\n AND t.visible\n AND t.archetype <> 'private_message'\n AND (:backfill OR p.id IN (:post_ids))\n GROUP BY acting_user_id\n", :badge_grouping_id=>1, :default_badge_grouping_id=>1, :trigger=>2, :system=>true}
- Badge {:id=>41, :default_name=>"First Emoji", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>nil, :badge_grouping_id=>1, :default_badge_grouping_id=>1, :trigger=>0, :system=>true}
- Badge {:id=>42, :default_name=>"First Onebox", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>nil, :badge_grouping_id=>1, :default_badge_grouping_id=>1, :trigger=>0, :system=>true}
- Badge {:id=>43, :default_name=>"First Reply By Email", :badge_type_id=>3, :multiple_grant=>false, :target_posts=>true, :show_posts=>true, :query=>nil, :badge_grouping_id=>1, :default_badge_grouping_id=>1, :trigger=>0, :system=>true}

== Seed from /var/www/discourse/db/fixtures/007_web_hook_event_types.rb
- WebHookEventType {:id=>1, :name=>"topic"}
- WebHookEventType {:id=>2, :name=>"post"}
- WebHookEventType {:id=>3, :name=>"user"}

== Seed from /var/www/discourse/db/fixtures/009_users.rb
- User {:id=>-1, :name=>"system", :username=>"system", :username_lower=>"system", :email=>"no_email", :password=>"3af2608710842c59c689e9ac43c7ca16", :active=>true, :admin=>true, :moderator=>true, :approved=>true, :trust_level=>4}

== Seed from /var/www/discourse/db/fixtures/500_lounge_category.rb

== Seed from /var/www/discourse/db/fixtures/501_meta_category.rb

== Seed from /var/www/discourse/db/fixtures/502_staff_category.rb

== Seed from /var/www/discourse/db/fixtures/999_settings.rb

== Seed from /var/www/discourse/db/fixtures/999_topics.rb
*** Bundling assets. This might take a while ***
$ bundle exec rake assets:precompile
Purging temp files
I, [2016-11-03T16:31:02.371485 #6203] INFO -- : Writing /var/www/discourse/public/assets/admin-7afd26dc1ac22baa2580b2c70e1d5785fa17aba06457e96af080df9fb3926f6e.js
Skipping: browser-update-f57286e74ddbc53aa899689b01ef467078911e4138050c561939955849af35dd.js already compressed
Skipping: break_string-cc617154cd957804f2f6a1f3bc68258c9cdca3d4b9a322bf777d145fed04790e.js already compressed
Skipping: ember_jquery-94d39baf2b7a346571d3472782c3994e23b7cf8c4e2c645075bc11f7a82cdccf.js already compressed
Skipping: pretty-text-bundle-c5a9d947834b5283f0ce4eb1104046d4522e5ded5b6cf01f1124f401834aca4e.js already compressed
Skipping: wizard-application-93f5725788937919f582929ec9b91dc43f90433da05407cf6152ff1d57c1101a.js already compressed
Skipping: wizard-vendor-c7b999087a3c233eb2346562db6ec6a472a50c50cf676a2ea23304c4091d7716.js already compressed
Skipping: locales/da-f2dd4db91133eda61dcf08632e595261579f9373adf55b12d74d80d32398ebf9.js already compressed
Skipping: locales/he-644e1bcdd09fc043de0f648c288029f51ecbcfbb929cab80a9872d8a9bbfe32b.js already compressed
Skipping: locales/ar-6a4560085aa2f67298ea6e1f3b4ae6a0543e90564d46d96342a8f52eea25d642.js already compressed
Skipping: locales/ro-51cd33034bbc30a1392aaa2ebdef1cab11c006e09e9697e317a52d3162d84f68.js already compressed
Skipping: locales/sv-e9fc7c76b1d7bfcfa70be71b40ca044f02df1b40ed02bf68eb9711520514a626.js already compressed
Skipping: locales/te-c3ea52939b5c28075c98e0ad8abf09e79dd64751a4a43556054280ae8d1683dd.js already compressed
Skipping: locales/sq-fafac419a688fa1e2ca33be0bca86e25eb19a7cfcda305a03b174dfec059d11c.js already compressed
Skipping: locales/pt-898bfe4e3cd464e79cde269c4562b2ef4322ff5eed1cdd8ecc46f039b9bc9702.js already compressed
Skipping: locales/it-677e069e5cfa970d122bf042218231813eea2789dc734a26c40a459dabc8b533.js already compressed
Skipping: locales/bs_BA-42e18a642554da3a935543bca74db955f9c1e409abdf30d02aafef4142b9c5a8.js already compressed
Skipping: locales/ko-a9a1f99a55661ce667b441472f84fe58a4e5029d2b45a39a80eaa6d01c12f568.js already compressed
Skipping: locales/tr_TR-aed40a42d36d2efb61c0fff67ef1263940508d5b06bbdd520f8e8b66c82fa125.js already compressed
Skipping: locales/pl_PL-cef5ca50510e624cbfe987610a62fbd98e38676ebdf3c8280e5e7820774903a8.js already compressed
Skipping: locales/en-ddb35626323c6fda3a88e04238ba948dbf34a848600b66e2fae15b5b975fcf3d.js already compressed
Skipping: locales/fi-0aed001d58fe61831d8987b1bdaf45f666e29ea7949867e9bf3cbf243678e6db.js already compressed
Skipping: locales/sk-7d6c8fb1bb77b520cae3fe30837166de60249c6d6508d19dfed8a5fec5215c95.js already compressed
Skipping: locales/de-4cefd593e264e9c8edf66000c9e9aebc327d67c16294d368ecefd883ec8d8db6.js already compressed
Skipping: locales/nb_NO-e5b464cd806f037359f41547cbfa036e814d44ed35849b51738d3dc2779dcb68.js already compressed
Skipping: locales/gl-ea7650812b33cde55d67df462f5870ee1e01c0f55ebb853f9feaea60f19228f7.js already compressed
Skipping: locales/ru-fb069b214fd35b7f8908670217917835dcb374209fea884b3bf35775795aba45.js already compressed
Skipping: locales/et-794332d9b22aeb6be3bbbd9898c12ad39eacc0f6cd862a788a7323e61165ad4c.js already compressed
Skipping: locales/vi-7025b273e0753a6370422113590d3aef64e03dba007d3ec8756b997b671343db.js already compressed
Skipping: locales/cs-f2bd41852aefd96189b71421aaebebf2f16db458036fa3994f09a5ff13fa2b30.js already compressed
Skipping: locales/nl-faea5f7053775b36177dd8d424513a01909ef9690cebf09a9c9e5787b5bf8059.js already compressed
Skipping: locales/pt_BR-530e668dd8e1a65cc7672c1e52f1a3118fb5f74b9dfe84d94c9c90e2e455c664.js already compressed
Skipping: locales/ja-7a3f0cf4a5e55ae045f4088f814ce9b72527f50c139837c93864935eeeedbc5b.js already compressed
Skipping: locales/uk-d27ce643cb3830d77096abf5311ed62c0d364bea41eddbceadd33a6c6d2910d2.js already compressed
Skipping: locales/zh_TW-1d3eb2776f9df8494acedd374b18564506077c01c4ed90b1d7f6bb14a1b9a2d5.js already compressed
Skipping: locales/zh_CN-240d41818d36806317ec75f3f1bb14666f227ad0b417011aad28781cefa3cae1.js already compressed
Skipping: locales/fa_IR-ad9baa51f558e2c104bdbd96386c0c548fbd3ac3b894755fb8407b42d718d02c.js already compressed
Skipping: locales/es-bd2fe26864331856db429d7b45e115370017a2772485bf40469be2035fb48574.js already compressed
Skipping: locales/id-4d638b969076a303452a13f56bf5323608cf381c94c6468473fa552612659c04.js already compressed
Skipping: locales/fr-35ff15a9551de9b74d356d4e99c7735382c0bdd8fe581591a1d7392fefab4f31.js already compressed
Compressing: docker-manager-app-d73193fccf5ecd9a028a2b452ca1bd2d0dd53a3969b7cbcf1c2db145aeffacdf.js
gzip /var/www/discourse/public/assets/docker-manager-app-d73193fccf5ecd9a028a2b452ca1bd2d0dd53a3969b7cbcf1c2db145aeffacdf.js
Bundling assets
Compressing Javascript and Generating Source Maps

Compressing: docker-manager-vendor-5ae6424eab01916a4efff0d807662635eb6e705497ff0a27699552e0ab3a1716.js
gzip /var/www/discourse/public/assets/docker-manager-vendor-5ae6424eab01916a4efff0d807662635eb6e705497ff0a27699552e0ab3a1716.js

Skipping: application-f867721ed6ec5b008c1e95d23296b85967d1dbe42c98e1ddd172a8bb06615b49.js already compressed
Skipping: discourse/controllers/application-4b46985acabba9d61c087cd357c6d5b00133a6b0619913a576bf458c548bedd8.js already compressed
Skipping: discourse/helpers/application-96fa9dd14131f46914ea4c7ffc2981a33a069023a64e3a09a377b507553988be.js already compressed
Skipping: discourse/routes/application-657ceabbc39289d7c42186d850f41b1300204ff134183073db70eb40ce17a6ed.js already compressed
Skipping: wizard/controllers/application-ac59b2e04eaed71128e02513d84ad9aa765b451d9c57ba356c8561c927240945.js already compressed
Skipping: wizard/routes/application-266349c0539b224b98ba399d99569579c8be902eae03f47cb47317a7399138e0.js already compressed
Skipping: vendor-52ed1f7ea87a692ca7ec8f3b75bb76997f730cae151edfe8f467849ef9ddde78.js already compressed
Skipping: admin-33659c8f661380a24bb1ea70e253c23ce0f8547b51c9895ebea90c21fe679f3c.js already compressed
Skipping: ember_jquery-5bc98ec46a799a78ead48d23df534d67c737906cdc100d826b0a001a8a1c1b8b.js already compressed
Skipping: pretty-text-bundle-82f102e81c27277a66fe2360dbd63d6dbb98eb3b0b83116d48b6c6c01dd36eb3.js already compressed
Skipping: wizard-application-d64cc31ecbcc8277f133c9efee4cae4c7b9a998e61a11a403bfc98ee90f42f8b.js already compressed
Skipping: locales/da-c2ffb795f5cf080629d8b8756d6476709a607d2ebf8c077b101693f4224fa10a.js already compressed
Skipping: locales/he-4040c0b4cfcaccdf08442c964dc03d7cc88fe34fad5d9c9e517bbdba388a6d93.js already compressed
Skipping: locales/ar-a392cba3ffe49dff385afda4afdb56c170968ea3ab4c8e8c410d6c8ca9fb04a2.js already compressed
Skipping: locales/ro-00f668ef2f3e8bf465e221d0a4a7799edf625cda944e857ba7512e890d3b0dc6.js already compressed
Skipping: locales/sv-f1f26339784ff34279fe926b3edc17e105b79bb22c86e2df51ec0072aeae46d1.js already compressed
Skipping: locales/te-05d2deb7605f046151d6f24013ab8e5def3235db6a1e44bf84a0b4a46e09e0b4.js already compressed
Skipping: locales/sq-e4b67c106939dcddf914a32f22c889180b8cda074ca00e0630529f841074a6c3.js already compressed
Skipping: locales/pt-98b02510e7ff26f999fbfe4fa12d4e07611b6ef14acc7ecf8e14299a42de05f5.js already compressed
Skipping: locales/it-62144b8b97ca704fe796b19f407b362224c91a8c372dfbfbbd9a75ff0cc974f1.js already compressed
Skipping: locales/bs_BA-fe770d65040615f5fedcca5b54863c925daef65438e4d1367e1d021d6bc89d0a.js already compressed
Skipping: locales/ko-db5d62e4d265a6db3eec03c8336a3c9c9c191ad721ec1334e8e4bcf7466e5a5c.js already compressed
Skipping: locales/tr_TR-cfbeff07bff41de14e2d9252e1057177b9cae065c089fa165fa9619df60af9a5.js already compressed
Skipping: locales/pl_PL-7eeb5fc1c51ec59a5dde00389a02558375e6d00b14d143e44bcb5c07c30cd894.js already compressed
Skipping: locales/en-8c50cd32d717ce7e038173ddc7f8ffc4d5413b493d94081bdc8428ca19432fac.js already compressed
Skipping: locales/fi-7c5ec52e9fb0fbcbbdc233130f21722f1aa8b07bb05845cd6deecfced46ca580.js already compressed
Skipping: locales/sk-69b9dfc0d98b8465c3e967af07c78b7441c340b816c07e12e0e3f47a7adb9225.js already compressed
Skipping: locales/de-f838bb414bea6cbe9edb92729e086647b1634a4edc9eb34fe05440e7ca070756.js already compressed
Skipping: locales/nb_NO-464e2a44009f97b320a3b3ac085432eee63e6ccc559f032774676b1fa48d0302.js already compressed
Skipping: locales/gl-98955b1a6666552568527dc288f312cdae73f1581fc6a26d1b42977aa2604bf0.js already compressed
Skipping: locales/ru-6eb0c0f45ba0a66bc95e8ea0e6ff52e016b043387ef371cc98bf0a7b40488790.js already compressed
Skipping: locales/et-984d5fa87fe7f33b737e47f4a8f4b2db57bd965be11f8172f416f98c32022998.js already compressed
Skipping: locales/vi-75ab0d706b7fe75a34cf874054e44095a9e111a7a944237e7578ff2f151b54d2.js already compressed
Skipping: locales/cs-1cbb500b1f59eb73b7d22ca314506e49a04c23ac7f11367ee863d44a5662ac4a.js already compressed
Skipping: locales/nl-12f393ec263266d4fa991e179a417f4797d0db2f60526636facee55ff10cd3a8.js already compressed
Skipping: locales/pt_BR-8d5a275d44355de380f7be73f22e44e285cc52b1af6ca4032c9ca0bca9d7e908.js already compressed
Skipping: locales/ja-050bb62cdb51ce889c1ed03fd062d9e7f571ca361c8db40286b2665dec86fed5.js already compressed
Skipping: locales/uk-e5d0feae1429ef93f010d92ac0dd1aec355a8620c18b56e7a9f1f102a460411e.js already compressed
Skipping: locales/zh_TW-2644dc8555e9d037bfb5e3af8b9cdf18acacacae94864ae9cc3c8b171ea32af0.js already compressed
Skipping: locales/zh_CN-d3c3636a4f238052f761dae0c433ffc7ca37056925fd22cb9b6701612d4271f2.js already compressed
Skipping: locales/fa_IR-121a2800cf904c1764ebc4be3654263d9dacf7b97195b5a0d6c3867de9859b57.js already compressed
Skipping: locales/es-f57a3511c727bd320b80bd9f6d0368d40382326e9acec2d4e841c676f68c43c2.js already compressed
Skipping: locales/id-53f3b9d87410aab438907aee1f3346de31c29c5519245a33e463c5565a294379.js already compressed
Skipping: locales/fr-93c98ca0ebee151df3985406f785a76c8eb47e8d3dea87dc152396c0331d7852.js already compressed
Skipping: application-37c47e47e2654239b418f5b3551cb2a5fe9525617c031496f20e771c94da880e.js already compressed
Compressing: discourse/routes/application-077c11b10cac0d5785f939fa4b2011452c6bf4da7f78bba0c39b31a0e3b1a356.js
uglifyjs '/var/www/discourse/public/assets/discourse/routes/_application-077c11b10cac0d5785f939fa4b2011452c6bf4da7f78bba0c39b31a0e3b1a356.js' -p relative -c -m -o '/var/www/discourse/public/assets/discourse/routes/application-077c11b10cac0d5785f939fa4b2011452c6bf4da7f78bba0c39b31a0e3b1a356.js' --source-map-root '/assets/discourse/routes' --source-map '/var/www/discourse/public/assets/discourse/routes/application-077c11b10cac0d5785f939fa4b2011452c6bf4da7f78bba0c39b31a0e3b1a356.js.map' --source-map-url '/assets/discourse/routes/application-077c11b10cac0d5785f939fa4b2011452c6bf4da7f78bba0c39b31a0e3b1a356.js.map'
gzip /var/www/discourse/public/assets/discourse/routes/application-077c11b10cac0d5785f939fa4b2011452c6bf4da7f78bba0c39b31a0e3b1a356.js

Compressing: application-0ddf4a2a2c760d33a2a710c6a6ea180c65384033dbab0dd1cefd028f3f470cf3.js
uglifyjs '/var/www/discourse/public/assets/_application-0ddf4a2a2c760d33a2a710c6a6ea180c65384033dbab0dd1cefd028f3f470cf3.js' -p relative -c -m -o '/var/www/discourse/public/assets/application-0ddf4a2a2c760d33a2a710c6a6ea180c65384033dbab0dd1cefd028f3f470cf3.js' --source-map-root '/assets' --source-map '/var/www/discourse/public/assets/application-0ddf4a2a2c760d33a2a710c6a6ea180c65384033dbab0dd1cefd028f3f470cf3.js.map' --source-map-url '/assets/application-0ddf4a2a2c760d33a2a710c6a6ea180c65384033dbab0dd1cefd028f3f470cf3.js.map'
Killed

Posts: 2

Participants: 2

Read full topic

Easiest way to place a 728x90px banner at the bottom of each topic?

One account doesn't get emailed for a watched category

$
0
0

@alankeny wrote:

I have a user on my local Discourse that set a category to "watching" a few months ago. Based on the logs she was getting email messages for every post in the category until October 11th. After that she hasn't gotten any email messages for the category. She is still getting emails for private messages, and she still has the category set to "watching".

I've checked Admin > Emails > Sent and Admin > Emails > Skipped, but her account doesn't show up under either after October 11th. Her account isn't deactivated, suspended, blocked, or staged. As far as I can tell her preferences shouldn't be stopping her from getting emails for the category she's "watching".

I updated the server last night from the command-line, so it's on 1.7.0.beta7. How can I tell why this user isn't getting emails for this category she's watching?

Posts: 9

Participants: 2

Read full topic

Update - The page for update don't

$
0
0

@Pedro_Aguiar wrote:

I received this email:

"Hooray, a new version of Discourse is available!

Your version: 1.5.3
New version: 1.7.0.beta7

See what's new in the GitHub changelog.

Upgrade from your browser at http://comunidade.pegadadelixo.com.br/admin/upgrade.

Visit meta.discourse.org for news, discussion, and support for Discourse."

But when I go to the update page I get this page doesn't exist or it is private.

Why can't I access the page and update? The VM is on Azure.

Posts: 5

Participants: 4

Read full topic


Mandatory "Terms of Use" agreement checkbox?

$
0
0

@needhelp wrote:

Hi All

Not sure what this feature is called but is there a way to make users click something to confirm that they have read and agreed to "Terms of Use" before being able to continue to post or read the forum?

Even if a simple pop-up that users must click to exit before he can continue to read further would be fine.

I see there are pop-ups or sliders that appear on the forum from time to time, for example the "Your topic is similar to" pop-up or slider that appears when we are creating a new post, where is this template located and can I simply change the template to suit what I want to say?

I remember seeing other pop-ups or sliders that appeared when I was new to this forum, but they do not appear anymore. I suppose I can simply modify what those templates say if I know where they are located.

Many thanks...

Posts: 3

Participants: 2

Read full topic

[Fixed] Not sending rest password emails

$
0
0

@jpaulo wrote:

Hi,

I got discourse up and running with the email working and everything fine. Today we discovered that Discourse is not sending reset password emails, is there any config regarding that?

I looked in admin and there isn't any email sent and I watched the logs and requested a password reset and I didn't try to send any email.

Do someone have an idea why?

Thanks!

Posts: 4

Participants: 2

Read full topic

Typo on /wizard/steps/contact

$
0
0

@WhatNo wrote:

Step 5: Web Page

> General contact web page for you or your **oganization**.

Unless the next word is supposed to be knowwhatimsayin :wink:

Posts: 3

Participants: 2

Read full topic

Suggestions for where to start importing an XML dump from Squarespace

$
0
0

@WhatNo wrote:

Our legacy forum is implemented under Squarespace 5. I can export it as a giant XML dump, do you have any recommendations for which of the existing discourse import tools might be the most appropriate starting point ? I only need to pull in the basics like author, title, date, body -- the structure is more like a blog than a forum so I'm hoping that's going to make it easier...

Any ideas?
Thanks!

Posts: 1

Participants: 1

Read full topic

Mandatory "Terms of Use" confirmation for existing users

$
0
0

@needhelp wrote:

Hi All

I managed to create a mandatory checkbox for TERMS of USE confirmation via Settings/ Customize / User Fields so that all new users who who want to create a new account must click the checkbox to agree to terms of use before they can obtain an account.

This is working great, however, it only works for NEW users (unless I have overlooked some other settings). My forum has imported existing users from another platform and these existing users can still continue to login and use the forum without agreeing to my site's Terms of Use.

Can someone create a code or some kind of plugin that will activate the next time an existing user logins to his account, and will prompt the user to agree to Terms of Use before they can proceed further to use the rest of the forum?

If this is possible, can you give me an estimate how much this would cost?

Thanks

Posts: 1

Participants: 1

Read full topic

Post numbering inconsistent with scrollbar

$
0
0

@dfabulich wrote:

On https://forum.choiceofgames.com/t/announcing-the-choice-of-games-contest-for-interactive-novels/21578 there are a few hidden posts at the top of the thread.

If you click on the time stamp of the first post, it naturally identifies itself as post #1. But when you scroll to the next user-visible post and click on the time stamp, it says "post #4."

That's weird, I guess, but the bug I'm reporting is that this is inconsistent with the scrollbar, which is especially noticeable on mobile where only one or two posts fit on screen at a time.

In an iPhone Private tab, scroll down to the fourth visible post, "post #6."

Actual: The post counter in the lower-right corner says "4/32," making it appear as if you're on post #4. If you then scroll further down and jump to post "#4," that will take you to the second visible post, whose invisible post number is post #4.

Expected: When posts are hidden, the post numbers should change to match the scrollbar/counter, so if you're looking at "post #2" the scrollbar should say "2/32."

(Alternately, the scrollbar counter could include hidden posts, so you'd scroll down just one post and the counter would increment by 3 to say "4/34" or whatever the real total is. But this would reveal the existence of hidden posts to the public, so that's probably not the right answer.)

Posts: 2

Participants: 2

Read full topic

Blank page upon GitHub sign in, unable to sign in

$
0
0

@ossia wrote:

This user can't seem to log in: http://forum.freecodecamp.com/users/MandiHamza/activity

She's tried using multiple browsers, while authenticated with GitHub, and she says she just can't log in, and hasn't been able to for months now. When she clicks the "sign in with GitHub" button while currently signed into her GitHub account, she just gets a blank page.

I've tried impersonating her account and logging out to see if I could fix the issue. Do you have any other ideas?

Thanks for your help with this!

Posts: 3

Participants: 3

Read full topic


Misleading email rejection when reply permissions not available

$
0
0

@David_Lee wrote:

In our setup, we want to use one category as a 1-way mailing list to everyone who has signed up to our community, so have set this category for watching by default and restricted post & reply permissions on the category to staff members.

When email notifications on posts in this category are sent to a non-staff user, they still have the standard 'reply by email' explanation in the message body. However, if the user tries to respond by email, they get the unspecified error below. This makes it look like our forum doesn't work and will raise technical queries we would need to respond to.

Any way to address this? Thanks in advance.

We're sorry, but your email message to XXX didn't work.

Reason:

Something has gone wrong. Perhaps this topic was closed or deleted while you were looking at it?

If you can correct the problem, please try again.

Posts: 1

Participants: 1

Read full topic

Email statistics (SQL script for Data Explorer)

$
0
0

@meglio wrote:

I run into 100k / mo emails limit of a free SparkPost account.

To better understand what type of email exactly I have to tackle, I had to write an SQL query which calculates email statistics by email type. Sharing it with the community.

Example result:

SQL query

-- [params]
-- string :date_interval = 1 month

WITH stats AS (
  SELECT
    email_type,
    COUNT(id) as num
  FROM email_logs
  WHERE created_at >= CURRENT_TIMESTAMP - interval :date_interval
  GROUP BY email_type
)

SELECT
  email_type as "Email Type",
  num as "Total Emails",
  ROUND(num::numeric * 100 / (SUM(num) OVER ()), 1) || '%' as "Per Cent",
  (  num / (CURRENT_TIMESTAMP::date
     - (CURRENT_TIMESTAMP - interval :date_interval)::date)
  ) as "Emails per Day"
FROM stats
ORDER BY num DESC

Posts: 1

Participants: 1

Read full topic

How to disable digest emails more often than once every 2 weeks?

$
0
0

@meglio wrote:

I run into free 100k / mo email limit with a free SparkPost account.

I would like to make the system send 2x less digest emails. Most of the users have it configured to 1 week. Despite this, is there a configuration to always send a digest email not more often than once every two weeks?

If not, is this feature planned?

P.S. Being a non-for-profit community for ~2 years now, we can't just start paying another ~$30...100 / month to send more emails

Posts: 1

Participants: 1

Read full topic

Failing posts still show up as a reply until refresh

$
0
0

@fefrei wrote:

When a post is sent, it is already added to the stream before the server confirms it. If posting fails, for example by hitting a rate limit, it is removed again – but some side effects stay. For example, in the screenshot below, the "3 Replies" is incorrect; since only two posts follow and only one of them (my post) is an actual reply. The two missing "ghost posts" are failed tries to send my post. Reloading fixes this – only the local state is corrupted.

Posts: 1

Participants: 1

Read full topic

Custom email templates do not work

$
0
0

@dmitrykim wrote:

Installed version: v1.7.0.beta7 +14 (default Docker image)

Steps:

  • Log in as admin

  • Go to [admin panel] > Emails > Templates > [User Invited To Private Message Pm]

  • As the template body, enter the following:

    %{header_instructions}
    %{respond_instructions}

  • Save changes

  • Set the same template for User Posted Pm and User Posted and save.

  • Open public profile of a test user whose email you control, and PM him.

  • Check the email notification for the PM, its template is the default template for this type of notification, as if no changes to email templates were done.

Posts: 1

Participants: 1

Read full topic

Viewing all 60613 articles
Browse latest View live




Latest Images