Jakub Macina
f0a674d620
Add extraction of upload extension. Add rspec test for search of post
...
with upload by extension.
2017-07-06 19:16:07 +02:00
Joffrey JAFFEUX
6fd44b1efd
FIX: s/google_blob/google_classic
2017-07-06 09:05:15 +02:00
Robin Ward
754c1e5438
Upgrade to Babel 6
2017-07-05 15:25:23 -04:00
Neil Lalonde
fcb2f68565
FIX: duplicate topics and posts in summary email because user has muted tags and topics contain multiple tags
2017-07-04 16:12:10 -04:00
Neil Lalonde
3964929c75
FIX: summary email excludes all untagged topics if user has muted some tags
2017-07-04 12:52:25 -04:00
Joffrey JAFFEUX
a71c75367e
FEATURE: emoji generation now use emoji-db
...
- unicode 10
- emoji 5.0
- support for google_blob and facebook_messenger sets
2017-07-04 14:08:47 +02: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
Sam
c79418d334
DEV: Move RTL into lib where it belongs
2017-07-03 15:26:57 -04:00
Arpit Jalan
984778d3ac
FIX: handle moving first post to a closed/archived topic
2017-07-03 21:21:20 +05:30
Arpit Jalan
d3ee5752b8
remove unneeded condition from invite model
2017-07-01 21:50:34 +05:30
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
Arpit Jalan
e7b9b1312e
FEATURE: remove all invites
...
https://meta.discourse.org/t/remove-all-invitations-button-for-the-admin-panel/65207
2017-06-29 22:30:10 +05:30
Guo Xiang Tan
5e156fbe85
FIX: Group.search
should look up Group#full_name
too.
...
https://meta.discourse.org/t/mentioning-group-by-full-name-doesnt-work/63437/3
2017-06-29 16:37:59 +09:00
Régis Hanol
aa69f78fed
let's not use progressing rendering on images
2017-06-26 23:19:48 +02:00
Neil Lalonde
69b2d64334
FIX: letter avatars in quotes on subfolders installs are broken
2017-06-23 17:12:13 -04:00
Régis Hanol
6e5c59e5ec
FIX: image orientation wasn't properly working
2017-06-22 16:53:49 +02:00
Régis Hanol
a916f6b0c8
remove some warnings with already declared constants
2017-06-22 12:55:58 +02:00
Guo Xiang Tan
80e348d226
PERF: Speed up slow tests in our test suite.
...
Before
```
Finished in 7 minutes 23 seconds (files took 4.15 seconds to load)
7145 examples, 0 failures, 10 pending
```
After
```
Finished in 6 minutes 12 seconds (files took 4.41 seconds to load)
7145 examples, 0 failures, 10 pending
```
2017-06-22 11:23:31 +09:00
Guo Xiang Tan
4c98bd9d5f
FIX: Can't update status_type of topic timers.
...
https://meta.discourse.org/t/topic-timers-internal-error-500/64805
2017-06-21 15:31:15 +09:00
Guo Xiang Tan
dd85c1098b
Remove comment that is no longer valid.
2017-06-21 14:10:30 +09:00
Guo Xiang Tan
fa35137d3a
PERF: Reduce allocations in Emoji.unicode_replacements
.
...
```
MemoryProfiler.report { Emoji.unicode_replacements }.pretty_print
```
Before:
```
Total allocated: 2032131 bytes (30219 objects)
Total retained: 798059 bytes (10734 objects)
allocated memory by gem
-----------------------------------
1270762 discourse/app
690149 2.4.1/lib
48764 activesupport-4.2.8
11405 bootsnap-1.0.0
5266 logster-1.2.7
2473 hiredis-0.6.1
2056 redis-3.3.3
840 discourse/lib
240 activerecord-4.2.8
176 thread_safe-0.3.6
```
After:
```
Total allocated: 1715713 bytes (22449 objects)
Total retained: 797985 bytes (10737 objects)
allocated memory by gem
-----------------------------------
957250 discourse/app
690028 2.4.1/lib
48764 activesupport-4.2.8
11445 bootsnap-1.0.0
2745 hiredis-0.6.1
2624 redis-3.3.3
1473 logster-1.2.7
928 discourse/lib
280 activerecord-4.2.8
176 thread_safe-0.3.6
```
2017-06-20 13:50:37 +09:00
Guo Xiang Tan
40ef5c4f14
PERF: Reduce memory allocation by Emoji.unicode_replacements
.
...
Calling `Emoji.tonable_emojis` fetches from the cache but creates
a giant array each time it is called.
```
MemoryProfiler.report { Emoji.unicode_replacements }.pretty_print
```
Before:
```
Total allocated: 16560770 bytes (246364 objects)
Total retained: 784793 bytes (10624 objects)
allocated memory by gem
-----------------------------------
10224581 activesupport-4.2.8
3504241 hiredis-0.6.1
1449466 discourse/app
679314 2.4.1/lib
419592 discourse/lib
226720 redis-3.3.3
56680 activerecord-4.2.8
176 thread_safe-0.3.6
```
After:
```
Total allocated: 2127703 bytes (30556 objects)
Total retained: 798099 bytes (10735 objects)
allocated memory by gem
-----------------------------------
1270762 discourse/app
690149 2.4.1/lib
106977 bootsnap-1.0.0
48764 activesupport-4.2.8
5266 logster-1.2.7
2473 hiredis-0.6.1
2056 redis-3.3.3
840 discourse/lib
240 activerecord-4.2.8
176 thread_safe-0.3.6
```
2017-06-20 13:10:44 +09:00
Jakub Macina
eaf46431d4
Add extraction of file extension in TopicLink and related rspec tests.
2017-06-19 17:09:54 +02:00
Guo Xiang Tan
b5ec241716
FIX: Validate interpolation keys used in translation overrides.
...
https://meta.discourse.org/t/discobot-translation-missing-error/64429/6?u=tgxworld
2017-06-16 08:54:48 +09:00
Régis Hanol
d6c63cc5b2
FIX: user's default group should only be set once
...
Setting a user's default groups based on their email address should only be done once, ie. when they confirm their email address.
Previously we were doing this everytime we'd save a user record 🤷
2017-06-14 19:20:18 +02:00
Régis Hanol
f77e6c8fc6
Merge pull request #4928 from jjaffeux/transform-native-emojis-to-names
...
Transforms native emojis to valid names
2017-06-14 15:43:09 +02:00
Joffrey JAFFEUX
ab6086bce9
Transforms native skin toned emojis to valid names
2017-06-14 15:35:37 +02:00
Régis Hanol
04e175bc06
Merge pull request #4925 from jjaffeux/adds-tones-to-clear-cache
...
Makes sure we clear tonable_emojis cache
2017-06-14 14:56:41 +02:00
Joffrey JAFFEUX
fa508042ff
Makes sure we clear tonable_emojis cache
2017-06-14 11:11:02 +02:00
Guo Xiang Tan
2fdf9068eb
FIX: Create notification for group users when group has been invited.
...
https://meta.discourse.org/t/inviting-a-group-to-a-message-does-not-trigger-a-notification-mail/50509
2017-06-14 14:53:49 +09:00
Joffrey JAFFEUX
299339a373
Fixes emoji name to code missing tones
2017-06-13 14:10:26 -04:00
Sam
826f332766
Merge pull request #4901 from jjaffeux/emoji-5.0
...
Emoji next
2017-06-13 11:12:41 -04:00
Régis Hanol
54e8fb0d89
FEATURE: new 'allow_staff_to_upload_any_file_in_pm' site setting
2017-06-12 22:41:29 +02:00
Arpit Jalan
b9c94aa234
FEATURE: add required user fields to invite accept form
...
UX: make "accept invitation" page consistent with sign up modal
2017-06-12 20:43:07 +05:30
Guo Xiang Tan
e888369f51
UX: Don't send emails for discobot notifications.
2017-06-12 17:00:27 +09:00
Régis Hanol
038454bde2
FIX: always confirm emails when SSO says so
2017-06-08 01:05:33 +02:00
Guo Xiang Tan
5794ff53a1
FIX: Copy custom fields when moving first post of a topic.
...
https://meta.discourse.org/t/transfer-poll-votes-when-moving-a-topic-into-an-existing-one/63678
2017-06-07 19:04:48 +09:00
Joffrey JAFFEUX
2aae6cfdbe
look for aliases in Emoji.lookup_unicode
2017-06-05 18:53:11 +02:00
Joffrey JAFFEUX
64336a8c75
Emoji 5.0 support
2017-06-05 14:06:23 +02: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
Guo Xiang Tan
af3dc4e537
FIX: Publish group's categories to user when adding user to group.
...
https://meta.discourse.org/t/joining-a-group-doesnt-take-effect-unless-the-browser-is-hard-refreshed/57357/11?u=tgxworld
2017-06-02 17:38:14 +09:00
Sam
a7fc93acac
FIX: post mover not clearing reply_to_user_id
2017-06-01 18:00:14 -04:00
Guo Xiang Tan
2ee144c27f
FEATURE: Add DiscourseEvent trigger when a user logs in.
...
* Also adds a event trigger when user logs in for the first time.
2017-06-01 17:44:49 +09:00
Guo Xiang Tan
b0dd05fdc6
FIX: Inherit topic auto close when changing topic's category.
2017-05-31 17:40:21 +09:00
Sam
aa24bcbcc9
correct annotation
2017-05-26 09:04:54 -04:00
Sam
0aed2533ac
Revert unread optimisation, has too many edge cases
2017-05-26 09:04:13 -04:00
Guo Xiang Tan
e57d2f5cb8
FIX: Don't do anything if avatar url returns an invalid status code.
2017-05-26 13:02:40 +08: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
Robin Ward
39e1948174
FIX: If the error is 401 unauthorized or such, just do nothing
2017-05-25 15:42:05 -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
Robin Ward
0a08c18a14
FIX: Don't rate limit gravatar downloads
2017-05-24 13:54:26 -04:00
Robin Ward
cdbe027c1c
Refactor FileHelper
to use keyword arguments.
2017-05-24 13:54:26 -04:00
Robin Ward
87ac758f05
FIX: Don't raise an error when the upload can't be retrieved
2017-05-24 13:54:26 -04:00
Guo Xiang Tan
08c36fa968
REFACTOR: Clean up some code associated with topic timers.
2017-05-22 18:10:29 +08:00
Guo Xiang Tan
604aaf8686
FIX: N+1 query in suggested topics list.
2017-05-22 18:05:38 +08:00
Robin Ward
ed4b2b6d8d
FIX: Don't incluide a trailing <br>
in the bio excerpt
2017-05-18 16:40:07 -04:00
Régis Hanol
13e489b4ca
replace the upload type whitelist with a sanitizer
2017-05-18 12:13:13 +02:00
Arpit Jalan
8e5b0c79ae
FIX: allow images to be uploaded in wizard
2017-05-18 13:53:23 +05:30
Robin Ward
f8c503186e
FIX: If there's an error downloading, don't raise it
2017-05-17 12:38:18 -04:00
Sam
763f156d91
FIX: require re-activation if SSO changes email and updates it
2017-05-16 16:18:18 -04:00
Sam
4424fd81b8
add a tiny bit of extra protection
2017-05-16 16:08:42 -04:00
Sam
4b449914b8
FIX: admins could never remove self from messages
2017-05-16 16:06:24 -04: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
Sam
44d7fe89ed
FIX: unescape emoji in pretty title
...
This makes emoji in title consistent, it is later escaped back when needed
2017-05-15 10:28:05 -04:00
Sam
baf011cbf6
annotate models
2017-05-12 14:47:08 -04:00
Sam
e232f87cde
PERF: avoid query as admin
...
As admin no need to query categories over and over
2017-05-12 11:09:41 -04:00
Guo Xiang Tan
8eecd42856
FIX: Delete topic timer after completion.
2017-05-12 10:28:51 +08:00
Neil Lalonde
55b61e9bea
rename topic_status_update to topic_timer
2017-05-11 18:27:53 -04:00
Sam
52ae63d5d7
FIX: when searching PMs also search group PMs
...
Users belonging to a group could not search for PMs unless explicitly added
to the PM unless admin
2017-05-11 15:59:03 -04:00
Pat David
4bf8548dc5
Add embed class name setup for embeddable hosts
2017-05-11 15:16:16 -04:00
Neil Lalonde
1019bbda46
FEATURE: set a timer to delete a topic
2017-05-11 12:52:29 -04:00
Arpit Jalan
8c337ecf82
FIX: allow uploading of category logo and background
2017-05-11 12:48:54 +05:30
Régis Hanol
214939bb87
freeze array constants
2017-05-11 09:08:59 +02:00
Régis Hanol
9641d2413d
REFACTOR: upload workflow creation into UploadCreator
...
- Automatically convert large-ish PNG/BMP to JPEG
- Updated fast_image to latest version
2017-05-11 00:16:57 +02:00
Sam
bc0b9af576
FEATURE: support uploads for themes
...
This allows themes to bundle various assets
2017-05-10 15:47:11 -04:00
Sam
f709899a1d
Allow theme field object model to support uploads
2017-05-10 15:46:42 -04:00
Robin Ward
4db76796b9
FEATURE: Setting to poll feeds more frequently
2017-05-10 14:30:12 -04:00
Guo Xiang Tan
41fb76cc66
Don't rescue all errors.
2017-05-10 09:12:44 +08:00
Robin Ward
24e1892d28
Silence logs for OptimizedImage failures
2017-05-09 14:59:46 -04:00
Robin Ward
da92f35e08
Don't log a gravatar failure that is a socket error
2017-05-09 14:44:53 -04:00
Robin Ward
bcf1a9d43f
We don't need to log when we can't download a Gravatar
2017-05-09 14:43:39 -04:00
Robin Ward
96c59c5b82
FIX: Don't notify or return flags on system users
2017-05-08 13:13:35 -04:00
Sam
257c0dea70
Merge pull request #4852 from tgxworld/pull_the_plug_on_daily_mailing_list
...
Remove daily mailing mode option as it doesn't scale.
2017-05-08 09:10:46 -04:00
Régis Hanol
8bc47d0bae
fix build (cc @tgxworld)
2017-05-05 13:13:49 +02:00
Guo Xiang Tan
e61959e6a8
FIX: CustomEmoji
may contain an invalid upload_id.
...
https://meta.discourse.org/t/white-screen-after-deleting-custom-emoji/61608
2017-05-05 14:53:38 +08:00
Guo Xiang Tan
2b21e5ea7e
UX: Display translated group name for automatic groups.
2017-05-05 14:34:47 +08: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
4ebbad991e
FIX: properly clean up related color schemes on delete
2017-05-04 14:03:17 -04:00
Robin Ward
55ca5df96b
FIX: If the host can't be extracted don't raise an error
2017-05-04 13:26:37 -04:00
Neil Lalonde
389a0e1a1c
FIX: emails should use default theme colors
2017-05-03 14:35:13 -04:00
Sam
342ef5f81a
FEATURE: out-of-the-box dark/light user selectable themes
2017-05-03 11:31:33 -04:00
Arpit Jalan
86f1cc8c92
FIX: don't apply max_emails_per_day_per_user on critical emails
2017-05-03 17:07:39 +05:30
Guo Xiang Tan
982e3d04f6
PERF: Allow memory to be freed instead of fetching all the objects into memory at once.
...
```
MemoryProfiler.report do
Jobs::UserEmail.new.execute(type: :mailing_list, user_id: user.id)
end.pretty_print
```
Before:
```
Total allocated: 180096119 bytes (1962025 objects)
Total retained: 2194 bytes (16 objects)
allocated memory by gem
-----------------------------------
66979096 activerecord-4.2.8
43507184 nokogiri-1.7.1
43365188 mail-2.6.4
5960201 activesupport-4.2.8
5056267 discourse/lib
4835284 rack-mini-profiler-0.10.1
3825817 arel-6.0.4
2186088 i18n-0.8.1
1719330 discourse/app
```
After:
```
Total allocated: 161935975 bytes (1473940 objects)
Total retained: 2234 bytes (17 objects)
allocated memory by gem
-----------------------------------
45430264 activerecord-4.2.8
43568627 nokogiri-1.7.1
43430754 mail-2.6.4
11233878 rack-mini-profiler-0.10.1
5260825 activesupport-4.2.8
5054491 discourse/lib
2186088 i18n-0.8.1
1822494 arel-6.0.4
```
2017-05-03 17:01:57 +08:00
Arpit Jalan
cdce060a38
FIX: don't apply max emails per day per user to forgot password
2017-05-03 14:02:37 +05:30
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
Arpit Jalan
77a8cae094
FIX: rescue specific errors on invite failure
2017-05-02 15:13:33 +05:30
Jeff Atwood
a4815047c0
purge scheduler_stats
every 1 month instead of 3
2017-04-28 15:05:15 -07: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
59b906ab0d
FEATURE: Disable minimum post length check when in PM with non human users.
...
https://meta.discourse.org/t/discourse-narrative-bot-beta-feedback/58621/65?u=tgxworld
2017-04-27 16:00:22 +08:00
Robin Ward
bf9c4a7828
FEATURE: secure_email site setting to prevent data going out in email
2017-04-26 13:05:56 -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
Régis Hanol
0d66529d2b
PostReply doesn't have a primary key, so no luck here
2017-04-24 23:14:01 +02:00
Régis Hanol
1787c45b38
PERF: don't load all replies in memory when moving posts
2017-04-24 23:00:32 +02:00
Régis Hanol
8fe0bbb238
REFACTOR: improve Notification.ensure_consistency SQL query readability
2017-04-24 23:00:27 +02:00
Régis Hanol
301dd139ae
PERF: faster Group.refresh_automatic_group & Group.ensure_consistency
2017-04-24 23:00:21 +02:00
Régis Hanol
3d406b047c
PERF: much faster Badge.ensure_consistency
2017-04-24 22:59:49 +02:00
cpradio
20c2c66dd4
FEATURE: Add normal as a preference for topic subscription state when replying to a topic
2017-04-20 22:33:10 -04:00
Sam
aec73d4003
correct the spec again
2017-04-20 17:41:35 -04:00
Sam
dcf9459b7c
staff should track
2017-04-20 17:32:05 -04:00
Sam
5365973c0a
FIX: detection of error changed, so you can clear errors
2017-04-20 16:55:18 -04:00
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
Guo Xiang Tan
2af1b9e93c
Add time out when optimizing images.
2017-04-20 15:21:43 +08:00
Sam
7eabb90b71
FEATURE: added error messages for bad theme CSS / JS
2017-04-19 16:46:46 -04:00
Arpit Jalan
5fa5c18a48
use notification_levels methods for specifying normal notification level
2017-04-19 16:17:24 +05:30
cpradio
2dccaff25d
FIX: Correct behavior of auto-notification state updating to exclude when the topic already has a state of normal/muted
2017-04-19 06:29:35 -04:00
Sam
0a67d859d5
correct watcher so it handles color scheme changes correctly
2017-04-18 16:48:15 -04:00
Arpit Jalan
1c23aedccf
FIX: always send password reset email when accepting invite if password is not set
2017-04-18 14:37:06 +05:30
Guo Xiang Tan
60f1169077
REFACTOR: Reduce repetition in code.
2017-04-18 17:03:49 +08:00
Arpit Jalan
8dea70d354
Revert "FIX: User website allows new TLDs"
2017-04-18 13:18:51 +05:30
Rafael dos Santos Silva
4289dbe3e5
FIX: User website allows new TLDs
2017-04-18 00:30:37 -03:00
Sam
3ccd5eacb4
prefer multiline \A \z
2017-04-17 16:57:37 -04:00
Sam
86904e9cd6
FIX: better error handling for theme import
2017-04-17 16:55:53 -04:00
Sam
5e3a0846f7
FEATURE: allow themes to share color schemes
2017-04-17 15:56:24 -04:00
jloh
5f47603b07
FIX: increase host_must_be_valid regex for .technology TLD
...
.technology is 11 chars long and wasn't being matched previously
2017-04-15 21:06:51 +10:00
Arpit Jalan
0954367bf4
FIX: send activation email when accepting invite if password is set
2017-04-15 14:59:50 +05:30
Guo Xiang Tan
04016f0dec
Support Ruby 2.4.
2017-04-15 12:29:00 +08:00
cpradio
4dc4c5bebc
FIX: Update auto_notification to also update the subscription state when replying if the current state is less than the state being requested
2017-04-14 15:44:42 -04:00
Sam
def7348777
FIX: display custom sections with default theme
...
also cleans up mechanism for previewing themes, cleans up naming,
gets rid of old janky "preview_style", secures local theme key
2017-04-14 13:35:12 -04:00
Sam
809fbb25ce
FIX: blanking theme field was not properly removing it
2017-04-13 17:24:15 -04:00
Guo Xiang Tan
3d76fb9c2c
FIX: Don't show category options for reports that can't be scoped to a category.
2017-04-13 17:10:55 +08:00
Guo Xiang Tan
bda20cc44a
FIX: Don't enqueue topic status update job if topic is deleted.
2017-04-13 12:02:35 +08:00
Guo Xiang Tan
72c16967e6
FIX: Check for reserved usernames before hitting DB.
2017-04-13 11:32:20 +08:00
Guo Xiang Tan
57788200ec
REFACTOR: Add User.reserved_username?
.
2017-04-13 10:44:26 +08:00
Neil Lalonde
8395569b05
FIX: Topic.similar_to error when Search is not loaded
2017-04-12 14:48:30 -04:00
Sam
a7ed8a0310
correct theme importer to support embedded.scss
2017-04-12 11:30:16 -04: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
Dean Taylor
1a9afa976d
FEATURE: Add AWS S3 EU (London) "eu-west-2" region
2017-04-12 10:38:17 -04:00
Guo Xiang Tan
7cb389a235
Add DiscourseEvent
trigger when user's topic notification level changes.
2017-04-12 11:56:50 +08:00
Guo Xiang Tan
66a7b0c30b
FIX: Add web hook DiscourseEvent
s in initializer.
2017-04-12 11:55:49 +08:00
Arpit Jalan
8fb41bf5fb
FIX: update timestamp when resending invite
2017-04-11 20:02:32 +05:30
Guo Xiang Tan
73180c8a19
FIX: Private message can be set to publish in the future.
2017-04-11 20:44:25 +08:00
Guo Xiang Tan
fad04aad6c
Missing association.
2017-04-07 17:05:58 +08:00
Guo Xiang Tan
ae1d6e7421
Fix incorrect method usage.
2017-04-07 15:52:08 +08:00
Guo Xiang Tan
71501feaf3
Improve validation for TopicStatusUpdate
.
2017-04-07 15:32:00 +08:00
Guo Xiang Tan
0d67b507dc
Merge pull request #4788 from davidtaylorhq/user_seen_event
...
Add a user_seen DiscourseEvent for plugins to hook into
2017-04-06 12:32:16 +08:00
David Rodríguez
934bff43d9
FIX: Copy post actions when moving a topic.
2017-04-06 12:16:22 +08:00
Guo Xiang Tan
5943543ec3
FIX: Improve checks for non-human users.
2017-04-06 11:29:34 +08: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
Guo Xiang Tan
5cf75c67df
FIX: Callback undefined
error when topic has been deleted.
2017-04-03 09:06:15 +08:00
David Taylor
03373a0e84
Add a user_seen DiscourseEvent for plugins to hook into
2017-03-31 23:30:59 +01: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
Arpit Jalan
2418daeb63
FIX: check if post exists in topic
2017-03-31 18:02:14 +05:30
Guo Xiang Tan
ed577fbff8
FEATURE: Pause a topic instead of permanently closing when flag threshold is reached.
2017-03-31 14:35:05 +08: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
Robin Ward
14410b71fb
Convert server side paths to use /u/
2017-03-30 10:23:24 -04:00
Robin Ward
45a257815a
Convert front end paths from /users/
to /u/
2017-03-30 10:23:24 -04:00
Guo Xiang Tan
99abbc2e2d
UX: Order custom emojis by name.
2017-03-30 13:24:18 +08:00
Arpit Jalan
4812417192
FIX: do not add user to group based on email domain unless email is confirmed
2017-03-28 15:02:40 +05:30
Robin Ward
27a73c73f9
FIX: Error when calculating geometric mean of 0 for read timings
2017-03-27 12:45:34 -04:00
Arpit Jalan
3378e2d49f
FIX: update topic fancy title when updating category name
2017-03-26 12:29:53 +05:30
Régis Hanol
747f4812e4
fix custom emoji support when using subfolder
2017-03-24 02:09:39 +01:00
Neil Lalonde
11ce73b8ed
FEATURE: category setting for default top period
2017-03-22 16:54:18 -04:00
Arpit Jalan
295cf8839e
FIX: better error message when invited user already exists
2017-03-22 13:55:28 +05:30
Guo Xiang Tan
e8fc8f0bb6
Update annotations.
2017-03-22 14:26:53 +08:00
Arpit Jalan
521c88fe58
FIX: enqueue activation email for invited user that has password set
2017-03-20 17:13:21 +05:30
Guo Xiang Tan
ddc8abf9d8
Fix broken optimize image command.
2017-03-20 15:07:38 +08:00
Guo Xiang Tan
6057e17ae7
Fix weird test failure.
2017-03-20 12:06:37 +08:00
Guo Xiang Tan
a567e6bec9
FIX: Publish notification state in after_commit
hook.
...
`after_save` is still wrapped in a transaction and
we were getting intermittent failures with notifications
state not being published.
2017-03-20 11:38:34 +08:00
Guo Xiang Tan
e7c972ac89
FIX: Don't use backticks that take in inputs.
2017-03-17 15:33:51 +08:00
Neil Lalonde
ad8a579c79
UX: banner enabled/disabled posts should be small posts, not full-size posts
2017-03-16 17:31:37 -04:00
Neil Lalonde
22f197c153
FEATURE: subcategory list style: boxes with featured topics
2017-03-16 11:54:45 -04:00
Robin Ward
fd591257a8
Merge pull request #4759 from kennym/support-ports-for-ip-addresses-in-embedding
...
FIX: Allow ports for embed host IPs
2017-03-16 11:23:42 -04:00
Guo Xiang Tan
9f299b6842
Use after_commit
since after_save
runs within the transaction as well.
2017-03-16 16:02:34 +08:00
Guo Xiang Tan
299b92b4d7
Fix broken user created event trigger.
2017-03-16 15:36:27 +08:00
Guo Xiang Tan
5169ef8814
Fix broken specs.
2017-03-16 15:05:28 +08:00
Guo Xiang Tan
bf78c228f4
FIX: User created web hook being enqueued before record has been saved.
...
* Improve web hook tests as well.
2017-03-16 14:44:09 +08:00
Erick Guan
cfbfea0596
FEATURE: Allow easier customization to the web hook event serialization.
2017-03-16 10:09:05 +08:00
Kenny Meyer
ae957bca25
Allow ports for embed host IPs
2017-03-15 18:16:34 -03:00
Guo Xiang Tan
58de40154d
Bump EMOJI_VERSION
to clear cache.
2017-03-14 15:31:01 +08: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
64680286f4
correct logic, so revalidation is reset
...
correct test so it can run at any point
2017-03-13 10:47:43 -04:00
Sam
ef24fd54ba
FEATUE: automatically validate token is stored in redis
...
This ensures we have some handling for redis flushall
We attempt to recover our in-memory session token once every 30 seconds
Code is careful to only set the token if it is nil, to allow for manual
cycling to remain safe if needed
2017-03-13 10:19:02 -04:00
Guo Xiang Tan
4d4a1a1552
Add scope for human users.
2017-03-11 14:25:09 +08:00
Guo Xiang Tan
eb6ef0311e
Hide special users from about pages.
2017-03-10 15:33:31 +08:00
Sam
3032aa7db9
PERF: avoid looking globals from providers after first call
2017-03-09 18:00:55 -05: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
Sam
9f8cfee450
remove dupe code, correct logging logic
2017-03-07 13:27:43 -05:00
Robin Ward
dad57fa033
FIX: More errors with non-ascii URLs
2017-03-07 11:21:41 -05:00
Guo Xiang Tan
d1e587c10a
Merge pull request #4737 from oblakeerickson/approve_invited_user
...
FIX: approve invited user
2017-03-07 21:14:34 +08:00
Régis Hanol
0abe433495
Merge pull request #4736 from techAPJ/group-bulk-add
...
FIX: grant trust level when bulk adding users to group
2017-03-06 12:43:26 +01:00
Guo Xiang Tan
7d82a53dfe
FIX: Group#name
is case insensitive.
2017-03-06 17:24:03 +08:00
Arpit Jalan
d5bcc70e9c
FIX: grant trust level when bulk adding users to group
2017-03-06 14:39:53 +05:30
Guo Xiang Tan
8aea3caf00
FIX: Ensure that we only move posts that belong to the original topic.
2017-03-06 15:04:10 +08:00
Blake Erickson
dbb3ddc7a6
FIX: approve invited user
...
This commit fixes the case where invited users who typed in a password
would not be approved by default. Because we moved the user create logic
for an invited user there was a clash with the `save` in the user model
and the `save` in the invite_redeemer class.
- added approve logic into invite_redeemer class.
- added tests to verify that the user is approved
- added a check to see if must_approve_users is on
- added a check to see if the inviter is staff
- go ahead and approve the user if must_approve_users is off
- keep existing User.approve workflow if user exists
- improve if/else logic to remove duplicate code
- use `Time.zone.now`
2017-03-05 06:58:23 -07:00
Guo Xiang Tan
08ffbf6c61
Use Time.zone.now
instead.
2017-03-05 11:10:40 +08:00
Guo Xiang Tan
bcf634ca85
Merge pull request #4728 from nbianca/username-regex
...
Add support for username regex.
2017-03-03 22:59:23 +08:00
Bianca Nenciu
30909ec54e
Add support for username regex.
2017-03-02 13:53:45 +02: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
Guo Xiang Tan
112ca20c96
Merge pull request #4675 from tgxworld/fix_polls_forever_broken_if_approval_required
...
FIX: Polls permanently broken if post requires approval.
2017-03-01 12:56:03 +08:00
Sam
3ac4709903
FIX: on initial token issue stop unmarking token as unseen
...
prev and current are the same so we need special logic to bypass
2017-02-28 10:38:22 -05:00
Sam
ffd8fa7481
FEATURE: move_to_inbox and archive_message events
2017-02-28 09:56:41 -05:00
Arpit Jalan
b32d3d66e5
FEATURE: log all username and name changes
2017-02-28 00:23:27 +05:30
Robin Ward
bf9626d031
FIX: Embedding was broken with non-english URLs and ports
2017-02-27 12:17:52 -05:00
Sam Saffron
7e8f0dc967
FIX: attempt to handle ios edge case where token is seen but unsaved
...
This relaxes our security in the following way
- prev auth token is always accepted as long as rotation
date is within our window of SiteSetting.maximum_session_age.hours
(previously old token expired within a minute of new one being seen)
- new auth token is marked unseen if we are presented with an old token
after we already saw new one
This attempts to fix an issue where ios webkit is not committing new cookies
2017-02-26 17:09:57 -05:00
Régis Hanol
fdf749770b
remove unecessary '.limit(1)'
2017-02-24 12:56:13 +01:00
Neil Lalonde
53ec4c44f4
FIX: N+1 in topic_list
2017-02-22 12:20:50 -05:00
Neil Lalonde
c94fdcea38
FIX: admin dashboard posts count should not include system posts and whispers
2017-02-21 14:45:41 -05:00
Neil Lalonde
476ae57af3
FEATURE: primary group class on avatars in topic list
2017-02-20 15:55:10 -05:00
Régis Hanol
f51e3b2131
FIX: should not be able to rename a system badge
2017-02-20 14:35:05 +01:00
Régis Hanol
cb99f59ec3
reset bounce score when email is successfully changed
2017-02-20 10:37:01 +01:00
Robin Ward
e62c0a42fa
FIX: Support multiple embeddable host records with the same host
2017-02-17 12:41:34 -05:00
Neil Lalonde
3fb50d587d
FIX: invited users and new TL1 users will see their first notification highlighted
2017-02-17 10:30:29 -05:00
Neil Lalonde
4b28bfaa15
Merge pull request #4710 from ento/fix-s3-config-check
...
FIX: admin dashboard shouldn't complain when using IAM profile for S3 access
2017-02-15 17:02:07 -05:00
Neil Lalonde
d0fbb27f3e
FEATURE: new invite acceptance page, where username can be chosen and password can be set
2017-02-15 16:51:57 -05:00
Sam
9c51e3e8e7
amend preloader api to supply topic list
2017-02-15 12:04:02 -05: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
Marica Odagaki
a9a585f66a
Use && and || consistently so that there's less chance of copy paste errors in the future
2017-02-15 00:25:49 -08:00
Marica Odagaki
3bb1b98b0e
FIX: admin dashboard shouldn't complain when using iam profile for s3 access
...
Previous code wasn't working as intended because it was parsed as
(bad_keys = (access_key or secret_key)) and !use_iam_profile
because of Ruby's operator precedence: `=` binds more eagerly than `and`.
http://ruby-doc.org/core-2.3.1/doc/syntax/precedence_rdoc.html
See also: https://github.com/bbatsov/ruby-style-guide#no-and-or-or
2017-02-15 00:22:14 -08:00
Sam
f2099c3811
adjust API
2017-02-14 16:32:33 -05:00
Sam
89d5e8ab4b
FEATURE: allow plugins to preload data in topic list
2017-02-14 16:29:06 -05:00
Sam
5346cd3514
correct the test
2017-02-14 09:34:39 -05:00
Sam
c52784f9d2
FIX: race condition when marking tokens as seen
...
- in rare conditions can lead to users being logged off
2017-02-14 09:34:09 -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
Robin Ward
0e58e393a1
FIX: === and a better constant, thanks @ZogStriP
2017-02-13 13:14:19 -05:00
Robin Ward
e1d358ffbf
FIX: Don't clear the login hint when the system user is saved
2017-02-13 10:54:20 -05:00
Jeff Atwood
3ee7a9266c
Merge pull request #4686 from tgxworld/group_is_visible_if_user_is_group_owner
...
FIX: Show groups that user is owner of on groups page.
2017-02-11 22:18:44 -08:00
Sam Saffron
4332f0dde1
FEATURE: allow user search API to restrict to group
2017-02-09 18:45:39 -05:00
Sam
53ea8942e8
action to be reserved for assigned plugin
2017-02-08 12:10:16 -05:00
Sam
f34907b523
Merge pull request #4681 from vietqhoang/feature/add-user-title-to-sso-payload
...
FEATURE: Add user title to SSO payload
2017-02-07 10:25:32 -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
Régis Hanol
84af84dc52
prevent inactive & staged users from being automatically added to a group
2017-02-06 17:49:27 +01:00
Robin Ward
f1e7bca3c9
FEATURE: Warn a user when they're replying to the same user too much
2017-02-03 17:00:54 -05:00
Robin Ward
b251d11518
FIX: If you make a new banner, clear the old dismissed values
2017-02-03 15:07:38 -05:00
Guo Xiang Tan
61111a3f9b
FIX: Show groups that user is owner of on groups page.
2017-02-03 16:51:32 +08:00
Arpit Jalan
6b8691ecea
Merge pull request #4685 from techAPJ/approve-users-invite-fix
...
FIX: allow existing users to be invited to topic/message when must_approve_users is enabled
2017-02-03 13:22:18 +05:30
Arpit Jalan
dc2171960b
FIX: allow existing users to be invited to topic/message when must_approve_users is enabled
2017-02-03 13:01:23 +05:30
Guo Xiang Tan
ec73224b5e
PERF: Remove N+1 query when saving a user.
2017-02-03 15:03:33 +08:00
Neil Lalonde
b91cb92af0
FIX: reports for time to first reply and topics without replies were counting whispers and moderator actions
2017-02-02 17:27:41 -05:00
Guo Xiang Tan
3c28d94706
FIX: Don't configure Redis connector if Redis slave config is not set.
2017-02-02 13:48:55 +08:00
Guo Xiang Tan
d449f782a3
Revert "FIX: Don't skip callbacks when rebaking posts."
...
This reverts commit 06c651f8c9
.
If site settings are changed, there is a chance that the post
will fail PostValidator's validations.
2017-02-01 10:52:15 +08:00
Viet Hoang
40164ccd4a
Add user title to SSO payload
2017-01-31 16:42:27 -08:00
Guo Xiang Tan
c01cee4aa6
PERF: N+1 query when saving a user.
2017-01-27 10:53:42 +08:00
Robin Ward
496682c442
Merge pull request #4662 from tgxworld/fix_localized_group_name_change
...
Fix localized group name change
2017-01-26 10:50:00 -05:00
Guo Xiang Tan
bed11dfa0e
FIX: Polls permanently broken if post requires approval.
2017-01-26 13:29:43 +08:00
Guo Xiang Tan
06c651f8c9
FIX: Don't skip callbacks when rebaking posts.
2017-01-25 17:47:13 +08:00
Guo Xiang Tan
32846aad2a
FIX: Toggling post's wiki status should not create a new version.
2017-01-20 15:42:33 +08:00