Commit Graph

1486 Commits

Author SHA1 Message Date
Sam Saffron d0d60af510 add back column temporarily to make deployment smoother 2017-07-04 10:31:10 -04:00
Sam 845170bd6b FEATURE: add support for group visibility level
There are 4 visibility levels

- public (default)
- members only
- staff
- owners

Note, admins and group owners ALWAYS have visibility to groups

Migration treated old "non public" as "members only"
2017-07-03 15:26:57 -04:00
Arpit Jalan 16d356ab4e FEATURE: resending invite should include original custom message
https://meta.discourse.org/t/will-resent-invite-include-original-custom-message/64699
2017-06-30 18:13:33 +05:30
Jakub Macina 67ce4b70a6 Add index to extension column in TopicLink. 2017-06-20 13:01:31 +02:00
Jakub Macina 4c22f3a0e2 Add file extension column to TopicLinks. 2017-06-09 13:56:18 +02:00
Neil Lalonde 6aa0823bf4 FIX: lounge category security settings won't be reset after an upgrade 2017-06-06 16:57:21 -04:00
Guo Xiang Tan 26b5981f19 Fix typo. 2017-06-06 12:10:51 +09:00
Guo Xiang Tan 08cf7495da Delaying dropping topic auto close columns by one hour. 2017-06-06 12:07:31 +09:00
Guo Xiang Tan 0ecb668d49 Merge pull request #4893 from tgxworld/remove_unused_columns
Remove columns that are no longer being used.
2017-06-06 10:07:00 +09:00
Guo Xiang Tan 0c203e61cd Raise `ActiveRecord::IrreversibleMigration` instead of `StandardError`. 2017-06-05 11:02:24 +09:00
Guo Xiang Tan 1c05ca91ea Remove columns that are no longer being used. 2017-06-05 10:59:05 +09:00
Guo Xiang Tan ac6c1acbed FIX: Groups that do not have any owners should not allow membership requests. 2017-06-05 10:02:37 +09:00
Sam 0aed2533ac Revert unread optimisation, has too many edge cases 2017-05-26 09:04:13 -04:00
Sam Saffron 6674611960 correct migration so it always populates column 2017-05-25 18:50:51 -04:00
Sam Saffron 7d59ff67b8 adjust qurey to include messages, once everything is read
then mark first_topic_unread_at to be current time
2017-05-25 18:40:32 -04:00
Sam Saffron 1a1f5d2101 create or replace 2017-05-25 18:12:45 -04:00
Sam 29fac1ac18 PERF: improve performance of unread queries
Figuring out what unread topics a user has is a very expensive
operation over time.

Users can easily accumulate 10s of thousands of tracking state rows
(1 for every topic they ever visit)

When figuring out what a user has that is unread we need to join
the tracking state records to the topic table. This can very quickly
lead to cases where you need to scan through the entire topic table.

This commit optimises it so we always keep track of the "first" date
a user has unread topics. Then we can easily filter out all earlier
topics from the join.

We use pg functions, instead of nested queries here to assist the
planner.
2017-05-25 15:07:30 -04:00
Guo Xiang Tan 0984763013 Remove use of `rescue nil` in migration. 2017-05-17 09:18:49 +08:00
Guo Xiang Tan eccfab6a19 Use `execute` instead of `exec_sql` in migration. 2017-05-17 09:18:42 +08:00
Neil Lalonde 7821400141 FEATURE: staff can set a timer to remind them about a topic 2017-05-16 14:49:50 -04:00
Sam e1dd543a93 FEATURE: allow users to select theme on single device 2017-05-15 12:48:16 -04:00
Neil Lalonde 8b9799507c fix deploy problems due to renamed table 2017-05-12 15:17:25 -04:00
Sam 2d96a0785d FEATURE: theme selection is now global per-user 2017-05-12 12:41:34 -04:00
Neil Lalonde 55b61e9bea rename topic_status_update to topic_timer 2017-05-11 18:27:53 -04:00
Pat David b7d16de914 Fix migrate AddCssClassNameToEmbeddableHosts 2017-05-11 15:16:16 -04:00
Pat David 84cd19686c Fix migration file problem 2017-05-11 15:16:16 -04:00
Pat David 4bf8548dc5 Add embed class name setup for embeddable hosts 2017-05-11 15:16:16 -04:00
Régis Hanol eabfc59d51 rename 'convert_pasted_images_quality' site setting to 'png_to_jpg_quality' 2017-05-11 10:01:20 +02:00
Régis Hanol 53257a87ff remove 'convert_pasted_image' site setting 2017-05-11 09:16:53 +02:00
Guo Xiang Tan 71a266b673 Remove daily mailing mode option as it doesn't scale.
https://meta.discourse.org/t/daily-updates-option-for-mailing-list-mode/45029/14?u=tgxworld
2017-05-05 12:21:50 +08:00
Sam 7a15b44ac3 rename on_remove, on_drop 2017-05-04 14:03:17 -04:00
Sam 6a6eed4ed2 DEV: column dropper class for cleaner removal of superflous columns
Also fixes issues during deploy cause target column was renamed in
theme_fields
2017-05-04 10:15:41 -04:00
Sam dbb6e461aa oops 2017-05-03 11:44:15 -04:00
Sam 342ef5f81a FEATURE: out-of-the-box dark/light user selectable themes 2017-05-03 11:31:33 -04:00
Sam 946f25098f Refactor theme fields so they support custom theme defined vars
This paves the way to allowing themes to specify uploads and so on.
2017-05-02 16:02:14 -04:00
Robin Ward f05f1a24d3 Change Anniversary badge to be multiple grant, once per year 2017-04-28 14:22:54 -04:00
Guo Xiang Tan 1f6418f907 Track error message in `SchedulerStats`. 2017-04-26 01:34:25 +08:00
Arpit Jalan aeead60036 FIX: make TopicEmbed trashable 2017-04-25 18:40:39 +05:30
Sam 7a9eee1b71 FEATURE: default notification level for group messages
also fixes it so staff can amend other user's group notification level
2017-04-20 15:47:35 -04:00
Sam 7eabb90b71 FEATURE: added error messages for bad theme CSS / JS 2017-04-19 16:46:46 -04:00
Sam 5e3a0846f7 FEATURE: allow themes to share color schemes 2017-04-17 15:56:24 -04:00
Guo Xiang Tan 04016f0dec Support Ruby 2.4. 2017-04-15 12:29:00 +08:00
Sam a3e8c3cd7b FEATURE: Native theme support
This feature introduces the concept of themes. Themes are an evolution
of site customizations.

Themes introduce two very big conceptual changes:

- A theme may include other "child themes", children can include grand
children and so on.

- A theme may specify a color scheme

The change does away with the idea of "enabled" color schemes.

It also adds a bunch of big niceties like

- You can source a theme from a git repo

- History for themes is much improved

- You can only have a single enabled theme. Themes can be selected by
    users, if you opt for it.

On a technical level this change comes with a whole bunch of goodies

- All CSS is now compiled using a custom pipeline that uses libsass
    see /lib/stylesheet

- There is a single pipeline for css compilation (in the past we used
    one for customizations and another one for the rest of the app

- The stylesheet pipeline is now divorced of sprockets, there is no
   reliance on sprockets for CSS bundling

- CSS is generated with source maps everywhere (including themes) this
    makes debugging much easier

- Our "live reloader" is smarter and avoid a flash of unstyled content
   we run a file watcher in "puma" in dev so you no longer need to run
   rake autospec to watch for CSS changes
2017-04-12 10:53:49 -04:00
Guo Xiang Tan f4758a4c4d FEATURE: Allow admins to schedule a topic to be published in the future. 2017-04-04 11:16:05 +08:00
Robin Ward fc7fa4c0ad Rename "Rookie of the Month" to "New User of the Month" 2017-03-31 16:30:30 -04:00
Robin Ward 893e93dfbe New badge, Rookie of the Month, for two new high quality users. 2017-03-31 15:06:31 -04:00
Guo Xiang Tan 34b7bee568 FEATURE: Allow admin to auto reopen at topic.
* This commit also introduces a `TopicStatusUpdate`
  model to support other forms of deferred topic
  status update in the future.
2017-03-31 11:14:18 +08:00
Neil Lalonde 11ce73b8ed FEATURE: category setting for default top period 2017-03-22 16:54:18 -04:00
Guo Xiang Tan 1a7e954e09 FIX: Store custom emojis as uploads.
* Depending on a hardcoded directory was a flawed design
  which made it impossible to debug when custom emojis go
  missing.
2017-03-14 13:07:18 +08:00
Neil Lalonde 6d7e968e30 FEATURE: box-style rendering of sub-categories 2017-03-13 15:25:52 -04:00
Sam 99f4d5082b FIX: Improve token rotation and increase logging
- avoid access denied on bad cookie, instead just nuke it
- avoid marking a token unseen for first minute post rotation
- log path in user auth token logs
2017-03-07 13:27:43 -05:00
Neil Lalonde 6aab8cb331 FEATURE: new category setting for whether to show latest topics or top topics by default 2017-03-03 11:30:44 -05:00
Guo Xiang Tan 66a0a89591 PERF: Add index to speed up `DirectoryItem.refresh_period!` query. 2017-03-03 16:25:06 +08:00
Neil Lalonde 262016604d FEATURE: each category can control how many topics to show on categories page 2017-03-01 15:12:57 -05:00
Sam Saffron 3532957ce1 index should have always been unique 2017-02-22 12:37:11 -05:00
Neil Lalonde a702330ccd FEATURE: make show_subcategory_list a per-category setting 2017-02-22 11:42:36 -05:00
Régis Hanol f51e3b2131 FIX: should not be able to rename a system badge 2017-02-20 14:35:05 +01:00
Sam 2c59ffeb2c FIX: token rotation not accounting for overlapping tokens correctly
also... freeze_time has no block form, correct all usages and specs
2017-02-15 10:58:18 -05:00
Sam 0ab96a7691 FEATURE: add hidden setting for verbose auth token logging
This is only needed to debug auth token issues, will result in lots
of logging
2017-02-13 14:01:09 -05:00
Sam 4d57c95e9b delay the removal of auth token column from user table 2017-02-07 09:39:41 -05:00
Sam ff49f72ad9 FEATURE: per client user tokens
Revamped system for managing authentication tokens.

- Every user has 1 token per client (web browser)
- Tokens are rotated every 10 minutes

New system migrates the old tokens to "legacy" tokens,
so users still remain logged on.

Also introduces weekly job to expire old auth tokens.
2017-02-07 09:22:16 -05:00
Guo Xiang Tan dfc8178308 Revert "FIX: Wait 30 days before dropping the column."
This reverts commit ffc97f2298.

Should be safe now since we didn't get any reports.
2017-01-04 11:56:43 +08:00
Régis Hanol 49dda1e025 Merge pull request #4628 from caugner/move-welcome-topic-to-i18n
FIX: Move Welcome topic to I18n
2016-12-27 10:31:03 +01:00
Claas Augner e129e656d1
FIX: Move Welcome topic to I18n 2016-12-26 16:03:07 +01:00
Claas Augner 59c04d0f37
FIX: Add assets_topic_title to I18n 2016-12-26 15:38:48 +01:00
Sam 2b808ad9da Merge pull request #4609 from joebuhlig/category-topics-wiki
FEATURE: Category setting to make all topics wikis
2016-12-20 09:15:51 +11:00
Neil Lalonde 923cf73c6e Topic Featured Links: move data from custom fields to topics and categories tables. Invert behaviour of topic_featured_link_allowed checkbox. Fix a bug with invalid topic records due to changing that category checkbox. 2016-12-19 14:54:07 -05:00
Joe Buhlig 87251fded7 FEATURE: Category setting to make all topics wikis
FEATURE: Category setting to make all topics wikis
2016-12-19 06:42:18 -06:00
Guo Xiang Tan ffc97f2298 FIX: Wait 30 days before dropping the column.
* Regressions from the past is resulting in `logo_url` with
  no uploads record.
2016-12-15 22:45:04 +08:00
Guo Xiang Tan c47b60a1e4 FIX: Check for column that we want to drop instead.
* Otherwise, the migration is called multiple times.
2016-12-15 20:53:10 +08:00
Guo Xiang Tan 43ee9f884e FEATURE: Add `Group#full_name`. 2016-12-13 16:16:26 +08:00
Guo Xiang Tan 53086fdb98 FIX: Drop columns only after app has been deployed with updated code. 2016-12-13 09:10:27 +08:00
Guo Xiang Tan 303282670f FIX: Skip callbacks when migrating. 2016-12-13 08:57:07 +08:00
Guo Xiang Tan 98fd77fb6c FIX: Don't drop the columns immediately. 2016-12-13 08:07:12 +08:00
Guo Xiang Tan da7009a968 FEATURE: Add request membership button for allowed groups. 2016-12-12 22:48:08 +08:00
Guo Xiang Tan 9a800107cb FIX: Associate category logo and background to uploads record. 2016-12-12 17:37:28 +08:00
Guo Xiang Tan 05f55dbc10 FEATURE: Group logs. 2016-12-12 17:29:54 +08:00
Guo Xiang Tan 3e19b738d7 Add 'Group#public'. 2016-12-12 17:00:30 +08:00
Guo Xiang Tan adb7fcb6b3 FEATURE: Add bio to group page. 2016-12-05 16:58:04 +08:00
Sam 1db9d17756 Make removal of topic columns more resilient to deploys 2016-12-05 12:11:46 +11:00
Sam c04d4171ff FIX: whisper no longer experimental
- Regular users are not notified of whispers
- Regular users no longer have "stuck" topics in unread
- Additional tracking for staff highest post number
- Remove a bunch of unused columns in topics table
2016-12-02 17:03:31 +11:00
Guo Xiang Tan 1867442fbc PERF: Add score indexes for top topics. 2016-11-24 10:11:52 +08:00
Guo Xiang Tan f03d9cad06 PERF: `NOT IN` query is really inefficient for large tables. 2016-11-02 13:09:18 +08:00
Neil Lalonde 9ef1688a76 FEATURE: per-category default topic list sort order 2016-11-01 12:18:41 -04:00
Arpit Jalan 382803cb05 FEATURE: include post image in OpenGraph image tag 2016-10-31 15:11:33 +05:30
Neil Lalonde 6d68aac6eb FIX: add_directory_items_indexes causes migration to timeout on large databases, so create indexes concurrently 2016-10-25 15:30:21 -04:00
Régis Hanol 52b338db62 FIX: category logo & background URLs should not use the CDN 2016-10-25 10:43:57 +02:00
Sam 9a94d1b212 FIX: everyone is not a visible group 2016-10-24 13:03:22 +11:00
Guo Xiang Tan 18d032ad91 PERF: Remove ordering by username.
* Ordering by username results in a very expensive query
for very little upside UX wise.
2016-10-15 01:13:58 +08:00
Sam f4f5524190 FEATURE: user API now contains scopes so permission is granular
previously we supported blanket read and write for user API, this
change amends it so we can define more limited scopes. A scope only
covers a few routes. You can not grant access to part of the site and
leave a large amount of the information hidden to API consumer.
2016-10-14 16:05:42 +11:00
Sam eacfdf92cd FIX: increase external_avatar_url to 1000 limit 2016-10-11 10:12:11 +11:00
cpradio 6f1c31d777 Add notification level user preference when replying to a topic 2016-09-30 14:58:07 -04:00
Robin Ward b0ee7930e8 Server side support for inviting as a moderator via the wizard 2016-09-22 09:52:19 -04:00
Robin Ward c94e6f1b96 Add locale step 2016-09-22 09:52:19 -04:00
Robin Ward 3f6e3b9aff Wizard - Color Scheme Step 2016-09-22 09:52:19 -04:00
Sam 8dc4329094 FEATURE: optionally get extra profile info from facebook
This feature requires the application be approved by facebook, so it is
default off
2016-09-19 16:14:11 +10:00
Sam 5b3cd3fac9 FEATURE: Import facebook avatars when logging in via facebook
FIX: warning about popup dimensions when using facebook login

Rules are:

- On account creation we always import
- If you already have an avatar uploaded, nothing is changed
- If you have no avatar uploaded, we upload from facebook on login
- If you have no avatar uploaded, we select facebook unless gravatar already selected

This also fixes SSO issues where on account creation accounts had missing avatar uploads
2016-09-19 15:10:23 +10:00
Erick Guan c463cf63d4 FEATURE: Webhook for user creation and approval 2016-09-19 10:12:55 +08:00
Erick Guan 9ce61b4586 FEATURE: Webhooks. 2016-09-05 18:44:00 +08:00
Neil Lalonde 2251104e32 FEATURE: avatar flair can be font awesome icons 2016-08-26 17:15:37 -04:00
Robin Ward 4f68fd970d FIX: Forgot to include a file in the previous commit :) 2016-08-23 15:09:09 -04:00
Neil Lalonde d079f69b7b FEATURE: add flair to avatars using new settings in the groups admin UI 2016-08-17 15:13:15 -04:00
Sam 416e7e0d1e FEATURE: basic UI to view user api keys 2016-08-16 17:06:52 +10:00
Sam fc095acaaa Feature: User API key support (server side implementation)
- Supports throttled read and write
- No support for push yet, but data is captured about intent
2016-08-15 17:59:36 +10:00
Régis Hanol e55e2aff94 FIX: FirstReplyByEmail badge wasn't granted
DEPRECATED: PostProcess badge trigger
2016-08-10 19:24:01 +02:00
Sam ab68e0c9db FEATURE: allow "developer" account flagging via developers table
This mechanism for flagging developer accounts will eventually replace
DISCOURSE_DEVELOPER_EMAILS
2016-07-28 10:14:06 +10:00
Sam df535c6346 FEATURE: refresh session cookie at most once an hour
This feature ensures session cookie lifespan is extended
when user is online.

