Commit graph

641 commits

Author SHA1 Message Date
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
a86b35c873 Remove the access_password site setting 2013-06-25 15:05:25 -04:00
Jesse House
06be760257 adds TopMenuItem model which encapsulates top_menu parsing logic 2013-06-24 10:04:18 -07:00
Dmitriy Budnik
d12288de49 adding a missing User association 2013-06-24 17:08:49 +03:00
Sam
25bb8cf382 remove dead uncalled code 2013-06-23 15:28:38 +10:00
Sam
ea932b74e7 values is a much more consistent name than all_values ... we use {}.values not {}.all_values
also fixes random ordering of tests failure in site settings
2013-06-23 15:07:49 +10:00
Sam
22d6f6784c Merge pull request #1075 from ZogStriP/fix-lightboxing-when-using-s3
FIX: lightbox wasn't working when using s3 upload
2013-06-23 22:11:45 -07:00
Sam
287d0dbd75 bad locale files could lead to broken automatic groups 2013-06-23 14:44:16 +10:00
Sam
298949a343 missing dependency 2013-06-23 14:32:46 +10:00
Sam
fc6983d238 basic requires that 20 topics are entered thanks @novemberkilo 2013-06-23 14:32:37 +10:00
Régis Hanol
08aa23f0ca FIX: lightbox wasn't working when using s3 upload 2013-06-22 13:38:42 +02:00
Robin Ward
bb908d5913 Email parsing uses Traditional Markdown Linebreaks by default. Added JS tests for line breaks. 2013-06-21 11:37:26 -04:00
Neil Lalonde
bfdbf373f3 Don't show invisible topics in uncategorized on categories page 2013-06-21 11:36:00 -04:00
Robin Ward
455742d3ee Merge pull request #1062 from ComputerDruid/fix-which-s
Use "command -v" to test for convert instead of "which -s"
2013-06-21 07:12:42 -07:00
Robin Ward
8dceb655db Merge pull request #1058 from ZogStriP/delete-optimized-images-when-cleaning-up-orphans
make sure we also delete optimized images
2013-06-21 07:10:28 -07:00
Régis Hanol
8a751e6e44 make sure we also delete optimized images 2013-06-21 09:34:02 +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
Dan Johnson
8009b3f036 Use "command -v" to test for convert instead of "which -s" 2013-06-20 21:42:18 -04:00
Neil Lalonde
f39f44ddbf Categories page should not show invisible topics 2013-06-20 16:07:53 -04:00
Robin Ward
4aa20cf23c Merge pull request #1053 from vipulnsward/remove_var
Remove unused var.
2013-06-20 09:54:34 -07:00
Vipul A M
5e5ef9cafd Remove unused var. 2013-06-20 20:58:05 +05:30
Robin Ward
9f3d5b9f1e Merge pull request #1044 from ZogStriP/clean-orphan-uploaded-files
added a rake task to clean orphan uploaded files
2013-06-20 07:53:50 -07:00
Robin Ward
2e7c5a674c Merge pull request #1049 from ZogStriP/admin-alerts
Admin alerts
2013-06-20 07:51:40 -07:00
Sam
70683c1f09 Merge pull request #1034 from chrishunt/rebake-oneboxes
Optionally rebake oneboxes with posts:rebake task
2013-06-20 01:18:57 -07:00
Sam
08df4c41cc Merge branch 'master' of github.com:discourse/discourse 2013-06-20 17:42:29 +10: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
Régis Hanol
8a26b86739 added image magick alert 2013-06-19 22:36:56 +02:00
Régis Hanol
9036738ba2 added s3 file uploads alert 2013-06-19 22:11:11 +02:00
Régis Hanol
4a17d6dca6 added a rake task to clean orphan uploaded files 2013-06-19 21:51:41 +02:00
Robin Ward
5ef6714d48 New site setting: minimum_topics_similar, allows you to specify a minimum amount
of topics that need to be in the database before it will suggest similar topics as
a user creates a post.
2013-06-19 13:14:24 -04:00
Chris Hunt
ef76e18215 Optionally invalidate onebox in PostAnalyzer#cook 2013-06-19 00:19:42 -07:00
Sam
799b402778 fix horribly broken invite code, could lead to inviting the wrong person to a conversation 2013-06-19 10:31:19 +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
80c42753e1 fix up find as you type for the invite into PM function
allow mods to remove users from a PM
2013-06-18 17:17:01 +10: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
Neil Lalonde
281a08a99f Allow people to capitalize a word when ninja-editing a post 2013-06-17 15:57:13 -04:00
Robin Ward
3c7eb3a4e8 FIX: null dates crashed the client app. last_posted_at was not updating properly on split topic. 2013-06-17 13:02:50 -04: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
454636abf1 annotate models 2013-06-17 02:49:34 +02:00
Régis Hanol
510bac4b27 refactored a bit & tested thumbnails creation 2013-06-17 02:49:34 +02:00
Régis Hanol
cc9e0ec80a create thumbnails when needed 2013-06-17 02:49:34 +02:00
Régis Hanol
d4c3fe4e6a added create_thumbnails? site setting
defaults to `false`
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
2c3f757951 moved has_been_uploaded and uploaded_regex to the Upload model 2013-06-17 02:49:34 +02:00
Régis Hanol
8a98310cf9 make sure we only do the work once 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
Sam
b545a49d32 Merge pull request #1025 from ZogStriP/reverse-index-take-2
Reverse index take 2
2013-06-16 16:49:57 -07:00
Chris Hunt
09d3800701 Move 'dynamic favicon' from Server to User pref 2013-06-14 23:58:24 -07:00
Neil Lalonde
f62c421c91 Render category descriptions differently on the categories page 2013-06-14 11:18:44 -04:00
Régis Hanol
037f62928b add proper post_uploads reverse index 2013-06-13 23:44:24 +02:00
Neil Lalonde
4db8204a15 Remove topic links when a post is deleted 2013-06-13 13:41:54 -04:00
Robin Ward
49c09898e2 The EmailBuilder now creates the Reply by Email Key if necessary. 2013-06-13 12:40:06 -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
Neil Lalonde
ef18a3ad5c Locales should be sorted in dropdown 2013-06-13 12:18:11 -04:00
Robin Ward
cb40ceb9e8 Merge pull request #1019 from ZogStriP/reverse-index-of-user-uploads
added a reverse index of user uploads + rake task
2013-06-13 07:20:55 -07:00
Sam
f7de9f17d5 refactor validators
add a new setting for min pm body length
use that setting for flags
scale entropy check down for pms
2013-06-13 18:18:43 +10:00
Sam
e6e81efe85 correct information leak in page not found 2013-06-13 10:27:17 +10:00
Régis Hanol
770c1faeb1 added a reverse index of user uploads + rake task 2013-06-13 01:43:50 +02:00
Robin Ward
77b218a142 FIX: Do not suggest similar topics from secure categories you can't see. 2013-06-12 13:45:11 -04:00
Neil Lalonde
28ac110a3c Add eu-west-1 to s3 regions 2013-06-12 12:02:47 -04:00
Sam
c1f6169b48 hidden and deleted state in user stream 2013-06-12 11:14:08 +10:00
Régis Hanol
8a2d635e62 removed imgur support 2013-06-11 21:51:41 +02:00
Neil Lalonde
811a0df68b Make s3 region site setting a drop down 2013-06-11 14:24:04 -04:00
Neil Lalonde
5ff7e570ac Add support for enum site settings that render as a dropdown; use a dropdown for default_locale 2013-06-11 11:40:14 -04:00
Jeff Atwood
b4a4774165 extend consumer email warning to yahoo & outlook 2013-06-10 00:08:06 -07:00
Vipul A M
4f606ffd8e Some minor cleanups
1. Change map to keys
2. Remove overshadow
3. Remove var
2013-06-10 10:38:10 +05:30
Sam
6a6496eedf Merge pull request #995 from novemberkilo/master
Refactoring Post model
2013-06-09 16:19:06 -07:00
Sam
2d14b54096 Merge pull request #988 from chrishunt/add-dynamic-favicon
Add 'dynamic favicon' setting
2013-06-09 16:13:54 -07:00
Navin
3fdba0019b Extract callbacks and validations for Post
Move Post create callbacks to PostCreate
Extract Post validations
Move stripped_length_validator to lib/validators
2013-06-09 20:47:04 +02:00
Sam
1756f713d6 SECURITY HOLE, upgrade right away if you are using Secure Groups. 2013-06-08 23:52:06 +10:00
Chris Hunt
af1c14939e Add 'dynamic favicon' setting 2013-06-07 17:15:49 -07:00
Robin Ward
463be6fadf Merge pull request #982 from jd-erreape/add_scopes_to_roleable
Added role scopes to roleable
2013-06-07 12:08:26 -07:00
Neil Lalonde
169125e96d Fix a case where a random topic with null slug will be rendered instead of 404 2013-06-07 14:30:26 -04:00
Juan de Dios Herrero
36fe8fbc6d Added role scopes to roleable 2013-06-07 18:26:06 +02:00
Juan de Dios Herrero
1b92d9d7f8 Added roleable module for User model 2013-06-07 12:33:48 +02:00
Chris Hunt
f6ce985121 Send activation email after user approved 2013-06-06 18:37:25 -07:00
Sam
1eed1e240b Merge pull request #977 from chrishunt/add-apple-touch-icon
Add 'apple touch icon url' site setting
2013-06-06 17:40:12 -07:00
Chris Hunt
268a5debbf Add 'apple touch icon url' site setting 2013-06-06 14:43:05 -07: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
Robin Ward
f268b882fd The posts rebake task should regenerate links too. 2013-06-06 13:52:30 -04:00
Robin Ward
bac03a3369 Merge pull request #975 from jd-erreape/username_refactor
[WIP] Refactored user_name suggestion methods into a module
2013-06-06 08:12:29 -07:00
Juan de Dios Herrero
96d23ddd8d Refactored user_name suggestion methods into a module to reduce the complexity of User model 2013-06-06 16:40:10 +02:00
Ian Christian Myers
0d01c33482 Enabled strong_parameters across all models/controllers.
All models are now using ActiveModel::ForbiddenAttributesProtection, which shifts the responsibility for parameter whitelisting for mass-assignments from the model to the controller. attr_accessible has been disabled and removed as this functionality replaces that.

