1 package OpenILS::Application::Storage::Publisher::action;
2 use base qw/OpenILS::Application::Storage/;
3 #use OpenILS::Application::Storage::CDBI::action;
4 #use OpenSRF::Utils::Logger qw/:level/;
5 #use OpenILS::Utils::Fieldmapper;
7 #my $log = 'OpenSRF::Utils::Logger';
9 sub find_opac_surveys {
14 return undef unless ($ou);
16 my $select = <<" SQL";
19 JOIN actor.org_unit_full_path(?) p ON (p.id = s.owner)
20 WHERE CURRENT_DATE BETWEEN s.start_date AND s.end_date
24 my $sth = action::survey->db_Main->prepare_cached($select);
27 $client->respond( $_->to_fieldmapper ) for ( map { action::survey->construct($_) } $sth->fetchall_hash );
31 __PACKAGE__->register_method(
32 api_name => 'open-ils.storage.action.survey.opac',
35 method => 'find_opac_surveys',
38 sub find_optional_surveys {
43 return undef unless ($ou);
45 my $select = <<" SQL";
48 JOIN actor.org_unit_full_path(?) p ON (p.id = s.owner)
49 WHERE CURRENT_DATE BETWEEN s.start_date AND s.end_date
50 AND s.required IS FALSE;
53 my $sth = action::survey->db_Main->prepare_cached($select);
56 $client->respond( $_->to_fieldmapper ) for ( map { action::survey->construct($_) } $sth->fetchall_hash );
60 __PACKAGE__->register_method(
61 api_name => 'open-ils.storage.action.survey.optional',
64 method => 'find_optional_surveys',
67 sub find_required_surveys {
72 return undef unless ($ou);
74 my $select = <<" SQL";
77 JOIN actor.org_unit_full_path(?) p ON (p.id = s.owner)
78 WHERE CURRENT_DATE BETWEEN s.start_date AND s.end_date
79 AND s.required IS TRUE;
82 my $sth = action::survey->db_Main->prepare_cached($select);
85 $client->respond( $_->to_fieldmapper ) for ( map { action::survey->construct($_) } $sth->fetchall_hash );
89 __PACKAGE__->register_method(
90 api_name => 'open-ils.storage.action.survey.required',
93 method => 'find_required_surveys',