Comments (9)
Oh, I instantly remembered what I forgot: there are still a few accounts floating around from the days of pre-closed-beta that have an init_bdate of 0000-00-00. Because there definitely weren't any three-year-olds creating accounts in pre-closed-beta in 2008/2009 -- it was all folks who were working on the code -- just put in an exception for the purpose of this check that any account with an 0000-00-00 init_bdate should be considered over 18 (and thus not able to DM accounts with an init_bdate under 18).
from dreamwidth.
Should someone over 18 be allowed to see (in their inbox) messages to and from someone under 18 exchanged before this change was pushed? Delete them?
Should someone under 18 be allowed to see (in their inbox) messages to and from someone over 18 exchanged before this change was pushed? Delete them? (There may be reasons for the answers to these 2 questions and the 2 above to differ, eg for law enforcement purposes.)
Should someone who turns 18 then be allowed to message someone already over 18?
Since the init_bdate is only precise to the day and doesn't include a timezone, should 2 people born on the same date (whether in the same timezone or not) both treated the same on the day they turn 18, even though there may be almost 50 hours between their births, without it being possible to say who is older, or should that be disallowed to be on the safe side?
from dreamwidth.
Should someone over 18 be allowed to see (in their inbox) messages to and from someone under 18 exchanged before this change was pushed? Delete them?
Leave already extant messages in the inbox, but make them unreplyable until both parties are over 18.
Should someone under 18 be allowed to see (in their inbox) messages to and from someone over 18 exchanged before this change was pushed? Delete them?
Yes, same as previous: leave already extant messages in the inbox, just make them unreplyable until both parties are over 18.
Should someone who turns 18 then be allowed to message someone already over 18?
Yes, once the init_bdate makes you over 18, you should be able to interact with people who are already over 18 -- this shouldn't be a permanent "you made your account while you were under 18, so your account will forever be limited", just a way of keeping people currently over 18 from private messaging people currently under 18 and vice versa.
Since the init_bdate is only precise to the day and doesn't include a timezone, should 2 people born on the same date (whether in the same timezone or not) both treated the same on the day they turn 18, even though there may be almost 50 hours between their births, without it being possible to say who is older, or should that be disallowed to be on the safe side?
We don't need to get that fine-grained about it -- a day or two on either side isn't an issue. (This isn't for compliance with a specific law yet -- all the ones that would introduce this as a legal requirement have been stayed on constitutional grounds -- just a way of bringing some of our features more up to parity with the current zeitgeist.) "is today equal to or greater than the init_bdate + 18 years by server time" is close enough for a check.
from dreamwidth.
https://github.com/dreamwidth/dreamwidth/blob/main/cgi-bin/LJ/User/Message.pm#L300 (can_receive_message)
https://github.com/dreamwidth/dreamwidth/blob/main/cgi-bin/LJ/User/Age.pm#L164 (init_age)
from dreamwidth.
Also noting that the adult interstitial uses best_guess_age (init_age with fallback on age) instead, but the spec above precludes doing that.
from dreamwidth.
We should be able to use that, just add the check for the few accounts that somehow managed to not get an init_bdate set. (Or I suppose I could get somebody to check on how many accounts were affected and contact them to set one if it's not that many.)
from dreamwidth.
nod I think I'm going to write tests for can_receive_message as a first step. (Do you want that in a separate PR?)
from dreamwidth.
I will defer to @kareila and @zorkian but I'd be fine with it in one!
from dreamwidth.
OK for single PR (which will only contain age-based testing - calling testing for other restrictions out of scope for this) since they haven't replied.
from dreamwidth.
Related Issues (20)
- add noindex tags to support/see_request.bml HOT 1
- remove IE8 specialcasing in common.tt? HOT 1
- @user mentions for youtube accounts are incorrectly formatted and the links do not work
- add a confirmation interstitial to future-dated orders
- make it possible for a shop admin to adjust the delivery date of an order
- handle RSS parser errors generated by newer feeds
- update year in site footer to 2024 HOT 1
- increase comment HTML stripping to foreclose pagebreaking attacks HOT 1
- success page title for admin pages should include what page they are
- make the invalid form error less annoying on the admin console
- Revamp communit create process to include presets
- Style the Details Summary tag's triangle to get the pointer cursor HOT 1
- Embeddings on Mastodon show a captcha request HOT 1
- escaped HTML for a diacritics in cut tag renders as unknown Unicode HOT 1
- 'work as' dropdown on customize style page doesn't keep selection
- YouTube profile URL format needs update
- allow embeds from sendvid.com
- add sysban type: OpenID login source HOT 8
- community admins should not get the "can't buy premium paid time for a paid account" message for their comms
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dreamwidth.