Bug 29818: Cannot save subscription frequency without display order
The schema says that subscription_frequencies.displayorder can be null, and everything else deals with it being null just fine, but if you try to save a new frequency without specifying display order with strict_sql_modes set, you get an error. Test plan: 1. Without the patch, Serials - Manage frequencies - New frequency 2. Description is mandatory, so fill it in, then click Save 3. Boom! Apply patch, restart_all 4. Repeat steps 1-2, and verify that no error is thrown and the new frequency shows up (at the top of the list since nothing comes before something) 5. New frequency, fill in Description, try typing something other than a number in Display order and saving. You should be told to follow the directions that only numeric characters are allowed Sponsored-by: Chetco Community Public Library Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com> Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
This commit is contained in:
parent
d794891005
commit
77c003ed54
2 changed files with 4 additions and 2 deletions
|
@ -117,7 +117,8 @@
|
|||
</li>
|
||||
<li>
|
||||
<label for="displayorder">Display order: </label>
|
||||
<input type="text" id="displayorder" name="displayorder" value="[% displayorder | html %]" size="3" />
|
||||
<input type="text" inputmode="numeric" pattern="\d*" id="displayorder" name="displayorder" value="[% displayorder | html %]" size="3" />
|
||||
<span class="hint">Only numeric characters are allowed</span>
|
||||
</li>
|
||||
</ol>
|
||||
</fieldset>
|
||||
|
|
|
@ -75,7 +75,8 @@ if($op && ($op eq 'cud-savenew' || $op eq 'cud-savemod')) {
|
|||
foreach (qw/ description unit issuesperunit unitsperissue displayorder /) {
|
||||
$frequency->{$_} = $input->param($_);
|
||||
}
|
||||
$frequency->{unit} = undef if $frequency->{unit} eq '';
|
||||
$frequency->{unit} = undef if $frequency->{unit} eq '';
|
||||
$frequency->{displayorder} = undef if $frequency->{displayorder} eq '';
|
||||
foreach (qw/issuesperunit unitsperissue/) {
|
||||
$frequency->{$_} = 1 if $frequency->{$_} !~ /\d+/;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue