koha-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Koha-cvs] koha C4/Date.pm C4/Serials.pm koha-tmpl/intrane... [rel_3_0]


From: Henri-Damien LAURENT
Subject: [Koha-cvs] koha C4/Date.pm C4/Serials.pm koha-tmpl/intrane... [rel_3_0]
Date: Fri, 26 Jan 2007 20:48:37 +0000

CVSROOT:        /cvsroot/koha
Module name:    koha
Branch:         rel_3_0
Changes by:     Henri-Damien LAURENT <hdl>      07/01/26 20:48:37

Modified files:
        C4             : Date.pm Serials.pm 
        koha-tmpl/intranet-tmpl/prog/en/includes: menu-serials.inc 
        koha-tmpl/intranet-tmpl/prog/en/serials: checkexpiration.tmpl 
                                                 claims.tmpl result.tmpl 
                                                 serials-collection.tmpl 
                                                 serials-edit.tmpl 
                                                 subscription-add.tmpl 
                                                 subscription-detail.tmpl 
        serials        : claims.pl serials-collection.pl serials-edit.pl 
                         subscription-add.pl subscription-detail.pl 
        updater        : updatedatabase 

Log message:
        Serials management : Bugfixes + improvements.
        - Partial dates are now managed
        - next Date Calculation with irregularity tested for 1 week and 1 month.
        - manage if subscription is abouttoexpire or expired.
        - Adding some information on serials pages about subscription.
        - Managing irregularity with numbers.
        - Adding Internal Notes in subscription management.
        - Repeating Button above pages.
        
        Please run Updatedatabase to change irregularity and add internalnotes 
field  to subscription

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/C4/Date.pm?cvsroot=koha&only_with_tag=rel_3_0&r1=1.18&r2=1.18.2.1
http://cvs.savannah.gnu.org/viewcvs/koha/C4/Serials.pm?cvsroot=koha&only_with_tag=rel_3_0&r1=1.5.2.28&r2=1.5.2.29
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/includes/menu-serials.inc?cvsroot=koha&only_with_tag=rel_3_0&r1=1.3.2.6&r2=1.3.2.7
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/serials/checkexpiration.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.1&r2=1.1.2.2
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/serials/claims.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.2.2.2&r2=1.2.2.3
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/serials/result.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.1&r2=1.1.2.2
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/serials/serials-collection.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.9&r2=1.1.2.10
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/serials/serials-edit.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.7&r2=1.1.2.8
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/serials/subscription-add.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.3.2.9&r2=1.3.2.10
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/prog/en/serials/subscription-detail.tmpl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.3.2.11&r2=1.3.2.12
http://cvs.savannah.gnu.org/viewcvs/koha/serials/claims.pl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.3&r2=1.1.2.4
http://cvs.savannah.gnu.org/viewcvs/koha/serials/serials-collection.pl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.6&r2=1.1.2.7
http://cvs.savannah.gnu.org/viewcvs/koha/serials/serials-edit.pl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.1.2.8&r2=1.1.2.9
http://cvs.savannah.gnu.org/viewcvs/koha/serials/subscription-add.pl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.6.2.11&r2=1.6.2.12
http://cvs.savannah.gnu.org/viewcvs/koha/serials/subscription-detail.pl?cvsroot=koha&only_with_tag=rel_3_0&r1=1.3.2.9&r2=1.3.2.10
http://cvs.savannah.gnu.org/viewcvs/koha/updater/updatedatabase?cvsroot=koha&only_with_tag=rel_3_0&r1=1.157.2.52&r2=1.157.2.53

Patches:
Index: C4/Date.pm
===================================================================
RCS file: /cvsroot/koha/koha/C4/Date.pm,v
retrieving revision 1.18
retrieving revision 1.18.2.1
diff -u -b -r1.18 -r1.18.2.1
--- C4/Date.pm  18 Jul 2006 12:13:07 -0000      1.18
+++ C4/Date.pm  26 Jan 2007 20:48:36 -0000      1.18.2.1
@@ -1,36 +1,16 @@
-#!/usr/bin/perl
-
-# Copyright 2000-2002 Katipo Communications
-#
-# This file is part of Koha.
-#
-# Koha is free software; you can redistribute it and/or modify it under the
-# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or (at your option) any later
-# version.
-#
-# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
-# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
-# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along with
-# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA  02111-1307 USA
-
-# $Id: Date.pm,v 1.18 2006/07/18 12:13:07 btoumi Exp $
+#!/usr/bin/perl -w
 
 package C4::Date;
 
 use strict;
 use C4::Context;
-use Date::Manip;
-
+use Date::Calc qw(Parse_Date Decode_Date_EU Decode_Date_US Time_to_Date 
check_date);
 
 require Exporter;
 
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
 
-$VERSION = do { my @v = '$Revision: 1.18 $' =~ /\d+/g; shift(@v) . "." . join( 
"_", map { sprintf "%03d", $_ } @v ); };
+$VERSION = 0.01;
 
 @ISA = qw(Exporter);
 
@@ -38,114 +18,129 @@
   &display_date_format
   &format_date
   &format_date_in_iso
-  &get_date_format_string_for_DHTMLcalendar
 );
 
