package SeMeet::Schema::Result::Group;

use strict;
use warnings;

use base 'DBIx::Class::Core';

our $VERSION = 1;

__PACKAGE__->table('groups');

__PACKAGE__->add_columns(
    id => {
        data_type         => 'integer',
        is_auto_increment => 1,
        is_nullable       => 0,
        sequence          => 'uid_seq'
    },
    qw(
        deleted
        octid
        name
        permissions
    ),
);

__PACKAGE__->set_primary_key('id');

__PACKAGE__->add_unique_constraint(
    'octid' => [qw(octid)]
);

__PACKAGE__->has_many(
    meet_groups => 'SeMeet::Schema::Result::MeetGroup',
    { 'foreign.group_id' => 'self.id', },
);

__PACKAGE__->inflate_column('permissions', {
    inflate => sub {
        return [ split /\W+/, shift ];
    },
});

1;