summaryrefslogtreecommitdiffstats
path: root/lib/ASM/DB/ResultSet/User.pm
diff options
context:
space:
mode:
authorLibravatarJanik Kleinhoff <ilbelkyr@shalture.org>2017-05-08 02:06:38 +0000
committerLibravatarJanik Kleinhoff <ilbelkyr@shalture.org>2017-05-08 02:25:18 +0000
commit7342c7f0e19e15ab3c7ba2133a56393c15989f08 (patch)
tree5e00a9c2a3164bd49d18ded9263f1ea7ae99d7f6 /lib/ASM/DB/ResultSet/User.pm
parent62d8fcde1c6dc5be2f535f6fcffa1afd838b62bd (diff)
Move users to DB
Summary: This will automatically take care of migrating the users from users.json; you may delete that file. Note that this removes htpasswd support. We now store (hashed) user passwords in the database. See T19 for rationale. Test Plan: Run this on a testnet for a while, try to break it. Reviewers: ilbelkyr, #antispammeta Reviewed By: ilbelkyr, #antispammeta Tags: #antispammeta, #database Differential Revision: https://dev.antispammeta.net/D2
Diffstat (limited to 'lib/ASM/DB/ResultSet/User.pm')
-rw-r--r--lib/ASM/DB/ResultSet/User.pm23
1 files changed, 23 insertions, 0 deletions
diff --git a/lib/ASM/DB/ResultSet/User.pm b/lib/ASM/DB/ResultSet/User.pm
new file mode 100644
index 0000000..68c0871
--- /dev/null
+++ b/lib/ASM/DB/ResultSet/User.pm
@@ -0,0 +1,23 @@
+use utf8;
+
+package ASM::DB::ResultSet::User;
+
+use strict;
+use warnings;
+
+use parent 'DBIx::Class::ResultSet';
+use namespace::autoclean;
+
+sub by_name {
+ my ( $self, $name ) = @_;
+
+ return $self->find( { name => $name }, { key => 'uniq_user_name' } );
+}
+
+sub by_name_or_new {
+ my ( $self, $name ) = @_;
+
+ return $self->find_or_new( { name => $name }, { key => 'uniq_user_name' } );
+}
+
+1;