-sub get_date_format {
 
+sub get_date_format
+{
     #Get the database handle
     my $dbh = C4::Context->dbh;
     return C4::Context->preference('dateformat');
 }
 
-sub display_date_format {
+sub display_date_format
+{
     my $dateformat = get_date_format();
 
-    if ( $dateformat eq "us" ) {
+       if ( $dateformat eq "us" )
+       {
         return "mm/dd/yyyy";
     }
-    elsif ( $dateformat eq "metric" ) {
+       elsif ( $dateformat eq "metric" )
+       {
         return "dd/mm/yyyy";
     }
-    elsif ( $dateformat eq "iso" ) {
+       elsif ( $dateformat eq "iso" )
+       {
         return "yyyy-mm-dd";
     }
-    else {
-        return
-"Invalid date format: $dateformat. Please change in system preferences";
+       else
+       {
+               return "Invalid date format: $dateformat. Please change in 
system preferences";
     }
 }
 
-sub get_date_format_string_for_DHTMLcalendar {
-    my $dateformat = get_date_format();
 
-    if ( $dateformat eq 'us' ) {
-        return '%m/%d/%Y';
-    }
-    elsif ( $dateformat eq 'metric' ) {
-        return '%d/%m/%Y';
-    }
-    elsif ( $dateformat eq "iso" ) {
-        return '%Y-%m-%d';
-    }
-    else {
-        return 'Invalid date format: '
-          . $dateformat . '.'
-          . ' Please change in system preferences';
-    }
-}
-
-sub format_date {
+sub format_date
+{
     my $olddate = shift;
     my $newdate;
 
-    if ( !$olddate ) {
+       if ( ! $olddate )
+       {
         return "";
     }
 
+#     warn $olddate;
+#     $olddate=~s#/|\.|-##g;
+    my ($year,$month,$day)=Parse_Date($olddate);
+    ($year,$month,$day)=split /-|\/|\.|:/,$olddate unless ($year && $month);
+#      warn "$olddate annee $year mois $month jour $day";
+    if ($year>0 && $month>0){
     my $dateformat = get_date_format();
-
-    if ( $dateformat eq "us" ) {
-        Date_Init("DateFormat=US");
-        $olddate = ParseDate($olddate);
-        $newdate = UnixDate( $olddate, '%m/%d/%Y' );
-    }
-    elsif ( $dateformat eq "metric" ) {
-        Date_Init("DateFormat=metric");
-        $olddate = ParseDate($olddate);
-        $newdate = UnixDate( $olddate, '%d/%m/%Y' );
-    }
-    elsif ( $dateformat eq "iso" ) {
-        Date_Init("DateFormat=iso");
-        $olddate = ParseDate($olddate);
-        $newdate = UnixDate( $olddate, '%Y-%m-%d' );
-    }
-    else {
-        return
-"Invalid date format: $dateformat. Please change in system preferences";
+      $dateformat="metric" if (index(":",$olddate)>0);
+      if ( $dateformat eq "us" )
+      {
+          $newdate = sprintf("%02d/%02d/%04d",$month,$day,$year);
+      }
+      elsif ( $dateformat eq "metric" )
+      {
+          $newdate = sprintf("%02d/%02d/%04d",$day,$month,$year);
+      }
+      elsif ( $dateformat eq "iso" )
+      {
+  #            Date_Init("DateFormat=iso");
+          $newdate = sprintf("%04d-%02d-%02d",$year,$month,$day);
+      }
+      else
+      {
+          return "Invalid date format: $dateformat. Please change in system 
preferences";
     }
+#       warn "newdate :$newdate";
+    }
+    return $newdate;
 }
 
-sub format_date_in_iso {
+sub format_date_in_iso
+{
     my $olddate = shift;
     my $newdate;
 
-    if ( !$olddate ) {
+        if ( ! $olddate )
+        {
         return "";
     }
 
     my $dateformat = get_date_format();
-
-    if ( $dateformat eq "us" ) {
-        Date_Init("DateFormat=US");
-        $olddate = ParseDate($olddate);
-    }
-    elsif ( $dateformat eq "metric" ) {
-        Date_Init("DateFormat=metric");
-        $olddate = ParseDate($olddate);
-    }
-    elsif ( $dateformat eq "iso" ) {
-        Date_Init("DateFormat=iso");
-        $olddate = ParseDate($olddate);
+        my ($year,$month,$day);
+        my @date;
+        my $tmpolddate=$olddate;
+        $tmpolddate=~s#/|\.|-|\\##g;
+        $dateformat="metric" if (index(":",$olddate)>0);
+        if ( $dateformat eq "us" )
+        {
+          ($month,$day,$year)=split /-|\/|\.|:/,$olddate unless ($year && 
$month);
+          if ($month>0 && $day >0){
+                @date = Decode_Date_US($tmpolddate);
+          } else {
+            @date=($year, $month,$day)
+          }
+        }
+        elsif ( $dateformat eq "metric" )
+        {
+          ($day,$month,$year)=split /-|\/|\.|:/,$olddate unless ($year && 
$month);
+          if ($month>0 && $day >0){
+                @date = Decode_Date_EU($tmpolddate);
+          } else {
+            @date=($year, $month,$day)
+          }
+        }
+        elsif ( $dateformat eq "iso" )
+        {
+          ($year,$month,$day)=split /-|\/|\.|:/,$olddate unless ($year && 
$month);
+          if ($month>0 && $day >0){
+            @date=($year, $month,$day) if (check_date($year,$month,$day));
+          } else {
+            @date=($year, $month,$day)
+          }
     }
-    else {
+        else
+        {
         return "9999-99-99";
     }
 
-    $newdate = UnixDate( $olddate, '%Y-%m-%d' );
+       $newdate = sprintf("%04d-%02d-%02d",$date[0],$date[1],$date[2]);
 
     return $newdate;
 }
-
-
 1;

Index: C4/Serials.pm
===================================================================
RCS file: /cvsroot/koha/koha/C4/Serials.pm,v
retrieving revision 1.5.2.28
retrieving revision 1.5.2.29
diff -u -b -r1.5.2.28 -r1.5.2.29
--- C4/Serials.pm       24 Jan 2007 13:51:23 -0000      1.5.2.28
+++ C4/Serials.pm       26 Jan 2007 20:48:36 -0000      1.5.2.29
@@ -17,7 +17,7 @@
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
-# $Id: Serials.pm,v 1.5.2.28 2007/01/24 13:51:23 tipaul Exp $
+# $Id: Serials.pm,v 1.5.2.29 2007/01/26 20:48:36 hdl Exp $
 
 use strict;
 use C4::Date;
@@ -35,7 +35,7 @@
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
 
 # set the version for version checking
-$VERSION = do { my @v = '$Revision: 1.5.2.28 $' =~ /\d+/g;
+$VERSION = do { my @v = '$Revision: 1.5.2.29 $' =~ /\d+/g;
     shift(@v) . "." . join( "_", map { sprintf "%03d", $_ } @v );
 };
 
@@ -60,13 +60,14 @@
     
     &NewSubscription    &ModSubscription    &DelSubscription    
&GetSubscriptions
     &GetSubscription    &CountSubscriptionFromBiblionumber      
&GetSubscriptionsFromBiblionumber
-    &GetFullSubscriptionsFromBiblionumber   &ModSubscriptionHistory
+    &GetFullSubscriptionsFromBiblionumber   &GetFullSubscription 
&ModSubscriptionHistory
     &HasSubscriptionExpired &GetExpirationDate &abouttoexpire
     
     &GetNextSeq         &NewIssue           &ItemizeSerials    &GetSerials
     &GetLatestSerials   &ModSerialStatus    &GetNextDate       &GetSerials2
     &ReNewSubscription  &GetLateIssues      &GetLateOrMissingIssues
     &GetSerialInformation                   &AddItem2Serial
+    &PrepareSerialsData
     
     &UpdateClaimdateIssues
     &GetSuppliersWithLateIssues             &getsupplierbyserialid
@@ -169,7 +170,6 @@
         $line->{title} = "" if $line->{title} eq $last_title;
         $last_title = $line->{title} if ( $line->{title} );
         $line->{planneddate} = format_date( $line->{planneddate} );
-        $line->{'odd'} = 1 if $odd % 2;
         $count++;
         push @issuelist, $line;
     }
@@ -280,8 +280,8 @@
     }
     $data->{ "status" . $data->{'serstatus'} } = 1;
     $data->{'subscriptionexpired'} =
-      HasSubscriptionExpired( $data->{'subscriptionid'} );
-    $data->{'subscriptionaboutexpire'} =
+      HasSubscriptionExpired( $data->{'subscriptionid'} ) && 
$data->{'status'}==1;
+    $data->{'abouttoexpire'} =
       abouttoexpire( $data->{'subscriptionid'} );
     return $data;
 }
@@ -355,7 +355,8 @@
                 subscriptionhistory.*,
                 aqbudget.bookfundid,
                 aqbooksellers.name AS aqbooksellername,
-                biblio.title AS bibliotitle
+                biblio.title AS bibliotitle,
+                subscription.biblionumber as bibnum
        FROM subscription
        LEFT JOIN subscriptionhistory ON 
subscription.subscriptionid=subscriptionhistory.subscriptionid
        LEFT JOIN aqbudget ON subscription.aqbudgetid=aqbudget.aqbudgetid
@@ -376,6 +377,120 @@
     return $subs;
 }
 
+=head2 GetFullSubscription
+
+=over 4
+
+   address@hidden = GetFullSubscription($subscriptionid)
+   this function read on serial table.
+
+=back
+
+=cut
+
+sub GetFullSubscription {
+    my ($subscriptionid) = @_;
+    my $dbh            = C4::Context->dbh;
+    my $query          = qq|
+  SELECT    serial.serialid,
+            serial.serialseq,
+            serial.planneddate, 
+            serial.publisheddate, 
+            serial.status, 
+            serial.notes as notes,
+            
year(IF(serial.publisheddate="00-00-0000",serial.planneddate,serial.publisheddate))
 as year,
+            aqbudget.bookfundid,aqbooksellers.name as aqbooksellername,
+            biblio.title as bibliotitle,
+            subscription.branchcode AS branchcode,
+            subscription.subscriptionid AS subscriptionid
+  FROM      serial 
+  LEFT JOIN subscription ON 
+          (serial.subscriptionid=subscription.subscriptionid AND 
subscription.biblionumber=serial.biblionumber)
+  LEFT JOIN aqbudget ON subscription.aqbudgetid=aqbudget.aqbudgetid 
+  LEFT JOIN aqbooksellers on subscription.aqbooksellerid=aqbooksellers.id 
+  LEFT JOIN biblio on biblio.biblionumber=subscription.biblionumber 
+  WHERE     serial.subscriptionid = ? |;
+    if (C4::Context->preference('IndependantBranches') && 
+        C4::Context->userenv && 
+        C4::Context->userenv->{'flags'} != 1){
+      $query.="
+  AND subscription.branchcode IN 
('".C4::Context->userenv->{'branch'}."',\"''\")";
+    }
+    $query .=qq|
+  ORDER BY year DESC,
+          
IF(serial.publisheddate="00-00-0000",serial.planneddate,serial.publisheddate) 
DESC,
+          serial.subscriptionid
+          |;
+    my $sth = $dbh->prepare($query);
+    $sth->execute($subscriptionid);
+    my $subs = $sth->fetchall_arrayref({});
+    return $subs;
+}
+
+
+=head2 PrepareSerialsData
+
+=over 4
+
+   address@hidden = PrepareSerialsData($serialinfomation)
+   where serialinformation is a hashref array
+
+=back
+
+=cut
+
+sub PrepareSerialsData{
+    my ($lines)address@hidden;
+    my %tmpresults;
+    my $year;
+    my @res;
+    my $startdate;
+    my $aqbooksellername;
+    my $bibliotitle;
+    my @loopissues;
+    my $first;
+    my $previousnote = "";
+    
+    foreach  my $subs ( @$lines ) {
+        $subs->{'publisheddate'} =
+          ( $subs->{'publisheddate'}
+            ? format_date( $subs->{'publisheddate'} )
+            : "XXX" );
+        $subs->{'planneddate'} = format_date( $subs->{'planneddate'} );
+        $subs->{ "status" . $subs->{'status'} } = 1;
+
+#         $subs->{'notes'} = $subs->{'notes'} eq 
$previousnote?"":$subs->{notes};
+        if ( $subs->{'year'} && $subs->{'year'} ne "" ) {
+            $year = $subs->{'year'};
+        }
+        else {
+            $year = "manage";
+        }
+        if ( $tmpresults{$year} ) {
+            push @{ $tmpresults{$year}->{'serials'} }, $subs;
+        }
+        else {
+            $tmpresults{$year} = {
+                'year' => $year,
+
+                #               'startdate'=>format_date($subs->{'startdate'}),
+                'aqbooksellername' => $subs->{'aqbooksellername'},
+                'bibliotitle'      => $subs->{'bibliotitle'},
+                'serials'          => [$subs],
+                'first'            => $first,
+                'branchcode'       => $subs->{'branchcode'},
+                'subscriptionid'   => $subs->{'subscriptionid'},
+            };
+        }
+
+        #         $previousnote=$subs->{notes};
+    }
+    foreach my $key ( sort { $b cmp $a } keys %tmpresults ) {
+        push @res, $tmpresults{$key};
+    }
+    return address@hidden;
+}
+
 =head2 GetSubscriptionsFromBiblionumber
 
 address@hidden = GetSubscriptionsFromBiblionumber($biblionumber)
@@ -420,6 +535,7 @@
         $subs->{missinglist}  =~ s/\n/\<br\/\>/g;
         $subs->{recievedlist} =~ s/\n/\<br\/\>/g;
         $subs->{ "periodicity" . $subs->{periodicity} } = 1;
+        $subs->{ "numberpattern" . $subs->{numberpattern} } = 1;
         $subs->{ "status" . $subs->{'status'} } = 1;
         if ( $subs->{enddate} eq '0000-00-00' ) {
             $subs->{enddate} = '';
@@ -427,6 +543,8 @@
         else {
             $subs->{enddate} = format_date( $subs->{enddate} );
         }
+        $subs->{'abouttoexpire'}=abouttoexpire($subs->{'subscriptionid'});
+        
$subs->{'subscriptionexpired'}=HasSubscriptionExpired($subs->{'subscriptionid'});
         push @res, $subs;
     }
     return address@hidden;
@@ -478,54 +596,8 @@
           |;
     my $sth = $dbh->prepare($query);
     $sth->execute($biblionumber);
-    my @res;
-    my %tmpresults;
-    my $year;
-    my $startdate;
-    my $aqbooksellername;
-    my $bibliotitle;
-    my @loopissues;
-    my $first;
-    my $previousnote = "";
-
-    while ( my $subs = $sth->fetchrow_hashref ) {
-        $subs->{'publisheddate'} =
-          ( $subs->{'publisheddate'}
-            ? format_date( $subs->{'publisheddate'} )
-            : "XXX" );
-        $subs->{'planneddate'} = format_date( $subs->{'planneddate'} ),
-          $subs->{ "status" . $subs->{'status'} } = 1;
-
-#         $subs->{'notes'} = $subs->{'notes'} eq 
$previousnote?"":$subs->{notes};
-        if ( $subs->{'year'} && $subs->{'year'} ne "" ) {
-            $year = $subs->{'year'};
-        }
-        else {
-            $year = "manage";
-        }
-        if ( $tmpresults{$year} ) {
-            push @{ $tmpresults{$year}->{'serials'} }, $subs;
-        }
-        else {
-            $tmpresults{$year} = {
-                'year' => $year,
-
-                #               'startdate'=>format_date($subs->{'startdate'}),
-                'aqbooksellername' => $subs->{'aqbooksellername'},
-                'bibliotitle'      => $subs->{'bibliotitle'},
-                'serials'          => [$subs],
-                'first'            => $first,
-                'branchcode'       => $subs->{'branchcode'},
-                'subscriptionid'   => $subs->{'subscriptionid'},
-            };
-        }
-
-        #         $previousnote=$subs->{notes};
-    }
-    foreach my $key ( sort { $b cmp $a } keys %tmpresults ) {
-        push @res, $tmpresults{$key};
-    }
-    return address@hidden;
+    my $subs= $sth->fetchall_arrayref({});
+    return $subs;
 }
 
 =head2 GetSubscriptions
@@ -653,45 +725,46 @@
 =cut
 
 sub GetSerials {
-    my ($subscriptionid) = @_;
+    my ($subscriptionid,$count) = @_;
     my $dbh = C4::Context->dbh;
 
-    # OK, now add the last 5 issues arrives/missing
+    # status = 2 is "arrived"
+    my $counter = 0;
+    $count=5 unless ($count);
+    my @serials;
     my $query =
-      "SELECT   serialid,serialseq, status, planneddate, publisheddate,notes
+      "SELECT serialid,serialseq, status, publisheddate, planneddate,notes 
        FROM     serial
-       WHERE    subscriptionid = ?
-       AND      (status in (2,4,5))
-       ORDER BY publisheddate,serialid DESC
-      ";
+                        WHERE  subscriptionid = ? AND status NOT IN (2,4,5) 
+                        ORDER BY publisheddate,serialid DESC";
     my $sth = $dbh->prepare($query);
     $sth->execute($subscriptionid);
-    my $counter = 0;
-    my @serials;
-    while ( ( my $line = $sth->fetchrow_hashref ) && $counter < 5 ) {
-        $counter++;
+    while ( my $line = $sth->fetchrow_hashref ) {
         $line->{ "status" . $line->{status} } =
           1;    # fills a "statusX" value, used for template status select list
-        $line->{"planneddate"}   = format_date( $line->{"planneddate"} );
         $line->{"publisheddate"} = format_date( $line->{"publisheddate"} );
+        $line->{"planneddate"}   = format_date( $line->{"planneddate"} );
         push @serials, $line;
     }
-
-    # status = 2 is "arrived"
+    # OK, now add the last 5 issues arrives/missing
     $query =
-      "SELECT serialid,serialseq, status, publisheddate, planneddate,notes 
+      "SELECT   serialid,serialseq, status, planneddate, publisheddate,notes
                         FROM   serial
-                        WHERE  subscriptionid = ? AND status NOT IN (2,4,5) 
-                        ORDER BY publisheddate,serialid DESC";
+       WHERE    subscriptionid = ?
+       AND      (status in (2,4,5))
+       ORDER BY publisheddate,serialid DESC
+      ";
     $sth = $dbh->prepare($query);
     $sth->execute($subscriptionid);
-    while ( my $line = $sth->fetchrow_hashref ) {
+    while ( ( my $line = $sth->fetchrow_hashref ) && $counter < $count ) {
+        $counter++;
         $line->{ "status" . $line->{status} } =
           1;    # fills a "statusX" value, used for template status select list
-        $line->{"publisheddate"} = format_date( $line->{"publisheddate"} );
         $line->{"planneddate"}   = format_date( $line->{"planneddate"} );
+        $line->{"publisheddate"} = format_date( $line->{"publisheddate"} );
         push @serials, $line;
     }
+
     $query = "SELECT count(*) FROM serial WHERE subscriptionid=?";
     $sth = $dbh->prepare($query);
     $sth->execute($subscriptionid);
@@ -975,18 +1048,26 @@
         }
     }
     elsif ( $subscription->{monthlength} ){
-#         warn "dateCHECKRESERV :".$subscription->{startdate};
+        warn "dateCHECKRESERV :".$subscription->{startdate};
         my @date=split (/-/,$subscription->{startdate});
-        my @enddate = 
Add_Delta_YM($date[0],$date[1],$date[2],0,$subscription->{monthlength}
-          );
+        my @enddate = 
Add_Delta_YM($date[0],$date[1],$date[2],0,$subscription->{monthlength});
         $enddate=sprintf("%04d-%02d-%02d",$enddate[0],$enddate[1],$enddate[2]);
     } elsif ( $subscription->{weeklength} ){
         my @date=split (/-/,$subscription->{startdate});
 #         warn "dateCHECKRESERV :".$subscription->{startdate};
-        my @enddate = 
Add_Delta_Days($date[0],$date[1],$date[2],0,$subscription->{weeklength}*7);
+#### An other way to do it
+#         if ( $subscription->{weeklength} ){
+#           my ($weeknb,$year)=Week_of_Year(@startdate);
+#           $weeknb += $subscription->{weeklength};
+#           my $weeknbcalc= $weeknb % 52;
+#           $year += int($weeknb/52);
+# #           warn "year : $year weeknb :$weeknb weeknbcalc $weeknbcalc";
+#           @endofsubscriptiondate=Monday_of_Week($weeknbcalc,$year);
+#         }
+        my @enddate = 
Add_Delta_Days($date[0],$date[1],$date[2],$subscription->{weeklength}*7);
         $enddate=sprintf("%04d-%02d-%02d",$enddate[0],$enddate[1],$enddate[2]);
     }
-#     warn "date de fin :$enddate";
+    warn "date de fin :$enddate";
     return $enddate;
 }
 
@@ -1169,8 +1250,10 @@
         $whenmorethan3,   $setto3,       $lastvalue3,     $innerloop3,
         $numberingmethod, $status,       $biblionumber,   $callnumber,
         $notes,           $letter,       $hemisphere,     $manualhistory,
+        $internalnotes,
         $subscriptionid
     ) = @_;
+    warn $irregularity;
     my $dbh   = C4::Context->dbh;
     my $query = "UPDATE subscription
                     SET librarian=?, 
branchcode=?,aqbooksellerid=?,cost=?,aqbudgetid=?,startdate=?,
@@ -1178,14 +1261,14 @@
                         
add1=?,every1=?,whenmorethan1=?,setto1=?,lastvalue1=?,innerloop1=?,
                         
add2=?,every2=?,whenmorethan2=?,setto2=?,lastvalue2=?,innerloop2=?,
                         
add3=?,every3=?,whenmorethan3=?,setto3=?,lastvalue3=?,innerloop3=?,
-                        numberingmethod=?, status=?, biblionumber=?, 
callnumber=?, notes=?, letter=?, hemisphere=?,manualhistory=?
+                        numberingmethod=?, status=?, biblionumber=?, 
callnumber=?, notes=?, letter=?, hemisphere=?,manualhistory=?,internalnotes=?
                     WHERE subscriptionid = ?";
 #     warn "query :".$query;
     my $sth = $dbh->prepare($query);
     $sth->execute(
         $auser,           $branchcode,   $aqbooksellerid, $cost,
         $aqbudgetid,      $startdate,    $periodicity,    $firstacquidate,
-        $dow,             $irregularity, $numberpattern,  $numberlength,
+        $dow,             "$irregularity", $numberpattern,  $numberlength,
         $weeklength,      $monthlength,  $add1,           $every1,
         $whenmorethan1,   $setto1,       $lastvalue1,     $innerloop1,
         $add2,            $every2,       $whenmorethan2,  $setto2,
@@ -1193,6 +1276,7 @@
         $whenmorethan3,   $setto3,       $lastvalue3,     $innerloop3,
         $numberingmethod, $status,       $biblionumber,   $callnumber,
         $notes,           $letter,       $hemisphere,     
($manualhistory?$manualhistory:0),
+        $internalnotes,
         $subscriptionid
     );
     my $rows=$sth->rows;
@@ -1234,7 +1318,8 @@
         $add3,          $every3,       $whenmorethan3,   $setto3,
         $lastvalue3,    $innerloop3,   $numberingmethod, $status,
         $notes,         $letter,       $firstacquidate,  $irregularity,
-        $numberpattern, $callnumber,   $hemisphere,      $manualhistory
+        $numberpattern, $callnumber,   $hemisphere,      $manualhistory,
+        $internalnotes
     ) = @_;
     my $dbh = C4::Context->dbh;
 
@@ -1247,8 +1332,8 @@
             add2,every2,whenmorethan2,setto2,lastvalue2,innerloop2,
             add3,every3,whenmorethan3,setto3,lastvalue3,innerloop3,
             numberingmethod, status, notes, letter,firstacquidate,irregularity,
-            numberpattern, callnumber, hemisphere,manualhistory)
-        VALUES 
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
+            numberpattern, callnumber, hemisphere,manualhistory,internalnotes)
+        VALUES 
(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
         |;
     my $sth = $dbh->prepare($query);
     $sth->execute(
@@ -1271,7 +1356,8 @@
         $notes,                         $letter,
         $firstacquidate,                $irregularity,
         $numberpattern,                 $callnumber,
-        $hemisphere,                    $manualhistory
+        $hemisphere,                    $manualhistory,
+        $internalnotes
     );
 
     #then create the 1st waited number
@@ -1643,27 +1729,7 @@
     my ($subscriptionid) = @_;
     my $dbh              = C4::Context->dbh;
     my $subscription     = GetSubscription($subscriptionid);
-#     warn "subscriptionid:$subscriptionid";
-# we don't do the same test if the subscription is based on X numbers or on X 
weeks/months
-    if ( $subscription->{numberlength} ) {
-        my $query = qq|
-            SELECT count(*)
-            FROM   serial
-            WHERE  subscriptionid=? AND planneddate>=?
-        |;
-        my $sth = $dbh->prepare($query);
-        $sth->execute( $subscriptionid, $subscription->{startdate} );
-        my $res = $sth->fetchrow;
-        if ( $subscription->{numberlength} >= $res ) {
-            return 0;
-        }
-        else {
-            return 1;
-        }
-    }
-    else {
-
-#a little bit more tricky if based on X weeks/months : search if the latest 
issue waited is not after subscription startdate + duration
+    my $expirationdate   = GetExpirationDate($subscriptionid);
         my $query = qq|
             SELECT max(planneddate)
             FROM   serial
@@ -1672,31 +1738,13 @@
         my $sth = $dbh->prepare($query);
         $sth->execute($subscriptionid);
         my ($res) = $sth->fetchrow  ;
-#       warn "res : $res";
         my @res=split (/-/,$res);
         my @endofsubscriptiondate;
-#         use Data::Dumper; warn "subscription :".Dumper($subscription);
-#         warn "subscription startdate : ".$subscription->{startdate};
-        my @startdate=split(/-/,$subscription->{startdate});
-        @endofsubscriptiondate = Add_Delta_YMD(
-            $startdate[0],$startdate[1],$startdate[2],
-            ,0,$subscription->{monthlength},0) if ( 
$subscription->{monthlength} );
-        if ( $subscription->{weeklength} ){
-          my ($weeknb,$year)=Week_of_Year(@startdate);
-          $weeknb += $subscription->{weeklength};
-          my $weeknbcalc= $weeknb % 52;
-          $year += int($weeknb/52);
-#           warn "year : $year weeknb :$weeknb weeknbcalc $weeknbcalc";
-          @endofsubscriptiondate=Monday_of_Week($weeknbcalc,$year);
-        }
-#         foreach (@endofsubscriptiondate){warn "endofsubscription :$_"}
-        my $endofsubscriptiondate = 
Date_to_Time($endofsubscriptiondate[0],$endofsubscriptiondate[1],$endofsubscriptiondate[2],
-        0,0,0) if (@endofsubscriptiondate);
+    my @endofsubscriptiondate=split(/-/,$expirationdate);
         return 1 if ( (@endofsubscriptiondate && 
Delta_Days($res[0],$res[1],$res[2],
-                      
$endofsubscriptiondate[0],$endofsubscriptiondate[1],$endofsubscriptiondate[2]) 
>= 0)
+                  
$endofsubscriptiondate[0],$endofsubscriptiondate[1],$endofsubscriptiondate[2]) 
<= 0)
                       || (!$res));
         return 0;
-    }
 }
 
 =head2 SetDistributedto
@@ -2205,53 +2253,18 @@
     my ($subscriptionid) = @_;
     my $dbh              = C4::Context->dbh;
     my $subscription     = GetSubscription($subscriptionid);
-
-# we don't do the same test if the subscription is based on X numbers or on X 
weeks/months
-    if ( $subscription->{numberlength} ) {
-        my $sth =
-          $dbh->prepare(
-"select count(*) from serial where subscriptionid=?  and planneddate>=?"
-          );
-        $sth->execute( $subscriptionid, $subscription->{startdate} );
-        my $res = $sth->fetchrow;
-
-        # warn "length: ".$subscription->{numberlength}." vs count: ".$res;
-        if ( $subscription->{numberlength} == $res ) {
-            return 1;
-        }
-        else {
-            return 0;
-        }
-    }
-    else {
-
-# a little bit more tricky if based on X weeks/months : search if the latest 
issue waited is not after subscription startdate + duration
+    my $expirationdate   = GetExpirationDate($subscriptionid);
         my $sth =
           $dbh->prepare(
             "select max(planneddate) from serial where subscriptionid=?");
         $sth->execute($subscriptionid);
         my ($res) = $sth->fetchrow ;
+    warn "date expiration : ".$expirationdate." date courante ".$res;
         my @res=split /-/,$res;
-        my @endofsubscriptiondate;
-        my @startdate=split /-/,$subscription->{startdate};
-        @endofsubscriptiondate = Add_Delta_YMD(
-            $startdate[0],$startdate[1],$startdate[2],
-            ,0,$subscription->{monthlength},0) if ( 
$subscription->{monthlength} );
-        if ( $subscription->{weeklength} ){
-          my ($weeknb,$year)=Week_of_Year(@startdate);
-          $weeknb += $subscription->{weeklength};
-          my $weeknbcalc= $weeknb % 52;
-          $year += int($weeknb/52);
-          @endofsubscriptiondate=Monday_of_Week($weeknbcalc,$year);
-        }
-        # defaulting hours to 0
-        my 
$endofsubscriptiondate=Date_to_Time($endofsubscriptiondate[0],$endofsubscriptiondate[1],$endofsubscriptiondate[2]
-                               ,0,0,0) if (@endofsubscriptiondate);
-
-        # warn "last: ".$endofsubscriptiondate." vs currentdate: ".$res;
+    my @endofsubscriptiondate=split/-/,$expirationdate;
         my $per = $subscription->{'periodicity'};
         my $x;
-        if ( $per == 1 ) {$x=1;}
+    if ( $per == 1 ) {$x=7;}
         if ( $per == 2 ) {$x=7; }
         if ( $per == 3 ) {$x=14;}
         if ( $per == 4 ) { $x = 21; }
@@ -2262,17 +2275,16 @@
         if ( $per == 10 ) { $x = 365; }
         if ( $per == 11 ) { $x = 730; }
         my @datebeforeend=Add_Delta_Days(  
$endofsubscriptiondate[0],$endofsubscriptiondate[1],$endofsubscriptiondate[2],
-                      - $x) if (@endofsubscriptiondate);
+                  - (3 * $x)) if (@endofsubscriptiondate);
                # warn "DATE BEFORE END: $datebeforeend";
         return 1 if ( @res && 
                       (@datebeforeend && 
                          Delta_Days($res[0],$res[1],$res[2],
-                         
$datebeforeend[0],$datebeforeend[1],$datebeforeend[2]) >= 0) && 
+                      $datebeforeend[0],$datebeforeend[1],$datebeforeend[2]) 
<= 0) && 
                       (@endofsubscriptiondate && 
                          Delta_Days($res[0],$res[1],$res[2],
-                         
$endofsubscriptiondate[0],$endofsubscriptiondate[1],$endofsubscriptiondate[2]) 
< 0) );
+                      
$endofsubscriptiondate[0],$endofsubscriptiondate[1],$endofsubscriptiondate[2]) 
>= 0) );
         return 0;
