Commit Graph

606 Commits

Author SHA1 Message Date
Robin Ward 2ce9d3d733 FIX: unhide `embed_truncate` since you can use it via wp plugin 2016-08-22 15:51:57 -04:00
Robin Ward c297af8ba1 FIX: Force refresh when you change a forum's privacy settings 2016-08-22 14:07:30 -04:00
Robin Ward 884bdf7240 FEATURE: Ability to scrub titles when importing embeddable content 2016-08-22 12:43:02 -04:00
Arpit Jalan 61b49c2d03 move default_opengraph_image_url to required settings 2016-08-22 07:43:43 +05:30
Arpit Jalan b02c9bef79 FIX: embed_truncate should default to true 2016-08-19 17:16:22 +05:30
Sam 206d056798 also support schema cause it is simpler to redirect 2016-08-18 13:52:30 +10:00
Régis Hanol 6d1d7b7c8f UX: new /categories layout 2016-08-17 23:23:16 +02:00
Arpit Jalan a2220feaea FEATURE: new site setting rebake_old_posts_count 2016-08-15 16:34:13 +05:30
Guo Xiang Tan 0433163866 FEATURE: Support subfolders in `SiteSetting.s3_backup_bucket`. 2016-08-15 16:14:51 +08: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
Guo Xiang Tan aa5de3c40a FEATURE: Support subfolders in S3 bucket name.
This commit also fixes a bug where s3 uploads are not
moved to a tombstone folder when removed.
2016-08-15 13:07:41 +08:00
Robin Ward 9b840cac96 UX: Add "Search" category to site settings 2016-08-11 13:48:49 -04:00
Robin Ward fc311dbe3b FEATURE: An option to search more recent posts for very large sites.
On very large forums searching posts can be slow, so this commit
introduces the ability to try and search only the most recent posts
first, and then going for a larger breadth search if there aren't
enough results.

Enable `search_prefer_recent_posts` and you can customize how many
recent posts to filter with `search_recent_posts_size`
2016-08-10 15:43:42 -04:00
Régis Hanol e92f5e4fbf FEATURE: new email attachment blacklists site settings 2016-08-03 17:55:54 +02:00
Neil Lalonde 37162e476b FIX: remove gtm_ua_domain_name setting because it's preferable to configure it in Google Tag Manager settings 2016-08-02 14:54:35 -04:00
Régis Hanol 5b270b6b06 change 'clean_orphan_uploads_grace_period_hours' default value to 2 days 2016-08-01 18:36:39 +02:00
Sam 9018de39ed FEATURE: allow shipping bio markdown via SSO
- Also adds site setting for sso_overrides_bio to disable bio editing by end users
2016-08-01 15:29:28 +10:00
Sam c6dbaca0dc SECURITY: disable user entered badge SQL by default
- Hidden site settings now must be change via rails console
2016-07-28 09:03:00 +10:00
Régis Hanol 6dac9075dc new 'convert_pasted_images_quality' site setting 2016-07-27 19:59:44 +02:00
Régis Hanol 749b981759 FEATURE: new 'convert_pasted_images_to_hq_jpg' site setting 2016-07-25 23:01:28 +02:00
Régis Hanol b0f7e4ba00 FEATURE: deactive users after too many bounces 2016-07-25 18:57:06 +02:00
Régis Hanol 7648916314 new 'reset_bounce_score_after_days' site setting 2016-07-25 17:29:54 +02:00
Régis Hanol d2e22ab215 extract bounce scores into site settings 2016-07-25 17:27:28 +02: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
Guo Xiang Tan 1adfa0a4b5 FEATURE: Add SiteSetting to disable readonly mode during backup. 2016-07-19 17:44:04 +08:00
Guo Xiang Tan 1ea1cefb35 Extract Nginx log analyzer into a plugin that ships with Discourse. 2016-07-19 15:44:00 +08:00
Jeff Atwood fa5942f56c make email tokens (forgot,activate) live for 48 hours 2016-07-18 02:00:18 -07: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
Neil Lalonde ba637e40b6 FEATURE: Google Tag Manager Universal Analytics support 2016-07-14 16:35:20 -04:00
Sam Saffron dbc25a9d64 FEATURE: flags for suppressing pinned expansion
To suppress pinned excerpt expansion
on mobile set "show_pinned_excerpt_mobile" to false

