burguillos.info/lib/BurguillosInfo/Schema/Result/ConquerUser.pm

60 lines
1.4 KiB
Perl
Raw Normal View History

2023-11-17 23:16:54 +01:00
package BurguillosInfo::Schema::Result::ConquerUser;
use v5.36.0;
use strict;
use warnings;
use parent 'DBIx::Class::Core';
2023-11-19 19:26:59 +01:00
use feature 'signatures';
__PACKAGE__->table('conquer_user');
2023-11-19 23:14:02 +01:00
__PACKAGE__->load_components("TimeStamp");
2023-11-17 23:16:54 +01:00
__PACKAGE__->add_columns(
uuid => {
2023-11-19 19:26:59 +01:00
data_type => 'uuid',
2023-11-17 23:16:54 +01:00
is_nullable => 0,
},
username => {
2023-11-19 19:26:59 +01:00
data_type => 'text',
2023-11-17 23:16:54 +01:00
is_nullable => 0,
},
encrypted_password => {
2023-11-19 19:26:59 +01:00
data_type => 'text',
2023-11-17 23:16:54 +01:00
is_nullable => 0,
},
last_activity => {
2023-11-19 19:26:59 +01:00
data_type => 'timestamp',
is_nullable => 0,
default_value => \'NOW()',
},
registration_date => {
data_type => 'timestamp',
is_nullable => 0,
2023-11-17 23:16:54 +01:00
default_value => \'NOW()',
},
is_admin => {
2023-11-19 19:26:59 +01:00
data_type => 'boolean',
is_nullable => 0,
2023-11-17 23:16:54 +01:00
default_value => \'0',
}
);
2023-11-19 19:26:59 +01:00
sub serialize_to_owner ($self) {
$self = $self->get_from_storage();
2023-11-19 19:26:59 +01:00
return {
kind => 'ConquerUser',
uuid => $self->uuid,
username => $self->username,
is_admin => $self->is_admin,
last_activity => $self->last_activity,
registration_date => $self->registration_date,
};
}
2023-11-17 23:16:54 +01:00
__PACKAGE__->set_primary_key('uuid');
2023-11-19 19:26:59 +01:00
__PACKAGE__->add_unique_constraint( "unique_constraint_username",
['username'] );
2023-11-17 23:16:54 +01:00
1;