+
+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;
+ }
+ elsif ($branchcode) {
+ push @where, 'branchcode = ?';
+ push @args, $branchcode || '';
+ }
+ elsif ($my_branch) {
+ push @where, "(branchcode = ? OR branchcode = '')";
+ push @args, $my_branch;
+ }
+
+ $sql .= " WHERE ".join(" AND ", @where) if @where;
+ $sql .= " ORDER BY module, code, branchcode";
+# use Data::Dumper; die Dumper($sql, \@args);
+ return $dbh->selectall_arrayref($sql, { Slice => {} }, @args);
+}
+
+sub default_display {
+ my ($branchcode, $searchfield) = @_;
+
+ if ( $searchfield ) {