the-algorithm/tweetypie/server/src/main/scala/com/twitter/tweetypie/handler/U13ValidationUtil.scala
twitter-team 01dbfee4c0 Open-sourcing Tweetypie
Tweetypie is the core Tweet service that handles the reading and writing of Tweet data.
2023-05-19 16:20:06 -05:00

22 lines
736 B
Scala

package com.twitter.tweetypie.handler
import com.twitter.compliance.userconsent.compliance.birthdate.GlobalBirthdateUtil
import com.twitter.gizmoduck.thriftscala.User
import com.twitter.tweetypie.thriftscala.DeletedTweet
import org.joda.time.DateTime
/*
* As part of GDPR U13 work, we want to block tweets created from when a user
* was < 13 from being restored.
*/
private[handler] object U13ValidationUtil {
def wasTweetCreatedBeforeUserTurned13(user: User, deletedTweet: DeletedTweet): Boolean =
deletedTweet.createdAtSecs match {
case None =>
throw NoCreatedAtTimeException
case Some(createdAtSecs) =>
GlobalBirthdateUtil.isUnderSomeAge(13, new DateTime(createdAtSecs * 1000L), user)
}
}