1 package Koha::Patron::Files;
3 # Copyright 2012 Kyle M Hall
5 # This file is part of Koha.
7 # Koha is free software; you can redistribute it and/or modify it
8 # under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 3 of the License, or
10 # (at your option) any later version.
12 # Koha is distributed in the hope that it will be useful, but
13 # WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
17 # You should have received a copy of the GNU General Public License
18 # along with Koha; if not, see <http://www.gnu.org/licenses>.
30 # set the version for version checking
35 Koha::Patron::Files - Module for managing patron files
44 my ( $class, %args ) = @_;
45 my $self = bless( {}, $class );
47 $self->{'borrowernumber'} = $args{'borrowernumber'};
54 my $bf = Koha::Patron::Files->new( borrowernumber => $borrowernumber );
55 my $files_hashref = $bf->GetFilesInfo
62 my $dbh = C4::Context->dbh;
71 WHERE borrowernumber = ?
72 ORDER BY file_name, date_uploaded
74 my $sth = $dbh->prepare($query);
75 $sth->execute( $self->{'borrowernumber'} );
76 return $sth->fetchall_arrayref( {} );
81 my $bf = Koha::Patron::Files->new( borrowernumber => $borrowernumber );
82 $bh->AddFile( name => $filename, type => $mimetype,
83 description => $description, content => $content );
88 my ( $self, %args ) = @_;
90 my $name = $args{'name'};
91 my $type = $args{'type'};
92 my $description = $args{'description'};
93 my $content = $args{'content'};
95 return unless ( $name && $content );
97 my $dbh = C4::Context->dbh;
99 INSERT INTO borrower_files ( borrowernumber, file_name, file_type, file_description, file_content )
102 my $sth = $dbh->prepare($query);
103 $sth->execute( $self->{'borrowernumber'},
104 $name, $type, $description, $content );
109 my $bf = Koha::Patron::Files->new( borrowernumber => $borrowernumber );
110 my $file = $bh->GetFile( file_id => $file_id );
115 my ( $self, %args ) = @_;
117 my $file_id = $args{'id'};
119 my $dbh = C4::Context->dbh;
121 SELECT * FROM borrower_files WHERE file_id = ? AND borrowernumber = ?
123 my $sth = $dbh->prepare($query);
124 $sth->execute( $file_id, $self->{'borrowernumber'} );
125 return $sth->fetchrow_hashref();
130 my $bf = Koha::Patron::Files->new( borrowernumber => $borrowernumber );
131 $bh->DelFile( file_id => $file_id );
136 my ( $self, %args ) = @_;
138 my $file_id = $args{'id'};
140 my $dbh = C4::Context->dbh;
142 DELETE FROM borrower_files WHERE file_id = ? AND borrowernumber = ?
144 my $sth = $dbh->prepare($query);
145 $sth->execute( $file_id, $self->{'borrowernumber'} );
155 Kyle M Hall <kyle.m.hall@gmail.com>