-    }
 }
 
 =head2 old_newsubscription
@@ -2526,23 +2538,25 @@
                                            }
                        }
         return 0;
-    }
+}
 
 sub GetNextDate(@) {
     my ( $planneddate, $subscription ) = @_;
-    my @irreg = split( /\|/, $subscription->{irregularity} );
+    my @irreg = split( /\,/, $subscription->{irregularity} );
 
     #date supposed to be in ISO.
     
     my ( $year, $month, $day ) = split(/-/, $planneddate);
+    $month=1 unless ($month);
+    $day=1 unless ($day);
     my @resultdate;
 
     #       warn "DOW $dayofweek";
     if ( $subscription->{periodicity} == 1 ) {
         my $dayofweek = Day_of_Week( $year,$month, $day );
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $dayofweek == 7 ) { $dayofweek = 1; }
-            if ( in_array( ( $dayofweek + 1 ), @irreg ) ) {
+            $dayofweek = 0 if ( $dayofweek == 7 ); 
+            if ( in_array( ($dayofweek + 1), @irreg ) ) {
                 ($year,$month,$day) = Add_Delta_Days($year,$month, $day , 1 );
                 $dayofweek++;
             }
@@ -2552,10 +2566,9 @@
     if ( $subscription->{periodicity} == 2 ) {
         my ($wkno,$year) = Week_of_Year( $year,$month, $day );
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $wkno > 52 ) { $wkno = 1; }    # need to rollover at January
-            if ( $irreg[$i] == ( $wkno + 1 ) ) {
+            if ( $irreg[$i] == (($wkno!=51)?($wkno +1) % 52 :52)) {
                 ($year,$month,$day) = Add_Delta_Days($year,$month, $day , 7 );
-                $wkno++;
+                $wkno=(($wkno!=51)?($wkno +1) % 52 :52);
             }
         }
         @resultdate = Add_Delta_Days( $year,$month, $day, 7);
@@ -2563,11 +2576,10 @@
     if ( $subscription->{periodicity} == 3 ) {
         my ($wkno,$year) = Week_of_Year( $year,$month, $day );
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $wkno > 52 ) { $wkno = 1; $year++; }    # need to rollover at 
January
-            if ( $irreg[$i] == ( $wkno + 2 ) ) {
+            if ( $irreg[$i] == (($wkno!=50)?($wkno +2) % 52 :52)) {
             ### BUGFIX was previously +1 ^
                 ($year,$month,$day) = Add_Delta_Days($year,$month, $day , 14 );
-                $wkno++;
+                $wkno=(($wkno!=50)?($wkno +2) % 52 :52);
             }
         }
         @resultdate = Add_Delta_Days($year,$month, $day , 14 );
@@ -2575,84 +2587,57 @@
     if ( $subscription->{periodicity} == 4 ) {
         my ($wkno,$year) = Week_of_Year( $year,$month, $day );
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $wkno > 52 ) { $wkno = 1;$year++; }    # need to rollover at 
January
-            if ( $irreg[$i] == ( $wkno + 3 ) ) {
-            ### BUGFIX was previously +1 ^
+            if ( $irreg[$i] == (($wkno!=49)?($wkno +3) % 52 :52)) {
                 ($year,$month,$day) = Add_Delta_Days($year,$month, $day , 21 );
-                $wkno++;
+                $wkno=(($wkno!=49)?($wkno +3) % 52 :52);
             }
         }
         @resultdate = Add_Delta_Days($year,$month, $day , 21 );
     }
+    my $tmpmonth=$month;
     if ( $subscription->{periodicity} == 5 ) {
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            # warn $irreg[$i];
-            # warn $month;
-            if ( $month > 12 ) {
-                $month = 1;$year++;
-            }    # need to rollover to check January
-            if ( $irreg[$i] == ( $month + 1 ) )
-            {    # check next one to see if is to be skipped
+            if ( $irreg[$i] == (($tmpmonth!=11)?($tmpmonth +1) % 12 :12)) {
                 ($year,$month,$day) = Add_Delta_YMD($year,$month, $day ,0,1,0 
);
-                $month++;    # to check if following ones are to be skipped too
+                $tmpmonth=(($tmpmonth!=11)?($tmpmonth +1) % 12 :12);
             }
         }
-#         warn "annee mois jour $year $month $day";
         @resultdate = Add_Delta_YMD($year,$month, $day ,0,1,0 );
-
-        # warn "Planneddate2: $planneddate";
     }
     if ( $subscription->{periodicity} == 6 ) {
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $irreg[$i] == ( ($month + 2) % 12) )
-            {    # check next one to see if is to be skipped
+            if ( $irreg[$i] == (($tmpmonth!=10)?($tmpmonth +2) % 12 :12)) {
                 ($year,$month,$day) = Add_Delta_YMD($year,$month, $day ,0,2,0 
);
-                $month+=2;    # to check if following ones are to be skipped 
too
+                $tmpmonth=(($tmpmonth!=10)?($tmpmonth + 2) % 12 :12);
             }
-            if ( $month > 12 ) {
-                $month = $month % 12;$year++;
-            }    # need to rollover to check January
         }
         @resultdate = Add_Delta_YMD($year,$month, $day, 0, 2,0 );
     }
     if ( $subscription->{periodicity} == 7 ) {
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $irreg[$i] == ( ($month + 3) % 12 ) )
-            {    # check next one to see if is to be skipped
+            if ( $irreg[$i] == (($tmpmonth!=9)?($tmpmonth +3) % 12 :12)) {
                 ($year,$month,$day) = Add_Delta_YMD($year,$month, $day, 0, 3,0 
);
-                $month+=3;    # to check if following ones are to be skipped 
too
+                $tmpmonth=(($tmpmonth!=9)?($tmpmonth + 3) % 12 :12);
             }
-            if ( $month > 12 ) {
-                $month = $month % 12;$year++;
-            }    # need to rollover to check January
         }
         @resultdate = Add_Delta_YMD($year,$month, $day, 0, 3, 0);
     }
     if ( $subscription->{periodicity} == 8 ) {
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $irreg[$i] == ( ($month + 6) % 12 ) )
-            ### BUFIX Seems to need more Than One ?
-            {    # check next one to see if is to be skipped
-                ($year,$month,$day) = Add_Delta_YMD($year,$month, $day, 0, 3, 
0 );
-                $month+=6;    # to check if following ones are to be skipped 
too
-            }
-            if ( $month > 12 ) {
-                $month = $month % 12;$year++;
-            }    # need to rollover to check January
+            if ( $irreg[$i] == (($tmpmonth!=9)?($tmpmonth +3) % 12 :12)) {
+                ($year,$month,$day) = Add_Delta_YMD($year,$month, $day, 0, 3,0 
);
+                $tmpmonth=(($tmpmonth!=9)?($tmpmonth + 3) % 12 :12);
+            }
         }
         @resultdate = Add_Delta_YMD($year,$month, $day, 0, 3, 0);
     }
     if ( $subscription->{periodicity} == 9 ) {
         for ( my $i = 0 ; $i < @irreg ; $i++ ) {
-            if ( $irreg[$i] == ( ($month + 6) % 12 ) )
+            if ( $irreg[$i] == (($tmpmonth!=9)?($tmpmonth +3) % 12 :12)) {
             ### BUFIX Seems to need more Than One ?
-            {    # check next one to see if is to be skipped
                 ($year,$month,$day) = Add_Delta_YM($year,$month, $day, 0, 6 );
-                $month+=6;    # to check if following ones are to be skipped 
too
+                $tmpmonth=(($tmpmonth!=6)?($tmpmonth + 6) % 12 :12);
             }
-            if ( $month > 12 ) {
-                $month = $month % 12;$year++;
-            }    # need to rollover to check January
         }
         @resultdate = Add_Delta_YM($year,$month, $day, 0, 6);
     }

Index: koha-tmpl/intranet-tmpl/prog/en/includes/menu-serials.inc
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/includes/menu-serials.inc,v
retrieving revision 1.3.2.6
retrieving revision 1.3.2.7
diff -u -b -r1.3.2.6 -r1.3.2.7
--- koha-tmpl/intranet-tmpl/prog/en/includes/menu-serials.inc   11 Jan 2007 
15:30:52 -0000      1.3.2.6
+++ koha-tmpl/intranet-tmpl/prog/en/includes/menu-serials.inc   26 Jan 2007 
20:48:36 -0000      1.3.2.7
@@ -1,6 +1,5 @@
 <div id="submenu">
         <a href="/cgi-bin/koha/serials/serials-home.pl">Home</a>
-        <a href="/cgi-bin/koha/serials/lateissues.pl">Late Issue</a>
         <a href="/cgi-bin/koha/serials/claims.pl">Claims</a>
         <a href="/cgi-bin/koha/serials/subscription-add.pl">Add 
Subscription</a>
         <a href="/cgi-bin/koha/serials/checkexpiration.pl">Check Expiration</a>

Index: koha-tmpl/intranet-tmpl/prog/en/serials/checkexpiration.tmpl
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/serials/Attic/checkexpiration.tmpl,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -b -r1.1.2.1 -r1.1.2.2
--- koha-tmpl/intranet-tmpl/prog/en/serials/checkexpiration.tmpl        22 Dec 
2006 14:38:59 -0000      1.1.2.1
+++ koha-tmpl/intranet-tmpl/prog/en/serials/checkexpiration.tmpl        26 Jan 
2007 20:48:36 -0000      1.1.2.2
@@ -85,7 +85,7 @@
                 <!-- TMPL_IF NAME="title"-->
                     <!-- TMPL_VAR NAME="title" -->
                 <!-- TMPL_ELSE -->
-                    <span class="problem"><b>No title</b></span>
+                    |
                 <!-- /TMPL_IF -->
                 </a>
                 <!-- TMPL_ELSE -->
@@ -94,7 +94,7 @@
                 <!-- TMPL_IF NAME="title"-->
                     <!-- TMPL_VAR NAME="title" -->
                 <!-- TMPL_ELSE -->
-                    <span class="problem"><b>No title</b></span>
+                    |
                 <!-- /TMPL_IF -->
                 </a>
                 <!-- TMPL_ELSE -->
@@ -102,7 +102,7 @@
                 <!-- TMPL_IF NAME="title"-->
                     <!-- TMPL_VAR NAME="title" -->
                 <!-- TMPL_ELSE -->
-                    <span class="problem"><b>No title</b></span>
+                    |
                 <!-- /TMPL_IF -->
                 </a>
                 <!-- /TMPL_IF -->

Index: koha-tmpl/intranet-tmpl/prog/en/serials/claims.tmpl
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/serials/claims.tmpl,v
retrieving revision 1.2.2.2
retrieving revision 1.2.2.3
diff -u -b -r1.2.2.2 -r1.2.2.3
--- koha-tmpl/intranet-tmpl/prog/en/serials/claims.tmpl 14 Dec 2006 12:59:23 
-0000      1.2.2.2
+++ koha-tmpl/intranet-tmpl/prog/en/serials/claims.tmpl 26 Jan 2007 20:48:36 
-0000      1.2.2.3
@@ -28,6 +28,10 @@
        <p>
        <form name="claims" action="claims.pl" method="post">
        <!-- TMPL_VAR name="CGIsupplier" -->
+                       <!-- TMPL_IF name="phone" -->Phone: <!-- TMPL_VAR 
name="phone" --><!-- /TMPL_IF -->
+                       <!-- TMPL_IF name="booksellerfax" -->Fax: <!-- TMPL_VAR 
name="booksellerfax" --><!-- /TMPL_IF -->
+                       <!-- TMPL_IF name="bookselleremail" --></p><p><a 
href="mailto:<!-- TMPL_VAR name="bookselleremail" -->"><!-- TMPL_VAR 
name="bookselleremail" --></a><!-- /TMPL_IF -->
+
        </p>
        <p>
     <!--TMPL_IF Name="letter"-->

Index: koha-tmpl/intranet-tmpl/prog/en/serials/result.tmpl
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/serials/result.tmpl,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -b -r1.1.2.1 -r1.1.2.2
--- koha-tmpl/intranet-tmpl/prog/en/serials/result.tmpl 30 Oct 2006 15:12:34 
-0000      1.1.2.1
+++ koha-tmpl/intranet-tmpl/prog/en/serials/result.tmpl 26 Jan 2007 20:48:36 
-0000      1.1.2.2
@@ -12,11 +12,7 @@
        <th>Publication year</th>
     </tr>
     <!-- TMPL_LOOP NAME="resultsloop" -->
-        <!-- TMPL_IF NAME="highlight" -->
-        <tr class="highlight">
-        <!-- TMPL_ELSE -->
         <tr>
-        <!-- /TMPL_IF -->
             <td>
                 <a href="#" onclick="Javascript:GetIt('<!-- TMPL_VAR 
NAME="biblionumber" -->','<!-- TMPL_VAR escape="URL" NAME="title" -->');" 
title="Get this one !">
                     <!-- TMPL_VAR NAME="title" -->

Index: koha-tmpl/intranet-tmpl/prog/en/serials/serials-collection.tmpl
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/serials/Attic/serials-collection.tmpl,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -b -r1.1.2.9 -r1.1.2.10
--- koha-tmpl/intranet-tmpl/prog/en/serials/serials-collection.tmpl     16 Jan 
2007 16:41:36 -0000      1.1.2.9
+++ koha-tmpl/intranet-tmpl/prog/en/serials/serials-collection.tmpl     26 Jan 
2007 20:48:36 -0000      1.1.2.10
@@ -7,19 +7,30 @@
 
 
 <script language="JavaScript" type="text/javascript">
+showlayer(<!-- TMPL_VAR NAME="yearmax"-->);
+
 function showlayer(numlayer)
 {
        var yeardata=document.getElementsByName("yeardata");
     for (i=0; i<yeardata.length; i++ ) {
                ong=yeardata[i].getAttribute('id');
         if (numlayer==ong) {
-                       yeardata[i].style.visibility="visible";
+                       yeardata[i].setAttribute("class","content_visible");
+            var tabactive=document.getElementById('link'+numlayer);
+            tabactive.removeAttribute("class");
+            tabactive.setAttribute("class","tab_active");
                } else {
-                       yeardata[i].style.visibility="hidden";
+                       yeardata[i].removeAttribute("class");
+            yeardata[i].setAttribute("class","content_hidden");
+            try {
+                var tabactive=document.getElementById('link'+ong);
+                tabactive.removeAttribute("class");
+                tabactive.setAttribute("class","tab_inactive");
+            }
+            catch(e){};
                }
        }
 }
-showlayer(<!-- TMPL_VAR NAME="yearmax"-->);
 function addsubscriptionid()
 {
        var tab=new Array();
@@ -42,6 +53,9 @@
     string=string.substring(0,string.length -1);
     document.edition.subscriptionid.value=string;
 }
+function popup(link) {
+    
newin=window.open(link,'popup','width=500,height=400,toolbar=false,scrollbars=yes');
+}
 </script>
 
 <!-- TMPL_UNLESS name="popup" -->
@@ -50,14 +64,171 @@
 <!-- /TMPL_UNLESS -->
 
 <div id="action">
+<!--TMPL_IF Name="subscr"-->
+  <a href="serials-collection.pl?biblionumber=<!--TMPL_VAR Name="biblionumber" 
-->">See any subscription attached to this biblio</a>
+<!--/TMPL_IF-->
+<!--TMPL_UNLESS Name="onesubscription"-->
 <!--TMPL_LOOP Name="subscriptions"-->
-       <a href="subscription-detail.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->">Subscription #<!-- TMPL_VAR name="subscriptionid" 
--></a> 
+       <span title="#<!-- TMPL_VAR name="subscriptionid" -->--<!--TMPL_IF 
name="periodicity1" -->
+                        1/day
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity2" -->
+                        1/week
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity3" -->
+                        1/2 weeks
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity4" -->
+                        1/3 weeks
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity5" -->
+                        1/Month
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity6" -->
+                        1/2 Months (6/year)
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity7" -->
+                        1/quarter
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity8" -->
+                        1/quarter
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity9" -->
+                        2/year
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity10" -->
+                        1/year
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity11" -->
+                        1/2 years
+                <!-- /TMPL_IF -->--
+                <!-- TMPL_IF name="numberpattern1" -->
+                    Number
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern2" -->
+                    Volume, Number, Issue
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern3" -->
+                    Volume, Number
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern4" -->
+                    Volume, Issue
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern5" -->
+                    Number, Issue
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern6" -->
+                    Seasonal only
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern7" -->
+                    None of the above
+                <!-- /TMPL_IF -->--<!-- TMPL_VAR name="branchcode" -->
+                --<!-- TMPL_VAR name="callnumber" -->--<!-- TMPL_VAR 
name="notes" -->">
+                <a href="subscription-detail.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->">Subscription #<!-- TMPL_VAR name="subscriptionid" 
--></a> </span>
 <!--/TMPL_LOOP -->
+<!--/TMPL_UNLESS-->
 </div>
+<!--TMPL_IF Name="subscriptions"-->
+<font size ="-2">
+<table>
+<!--TMPL_IF Name="onesubscription"-->
+<caption> Subscription Summary</caption>
+<!--TMPL_ELSE-->
+<caption> Subscription Summaries</caption>
+<!--/TMPL_IF-->
+<tr>
+  <th>Subs </th>
+  <th>Freq</th>
+  <th>Num pattern</th>
+  <th>Branch</th>
+  <th>Call Number</th>
+  <th>Notes</th>
+  <th>Renew</th>
+</tr>
+<!--TMPL_LOOP Name="subscriptions"-->
+       <tr>
+      <td>#<!-- TMPL_VAR name="subscriptionid" --> </td>
+      <td>         <!--TMPL_IF name="periodicity1" -->
+                        1/day
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity2" -->
+                        1/week
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity3" -->
+                        1/2 weeks
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity4" -->
+                        1/3 weeks
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity5" -->
+                        1/Month
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity6" -->
+                        1/2 Months (6/year)
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity7" -->
+                        1/quarter
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity8" -->
+                        1/quarter
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity9" -->
+                        2/year
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity10" -->
+                        1/year
+                <!-- /TMPL_IF -->
+                <!--TMPL_IF name="periodicity11" -->
+                        1/2 years
+                <!-- /TMPL_IF --></td>
+           <td>
+                <!-- TMPL_IF name="numberpattern1" -->
+                    Number
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern2" -->
+                    Volume, Number, Issue
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern3" -->
+                    Volume, Number
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern4" -->
+                    Volume, Issue
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern5" -->
+                    Number, Issue
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern6" -->
+                    Seasonal only
+                <!-- /TMPL_IF -->
+                <!-- TMPL_IF name="numberpattern7" -->
+                    None of the above
+                <!-- /TMPL_IF --></td>
+            <td> <!-- TMPL_VAR name="branchcode" --></td>
+            <td> <!-- TMPL_VAR name="callnumber" --></td>
+        <td> <!-- TMPL_VAR name="notes" -->        <!--TMPL_IF 
name="subscriptionexpired"--><br /><span class="problem"> Subscription 
Expired</span>
+        <!--/TMPL_IF-->
+        </td>
+        <!--TMPL_IF name="abouttoexpire"--><td class="problem"> <a 
onclick="javascript:popup('subscription-renew.pl?subscriptionid=<!--TMPL_VAR 
Name="subscriptionid"-->')">Renew</a></td>
+        <!--TMPL_ELSE-->
+        <!--TMPL_IF name="subscriptionexpired"--><td class="problem"> <a 
onclick="javascript:popup('subscription-renew.pl?subscriptionid=<!--TMPL_VAR 
Name="subscriptionid"-->')">Renew</a></td>
+        <!--TMPL_ELSE-->
+        <td> &nbsp;</td>
+        <!--/TMPL_IF-->
+        <!--/TMPL_IF-->
+
+      </tr>
+<!--/TMPL_LOOP -->
+</table>
+</font>
+<!--/TMPL_IF -->
     <div class="tabsubs">
     <!-- TMPL_LOOP NAME="years" -->
         <!-- TMPL_IF NAME="year" -->
-            <a  class="tabsubs" href="javascript:showlayer(<!-- TMPL_VAR 
NAME="year" -->)"><!-- TMPL_VAR NAME="year" --></a>
+        <!-- TMPL_IF NAME="first" -->
+            <a  id="link<!-- TMPL_VAR NAME="year" -->" class="tab_active" 
href="javascript:showlayer(<!-- TMPL_VAR NAME="year" -->)"><!-- TMPL_VAR 
NAME="year" --></a>
+        <!-- TMPL_ELSE -->
+            <a  id="link<!-- TMPL_VAR NAME="year" -->" class="tab_inactive" 
href="javascript:showlayer(<!-- TMPL_VAR NAME="year" -->)"><!-- TMPL_VAR 
NAME="year" --></a>
+        <!-- /TMPL_IF -->
         <!-- /TMPL_IF -->
     <!-- /TMPL_LOOP -->
 <!--    <a class="tabsubs" href="serial-issues.pl?biblionumber=<!-- TMPL_VAR 
