Commit graph

340 commits

Author SHA1 Message Date
Neil Lalonde
278ae7e413 Fix exporter spec brokenness in random mode 2013-06-26 17:02:24 -04:00
Régis Hanol
72745d257d provide a way to give a default filename to pasted images in the lightbox overlay 2013-06-26 21:54:08 +02:00
Neil Lalonde
03afe9280d Fix failing import spec with seed 30239 2013-06-26 11:42:52 -04:00
Sam
38abac8877 no idea why, but jenkins does not like this pending spec 2013-06-26 16:38:52 +10:00
Sam
bb0c3302f3 oddly enough having this code in a pending block causes an error in jenkins 2013-06-26 16:28:07 +10:00
Sam
48d7a33157 Flag UI now displays deleted status for post/topic correctly on old flags
Commented out a spec that was failing in order random, with a TODO
2013-06-26 16:18:50 +10:00
Régis Hanol
d3eae56e71 soften the lightbox overlay 2013-06-26 02:44:20 +02: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
Robin Ward
9a19c0d9c4 Fix for multiple paragraph emails with text em-dashes in them (--). 2013-06-25 14:06:05 -04:00
Régis Hanol
52b8e6014b forgot to commit the test 2013-06-24 22:56:03 +02: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
7c726bd235 Merge pull request #1079 from ZogStriP/do-not-lightbox-oneboxed-images
do not lightbox oneboxed images
2013-06-23 22:07:25 -07:00
Régis Hanol
361062d53e do not lightbox oneboxed images 2013-06-24 02:10:21 +02:00
Sam
0b94c3c456 fix all sorts of issues with random spec order
SiteSetting no longer persisted across tests
2013-06-23 13:35:25 +10:00
Sam
251aca3b00 lets not fail in order random 2013-06-23 13:35:25 +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
Sam
e53aa45f54 I think this is more correct, admins/mods should always be able to invite 2013-06-21 16:35:27 +10:00
Robin Ward
0d10b5c9c4 More email receiving logic 2013-06-20 12:38:37 -04:00
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
8e6a903f9b Merge pull request #1046 from house9/admin-user-index-2
extract Admin::UsersController#index to its own query class
2013-06-20 07:52:22 -07:00
Jesse House
e0ff74ead0 extract Admin::UsersController#index to its own query class
- move query to its own class
- use postgres ILIKE case insensitive
- removed duplicated list of trust levels
2013-06-19 13:48:45 -07:00
Régis Hanol
4a17d6dca6 added a rake task to clean orphan uploaded files 2013-06-19 21:51:41 +02:00
Robin Ward
82d1465d18 Ugly Hack: Remove improperly parsed headers from Mail::Message 2013-06-19 12:14:01 -04:00
Robin Ward
8af9952b25 Change all headers to X-Discourse-* instead of Discourse-* 2013-06-18 15:54:02 -04: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
Robin Ward
8acdc18bc8 First stab at polling support for POP3S / reply by email 2013-06-17 16:49:02 -04:00
Régis Hanol
7bdc616040 keep uploads reverse index up to date 2013-06-17 22:46:48 +02:00
Neil Lalonde
876a570e3a Fix to prevent check for all upper case for non-ascii messages 2013-06-17 12:22:50 -04:00
Régis Hanol
510bac4b27 refactored a bit & tested thumbnails creation 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
c11f4456ae cleaned up CookedPostProcessor and improved specs 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
Sam
e603c85fa0 Merge pull request #1032 from Krugloff/patch-1
It maybe worth load pluralizations rules before compile?
2013-06-16 16:58:16 -07:00
Krugloff
c964c5c0d5 Add test for load plurals before precompile 2013-06-16 02:38:28 +04:00
Chris Hunt
4491b1f06f Link hashtags in Twitter onebox 2013-06-13 21:09:37 -07:00
Chris Hunt
b84ee29c43 Link Twitter handles in Twitter onebox 2013-06-13 21:00:47 -07:00
Robin Ward
bd1b4d3130 Include a custom reply address when reply by email is enabled. 2013-06-13 17:00:00 -04: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
Robin Ward
66f5a3f6f6 FIX: Emoji sizes in emails should be done by the EmailStyler 2013-06-13 12:15:05 -04:00
Sam
80f1e9a0d9 Merge pull request #1021 from ZogStriP/less-brittle-specs
less brittle specs to os-specific line endings
2013-06-13 02:27:07 -07:00
Régis Hanol
2e2553c18c less brittle specs to os-specific line endings 2013-06-13 11:09:11 +02: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
Sam
54d8c963d0 fix tests and allow SE onebox to onebox Meta cause I need that for an post I am writing 2013-06-12 12:23:24 +10: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
Robin Ward
ab5507ac06 Merge pull request #1002 from chrishunt/add-stack-exchange-onebox
Add Stack Exchange onebox
2013-06-10 12:38:03 -07:00
Robin Ward
93bbe190c0 Moved Email components into a module 2013-06-10 15:34:10 -04:00
Neil Lalonde
9b1d0baf45 Send a message to moderators when a newuser_spam_host_threshold is exceeded. Send it no more than once per day per user. 2013-06-10 13:17:32 -04:00
Chris Hunt
1fb0b424ed Add Stack Exchange onebox 2013-06-10 09:27:13 -07:00
Robin Ward
68d849419b FIX: Don't email '(user deleted)' posts. Seriously. 2013-06-10 12:02:04 -04:00
Chris Hunt
15efecd536 Remove html rendering test for commit onebox
This is a very brittle test. We want to be able to change our markup
without breaking tests.
2013-06-09 21:32:13 -07:00
Chris Hunt
d741798d9c Add onebox for GitHub pull requests 2013-06-08 11:01:06 -07:00
Michael Brown
bb77d2c38b More entropy for foreign titles
* Treat strings with non-ASCII characters as having more entropy
2013-06-07 14:47:07 -04:00
Robin Ward
1b5ec42173 FIX: Regression where a topic rollback would not properly report errors to the client. 2013-06-07 12:36:37 -04:00
Ian Christian Myers
b61e10f9ad All parameters for #create in PostsController pass through strong_parameters.
We are now explicitly whitelisting all parameters for Post creation. A nice side-effect is that it cleans up the #create action in PostsController. We can now trust that all parameters entering PostCreator are of a safe scalar type.
2013-06-07 01:29:25 -07:00
Robin Ward
b062b4a98e Unapproved users should not receive digest emails. Fixes #974 2013-06-06 11:45:18 -04: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
Robin Ward
6384518599 Allow images in the daily digest for top scoring posts 2013-06-05 18:55:27 -04: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
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
Régis Hanol
01855b70b4 FIX: Have onebox ignore internal links 2013-06-05 20:53:07 +02: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
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
Sam
ef976ba891 fix pending tests 2013-06-03 17:07:44 +10:00
Sam
da22c0f359 omit single quotes from slug 2013-06-03 09:08:34 +10:00
Sam
037cbfd648 Merge pull request #926 from netzpirat/fix-s3-images
Don't append the base url to absolute image urls without protocol.
2013-05-30 21:33:37 -07:00
Sam
d6d3f74405 Merge pull request #901 from xtream/master
Refactored AvatarLookup
2013-05-30 21:30:39 -07: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
Michael Kessler
d2e45cb8fd Don't append the base url to absolute image urls without protocol. 2013-05-30 17:17:07 +02:00
Victor Cruz Dueñas
5d2a6e3994 refactored and tested AvatarLookup
less array copying