The require_parameters method in the ApplicationController has been removed in favor of strong_parameters' #require method.

It is important to note that there is still some refactoring required to get all parameters to pass through #require and #permit so that we can guarantee that parameter values are scalar. Currently strong_parameters, in most cases, is only being utilized to require parameters and to whitelist the few places that do mass-assignments.
2013-06-06 00:30:59 -07:00
Sam
2ca734c118 Merge pull request #964 from chrishunt/exclusive-club
Add 'invite only' site setting
2013-06-05 16:38:47 -07:00
Robin Ward
0b97ea6345 Better HTML emails, smarter email digests, new email section in admin with digest preview 2013-06-05 17:47:25 -04:00
Neil Lalonde
f030d9b420 Make default_logo_check more smarter 2013-06-05 16:59:19 -04:00
Neil Lalonde
4e8ff74b99 Show dashboard warning when favicon and/or logo urls contain the same filename as the shipped defaults 2013-06-05 16:43:39 -04:00
Neil Lalonde
b55182b983 Use PostDestroyer when deleting all of a user's posts; deleting a post removes its flags and resets its flag counts 2013-06-05 16:05:13 -04:00
Robin Ward
dfba2b6e0a FIX: Strip links from google indexed bios when the users are new. 2013-06-05 15:28:10 -04:00
Chris Hunt
24da1ab07e Add 'invite only' site setting 2013-06-05 11:06:05 -07:00
Ian Christian Myers
41528f5d11 Implemented strong_parameters for Upload/UploadsController.
The topic_id param is now required using strong_parameters' #require method. If the parameter is missing ActionController::ParameterMissing will be raised instead of Discourse::InvalidParameters.
2013-06-05 00:55:55 -07:00
Ian Christian Myers
f50b648844 Implemented strong_parameters for PostAction/PostActionsController.
PostActionsController now uses strong_parameters' #require to require certain parameters. ActionController::ParameterMissing is now thrown when a reqired parameter is missing, rather than Discourse::InvalidParameters.
2013-06-05 00:23:51 -07:00
Ian Christian Myers
3b245031a4 Implemented strong_parameters for Invite/InvitesController.
The email parameter is now required using strong parameters and will throw ActionController::ParameterMissing if it is missing. If the email address is incorrect or invalid, Discourse::InvalidParameters will still be thrown.
2013-06-05 00:04:03 -07:00
Ian Christian Myers
130d837952 Implemented strong_parameters for Category/CategoriesController.
Category now requires parameters to be permitted by strong_parameters using #require or #permit for mass-assignment. Missing required parameters now throw a ActionController::ParameterMissing execption instead of the Discourse::InvalidParameters execption.
2013-06-04 23:45:25 -07:00
Sam
870e59883b secure the links on the topic pages, eliminated deleted topics as well. 2013-06-05 16:10:26 +10:00
Sam
2509d0f4fa Merge pull request #959 from chrishunt/chrishunt/login-required-fixes
'login required' site setting improvements
2013-06-04 19:09:40 -07:00
Chris Hunt
3074300f76 Allow customization of 'login required' message 2013-06-04 18:53:36 -07:00
Sam
9a57aaaaa9 fix encoding for category excerpt
fix missing secure category topics in categories page
2013-06-05 11:22:47 +10:00
Sam
21b3359ea4 Merge pull request #957 from chrishunt/chrishunt/lock-down-the-base
Add 'login required' site setting
2013-06-04 17:22:08 -07:00
Chris Hunt
85ceb5efa7 Add 'login required' site setting 2013-06-04 16:10:10 -07:00
Régis Hanol
e3e55d4dad fix image uploads on s3/imgur 2013-06-05 00:35:42 +02:00
Neil Lalonde
2465c9c724 Add min_private_message_title_length site setting so private messages can have short titles 2013-06-04 17:59:23 -04:00
Robin Ward
4392a17b54 Strip out links when displaying a new user's bio 2013-06-04 12:06:25 -04:00
Neil Lalonde
2259e97d42 Add a count of blocked users on the dashboard 2013-06-04 11:53:19 -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
33d0a6a876 FIX: Safety checks for categories index 2013-06-02 11:20:08 -04:00
Navin
cab3502c15 Replace PostAnalyser module with a class
Encapsulate Post#cooked_document as well
Include specs for PostAnalyzer class
2013-06-01 14:59:27 +02: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
Robin Ward
d23ef1d090 FIX: You could update a topic to have a title that's too short if the TextCleaner
removed extra characters. Additionally, updating the title will not return an error
message to the client app if the operation fails (rather than failing silently.)
2013-05-31 15:24:13 -04:00
Robin Ward
0af0a214b2 Refactor: Back all modals by controllers 2013-05-31 12:29:38 -04:00
Robin Ward
830b7805e9 Merge pull request #927 from bplexico/extract_invite_redeemer
Extract InviteRedeemer from Invite
2013-05-31 08:30:42 -07:00
Sam
d2c1eb090e Merge pull request #921 from nirnanaaa/postgres-truefalse
removed t's and f's from models
2013-05-30 21:38:26 -07:00
Sam
41187a5de1 Merge pull request #931 from ZogStriP/more-file-upload-test-coverage
added more file uploads test for better coverage
2013-05-30 21:36:33 -07:00
Régis Hanol
6cc0f8f2d4 added more file uploads test for better coverage 2013-05-31 03:13:37 +02:00
Juan de Dios Herrero
807f763fb0 Merge remote-tracking branch 'upstream/master' 2013-05-30 21:42:26 +02:00
DI2uNk
24e32092e7 Refactored two class methods into scopes (to achieve a better 'rails way')
Also added some tests to the methods
2013-05-30 21:21:31 +02:00
Neil Lalonde
b82a5dfd56 Move logic to reject slugs that are just numbers into the slug module 2013-05-30 11:54:02 -04:00
Brian Plexico
0591d5be11 Extract InviteRedeemer from Invite 2013-05-30 11:49:11 -04:00
Neil Lalonde
7d5c313456 Don't allow category slugs that are numbers 2013-05-30 11:09:09 -04:00
Sam
6ad86aa305 read state is now published 2013-05-30 16:49:58 +10:00
Sam
e93b7a3b20 more progress towards live unread and new counts, unread message implemented, still to implement delete messages 2013-05-30 16:49:57 +10:00
Sam
73834370a5 work in progress, live unread and new counts 2013-05-30 16:49:57 +10:00
Sam
33ff87bf44 work in progress, live unread / new counters 2013-05-30 16:49:57 +10:00
Robin Ward
830b93a16b Reduced complexity of admin flags controller, split up into methods, moved reports into model. 2013-05-29 16:49:34 -04:00
nirnanaaa
364113a4d5 removed t and f 's from group model
removed t and f 's from user model as mentioned in #919

