Bugzilla – Attachment 62596 Details for
Bug 17047
Mana Knowledge Base : Data sharing
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 17047 - Don't create numberpattern if the same exists
Bug-17047---Dont-create-numberpattern-if-the-same-.patch (text/plain), 5.45 KB, created by
Paul Poulain
on 2017-04-24 13:15:58 UTC
(
hide
)
Description:
Bug 17047 - Don't create numberpattern if the same exists
Filename:
MIME Type:
Creator:
Paul Poulain
Created:
2017-04-24 13:15:58 UTC
Size:
5.45 KB
patch
obsolete
>From 0412922b638de0927b93b6a95446b7c822f4f7ae Mon Sep 17 00:00:00 2001 >From: Alex Arnaud <alex.arnaud@biblibre.com> >Date: Wed, 1 Feb 2017 09:13:17 +0000 >Subject: [PATCH] Bug 17047 - Don't create numberpattern if the same exists > >--- > Koha/Subscription/Numberpatterns.pm | 20 +++++++++ > .../prog/en/modules/serials/subscription-add.tt | 5 ++- > serials/subscription-add.pl | 52 +++++++++------------- > 3 files changed, 44 insertions(+), 33 deletions(-) > >diff --git a/Koha/Subscription/Numberpatterns.pm b/Koha/Subscription/Numberpatterns.pm >index 1070f43..638e028 100644 >--- a/Koha/Subscription/Numberpatterns.pm >+++ b/Koha/Subscription/Numberpatterns.pm >@@ -32,6 +32,26 @@ Koha::SubscriptionNumberpatterns - Koha SubscriptionNumberpattern object set cla > > =cut > >+=head3 uniqeLabel >+ >+=cut >+ >+sub uniqueLabel { >+ my ($self, $label) = @_; >+ >+ my $samelabel = Koha::Subscription::Numberpatterns->search({label => $label})->next(); >+ if ($samelabel) { >+ my $i = 2; >+ my $newlabel = $samelabel->label . " ($i)"; >+ while (my $othersamelabel = $self->search({label => $newlabel})->next()) { >+ $i++; >+ $newlabel = $samelabel->label . " ($i)"; >+ } >+ $label = $newlabel; >+ } >+ return $label; >+} >+ > =head3 type > > =cut >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-add.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-add.tt >index bddb7f7..46c732e 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-add.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/subscription-add.tt >@@ -331,7 +331,7 @@ function testPredictionPattern() { > url:"/cgi-bin/koha/serials/showpredictionpattern.pl", > data: ajaxData, > success: function(data) { >- $("#displayexample").html(data); >+ $("#displayexample").html(data).show(); > patternneedtobetested = 0; > } > }); >@@ -511,6 +511,7 @@ function removeDisabledAttr() { > > > $(document).ready(function() { >+ $("#displayexample").hide(); > $("#mana_search_result").modal("hide"); > $("#aqbooksellerid").on('keypress', function(e) { > if (e.keyCode == 13) { >@@ -1134,7 +1135,7 @@ $(document).ready(function() { > </div> > > <div id="mana_search_result" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="mana_search_result_label" style="width: 90%; left:5%; margin-left: auto; display: none;"> >- <div class="modal-dialog"> >+ <div class="modal-dialog modal-lg"> > <div class="modal-content"> > <div class="modal-header"> > <h3 id="mana_search_result_label"></h3> >diff --git a/serials/subscription-add.pl b/serials/subscription-add.pl >index c42bff5..00ab62d 100755 >--- a/serials/subscription-add.pl >+++ b/serials/subscription-add.pl >@@ -289,39 +289,29 @@ sub _guess_enddate { > } > > sub manage_subscription_numbering_pattern_id { >- my $numberpattern; >+ my $params; > if ( $query->param('numbering_pattern') eq 'mana' ) { >- my $subscription_np = Koha::Subscription::Numberpattern->new()->set( >- { >- label => $query->param('patternname'), >- description => $query->param('sndescription'), >- numberingmethod => $query->param('numberingmethod'), >- label1 => $query->param('label1'), >- add1 => $query->param('add1'), >- every1 => $query->param('every1'), >- whenmorethan1 => $query->param('whenmorethan1'), >- setto1 => $query->param('setto1'), >- numbering1 => $query->param('numbering1'), >- label2 => $query->param('label2'), >- add2 => $query->param('add2'), >- every2 => $query->param('every2'), >- whenmorethan2 => $query->param('whenmorethan2'), >- setto2 => $query->param('setto2'), >- numbering2 => $query->param('numbering2'), >- label3 => $query->param('label3'), >- add3 => $query->param('add3'), >- every3 => $query->param('every3'), >- whenmorethan3 => $query->param('whenmorethan3'), >- setto3 => $query->param('setto3'), >- numbering3 => $query->param('numbering3'), >- } >- )->store(); >- $numberpattern = $subscription_np->id; >- } >- else { >- $numberpattern = $query->param('numbering_pattern'); >+ foreach (qw/numberingmethod label1 add1 every1 whenmorethan1 setto1 >+ numbering1 label2 add2 every2 whenmorethan2 setto2 numbering2 >+ label3 add3 every3 whenmorethan3 setto3 numbering3/) { >+ $params->{$_} = $query->param($_) if $query->param($_); >+ } >+ >+ my $existing = Koha::Subscription::Numberpatterns->search($params)->next(); >+ >+ if ($existing) { >+ return $existing->id; >+ } >+ >+ $params->{label} = Koha::Subscription::Numberpattern->uniqueLabel($query->param('patternname')); >+ $params->{description} = $query->param('sndescription'); >+ >+ >+ my $subscription_np = Koha::Subscription::Numberpattern->new()->set($params)->store(); >+ return $subscription_np->id; > } >- return $numberpattern; >+ >+ return $query->param('numbering_pattern'); > } > > sub manage_subscription_frequencies_id { >-- >2.7.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 17047
:
56175
|
56176
|
56177
|
56178
|
56179
|
56180
|
56181
|
59728
|
59729
|
59931
|
61905
|
62045
|
62046
|
62047
|
62048
|
62049
|
62050
|
62051
|
62052
|
62053
|
62054
|
62075
|
62465
|
62475
|
62485
|
62540
|
62542
|
62543
|
62544
|
62545
|
62546
|
62547
|
62548
|
62549
|
62550
|
62551
|
62552
|
62553
|
62589
|
62591
|
62592
|
62593
|
62594
|
62595
|
62596
|
62597
|
62598
|
62599
|
62603
|
62604
|
62605
|
62606
|
62607
|
62768
|
63476
|
63601
|
63618
|
63619
|
63620
|
63621
|
63622
|
63623
|
64484
|
64530
|
64618
|
64619
|
64620
|
64621
|
64622
|
64623
|
64624
|
64625
|
64626
|
64627
|
64628
|
64629
|
64630
|
64631
|
64632
|
64633
|
64634
|
64635
|
64636
|
64637
|
64638
|
64639
|
64640
|
64641
|
64642
|
64643
|
64648
|
64649
|
64650
|
64651
|
64652
|
64653
|
64654
|
64706
|
64962
|
65058
|
65059
|
65060
|
65061
|
65062
|
65063
|
65064
|
65065
|
65773
|
66667
|
66668
|
66987
|
67003
|
67004
|
67005
|
67006
|
67009
|
67010
|
67011
|
67012
|
67013
|
67014
|
67015
|
67016
|
67017
|
67018
|
67019
|
67020
|
67021
|
67022
|
67023
|
69034
|
69035
|
69036
|
69037
|
69038
|
69039
|
69040
|
69041
|
69091
|
70203
|
70204
|
70205
|
70206
|
70208
|
70209
|
70210
|
70211
|
70561
|
70874
|
72660
|
72661
|
72662
|
72663
|
72664
|
72665
|
72666
|
72667
|
72668
|
72669
|
72670
|
73699
|
73737
|
73738
|
73739
|
73740
|
73741
|
73742
|
73743
|
73744
|
73745
|
73746
|
73747
|
73748
|
73975
|
73976
|
73977
|
73978
|
73979
|
73980
|
73981
|
73982
|
73983
|
73984
|
73985
|
73986
|
76673
|
76674
|
76675
|
76676
|
76677
|
76678
|
76679
|
76680
|
76681
|
76682
|
76683
|
76684
|
78215
|
78216
|
78217
|
78218
|
78219
|
78220
|
78221
|
78222
|
78223
|
78224
|
78225
|
78226
|
78227
|
78228
|
78229
|
79868
|
79869
|
79870
|
79871
|
79872
|
79874
|
79877
|
79878
|
79879
|
79880
|
79881
|
79882
|
79883
|
79884
|
79885
|
79886
|
79887
|
79888
|
79922
|
79923
|
79924
|
79925
|
79926
|
79927
|
79928
|
79929
|
79930
|
79931
|
79932
|
79933
|
79934
|
79935
|
79936
|
79937
|
79938
|
79939
|
80183
|
80184
|
80185
|
80186
|
80187
|
80188
|
80189
|
80190
|
80191
|
80192
|
80193
|
80194
|
80195
|
80196
|
80197
|
80198
|
80199
|
80200
|
80471
|
80472
|
80473
|
80907
|
80908
|
80909
|
80910
|
80911
|
80912
|
80913
|
80914
|
80915
|
80916
|
80917
|
80918
|
80919
|
80920
|
80921
|
80922
|
80923
|
80924
|
81935
|
81936
|
81937
|
81938
|
81939
|
81940
|
81941
|
81942
|
81943
|
81944
|
81945
|
81946
|
81947
|
81948
|
81949
|
81950
|
81951
|
81952
|
81968
|
83863
|
83864
|
83865
|
83866
|
83867
|
83868
|
83869
|
83870
|
83871
|
83872
|
83873
|
83874
|
83875
|
83876
|
83877
|
83878
|
83879
|
83880
|
83881
|
83892
|
83893
|
83894
|
83895
|
83896
|
83897
|
83898
|
83899
|
83900
|
83901
|
83902
|
83903
|
83904
|
83905
|
83906
|
83907
|
83908
|
83909
|
83910
|
83911
|
83912
|
84142
|
84145
|
84210
|
84260
|
84261
|
84262
|
84263
|
84264
|
84265
|
84323
|
84324
|
84325
|
84326
|
84327
|
84328
|
84329
|
84332