To suppress pinned excerpt expansion
on desktop set "show_pinned_excerpt_desktop" to false
2016-07-12 13:53:59 +10:00
Arpit Jalan 2facb6190f FEATURE: new site setting download_remote_images_max_days_old 2016-07-06 19:33:51 +05:30
Arpit Jalan 2f3ee3b658 FEATURE: new site setting suggested_topics_max_days_old 2016-07-03 15:07:56 +05:30
Guo Xiang Tan 136b1b504d
Allow `force_https` to be shadowed by a global setting. 2016-06-29 15:24:06 +08:00
Guo Xiang Tan 918b015bdb
Move comment to the right place. 2016-06-29 15:23:29 +08:00
Guo Xiang Tan 8db3ab5f2a Merge pull request #4292 from tgxworld/rename_use_https_to_force_https
Rename `SiteSetting#use_https` to `force_https`.
2016-06-29 15:17:57 +08:00
Guo Xiang Tan 20359788dc
Rename `SiteSetting#use_https` to `force_https`. 2016-06-29 15:02:43 +08:00
Sam f88cf4e2f0 Merge pull request #4226 from xfalcox/non-persistent-session
FEATURE: add setting permanent_session_cookie to configure session st…
2016-06-29 16:47:31 +10:00
Régis Hanol d18e9a5293 validator was on the wrong site setting 2016-06-27 22:48:27 +02:00
Arpit Jalan 83309752ae FEATURE: new site setting 'code formatting style' 2016-06-27 01:00:11 +05:30
Neil Lalonde d62f2b4d67 UX: rename setting num_flags_to_block_new_user to num_spam_flags_to_block_new_user 2016-06-15 13:19:06 -04:00
Jeff Atwood c860bd0781 remove Google+ as default from share link
sorry Google! It was a nice try!
2016-06-14 12:27:21 -07:00
Régis Hanol dffe50a2e6 new alternative reply by email addresses 2016-06-10 16:14:42 +02:00
Jeff Atwood dd3ddce448 add copy and settings for TL3 blocks 2016-06-07 23:42:30 -07:00
Sam 4bf3fa5356 FEATURE: allow admins to prioritize full name vs username in the UI
Use the site setting prioritize_username_in_ux to switch between prioritizing
the full name vs username
2016-06-08 14:29:24 +10:00
Régis Hanol ee257a2bb0 FIX: need to use mailgun's secrect API key instead of the public key 2016-06-07 01:30:34 +02:00
Régis Hanol 116efffdaa FEATURE: webhooks support for mailgun 2016-05-30 17:11:17 +02: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
Arpit Jalan 23799e3422 FIX: validate tl3_time_period max value 2016-05-26 16:01:30 +05:30
David McClure a92fd9d701 Add Site Setting to use HTML from incoming email when available. (#4236) 2016-05-26 10:13:01 +02:00
Neil Lalonde a4cd068481 FEATURE: add caps to trust level 3 requirements for posts read and topics viewed, configurable in settings 2016-05-25 14:55:49 -04:00
Régis Hanol 32d253d484 remove 'crop_tall_images' site setting but keep the behavior 2016-05-23 16:42:19 +02:00
Régis Hanol 667dd54a23 FEATURE: new 'crop_tall_images' site setting 2016-05-23 16:18:30 +02: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
Arpit Jalan 29ca2f11ba FIX: add minimum value for min_private_message_title_length 2016-05-19 16:20:28 +05:30
Jeff Atwood 80082f0e2b UX: hide flag behind ellipsis by default 2016-05-18 16:50:43 -07:00
Régis Hanol c75d58ab21 FEATURE: new 'ignore_by_title' site setting 2016-05-18 23:07:01 +02:00
Rafael dos Santos Silva 09ef5f613e FEATURE: add setting permanent_session_cookie to configure session stickiness
Now admins can turn make the login cookie die after the browser is closed, so the user needs to log in everytime.
2016-05-17 01:12:09 -03:00
Régis Hanol 5f76287b18 FEATURE: cap number of staged users (defaults to 10) created per incoming email 2016-05-16 21:45:34 +02:00
Régis Hanol 545a2355a2 FIX: S3 buckets' regular expression wasn't strict enough 2016-05-13 15:09:37 +02:00
Régis Hanol 1e57bbf5c8 Lots bounce emails related fixes
- Show bounce score on user admin page
- Added reset bounce score button on user admin page
- Only whitelisted email types are sent to emails with high bounce score
- FIX: properly detect bounces even when there is no TO: header in the email
- Don't desactivate a user when reaching the bounce threshold
2016-05-06 19:34:33 +02:00
Neil Lalonde ede3a709a7 FIX: disable flag_sockpuppets by default, since it causes too many false positives in spam detection 2016-05-05 17:02:36 -04:00
Régis Hanol 8e611ec7a1 FEATURE: handle bounced emails 2016-05-02 23:15:32 +02:00
Neil Lalonde e5918c7d00 FEATURE: Merge tagging plugin into core 2016-04-27 11:58:53 -04:00
Arpit Jalan 74b3807f60 FEATURE: new bootstrap mode settings for brand new Discourse community (#4193)
* FEATURE: new bootstrap mode settings for brand new Discourse community

* new SiteSetting.set_and_log method
2016-04-26 13:08:19 -04:00
Régis Hanol 84d4ebd910 use 'reply_by_email_address' setting for handling bounce emails using VERP 2016-04-25 20:06:45 +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
Sam 8b096b4b99 bump up to 500 max posts in message 2016-04-13 08:43:22 +10:00
Sam 0113fce420 FEATURE: automatically close topics with 10k+ posts
FEATURE: automatically close messages with 2k+ posts

Both configurable via `auto_close_messages_post_count`
and `auto_close_topics_post_count`
2016-04-12 13:29:48 +10:00
Sam 50a44695ec Update site_settings.yml
disable verbose sso logging by default
2016-04-12 07:49:44 +10:00
Régis Hanol 56089c4856 FEATURE: new 'auto_generated_whitelist' site setting 2016-04-11 22:47:34 +02:00
Neil Lalonde a299231f9a FEATURE: add setting to omit category name from topic page title tag 2016-04-11 16:44:16 -04:00
Sam 19ca08857f FEATURE: verbose SSO logging
By enabling the site setting verbose_sso_logging
you can log information every time a user tries initiates SSO
and during SSO failures
2016-04-08 11:20:01 +10:00
Régis Hanol a5d8dfb07e FIX: don't hardcode maximum file size 2016-04-06 22:51:28 +02:00
Arpit Jalan 9a045c216c FIX: verify that sso_url setting includes protocol 2016-04-06 11:12:47 +05:30
Arpit Jalan 64feffbb60 FEATURE: site setting for suppressing categories from digest email 2016-03-26 01:06:03 +05:30
Arpit Jalan df565da3b3 UX: move wiki button in post wrench 2016-03-24 01:40:54 +05:30
Régis Hanol 39863953cd new 'enable_staged_users' site setting 2016-03-23 18:56:03 +01:00
Sam c095304d6d FEATURE: limit daily emails per user to 100 per day via site setting
- controlled via max_emails_per_day_per_user, 0 to disable
- when limit is reached user is warned
2016-03-23 15:08:48 +11: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
Régis Hanol 20ce7f29e0 FEATURE: new 'manual_polling_enabled' site setting 2016-03-16 22:28:01 +01:00
scossar 0cbeda8414 add site setting for setting locale from header 2016-03-14 16:18:19 -07:00
Guo Xiang Tan ee8be3d1a8 Merge pull request #4059 from gdpelican/feature/disable-mailing-list-mode
FEATURE: Add site setting for disabling mailing list mode site wide
2016-03-08 16:27:09 +08:00
Sam fe6ea48123 Merge pull request #4038 from markbiegel/instagram-login
FEATURE: Instagram OmniAuth login methods
2016-03-07 14:05:07 +11:00
James Kiesel 54b4fb69db FEATURE: Add site setting for disabling mailing list mode site wide 2016-03-05 11:08:31 +13: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
Guo Xiang Tan f32f0d6337 Merge pull request #4017 from tgxworld/add_admin_banner_for_logster
FEATURE: Admin Banner when Logster logs is getting flooded.
2016-03-02 23:44:56 +08:00
Guo Xiang Tan fdd6920ae7 FEATURE: Admin Banner when Logster logs is getting flooded. 2016-03-02 22:03:16 +08: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
Arpit Jalan 50e65634d7 FEATURE: new setting min_admin_password_length and better default 2016-03-02 14:43:26 +05:30
Robin Ward 618eef680e FEATURE: Disable removal of backups from S3 2016-03-01 14:02:10 -05:00
Régis Hanol be5a54d67d FEATURE: new 'allow_all_attachments_for_group_messages' site setting 2016-02-29 22:39:24 +01: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
Robin Ward 026bba1876 Merge branch 'master' into vdom 2016-02-22 15:28:07 -05:00
Jeff Atwood f6b1238d6c reduce maximum_backups default from 7 to 5 2016-02-22 00:56:26 -08:00
Sam 29c2423daf Merge branch 'master' into vdom
# Conflicts:
#	app/assets/javascripts/discourse/views/post.js.es6
2016-02-19 14:09:31 +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
Robin Ward d1e85bdd8b FEATURE: Use virtual dom framework for faster post rendering 2016-02-11 11:00:40 -05:00
Régis Hanol 8944d62aa6 add validator for the 'reply_by_email_enabled' site setting 2016-02-09 23:35:40 +01:00
Régis Hanol 460665895c properly name purge emails/email logs site settings 2016-02-08 22:18:52 +01:00
Régis Hanol ac863bab91 FEATURE: new 'suppress_email_logs_after_days' site setting 2016-02-08 18:47:35 +01:00
Régis Hanol 2d170712d7 new 'private_email_time_window_seconds' site setting 2016-02-04 17:22:16 +01:00
Gerhard Schlager f4f87921c2 Replace uncategorized_description setting with translation 2016-01-28 00:26:25 +01:00
Jeff Atwood 734450dcc3 retain unactivated accounts a bit longer default 2016-01-22 13:13:07 -08:00
Arpit Jalan 1cee914565 FEATURE: make top criteria formula multipliers controlled by site
setting
2016-01-21 10:30:06 +05:30
James Kiesel c7283751a3 Unsubscribe via email 2016-01-20 22:25:25 +13: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
Arpit Jalan 69416dde96 FIX: set minimum value for email_token_valid_hours setting 2016-01-14 12:51:34 +05:30
Arpit Jalan 06bac23e5f FEATURE: allow users to wikify their own posts based on trust level 2016-01-12 08:44:25 +05:30
Guo Xiang Tan 16d15a7938 Revert "FIX: Typo in site settings."
This reverts commit 19cd80f504.
2016-01-05 17:31:46 +08:00
Guo Xiang Tan 19cd80f504 FIX: Typo in site settings. 2016-01-05 17:15:47 +08:00
Arpit Jalan 51ced7aeae make site setting for read time word count per minute 2015-12-30 12:15:30 +05:30
Neil Lalonde cee4da82d8 FIX: remove max value of tl3 requires days visited site setting because tl3 time period is configurable now. Setting tl3 requires days visited higher than tl3 time period will disable tl3 promotions. 2015-12-29 12:59:59 -05:00
Arpit Jalan f40249faad FEATURE: make trust level 3 time period admin setting 2015-12-22 23:26:19 +05:30
Jeff Wong bffdc5907a username as from in emails
Add a site setting to display name in from header for emails
2015-12-15 00:34:04 -08:00
Arpit Jalan e65a7370ef FIX: disable avatar education message when 'allow_uploaded_avatars' is
disabled
FEATURE: setting to disable avatar education message
2015-12-14 22:47:35 +05:30
Régis Hanol 978a1539fa new pop3_polling_enabled setting validator to ensure credentials are working before enabling it 2015-12-10 22:23:54 +01:00
Régis Hanol ddda93b9f2 unhide the 'allow_staged_accounts' site setting 2015-12-09 12:14:01 +01:00
Sam ad3dd161e7 FEATURE: first class group mentions built in
If you allow a group to be mentioned it can be mentioned with the @ symbol.

Keep in mind as a safety mechanism max_users_notified_per_group_mention is set to 100
2015-11-30 17:08:43 +11:00
Sam f74a6457ee FEATURE: allow CJK to be tokenized in non CJK sites.
Meaning a mixed English/Chinese site can still have a functioning search.
2015-11-27 16:35:27 +11:00
Régis Hanol 0d54c18c8b new hidden 'allow_staged_accounts' setting 2015-11-26 18:31:23 +01:00
Robin Ward d65ec1af2e Rename `ninja_edit_window` to `editing_grace_period` :'( 2015-11-24 14:28:42 -05:00
Sam 8e95c6cf5b allow external system avatar url to be shadowed by global 2015-11-24 12:15:28 +11:00
Neil Lalonde 523138f1fd FEATURE: add setting pending_users_reminder_delay to configure when to send reminders to moderators about user approvals based on how long new users have been waiting 2015-11-20 16:06:07 -05:00
Sam 88f1a8f0b1 Merge pull request #3821 from mpalmer/letter-avatar-proxy
Proxy letter avatars by default
2015-11-19 20:02:16 +11:00
Jeff Wong cf86f27415 FEATURE: New setting to allow all caps posts
Adds a setting to ignore text_sentinel's check on all caps content.
2015-11-18 09:50:50 -08:00
Régis Hanol 92ba6125c4 FEATURE: new 'automatically_unpin_topics' user preference 2015-11-17 18:21:40 +01:00
Régis Hanol de95573d23 FEATURE: new 'backup_with_uploads' site setting 2015-11-12 16:23:59 +01:00
Régis Hanol 72a7bd38e1 FEATURE: new 'backup_time_of_day' site setting 2015-11-12 16:14:49 +01:00
Arpit Jalan ed331bc222 FIX: set max limit for max_topic_title_length setting 2015-11-12 11:59:55 +05:30
Robin Ward e2a663bff1 Merge pull request #3812 from gwwar/emoji-embed
FIX: allow emoji class when crawling embedded content
2015-11-06 14:52:59 -05:00
Régis Hanol 6b197179c9 FEATURE: new 'automatically_unpin_topics' site setting 2015-11-06 17:12:12 +01:00
Matt Palmer ab2e9a0beb Don't put the current hostname in external avatar URL 2015-11-06 14:14:20 +11:00
Matt Palmer c09f345cff Proxy letter avatars by default
On sites that don't otherwise configure an avatar fallback, Discourse will
now tell the client to get its letter avatars from a location which nginx
proxies to the centralised `avatars.discourse.org` service.  This alleviates
privacy concerns, whilst still providing some degree of performance benefit
(no need for every site to delay avatar response by 300ms for image
rendering).

It is still possible to gain the benefits of global image caching and the
lower latency of requesting directly from a CDN, by explicitly changing the
`external_system_avatars_url` site setting to
`https://avatars.discourse.org/letter/{first_letter}/{color}/{size}.png`.
2015-11-06 14:13:44 +11:00
kerryliu b7803fc68e FIX: allow emoji class when crawling embedded content, add rspc-html-matchers 2015-11-05 18:51:26 -08:00
Régis Hanol bb79e6aff7 FEATURE: new hide_user_profiles_from_public site setting 2015-10-28 19:56:08 +01:00
Régis Hanol 37c5909a31 FIX: use the first image in the first post in the topic as opengraph image
FEATURE: new 'default_opengraph_image_url' setting
2015-10-15 11:00:47 +02:00
Jeff Atwood b72b72747c switch to v2 avatars by default 2015-10-13 15:44:59 -07:00
Sam e29fe77b45 FEATURE: make trust level for message sending configurable
- add min_trust_to_send_messages site setting (default 1) to allow admins
 to configure when messages can be sent between members
2015-10-12 11:15:48 +11:00
cpradio 8cabc14099 FEATURE: Allow default period to be set for Top Page 2015-10-06 12:04:31 -04:00
Sam 6f43b575a8 FEATURE: no need to cap new and unread together anymore
- leave unread alone
- cap new at 500 per site, with a site setting
2015-10-01 17:17:15 +10:00
Sam 7ca75a88ce UX: always show logout link in user menu, use CSS to hide
.menu-panel .logout-link {display: none}
2015-09-25 12:15:34 +10:00
Neil Lalonde 5ca26a7707 FEATURE: add site setting use_admin_ip_whitelist to enable/disable the whitelisting of admins by IP address 2015-09-23 12:15:08 -04: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 7acc93b2a0 FEATURE: Track user profile views. 2015-09-16 14:48:31 +08:00
Kane York 6be78861ca Merge branch 'master' into signup-cta
Conflicts:
	app/assets/javascripts/discourse/lib/key-value-store.js.es6
2015-09-15 12:26:25 -07:00
Sam d0199bb717 FEATURE: by default everyone gets the letter free avatar service 2015-09-15 09:54:18 +10:00
Sam d39faf7ddf FEATURE: allow external avatars to be shadowed by global 2015-09-14 09:43:40 +10:00