name="biblionumber" -->&selectview=small">Compact view</a>-->
@@ -66,13 +237,18 @@
 <form name="edition" action="serials-edit.pl">
     <!-- TMPL_LOOP NAME="years" -->
  <!--TMPL_IF Name="first" -->
-    <div name="yeardata" id="<!-- TMPL_VAR NAME="year" -->" class="tabsub" 
style="visibility:visible">
+    <div name="yeardata" id="<!-- TMPL_VAR NAME="year" -->" 
class="content_visible" >
  <!--TMPL_ELSE -->
-    <div name="yeardata" id="<!-- TMPL_VAR NAME="year" -->" class="tabsub">
+    <div name="yeardata" id="<!-- TMPL_VAR NAME="year" -->" 
class="content_hidden">
  <!--/TMPL_IF -->
+<p><input type="submit" value="Edit serials" class="button bull"></p>
         <table width="400px">
             <tr>
-                <th> Date
+<!--TMPL_UNLESS Name="onesubscription"-->
+                <th> # Subs.
+                </th>
+<!--/TMPL_UNLESS-->
+                <th>Date published
                 </th>
                 <th>Date received
                 </th>
@@ -89,6 +265,9 @@
             </tr>
       <!-- TMPL_LOOP Name="serials" -->
             <tr name="branch <!--TMPL_VAR Name=branchcode"-->">
