- my $dbh = C4::Context->dbh;
- my $module = $input->param('module');
- my $code = $input->param('code');
- my $name = $input->param('name');
- my $title = $input->param('title');
- my $content = $input->param('content');
- if (letter_exists($module, $code)) {
- $dbh->do(
- q{UPDATE letter SET module = ?, code = ?, name = ?, title = ?, content = ? WHERE module = ? AND code = ?},
- undef,
- $module, $code, $name, $title, $content,
- $module, $code
- );
- } else {
- $dbh->do(
- q{INSERT INTO letter (module,code,name,title,content) VALUES (?,?,?,?,?)},
- undef,
- $module, $code, $name, $title, $content
- );
+ my $dbh = C4::Context->dbh;
+ my $branchcode = $input->param('branchcode') || '';
+ my $module = $input->param('module');
+ my $oldmodule = $input->param('oldmodule');
+ my $code = $input->param('code');
+ my $name = $input->param('name');
+ my @mtt = $input->param('message_transport_type');
+ my @title = $input->param('title');
+ my @content = $input->param('content');
+ for my $mtt ( @mtt ) {
+ my $is_html = $input->param("is_html_$mtt");
+ my $title = shift @title;
+ my $content = shift @content;
+ my $letter = get_letters($branchcode,$oldmodule, $code, $mtt);
+ unless ( $title and $content ) {
+ delete_confirmed( $branchcode, $oldmodule, $code, $mtt );
+ next;
+ }
+ elsif ( exists $letter->{$mtt} ) {
+ $dbh->do(
+ q{
+ UPDATE letter
+ SET branchcode = ?, module = ?, name = ?, is_html = ?, title = ?, content = ?
+ WHERE branchcode = ? AND module = ? AND code = ? AND message_transport_type = ?
+ },
+ undef,
+ $branchcode, $module, $name, $is_html || 0, $title, $content,
+ $branchcode, $oldmodule, $code, $mtt
+ );
+ } else {
+ $dbh->do(
+ q{INSERT INTO letter (branchcode,module,code,name,is_html,title,content,message_transport_type) VALUES (?,?,?,?,?,?,?,?)},
+ undef,
+ $branchcode, $module, $code, $name, $is_html || 0, $title, $content, $mtt
+ );
+ }