Lines 215-227
sub GetSerialInformation {
Link Here
|
215 |
my ($serialid) = @_; |
215 |
my ($serialid) = @_; |
216 |
my $dbh = C4::Context->dbh; |
216 |
my $dbh = C4::Context->dbh; |
217 |
my $query = qq| |
217 |
my $query = qq| |
218 |
SELECT serial.*, serial.notes as sernotes, serial.status as serstatus,subscription.*,subscription.subscriptionid as subsid |; |
218 |
SELECT serial.*, |
|
|
219 |
serial.notes as sernotes, |
220 |
serial.status as serstatus, |
221 |
subscription.*, |
222 |
subscription.subscriptionid as subsid |
223 |
|; |
219 |
if ( C4::Context->preference('IndependentBranches') |
224 |
if ( C4::Context->preference('IndependentBranches') |
220 |
&& C4::Context->userenv |
225 |
&& C4::Context->userenv |
221 |
&& C4::Context->userenv->{'flags'} != 1 |
226 |
&& C4::Context->userenv->{'flags'} % 2 != 1 |
222 |
&& C4::Context->userenv->{'branch'} ) { |
227 |
&& C4::Context->userenv->{'branch'} ) { |
223 |
$query .= " |
228 |
my $branches = GetIndependentGroupModificationRights( { stringify => 1 } ); |
224 |
, ((subscription.branchcode <>\"" . C4::Context->userenv->{'branch'} . "\") and subscription.branchcode <>\"\" and subscription.branchcode IS NOT NULL) as cannotedit "; |
229 |
$query .= qq| |
|
|
230 |
, ( ( subscription.branchcode NOT IN ( $branches ) ) AND subscription.branchcode <> '' AND subscription.branchcode IS NOT NULL ) AS cannotedit |
231 |
|; |
225 |
} |
232 |
} |
226 |
$query .= qq| |
233 |
$query .= qq| |
227 |
FROM serial LEFT JOIN subscription ON subscription.subscriptionid=serial.subscriptionid |
234 |
FROM serial LEFT JOIN subscription ON subscription.subscriptionid=serial.subscriptionid |
Lines 315-347
subscription, subscriptionhistory, aqbooksellers.name, biblio.title
Link Here
|
315 |
sub GetSubscription { |
322 |
sub GetSubscription { |
316 |
my ($subscriptionid) = @_; |
323 |
my ($subscriptionid) = @_; |
317 |
my $dbh = C4::Context->dbh; |
324 |
my $dbh = C4::Context->dbh; |
318 |
my $query = qq( |
325 |
|
|
|
326 |
my $query = qq| |
319 |
SELECT subscription.*, |
327 |
SELECT subscription.*, |
320 |
subscriptionhistory.*, |
328 |
subscriptionhistory.*, |
321 |
aqbooksellers.name AS aqbooksellername, |
329 |
aqbooksellers.name AS aqbooksellername, |
322 |
biblio.title AS bibliotitle, |
330 |
biblio.title AS bibliotitle, |
323 |
subscription.biblionumber as bibnum); |
331 |
subscription.biblionumber as bibnum |
|
|
332 |
|; |
333 |
|
324 |
if ( C4::Context->preference('IndependentBranches') |
334 |
if ( C4::Context->preference('IndependentBranches') |
325 |
&& C4::Context->userenv |
335 |
&& C4::Context->userenv |
326 |
&& C4::Context->userenv->{'flags'} != 1 |
336 |
&& C4::Context->userenv->{'flags'} % 2 != 1 |
327 |
&& C4::Context->userenv->{'branch'} ) { |
337 |
&& C4::Context->userenv->{'branch'} ) |
328 |
$query .= " |
338 |
{ |
329 |
, ((subscription.branchcode <>\"" . C4::Context->userenv->{'branch'} . "\") and subscription.branchcode <>\"\" and subscription.branchcode IS NOT NULL) as cannotedit "; |
339 |
my $branches = |
|
|
340 |
GetIndependentGroupModificationRights( { stringify => 1 } ); |
341 |
|
342 |
$query .= qq| |
343 |
, ( ( subscription.branchcode NOT IN ( $branches ) ) AND subscription.branchcode <> '' AND subscription.branchcode IS NOT NULL ) AS cannotedit |
344 |
|; |
330 |
} |
345 |
} |
331 |
$query .= qq( |
346 |
|
|
|
347 |
$query .= qq| |
332 |
FROM subscription |
348 |
FROM subscription |
333 |
LEFT JOIN subscriptionhistory ON subscription.subscriptionid=subscriptionhistory.subscriptionid |
349 |
LEFT JOIN subscriptionhistory ON subscription.subscriptionid=subscriptionhistory.subscriptionid |
334 |
LEFT JOIN aqbooksellers ON subscription.aqbooksellerid=aqbooksellers.id |
350 |
LEFT JOIN aqbooksellers ON subscription.aqbooksellerid=aqbooksellers.id |
335 |
LEFT JOIN biblio ON biblio.biblionumber=subscription.biblionumber |
351 |
LEFT JOIN biblio ON biblio.biblionumber=subscription.biblionumber |
336 |
WHERE subscription.subscriptionid = ? |
352 |
WHERE subscription.subscriptionid = ? |
337 |
); |
353 |
|; |
338 |
|
354 |
|
339 |
# if (C4::Context->preference('IndependentBranches') && |
|
|
340 |
# C4::Context->userenv && |
341 |
# C4::Context->userenv->{'flags'} != 1){ |
342 |
# # $debug and warn "flags: ".C4::Context->userenv->{'flags'}; |
343 |
# $query.=" AND subscription.branchcode IN ('".C4::Context->userenv->{'branch'}."',\"\")"; |
344 |
# } |
345 |
$debug and warn "query : $query\nsubsid :$subscriptionid"; |
355 |
$debug and warn "query : $query\nsubsid :$subscriptionid"; |
346 |
my $sth = $dbh->prepare($query); |
356 |
my $sth = $dbh->prepare($query); |
347 |
$sth->execute($subscriptionid); |
357 |
$sth->execute($subscriptionid); |
Lines 358-365
sub GetSubscription {
Link Here
|
358 |
sub GetFullSubscription { |
368 |
sub GetFullSubscription { |
359 |
my ($subscriptionid) = @_; |
369 |
my ($subscriptionid) = @_; |
360 |
my $dbh = C4::Context->dbh; |
370 |
my $dbh = C4::Context->dbh; |
361 |
my $query = qq| |
371 |
|
362 |
SELECT serial.serialid, |
372 |
my $query = qq| |
|
|
373 |
SELECT |
374 |
serial.serialid, |
363 |
serial.serialseq, |
375 |
serial.serialseq, |
364 |
serial.planneddate, |
376 |
serial.planneddate, |
365 |
serial.publisheddate, |
377 |
serial.publisheddate, |
Lines 369-382
sub GetFullSubscription {
Link Here
|
369 |
aqbooksellers.name as aqbooksellername, |
381 |
aqbooksellers.name as aqbooksellername, |
370 |
biblio.title as bibliotitle, |
382 |
biblio.title as bibliotitle, |
371 |
subscription.branchcode AS branchcode, |
383 |
subscription.branchcode AS branchcode, |
372 |
subscription.subscriptionid AS subscriptionid |; |
384 |
subscription.subscriptionid AS subscriptionid |
|
|
385 |
|; |
386 |
|
373 |
if ( C4::Context->preference('IndependentBranches') |
387 |
if ( C4::Context->preference('IndependentBranches') |
374 |
&& C4::Context->userenv |
388 |
&& C4::Context->userenv |
375 |
&& C4::Context->userenv->{'flags'} != 1 |
389 |
&& C4::Context->userenv->{'flags'} % 2 != 1 |
376 |
&& C4::Context->userenv->{'branch'} ) { |
390 |
&& C4::Context->userenv->{'branch'} ) |
377 |
$query .= " |
391 |
{ |
378 |
, ((subscription.branchcode <>\"" . C4::Context->userenv->{'branch'} . "\") and subscription.branchcode <>\"\" and subscription.branchcode IS NOT NULL) as cannotedit "; |
392 |
my $branches = |
|
|
393 |
GetIndependentGroupModificationRights( { stringify => 1 } ); |
394 |
|
395 |
$query .= qq| |
396 |
, ( ( subscription.branchcode NOT IN ( $branches ) ) AND subscription.branchcode <> '' AND subscription.branchcode IS NOT NULL ) AS cannotedit |
397 |
|; |
379 |
} |
398 |
} |
|
|
399 |
|
380 |
$query .= qq| |
400 |
$query .= qq| |
381 |
FROM serial |
401 |
FROM serial |
382 |
LEFT JOIN subscription ON |
402 |
LEFT JOIN subscription ON |
Lines 486-498
sub GetSubscriptionsFromBiblionumber {
Link Here
|
486 |
$subs->{ "periodicity" . $subs->{periodicity} } = 1; |
506 |
$subs->{ "periodicity" . $subs->{periodicity} } = 1; |
487 |
$subs->{ "numberpattern" . $subs->{numberpattern} } = 1; |
507 |
$subs->{ "numberpattern" . $subs->{numberpattern} } = 1; |
488 |
$subs->{ "status" . $subs->{'status'} } = 1; |
508 |
$subs->{ "status" . $subs->{'status'} } = 1; |
489 |
$subs->{'cannotedit'} = |
509 |
$subs->{'cannotedit'} = ( |
490 |
( C4::Context->preference('IndependentBranches') |
510 |
C4::Context->preference('IndependentBranches') |
491 |
&& C4::Context->userenv |
511 |
&& C4::Context->userenv |
492 |
&& !C4::Context->IsSuperLibrarian() |
512 |
&& !C4::Context->IsSuperLibrarian() |
493 |
&& C4::Context->userenv->{branch} |
513 |
&& C4::Context->userenv->{branch} |
494 |
&& $subs->{branchcode} |
514 |
&& $subs->{branchcode} |
495 |
&& ( C4::Context->userenv->{branch} ne $subs->{branchcode} ) ); |
515 |
&& GetIndependentGroupModificationRights( |
|
|
516 |
{ for => $subs->{branchcode} } |
517 |
) |
518 |
); |
496 |
|
519 |
|
497 |
if ( $subs->{enddate} eq '0000-00-00' ) { |
520 |
if ( $subs->{enddate} eq '0000-00-00' ) { |
498 |
$subs->{enddate} = ''; |
521 |
$subs->{enddate} = ''; |
Lines 516-523
sub GetSubscriptionsFromBiblionumber {
Link Here
|
516 |
sub GetFullSubscriptionsFromBiblionumber { |
539 |
sub GetFullSubscriptionsFromBiblionumber { |
517 |
my ($biblionumber) = @_; |
540 |
my ($biblionumber) = @_; |
518 |
my $dbh = C4::Context->dbh; |
541 |
my $dbh = C4::Context->dbh; |
519 |
my $query = qq| |
542 |
|
520 |
SELECT serial.serialid, |
543 |
my $query = qq| |
|
|
544 |
SELECT |
545 |
serial.serialid, |
521 |
serial.serialseq, |
546 |
serial.serialseq, |
522 |
serial.planneddate, |
547 |
serial.planneddate, |
523 |
serial.publisheddate, |
548 |
serial.publisheddate, |
Lines 526-538
sub GetFullSubscriptionsFromBiblionumber {
Link Here
|
526 |
year(IF(serial.publisheddate="00-00-0000",serial.planneddate,serial.publisheddate)) as year, |
551 |
year(IF(serial.publisheddate="00-00-0000",serial.planneddate,serial.publisheddate)) as year, |
527 |
biblio.title as bibliotitle, |
552 |
biblio.title as bibliotitle, |
528 |
subscription.branchcode AS branchcode, |
553 |
subscription.branchcode AS branchcode, |
529 |
subscription.subscriptionid AS subscriptionid|; |
554 |
subscription.subscriptionid AS subscriptionid |
|
|
555 |
|; |
556 |
|
530 |
if ( C4::Context->preference('IndependentBranches') |
557 |
if ( C4::Context->preference('IndependentBranches') |
531 |
&& C4::Context->userenv |
558 |
&& C4::Context->userenv |
532 |
&& C4::Context->userenv->{'flags'} != 1 |
559 |
&& C4::Context->userenv->{'flags'} != 1 |
533 |
&& C4::Context->userenv->{'branch'} ) { |
560 |
&& C4::Context->userenv->{'branch'} ) |
534 |
$query .= " |
561 |
{ |
535 |
, ((subscription.branchcode <>\"" . C4::Context->userenv->{'branch'} . "\") and subscription.branchcode <>\"\" and subscription.branchcode IS NOT NULL) as cannotedit "; |
562 |
my $branches = |
|
|
563 |
GetIndependentGroupModificationRights( { stringify => 1 } ); |
564 |
|
565 |
$query .= qq| |
566 |
, ( ( subscription.branchcode NOT IN ( $branches ) ) AND subscription.branchcode <> '' AND subscription.branchcode IS NOT NULL ) AS cannotedit |
567 |
|; |
536 |
} |
568 |
} |
537 |
|
569 |
|
538 |
$query .= qq| |
570 |
$query .= qq| |
Lines 626-638
sub GetSubscriptions {
Link Here
|
626 |
my @results; |
658 |
my @results; |
627 |
|
659 |
|
628 |
while ( my $line = $sth->fetchrow_hashref ) { |
660 |
while ( my $line = $sth->fetchrow_hashref ) { |
629 |
$line->{'cannotedit'} = |
661 |
$line->{'cannotedit'} = ( |
630 |
( C4::Context->preference('IndependentBranches') |
662 |
C4::Context->preference('IndependentBranches') |
631 |
&& C4::Context->userenv |
663 |
&& C4::Context->userenv |
632 |
&& !C4:Context->IsSuperLibrarian() |
664 |
&& !C4::Context->IsSuperLibrarian() |
633 |
&& C4::Context->userenv->{branch} |
665 |
&& C4::Context->userenv->{branch} |
634 |
&& $line->{branchcode} |
666 |
&& $line->{branchcode} |
635 |
&& ( C4::Context->userenv->{branch} ne $line->{branchcode} ) ); |
667 |
&& GetIndependentGroupModificationRights( |
|
|
668 |
{ for => $line->{branchcode} } |
669 |
) |
670 |
); |
636 |
push @results, $line; |
671 |
push @results, $line; |
637 |
} |
672 |
} |
638 |
return @results; |
673 |
return @results; |