Commit graph

474 commits

Author SHA1 Message Date
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
Sam
661ddbb158 introduce strong_parameters 2013-05-27 11:06:09 +10:00
Sam
d84ae80074 Simplify user action make it more idiomatic 2013-05-27 10:22:37 +10:00
Chris Hunt
13c4266c74 Allow Chinese characters in Topic titles 2013-05-26 13:56:42 -07:00
Chris Hunt
1ba18318ac Add test to verify posts are moved in transaction 2013-05-25 17:44:32 -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
Chris Hunt
c1841a6c89 Extract Topic#posters_summary 2013-05-24 15:33:45 -07:00
Matt Van Horn
d7817cf314 extract TopicNotifier class from topic 2013-05-24 13:36:33 -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
d1fdc66ca4 FIX: For spam detection, don't count total occurances of links of the same host, but
post count including that host.
2013-05-24 15:20:58 -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
Robin Ward
84bc798afa Merge pull request #891 from GlitchMr/iPhone-casing
Thread title fixer should ignore special cases like iLetter
2013-05-24 07:02:34 -07:00
Sam
9926b0dbc8 staff styling 2013-05-24 13:32:41 +10:00
Sam
ca2dee52db moved comments to the bottom, they are way less intrusive there 2013-05-24 12:48:32 +10:00
Erik Ordway
1575ce7b10 add cas support with a few tests 2013-05-23 13:40:50 -07: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
Neil Lalonde
4492d06a9f Don't send notifications for moderator action posts 2013-05-23 11:42:52 -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
24c25895f0 remove unnecessary title quality tests from topic 2013-05-22 22:56:27 -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
96f8d79e83 Merge pull request #876 from chrishunt/chrishunt/observe-changes-for-topic-users
Trigger UserActionObserver when updating TopicUser
2013-05-21 23:02:27 -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
Chris Hunt
d0bc8c95d3 Trigger UserActionObserver when tracking visit 2013-05-21 20:45:03 -07:00
Chris Hunt
685f4960f1 Trigger UserActionObserver when updating TopicUser 2013-05-21 20:43:43 -07: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
e91ed83586 the private message stream is different to normal streams, improving the ui a bit and collapsing conversations 2013-05-20 16:44:06 +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
18b00d01d0 Merge pull request #859 from lengarvey/user_refactoring
Light refactoring of the User model
2013-05-19 16:41:20 -07: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
Leonard Garvey
3de632f892 Added a spec for staff? and regular? 2013-05-18 18:07:07 +10: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
a80ec535a3 Support for "Select All / Deselect All" while selecting posts to merge / delete. 2013-05-16 16:50:38 -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
04b8cd5c95 consistency check, need to also ensure delete cleans stuff up, maybe make notifications trashable 2013-05-16 17:50:14 +10:00
Sam
eb71e9de24 opening move, don't get rid of green notification till the pm is read
TODO a way to list all unread PMs
2013-05-16 16:37:47 +10: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
Régis Hanol
27dfb7a948 FIX: @username mentions when there are multiple code blocks in a post.
Meta: [All of my internal users show as coming from 127.0.0.1!](http://meta.discourse.org/t/all-of-my-internal-users-show-as-coming-from-127-0-0-1/6607)

This fixes the regular expression used to identify @ inside <code> or <pre> blocks in the `postConversion` hook.
2013-05-16 01:59:07 +02:00
Lee Machin
dadb7eaa23 fix crash caused by incorrect query in scope
setting all categories to be secured led to a blank screen on all pages

use stabby lambda for consistency in class

make the test a little more concise

- move the local assignments into let blocks for
reusability

- remove calls to `to_a`, which aren't needed

- use 'be_empty' instead of '[]' to be consistent
with the other matchers in the test

add a test for the `secured` scope with multiple
secured categories
2013-05-15 22:26:52 +01: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
Robin Ward
be234ce9b9 You can now 'move' the first post of a topic to another topic as a merge. In that
case, the first post is cloned instead of being deleted from the original topic.
2013-05-13 14:07:31 -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
9b33e826f2 clear flags on reply to notify moderators 2013-05-13 11:48:01 +10:00
Sam
98d9f174ae fix spec 2013-05-13 11:07:22 +10:00
Sam
30501e943c fix search 2013-05-13 11:07:21 +10:00
Robin Ward
cf01c98d81 Experimental: Interface to Move Posts to an Existing Topic 2013-05-10 14:55:51 -04: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
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
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
Sam
0f0fd281a8 group progress, never email banned users 2013-05-09 11:34:58 +10:00
Sam
6b536dcde5 work in progress ... groups 2013-05-08 15:20:38 +10:00
Sam
7571152d1d fix issue adding users to groups 2013-05-08 10:32:29 +10:00
Robin Ward
6843ba7ed6 Fix regression: default to JSON type on GET requests. 2013-05-07 17:17:21 -04: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
Neil Lalonde
69be7d0ad1 Change the title Visits to Clicks in referral tables on admin dashboard 2013-05-06 11:56:35 -04:00
Sam
be1ab8b275 automatic group infrustructure 2013-05-06 14:49:56 +10:00
Régis Hanol
392b9696f4 prevent duplicate actions on a post 2013-05-04 02:52:45 +02:00
Sam
3eab0be4a8 deleting posts as an admin was bust 2013-05-03 17:56:23 +10:00
Sam
5ec52bd2e9 :s/moderator?/staff/g ... our naming was kind of crazy, renamed moderator? to staff 2013-05-02 17:22:27 +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
e59ab32210 Merge pull request #800 from goodbrews/imgur-api-v3
Update to Imgur API v3
2013-05-01 21:52:00 -07: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
Neil Lalonde
3c7afeb233 Fix incoming links dashboard data when topic record can't be found 2013-05-01 19:10:31 -04:00
Neil Lalonde
38ed86d0c5 Add reports for IncomingLinks on admin dashboard 2013-05-01 18:12:02 -04: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
08ce46e7ed :s/POST/REPLY/g 2013-05-01 10:52:31 +10:00
Sam
58dbfa1b91 Merge pull request #796 from ZogStriP/fix-shift-clicks-on-links
FIX: shift+click on links
2013-04-30 16:02:24 -07:00
Régis Hanol
ff309cf024 FIX: shift+click on links
Default browser's behavior when shift+clicking was messed up.

This adds the shift key modifier to the list of click modifiers in both
`click_track` and `discourse`.

Also updated & refactored a bit the `click_track_spec`.
2013-04-30 15:48:58 +02:00
Sam
acc4f73ba0 very subtle, autospec was not using inotify if guard was already running 2013-04-30 22:54:52 +10:00
Sam
b25a5a20bb option to strip links from excerpts 2013-04-30 13:25:55 +10:00
Sam Saffron
94a578e4b2 ignore assets
fix runner so it works on mac
get rid of some test warnings
2013-04-30 12:43:59 +10:00
Régis Hanol
017ee7c2da FIX: [security bug] XHR check bypass 2013-04-30 02:34:19 +02: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
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
Ryan Boland
9bc8faeaf2 added rottentomatoes.com onebox 2013-04-28 16:24:03 -04:00
Jonathan Roes
057b4768e6 strip whitespace when changing e-mail addresses
Fixes #778.
2013-04-27 23:03:06 -04:00
Neil Lalonde
1375954fbc Add title tags to dashboard stats to show percent change from previous period 2013-04-26 17:14:03 -04:00
Neil Lalonde
c589b4b187 Add a js spec for admin/report model, and find a bug too 2013-04-26 17:14:02 -04: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
a56a926582 seed fu should not run before the suite, just before fork
we have no seeds.rb so do nothing there
2013-04-26 16:18:55 +10: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
Sam
14f33b80e4 lets not let without a block rspec gets very upset 2013-04-26 16:18:54 +10:00
Sam
37867af1bb track incoming links, amend share link to include user
fix pm styling
2013-04-24 18:05:35 +10:00