+<!--TMPL_UNLESS Name="onesubscription"-->
+                 <td><a 
href="serials-collection.pl?subscriptionid=<!--TMPL_VAR 
Name="subscriptionid"-->"><!--TMPL_VAR Name="subscriptionid"--></a></td>
+<!--/TMPL_UNLESS-->
                 <td>
                     <!-- TMPL_VAR Name="publisheddate" -->
                 </td>
@@ -113,15 +292,20 @@
                 </td>
                 <td>
                   <div visibility="hidden" name="subs" val="<!--TMPL_VAR 
Name="subscriptionid"-->"></div>
+                  <!--TMPL_IF Name="subscriptionexpired"-->
+                  <input type="checkbox" name="serialid" value="<!--TMPL_VAR 
Name="serialid"-->" disabled />
+                  <!--TMPL_ELSE-->
                   <input type="checkbox" name="serialid" value="<!--TMPL_VAR 
Name="serialid"-->" onclick="javascript:addsubscriptionid();"/>
+                  <!--/TMPL_IF -->
                 </td>
             </tr>
       <!-- /TMPL_LOOP -->
         </table>
+      <p><input type="submit" value="Edit serials" class="button bull"></p>
     </div>
     <!--/TMPL_LOOP -->
   <input type="hidden" name="subscriptionid" value="<!--TMPL_VAR 
