Allow comments to be edited

This commit is contained in:
Daniel Friesel 2019-08-23 12:02:22 +02:00
parent f6d56d3134
commit a40aa1936b
4 changed files with 48 additions and 12 deletions

View file

@ -761,6 +761,19 @@ sub startup {
}
)->rows;
}
elsif ( $key eq 'comment' ) {
$journey->{user_data}{comment} = $value;
$rows = $db->update(
'journeys',
{
user_data =>
JSON->new->encode( $journey->{user_data} ),
},
{
id => $journey_id,
}
)->rows;
}
else {
die("Invalid key $key\n");
}
@ -2228,9 +2241,7 @@ sub startup {
messages => $entry->{messages},
route => $entry->{route},
edited => $entry->{edited},
comment => $entry->{user_data}
? $entry->{user_data}{comment}
: undef,
user_data => $entry->{user_data},
};
if ( $opt{verbose} ) {

View file

@ -608,6 +608,20 @@ sub edit_journey {
}
}
}
for my $key (qw(comment)) {
if (
defined $self->param($key)
and ( not $journey->{user_data}
or $journey->{user_data}{$key} ne $self->param($key) )
)
{
$error = $self->update_journey_part( $db, $journey->{id}, $key,
$self->param($key) );
if ($error) {
last;
}
}
}
if ( not $error ) {
$journey = $self->get_journey(
@ -631,6 +645,11 @@ sub edit_journey {
$key => $journey->{$key}->strftime('%d.%m.%Y %H:%M') );
}
}
for my $key (qw(comment)) {
if ( $journey->{user_data} and $journey->{user_data}{$key} ) {
$self->param( $key => $journey->{user_data}{$key} );
}
}
$self->render(
'edit_journey',

View file

@ -75,6 +75,12 @@
%= text_field 'rt_arrival', id => 'real_arrival', class => 'validate', pattern => '[0-9][0-9]?[.][0-9][0-9]?[.][0-9][0-9][0-9][0-9] +[0-9][0-9]:[0-9][0-9]'
</td>
</tr>
<tr>
<th scope="row">Kommentar</th>
<td>
%= text_field 'comment'
</td>
</tr>
</table>
</div>
</div>

View file

@ -121,15 +121,7 @@
% }
</td>
</tr>
% if ($journey->{comment}) {
<tr>
<th scope="row">Kommentar</th>
<td>
<%= $journey->{comment} %>
</td>
</tr>
% }
% else {
% if ($journey->{messages} and @{$journey->{messages}}) {
<tr>
<th scope="row">Meldungen</th>
<td>
@ -140,6 +132,14 @@
</td>
</tr>
% }
% if ($journey->{user_data} and $journey->{user_data}{comment}) {
<tr>
<th scope="row">Kommentar</th>
<td>
<%= $journey->{user_data}{comment} %>
</td>
</tr>
% }
<tr>
<th scope="row">Route</th>
<td>