Avoid N queries
2013-05-30 11:04:05 +02:00
Sam
8874c9ea75 Add message format support that can be used on complex localization strings
Add message about new and unread topics at the bottom of topics
move localization helper into lib
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
Chris Hunt
e94e9b7621 Set UTF-8 charset for plain text email part 2013-05-29 09:54:36 -07: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
Chris Hunt
13c4266c74 Allow Chinese characters in Topic titles 2013-05-26 13:56:42 -07:00
Matt Van Horn
d5958f8779 Sliding window rate limiting
Switched the algorithm to use a circular buffer
based on a redis list
2013-05-25 12:37:28 -07:00
Robin Ward
1313c0f094 FIX: When using a search context, *prefer* the context's results, don't restrict to only them. 2013-05-24 16:17:09 -04:00
Robin Ward
bd779834e5 Use search context for filtering search results by current category or user 2013-05-24 14:04:26 -04:00
Konrad Borowski
8bc4264c98 Thread title fixer should ignore special cases like iLetter 2013-05-23 21:31:08 +02:00
Robin Ward
8e8d9af2bf Use classes instead of a complicated nested hash for search results 2013-05-23 12:44:47 -04:00
Robin Ward
0bd61df34c Merge pull request #884 from mattvanhorn/refactor_topic
Refactor topic
2013-05-23 07:26:22 -07:00
Matt Van Horn
806255b3c4 refactor Topic validation
introduce a couple of custom validators
fix minor discrepancies in tests
copy I18n error message keys to default location
clean up validation invocation
move some responsibilities out of validator into class
2013-05-22 22:31:52 -07:00
Sam
fcc7192fd2 User tracking state implementation progress for live unread / new counts 2013-05-23 15:22:06 +10: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
Robin Ward
b9a310f4b1 Search Refactor: Let's use a class to keep track of our state rather
than passing params everywhere. Also make the private API private.
2013-05-22 15:22:06 -04:00
Matt Van Horn
872995db57 refactor guardian class for clarity & correctness
introduce NullUser to avoid type-checking
DRY up code
reduce number of multiple returns
remove some redundant/impossible logic branches
add pending test for possible bug
add test & fix for ability to flag archived posts
add #secure_category? method to topic class
Fix bug that prevented flagging of archived topics
Rename NullUser to AnonymousUser
DRY up can_<action>? methods
Fix some ownership logic, and a test, for Guardian
2013-05-22 01:09:34 -07:00
Sam
da6a88634b improve best filter so it properly excludes all admin messages from count as well 2013-05-22 15:14:47 +10:00
Sam
c4d8085fc5 remove moderator status posts from best feed 2013-05-22 15:04:53 +10:00
Jason Kriss
c22435562d fix small typo in search_spec 2013-05-21 05:56:04 -03:00
Sam
b5eff93a9d update message bus to support per client filtering
start work on user_tracking_state
fix can_ban? in guardian
expose protected scopes on topic_query we need
move guardian spec to use build as opposed to creating topics / posts / users
start work on user tracking spec
2013-05-21 16:39:51 +10:00
Sam
80fb20816c get rid of nonsense 404.html
correct 404 handling for invalid pages
2013-05-20 10:29:49 +10:00
Sam
24c997966e Merge pull request #861 from sanderdatema/post_creator
Set created_at manually through PostCreator
2013-05-19 16:34:45 -07:00
Chris Hunt
fb4e5973db Fix spelling mistake in spec doc 2013-05-18 13:11:34 -07:00
Chris Hunt
c2a4f16f24 Show posts for last page when page out of range 2013-05-18 13:11:01 -07:00
Sander Datema
286a06bd4e Set created_at manually through PostCreator 2013-05-18 21:24:29 +02: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
Robin Ward
d554a59102 Support for a new site setting: newuser_spam_host_threshold. If a new user posts a link
to the same host enough tiles, they will not be able to post the same link again.

