Manager für Projekt Status
authorSven Schöling <s.schoeling@linet-services.de>
Mon, 6 May 2013 14:02:52 +0000 (16:02 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Tue, 1 Apr 2014 11:03:21 +0000 (13:03 +0200)
SL/DB/Manager/ProjectStatus.pm [new file with mode: 0644]
SL/DB/ProjectStatus.pm

diff --git a/SL/DB/Manager/ProjectStatus.pm b/SL/DB/Manager/ProjectStatus.pm
new file mode 100644 (file)
index 0000000..589f1f3
--- /dev/null
@@ -0,0 +1,51 @@
+package SL::DB::Manager::ProjectStatus;
+
+use strict;
+
+use parent qw(SL::DB::Helper::Manager);
+
+use SL::DB::Helper::Paginated;
+use SL::DB::Helper::Sorted;
+
+sub object_class { 'SL::DB::ProjectStatus' }
+
+__PACKAGE__->make_manager_methods;
+
+sub _sort_spec {
+  return (
+    default       => [ 'position', 1 ],
+    columns       => {
+      SIMPLE      => 'ALL',
+      description => 'lower(project_status.description)',
+    });
+}
+
+1;
+__END__
+
+=pod
+
+=encoding utf8
+
+=head1 NAME
+
+SL::DB::Manager::ProjectStatus - Manager for models for the 'project_status' table
+
+=head1 SYNOPSIS
+
+This is a standard Rose::DB::Manager based model manager and can be
+used as such.
+
+=head1 FUNCTIONS
+
+None yet.
+
+=head1 BUGS
+
+Nothing here yet.
+
+=head1 AUTHOR
+
+Sven Schöling E<lt>s.schoeling@linet-services.deE<gt>
+
+=cut
index fed4bed..b80486d 100644 (file)
@@ -1,13 +1,29 @@
-# This file has been auto-generated only because it didn't exist.
-# Feel free to modify it at will; it will not be overwritten automatically.
-
 package SL::DB::ProjectStatus;
 
 use strict;
 
 use SL::DB::MetaSetup::ProjectStatus;
+use SL::DB::Manager::ProjectStatus;
+
+use SL::DB::Helper::ActsAsList;
+
+__PACKAGE__->meta->add_relationship(
+  projects => {
+    type         => 'many to one',
+    class        => 'SL::DB::Project',
+    column_map   => { id => 'project_status_id' },
+  },
+);
+
+__PACKAGE__->meta->initialize;
+
+sub validate {
+  my ($self) = @_;
+
+  my @errors;
+  push @errors, $::locale->text('The description is missing.') if !$self->description;
 
-# Creates get_all, get_all_count, get_all_iterator, delete_all and update_all.
-__PACKAGE__->meta->make_manager_class;
+  return @errors;
+}
 
 1;