removed t's and f's from category model
2013-05-29 22:10:43 +02:00
Neil Lalonde
6abd9ddd2d Add warning on admin dashboard if production env is configured to send email through gmail 2013-05-29 14:00:35 -04:00
Robin Ward
92dc59fba9 Properly assign draft keys to Categories List view. 2013-05-28 21:16:24 -04:00
Sam
46389754d6 Merge pull request #892 from eriko/cas_support
Cas support
2013-05-28 16:13:29 -07:00
Robin Ward
ee319ea7f7 FIX: Issues that didn't show up originally 2013-05-28 15:57:11 -04: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
320b35bf90 Merge pull request #910 from novemberkilo/master
WIP - Reduce complexity of Post#raw_links
2013-05-28 10:07:41 -07:00
Chris Hunt
21a54567ff Extract TopicStatusUpdate from Topic 2013-05-28 09:01:04 -07:00
Erik Ordway
9a409d9440 fix comment and remove url setting as it is not used. 2013-05-28 08:06:18 -07:00
Navin
1d5952a92f Extract analysis type methods to a module and refactor Post#raw_links 2013-05-28 16:41:18 +02:00
Chris Hunt
54a798eb12 Add Topic#age_in_days for determining age of topic 2013-05-27 18:02:15 -07:00
Sam
d2f2a8e218 refactoring 2013-05-28 09:13:53 +10:00
Robin Ward
62a20f5655 FIX: Couldn't access "Uncategorized" category from category list. 2013-05-27 14:15:52 -04:00
Neil Lalonde
b1ef2ea1e1 Fix TopicPostersSummary when a suggested topic includes a user who has been deleted 2013-05-27 14:12:15 -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
Robin Ward
e1781240a6 Merge branch 'refactoring' of git://github.com/mattvanhorn/discourse
Conflicts:
	lib/text_sentinel.rb
2013-05-27 10:42:20 -04:00
Robin Ward
a15910ad1e Merge pull request #899 from chrishunt/chrishunt/extract-topic-posters-summary
Extract topic posters summary
2013-05-27 06:30:58 -07:00
Sam
bf16b4f381 Merge pull request #903 from chrishunt/chrishunt/extract-post-move
Extract post move
2013-05-26 19:10:50 -07:00
Chris Hunt
6024529f81 Extract PostMover from Topic into its own class 2013-05-26 18:42:04 -07:00
Sam
d84ae80074 Simplify user action make it more idiomatic 2013-05-27 10:22:37 +10:00
Janis Miezitis
f58bcf7fe3 Refactored duplication in user action 2013-05-26 16:07:20 +03:00
Chris Hunt
b8fbac582e Add Topic#url for determining url for a Topic 2013-05-25 17:44:32 -07:00