Additionally, the site will flag all their previous posts with links as spam and they will
be instantly hidden via the auto hide workflow.
2013-05-16 12:19:50 -04:00
Sam
e9ebadb414 Nuke message_bus_observer move to service class and classes
Secure all messages triggered by post creation and all user actions so they don't leak
(meaning, if you have a browser open and secure topics are created you will only get them if you are allowed to see them)
2013-05-16 15:03:16 +10:00
Sam
ef98b60184 disable observers in tests, enable as needed, tests are 20% faster 2013-05-14 11:59:55 +10:00
Robin Ward
fff46cf5aa Can search by URL or ID 2013-05-13 17:07:58 -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
b6bf95e741 speed up startup (avoid loading some gems on startup)
correct group permission leaks
add Discourse.cache for richer caching support
2013-05-13 18:04:03 +10:00
Sam
30501e943c fix search 2013-05-13 11:07:21 +10:00
Régis Hanol
297680c28d FIX: pinned topic excerpt is not properly truncated 2013-05-10 12:28:17 +02:00
Sam
942f168ab6 UI still a tad rough, but we have a first pass of secure categories 2013-05-10 16:47:47 +10:00
Sam
4f328e3e45 +x on files makes no sense unless they really are executable
rails in the script dir makes no sense, use binstubs or bundler instead
2013-05-09 17:35:15 +10:00
Neil Lalonde
f9a82f3aa0 Add a spec for category list with empty category 2013-05-07 15:52:45 -04:00
Neil Lalonde
8e24a608b0 Show empty categories on categories page to people people who can edit and delete categories 2013-05-07 15:31:56 -04:00
Sam
e9fc272db7 remove acts_as_paranoid, use .trash! , .recover! and .with_deleted as needed
makes upgrading to rails 4 possible
2013-05-07 14:39:01 +10:00
Sam
3eab0be4a8 deleting posts as an admin was bust 2013-05-03 17:56:23 +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
David Celis
6be26f5316 Update to Imgur API v3
Version 2 of Imgur's API is deprecated. Their documentation for v2 is no
longer online, and applications can only be registered under version 3.
Version 3 of their API has a slightly different endpoint but, more
importantly, uses a Client ID/Secret pair instead of an API Key.

