Bug 11647: (follow-up) test if user is logged in before proposing to subscribe or...
authorSophie Meynieux <sophie.meynieux@biblibre.com>
Mon, 10 Mar 2014 16:07:07 +0000 (17:07 +0100)
committerGalen Charlton <gmc@esilibrary.com>
Thu, 13 Mar 2014 14:54:42 +0000 (14:54 +0000)
To test :
1) Search for a subscription with patron notification active
2) If you're not logged in, a message warns you that you must log
   in to subscribe to notification on new issues
3) If you log in, and have not yet subscribed to this routing list,
   you've got a link to subscribe
4) Once you have subscribed, you've got a link to unsubscribe
5) If you log out, you've got a message saying you must log in to
   subscribe
6) If you log in with another user, you've got the link to subscribe
   or unsubscribe depending on if he has already subscribed.

Signed-off-by: remy juliette <remy.gonzalves@iepg.fr>
Signed-off-by: Aurelie Fichot <aurelie.fichot@iepg.fr>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
koha-tmpl/opac-tmpl/prog/en/modules/opac-serial-issues.tt
opac/opac-serial-issues.pl

index 546bc15..5d590a9 100644 (file)
         </p>
     [% END %]
     [% IF ( subscription_LOO.letter ) %]
-        [% IF ( subscription_LOO.hasalert ) %]
-            You have subscribed to email notification on new issues <a href="opac-alert-subscribe.pl?op=cancel&amp;externalid=[% subscription_LOO.subscriptionid %]&amp;alerttype=issue&amp;biblionumber=[% subscription_LOO.biblionumber %]" class="button" title="Cancel email notification">
-                Cancel email notification
-            </a>
+        [% IF ( loggedinusername ) %]
+            [% IF ( subscription_LOO.hasalert ) %]
+                You have subscribed to email notification on new issues <a href="opac-alert-subscribe.pl?op=cancel&amp;externalid=[% subscription_LOO.subscriptionid %]&amp;alerttype=issue&amp;biblionumber=[% subscription_LOO.biblionumber %]" class="button" title="Cancel email notification">
+                    Cancel email notification
+                </a>
+            [% ELSE %]
+                <a href="opac-alert-subscribe.pl?externalid=[% subscription_LOO.subscriptionid %]&amp;alerttype=issue&amp;biblionumber=[% subscription_LOO.biblionumber %]" class="button" title="Subscribe to email notification on new issues">
+                    Subscribe to email notification on new issues
+                </a>
+            [% END %]
         [% ELSE %]
-            <a href="opac-alert-subscribe.pl?externalid=[% subscription_LOO.subscriptionid %]&amp;alerttype=issue&amp;biblionumber=[% subscription_LOO.biblionumber %]" class="button" title="Subscribe to email notification on new issues">
-                Subscribe to email notification on new issues
-            </a>
+            You must log in if you want to subscribe to email notification on new issues
         [% END %]
     [% END %]
 </div>
index b534974..edc6248 100755 (executable)
@@ -62,9 +62,11 @@ if ( $selectview eq "full" ) {
     }
 
     # now, check is there is an alert subscription for one of the subscriptions
-    foreach (@$subscriptions) {
-        if (getalert($loggedinuser,'issue',$_->{subscriptionid})) {
-            $_->{hasalert} = 1;
+    if ($loggedinuser) {
+        foreach (@$subscriptions) {
+            if (getalert($loggedinuser,'issue',$_->{subscriptionid})) {
+                $_->{hasalert} = 1;
+            }
         }
     }
 
@@ -100,10 +102,12 @@ else {
 
     my $subscriptions = GetSubscriptionsFromBiblionumber($biblionumber);
     # now, check is there is an alert subscription for one of the subscriptions
-    foreach (@$subscriptions) {
-        my $subscription = getalert($loggedinuser,'issue',$_->{subscriptionid});
-        if (@$subscription[0]) {
-            $_->{hasalert} = 1;
+    if ($loggedinuser){
+        foreach (@$subscriptions) {
+            my $subscription = getalert($loggedinuser,'issue',$_->{subscriptionid});
+            if (@$subscription[0]) {
+                $_->{hasalert} = 1;
+            }
         }
     }