Name="subscriptionidlist"-->">
-  <input type="submit" value="Edit serials" class="button bull">
-  </form>
+
+</form>
 
 <!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->

Index: koha-tmpl/intranet-tmpl/prog/en/serials/serials-edit.tmpl
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/serials/Attic/serials-edit.tmpl,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -u -b -r1.1.2.7 -r1.1.2.8
--- koha-tmpl/intranet-tmpl/prog/en/serials/serials-edit.tmpl   16 Jan 2007 
16:41:36 -0000      1.1.2.7
+++ koha-tmpl/intranet-tmpl/prog/en/serials/serials-edit.tmpl   26 Jan 2007 
20:48:36 -0000      1.1.2.8
@@ -10,7 +10,10 @@
 <!--onsubmit="return barcode_check()">-->
 <div id="action">
     <input type="submit" value="Save"  class="button" accesskey="w" /> 
<!--onClick="Check(this.form)" -->
-    <a href="subscription-detail.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->" title="detail of the subscription">Subscription 
Details</a>
+    <a href="serials-collection.pl?biblionumber=<!-- TMPL_VAR 
name="biblionumber" -->" title="serial Collection for <!--TMPL_VAR 
Name="bibliotitle"-->">Serial collection</a>
+    <!--TMPL_LOOP Name="subscriptions"-->
+    <a href="subscription-detail.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->" title="detail of the subscription">Subscription 
#<!-- TMPL_VAR name="subscriptionid" --></a>
+    <!--/TMPL_LOOP-->
     <!-- <a href="/cgi-bin/koha/serials/serials-home.pl?biblionumber=<!-- 
TMPL_VAR name="biblionumber" -->" class="button" title="all subscriptions on 
<!-- TMPL_VAR name="bibliotitle" -->">Search All Subscriptions</a> -->
     <a href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=<!-- TMPL_VAR 
name="biblionumber" -->" title="go to <!-- TMPL_VAR name="bibliotitle" 
-->">Show Biblio</a>
 </div>
@@ -54,7 +57,11 @@
             <input type="text" name="planneddate" value="<!-- TMPL_VAR 
name="planneddate" -->" size=10 maxlength=15>
         </td>
         <td>