This PR updates Discourse to use the new version of Imgur's API.

Signed-off-by: David Celis <me@davidcel.is>
2013-05-01 21:39:10 -07:00
Sam
e4a76812a6 this is a slightly round about way of making our self oneboxes sane
shrunk avatar to 60px, added global whitelisting
2013-05-01 16:38:13 +10:00
Sam
b25a5a20bb option to strip links from excerpts 2013-04-30 13:25:55 +10:00
Neil Lalonde
eb151d440b Don't call discourse hub during user destroy if hub integration is disabled 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
Ryan Boland
9bc8faeaf2 added rottentomatoes.com onebox 2013-04-28 16:24:03 -04:00
Sam
eb085beea8 attempt to fix the UTF-8 warn in the log, turns out this runs really deep, when you hit deliver in test it clones the mail not setting charset properly, leaving as is for today but fixing prod at least 2013-04-26 16:18:54 +10:00
Jeff Atwood
b64a4100fa change "visitor" trust level to "new user"
I blame me for this mistake.. visitor means other stuff in practice. New
User is correct meaning.
2013-04-17 16:11:24 -07:00
Régis Hanol
e76f629df8 Text Cleaner now removes all periods from the end of the title 2013-04-18 00:19:42 +02:00
Sam
437142424c speed up tests, fix notification of mentioned users in pms 2013-04-17 17:39:18 +10:00
Neil Lalonde
3b6aeb14c7 Add subtype to topics to classify private messages 2013-04-16 16:56:18 -04:00
Régis Hanol
c2e58b61c9 automatically resizes images 2013-04-15 23:32:26 +02:00
Régis Hanol
b24c1a1ad9 better consistency around email case sensitivity 2013-04-15 02:20:33 +02:00
Neil Lalonde
c6ab9fec9d Unregister forum membership at Discourse Hub when deleting a user 2013-04-15 14:52:07 -04:00
Neil Lalonde
651cfba93f Add ability to destroy a user with 0 posts 2013-04-12 16:53:00 -04:00
Régis Hanol
c5cf8be864 auto replace rules in titles 2013-04-10 11:00:50 +02:00
Sam
33e3ad1603 clean up onebox application so it uses a single code path
use fragments for oneboxes
strip parent <p> if <div> is in it
clean some tests
2013-04-10 17:52:38 +10:00
Michael Scott Shappe
2fb673dd72 Create and use new rspec matcher 'match_html'
This introduces match_html, which converts actual and expected HTML strings into "canonical" HTML using Nokogiri with NOBLANKS and COMPACT, and then does a simple equality comparison.

This eliminates whitespace differences introduced by library changes (e.g. the libxml2 2.9.0 change).

pretty_text_spec.rb has been changed to use match_html where appropriate. and all tests pass under libxml2 2.7.6, 2.8.0 or 2.9.0
2013-04-09 22:30:10 -05:00
Robin Ward
00f9e628e0 Don't apply markdown to content of [quote] -- it messes up spacing. 2013-04-09 17:32:50 -04:00
Régis Hanol
d080ae4d2d don't track links in oneboxes 2013-04-08 02:24:12 +02:00
Robin Ward
a14f62766e Replace MultisiteI18n hack with SiteContent and admin editing. 2013-04-05 16:48:15 -04:00
Robin Ward
cecdafd4e8 Fixes broken spec 2013-04-05 16:27:25 -04:00
Robin Ward
af9b27358c If an admin or moderator edits a visitor's post, the restrictions should be based
on the *editors* access rights, not the original poster.
2013-04-05 13:59:00 -04:00
Sam
4fbf017272 get regular trust level going, self heal inconsistent topic timings 2013-04-05 15:30:28 +11:00
Robin Ward
738789f336 Admins can't lock themselves out of a site by setting approval. 2013-04-03 12:23:28 -04:00
Régis Hanol
cf3eb98321 add GitHub commit onebox 2013-04-03 03:36:38 +02: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
Sam
2295290383 added best=N option to get N best comment on a post 2013-03-27 22:53:11 -07:00
Robin Ward
36269cfbaa Rename 'popular' to 'latest'. First stab at 'Hot' tab. 2013-03-27 16:21:23 -04:00
Robin Ward
f1e2923a91 Display correct post counts, even with a filter active 2013-03-26 15:06:23 -04:00