+ # set up default display
+ default_display($branchcode);
+}
+
+sub add_copy {
+ my $dbh = C4::Context->dbh;
+ my $oldbranchcode = $input->param('oldbranchcode');
+ my $branchcode = $input->param('branchcode');
+ my $module = $input->param('module');
+ my $code = $input->param('code');
+
+ return if letter_exists($branchcode,$module, $code);
+
+ my $old_letter = letter_exists($oldbranchcode,$module, $code);
+
+ $dbh->do(
+ q{INSERT INTO letter (branchcode,module,code,name,is_html,title,content) VALUES (?,?,?,?,?,?,?)},
+ undef,
+ $branchcode, $module, $code, $old_letter->{name}, $old_letter->{is_html}, $old_letter->{title}, $old_letter->{content}
+ );
+}
+
+sub delete_confirm {
+ my ($branchcode, $module, $code) = @_;
+ my $dbh = C4::Context->dbh;
+ my $letter = letter_exists($branchcode, $module, $code);
+ $template->param( branchcode => $branchcode, branchname => GetBranchName($branchcode) );
+ $template->param( code => $code );
+ $template->param( module => $module);
+ $template->param( name => $letter->{name});
+ return;
+}
+
+sub delete_confirmed {
+ my ($branchcode, $module, $code) = @_;
+ my ($sql, $args) = _letter_from_where($branchcode, $module, $code);
+ my $dbh = C4::Context->dbh;
+ $dbh->do("DELETE $sql", undef, @$args);
+ # setup default display for screen
+ default_display($branchcode);
+ return;
+}
+
+sub retrieve_letters {
+ my ($branchcode, $searchstring) = @_;
+
+ $branchcode = $my_branch if $branchcode && $my_branch;
+
+ my $dbh = C4::Context->dbh;
+ my ($sql, @where, @args);
+ $sql = "SELECT branchcode, module, code, name, branchname
+ FROM letter
+ LEFT OUTER JOIN branches USING (branchcode)";
+ if ($searchstring && $searchstring=~m/(\S+)/) {
+ $searchstring = $1 . q{%};
+ push @where, 'code LIKE ?';
+ push @args, $searchstring;