This repository has been archived on 2023-08-16. You can view files and clone it, but cannot push or open issues or pull requests.
Foodloop-Server/lib/Pear/LocalLoop/Schema/Result/Feedback.pm

94 lines
1.9 KiB
Perl
Raw Normal View History

2017-07-24 13:55:05 +00:00
package Pear::LocalLoop::Schema::Result::Feedback;
use strict;
use warnings;
use base 'DBIx::Class::Core';
__PACKAGE__->table("feedback");
2021-03-20 12:09:50 +00:00
__PACKAGE__->load_components(
qw/
InflateColumn::DateTime
TimeStamp
FilterColumn
/
);
2017-07-24 13:55:05 +00:00
__PACKAGE__->add_columns(
2021-03-20 12:09:50 +00:00
"id",
{
data_type => "integer",
is_auto_increment => 1,
is_nullable => 0
},
"user_id" => {
data_type => "integer",
is_foreign_key => 1,
is_nullable => 0,
},
"submitted_at" => {
data_type => "datetime",
is_nullable => 0,
set_on_create => 1,
},
"feedbacktext" => {
data_type => "text",
is_nullable => 0,
},
"app_name" => {
data_type => "varchar",
size => 255,
is_nullable => 0,
},
"package_name" => {
data_type => "varchar",
size => 255,
is_nullable => 0,
},
"version_code" => {
data_type => "varchar",
size => 255,
is_nullable => 0,
},
"version_number" => {
data_type => "varchar",
size => 255,
is_nullable => 0,
},
"actioned" => {
data_type => "boolean",
default_value => \"false",
is_nullable => 0,
},
2017-07-24 13:55:05 +00:00
);
__PACKAGE__->set_primary_key("id");
2017-07-24 14:39:06 +00:00
__PACKAGE__->belongs_to(
2021-03-20 12:09:50 +00:00
"user",
"Pear::LocalLoop::Schema::Result::User",
{ id => "user_id" },
{ is_deferrable => 0, on_delete => "NO ACTION", on_update => "NO ACTION" },
2017-07-24 13:55:05 +00:00
);
2021-03-20 12:09:50 +00:00
__PACKAGE__->filter_column(
actioned => {
filter_to_storage => 'to_bool',
}
);
sub to_bool {
2021-03-20 12:09:50 +00:00
my ( $self, $val ) = @_;
my $driver_name =
$self->result_source->schema->storage->dbh->{Driver}->{Name};
if ( $driver_name eq 'SQLite' ) {
return $val ? 1 : 0;
}
else {
return $val ? 'true' : 'false';
}
}
2017-07-24 13:55:05 +00:00
1;