-            <select name="status" size="1" id="status<!-- TMPL_VAR NAME="num" 
-->" OnChange="javascript:if (this.value==2){unHideItems('items'+<!-- TMPL_VAR 
NAME="serialid" -->,'label<!--TMPL_VAR Name="serialid"-->')}">
+            <!--TMPL_IF Name="subscriptionexpired"-->
+              <select name="status" size="1" id="status<!-- TMPL_VAR 
NAME="num" -->" disabled >
+            <!--TMPL_ELSE-->
+              <select name="status" size="1" id="status<!-- TMPL_VAR 
NAME="num" -->" OnChange="javascript:if 
(this.value==2){unHideItems('items'+<!-- TMPL_VAR NAME="subscriptionid" 
-->+<!-- TMPL_VAR NAME="serialid" -->,'label<!-- TMPL_VAR NAME="subscriptionid" 
--><!--TMPL_VAR Name="serialid"-->')}" >
+            <!--/TMPL_IF-->
   <!--TMPL_IF name="status1" -->
                     <option value="1" selected>Waited</option>
   <!-- /TMPL_IF -->
@@ -95,6 +102,7 @@
             <input type="text" name="notes" value="<!-- TMPL_VAR 
name="sernotes" -->" size=20 maxlength=255>
         </td>
     </tr>
+  <!--TMPL_UNLESS Name="subscriptionexpired"-->
   <!--TMPL_IF Name="serialsadditems"-->
           <tr>
           <td colspan="5">
@@ -132,8 +140,10 @@
     </td>
     </tr>
   <!-- /TMPL_IF -->
+  <!--/TMPL_UNLESS -->
 <!-- /TMPL_LOOP -->
 <!-- TMPL_LOOP name="newserialloop" -->
+    <!--TMPL_UNLESS Name="subscriptionexpired"-->
     <tr>
         <td>
             <input type="hidden" name="serialid" value="NEW" />
@@ -141,7 +151,7 @@
             <input type="hidden" name="biblionumber" value="<!-- TMPL_VAR 
NAME="biblionumber" -->" />
             <input type="hidden" name="itemcount" value="<!-- TMPL_VAR 
name="issuesatonce" -->" />
             <input type="hidden" name="user" value="<!-- TMPL_VAR 
name="librarian" -->" />
-            <b>Subs. <!-- TMPL_VAR name="subscriptionid" --></b> New Issue 
<input type="text" name="serialseq" value="" size="20" maxlength="100" />
+            <b>Subs. <!-- TMPL_VAR name="subscriptionid" --></b> New Issue 
<input type="text" name="serialseq" value="" size="20" maxlength="100" 
OnChange="javascript:if (this.value!=''){unHideItems('items<!-- TMPL_VAR 
NAME="subscriptionid" --><!-- TMPL_VAR NAME="serialid" -->','label<!-- TMPL_VAR 
NAME="subscriptionid" --><!--TMPL_VAR Name="serialid"-->')} else 
{HideItems('items<!-- TMPL_VAR NAME="subscriptionid" --><!-- TMPL_VAR 
NAME="serialid" -->','label<!-- TMPL_VAR NAME="subscriptionid" --><!--TMPL_VAR 
Name="serialid"-->')}"/>
         </td>
         <td>
             <input type="text" name="publisheddate" value="<!-- TMPL_VAR 
name="publisheddate" -->" size=10 maxlength=15>
@@ -150,7 +160,7 @@
             <input type="text" name="planneddate" value="<!-- TMPL_VAR 
name="planneddate" -->" size=10 maxlength=15>
         </td>
         <td>
-            <select name="status" size="1" id="status<!-- TMPL_VAR NAME="num" 
-->" OnChange="javascript:if (this.value==2){unHideItems('items'+<!-- TMPL_VAR 
NAME="subscriptionid" --><!-- TMPL_VAR NAME="serialid" -->,'label<!-- TMPL_VAR 
NAME="subscriptionid" --><!--TMPL_VAR Name="serialid"-->')}">
+            <select name="status" size="1" id="status<!-- TMPL_VAR NAME="num" 
-->" >
   <!--TMPL_IF name="status1" -->
                     <option value="1" selected>Waited</option>
   <!-- /TMPL_IF -->
@@ -226,6 +236,7 @@
     </td>
     </tr>
   <!-- /TMPL_IF -->
+  <!--/TMPL_UNLESS -->
 <!-- /TMPL_LOOP -->
 
 </table>
@@ -234,9 +245,8 @@
 
 <script language="JavaScript" type="text/javascript">
 
-function popup() {
-       window.open("subscription-renew.pl?subscriptionid=<!-- TMPL_VAR
-name="subscriptionid">","subscription_renewal",'width=700,height=400,toolbar=false,scrollbars=yes');
+function popup(subscriptionid) {
+       
window.open("subscription-renew.pl?subscriptionid="+subscriptionid,"subscription_renewal",'width=700,height=400,toolbar=false,scrollbars=yes');
 }
 
 function barcode_check(){

Index: koha-tmpl/intranet-tmpl/prog/en/serials/subscription-add.tmpl
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/serials/subscription-add.tmpl,v
retrieving revision 1.3.2.9
retrieving revision 1.3.2.10
diff -u -b -r1.3.2.9 -r1.3.2.10
--- koha-tmpl/intranet-tmpl/prog/en/serials/subscription-add.tmpl       11 Jan 
2007 16:53:15 -0000      1.3.2.9
+++ koha-tmpl/intranet-tmpl/prog/en/serials/subscription-add.tmpl       26 Jan 
2007 20:48:36 -0000      1.3.2.10
@@ -264,6 +264,8 @@
                 textbox +="<td><input type='text' name='whenmorethantemp3' 
size='4' onkeyup='moreoptionsupdate(\"whenmorethan3\",1)'><\/td>\n";
             }
             textbox +="<\/tr>";
+        } else {
+          textbox +="<tr> <td> issues expected</td><td><input type='text' 
name='issuesexpectedtemp1' size='4' 
onkeyup='moreoptionsupdate(\"issuesexpected1\",0)'><br/><a 
href='javascript:irregularity_check()'>Irregularity?</a></td></tr>";
         }
         textbox +="<\/table>\n";
     }
@@ -336,7 +338,10 @@
 function irregularity_check(){
     document.f.irreg_check.value = 1; // Irregularity button now pushed
     var periodicity = document.f.periodicity.value;
-    var rollover = document.f.whenmorethantemp2.value;
+    var rollover = document.f.issuesexpected1.value;
+    if(document.f.whenmorethantemp2){
+      rollover = document.f.whenmorethantemp2.value;
+    }
     if(document.f.whenmorethantemp3){
         rollover = document.f.whenmorethantemp3.value;
     }
@@ -516,7 +521,7 @@
 function irregular_order(){
     var irregular = '<!-- TMPL_VAR NAME="irregularity" -->';
     var periodicity = document.f.periodicity.value;
-    var irregarray = irregular.split('|');
+    var irregarray = irregular.split(',');
     if(periodicity ==1){
         for(j=0;j<irregarray.length;j++){
         document.getElementById("irregular"+irregarray[j]).checked = true; 
@@ -589,9 +594,12 @@
         }
     }
     if(startfrom1>0 && !startfrom2 && !startfrom3){
-        for(var i=startfrom1;i<(startfrom1+12);i=i+(1*every1)){
-            startfrom1 = i;
-            displaytext += numberpattern.replace(/{X}/,startfrom1)+'<br \/>\n';
+        var offset=eval(document.f.issuesexpected1.value);
+        if (!offset){
+            offset = 12 
+        }
+        for(var i=startfrom1;i<(startfrom1+offset);i+=every1){
+            displaytext += numberpattern.replace(/{X}/,i)+'<br \/>\n';
         }
     }
     displaytext = "<div style='padding: 5px; background-color: 
#CCCCCC'>"+displaytext+"<\/div>";
@@ -614,6 +622,7 @@
     fieldnametemp = fieldname.slice(0,-1)+"temp"+fieldnametempnumber;
     // alert(fieldnametemp);
     eval("document.f."+fieldname+".value = 
document.f."+fieldnametemp+".value");
+//     alert (fieldname+" : "+eval("document.f."+fieldname+".value") +' 
'+fieldnametemp+' : ' +eval("document.f."+fieldnametemp+".value"));
     if(rollover){
         eval("document.f.every"+(fieldnametempnumber-1)+".value = 
document.f."+fieldnametemp+".value");
     }
@@ -645,10 +654,11 @@
 <!-- /TMPL_IF -->
 <input type="hidden" name="user" value="<!-- TMPL_VAR name="loggedinusername" 
-->">
 <input type="hidden" name="irreg_check" value="0">
+<input type="hidden" name="issuesexpected1" value="0">
 
 
 <div>
-    <h2>Subscription information</h2>
+    <h2>Subscription information <br />for subscription #<!--TMPL_VAR 
name="subscriptionid"--></h2>
     <table border="0" cellspacing="5" cellpadding="0">
         <tr>
             <td>Librarian:</td>
@@ -664,7 +674,7 @@
                 <input type="text" name="biblionumber" value="<!-- TMPL_VAR 
name="biblionumber" -->" size="8"> 
                 (<input type="text" name="title" value="<!-- TMPL_VAR 
name="bibliotitle" -->" disabled readonly>)
                 <a href="#" onClick="Plugin(f)">Search for Biblio</a> |
-                <!--TMPL_UNLESS Name="mod"--><a 
href="/cgi-bin/koha/acqui/acqui-home.pl">Create Biblio</a><!--/TMPL_UNLESS-->
+                <!--TMPL_UNLESS Name="mod"--><a 
href="/cgi-bin/koha/cataloguing/addbiblio.pl">Create 
Biblio</a><!--/TMPL_UNLESS-->
             </td>
         </tr>
         <tr>
@@ -687,6 +697,10 @@
             <td><textarea name="notes" cols="30" rows="2"><!-- TMPL_VAR 
name="notes" --></textarea></td>
         </tr>
         <tr>
+            <td><label>Management Notes</label></td>
+            <td><textarea name="internalnotes" cols="30" rows="2"><!-- 
TMPL_VAR name="internalnotes" --></textarea></td>
+        </tr>
+        <tr>
             <td>Patron alert with </td>
             <td>
                 <select name="letter">

Index: koha-tmpl/intranet-tmpl/prog/en/serials/subscription-detail.tmpl
===================================================================
RCS file: 
/cvsroot/koha/koha/koha-tmpl/intranet-tmpl/prog/en/serials/subscription-detail.tmpl,v
retrieving revision 1.3.2.11
retrieving revision 1.3.2.12
diff -u -b -r1.3.2.11 -r1.3.2.12
--- koha-tmpl/intranet-tmpl/prog/en/serials/subscription-detail.tmpl    12 Jan 
2007 18:09:19 -0000      1.3.2.11
+++ koha-tmpl/intranet-tmpl/prog/en/serials/subscription-detail.tmpl    26 Jan 
2007 20:48:37 -0000      1.3.2.12
@@ -134,16 +134,18 @@
 
 -->
 </script>
-    <h1>Subscription</h1>
+    <h1>Subscription #<!--TMPL_VAR name="subscriptionid"--></h1>
+    <!--TMPL_IF Name="abouttoexpire"--><div class="problem">Subscription is by 
its end.<br />It should be renewed now.</div><!--/TMPL_IF-->
     <div id="action">
         <a href="subscription-add.pl?op=mod&amp;subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->">Edit</a>
         <a href="subscription-add.pl?op=dup&amp;subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->">Duplicate </a>
+        <a href="subscription-renew.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->">Renew</a>
         <a href="serials-edit.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->&amp;serstatus=1">Receive</a>
-        <a href="/cgi-bin/koha/serials/serials-collection.pl?biblionumber=<!-- 
TMPL_VAR name="biblionumber" -->">Serial Collection</a>
+        <a href="serials-collection.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->">Serial Collection</a>
         <!-- TMPL_IF NAME="routing" -->
-        <a href="/cgi-bin/koha/serials/routing.pl?subscriptionid=<!-- TMPL_VAR 
NAME="subscriptionid" -->">Edit Routing List</a>
+        <a href="routing.pl?subscriptionid=<!-- TMPL_VAR NAME="subscriptionid" 
-->">Edit Routing List</a>
         <!-- TMPL_ELSE -->
-        <a href="/cgi-bin/koha/serials/routing.pl?subscriptionid=<!-- TMPL_VAR 
NAME="subscriptionid" -->&op=new">Create Routing List</a>
+        <a href="routing.pl?subscriptionid=<!-- TMPL_VAR NAME="subscriptionid" 
-->&op=new">Create Routing List</a>
         <!-- /TMPL_IF -->
         <!-- TMPL_UNLESS name="totalissues" -->
             <a href="javascript:confirm_deletion()">
@@ -157,10 +159,12 @@
         <p><label>Librarian identity:</label> <!-- TMPL_VAR name="librarian" 
--></p>
         <p><label>Supplier:</label> <a 
href="/cgi-bin/koha/acqui/supplier.pl?id=<!-- TMPL_VAR 
name="aqbooksellerid"-->"><!-- TMPL_VAR name="aqbooksellername" 
-->&nbsp;</a></p>
         <p><label>Biblio:</label> <i>(<!-- TMPL_VAR name="biblionumber" 
-->)</i> <a href="/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=<!-- 
TMPL_VAR name="biblionumber" -->"><!-- TMPL_VAR name="bibliotitle" 
--></a></p><br />
-        <p><label>Branch :</label> <!-- TMPL_VAR name="branchcode" 
-->&nbsp;</p>
-        <p><label>Call Number:</label> <!-- TMPL_VAR name="callnumber" 
-->&nbsp;</p>
-        <p><label>Patron alert with:</label> <!-- TMPL_VAR name="letter" 
-->&nbsp;</p>
-        <p><label>Notes:</label> <!-- TMPL_VAR name="notes" --></p>
+<!-- TMPL_IF name="branchcode" --><p><label>Branch :</label> <!-- TMPL_VAR 
name="branchcode" -->&nbsp;</p><!-- /TMPL_IF -->
+        <!-- TMPL_IF name="callnumber" --><p><label>Call Number:</label> <!-- 
TMPL_VAR name="callnumber" -->&nbsp;</p><!-- /TMPL_IF -->
+        <!-- TMPL_IF name="letter" --><p><label>Patron alert with:</label> 
<!-- TMPL_VAR name="letter" -->&nbsp;</p><!-- /TMPL_IF -->
+        <!-- TMPL_IF name="notes" --><p><label>Notes:</label> <!-- TMPL_VAR 
name="notes" --></p><!-- /TMPL_IF -->
+        <!-- TMPL_IF name="internalnotes" --><p><label>Management 
Notes:</label> <!-- TMPL_VAR name="internalnotes" --></p><!-- /TMPL_IF -->
+        
     </fieldset>
     <form name="f">
     <fieldset>
@@ -386,6 +390,10 @@
         window.location="subscription-detail.pl?subscriptionid=<!-- TMPL_VAR 
name="subscriptionid" -->&op=del";
     }
 }
+function popup(link) {
+    
newin=window.open(link,'popup','width=500,height=400,toolbar=false,scrollbars=yes');
+}
+
 // window.onload = num_pattern();
 </script>
 <!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->

Index: serials/claims.pl
===================================================================
RCS file: /cvsroot/koha/koha/serials/claims.pl,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -b -r1.1.2.3 -r1.1.2.4
--- serials/claims.pl   14 Dec 2006 12:59:23 -0000      1.1.2.3
+++ serials/claims.pl   26 Jan 2007 20:48:37 -0000      1.1.2.4
@@ -76,6 +76,9 @@
 $template->param(
     order =>$order,
        CGIsupplier => $CGIsupplier,
+    phone => $supplierinfo[0]->{phone},
+    booksellerfax => $supplierinfo[0]->{booksellerfax},
+    bookselleremail => $supplierinfo[0]->{bookselleremail},
         preview => $preview,
         missingissues => address@hidden,
         supplierid => $supplierid,

Index: serials/serials-collection.pl
===================================================================
RCS file: /cvsroot/koha/koha/serials/Attic/serials-collection.pl,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -b -r1.1.2.6 -r1.1.2.7
--- serials/serials-collection.pl       16 Jan 2007 16:41:36 -0000      1.1.2.6
+++ serials/serials-collection.pl       26 Jan 2007 20:48:37 -0000      1.1.2.7
@@ -17,7 +17,7 @@
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
-# $Id: serials-collection.pl,v 1.1.2.6 2007/01/16 16:41:36 hdl Exp $
+# $Id: serials-collection.pl,v 1.1.2.7 2007/01/26 20:48:37 hdl Exp $
 
 use strict;
 use CGI;
@@ -34,8 +34,6 @@
 my $query = new CGI;
 my $op = $query->param('op');
 my $dbh = C4::Context->dbh;
-my $selectview = $query->param('selectview');
-$selectview = C4::Context->preference("SubscriptionHistory") unless 
$selectview;
 
 my $sth;
 # my $id;
@@ -49,20 +47,58 @@
                             debug => 1,
                             });
 my $biblionumber = $query->param('biblionumber');
-my $subscriptiondescs = GetSubscriptionsFromBiblionumber($biblionumber);
-my $subscriptions = GetFullSubscriptionsFromBiblionumber($biblionumber);
+my @subscriptionid = $query->param('subscriptionid');
 
-my $title = $subscriptions->[0]{bibliotitle};
+my $subscriptiondescs ;
+my $subscriptions;
+if (@subscriptionid){
+   my @subscriptioninformation=();
+   foreach my $subscriptionid (@subscriptionid){
+    my $subs= GetSubscription($subscriptionid);
+    $subs->{opacnote}     =~ s/\n/\<br\/\>/g;
+    $subs->{missinglist}  =~ s/\n/\<br\/\>/g;
+    $subs->{recievedlist} =~ s/\n/\<br\/\>/g;
+    ##these are display information
+    $subs->{ "periodicity" . $subs->{periodicity} } = 1;
+    $subs->{ "numberpattern" . $subs->{numberpattern} } = 1;
+    $subs->{ "status" . $subs->{'status'} } = 1;
+    $subs->{startdate}     = format_date( $subs->{startdate} );
+    $subs->{histstartdate} = format_date( $subs->{histstartdate} );
+    if ( $subs->{enddate} eq '0000-00-00' ) {
+        $subs->{enddate} = '';
+    }
+    else {
+        $subs->{enddate} = format_date( $subs->{enddate} );
+    }
+    $subs->{'abouttoexpire'}=abouttoexpire($subs->{'subscriptionid'});
+    
$subs->{'subscriptionexpired'}=HasSubscriptionExpired($subs->{'subscriptionid'});
+    push @$subscriptiondescs,$subs;
+    my $tmpsubscription= GetFullSubscription($subscriptionid);
+    @subscriptioninformation=(@$tmpsubscription,@subscriptioninformation);
+  }
+  $subscriptions=PrepareSerialsData(address@hidden);
+} else {
+  $subscriptiondescs = GetSubscriptionsFromBiblionumber($biblionumber) ;
+  my $subscriptioninformation = 
GetFullSubscriptionsFromBiblionumber($biblionumber);
+  $subscriptions=PrepareSerialsData($subscriptioninformation);
+}
+
+my $title = $subscriptiondescs->[0]{bibliotitle};
 my $yearmax=($subscriptions->[0]{year} eq "manage" && 
scalar(@$subscriptions)>1)? $subscriptions->[1]{year} 
:$subscriptions->[0]{year};
 my $yearmin=$subscriptions->[scalar(@$subscriptions)-1]{year};
 my $subscriptionidlist="";
 foreach my $subscription (@$subscriptiondescs){
   $subscriptionidlist.=$subscription->{'subscriptionid'}."," ;
+  $biblionumber = $subscription->{'bibnum'} unless ($biblionumber);
 }
+
+# warn "title : $title yearmax : $yearmax nombre d'elements dans le tableau 
:".scalar(@$subscriptions);
+#  use Data::Dumper; warn Dumper($subscriptions);
 chop $subscriptionidlist;
 $template->param(
+          onesubscription => (scalar(@$subscriptiondescs)==1),
           subscriptionidlist => $subscriptionidlist,
-          biblionumber => $query->param('biblionumber'),
+          biblionumber => $biblionumber,
           subscriptions => $subscriptiondescs,
           years => $subscriptions,
           yearmin => $yearmin,
@@ -70,6 +106,7 @@
           bibliotitle => $title,
           suggestion => C4::Context->preference("suggestion"),
           virtualshelves => C4::Context->preference("virtualshelves"),
+          subscr=>$query->param('subscriptionid'),
           );
 
 output_html_with_http_headers $query, $cookie, $template->output;

Index: serials/serials-edit.pl
===================================================================
RCS file: /cvsroot/koha/koha/serials/Attic/serials-edit.pl,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -u -b -r1.1.2.8 -r1.1.2.9
--- serials/serials-edit.pl     16 Jan 2007 16:41:36 -0000      1.1.2.8
+++ serials/serials-edit.pl     26 Jan 2007 20:48:37 -0000      1.1.2.9
@@ -17,7 +17,7 @@
 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
 # Suite 330, Boston, MA  02111-1307 USA
 
-# $Id: serials-edit.pl,v 1.1.2.8 2007/01/16 16:41:36 hdl Exp $
+# $Id: serials-edit.pl,v 1.1.2.9 2007/01/26 20:48:37 hdl Exp $
 
 =head1 NAME
 
@@ -88,7 +88,7 @@
 if (scalar(@subscriptionids)==1 && index($subscriptionids[0],",")>0){
   @subscriptionids =split /,/,$subscriptionids[0];
 }
-
+my $redirectstring;
 # If user comes from subscription details
 unless (@serialids){
   foreach my $subscriptionid (@subscriptionids){
@@ -120,6 +120,7 @@
 }
 
 my @newserialloop;
+my @subscriptionloop;
 foreach my $subscriptionid (@subscriptionids){
   my $cell;
   if (C4::Context->preference("serialsadditems")){
@@ -128,12 +129,15 @@
       PrepareItemrecordDisplay( $serialdatalist[0]->{'biblionumber'} );
   }
   $cell->{'subscriptionid'}=$subscriptionid;
+  $cell->{'subscriptionexpired'}=HasSubscriptionExpired($subscriptionid);
   $cell->{'itemid'}       = "NNEW";
   $cell->{'serialid'}     = "NEW";
   $cell->{'issuesatonce'}   = 1;
   push @newserialloop,$cell;
+  push @subscriptionloop, {'subscriptionid'=>$subscriptionid};
 }
 $template->param(newserialloop=>address@hidden);
+$template->param(subscriptions=>address@hidden);
 
 if ($op eq 'serialchangestatus') {
 #     my $sth = $dbh->prepare("select status from serial where serialid=?");
@@ -203,7 +207,7 @@
                                   $itemhash{$item}->{'field_values'},
                                   $itemhash{$item}->{'ind_tag'},
                                   $itemhash{$item}->{'indicator'});
-          warn $xml;
+#           warn $xml;
           my $record=MARC::Record::new_from_xml($xml, 'UTF-8');
           if ($item=~/^N/){
             #New Item

Index: serials/subscription-add.pl
===================================================================
RCS file: /cvsroot/koha/koha/serials/subscription-add.pl,v
retrieving revision 1.6.2.11
retrieving revision 1.6.2.12
diff -u -b -r1.6.2.11 -r1.6.2.12
--- serials/subscription-add.pl 11 Jan 2007 15:30:52 -0000      1.6.2.11
+++ serials/subscription-add.pl 26 Jan 2007 20:48:37 -0000      1.6.2.12
@@ -150,11 +150,11 @@
 
 if ($op eq 'addsubscription') {
     my @irregular = $query->param('irregular');
-    my $irregular_count = @irregular;
+    my $irregular_count = scalar(@irregular);
     for(my $i =0;$i<$irregular_count;$i++){
-        $irregularity .=$irregular[$i]."|";
+        $irregularity .=$irregular[$i].",";
     }
-    $irregularity =~ s/\|$//;
+    $irregularity =~ s/\,$//;
 
     my $auser = $query->param('user');
     my $branchcode = $query->param('branchcode');
@@ -200,6 +200,7 @@
     my $biblionumber = $query->param('biblionumber');
     my $callnumber = $query->param('callnumber');
     my $notes = $query->param('notes');
+    my $internalnotes = $query->param('internalnotes');
     my $hemisphere = $query->param('hemisphere') || 1;
        my $letter = $query->param('letter');
     ### BugFIX : hdl doesnot know what innerloops or letter stand for but it 
seems necessary. So he adds them.
@@ -211,7 +212,7 @@
                                        
$add2,$every2,$whenmorethan2,$setto2,$lastvalue2,$innerloop2,
                                        
$add3,$every3,$whenmorethan3,$setto3,$lastvalue3,$innerloop3,
                                        $numberingmethod, $status, 
$notes,$letter,$firstacquidate,$irregularity,
-                    $numberpattern, $callnumber, 
$hemisphere,($manualhistory?$manualhistory:0)
+                    $numberpattern, $callnumber, 
$hemisphere,($manualhistory?$manualhistory:0),$internalnotes
                                );
 
     print 
$query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid");
@@ -220,9 +221,10 @@
     my @irregular = $query->param('irregular');
     my $irregular_count = @irregular;
     for(my $i =0;$i<$irregular_count;$i++){
-    $irregularity .=$irregular[$i]."|";
+      $irregularity .=$irregular[$i].",";
+      warn "irregular : $irregular[$i] string :$irregularity";
     }
-    $irregularity =~ s/\|$//;
+    $irregularity =~ s/\,$//;
 
     my $auser = $query->param('user');
     my $librarian => $query->param('librarian'),
@@ -268,6 +270,7 @@
     my $status = 1;
     my $callnumber = $query->param('callnumber');
     my $notes = $query->param('notes');
+    my $internalnotes = $query->param('internalnotes');
     my $hemisphere = $query->param('hemisphere');
     my $letter = $query->param('letter');
     my $manualhistory = $query->param('manualhist');
@@ -287,7 +290,7 @@
         $lastvalue2,      $innerloop2,   $add3,           $every3,
         $whenmorethan3,   $setto3,       $lastvalue3,     $innerloop3,
         $numberingmethod, $status,       $biblionumber,   $callnumber,
-        $notes,           $letter,       $hemisphere,     $manualhistory,
+        $notes,           $letter,       $hemisphere,     
$manualhistory,$internalnotes,
         $subscriptionid);
 
     ModSubscriptionHistory 
($subscriptionid,$histstartdate,$enddate,$recievedlist,$missinglist,$opacnote,$librariannote);

Index: serials/subscription-detail.pl
===================================================================
RCS file: /cvsroot/koha/koha/serials/subscription-detail.pl,v
retrieving revision 1.3.2.9
retrieving revision 1.3.2.10
diff -u -b -r1.3.2.9 -r1.3.2.10
--- serials/subscription-detail.pl      11 Jan 2007 15:30:52 -0000      1.3.2.9
+++ serials/subscription-detail.pl      26 Jan 2007 20:48:37 -0000      1.3.2.10
@@ -84,61 +84,16 @@
 chop($weekarrayjs);
 
 # COMMENT hdl : IMHO, we should think about passing more and more data hash to 
template->param rather than duplicating code a new coding Guideline ?
-# $template->param($subs);
+$subs->{startdate}=format_date($subs->{startdate});
+$subs->{firstacquidate}=format_date($subs->{firstacquidate});
+$subs->{histstartdate}=format_date($subs->{histstartdate});
+$subs->{enddate}=format_date($subs->{enddate});
+$subs->{abouttoexpire}=abouttoexpire($subs->{subscriptionid});
+
+$template->param($subs);
 
 $template->param(
     routing => $routing,
-    user => $subs->{auser},
-    branchcode => $subs->{branchcode},
-    librarian => $subs->{librarian},
-    aqbooksellerid => $subs->{aqbooksellerid},
-    aqbooksellername => $subs->{aqbooksellername},
-    cost => $subs->{cost},
-    aqbudgetid => $subs->{aqbudgetid},
-    bookfundid => $subs->{bookfundid},
-    startdate => format_date($subs->{startdate}),
-    firstacquidate => format_date($subs->{firstacquidate}),    
-    periodicity => $subs->{periodicity},
-    dow => $subs->{dow},
-    irregularity => $subs->{irregularity},
-    numberlength => $subs->{numberlength},
-    weeklength => $subs->{weeklength},
-    monthlength => $subs->{monthlength},
-    numberpattern => $subs->{numberpattern},
-    add1 => $subs->{add1},
-    every1 => $subs->{every1},
-    whenmorethan1 => $subs->{whenmorethan1},
-    innerloop1 => $subs->{innerloop1},
-    setto1 => $subs->{setto1},
-    lastvalue1 => $subs->{lastvalue1},
-    add2 => $subs->{add2},
-    every2 => $subs->{every2},
-    whenmorethan2 => $subs->{whenmorethan2},
-    setto2 => $subs->{setto2},
-    lastvalue2 => $subs->{lastvalue2},
-    innerloop2 => $subs->{innerloop2},
-    add3 => $subs->{add3},
-    every3 => $subs->{every3},
-    whenmorethan3 => $subs->{whenmorethan3},
-    setto3 => $subs->{setto3},
-    lastvalue3 => $subs->{lastvalue3},
-    innerloop3 => $subs->{innerloop3},
-    weekarrayjs => $weekarrayjs,
-    numberingmethod => $subs->{numberingmethod},
-    status => $subs->{status},
-    biblionumber => $subs->{biblionumber},
-    bibliotitle => $subs->{bibliotitle},
-    callnumber => $subs->{callnumber},
-    notes => $subs->{notes},
-    subscriptionid => $subs->{subscriptionid},
-    letter => $subs->{letter},
-    manualhist => $subs->{manualhistory},
-    histstartdate => "".format_date($subs->{histstartdate}),
-    enddate => "".format_date($subs->{enddate}),
-    recievedlist => "".$subs->{recievedlist},
-    missinglist => "".$subs->{missinglist},
-    opacnote => "".$subs->{opacnote},
-    librariannote => "".$subs->{librariannote},
     serialslist => address@hidden,
     totalissues => $totalissues,
     hemisphere => $hemisphere,

Index: updater/updatedatabase
===================================================================
RCS file: /cvsroot/koha/koha/updater/updatedatabase,v
retrieving revision 1.157.2.52
retrieving revision 1.157.2.53
diff -u -b -r1.157.2.52 -r1.157.2.53
--- updater/updatedatabase      24 Jan 2007 13:57:26 -0000      1.157.2.52
+++ updater/updatedatabase      26 Jan 2007 20:48:37 -0000      1.157.2.53
@@ -1,6 +1,6 @@
 #!/usr/bin/perl
 
-# $Id: updatedatabase,v 1.157.2.52 2007/01/24 13:57:26 tipaul Exp $
+# $Id: updatedatabase,v 1.157.2.53 2007/01/26 20:48:37 hdl Exp $
 
 # Database Updater
 # This script checks for required updates to the database.
@@ -223,7 +223,7 @@
 );
 
 my %requirefields = (
-    subscription => { 'letter' => 'char(20) NULL', 'distributedto' => 'text 
NULL', 'firstacquidate'=>'date NOT NULL','irregularity'=>'TINYINT(3) NULL 
default 0','numberpattern'=>'TINYINT(3) NULL default 0', 'callnumber'=>'text 
NULL', 'hemisphere' =>'TINYINT(3) NULL default 0', 'issuesatonce'=>'TINYINT(3) 
NOT NULL default 1',  'branchcode' =>'varchar(12) NOT NULL default \'\'', 
'manualhistory'=>'TINYINT(1) NOT NULL default 0'},
+    subscription => { 'letter' => 'char(20) NULL', 'distributedto' => 'text 
NULL', 'firstacquidate'=>'date NOT NULL','irregularity'=>'TEXT NULL default 
\'\'','numberpattern'=>'TINYINT(3) NULL default 0', 'callnumber'=>'text NULL', 
'hemisphere' =>'TINYINT(3) NULL default 0', 'issuesatonce'=>'TINYINT(3) NOT 
NULL default 1',  'branchcode' =>'varchar(12) NOT NULL default \'\'', 
'manualhistory'=>'TINYINT(1) NOT NULL default 0','internalnotes'=>'LONGTEXT 
NULL default \'\''},
     itemtypes => { 'imageurl' => 'char(200) NULL'},
     aqbookfund => { 'branchcode' => 'varchar(4) NULL'},
     aqbudget => { 'branchcode' => 'varchar(4) NULL'},
@@ -1948,6 +1948,18 @@
 exit;
 
 # $Log: updatedatabase,v $
+# Revision 1.157.2.53  2007/01/26 20:48:37  hdl
+# Serials management : Bugfixes + improvements.
+# - Partial dates are now managed
+# - next Date Calculation with irregularity tested for 1 week and 1 month.
+# - manage if subscription is abouttoexpire or expired.
+# - Adding some information on serials pages about subscription.
+# - Managing irregularity with numbers.
+# - Adding Internal Notes in subscription management.
+# - Repeating Button above pages.
+#
+# Please run Updatedatabase to change irregularity and add internalnotes field 
 to subscription
+#
 # Revision 1.157.2.52  2007/01/24 13:57:26  tipaul
 # - setting supplierid to auto_increment (HDL : could you check that is works, 
i'm not 100% sure)
 # - removing 22 -> 30 marc_subfield_table -> marcxml stuff, it's now in 
misc/migration_tools/22_to_30/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]