joshua stein
cbc1c50cd2
add user banning/unbanning from user view page
2015-07-24 00:51:11 -05:00
joshua stein
38ac6a4c3f
Story: halve comment score weights in hotness
2015-07-24 00:51:11 -05:00
joshua stein
5989e9c808
Story: fix up bogus chars in title before saving, only 160 for now
2015-07-24 00:51:11 -05:00
joshua stein
db63d22b83
use identicon for blank gravatars, makes conversations easier to follow
2015-07-24 00:51:11 -05:00
joshua stein
6eca2ed75d
set ceiling for traffic counter
2015-07-24 00:51:11 -05:00
joshua stein
92c2e85b0a
move folding to left side of username, move text to css
2015-07-24 00:51:11 -05:00
joshua stein
6cc5f196bf
Tag: remove accessible_to, use valid_for?
...
They do the same thing now but a scope might be too limited in the
future so just pick one now.
Closes #100
2015-07-24 00:51:11 -05:00
joshua stein
434ad81752
Story: do url validation case insensitively
2015-07-24 00:51:10 -05:00
BennyHallett
4ddfaa8964
Fixes #181 . Add comment folding as decribed in: https://lobste.rs/s/m5dlun/comment_folding
2015-07-24 00:51:10 -05:00
joshua stein
c04c752648
always color story a:visited
2015-04-28 09:52:44 -05:00
joshua stein
c2442a5881
add comments rss feed
...
The RSS view was already here but never setup in a controller.
Closes #202
2015-04-28 09:51:50 -05:00
joshua stein
8f8ad57135
export a json version of user page, include karma and about text
2015-04-09 21:05:50 -05:00
joshua stein
4b3a9ec2e9
move avatars after username
2015-04-09 20:59:20 -05:00
joshua stein
88602f7535
StoriesPaginator: make per_page configurable
2015-04-03 12:58:14 -05:00
joshua stein
fdf892e7f9
move user unread message count into a scope
2015-04-03 12:57:12 -05:00
joshua stein
97c70d3efc
don't do css link header hack in development
2015-04-01 01:05:50 -05:00
joshua stein
18e027feb9
add a short id redirector for comments
2015-04-01 01:02:22 -05:00
joshua stein
e9f005d83b
User: a few more reserved usernames
2015-04-01 01:02:01 -05:00
joshua stein
168d9bfec3
story list: break up long words in titles and domains with <wbr>
2015-03-21 21:56:34 -05:00
joshua stein
21f3334155
moderations: fix table column widths
2015-03-19 12:11:05 -05:00
joshua stein
e974083413
Story: inactive tags that are marked for destruction are ok
2015-03-19 12:10:52 -05:00
joshua stein
26f17ae928
User: add some banned usernames from a long-ago comment by @kevinburke
2015-03-19 12:10:18 -05:00
joshua stein
cb850bd9e6
recent comments: hide comments on user's hidden stories
...
closes #142
2015-03-13 00:31:34 -05:00
joshua stein
ab00313b20
css: shrink the page width a little
2015-03-13 00:15:46 -05:00
joshua stein
921bbc4179
css: align top-level comments with the story
2015-03-13 00:15:46 -05:00
joshua stein
d286eab325
add option to show user avatars on stories and comments
...
just because
2015-03-12 23:23:15 -05:00
joshua stein
6734436e8c
search: show when there are 0 results
2015-03-11 10:29:41 -05:00
joshua stein
6695480fdb
when auto-detecting story titles, try to find a canonical url and use it
...
should remedy duplicate stories being submitted under all of their
stupid blogspot.* domains instead of the canonical url represented
in the <link> tag
2015-03-10 17:41:40 -05:00
joshua stein
491a3d57e8
layout: print flash[:notice] as well
2015-03-10 17:40:57 -05:00
joshua stein
966579e596
Search: more sphinx chars to escape
2015-03-10 17:07:15 -05:00
joshua stein
9d8defb228
mobile css: remove div.d left margin
2015-03-10 17:06:56 -05:00
joshua stein
620389ab95
add /u/?moderators=1 to list all moderators and admins
2015-02-23 16:56:06 -06:00
joshua stein
fd00205625
for admins, show some private info about users in user profiles
2015-02-17 11:47:27 -06:00
joshua stein
976eb522e8
Hat: provide a destroy method that can log a moderation
2015-02-17 11:47:26 -06:00
Karl McGuire
df13d877e6
fixed tab
2015-02-17 12:38:53 -05:00
Karl McGuire
6f04c594d6
drove me insane
2015-02-17 12:37:18 -05:00
joshua stein
7f3adc0e9d
fix some fallout from previous
2015-02-13 11:26:28 -06:00
joshua stein
f9b309d342
separate story hiding from voting
...
A story downvote is considered a flag, just meaning the story has
problems and not necessarily that the user wants to ignore it. By
moving hiding out of Vote and into a new HiddenStory model, a user
can now both downvote/flag and hide separately, or just one or the
other.
2015-02-11 11:37:03 -06:00
joshua stein
fe159cc3f7
try a speed hack using a Link: header for the stylesheet
...
probably only works in firefox though
2015-02-11 10:58:34 -06:00
joshua stein
7d15b5db6d
tldr, didn't comment
2015-02-09 23:11:25 -06:00
joshua stein
270401db3f
comment: show downvote summaries to moderators
2015-02-07 12:23:51 -06:00
joshua stein
975e35d006
Search: escape @, it has special meaning to sphinx
2015-02-05 09:55:41 -06:00
joshua stein
8771afc5f5
try a bit harder at finding a submitted story's real title
...
Ignore the title presented by the user unless we couldn't find
anything, but start out by fetching the URL and trying some <meta>
tags first, then <title>, then use the title the user brought.
2015-02-03 11:20:07 -06:00
joshua stein
a16150d8a5
allow searching stories by domain, link domain in story list to such a query
2015-01-29 10:16:46 -06:00
joshua stein
00d347c4f4
consolidate sql fragment to cast story/comment score
2015-01-28 15:02:40 -06:00
joshua stein
1eb9413f8a
user tree: show newest 10 users
2015-01-27 12:14:26 -06:00
joshua stein
bf928cf62b
Story: take hotness window back down to 36, 48 is a bit stale
2015-01-27 12:14:26 -06:00
joshua stein
c94fd60f77
draw hats a bit higher up
2015-01-27 12:14:26 -06:00
Curtis McEnroe
c3d44280d3
Add explanation of traffic number in logo title
...
Since it keeps getting asked: https://lobste.rs/s/gve5zg/why_does_the_lobsters_l_icon_change_color
2015-01-26 14:05:15 -05:00
joshua stein
e2afb9153c
fix deleting messages sent to ones self
2015-01-15 13:23:31 -06:00
joshua stein
31df8973a8
Pushover: switch to subscriptions
...
users.pushover_device and users.pushover_sound columns can be
dropped once migrated
2015-01-15 13:23:31 -06:00
joshua stein
f1cfe29b1f
fix initial story hotness
...
Initial story hotness was zero, which excluded stories with no other
upvotes from the homepage. Before creating, define initial hotness
to something.
Since this now makes very new stories show up on the homepage right
away, expand the window back to 48 hours.
This requires a Story.recalculate_all_hotnesses! to properly sort
things.
2015-01-13 13:00:55 -06:00
Jordi Gutiérrez Hermoso
593222dacb
Give textareas a default background colour.
...
My default background colour for textareas is inherited from my OS
colours, which is a dark grey. Thus setting a foreground colour
without setting a background colour makes it impossible for me to type
in textareas. This patch should fix that.
2015-01-12 10:21:14 -05:00
joshua stein
d01e9f3c3f
better links for search result pagination
...
closes #69
2015-01-11 12:59:42 -06:00
joshua stein
4b768e2f42
Search: clamp results to Sphinx's max_matches
...
Otherwise this will annoyingly raise an exception when fetching
results if offset exceeds max_matches
2015-01-11 12:59:41 -06:00
joshua stein
2c3b155862
disclose per-tag hotness modifiers
2015-01-06 17:31:45 -06:00
joshua stein
88709b5d04
move story tagging sorting into a function
2015-01-06 17:31:44 -06:00
joshua stein
d2e06ed127
css: color media tags blue, add announce to red tags
2015-01-06 17:31:44 -06:00
joshua stein
9c73c87d28
add story cache showing for manually-specified unavailable stories
2015-01-06 17:31:09 -06:00
joshua stein
5efe3ce6c3
make time_ago_in_words_label actually do what was intended
2015-01-06 14:08:15 -06:00
joshua stein
624096a481
use _path instead of _url in a few redirect_to's
2015-01-02 18:33:13 -06:00
joshua stein
9f5e04bbba
use _path for most things instead of _url
...
Instead of hard-coding the scheme and host everywhere, use _path
methods to show relative URLs.
Except that our previous setting of
Rails.application.routes.default_url_options in
config.after_initialize made this moot because Rails inserts that
host into all _path helpers for some reason. So revert that
setting.
But then anything that wants an absolute URL doesn't know the
hostname and the root_url helper throws an exception. So make a
Rails.application.root_url shortcut to pass the per-app settings in
Rails.application to root_url.
Now we can just use _path helpers most places but still use _url
ones where we need them, such as in RSS views and e-mail templates.
2015-01-02 17:02:55 -06:00
joshua stein
439f5702ee
show a byline for for merged stories
2015-01-01 18:54:26 -06:00
joshua stein
3e5473229d
fix code line height in comments
2015-01-01 10:25:36 -06:00
joshua stein
c151fbeeb8
better tag hotness mod calculation
2015-01-01 10:25:14 -06:00
joshua stein
1cc16ecfbf
tweak code formatting
2014-12-15 15:06:53 -06:00
joshua stein
606f5c9849
experiment with factoring comment scores into story hotness
...
might keep an active story alive on the front page and bury a story
with a "comment graveyard"
2014-12-15 15:06:53 -06:00
joshua stein
73f93ba09d
cater to chrome on android
2014-12-15 15:06:53 -06:00
joshua stein
5c1cc0ae38
Hat: if link isn't a url, don't href to it (probably shouldn't call it link then)
2014-12-15 15:06:53 -06:00
Serge Paquet
a1f5052f99
fix cancel button in comment forms
2014-12-14 01:24:18 -05:00
joshua stein
ddb9215aa0
log a moderation when hats are granted, since we're open and all that
2014-11-15 09:52:29 -06:00
joshua stein
31d4e97858
implement hats
...
https://lobste.rs/s/bkeYe9/about_lobsters/comments/ZD2tL3#c_ZD2tL3
2014-11-14 14:12:29 -06:00
joshua stein
4b0caa2752
fix display of comment box after editing and posting
...
should close #178
2014-11-14 14:02:16 -06:00
joshua stein
d6447ac249
comment view: ignore multiple clicks on "reply" link
2014-11-14 13:49:00 -06:00
joshua stein
f161af71b1
minor spacing nit
2014-11-14 12:48:00 -06:00
joshua stein
5b94406640
Comment: include page anchor in urls
2014-11-14 12:46:09 -06:00
joshua stein
c95ac10ad9
show green usernames for new users in story lists too
2014-11-07 13:42:33 -06:00
joshua stein
9e8b89be1c
cast story.{upvotes,downvotes} to signed on mysql, integer on postgres
...
old mysql doesn't support 'cast(1 as integer)', but new/mariadb does
postgres doesn't support 'cast(1 as signed)'
should fix #145
2014-10-06 14:07:53 -05:00
joshua stein
5497fbd7bb
allow disabling public invitation requests through a setting
2014-10-03 17:19:00 -05:00
joshua stein
b7ede71b31
on home page, show site title instead of "Home"
2014-10-03 17:17:46 -05:00
joshua stein
09bd0026d3
ignore a story's submitter's comments when calculating hotness
2014-09-16 10:53:25 -05:00
joshua stein
d5474de775
add short ids into search indicies
2014-09-12 10:42:22 -05:00
joshua stein
dfe6db4849
revert 85cb7c20
, give up on planet rss aggregation
2014-08-31 20:35:41 -05:00
joshua stein
962b7e8d59
add per-tag story hotness modifiers
2014-08-31 20:27:54 -05:00
joshua stein
e252d2d66e
StoryRepository: positive_ranked should end at -1
2014-08-25 17:57:26 -05:00
joshua stein
6329041ee8
tweak page title for /upvoted
2014-08-17 19:10:32 -05:00
joshua stein
e3f6a4edd8
Merge pull request #163 from walle/upvoted_fix
...
add /upvoted page to show a logged-in user's upvoted stories
2014-08-17 19:09:04 -05:00
joshua stein
64bdb6f446
Merge pull request #167 from walle/issue_140
...
fix some after-comment issues
2014-08-17 19:07:46 -05:00
joshua stein
ebdea913bf
Merge pull request #168 from walle/issue_128
...
Add cancel button to comment editing.
2014-08-17 19:05:02 -05:00
joshua stein
13de40df34
order newest stories by id, not created_at
...
same order (most likely) but id has an index on it and created_at
will need a full table scan
2014-08-17 18:58:45 -05:00
Fredrik Wallgren
2ffe322f64
Rename by_user to newest_by_user and sort accordingly.
2014-08-17 14:18:23 +02:00
Fredrik Wallgren
ee8b50f9c0
Add cancel button to comment editing.
...
This should fix issue #128 .
2014-08-16 18:37:36 +02:00
Fredrik Wallgren
9a774d082d
Let the comment form remain when posting a top-level comment.
2014-08-16 16:47:24 +02:00
Fredrik Wallgren
94716a0dcb
Fix comment preview length bug.
2014-08-16 16:27:11 +02:00
Fredrik Wallgren
ab8f8f3a72
Add upvoted route.
...
Upvoted route shows all stories a logged in user have upvoted
in reverse chronological order, latest upvote first.
It is not shown in the gui, but reachable at /upvoted.
2014-08-16 00:27:18 +02:00
joshua stein
bdbfedfb23
for normal requests to /login, save the referrer and redir back there
...
properly closes #164
2014-08-08 10:31:06 -05:00
joshua stein
243b29240a
when redirecting to /login, save the url and params to redirect back to
...
closes #164
2014-08-08 10:16:06 -05:00
joshua stein
85cb7c2057
first stab at planet rss aggregation
...
could probably use a prettier layout and auto-posting a weblog url
to the main site (carrying tags)
2014-08-03 22:07:57 -05:00
joshua stein
b70ec7a44e
story list detail: put all media tags first, not just pdf
2014-08-03 22:07:57 -05:00
joshua stein
8a3b133d87
style/wrapping
2014-08-03 22:07:56 -05:00
Andrey Chernih
fc52db5424
Refactor HomeController
2014-07-09 22:25:39 +04:00
joshua stein
8958ce76c2
for direct-comment links, just use an anchor instead of js to scroll
...
closes #156
2014-07-03 11:25:30 -05:00
joshua stein
270939b5a4
Story: return true from recalculate_all_hotnesses!
...
this is usually called from the console, and true is better than a
giant array of every Story object
2014-07-02 10:09:03 -05:00
joshua stein
452c75908d
change story downvoting to be called "flag", but still count as a downvote
...
been in production for a while
2014-07-02 10:04:48 -05:00
joshua stein
416a5de6e4
fade out downvoted comments less dramatically
2014-06-30 17:13:07 -05:00
joshua stein
9554423d4f
tag pages should be ordered by created_at, not hotness
2014-06-30 11:56:40 -05:00
joshua stein
78f4da6699
Search: escape " when sending to sphinx
2014-06-24 20:08:15 -05:00
joshua stein
013662e50b
only show comment downvote summary if its total score is <= 0
...
when a comment has a few upvotes and one downvote, users tend to
focus too much on the one downvote and edit or reply and debate the
downvote. if more upvoted than downvoted, don't discourage the user
by pointing out the haters
2014-06-11 19:35:37 -05:00
joshua stein
f3f10de295
bingbot is a bot too
2014-06-11 19:34:41 -05:00
joshua stein
023f8282ea
as noted earlier, URI.parse is not very lenient
...
trying to use it in Story#domain but not in validate can ruin things
2014-06-05 07:54:48 -05:00
joshua stein
56774913c0
Story: experiment with making comment counts affect hotness
2014-05-06 21:32:17 -05:00
joshua stein
9c9e7943f1
markdown help: mention backticks
2014-05-06 21:32:08 -05:00
joshua stein
2939e18172
story edit: always show merge field for moderators
2014-05-06 21:29:45 -05:00
joshua stein
09f113c66a
grammar
2014-05-06 21:29:45 -05:00
joshua stein
1af0edd268
add a flat version of the user tree, ordered by karma
2014-05-06 21:29:45 -05:00
joshua stein
33c204e5ca
mention that moderators can see invitation emails
2014-05-06 21:29:45 -05:00
joshua stein
664e3c77e2
when not logged in, show comment box but disabled
2014-05-06 21:29:44 -05:00
joshua stein
aab34a9936
embed timestamp in password reset token, only work for 24 hours
2014-04-15 00:46:14 -05:00
joshua stein
993e1e84ae
when not logged in, show comment box but disabled
2014-04-14 23:14:08 -05:00
joshua stein
e152574003
ModerationsController: fix pagination
2014-04-13 22:40:11 -05:00
joshua stein
73b8df5eb7
implement story merging
...
closes #137
2014-04-08 17:51:12 -05:00
joshua stein
9d2253a010
heavily downvoted stories should never be on the home page
2014-04-06 20:43:16 -05:00
joshua stein
3f67827b09
add some explanatory text on /recent
2014-04-06 20:26:50 -05:00
joshua stein
025558f6ad
add support for /top and things like /top/3m and /top/2w
...
not linked to from anywhere yet
closes #95
2014-04-03 13:20:24 -05:00
joshua stein
3993e10109
HomeController: sort methods
2014-04-03 10:26:10 -05:00
joshua stein
9848cf5e47
Story: export tags in json view
...
closes #143
2014-04-03 10:23:37 -05:00
joshua stein
eec85db1f8
bump up max edit times for stories and comments
...
not really any harm in letting people correct mistakes
2014-04-02 13:14:08 -05:00
joshua stein
7fb75af7fe
simplify Story.find_similar_by_url arel, only pull undeleted stories
2014-03-28 10:45:01 -05:00
joshua stein
f647e62f5f
constrain textarea resizing to vertical
2014-03-24 18:54:52 -05:00
joshua stein
bb9c9c5353
don't include hiders in story vote summary
2014-03-24 10:26:07 -05:00
joshua stein
6f30d99581
shrink story hotness window to 24 hours
2014-03-24 10:26:07 -05:00
joshua stein
c09542a80a
enforce a maximum username length of 25
2014-03-24 10:26:07 -05:00
joshua stein
7f9c227ed0
bring back story downvoting, remove low quality option
...
story hiding is still here, so hopefully this will result in less
bogus story downvotes
2014-03-24 10:26:06 -05:00
joshua stein
00eda60fdc
Story#is_downvotable? is gone
2014-03-14 18:55:46 -05:00
joshua stein
8b60e5fd63
show story hider count on story detail page
2014-03-13 10:51:12 -05:00
joshua stein
ed71fd8d61
auto-apply slides tag to speakerdeck.com
2014-03-12 18:32:03 -05:00
joshua stein
af24e4e388
if a user has had a story moderated in the past 5 days, show guidelines
2014-03-12 17:52:52 -05:00
joshua stein
7f2c98860d
swap out /newest link for /recent
2014-03-12 17:51:42 -05:00
joshua stein
6cab668a2f
simplify rss <link> generation
2014-03-12 17:50:51 -05:00
joshua stein
efe1353b87
update a user's unread message count after bulk-delete
...
only count messages that are both unread and undeleted
2014-03-06 15:27:13 -06:00
joshua stein
285fd82c16
check story tag permissions on editor, not creator
2014-03-06 13:54:30 -06:00
joshua stein
d729d0ad99
move story voter arrow down and tighten up list since downvote is gone
2014-03-03 22:03:21 -06:00
joshua stein
9535b05490
remove story downvoting, add story hiding
...
stories should either be reported for spam (coming later), upvoted,
or left alone rather than being downvoted for being uninteresting.
since users don't like leaving uninteresting things alone, they can
now hide stories from their view without affecting the story's
score.
hiding is implemented as a Vote with its vote set to 0 and the
reason set to "H"
add a /hidden url which shows all of a user's hidden stories
while i'm here, simplify Vote guts and add some tests to make sure
all the flip-flopping stuff works right
2014-03-03 17:20:21 -06:00
joshua stein
99c551cbfe
move initial upvote of submitted story to Story model
2014-03-03 17:13:00 -06:00
joshua stein
87d4b8797f
story submission: link to previously submitted url for recent stories
...
if there is only one error and the story has a already_posted_story,
show a custom error dialog that links to that story. if there are
other errors, show the standard error dialog.
closes #135
2014-02-21 11:56:43 -06:00
joshua stein
888c80eb83
reserve "moderator" and "moderators" usernames
2014-02-21 11:41:47 -06:00
joshua stein
3a60d3abba
show story downvoting usernames to moderators to detect problems
...
such as voting rings or users downvoting things instead of filtering
tags
2014-02-21 11:29:19 -06:00
joshua stein
57748f9839
message view: show admin/moderator status of sender
2014-02-21 11:20:35 -06:00
joshua stein
95202f21b2
add Tag.active scope to deprecate tags without removing them
2014-02-21 10:57:30 -06:00
joshua stein
d75242f646
tweak story submission guidelines
2014-02-21 10:57:30 -06:00