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