Also decreases session timeout from 90 to 60 days.
Ensures all users (including logged on ones) get expiring sessions.
2016-07-25 12:07:31 +10:00
Arpit Jalan a9207dafa7 FEATURE: configure session time via site setting for all the users (#4343) 2016-07-23 02:57:30 +05:30
Sam a5d0e0f277 PERF: index for deleted posts in a topic to speed up has_deleted detection 2016-07-19 10:29:22 +10:00
Sam Saffron 46b34e3c62 FEATURE: remove user option for edit history public
Users can no longer opt-in for "public" edit history
if site owner disables it.

This feature adds cost and complexity to post rendering since
user options need to be premeptively loaded for every user in the
stream. It is also confusing to explain to communities with private edit
history.
2016-07-16 21:30:00 +10:00
Robin Ward e5293f2c9a FIX: Force HTML to recompile 2016-07-11 12:57:05 -04:00
Guo Xiang Tan 20359788dc
Rename `SiteSetting#use_https` to `force_https`. 2016-06-29 15:02:43 +08:00
Sam 852860de66 FEATURE: simpler and friendlier unsubscribe workflow
- All unsubscribes go to the exact same page
- You may unsubscribe from watching a category on that page
- You no longer need to be logged in to unsubscribe from a topic
- Simplified footer on emails
2016-06-17 11:28:49 +10:00
Neil Lalonde 17b1179103 oops, missed a file 2016-06-15 13:56:56 -04:00
Régis Hanol e97e0bb311 FEATURE: new FirstReplyByEmail bronze badge 2016-06-13 15:37:14 +02:00
Neil Lalonde d7622f0665 remove unused broken tag_count column 2016-06-09 16:50:09 -04:00
Neil Lalonde a6090339a7 FEATURE: tag group options: limit usage of one tag per group, tags in a group can't be used unless a prerequisite tag is used 2016-06-09 16:01:19 -04:00
Neil Lalonde a49ace0ffb FEATURE: ability to restrict tags to categories using groups 2016-06-07 15:36:20 -04:00
Neil Lalonde f3f6c2f98f FEATURE: tag groups 2016-06-06 14:18:48 -04:00
Régis Hanol 9704603fab FEATURE: sendgrid webhooks 2016-06-01 21:48:06 +02:00
Neil Lalonde 6796b15857 FEATURE: restrict tags to be used in a category 2016-05-30 16:56:33 -04:00
Sam 706624c9fc workaround incorrect uncategorized category id set in site settings 2016-05-30 13:59:58 +10:00
Sam c9dcffe434 FEATURE: store history for scheduled job execution 2016-05-30 11:38:08 +10:00
Sam 8c3a0b44ba FIX: restore "every email" default for old accounts in mailing list mode
- Change default for mailing list mode frequency to daily
- Remove bootbox warning for mailing list mode (cause default is daily)
2016-05-27 12:07:10 +10:00
Neil Lalonde f13470b96b Use db schema for tags instead of plugin store and custom fields 2016-05-26 14:29:48 -04:00
James Kiesel feffe23cc5 FEATURE: More granular mailing list mode (#4068)
* Rearrange frontend to account for mailing list mode

* Allow update of user preference for mailing list frequency

* Add mailing list frequency estimate

* Simplify frequency estimate; disable activity summary for mailing list mode

* Remove combined updates

* Add specs for enqueue mailing list mode job

* Write mailing list method for mailer

* Fix linting error

* Account for stale topics

* Add translations for default mailing list setting

* One query for mailing list topics

* Fix failing spec

* WIP

* Flesh out html template

* First pass at text-based mailing list summary

* Add user avatar

* Properly format posts for mailing list

* Move make_all_links_absolute into Email::Styles

* Apply first_seen_at to user

* Send mailing list email summary hourly based on first_seen_at

* Branch and test cleanup

* Use existing mailing list mode estimate

* Fix failing specs
2016-05-21 15:17:54 +02:00
Sam 0cf5a1705a FIX: custom field index must only index short values 2016-05-20 12:35:09 +10:00
Régis Hanol aebb15337b remove invalid topic_users rows 2016-05-14 18:34:03 +02:00
Régis Hanol 8e611ec7a1 FEATURE: handle bounced emails 2016-05-02 23:15:32 +02:00
Régis Hanol e72f63e311 add index on post_id for the incoming_emails table 2016-04-25 17:50:50 +02:00
Régis Hanol 4960b62110 FEATURE: new 'block_auto_generated_emails' site setting 2016-04-20 21:29:27 +02:00
Sam fad017d842 FEATURE: add support for bounce emails
We now optionally add a Variable Email Return Path to every email we send.
This allows us to cleanly handle email bounces, which in turn will improve
deliverability.
2016-04-18 17:14:01 +10:00
Robin Ward 0396b14b70
FEATURE: New "First Onebox" badge 2016-04-12 15:31:14 -04:00
Régis Hanol f95f488a0b only drop 'user_firsts' table if it exists 2016-04-12 19:56:25 +02:00
Régis Hanol fe6f587d4d continues with other migrations if we can't delete the 'user_firsts' table 2016-04-12 17:04:04 +02:00
Robin Ward cc25716e47 FIX: Allow message format translations to be overridden 2016-04-08 14:49:50 -04:00
Thorben Egberts cf8b3fbd56 FEATURE: add user custom fields to user card
The user's custom fields are now displayed on the user card. This has to be enabled for each custom field in the custom field settings. See https://meta.discourse.org/t/custom-user-fields-on-usercard/22662/
2016-04-08 14:35:41 +02:00
Robin Ward 078b3bc87e Log once off jobs and enqueue on `db:migrate` 2016-04-07 14:32:31 -04:00
Robin Ward 855f72deb6 On second thought, enqueuing a job in a migration might be bad. 2016-04-07 13:58:31 -04:00
Robin Ward 526573074c Add one off job to grant the emoji badge retroactively 2016-04-07 13:49:44 -04:00
Robin Ward 5059ee04b9 Remove `UserFirst` table and grant Emoji badge directly 2016-04-07 12:31:41 -04:00
Robin Ward 5866f0df18 Remove UserFirst for mention since it can be retrieved elsewhere 2016-04-06 14:01:37 -04:00
Robin Ward 50fbda1ab7 FIX: Not sure why the default group didn't work 2016-04-05 15:37:41 -04:00
Robin Ward c30d327b77 FEATURE: Two new badges - First Emoji and First Mention 2016-04-05 15:17:41 -04:00
Régis Hanol b40efb98b8 FIX: remove deleted wiki color from existing color schemes 2016-03-29 12:12:33 +02:00
Robin Ward 5f54dd908a Recategorize link badges 2016-03-25 12:21:24 -04:00
Robin Ward 56c13856dd Move Editor and First Flag to "Getting Started" category 2016-03-25 12:19:12 -04:00
Robin Ward 717b54d64b Adjust badges to match descriptions cc @coding-horror 2016-03-22 10:51:42 -04:00
Robin Ward 1fba835d4f FIX: Use a logging table for daily likes given. Use it for badges. 2016-03-18 11:18:54 -04:00
Neil Lalonde 213950e4cf FEATURE: add option to include topics from trust level 0 users in digest emails 2016-03-17 17:35:23 -04:00
Robin Ward b0e23c9f56 FIX: Thank you badge had incorrect criteria 2016-03-17 13:03:47 -04:00
Robin Ward d9080b9d69 Rename "My Cup Runneth Over" to "Higher Love". Winwood! 2016-03-17 11:42:41 -04:00
Robin Ward 0346efd0d5 FIX: New badges ended up with no grouping 2016-03-16 14:44:42 -04:00
Robin Ward 7c384fc740 Adjusted "Gives Back" badge 2016-03-16 13:48:14 -04:00
Robin Ward 35c2339c2a Updated badges for receiving likes 2016-03-16 13:03:17 -04:00
Robin Ward 25c26dcd51 Create rarity levels for using up all likes 2016-03-16 12:31:26 -04:00
Robin Ward 06591022fe FEATURE: Generous badge 2016-03-15 16:08:29 -04:00
Robin Ward cfe18c3f5b FEATURE: Gives Back badge 2016-03-15 16:08:29 -04:00
Robin Ward e60da531ba FEATURE: Admired Badge for high like ratio 2016-03-15 16:08:29 -04:00
Robin Ward 5771d2aee2 SECURITY: Support for confirm old as well as new email accounts 2016-03-08 14:52:22 -05:00
Régis Hanol 622d804d46 FEATURE: Add rejection message on rejected IncomingEmail
FIX: Better RateLimit description in rejected IncomingEmail
FEATURE: Send email when hitting a rate limit
2016-03-07 16:56:17 +01:00
Sam fe6ea48123 Merge pull request #4038 from markbiegel/instagram-login
FEATURE: Instagram OmniAuth login methods
2016-03-07 14:05:07 +11:00
Régis Hanol 8d4bac7da2 fix build & add migration to clear common passwords cache 2016-03-03 19:39:22 +01:00
Neil Lalonde c1aea91d63 FEATURE: More digest email frequency options. Digests can be sent as often as every 30 minutes. 2016-03-02 15:43:47 -05:00
Sam Saffron 5f4075a6cf FEATURE: users can select how frequently they are notified on likes
- first time
- first time and daily (default)
- always
2016-03-02 23:16:52 +11:00
Sam Saffron c15c483931 PERF: stop rebuilding full directory item table on refresh 2016-03-02 18:23:29 +11:00
Sam Saffron 820a435af8 FEATURE: add "email in-reply-to user option"
We no longer include previous replies as "context", instead
we include and excerpt of the post being replied to at the bottom
of notifications, this information was previously missing.

Users may opt in to emailing previous replies if they wish
or opt out of "in-reply-to" which makes sense in some email clients that
are smarter about displaying a tree of replies.
2016-02-26 00:05:59 +11:00
Ubuntu 5c603bf8ec Added Instagram login method 2016-02-25 12:13:59 +10:00
Sam Saffron bc28c1ccb5 somehow this can be null in some cases 2016-02-23 17:34:05 +11:00
Sam ab06f86fbe FEATURE: allow users to control how many previous replies they get
- always means we always send previous replies with every email
- never means we do not
- "unless previously sent" ... is the default, in which we only email you each reply once

The default_email_previous_replies site setting can control this toggle
2016-02-19 13:57:07 +11:00
Sam f0e942f647 PERF: move 3 more option columns out of the user table 2016-02-18 16:57:22 +11:00
Régis Hanol 532fb7ea9d fix smoke tests 2016-02-17 11:57:06 +01:00
Régis Hanol 2f926cfdd3 only drop users table columns if they exists 2016-02-17 11:02:44 +01:00
Sam 6912aa9fd9 Remove superflous columns from the users table 2016-02-17 18:08:25 +11:00
Sam bbbb09a6fb FEATURE: start tracking information about migrations that run
This commit adds a new tracking table that lets us know

- When a migration ran
- What version Discourse was at
- How long it took
- What version Rails was at

The built in tracking in Rails is very limited, does not track this info
2016-02-17 18:08:25 +11:00
Sam 3829c78526 PERF: shift most user options out of the user table
As it stands we load up user records quite frequently on the topic pages,
this in turn pulls all the columns for the users being selected, just to
discard them after they are loaded

New structure keeps all options in a discrete table, this is better organised
and allows us to easily add more column without worrying about bloating the
user table
2016-02-17 18:08:25 +11:00
Sam dd6ebde824 FIX: Always ensure notifications are treated as read once clicked
UX: improve messaging so notifications list is far more stable
PERF: improve performance of notifcation lookup queries

- Add feature "SetTransientHeader" that allows shipping info to server
   in the next Ajax request
- remove local storage hack used for notifications
- amend lookupStale to return hydrated objects, move logic into store
- stop magically clearing various notifications (likes, invitee accepted, group_summary, granted badge)
2016-02-15 19:29:47 +11:00
Gerhard Schlager 9dba531567 FIX: Remove invalid 'http://' website from profiles 2016-02-06 22:30:24 +01:00
Robin Ward d41cbc5a30 FIX: Disable overrides in migrations
Site texts did not exist when this migration was created.
2016-02-02 11:49:57 -05:00
Régis Hanol de58e58272 migration to fix email_logs not attached to a user 2016-02-01 19:37:10 +01:00
Gerhard Schlager f4f87921c2 Replace uncategorized_description setting with translation 2016-01-28 00:26:25 +01:00
Sam Saffron bf650de7be FEATURE: change group default tracking level to tracking (database changes) 2016-01-27 21:56:25 +11:00
Régis Hanol 3083657358 FEATURE: better email in support
FEATURE: new incoming_email model
FEATURE: infinite scrolling in emails admin
FEATURE: new 'emails:import' rake task
2016-01-19 00:57:55 +01:00
Robin Ward 1f290a8336 FIX: Rebake all HTML due to handlebars upgrade 2016-01-18 12:46:54 -05:00
Régis Hanol e2744fc19f FIX: adding the 'contains_messages' column back 2016-01-12 12:06:51 +01:00
Régis Hanol 8049dfdfda CLEANUP: remove 'contains_messages' leftover 💩 2016-01-12 11:29:26 +01:00
Sam 6394521baa remove explicit user permissions from messages where group already has access 2016-01-12 14:15:39 +11:00
Sam 6fabb341f1 FEATURE: automatically archive welcome messages for site_contact_user
This de-clutters the sent messages box for site_contact_user, making it again usable
2016-01-10 16:46:11 +11:00
Sam 956e3ad208 FIX: correct user_history that was off by one 2016-01-08 16:52:46 +11:00
Sam 03ea0bfe22 FEATURE: allow users to archive messages
Messages are now in 3 buckets

- Inbox for all new messages
- Sent for all sent messages
- Archive for all messages you are done with

You can select messages from your Inbox or Sent and move them to your Archive,
you can move messages out of your Archive similarly

Similar concept applied to group messages, except that archiving and unarchiving
will apply to all group members
2015-12-23 11:09:30 +11:00
Sam 63076a841e Merge branch 'refactor_user_page' 2015-12-20 16:50:33 +11:00
Sam a8b5192efd FEATURE: User page refactor
Re-organise user page so it is easier to find interesting info
split it into tabs

- Introduce notifications and messages tabs
- Stop couting stuff for the user page to speed up rendering
- Suppress more information when viewing your own profile
2015-12-20 16:45:49 +11:00
Sam ed71674c45 FIX: missing unique index on category_users 2015-12-19 10:30:23 +11:00
Régis Hanol 15c229195f FEATURE: notification_level on a per-group basis 2015-12-14 23:17:09 +01:00
Régis Hanol 578f606a1a add 'incoming_email' to groups 2015-12-07 12:39:28 +01:00
Sam d1a5d8ea62 FEATURE: show group mentions and topics in groups page 2015-12-01 16:52:43 +11:00
Robin Ward 5e93140f85 FEATURE: Can override any translation via an admin interface 2015-11-27 11:35:19 -05:00
Sam 55b6f1aaa0 more fields needed flagging as HTML fields 2015-11-27 12:22:54 +11:00
Sam 43d63367fd PERF: stop loading handlebars and ember compilers in prod
(this removes a nice 50K from our initial payload and saves memory)

Also fixes invalid HTML automatically if added to HEAD or /BODY
2015-11-27 11:59:01 +11:00
Régis Hanol ba0df7e4cd rename 'is_support' to 'contains_messages' 2015-11-26 18:40:54 +01:00
Régis Hanol 9ef8397164 new Category.is_support attribute 2015-11-26 18:31:24 +01:00
Robin Ward d65ec1af2e Rename `ninja_edit_window` to `editing_grace_period` :'( 2015-11-24 14:28:42 -05:00
Robin Ward e168c5fde3 PERF: Much more performant, multisite aware I18n overrides 2015-11-19 16:36:59 -05:00
Régis Hanol 92ba6125c4 FEATURE: new 'automatically_unpin_topics' user preference 2015-11-17 18:21:40 +01:00
Robin Ward 5234e54f7e OOPS: Left first try at skipping it in migrations 2015-11-14 16:13:02 -05:00
Robin Ward 810a069cfd FIX: Couldn't migrate database from nothing due to I18n
Since I18n has a DB backend now, I've introduced a helper we can use to
skip overrides in certain situations. Otherwise migration from empty
databases was broken.
2015-11-14 16:12:09 -05:00
Robin Ward 060ce9bf2a FEATURE: Overwrite server side I18n keys with API 2015-11-13 16:35:02 -05:00
Sam Saffron 6dd4bc7d57 FEATURE: support group owner, capable of controlling group membership
Group owners are regular users that can add or remove users to a group
The Admin UX allows admins to appoint group owners
The public group UX will display group owners first and unlock UI to
add and remove members

Group owners can only be appointed on non automatic groups
Group owners may not appoint another group owner
2015-11-10 00:56:57 +11:00
Sam Saffron ffa523a543 FIX: when moving posts, retain creator and date from OP 2015-11-07 15:17:47 +11:00
Régis Hanol acecfeb37f Add 'staged' boolean to User 2015-11-06 19:19:13 +01:00
Régis Hanol d56e91f44f PERF: add 'lower(title)' index on topics 2015-11-04 00:42:19 +01:00
Sam 2422289c8b FIX: whispers should not be revealed in reply to, or reply expansion
FEATURE: mark whisper as experimental
FIX: badges should never apply to whispers
2015-09-25 10:16:19 +10:00
Sam ffb8cb8cac FEATURE: remove dependency of Redcarpet
PERF: cache fancy_title in topics table

New pure ruby implementation is far more flexible and easier to amend.
2015-09-24 13:37:53 +10:00
Régis Hanol 36309e50cc Merge pull request #3767 from tgxworld/track_user_profile_views
Track user profile views
2015-09-23 11:38:18 +02:00
Guo Xiang Tan f39b9124b6 FEATURE: Log staff actions for Category changes. 2015-09-18 10:53:08 +08:00
Sam 287411525a PERF: add missing index on group_users 2015-09-18 10:43:53 +10:00
Guo Xiang Tan f41bcafe8d FEATURE: Add views to UserProfile. 2015-09-16 14:48:06 +08:00
Guo Xiang Tan d30f454261 FEATURE: Create UserProfilerView. 2015-09-16 14:48:06 +08:00
Régis Hanol a501947d67 FEATURE: suppress categories from the homepage 2015-09-02 20:25:18 +02:00
Neil Lalonde 1bd0f5b015 FEATURE: group can grant a trust level when a user is added 2015-09-01 16:52:12 -04:00
Régis Hanol d96531b163 FEATURE: bronze/silver/gold badges for popular links 2015-08-27 18:52:31 +02:00
Robin Ward d418c4cfc0 FIX: Bug with migrating old embeddedable hosts with `http://` 2015-08-22 10:20:41 -04:00
Robin Ward 676416f478 FIX: Build broken when someone didn't have an embed category 2015-08-20 16:10:34 -04:00
Robin Ward d1c69189f3 FEATURE: Can edit category/host relationships for embedding 2015-08-20 15:56:04 -04:00
Robin Ward bd631e343a FEATURE: Can create stylesheets for embedded comments 2015-08-10 10:21:04 -04:00
Régis Hanol 9156d6cd9d FIX: only migrate SiteText to SiteCustomization if there are any 2015-08-07 16:30:30 +02:00
Sam 7b8b96446e FEATURE: track statistics around post creation
- how long were people typing?
- how long was composer open?
- how many drafts were created?
- correct, draft saved to go away after you continue typing

store in Post.find(xyz).post_stat
2015-08-03 14:29:15 +10:00
Robin Ward 0d9899198f Migrate old moved posts messages in English 2015-07-31 19:06:19 -04:00
Robin Ward aa6f792ce1 FEATURE: Custom orders for user fields 2015-07-30 14:53:13 -04:00
Robin Ward 201617811e Migrate auto closed topics too 2015-07-29 12:20:50 -04:00
Régis Hanol faf4f44776 FEATURE: make pin expiration mandatory 2015-07-29 16:34:21 +02:00
Robin Ward 212c0fd87b Migrate many old moderation action posts to small actions 2015-07-28 17:35:33 -04:00
Robin Ward e09e5016ce Merge pull request #3633 from riking/patch-5
FEATURE: Add CommentMigration for db column comments
2015-07-28 16:18:01 -04:00
Kane York 13d56eb989 FEATURE: Add CommentMigration for db column comments
For documenting the database (will be used in discourse-data-explorer)
2015-07-28 13:14:07 -07:00
Neil Lalonde 7518918b8f FEATURE: add quarterly period to Top page 2015-07-28 12:31:42 -04:00
Robin Ward dc8a68fd29 FEATURE: New "Dropdown" user field type 2015-07-28 12:30:21 -04:00
Sam ea5ef3bcf6 correct index on name value to drop long values 2015-07-28 10:50:19 +10:00
Robin Ward bb93a345eb UX: Use smaller messages for moderator actions. 2015-07-27 10:09:21 -04:00
Régis Hanol 2473a00b26 FIX: improve smoke tests 2015-07-27 11:07:42 +02:00
Robin Ward f485950caa Add an index to improve querying some post custom fields. 2015-07-24 12:53:51 -04:00
Kane York 2a897a8a6b SECURITY: Remove email validation check bypass
- Increase size of email column to varchar(513)
 - Give error message on signup when email is too large

Overall impact: Low, allows signups from blocked domains. Main risk is increased spam.
2015-07-13 15:36:17 -07:00
Kane York 6f03aa164f FIX: Automatically add like-count to post menu 2015-07-10 10:11:13 -07:00
Neil Lalonde c32ea73456 add index on user_visits for reports 2015-07-07 14:06:42 -04:00
Neil Lalonde 782dd13e78 FEATURE: track user visits on mobile and display on admin dashboard in a new Mobile section 2015-07-07 14:06:42 -04:00
Robin Ward 7676c5dfe7 Can add topic templates to categories, prepopulated on compose 2015-07-03 10:01:46 -04:00
Sam 1343d40558 PERF: deleting a post in huge topics was timing out
- add missing index to user actions for fast retrieval by post
- add missing indexes to users for fast retrieval of staff
- only refresh topic_users liked/bookmarked cache for affected users
2015-06-18 09:58:49 +10:00
Sam 1aa7cf842a PERF: missing index on notifications
this was slowing down acting on a post
2015-06-17 18:05:52 +10:00
Sam 1db92e6027 FEATURE: make it easier to get invite badges
Campaigner, 3*TL1 users
Champion, 5*TL2 users
2015-06-15 14:30:42 +10:00
Robin Ward 7b6d6b76eb FEATURE: Multiple embeddable hosts
- Also refactors two site settings components into one, with tests
2015-06-09 13:25:43 -04:00
Neil Lalonde f1637fc11e FEATURE: plugins can register a custom admin quick start topic that will be seeded into new sites 2015-06-04 15:56:17 -04:00
Sam cbe45975e8 FIX: migrations broken in some non English various locales 2015-05-28 16:55:23 +10:00
Régis Hanol bb0c2813ac FEATURE: generate (avatar) thumbnails in a background task
FIX: keep the "uploading..." indicator until the server replies via the MessageBus
FIX: text was disapearing when uploading an avatar

PERF: always use a region for S3 (defaults to 'us-east-1')
FEATURE: ApplyCDN middleware when using S3
FIX: use the same pattern to store files on S3 and locally
PERF: keep a local cache of uploads when generating thumbnails
FEATURE: migrate_to_s3 rake task
2015-05-25 17:59:00 +02:00
Sam 2955507a57 FEATURE: badges for inviting users
First invite = Promoter
3 TL2 = Campaigner
10 TL3 = Champion
2015-05-15 12:04:41 +10:00
Sam 2b2d0e803f PERF: missing index on useractions making user page slow 2015-05-14 14:39:04 +10:00
Sam 1eeed5fed2 PERF: speed up counting of unread notifications 2015-05-14 12:33:43 +10:00
Sam 8362993099 PERF: add missing index on post actions 2015-05-13 19:43:51 +10:00
Erick Guan b772ff6e13 FEATURE: add slug geneartion options 2015-05-05 18:08:30 +08:00
Sam f58d85edea FEATURE: move stylesheet cache out of the uploads directory 2015-05-05 15:50:13 +10:00
Robin Ward 5b3f99aa50 Don't blow up if Redis switches to READONLY 2015-04-24 14:37:16 -04:00
Sam Saffron 46c138fb12 PERF: add missing index on topic_links 2015-04-23 02:07:55 +10:00
Robin Ward 5bf8c31af4 Users can see their pending posts 2015-04-21 16:44:47 -04:00
Régis Hanol dc6b2df2a2 increase url length on topic_embed 2015-04-21 11:03:10 +02:00
Robin Ward a5ee45ccbe `PostEnqueuer` object to handle validation of enqueued posts 2015-04-15 14:54:36 -04:00
Robin Ward 8ba6a45cd7 Post Queue model to enqueue creation of posts 2015-04-15 14:54:35 -04:00
Sam 75890aed26 FEATURE: allow admins to choose a group as a primary group
FEATURE: allow admins to set a default title for a group
2015-04-10 12:17:28 +10:00
Régis Hanol 3a28d50866 FIX: group user count was busted 2015-03-25 19:40:32 +01:00
Robin Ward 1e3e4135a3 Add Posts Read + Visits to User Directory 2015-03-24 15:31:54 -04:00
Sam 92e371f0b3 FEATURE: civilized mute
Allow user to mute all notifications generated by specific users
2015-03-24 11:55:22 +11:00
Sam 624b0b81b2 remove uneeded column 2015-03-23 17:24:23 +11:00
Sam 229ecc4f8a FEATURE: allow end users to opt out of getting any private messages 2015-03-23 15:50:45 +11:00
Sam 23ed7e9db8 Exceptions we use in the app should inherit off StandardError 2015-03-23 12:16:21 +11:00
Sam acf6b253e1 FEATURE: pick a valid hostname for notification email based on hostname
FEATURE: allow notification email to be set via ENV
2015-03-23 11:57:59 +11:00
Robin Ward 3d2d224312 FEATURE: User Directory, with sorting and time period filter 2015-03-18 15:20:34 -04:00
Sam ea1cd8dcd4 remove migration bombs 2015-03-06 18:14:19 +11:00
Sam 2a586d59e9 FEATURE: top topics all time
tweak top algorithm (we will continue next week)
2015-03-06 18:00:29 +11:00
Sam 20bee937b7 PERF: add index to make finding new topics faster 2015-03-02 09:49:20 +11:00
Sam f555bbb416 FEATURE: long descriptions for badges to help teach people 2015-02-27 17:19:18 +11:00
Sam 8772643e63 Rails upgrade changed behavior of column/table renames 2015-02-26 16:04:26 +11:00
Sam 8c7cce1bfc PERF: added missing indexes for pinned topics 2015-02-24 11:53:32 +11:00
Robin Ward aef7bf8b31 FIX: It should be `BadgeType::Silver` 2015-02-19 15:39:49 -05:00
Sam 1aa1e30e88 anniversary is silver
added copy
2015-02-19 11:17:30 +11:00
Régis Hanol 0fca0e9758 FEATURE: 1 year anniversary badge 2015-02-18 19:30:07 +01:00
Robin Ward 3ce2077aa8 Migrate unsubscribe keys to the database.
This should reduce a lot of the keys in redis.
2015-02-13 14:24:15 -05:00
Sam 820ce8765e refactor traffic report
split traffic report in 2, page view vs raw traffic
hide raw traffic report by default
improve flushing logic for application reqs
2015-02-06 14:39:16 +11:00
Robin Ward 4e64d16a47 FEATURE: Allow plugins to log staff actions 2015-02-05 15:26:34 -05:00
Sam 08b790b3c2 improve metrics gathered using in our traffic section
this also pulls out the middleware into its own home and inserts in front
2015-02-05 16:08:52 +11:00
Sam e105f0965c infrustructure for tracking application web requests 2015-02-04 16:15:16 +11:00
Neil Lalonde 644c7a4675 FEATURE: Add an option to show custom user fields on profiles. Default is to not show them. 2015-01-29 17:38:39 -05:00
Régis Hanol 256519dddf FEATURE: automatic group membership based on email address 2015-01-23 18:25:43 +01:00
Neil Lalonde 4c0129ccdd PERF: slow user pages in admin. add an index for trust level 3 calculations, and memoize query results 2015-01-19 15:30:16 -05:00
Régis Hanol 7a86abd105 Merge pull request #3084 from jmay/group-managers
table & model changes for group managers with permission to edit members
2015-01-16 12:02:38 +01:00
Arpit Jalan c619aed8f9 💄 add username and date-time in exported file name 2015-01-16 01:39:46 +05:30
Jason W. May a2b284a0a4 table & model changes for group managers with permission to edit membership 2015-01-15 11:44:42 -08:00
Régis Hanol 6734a51b6a move SiteText.{head,top,bottom} to SiteCustomization 2015-01-14 12:15:53 +01:00
Régis Hanol 6ee2849df6 move SiteText.{head,bottom} to SiteCustomization and remove redundant SiteText.top 2015-01-12 19:59:43 +01:00
Robin Ward 6b602d48b9 Support indexing on values in custom fields to help with tagging plugin. 2015-01-08 16:17:30 -05:00
Robin Ward 7f3e343cd4 FIX: Missing bookmarks from user actions 2015-01-08 15:25:00 -05:00
Sam 03388e11ab oops, migration was flipping 2015-01-08 15:26:15 +11:00
Sam 3347a48275 FEATURE: add liked and bookmarked classes to topic list item rows 2015-01-08 14:35:56 +11:00
Sam efc717c14a FEATURE: remove star concept from Discourse 2015-01-07 13:43:27 +11:00
Neil Lalonde 4975fc2890 Remove old access_password_removal cruft from 1.5 years ago 2015-01-05 12:04:27 -05:00
Régis Hanol c57a1b393f clean up 'checked_for_custom_avatars' user history entries 2015-01-02 12:37:17 +01:00
Arpit Jalan 68e66f3a25 Rename CsvExportLog to UserExport 2014-12-28 22:31:12 +05:30
Arpit Jalan 7c7474aa10 create a new table to maintain csv export log 2014-12-24 16:25:36 +05:30
Sam 5b844f5320 FEATURE: more than 1 site customization can be enabled at once
FIX: more robust site customizations

Rewrote site customization to use distributed cache and a much cleaner
css delivery mechanism
2014-12-23 13:03:48 +11:00
Sam f23eb475a4 FEATURE: remove override stylesheet option, too confusing 2014-12-23 13:03:48 +11:00
Régis Hanol 45dbdb6896 FEATURE: custom emojis 2014-12-23 01:12:26 +01:00
James Kiesel 84bed4f9ce Remove group name validation case sensitivity 2014-12-17 18:44:30 +13:00
Régis Hanol e6e7948617 FEATURE: support for emoji sets
Added following emoji sets
  - Apple/International
  - Emoji One (default)
  - Android/Google
  - Twitter

FIX: translations from plugins weren't properly merged with default translations
FEATURE: new 'site_setting_changed' event
2014-12-11 17:08:47 +01:00
Neil Lalonde 5f2c746853 remove unused site settings company_domain, company_full_name, company_name 2014-12-03 15:39:53 -05:00
Sam 6b10c4dc54 add support for hidden api keys, used in hosting scenarios 2014-11-20 15:38:20 +11:00
Sam 6bed4e1bf0 add allowed_ips to api_keys
update annotations
2014-11-20 14:53:15 +11:00
Sam b4844d4477 FIX: correct old username index
(in some cases search was not finding accounts)
2014-11-18 14:32:23 +11:00
Régis Hanol ec76be964e UX: better footer handling 2014-11-10 21:51:55 +01:00
Sam 2251877332 FIX: "Dismiss Posts" corrupting read state
REFACTOR: seen_post_count was a bad name, renamed to highest_seen_post_number
2014-10-31 09:40:35 +11:00
Régis Hanol e7f251c105 LOTS of changes to properly handle post/topic revisions
FIX: history revision can now properly be hidden
FIX: PostRevision serializer is now entirely dynamic to properly handle
hidden revisions
FIX: default history modal to "side by side" view on mobile
FIX: properly hiden which revision has been hidden
UX: inline category/user/wiki/post_type changes with the revision
details
FEATURE: new '/posts/:post_id/revisions/latest' endpoint to retrieve
latest revision
UX: do not show the hide/show revision button on mobile (no room for
them)
UX: remove CSS transitions on the buttons in the history modal
FIX: PostRevisor now handles all the changes that might create new
revisions
FIX: PostRevision.ensure_consistency! was wrong due to off by 1
mistake...
refactored topic's callbacks for better readability
extracted 'PostRevisionGuardian'
2014-10-27 22:06:43 +01:00
Robin Ward 71f211f0b3 FEATURE: Allow users to select a badge with an image to appear on their
user card
2014-10-20 16:35:38 -04:00
Robin Ward 1cf4a0d604 Rename "User Expansion" to the much clearer "User Card" 2014-10-20 12:11:59 -04:00
Arpit Jalan 2131a37811 FEATURE: show raw email for replies/topics created via email 2014-10-17 22:22:19 +05:30
Robin Ward 4d465362b5 FEATURE: Allow a user to upload an image for their expansion background. 2014-10-16 15:05:36 -04:00
Sam 2bace90054 FIX: migration would break if locale was forced to french 2014-10-14 18:07:59 +11:00
Robin Ward 84af9d2bff FIX: If we migrated your TOS setting, fix the name so it doesn't look
weird in the admin section.
2014-10-14 15:52:36 -04:00
David McClure 19d5362c6b FEATURE: ability to hide or show specific post revisions 2014-10-14 07:19:45 -07:00
Régis Hanol 5754e8dd0f FEATURE: auto-close topics based on last post 2014-10-10 18:21:44 +02:00
Robin Ward f9a8f6d6ce FEATURE: Support for a `required` setting on user fields. 2014-10-08 15:10:19 -04:00
Neil Lalonde 8a88e71b3c FEATURE: permalinks lookup table can redirect to any arbitrary url 2014-10-08 11:51:24 -04:00
Sam 0e7be81e60 FIX: badge granted titles were not being revoked when badge was revoked 2014-10-08 10:26:18 +11:00
Robin Ward 381814fd5d Adds support for a description to user fields. 2014-10-02 15:56:52 -04:00
Sam 72a28aeb7c FEATURE: always show highest trust level badge in card
FEATURE: fa-user icon for trust level badges
2014-10-02 16:08:31 +10:00
Régis Hanol 98b6b9821a FEATURE: log topic/post deletions from staff members 2014-10-01 17:40:13 +02:00
Robin Ward 206bf99553 FIX: Use `cmd_tuples` instead of checking row index for migration. 2014-09-30 10:51:01 -04:00
Robin Ward 8b5a1cd20f Migrate `tosAccepted` to new user fields 2014-09-30 10:45:18 -04:00
Robin Ward edb34c178a FEATURE: Show user fields when the user is signing up 2014-09-30 10:45:18 -04:00
riking e69d084c88 Add trust_level_locked column 2014-09-30 13:15:13 +10:00
Robin Ward 0fc0533134 FEATURE: Admin interface for adding custom fields for users 2014-09-25 16:17:51 -04:00
Robin Ward bc53d48bd7 Renaming site contents to site text 2014-09-24 16:08:14 -04:00
Sam 58eabb03e5 FEATURE: api support for arbitrary unlinked assets
admins can set retain periods for assets
2014-09-23 16:50:17 +10:00
Régis Hanol 6ca5a9b82c FIX: migration name
Was generating: `NameError: uninitialized constant PrivateMessagesHaveNoCategoryId`
2014-09-11 10:11:12 +02:00
Sam 0f585bcdbe FIX: PM should never be allowed to have a category
FIX: TL3 should not be allowed to muck with PM titles
2014-09-11 17:39:34 +10:00
Sam faefa3cc22 Merge pull request #2781 from oblakeerickson/api_seed_data
add rake task and seed data for discourse_api
2014-09-11 16:17:28 +10:00
Sam 43e132d5a6 FEATURE: sharing badges (nice share, good share, great share)
FIX: bad translation
2014-09-11 13:10:37 +10:00
Blake Erickson 5f124df251 add rake task and seed data for discourse_api 2014-09-10 20:53:21 -06:00
Sam 7f3797b635 FEATURE: Nice Topic, Good Topic and Great Topic badges
Note we will revoke all old badges post badges that went to post #1
and instead get topic badges
2014-09-11 12:36:37 +10:00
Sam af75360942 PERF: reverse index on topic users to speed up join 2014-09-10 23:03:59 +10:00
Robin Ward 56eda5abf9 FIX: Don't allow profile bios longer than 3k chars 2014-09-08 15:23:21 -04:00
Robin Ward 4f6b9815ae FEATURE: List moderator warnings on admin dashboard 2014-09-08 13:25:02 -04:00
Robin Ward 334e21a03a Revert "Revert "FEATURE: Can create warnings for users via PM""
This reverts commit 1c7559380c.
2014-09-08 11:11:56 -04:00
Robin Ward 1c7559380c Revert "FEATURE: Can create warnings for users via PM"
This reverts commit b0bfc1f93f.
2014-09-08 10:38:59 -04:00
Robin Ward b0bfc1f93f FEATURE: Can create warnings for users via PM 2014-09-08 10:27:06 -04:00
Sam 96ac2f63cd Rename trust level badges 2014-09-05 16:38:29 +10:00
Sam 59d04c0695 Internal renaming of elder,leader,regular,basic to numbers
Changed internals so trust levels are referred to with

TrustLevel[1], TrustLevel[2] etc.

This gives us much better flexibility naming trust levels, these names
are meant to be controlled by various communities.
2014-09-05 15:20:52 +10:00
Sam 9d340a2e0c FIX: migrate trust level site settings 2014-09-05 08:10:55 +10:00
Robin Ward 1c5e8efa68 FEATURE: Show an email icon beside posts that arrived via email 2014-09-04 13:04:41 -04:00
Sam 628a99090c FIX: ensure double flagging is impossible due to db constraint 2014-09-04 16:33:39 +10:00
Kamil Bielawski bf679f1626 FIX: destroy CategoryGroup when Category or Group is destroyed 2014-08-31 22:10:38 +02:00
Sam c07d76677d Merge pull request #2701 from riking/email-pr-ssl
Rename POP3 settings, fix multisite SSL state leak
2014-08-29 10:02:05 +10:00
Neil Lalonde 464a922910 FIX: permalinks table: increase limit of url column, make url index unique 2014-08-28 16:16:39 -04:00
Neil Lalonde 14890a6002 FEATURE: add a way to map arbitrary urls to a topic, post, or category. Useful for sites that have migrated to Discourse and want to redirect from their old site to Discourse with 301 redirects. 2014-08-28 15:58:24 -04:00
Sam 414c6d191f FIX: remove nullable dates post upgrade to Rails 4 2014-08-27 15:19:25 +10:00
riking 6d357c9c23 Rename pop3s settings to pop3, remove 'insecure' 2014-08-26 17:03:58 -07:00
Eyal Levin 94cb0c687b name_lower can't be nil. 2014-08-26 15:25:23 +03:00
Wilhansen Li e0f970326f Implement SSO overriding avatars.
Implemented by having Discourse download the image from the provided URL
and treating it as a custom upload.

Adds two more parameters to the SSO site’s response:

* `avatar_url` specifies the URL of the overriding avatar.
* `avatar_force_update` Discourse does not re-download avatars that
has already been download from the same URL. Setting this to true forces
Discourse to re-download the avatar in `avatar_url`

Note that both parameters are ignored if `sso_overrides_avatar` is set
to false.
2014-08-19 15:53:34 +08:00
Neil Lalonde 1445ad61da FIX: case-insensitive category lookup when creating topics 2014-08-18 11:07:49 -04:00
Jeff Atwood d09b30775c better copy on a few default topics 2014-08-18 01:51:44 -07:00
Sam ad1ae911f7 FIX: missing index 2014-08-18 12:38:27 +10:00
Neil Lalonde c0b6e399d8 FIX: handle deferred and disagreed post actions 2014-08-15 15:33:51 -04:00
Neil Lalonde bca855d80e FIX: from Sam: post_actions.targets_topic should not be nullable. Delete duplicate likes and prevent them from happening again. 2014-08-15 14:57:11 -04:00
Robin Ward 3c6673aceb Purge inactive accounts that are older than 7 days 2014-08-13 14:13:41 -04:00
Régis Hanol 85570ddc77 TRIVIAL: fix grammar on 'deferred' columns 2014-08-11 11:56:54 +02:00
Sam 22cd259687 FIX: remove faulty "ensure consistency" badge job 2014-08-11 09:21:06 +10:00
Sam b8d7fb8735 FIX: first flag should not auto revoke 2014-08-10 08:41:23 +10:00
Sam c1cbf1b269 PERF: new table used for title similarity search 2014-08-08 15:50:26 +10:00
Sam b5045a005f PERF: last seen index on users 2014-08-07 13:33:11 +10:00
Sam 0b01310c84 FIX: system badges where created under id 100 2014-08-06 10:51:39 +10:00
Sam b11b5cb61b SECURITY: rebake old user profiles 2014-08-05 16:37:56 +10:00
Sam cb0ecd9ff1 PERF: store topic views in a topic view table
* cut down on storage of the work Topic, 3 times per row (in 2 indexes)
* only store one view per user per topic
* only store one view per ip per topic
2014-08-04 19:07:55 +10:00
Sam 03c8f09be8 PERF: finalize porting to new incoming links structure 2014-08-04 16:43:57 +10:00
Sam 22768a4b68 PERF: refactor incoming links table 2014-08-04 12:35:55 +10:00
Sam 0920c4bea6 PERF: reduce storage requirements for incoming links
Only store incoming links for topics.
2014-08-04 11:06:48 +10:00
Robin Ward 09d7a697bf OPTIMIZATION: Add index to `post_timings` and adjust the query 2014-08-01 13:14:00 -04:00
Sam 81c0fe2894 FIX: Don't trigger share badge (only run daily)
too expensive, wrong trigger anyway.
2014-08-01 12:48:11 +10:00
Sam e9a1af0113 FIX: Do not suppress reply-to when other posts quoted 2014-07-31 11:40:02 +10:00
Régis Hanol 220f9e21e3 FIX: 'undo flag' marks the flag as disagreed 2014-07-30 23:35:42 +02:00
Sam e7e70d14da Merge pull request #2591 from BenLubar/benlubar-edit-history-public
add profile option for edit history visibility
2014-07-30 14:09:10 +10:00
Sam ebf385aedc FEATURE: allow title overridable 2014-07-30 08:46:59 +10:00
Robin Ward 7cc4a157f6 Merge pull request #2603 from techAPJ/patch-1
FEATURE: allow staff to send multiple invites to same email
2014-07-29 14:58:39 -04:00
Arpit Jalan f571abfaaf FEATURE: allow staff to send multiple invites to same email 2014-07-30 00:13:11 +05:30
Neil Lalonde eaafbccb53 Seed the Admin Quick Start Guide topic last so it appears as the newest topic 2014-07-29 14:30:32 -04:00
Neil Lalonde 81ff121fe8 FIX: length error when seeding legal docs on a site with a low max post length 2014-07-28 16:40:14 -04:00
Régis Hanol bddffa7f9a FEATURE: flag dispositions normalization
All flags should end up in one of the three dispositions
  - Agree
  - Disagree
  - Defer

In the administration area, the *active* flags section displays 4 buttons
  - Agree (hide post + send PM)
  - Disagree
  - Defer
  - Delete

Clicking "Delete" will open a modal that offer to
  - Delete Post & Defer Flags
  - Delete Post & Agree with Flags
  - Delete Spammer (if available)

When the flag has a list associated, the list will now display 1
response and 1 reply and a "show more..." link if there are more in the
conversation. Replying to the conversation will NOT give a disposition.
Moderators must click the buttons that does that.

If someone clicks one buttons, this will add a default moderator message
from that moderator saying what happened.

The *old* flags section now displays the proper dispositions and is
super duper fast (no more N+9999 queries).

FIX: the old list includes deleted topics
FIX: the lists now properly display the topic states (deleted, closed,
archived, hidden, PM)
FIX: flagging a topic that you've already flagged the first post
2014-07-28 19:28:07 +02:00
Ben Lubar 44dc4b4a17 add profile option for edit history, visible only when edit history is disabled globally. 2014-07-26 23:04:46 -05:00
Sam 0ab456b647 FIX: allow position to be changed post seed 2014-07-27 11:33:33 +10:00
Sam 782773f774 FIX: kick system badges out of other 2014-07-27 11:30:55 +10:00
Neil Lalonde 5a33e6f00c Move FAQ, Terms of Service, and Privacy Policy into topics in the Staff category. First post of those topics will be rendered on their respective pages. Site settings and content are not used for these documents anymore. Translations of the default text is moved into the standard YML files. 2014-07-25 14:41:20 -04:00
Sam 40af9ce612 FIX: do not store incoming links on avatars or uploads 2014-07-25 15:10:06 +10:00
Sam 0f9678fe49 FIX: faster update of all badges
Introduced badge triggers, introduced concept of badge that happens due to a post but has the post hidden

Delta badge grant happens once a minute, backed by redis
2014-07-23 11:46:07 +10:00
Sam 007310c4a2 Wire up triggers 2014-07-23 11:43:17 +10:00
Sam b9a7d945c3 Improve badge grouping UI
Start work on triggers
2014-07-23 11:43:17 +10:00
Sam 4feedecce4 BUGFIX: orphan badge groupings 2014-07-18 15:55:42 +10:00
Sam c8284170ad FEATURE: badge grouping UI
FIX: not loading more badges on badge show page
2014-07-18 15:46:36 +10:00
riking 73ceeda1f9 Stop unnecessarily suppressing settings for uncategorized
Fix migration for emailing into uncategorized
2014-07-17 10:25:52 -07:00
riking 3df3a908ac Remove email_in_address and email_in_category site settings
The functionality is entirely covered by per-category email in addresses, and the category being a number was confusing people.
2014-07-17 10:22:33 -07:00
Sam bfb37054e8 Badge Grouping work in progress 2014-07-17 16:11:10 +10:00
Sam e8ca1a2469 FEATURE: allow overriding badge names
FEATURE: allow html in badge description
2014-07-17 16:11:09 +10:00
Neil Lalonde 01a68f8cc7 Emails are case insensitive 2014-07-16 10:22:01 -04:00
Sam 986747bfc4 Add badge groupings table 2014-07-16 17:55:08 +10:00
Sam 5ad519e2bc Rename Read Faq, Read Guidelines 2014-07-16 17:55:08 +10:00
Robin Ward c6df00a5cc FIX: You shouldn't be able to add a parent to `Uncategorized` 2014-07-15 15:19:39 -04:00
Sam 2d0def9940 FIX: First Quote badge bust
Feature: track quoted posts
2014-07-15 17:47:24 +10:00
Sam 4c25fedf70 FEATURE: Reader badge
Read a every post in a topic that if 50 posts or longer
2014-07-15 15:16:41 +10:00
Sam 1b03feacf8 FIX: unique index on topic_id, post_number 2014-07-15 12:02:58 +10:00
Robin Ward c12780eb2b Merge pull request #2538 from techAPJ/patch-1
FEATURE: disposable invite tokens
2014-07-14 12:13:44 -04:00
Arpit Jalan 575b5e3d13 FEATURE: disposable invite tokens 2014-07-14 21:30:46 +05:30
Sam 88469721b9 FEATURE: Allow admins to disable specific badges 2014-07-14 17:40:36 +10:00
Sam 724fff22e7 SECURITY: Don't allow badges on read restricted categories 2014-07-12 09:37:22 +10:00
Régis Hanol b526cdc55c Revert "FEATURE: reject accounts created with an email address similar to a known spammer email"
This reverts commit 39be48a441.

Conflicts:
	spec/models/screened_email_spec.rb
2014-07-12 01:01:37 +02:00
Régis Hanol 39be48a441 FEATURE: reject accounts created with an email address similar to a known spammer email 2014-07-11 15:09:46 +02:00
Sam 833c50c460 FEATURE: Read Faq badge 2014-07-11 17:32:29 +10:00
Sam 89fc989adb FEATURE: First Quote badge 2014-07-11 14:17:43 +10:00
Neil Lalonde fd55a3fd66 FEATURE: add a welcome topic to the Lounge category. Copy needs to be improved. 2014-07-10 15:13:18 -04:00
Neil Lalonde c6a313d458 Seed categories with capitalized names 2014-07-10 11:28:49 -04:00
Sam c5d3db9148 FIX: there is no trust_level_5 2014-07-10 12:17:13 +10:00
Sam 928848c0a8 FEATURE: First Link badge 2014-07-10 12:02:16 +10:00
Sam e32e96dabb FEATURE: new badges
- Pay it forward renamed to first like
- First flag
- First share
2014-07-09 12:17:39 +10:00
Sam 81682b74b7 Feature: Paying it forward badge 2014-07-08 14:26:53 +10:00
Sam c839ee86fc FIX: fixture order 2014-07-08 07:17:44 +10:00
Sam 0f25bbeaf7 FEATURE: Editor badge 2014-07-07 17:55:40 +10:00
Sam 4a25c86d61 FIX: correct duplicate granting 2014-07-05 18:32:06 +10:00
Sam 9a9ad9bda8 FEATURE: Badge progress
- Refactor model so it stores backfill query
- Implement autobiographer
- Remove sample badge
- Correct featured badges to only include a badge once
2014-07-03 17:29:44 +10:00
Robin Ward e22688a204 FEATURE: Can upload images to categories 2014-06-30 14:14:00 -04:00
Andrew Bezzub 386d1e231a move profile_background from User to UserProfile 2014-06-26 12:30:07 -04:00
Sam 3c84876660 BUGFIX: Chinese search was broken
BUGFIX: User locale was used index data
BUGFIX: missing Norwegian fulltext config
FEATURE: store the text used to index stuff in fulltext (for diagnostics / in page search)
FEATURE: re-index posts when locale changes (in bg job)
FEATURE: allow reindexing by trucating post_search_data

Note: I removed japanese specific config cause it requires custom pg config,
  happy to add it once our base docker config ships with it
2014-06-24 17:11:13 +10:00
Robin Ward 1527aeeef6 FIX: The constraint on parent categories wasn't working properly. 2014-06-23 16:14:51 -04:00
Robin Ward 3811efa5e2 Record when a post was hidden 2014-06-20 15:03:23 -04:00
Vikhyat Korrapati 3ba65af19e Add like-based system badges. 2014-06-19 17:10:43 +05:30
Vikhyat Korrapati a68b47cb9f Add notification_id column to user_badges. 2014-06-19 16:56:19 +05:30
Vikhyat Korrapati e0fd1f6f5e Add ability to specify custom font awesome icon for badges. 2014-06-19 16:56:18 +05:30
Vikhyat Korrapati 7fa972676a Add post_id to user_badges table. 2014-06-19 16:56:18 +05:30
Régis Hanol 00117c18c3 FEATURE: dismissable banner topic 2014-06-18 20:05:19 +02:00
Sam dc0266cc22 FEATURE: correct muted category implementation
- Don't change tracking state on muted categories
- Exclude muted sub categories from parent
2014-06-18 11:23:31 +10:00
Neil Lalonde 82c88eec74 Add post_id index to topic_links 2014-06-17 17:30:22 -04:00
Neil Lalonde aa4a1fa39b Revert "Add index on topic_links post_id. Remove a redundant index." Doesn't always work. 2014-06-17 17:11:49 -04:00
Neil Lalonde 5f94c29ada Add index on topic_links post_id. Remove a redundant index. 2014-06-17 17:01:13 -04:00
Sam 62de1fc0fa BUGFIX: use trust_level_0 cause it is less than 15 chars 2014-06-17 18:13:07 +10:00
Sam 56dcd00570 BUGFIX: trust_level_0 group not including trust_level_1
BUGFIX: manual trust level change not adding user to groups
BUGFIX: system not in correct trust level groups
2014-06-17 10:52:02 +10:00
Andrew Bezzub 9ffd173873 move bio to UserProfile from User 2014-06-13 14:55:32 -04:00
Andrew Bezzub 7db31adf35 move website from User to UserProfile 2014-06-06 21:54:32 -07:00
Neil Lalonde 72abb6e274 Disable external auths by default. Don't change settings for existing sites. 2014-06-04 11:35:18 -04:00
Sam 95221ee9c1 rebake based on version, not date 2014-05-30 14:45:55 +10:00
Sam fa6f22dd39 Move letter avatars out of upload system
FIX: S3 issues around system avatars
FIX: reduced backup file size
2014-05-30 14:45:55 +10:00
Sam fe594f5d1e Merge pull request #2372 from vikhyat/badge-system
Multiple grant badges
2014-05-30 10:18:00 +10:00
Sam 5adc486cef BUGFIX: missing avatars in topic map
Cleanup uneeded column
2014-05-29 14:59:14 +10:00
Sam f6753d3d46 FEATURE: automatically rebake out-of-date posts 2014-05-28 12:30:57 +10:00
Sam 2791852bd8 FEATURE: ability to regenerate system avatars as needed
BUGFIX: made system letter avatar more thinner for less block look
2014-05-28 12:30:57 +10:00
Robin Ward 7c22d738b6 FEATURE: Add a location field to a user's profile 2014-05-27 13:54:04 -04:00
Sam Saffron 70ae998059 BUGFIX, selecting uploaded avatars incorrectly in some cases 2014-05-27 14:45:20 +10:00
Vikhyat Korrapati a79bf11edb Admin badge creation bug fixes. 2014-05-27 09:03:55 +05:30
Sam 504cfcff96 Fix specs for avatars
Implement avatar picker
Correct avatar related jobs
2014-05-27 10:08:03 +10:00
Sam 6c1c8be794 Work in progress, keeping avatars locally
This introduces a new model to store the avatars and 3 uploads per user (gravatar, system and custom)

user can then pick which they want.
2014-05-27 10:08:03 +10:00
Robin Ward 5284fb7cbc New Setting: Don't jump to new posts when replying 2014-05-26 16:39:03 -04:00
Robin Ward 7900c7bd2f Allow multiple subcategories with the same name 2014-05-26 15:33:51 -04:00
Neil Lalonde 77845ec114 FIX: don't enable new google auth setting on an existing site 2014-05-22 11:41:31 -04:00
Neil Lalonde 8f76b76cf3 FIX: new sites would get enable_google_logins true, should be false now 2014-05-21 19:40:59 -04:00
Neil Lalonde 742841ddce Add Google Oauth2 authenticator. The current Google OpenID authentication has been deprecated by Google and will NOT work for any new websites. 2014-05-21 18:35:10 -04:00
Vikhyat Korrapati d208e4d517 Multiple grant badges. 2014-05-21 12:54:55 +05:30
Neil Lalonde 27cbc06563 Add fixed_category_positions site setting to handle whether categories are ordered by specified positions or by activity. 2014-05-16 11:33:52 -04:00
Sam eff8c22638 There is this thing called SQL and it is about 1000x faster 2014-05-16 10:34:06 +10:00
Sam 5914d0e132 Merge pull request #2311 from vikhyat/badge-system
Add automatically assigned trust level badges
2014-05-16 09:08:00 +10:00
Sam 8bf19e244a Don't litter stuff with p statements 2014-05-15 12:19:53 +10:00
Vikhyat Korrapati b144b75565 Add automatically assigned trust level badges. 2014-05-14 20:47:21 +05:30
Neil Lalonde c4d3aa3d47 Theming: a UI to choose some base colors that are applied to all the site css. CSS compiled outside of asset pipeline. 2014-05-14 10:18:12 -04:00
Wojciech Zawistowski 960d64930c Wiki Post 2014-05-13 08:53:11 -04:00
Sam a619aa4bbb BUGFIX: initial migrate was broken cause bust schema was cached 2014-05-12 13:31:33 +10:00
Neil Lalonde 9f059b1090 User lowercase names for seeded categories. Change colors of meta category badge for new sites. 2014-05-09 12:57:19 -04:00
Sam 34d1668f9f FEATURE: backend for inviting a user to a group 2014-05-09 18:22:35 +10:00
Louis Rose 1574485443 Perform the where(...).first to find_by(...) refactoring.
This refactoring was automated using the command: bundle exec "ruby refactorings/where_dot_first_to_find_by/app.rb"
2014-05-06 14:41:59 +01:00
Régis Hanol c21d3f41d0 BUGFIX: only redirect new users to top page once
Actually, new users will still be redirected to the top page during the first 30 seconds of their first visit.
2014-05-05 19:00:40 +02:00
Neil Lalonde 93c3ec2a54 FIX: welcome topic needs to be pinned globally 2014-05-05 10:47:52 -04:00
Sam f6c22cc299 Merge pull request #2297 from ligthyear/custom-fields
Custom fields for Topic, Category, Post and Group
2014-04-30 13:15:50 +10:00
Neil Lalonde f61f29439e Track the ip address where user was registered 2014-04-29 14:37:56 -04:00
Benjamin Kampmann e502122c51 Add Custom Fields on Topics 2014-04-29 19:26:42 +02:00
Benjamin Kampmann 2450088c03 Add CustomFields to Post, Category and Group 2014-04-29 19:26:42 +02:00
Vikhyat Korrapati b4e037dfb2 Allow badges to be marked as "titleable". 2014-04-28 10:30:38 +05:30
Neil Lalonde feaaf55a0c Theming: color scheme editing. Unfinished! Doesn't have any effect on css files yet. 2014-04-24 16:49:12 -04:00
Robin Ward af877781b7 Allow admins to choose if groups are visible or not. 2014-04-22 16:43:46 -04:00
Sam a3b2b4baca FEATURE: custom fields on User 2014-04-22 13:52:13 +10:00
Sam 87f37b3ee9 Merge pull request #2271 from vikhyat/badge-system
Badge system updates
2014-04-17 16:22:41 +10:00
Vikhyat Korrapati b62606e7f1 Remove color_hexcode column from badge_types. 2014-04-17 05:36:29 +05:30
Jeff Atwood 3b02257edb better admin quick start guide 2014-04-16 00:13:52 -07:00
Sam 862a6696c0 Correct annotations
allow longer usernames (up to 60)
2014-04-15 15:53:48 +10:00
riking 9c4dd1cb35 Change comma-delim site settings to pipe-delim 2014-04-08 14:17:55 -07:00
Régis Hanol 11dcd2f6c5 BUGFIX: add default value to top_topics' scores 2014-04-08 17:35:28 +02:00
Robin Ward 7e3ea5d644 Support for crawling topic links 2014-04-07 14:08:34 -04:00
Sam 0372b81d11 FEATURE: allow moderators to globally pin topics 2014-04-07 16:38:51 +10:00
Robin Ward 079123f008 Allow the `content_sha1` column of `topic_embed` to be nullable 2014-04-02 16:18:51 -04:00
Sam c240fb0d83 BUGFIX: facebook does not always provide username
We key on facebook_user_id its the only thing that matters
2014-03-20 15:35:30 +11:00
Neil Lalonde 7780013c3a Seed categories in transactions 2014-03-19 12:00:13 -04:00
Neil Lalonde 3ea477b17d FIX: performance of CategoryDetailedSerializer and Category.update_stats on large databases 2014-03-19 10:14:15 -04:00
Sam 7460e5ed24 BUGFIX: dupe topic names could booby trap seeding 2014-03-19 09:30:17 +11:00
Neil Lalonde 0b1550f9d4 Add excerpt column to topics table to remove N+1 query in ListableTopicSerializer 2014-03-18 15:24:29 -04:00
Sam fe63db7953 Merge pull request #2115 from vikhyat/badge-system
Initial badge system implementation
2014-03-17 10:06:37 +11:00
Vikhyat Korrapati 9b26c8584e Initial badge system implementation. 2014-03-14 21:49:26 +05:30
Neil Lalonde 99285f73e7 FIX: don't try to create category description topic if it already exists 2014-03-14 10:26:17 -04:00
Sam b19400726f BUGFIX/FEATURE: store topic changes in post revisions
History + edit notifications for title and category changes
2014-03-07 19:00:36 +11:00
Régis Hanol bce4130d39 Merge pull request #2036 from ArmedGuy/profile-backgrounds
FEATURE: Profile Backgrounds
2014-03-05 16:00:49 +01:00
Johan Jatko 98c479c3c4 FEATURE: Profile Backgrounds
Shares a modified codebase with avatars called "user_image"
2014-03-05 15:10:44 +01:00
Stephen Birarda c3eb2025d8 add option to override user attributes from SSO payload
add an external_username attribute for username from SSO payload

repair the field name in SingleSignOnRecord migration

move setting of external_username for sso to controller

add settings toggle to override username/email from SSO payload

fix changing of external username after override toggle

complete tests and logic for sso override

add some extra context to username override option

add external_email and external_name to single sign on record

add setting for name override from SSO payload

complete override with stored external_email and external_name

add missing checks to tests

remove an unneeded describe block

break up a monster method for single sign on

fixes for sso attribute override after failed tests
2014-03-04 09:52:21 -08:00
Robin Ward 3abe84941f FEATURE: Add `new_since` column to `UserStat` so we can reset the "New"
date.
2014-03-03 15:47:00 -05:00
Sam 172e517b31 Merge pull request #2012 from ligthyear/incoming-emails
Advanced New-Topic via Email Feature
2014-03-03 10:58:10 +11:00
Neil Lalonde b40313559b FIX: moderators should not be able to see site setting changes in the staff action logs. Fixes #2027 2014-02-28 16:30:54 -05:00
Benjamin Kampmann d32cb55837 Add public-inbox to Email-In-Feature
- Adds the advanced option to accept email from non-users per category email-address
 - Adds tests covering the new feature
 - Adds UI to configure this feature in the frontend
2014-02-28 16:53:58 +01:00
Benjamin Kampmann 37cea49459 Add Email-In-Per-Category
- allow the configuration of an inbox-email-address per category
 - post emails to that email into that category instead of global

 - Adds UI for configuration
 - Adds Documentation for configuration
 - Adds Tests for new feature
2014-02-28 16:53:58 +01:00
Neil Lalonde ec7ef21403 Add a Staff category. Have a topic for assets in the Staff category. Move admin quick start guide to Staff category. Quick start guide is not invisible anymore. 2014-02-27 17:38:20 -05:00
Neil Lalonde fdcd3c20b6 Admin Quick Start Guide topic is visible only to staff in new sites 2014-02-25 10:35:37 -05:00
Sam 6f31d3f0e5 FEATURE: single sign on support
Added support for outsourcing auth to a different website, documentation on meta
2014-02-25 14:31:03 +11:00
Neil Lalonde 3690a24f7f FIX: welcome topic should be uncategorized 2014-02-24 14:27:29 -05:00
Neil Lalonde b696c96a19 Look at the age of a user's first post to determine if the user can be nuked, instead of looking at when the user registered. 2014-02-20 12:29:40 -05:00
Régis Hanol bc5168c3c7 BUGFIX: rename site_settings in the database too 2014-02-20 17:08:26 +01:00
Jonathan Allard c513725f26 Allow users to toggle interface language in their preferences 2014-02-18 14:53:59 -05:00
Stephan Kaag f12925887c Drop Rails3 support 2014-02-17 19:42:08 +01:00
Neil Lalonde 35dae76bbd Log when and why an email was not sent in email_logs 2014-02-14 13:06:39 -05:00
Sam 4ff6780758 Merge pull request #1935 from eriko/remove_cas
Remove cas
2014-02-13 17:26:20 +11:00
Neil Lalonde 6bbc3ec3e0 Add a way to flag a topic 2014-02-12 12:57:55 -05:00
Erik Ordway f1e8bdaee5 Remove cas auth from core and convert the settings over so they can be used by the plugin 2014-02-11 15:57:08 -08:00
Robin Ward b61df08d1b FEATURE: Admin selector to choose a primary group for a user, display it
and apply a CSS class to their posts.
2014-02-10 17:00:15 -05:00
Neil Lalonde 5f992ae34c Merge pull request #1913 from davidcelis/default-category-fields
Default values for posts/topics fields on Category
2014-02-07 11:27:57 -05:00
Sam 227873df78 FEATURE: proper mailing list mode
once enable_mailing_list_mode is enabled any user can elect
to get every post via email unless they opt out of category or topic
2014-02-07 11:07:52 +11:00
David Celis e751b8d58f Default values for posts/topics fields on Category
When creating categories (or, at least, subcategories), certain integer
values are set to a default of NULL: topics_week, topics_month,
topics_year, posts_week, posts_month, and posts_year. This causes
consistent exceptions when trying to visit `/categories`, with the
offending line being in
`CategoryDetailedSerializer#count_with_subcategories`. This attempts to
coerce nil into Fixnum.

A fix could be to convert to 0 in the code, but these attributes should
really never be NULL. If there are no posts or topics, they should be 0
to maintain data integrity.

Signed-off-by: David Celis <me@davidcel.is>
2014-02-06 12:04:03 -08:00
Sam 04f1a5c3f8 FEATURE: added welcome to discourse topic 2014-02-04 13:21:43 +11:00
Robin Ward 2892153712 REMOVE: Get rid of the `hotness` control for good. 2014-01-29 11:54:34 -05:00
Neil Lalonde 7cc5da08fe Track how many posts a user reads each day in user_visits 2014-01-27 11:20:19 -05:00
Neil Lalonde 714a40313d Don't seed a welcome topic on every db:migrate 2014-01-23 16:42:03 -05:00
Sam f59c223210 BUGFIX: not seeding welcome topic 2014-01-23 22:59:53 +11:00
Sam fc3bad8ff4 FEATURE: Seed a meta category, we want everyone to have it 2014-01-22 16:05:46 +11:00
Neil Lalonde da825451d0 Invite link can't be used to log in after you set a password or sign in with 3rd party 2014-01-21 16:56:41 -05:00
Régis Hanol 1fd71bb237 BUGFIX: make the system_user an elder (TL=4)
Otherwise it won't be able to create topic when the `min_trust_to_create_topic` is > 0
2014-01-21 15:21:38 +01:00
Neil Lalonde 0289053a70 Add the Lounge category, an exclusive area for trust level 3 users 2014-01-20 16:52:55 -05:00
Neil Lalonde 33c3e027b3 Revert "Add the Lounge category, an exclusive area for trust level 3 users" 2014-01-20 15:43:04 -05:00
Neil Lalonde 2d98720cc8 Add the Lounge category, an exclusive area for trust level 3 users 2014-01-20 15:06:20 -05:00
Robin Ward 4981525047 REFACTOR: Fixes poor class hierarchy for listing topics
- Upgrades Ember to latest
- Fixes a bunch of bugs with page titles and missing "active" states
2014-01-18 19:26:24 +01:00
Régis Hanol 3a6bffa05d FEATURE: better top pages 2014-01-14 01:09:12 +01:00
Sam 2b64118df1 Merge pull request #1782 from ligthyear/group-mention
Allow groups to be used as aliases for user mentions
2014-01-12 14:36:45 -08:00
Neil Lalonde 52580f09af Rename favorite to starred everywhere 2014-01-10 14:54:19 -05:00
Neil Lalonde e7975f25b8 Remove remaining code for two-column categories page 2014-01-07 18:13:49 -05:00
Benjamin Kampmann c743a985a4 Allow groups to be used as aliases for user mention
when configured by the admin a group can be found through the @mentions
feature in both the compose/reply and the private message user-selectors
and once selected the mention will be replaced by the list of users in
the group
2014-01-08 02:36:24 +11:00
Neil Lalonde a897c2b091 Add default_external_links_in_new_tab site setting 2014-01-02 15:27:37 -05:00
Sam b482b280d6 FEATURE: Basic backend support for muted and watched categories 2014-01-02 12:00:29 +11:00
Sam 3681f69085 BUGFIX: if users somehow deleted the uncategorized category, it is re-created 2014-01-02 11:08:23 +11:00
Robin Ward 4f8aed295a FEATURE: Embeddable Discourse comments, now with simple-rss instead of feedzirra 2013-12-31 15:01:22 -05:00
Robin Ward 62db063e1e Revert "Support for Embeddable Comments via IFRAME" - it depends on Curl
which not every server has. Have to rethink this.

This reverts commit e3e4c62887.
2013-12-31 12:52:31 -05:00
Robin Ward e3e4c62887 Support for Embeddable Comments via IFRAME 2013-12-31 12:26:24 -05:00
Sam db1d01d1a2 Discourse as a Mailing List improvements
FEATURE: context is not emailed if we previously emailed you the post
FEATURE: site setting to enable_watch_new_topics , false by default.
  When enables users can elect to watch everything by default
FIX: Custom email subjects (x quoted you in [title], x replied to [title])
  was removed, this broke email grouping. TBD, include info in footer somehow
FIX: topic user specs were messy, reduce side effects
2013-12-30 13:02:12 +11:00
Régis Hanol 9c8e50351d first stab at calculating the score of a topic for the top tab 2013-12-27 18:10:35 +01:00
Régis Hanol 567d2bd23c add top page 2013-12-24 00:50:36 +01:00
Neil Lalonde 341adc93a4 Allow categories with null position, which means sort them based on activity. Mix absolutely positioned (position is not null) categories with null position categories. 2013-12-16 15:13:57 -05:00
Sam 820e29e30e don't seed welcome topic in test db 2013-12-16 12:48:45 +11:00
Sam 8ad78dcce2 added quick start guide to seeds 2013-12-16 12:46:46 +11:00
Neil Lalonde 49c3482464 Show topic and post counts by day/week/month/year on categories page 2013-12-13 15:37:45 -05:00
Régis Hanol 06dd7ffe3c better revision history 2013-12-12 03:41:34 +01:00
Sam 003ac02a67 Disable ddl transactions for realz! 2013-12-11 11:52:55 +11:00
Neil Lalonde 5ed80561ee Add retry to migrate_word_counts 2013-12-10 18:10:52 -05:00
Robin Ward 8fd9776e43 Use COALESCE in case there are no posts in a topic 2013-12-10 17:27:01 -05:00
Robin Ward 6853f37bee Show estimated reading time near summarize button. 2013-12-10 13:47:36 -05:00
Neil Lalonde 9a24d2651d Allow category to auto-close topics in X hours instead of days. FIX: the system message that says a topic was automatically closed was only counting in days. 2013-12-06 16:39:35 -05:00
Sam 49b48e1eb6 ensure we have a bigint id 2013-11-22 17:51:36 +11:00
Sam adf355567c move emoji to correct location without a post rebake 2013-11-20 16:54:49 +11:00
Sam d4435ba2ac BUGFIX: lets not rename old migrations 2013-11-19 20:01:35 +11:00
Robin Ward 4ce81e1b01 Rename "Best Of" to "Summary" 2013-11-18 12:48:26 -05:00
Sam 6e1198334c automatic groups should be bootstrapped 2013-11-18 12:53:14 +11:00
Régis Hanol 482b752046 add edit reason when editing a post 2013-11-15 23:28:49 +01:00
Robin Ward 67041d1c6d Support for tracking the count of unique participants in a topic 2013-11-14 14:32:41 -05:00
Neil Lalonde 0c6f794eb0 Used the term suspended instead of banned. 2013-11-07 13:53:49 -05:00
Robin Ward 006e72ff5a Fix migration that does not contain position 2013-11-06 16:18:41 -05:00
Régis Hanol 37fd7ab574 pull hotlinked images 2013-11-05 19:07:29 +01:00
Sam a84997ebc7 rails4 magic sauce 2013-10-30 16:18:18 +11:00
Sam 270fde7dbd correct rake test:prepare so it seeds the db correctly
move category creation into seeds as well, so db can be seeded from structure.sql
2013-10-25 10:31:33 +11:00
Sam 666264879c change it so all topics MUST include a category, we store a special uncategorized category to compensate
this cleans up a bunch of internals and removes some settings
2013-10-24 12:08:02 +11:00
Robin Ward c814fc16a3 Database structure to support sub categories 2013-10-23 15:22:49 -04:00
Robin Ward 6394d924c8 Change migration to prevent down 2013-10-22 17:51:04 -04:00
Robin Ward 348e2e3ef2 Support for per-user API keys 2013-10-22 17:34:39 -04:00
Neil Lalonde 648b11a0eb Add screening by IP address. When deleting a user as a spammer, block all signups from the same IP address. 2013-10-21 14:50:18 -04:00
Erik Ordway fe0dc8161a Update 20131017014509_add_post_count_to_categories.rb
In case the category does not have any posts yet. You get a null value error running the migration if this is the case.
2013-10-21 09:28:35 -07:00
Sam 5f74cb6bf9 category is not "positionable" 2013-10-18 18:09:30 +11:00
Sam 1ee49798b2 work in progress wide category list 2013-10-18 11:10:10 +11:00
Sam 7bf96ee690 naive implementation of post_count on categories 2013-10-18 11:10:10 +11:00
Régis Hanol 265f5c827e another speedup for the BackfillPostUploadReverseIndex migration 2013-10-16 17:09:29 +02:00
James Edward Gray II 1aa9fc982d Adding post details in preparation for the API importer code. 2013-10-15 09:21:30 -05:00
Régis Hanol e2ae3f0b45 faster migration by avoiding to query the db for local thumbnails 2013-10-15 11:36:27 +02:00
Régis Hanol 4536b5fe04 added a job to clean up orphan uploads 2013-10-15 11:15:48 +02:00
Sam 094b5eccca bug fixes for user_stat extraction, decrease querying 2013-10-07 15:05:00 +11:00
Sam 5bf26ec34e large refactor, ship a few columns from the user table into user_stats 2013-10-07 15:04:59 +11:00
Sam 441010ac65 optimise view count calculation query 2013-10-02 17:08:53 +10:00
Sam f0a122a66c move job files so they live underneath app/ and not in lib/
introduce new setting email_always, that will force emails to send to users regardless of presence on site
2013-10-01 17:04:02 +10:00
Robin Ward 99b6a62fcb New composer message for people dominating a topic 2013-09-17 14:38:39 -04:00
Neil Lalonde 13f17b2a5c Add ability to customize css and header for mobile 2013-09-16 12:28:02 -04:00
Robin Ward 3fcd331d43 Add records that indicate a user's avatar has been checked 2013-09-12 14:58:20 -04:00
Robin Ward fcff4e80d1 New `user_stats` table to keep track of queried information on a user.
This is information that is not usually needed when representing a user
and is in a separate table with a has one relationship to avoid querying
it all the time.
2013-09-11 14:50:26 -04:00
Neil Lalonde e8ef55c446 Rename StaffActionLog to UserHistory 2013-09-10 22:01:20 -04:00
Sam 216ecaaffd add indexes to assit with front page 2013-09-10 14:29:21 +10:00
Régis Hanol 45b838009c proper content-disposition header when downloading attachments 2013-09-06 19:23:56 +02:00
Sam 568a9b1b06 better rename the old values otherwise, trouble 2013-09-06 18:17:46 +10:00
Sam 641c51367a fix broken build
hack to allow for PMs with no users for flagging needs
2013-09-06 18:03:30 +10:00
Sam 2ce4468aa5 rename system_username to site_contact_username , system_user is a special user with -1 id that is only used for certain admin tasks
for example system_user will autoclose stuff if needed, it will delete stubs and be the target for flag pms
2013-09-06 17:28:37 +10:00
Sam 41a1b6942d notify moderators now goes to the "community" user, that saves our poor mods from a flood of pms
if any staff respond to a pm they are automatically added to the list of recipients and will start
getting email notifications
2013-09-06 14:07:23 +10:00
Neil Lalonde d76486a48b Topic can have null user_id when user was nuked 2013-09-04 15:42:24 -04:00
Neil Lalonde 117fc8db58 Change the way nuked users' posts are handled. Allow null in the user_id column of posts. Show these posts in the posts stream. 2013-09-04 15:42:21 -04:00
Régis Hanol 86d2477f97 properly escape backslashes 2013-08-28 23:21:46 +02:00
Régis Hanol 027af77741 FIX: 404 on old thumbnails 2013-08-28 21:29:45 +02:00
Sam 818bf1355d PluginStore for plugin specific bits of storage
Amended plugin interfaces so they work with the vk sample
2013-08-26 12:59:17 +10:00
Neil Lalonde 6e79197519 Enum site settings can have translatable names in dropdown. Add setting for how often users get digest emails by default: default_digest_email_frequency. 2013-08-23 17:36:25 -04:00
Neil Lalonde 25e0c3eac1 Log IP addresses with screened emails and urls 2013-08-22 19:04:35 -04:00
Neil Lalonde 3abeb5f793 Staff action logs can be filtered to changes of one site setting 2013-08-20 13:50:51 -04:00
Neil Lalonde 1d030666d8 Log site setting changes and show in admin 2013-08-19 16:58:38 -04:00
Michael Kirk 4af8a9102e Authenticate with Discourse via OAuth2
See https://github.com/michaelkirk/discourse_oauth2_example for an
example of how you might integrate your existing oauth2 provider's
authentication via a Discourse plugin.
2013-08-17 21:45:20 -07:00
Neil Lalonde 86647f0a54 Add ScreenedUrl. Rename BlockedEmail to ScreenedEmail. 2013-08-14 16:08:23 -04:00
Régis Hanol c867b67a0b custom avatar support 2013-08-13 22:08:29 +02:00
Neil Lalonde bb492eb8bf Add filtering to staff logs page 2013-08-09 16:59:05 -04:00
Robin Ward 6452962f36 FIX: Notification counters were being updated incorrectly. 2013-08-09 12:12:56 -04:00
Neil Lalonde f6aa8476c8 Add index to blocked_emails for last_match_at 2013-08-07 16:27:35 -04:00
Robin Ward 05fc50006d Rename the PK index to support table rename 2013-08-01 11:58:12 -04:00
Robin Ward 4f0713b9da Merge pull request #1275 from ZogStriP/enable-thumbnailing-on-s3
Enable thumbnailing on s3
2013-08-01 07:35:35 -07:00
Régis Hanol ed9417fa3b enable thumbnailing on S3
- added url to optimized image model
- refactored s3_store & local_store
2013-07-31 23:26:34 +02:00
Neil Lalonde 27498a912b Add indexes to help IncomingLinksReport, but not much. Refactor to limit result set size, but it doesn't help perf much either. SELECT COUNT(DISTINCT ...) is still slow. 2013-07-31 15:17:53 -04:00
Neil Lalonde e076158789 Add ip_address, email, and context to staff_action_logs table. Context should usually be the url from which the staff member performed the action, but could be any string that describes what the staff member was doing when the action was performed. 2013-07-29 15:29:43 -04:00
Neil Lalonde 5f8a130277 Add BlockedEmail, to block signups based on email. Track stats of how many times each email address is blocked, and last time it was blocked. Move email validation out of User model and into EmailValidator. Signup form remembers which email addresses have failed and shows validation error on email field. 2013-07-29 15:29:43 -04:00
Neil Lalonde a8df9778b5 Rename AdminLog to StaffActionLog 2013-07-29 15:29:43 -04:00
Sam ecf17cfebb work in progress, add fidelity to category group permissions (full, create posts, readonly) 2013-07-16 15:46:11 +10:00
Stephan Kaag 6dc9d3c411 Add primary key `id` to `category_featured_topics` and `topic_users` 2013-07-12 19:01:37 +02:00
Neil Lalonde 8814f9ed05 Fix a case when a staff user views a topic with a deleted post by a nuked user; might be a temporary solution until we decide what to do with nuked records 2013-07-10 16:52:47 -04:00
Robin Ward b7327942af Add `deleted_by` to `Trashable` tables 2013-07-09 15:46:36 -04:00
Stephan Kaag 93cc6f63ae Update migrations to be compatible with Rails 4 2013-07-03 21:07:13 +02:00
Stephan Kaag 89b621d31a Refactor update_all statements in order to prevent deprecation warnings in Rails 4 2013-07-02 18:36:47 +02:00
Robin Ward 89f182899f Support for custom Privacy Policies 2013-06-26 10:59:36 -04:00
Neil Lalonde dea75870e1 Fix: don't enable login_required on sites that used to use an access_password 2013-06-26 10:31:10 -04:00
Sam 3af12ba7d3 Merge pull request #1088 from ComputerDruid/fix-ipv6
Fix ipv6 addresses in the database
2013-06-25 17:25:48 -07:00
Dan Johnson 9f6b7889a8 views: convert 'ip' (bigint) -> 'ip_address' (inet)
This fixes all known issues when connecting to discourse over IPv6.

This table has no primary key, so the migration is done with update_all,
for each ip address in the views table. Since this table can potentially
grow quite large, this process might take a long time. I don't know any
way around this, though.

This migration uses a SQL command to populate the new field from the old
one, so as not to rely on the View model class, which should keep the
migration from failing if that class is modified in the future.
2013-06-25 19:47:25 -04:00
Dan Johnson 2e478d8537 TopicLinkClick: convert 'ip' (bigint) -> 'ip_address' (inet)
When accessed over IPv6, the ip address of the user is a 128-bit number,
too big for PostgreSQL's bigint data type. Since PostgresSQL has the
built-in inet type, which handles both IPv4 and IPv6 addresses, we
should use that instead. Where this is done elsewhere in the codebase,
the column is called ip_address, so we should follow that convention as
well.

This migration uses a SQL command to populate the new field from the old
one, so as not to rely on the TopicLinkClick model class, which should
keep the migration from failing if that class is modified in the future.
2013-06-25 19:41:19 -04:00
Neil Lalonde b2d300fe0b Add ability to give users a title. Show them under usernames beside posts. Needs love from a designer. 2013-06-25 18:39:20 -04:00
Neil Lalonde a86b35c873 Remove the access_password site setting 2013-06-25 15:05:25 -04:00
Régis Hanol 08aa23f0ca FIX: lightbox wasn't working when using s3 upload 2013-06-22 13:38:42 +02:00
Amos L King 777e8c2012 Correct spelling of suppress
supress => suppress

Amos King @adkron <amos.l.king@gmail.com>
2013-06-20 23:44:27 -05:00
Sam 4a8a663a67 flagging workflow changes per http://meta.discourse.org/t/we-need-an-archive-flag-notification-button/7450 2013-06-20 17:42:15 +10:00
Sam 6989851cd4 Merge pull request #1038 from ZogStriP/keep-uploads-reverse-index-up-to-date
Keep uploads reverse index up to date
2013-06-18 00:43:31 -07:00
Sam 7abb20928b Merge pull request #1033 from chrishunt/move-dynamic-favicon-to-user
Move 'dynamic favicon' setting to User preference
2013-06-17 17:31:02 -07:00
Robin Ward 8acdc18bc8 First stab at polling support for POP3S / reply by email 2013-06-17 16:49:02 -04:00
Régis Hanol ae3543872c renamed the `sha` column to the proper `sha1` 2013-06-17 22:16:14 +02:00
Régis Hanol af45b5a11e proper column naming
silly schemaless database habits are hard to kill
2013-06-17 04:02:17 +02:00
Régis Hanol cc9e0ec80a create thumbnails when needed 2013-06-17 02:49:34 +02:00
Régis Hanol 5de03814fb created `optimized_image` model 2013-06-17 02:49:34 +02:00
Régis Hanol 6c4554b941 identifies all uploads with the SHA1 hash of the file content 2013-06-17 02:49:33 +02:00
Régis Hanol 6ea91b4416 remove useless upload topic direct association 2013-06-17 02:49:33 +02:00
Chris Hunt 3a02012dc5 Add 'dynamic favicon' to User 2013-06-14 23:56:21 -07:00
Régis Hanol 037f62928b add proper post_uploads reverse index 2013-06-13 23:44:24 +02:00
Robin Ward bd1b4d3130 Include a custom reply address when reply by email is enabled. 2013-06-13 17:00:00 -04:00
Robin Ward e29f4a3496 Work in Progress: Reply By Email:
- Add support classes and settings to enable reply by email
- Split out Email builder to be more OO, add many specs
2013-06-13 12:39:56 -04:00
Régis Hanol 770c1faeb1 added a reverse index of user uploads + rake task 2013-06-13 01:43:50 +02:00
Neil Lalonde a151bfc7ec Store when a topic was first set to auto-close and report that amount of time when it closes. And do some refactoring. 2013-06-06 17:04:21 -04:00
Neil Lalonde c4904aacc0 Automatically flag someone as a spammer if their posts get at least X spam flags from N users while their trust level is 'new user'. Staff can clear and set this status from the user record in admin. 2013-06-03 16:37:40 -04:00
Robin Ward 545dbfc07e New Feature: Staff can choose to "Take Action" when flagging to immediately reach hiding
thresholds.
2013-05-31 17:39:32 -04:00
Sam 46389754d6 Merge pull request #892 from eriko/cas_support
Cas support
2013-05-28 16:13:29 -07:00
Robin Ward 560fb15d8a Include pinned topics in category list.
- removes an (n+1) query for user data
- supports the preload store for the data to avoid a second request
- fix a bug where uncategorizes was reporting (0, 0, 0) for topics by week, month, year
2013-05-28 15:36:16 -04:00
Robin Ward 197909246c Weigh staff likes higher when calculating scores. New site setting: `staff_like_weight`
can set the factor (default is 3)
2013-05-27 12:46:08 -04:00
Erik Ordway 1575ce7b10 add cas support with a few tests 2013-05-23 13:40:50 -07:00
Robin Ward 7a31630837 Search Refactor: Remove some manual SQL, make search data tables more idomatic Rails/AR 2013-05-22 16:31:13 -04:00
Neil Lalonde f3282e33a3 Add tabs to category create/edit modal. Categories can have a default auto-close setting that applies to all new topics created in the category. Add rspec-given and write some integration tests. Tests for topic auto-close with category default 2013-05-17 11:05:35 -04:00
Neil Lalonde 9828c87525 Topic Auto-Close: admins and mods can set a topic to automatically close after a number of days 2013-05-13 12:53:52 -04:00
Sam 5280b3a01b more group progress, UI getting there, controller mostly done
changed it so notify moderators goes to the moderators group
allow admins to grant self moderation and revoke self moderation
2013-05-09 17:37:34 +10:00
Sam 6b536dcde5 work in progress ... groups 2013-05-08 15:20:38 +10:00
Robin Ward bd99d5a40c Calls to Discourse.ajax no longer need `getURL` -- will be done automatically. 2013-05-07 15:16:27 -04:00
Sam be1ab8b275 automatic group infrustructure 2013-05-06 14:49:56 +10:00
Sam 65cd00cf25 moderators now have teeth, more at http://meta.discourse.org/t/moderator-permission-set/6307/5
allow pms to be targetted at groups
2013-05-02 15:15:53 +10:00
Sam b7aacfe86a topic allowed groups for pms 2013-04-30 16:30:41 +10:00
Neil Lalonde dc07563c0d Add unstarred_at column to topic_users so we can permanently track when topics are starred 2013-04-29 11:39:05 -04:00
Sam 5cfcdc7ef0 backend for secure categories mostly done (todo pm groups) 2013-04-29 16:33:43 +10:00
Sam f9e33ec6b8 store ip address and current user with incoming links
make links long an readable in share dialog
2013-04-26 16:18:55 +10:00
Sam 37867af1bb track incoming links, amend share link to include user
fix pm styling
2013-04-24 18:05:35 +10:00
Sam aa6485639b slug column for topics, for the performance 2013-04-24 12:02:36 +10:00
Sam cfc62dadff speed up tests
add the ability to find the first notify private message
2013-04-22 17:45:03 +10:00
Neil Lalonde d052026c51 Make data column of notifications table big enough for long titles 2013-04-19 16:08:56 -04:00
Sam 4cea92c4e9 work in progress add support for groups 2013-04-19 10:34:39 +10:00
Neil Lalonde 3b6aeb14c7 Add subtype to topics to classify private messages 2013-04-16 16:56:18 -04:00
Neil Lalonde 651cfba93f Add ability to destroy a user with 0 posts 2013-04-12 16:53:00 -04:00
Sam e969eb14e8 added 2 new flag types: notify user and notify moderators
fixed up messed up user navigation
refactored
2013-04-12 17:55:45 +10:00
Sam 3d3b589b4d for now, run seed fu automatically after migrate ... still think there should be a cleaner way 2013-04-08 09:56:42 +10:00
Sam 4fbf017272 get regular trust level going, self heal inconsistent topic timings 2013-04-05 15:30:28 +11:00
Robin Ward fa1ba6791b Work in Progress: Content Editing in Admin Section 2013-04-04 17:26:22 -04:00
Robin Ward ee76f1926d Debugging Tool for Hot Topics 2013-04-02 18:00:53 -04:00
Robin Ward 473a64d39d Add score, percent_rank to topics. Adds `HotTopic` model and consolidated job to calculate
hotness. Note: People on Heroku will have to update their jobs to the new structure
in Heroku.md
2013-03-28 15:39:54 -04:00
Robin Ward 36269cfbaa Rename 'popular' to 'latest'. First stab at 'Hot' tab. 2013-03-27 16:21:23 -04:00
Robin Ward af7f6fea28 Can set the `hotness` of a category. For the soon to be implemented "hotness" tab. 2013-03-26 18:08:58 -04:00
Karan Misra 5dfb04e4b3 Convert a lot of :a => b to a: b and bring peace to the world 2013-03-25 05:07:36 +05:30
Robin Ward 9c38c13ac5 The "Best Of" mode uses a percentage ranking of posts. 2013-03-22 15:44:39 -04:00
Robin Ward babcfe6234 Cache oneboxes in Redis now instead of postgres. 2013-03-21 13:11:54 -04:00
Sam f3f751ddd2 symbols should really never be allowed in migrations, just raw sql 2013-03-19 21:31:35 -07:00
Sam 62c60540be pull moderator into own column, rename trust levels 2013-03-19 21:06:11 -07:00
Sam 204759a3ea add indexes so counting topics and posts is faster 2013-03-19 18:30:02 -07:00
Sam 2a047df4f1 cache reply_to_user_id in post to eliminate a very nasty n+1 query 2013-03-19 16:54:23 -07:00
Robin Ward 76d8df6ac6 Merge pull request #462 from kubabrecka/colorpicker3
implement color picking from predefined set for category badges + option to change foreground color
2013-03-15 13:43:59 -07:00
Robin Ward ad082cea70 Big commit:
- Support for a popup that shows similar topics
- Cleaned up a lot of Javascript
- Cleaned up use of Promises
2013-03-15 14:35:33 -04:00
Robin Ward 2c8afca855 Let's ignore `structure.sql` - it doesn't seem necessary and just causes merge
conflicts.
2013-03-14 11:15:09 -04:00
nsahler d398d13aed - Mobile Reply-as-new fix
- Documentation
2013-03-14 11:02:13 -04:00
Kuba Brecka 8784c55188 implement color picking from predefined set for category badges + option to change foreground color 2013-03-14 14:16:57 +01:00
Sam 38f185355d added options to disable quoting and open links in new tabs
fixed a some regressions
removed some dead code
fixed messages about constants being re-defined
2013-03-12 20:06:58 -07:00
Robin Ward 1b808a54a4 Remove duplicate Spam flag type 2013-03-11 14:18:37 -04:00
Robin Ward f8d8272406 Cleaned up TopicUserSpec, introduces clearing of pinned topics 2013-03-07 12:19:25 -05:00
Sam Saffron 208575f93d this is weird, schema backup should not be in structure.sql sequences starting with 2 should not be in there as well 2013-03-06 23:13:46 +11:00
Gosha Arinich 0c99dea153 introduce Enum 2013-03-01 21:16:36 +03:00
Gosha Arinich d2f3c829db refactor User and TrustLevel a bit
* rename `User#password_required` to `User#password_required!`
* emails with "i" @ something are a special case as well
* get rid of `self.` and returns where possible
* prefer "unless a" instead of "if !a"
* `unread_notifications` without manually iterating
* introduce `User#moderator?`
* introduce `TrustLevel#valid_key?`, `TrustLevel#compare`, and
  `TrustLevel#level_key`
2013-02-28 19:15:54 +03:00
Robin Ward 007118b00c Merge branch 'github-auth' of git://github.com/nverba/discourse
Conflicts:
	config/locales/server.en.yml
	db/structure.sql
	spec/views/omniauth_callbacks/complete.html.erb_spec.rb
2013-02-27 12:09:22 -05:00
nverba b45f872c04 Added Github authentication option, disabled by default with enable options in settings. 2013-02-26 05:00:21 +00:00
Gosha Arinich cafc75b238 remove trailing whitespaces ❤️ 2013-02-26 07:31:35 +03:00
Sam Saffron 82e2fae1b8 isolate notifications in channel per user 2013-02-24 10:24:06 +11:00
Robin Ward 2d5cddc1b4 Fix broken migration. OOPS 2013-02-22 14:12:31 -05:00
Robin Ward 532b1f5450 Can edit category descriptions, they show up in a `title` attribute 2013-02-22 13:43:47 -05:00
Robin Ward 26e1cfd12c `rake jshint` works 2013-02-20 19:09:27 -05:00
Sam Saffron 0c085059c9 added sane sanitizer (Google Cajole) that is much more robust than old one ... yay for smilies
added sane way to do $LAB includes - pattern to be expanded
people keep on messing structure.sql
2013-02-20 16:11:56 +11:00
Robin Ward 836c3a7379 Support for Fancy topic titles 2013-02-19 16:14:04 -05:00
Sam Saffron 87d83802b9 added option that allows users to decide when they consider topics new (default 2 days old or newer)
added site_setting to control the default new_topic_duration_minutes
added 10 minutes option for auto_track_topics_after_msecs, default bumped up to 5 mins
2013-02-14 17:36:14 +11:00
Sam Saffron 161420fac0 Added method for testing ember stuff
Collapse user actions in UI so it stops looking crazy
Removed dud dupe user action TOPIC_RESPONSE
Always show the owner of a post on the user page, actions by others at the bottom
2013-02-13 20:38:43 +11:00
Robin Ward 3875806315 Introduction of Chef to Vagrant. Removed redis.yml and database.yml. Also updated
instructions a lot, and included setup instructions for provisioning your own VM.

Closes #28 and #61.
2013-02-12 11:18:59 -05:00
Sam Saffron 818b84f02c we are using structure.sql having this around only causes confusion 2013-02-12 15:17:33 +11:00
Robin Ward 25e9cfe3b8 Remove the distinction between "x replies below" and "x replies" 2013-02-08 17:10:18 -05:00
Sam Saffron 457229b133 Revert "Revert "structure.db to my structure""
This reverts commit 7c61c3d699.
2013-02-08 22:03:25 +11:00
Sam Saffron 7c61c3d699 Revert "structure.db to my structure"
This reverts commit 616a1f4906.
2013-02-08 21:57:16 +11:00
Sam Saffron 616a1f4906 structure.db to my structure
tone down watch for restart
2013-02-08 21:09:46 +11:00
Robin Ward 084a873b91 Give regular users a delete button. If they click it, their post will be revised to
say it was deleted.
2013-02-07 15:14:23 -05:00
Robin Ward 66a9b97b65 Oops, slim is required for sidekiq's web interface. 2013-02-07 11:32:23 -05:00
Sam 54260fd766 Merge pull request #45 from choppen5/fix_migration_hstore
initial rake db:migrate was failing if hstore was already set
2013-02-06 17:34:02 -08:00
Sam Saffron f79f0e740a Don't allow users to double flag stuff
Correct seed fu to match model
2013-02-07 10:45:58 +11:00
Charles Oppenheimer c18a23f63c Fixed typo in EXISTS sql 2013-02-06 13:37:38 -08:00
Charles Oppenheimer 9f1c978f11 initial rake db:migrate was failing if hstore was already set 2013-02-06 11:47:39 -08:00
Sam Saffron a7f35df9f6 structure.sql should match mine 2013-02-06 17:26:12 +11:00
Chris Schetter 32ff6c264a Working out outdated migrations
Several migrations were failing when running db:migrate at the initial release version from an empty database.
These changes took out statements that were causing migrations to fail, usually because of references to models that no longer exist.
2013-02-05 21:33:26 -08:00
Andy 66022f9faa Updated email hash to Gravatar specifications
Gravatar email hashes have two requirements:
* Whitespace must be trimmed
* Email should be downcased
2013-02-05 21:16:15 -07:00
Sam Saffron 3fd019c6bd fix firefox focus bug on flagging dialog 2013-02-06 11:47:08 +11:00
Robin Ward 21b5628528 Initial release of Discourse 2013-02-05 14:16:51 -05:00