koha-cvs
[Top][All Lists]
Advanced

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

[Koha-cvs] koha C4/ClubsAndServices.pm koha-tmpl/intranet-... [dev_week]


From: Kyle Hall
Subject: [Koha-cvs] koha C4/ClubsAndServices.pm koha-tmpl/intranet-... [dev_week]
Date: Tue, 24 Apr 2007 18:00:09 +0000

CVSROOT:        /sources/koha
Module name:    koha
Branch:         dev_week
Changes by:     Kyle Hall <kylemhall>   07/04/24 18:00:09

Modified files:
        C4             : ClubsAndServices.pm 
        koha-tmpl/intranet-tmpl/ccfls/en/members: moremember.tmpl 
Added files:
        koha-tmpl/intranet-tmpl/ccfls/en/members: 
                                                  clubsAndServices-enroll.tmpl 
                                                  clubsAndServices.tmpl 
        members        : clubsAndServices-enroll.pl clubsAndServices.pl 

Log message:
        Added intranet stuff for patron clubs & services

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/koha/C4/ClubsAndServices.pm?cvsroot=koha&only_with_tag=dev_week&r1=1.1.2.1&r2=1.1.2.2
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/ccfls/en/members/moremember.tmpl?cvsroot=koha&only_with_tag=dev_week&r1=1.1.2.1.2.14&r2=1.1.2.1.2.15
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices-enroll.tmpl?cvsroot=koha&only_with_tag=dev_week&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/koha/koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices.tmpl?cvsroot=koha&only_with_tag=dev_week&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/koha/members/clubsAndServices-enroll.pl?cvsroot=koha&only_with_tag=dev_week&rev=1.1.2.1
http://cvs.savannah.gnu.org/viewcvs/koha/members/clubsAndServices.pl?cvsroot=koha&only_with_tag=dev_week&rev=1.1.2.1

Patches:
Index: C4/ClubsAndServices.pm
===================================================================
RCS file: /sources/koha/koha/C4/Attic/ClubsAndServices.pm,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -b -r1.1.2.1 -r1.1.2.2
--- C4/ClubsAndServices.pm      13 Apr 2007 18:40:19 -0000      1.1.2.1
+++ C4/ClubsAndServices.pm      24 Apr 2007 18:00:09 -0000      1.1.2.2
@@ -64,7 +64,11 @@
   GetClubOrService
   GetClubsAndServicesArchetypes
   GetClubOrServiceArchetype
+  DoesEnrollmentRequireData
   CancelClubOrServiceEnrollment
+  GetEnrolledClubsAndServices
+  GetPubliclyEnrollableClubsAndServices
+  GetAllEnrollableClubsAndServices
   
   getTodayMysqlDateFormat
 );
@@ -488,12 +492,13 @@
 ##   $data2: The data described in ClubsAndServicesArchetypes.caseData2Title
 ##   $data3: The data described in ClubsAndServicesArchetypes.caseData3Title
 ##   $branchcode: The branch where this club or service enrollment is,
+##   $borrowernumber: ( Optional: Alternative to using $borrowerCardnumber )
 ## Output:
 ##   $success: 1 on successful enrollment, 0 on failure
 ##   $errorCode: Code for reason of failure, good for translating errors in 
templates
 ##   $errorMessage: English description of error
 sub EnrollInClubOrService {
-  my ( $casaId, $casId, $borrowerCardnumber, $dateEnrolled, $data1, $data2, 
$data3, $branchcode ) = @_;
+  my ( $casaId, $casId, $borrowerCardnumber, $dateEnrolled, $data1, $data2, 
$data3, $branchcode, $borrowernumber ) = @_;
 
   ## Check for all neccessary parameters
   if ( ! $casaId ) {
@@ -502,11 +507,13 @@
   if ( ! $casId ) {
     return ( 0, 2, "No casId Given" );
   } 
-  if ( ! $borrowerCardnumber ) {
-    return ( 0, 3, "No Borrower Barcode Given" );
+  if ( ! ( $borrowerCardnumber || $borrowernumber ) ) {
+    return ( 0, 3, "No Borrower Given" );
   } 
   
-  my $borrowernumber = getBorrowernumberByCardnumber( $borrowerCardnumber );
+  if ( ! $borrowernumber ) {
+    $borrowernumber = getBorrowernumberByCardnumber( $borrowerCardnumber );
+  }
   
   if ( isEnrolled( $casId, $borrowernumber ) ) { return ( 0, 5, "Member is 
already enrolled!" ); }
 
@@ -761,6 +768,36 @@
   );
 }
 
+## function DoesEnrollmentRequireData
+## Returns 1 if the given Archetype has
+##   data fields that need to be filled in
+##   at the time of enrollment.
+## Input:
+##   $casaId: Id of Archetype to get
+## Output:
+##   1: Enrollment will require extra data
+##   0: Enrollment will not require extra data
+sub DoesEnrollmentRequireData {
+  my ( $casaId ) = @_;
+  
+  my $dbh = C4::Context->dbh;
+  
+  my $sth;
+  $sth = $dbh->prepare("SELECT caseData1Title FROM clubsAndServicesArchetypes 
WHERE casaId = ?");
+  $sth->execute( $casaId ) or return 0;
+
+  my $row = $sth->fetchrow_hashref;
+  
+  $sth->finish;
+
+  if ( $$row{'caseData1Title'} ) {
+    return 1;
+  } else {
+    return 0;
+  }
+}
+
+
 ## function CancelClubOrServiceEnrollment
 ## Cancels the given enrollment in a club or service
 ## Input:
@@ -781,6 +818,143 @@
   return $success;
 }
 
+## function GetEnrolledClubsAndServices
+## Returns information about clubs and services
+## the given borrower is enrolled in.
+## Input:
+##   $borrowernumber
+## Output:
+##   $results: 
+##     Reference to an array of associated arrays
+sub GetEnrolledClubsAndServices {
+  my ( $borrowernumber ) = @_;
+
+  my $dbh = C4::Context->dbh;
+
+  my ( $sth, @results );
+  $sth = $dbh->prepare("SELECT
+                          clubsAndServicesEnrollments.caseId,
+                          clubsAndServices.casId,
+                          clubsAndServices.casaId,
+                          clubsAndServices.title,
+                          clubsAndServices.description,
+                          clubsAndServices.branchcode,
+                          clubsAndServicesArchetypes.type,
+                          clubsAndServicesArchetypes.publicEnrollment
+                        FROM clubsAndServices, clubsAndServicesArchetypes, 
clubsAndServicesEnrollments
+                        WHERE ( 
+                          clubsAndServices.casaId = 
clubsAndServicesArchetypes.casaId 
+                          AND clubsAndServices.casId = 
clubsAndServicesEnrollments.casId
+                          AND ( clubsAndServices.endDate >= CURRENT_DATE() OR 
clubsAndServices.endDate IS NULL )
+                          AND clubsAndServicesEnrollments.dateCanceled IS NULL
+                          AND clubsAndServicesEnrollments.borrowernumber = ?
+                        )
+                        ORDER BY type, title
+                       ");
+  $sth->execute( $borrowernumber ) or return 0;
+    
+  while ( my $row = $sth->fetchrow_hashref ) {
+    push( @results , $row );
+  }
+
+  $sth->finish;
+  
+  return address@hidden;
+  
+}
+
+## function GetPubliclyEnrollableClubsAndServices
+## Returns information about clubs and services
+## the given borrower can enroll in.
+## Input:
+##   $borrowernumber
+## Output:
+##   $results: 
+##     Reference to an array of associated arrays
+sub GetPubliclyEnrollableClubsAndServices {
+  my ( $borrowernumber ) = @_;
+
+  my $dbh = C4::Context->dbh;
+
+  my ( $sth, @results );
+  $sth = $dbh->prepare("
+SELECT 
+DISTINCT ( clubsAndServices.casId ), 
+         clubsAndServices.title,
+         clubsAndServices.description,
+         clubsAndServices.branchcode,
+         clubsAndServicesArchetypes.type,
+         clubsAndServices.casaId
+FROM clubsAndServices, clubsAndServicesArchetypes
+WHERE clubsAndServicesArchetypes.casaId = clubsAndServices.casaId
+AND clubsAndServicesArchetypes.publicEnrollment =1
+AND clubsAndServices.casId NOT
+IN (
+  SELECT clubsAndServices.casId
+  FROM clubsAndServices, clubsAndServicesEnrollments
+  WHERE clubsAndServicesEnrollments.casId = clubsAndServices.casId
+  AND clubsAndServicesEnrollments.dateCanceled IS NULL
+  AND clubsAndServicesEnrollments.borrowernumber = ?
+)
+ ORDER BY type, title");
+  $sth->execute( $borrowernumber ) or return 0;
+    
+  while ( my $row = $sth->fetchrow_hashref ) {
+    push( @results , $row );
+  }
+
+  $sth->finish;
+  
+  return address@hidden;
+  
+}
+
+## function GetAllEnrollableClubsAndServices
+## Returns information about clubs and services
+## the given borrower can enroll in.
+## Input:
+##   $borrowernumber
+## Output:
+##   $results: 
+##     Reference to an array of associated arrays
+sub GetAllEnrollableClubsAndServices {
+  my ( $borrowernumber ) = @_;
+
+  my $dbh = C4::Context->dbh;
+
+  my ( $sth, @results );
+  $sth = $dbh->prepare("
+SELECT 
+DISTINCT ( clubsAndServices.casId ), 
+         clubsAndServices.title,
+         clubsAndServices.description,
+         clubsAndServices.branchcode,
+         clubsAndServicesArchetypes.type,
+         clubsAndServices.casaId
+FROM clubsAndServices, clubsAndServicesArchetypes
+WHERE clubsAndServicesArchetypes.casaId = clubsAndServices.casaId
+AND clubsAndServices.casId NOT
+IN (
+  SELECT clubsAndServices.casId
+  FROM clubsAndServices, clubsAndServicesEnrollments
+  WHERE clubsAndServicesEnrollments.casId = clubsAndServices.casId
+  AND clubsAndServicesEnrollments.dateCanceled IS NULL
+  AND clubsAndServicesEnrollments.borrowernumber = ?
+)
+ ORDER BY type, title");
+  $sth->execute( $borrowernumber ) or return 0;
+    
+  while ( my $row = $sth->fetchrow_hashref ) {
+    push( @results , $row );
+  }
+
+  $sth->finish;
+  
+  return address@hidden;
+  
+}
+
+
 sub getBorrowernumberByCardnumber {
   my $dbh = C4::Context->dbh;
   
@@ -800,7 +974,7 @@
   
   my $dbh = C4::Context->dbh;
   
-  my $sth = $dbh->prepare("SELECT COUNT(*) as isEnrolled FROM 
clubsAndServicesEnrollments WHERE casId = ? AND borrowernumber = ?");
+  my $sth = $dbh->prepare("SELECT COUNT(*) as isEnrolled FROM 
clubsAndServicesEnrollments WHERE casId = ? AND borrowernumber = ? AND 
dateCanceled IS NULL");
   $sth->execute( $casId, $borrowernumber ) or return( 0 );
 
   my $row = $sth->fetchrow_hashref;

Index: koha-tmpl/intranet-tmpl/ccfls/en/members/moremember.tmpl
===================================================================
RCS file: 
/sources/koha/koha/koha-tmpl/intranet-tmpl/ccfls/en/members/Attic/moremember.tmpl,v
retrieving revision 1.1.2.1.2.14
retrieving revision 1.1.2.1.2.15
diff -u -b -r1.1.2.1.2.14 -r1.1.2.1.2.15
--- koha-tmpl/intranet-tmpl/ccfls/en/members/moremember.tmpl    9 Apr 2007 
13:45:13 -0000       1.1.2.1.2.14
+++ koha-tmpl/intranet-tmpl/ccfls/en/members/moremember.tmpl    24 Apr 2007 
18:00:09 -0000      1.1.2.1.2.15
@@ -52,6 +52,7 @@
 
 <!-- TMPL_UNLESS NAME="unvalidlibrarian"--><form 
action="/cgi-bin/koha/readingrec.pl?bornum=<!-- TMPL_VAR name="bornum" -->" 
><input type="hidden" name="bornum" value="<!-- TMPL_VAR name="bornum" 
-->"><input type="submit" class="submit" value="Reading Record"></form><!-- 
/TMPL_UNLESS -->
 
+<!-- TMPL_UNLESS NAME="unvalidlibrarian"--><form 
action="/cgi-bin/koha/members/clubsAndServices.pl?bornum=<!-- TMPL_VAR 
name="bornum" -->" ><input type="hidden" name="borrowernumber" value="<!-- 
TMPL_VAR name="bornum" -->"><input type="submit" class="submit" value="Clubs & 
Services"></form><!-- /TMPL_UNLESS -->
 </div>
 <!-- TMPL_IF NAME="flagged" -->        <div class="details">
        <ul>

Index: koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices-enroll.tmpl
===================================================================
RCS file: koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices-enroll.tmpl
diff -N koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices-enroll.tmpl
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices-enroll.tmpl       
24 Apr 2007 18:00:09 -0000      1.1.2.1
@@ -0,0 +1,86 @@
+<!-- TMPL_INCLUDE NAME="head.inc" -->
+<!-- TMPL_INCLUDE NAME="body-top.inc" -->
+<!-- TMPL_INCLUDE NAME="body-top-members.inc" -->
+
+<div id="subTab-1">
+       <a href="/cgi-bin/koha/members/members-home.pl">
+               <img src="<!-- TMPL_VAR NAME='themelang' 
-->/images/subTab-members-search-selected.png" border="0" />
+       </a>
+</div>
+
+<div id="subTab-2">
+       <a href="/cgi-bin/koha/members/memberentry.pl?actionType=Add">
+               <img src="<!-- TMPL_VAR NAME='themelang' 
-->/images/subTab-members-addMember-unselected.png" border="0" />
+       </a>
+</div>
+
+<div id="subTab-3">
+       <a 
href="/cgi-bin/koha/members/memberentry.pl?categorycode=I&actionType=Add">
+               <img src="<!-- TMPL_VAR NAME='themelang' 
-->/images/subTab-members-addOrganization-unselected.png" border="0" />
+       </a>
+</div>
+
+<dl class="bodyPane">
+<dt class="bodyPane">
+  Clubs & Services for <a 
href="/cgi-bin/koha/members/moremember.pl?bornum=<!-- TMPL_VAR 
NAME="borrowernumber" -->" >
+  <!-- TMPL_VAR NAME="firstname" --> <!-- TMPL_VAR NAME="surname" --> (<!-- 
TMPL_VAR NAME="cardnumber" -->) </a>
+</dt>
+<dd class="bodyPane">
+<br />
+<!-- TMPL_IF NAME="previousActionEnroll" -->
+  <!-- TMPL_IF NAME="enrollSuccess" -->
+    <div>Enrolled Succesfully!</div>
+    <div><a 
href="/cgi-bin/koha/members/clubsAndServices.pl?borrowernumber=<!-- TMPL_VAR 
NAME="borrowernumber" -->">Back To Clubs & Services</a></div>
+  <!-- TMPL_ELSE -->
+    <div>Failed to Enroll!</div>
+    <div>Reason: <strong><!-- TMPL_VAR NAME="failureMessage" --></strong></div>
+    <div><a 
href="/cgi-bin/koha/members/clubsAndServices.pl?borrowernumber=<!-- TMPL_VAR 
NAME="borrowernumber" -->">Back To Clubs & Services</a></div>
+  <!-- /TMPL_IF -->
+<!-- /TMPL_IF -->
+
+<!-- TMPL_IF NAME="caseData1Title" -->
+  <div>
+    <h4>Please Enter The Following Information</h4>
+    <form action="clubsAndServices-enroll.pl" method="post">
+    <table>
+      <!-- TMPL_IF NAME="caseData1Title" -->
+        <tr>
+          <td><label for="data1"><!-- TMPL_VAR NAME="caseData1Title" -->: 
</label></td>
+          <td><input type="text" id="data1" name="data1" /></td>
+          <td><i><!-- TMPL_VAR NAME="caseData1Desc" --></i></td>
+        </tr>
+      <!-- /TMPL_IF -->
+
+      <!-- TMPL_IF NAME="caseData2Title" -->
+        <tr>
+          <td><label for="data2"><!-- TMPL_VAR NAME="caseData2Title" -->: 
</label></td>
+          <td><input type="text" id="data2" name="data2" /></td>
+          <td><i><!-- TMPL_VAR NAME="caseData2Desc" --></i></td>
+        </tr>
+      <!-- /TMPL_IF -->
+
+      <!-- TMPL_IF NAME="caseData3Title" -->
+        <tr>
+          <td><label for="data3"><!-- TMPL_VAR NAME="caseData3Title" -->: 
</label></td>
+          <td><input type="text" id="data3" name="data3" /></td>
+          <td><i><!-- TMPL_VAR NAME="caseData3Desc" --></i></td>
+        </tr>
+      <!-- /TMPL_IF -->
+
+      <input type="hidden" id="casId" name="casId" value="<!-- TMPL_VAR 
NAME="casId" -->" />
+      <input type="hidden" id="casaId" name="casaId" value="<!-- TMPL_VAR 
NAME="casaId" -->" />
+      <input type="hidden" id="borrowernumber" name="borrowernumber" 
value="<!-- TMPL_VAR NAME="borrowernumber" -->" />
+      <input type="hidden" name="action" value="enroll" />
+      <tr><td colspan="3"><input type="submit" value="Enroll" /></td></tr>
+    </table>
+    </form>
+  </div>
+<!-- /TMPL_IF -->
+
+
+
+</dd>
+</dl>
+</body>
+</html>
+

Index: koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices.tmpl
===================================================================
RCS file: koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices.tmpl
diff -N koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices.tmpl
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ koha-tmpl/intranet-tmpl/ccfls/en/members/clubsAndServices.tmpl      24 Apr 
2007 18:00:09 -0000      1.1.2.1
@@ -0,0 +1,96 @@
+<!-- TMPL_INCLUDE NAME="head.inc" -->
+<!-- TMPL_INCLUDE NAME="body-top.inc" -->
+<!-- TMPL_INCLUDE NAME="body-top-members.inc" -->
+
+<div id="subTab-1">
+       <a href="/cgi-bin/koha/members/members-home.pl">
+               <img src="<!-- TMPL_VAR NAME='themelang' 
-->/images/subTab-members-search-selected.png" border="0" />
+       </a>
+</div>
+
+<div id="subTab-2">
+       <a href="/cgi-bin/koha/members/memberentry.pl?actionType=Add">
+               <img src="<!-- TMPL_VAR NAME='themelang' 
-->/images/subTab-members-addMember-unselected.png" border="0" />
+       </a>
+</div>
+
+<div id="subTab-3">
+       <a 
href="/cgi-bin/koha/members/memberentry.pl?categorycode=I&actionType=Add">
+               <img src="<!-- TMPL_VAR NAME='themelang' 
-->/images/subTab-members-addOrganization-unselected.png" border="0" />
+       </a>
+</div>
+
+<dl class="bodyPane">
+<dt class="bodyPane">
+  Clubs & Services for <a 
href="/cgi-bin/koha/members/moremember.pl?bornum=<!-- TMPL_VAR 
NAME="borrowernumber" -->" >
+  <!-- TMPL_VAR NAME="firstname" --> <!-- TMPL_VAR NAME="surname" --> (<!-- 
TMPL_VAR NAME="cardnumber" -->) </a>
+</dt>
+<dd class="bodyPane">
+
+<!-- TMPL_IF NAME="enrolledClubsAndServicesLoop" -->
+  <table>
+  <thead>
+  <tr><th colspan="5">Clubs & Services</th></tr>
+  <tr>
+    <th>Title</th>
+    <th>Description</th>
+    <th>Library</th>
+    <th>Type</th>
+    <th></th>
+  </tr>
+  </thead>
+
+  <tbody>
+    <!-- TMPL_LOOP NAME="enrolledClubsAndServicesLoop" -->
+      <!-- TMPL_IF NAME="odd" --><tr class="highlight"><!-- TMPL_ELSE 
--><tr><!-- /TMPL_IF -->
+        <td><!-- TMPL_VAR NAME="title" --></td>
+        <td><!-- TMPL_VAR NAME="description" --></td>
+        <td><!-- TMPL_VAR NAME="branchcode" --></td>
+        <td><!-- TMPL_VAR NAME="type" --></td>
+        <td><a href="clubsAndServices.pl?action=cancel&caseId=<!-- TMPL_VAR 
NAME="caseId" -->&borrowernumber=<!-- TMPL_VAR 
NAME="borrowernumber"-->">Cancel</a></td>
+      </tr>
+    <!-- /TMPL_LOOP -->
+  </tbody>
+
+  </table>
+<!-- TMPL_ELSE -->
+  <h4>Patron Is Not Enrolled In Any Clubs Or Services</h4>
+<!-- /TMPL_IF -->
+
+<!-- TMPL_IF NAME="enrollableClubsAndServicesLoop" -->
+  <table>
+  <thead>
+  <tr><th colspan="5">Enroll In Clubs & Services</th></tr>
+  <tr>
+    <th>Title</th>
+    <th>Description</th>
+    <th>Library</th>
+    <th>Type</th>
+    <th></th>
+  </tr>
+  </thead>
+
+  <tbody>
+    <!-- TMPL_LOOP NAME="enrollableClubsAndServicesLoop" -->
+      <!-- TMPL_IF NAME="odd" --><tr class="highlight"><!-- TMPL_ELSE 
--><tr><!-- /TMPL_IF -->
+        <td><!-- TMPL_VAR NAME="title" --></td>
+        <td><!-- TMPL_VAR NAME="description" --></td>
+        <td><!-- TMPL_VAR NAME="branchcode" --></td>
+        <td><!-- TMPL_VAR NAME="type" --></td>
+        <td><a href="clubsAndServices-enroll.pl?casId=<!-- TMPL_VAR 
NAME="casId" -->&casaId=<!-- TMPL_VAR NAME="casaId" -->&borrowernumber=<!-- 
TMPL_VAR NAME="borrowernumber"-->">Enroll</a></td>
+      </tr>
+    <!-- /TMPL_LOOP -->
+  </tbody>
+
+  </table>
+<!-- TMPL_ELSE -->
+  <h4>There Are No New Clubs Or Services To Enroll In</h4>
+<!-- /TMPL_IF -->
+
+
+<br />
+</dd>
+</dl>
+</body>
+</html>
+

Index: members/clubsAndServices-enroll.pl
===================================================================
RCS file: members/clubsAndServices-enroll.pl
diff -N members/clubsAndServices-enroll.pl
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ members/clubsAndServices-enroll.pl  24 Apr 2007 18:00:09 -0000      1.1.2.1
@@ -0,0 +1,131 @@
+#!/usr/bin/perl
+
+# wrriten 15/10/2002 by address@hidden
+# script to display borrowers account details in the opac
+use strict;
+
+use CGI;
+use HTML::Template;
+
+use C4::Output;
+use C4::Search;
+use C4::Circulation::Circ2;
+use C4::Auth;
+use C4::Interface::CGI::Output;
+use C4::Date;
+use C4::Koha;
+use C4::ClubsAndServices;
+
+my $query = new CGI;
+
+my $borrowernumber = $query->param('borrowernumber');
+
+my ($template, $loggedinuser, $cookie)
+    = get_template_and_user({template_name => 
"members/clubsAndServices-enroll.tmpl",
+                             query => $query,
+                             type => "intranet",
+                             authnotrequired => 0,
+                             flagsrequired => {borrow => 1},
+                             debug => 1,
+                             });
+
+# get borrower information ....
+my $borrowerData = borrdata( '', $borrowernumber );
+$template->param(
+  borrowernumber => $borrowernumber,
+  surname => $borrowerData->{'surname'},
+  firstname => $borrowerData->{'firstname'},
+  cardnumber => $borrowerData->{'cardnumber'}
+);
+                                                              
+
+if ( $query->param('action') eq 'enroll' ) { ## We were passed the necessary 
fields from the enrollment page.
+  my $casId = $query->param('casId');
+  my $casaId = $query->param('casaId');
+  my $data1 = $query->param('data1');
+  my $data2 = $query->param('data2');
+  my $data3 = $query->param('data3');
+            
+  my $dateEnrolled; # Will default to Today
+              
+  my ( $success, $errorCode, $errorMessage ) = EnrollInClubOrService( $casaId, 
$casId, '', $dateEnrolled, $data1, $data2, $data3, '', $borrowernumber  );
+                
+  $template->param(
+    previousActionEnroll => 1,
+  );
+                            
+  if ( $success ) {
+    $template->param( enrollSuccess => 1 );
+  } else {
+    $template->param( enrollFailure => 1 );
+    $template->param( failureMessage => $errorMessage );
+  }
+                                              
+} elsif ( DoesEnrollmentRequireData( $query->param('casaId') ) ) { ## We were 
not passed any data, and the service requires extra data
+  my ( $casId, $casaId, $casTitle, $casDescription, $casStartDate, 
$casEndDate, $casTimestamp ) = GetClubOrService( $query->param('casId') );
+  my ( $casaId, $casaType, $casaTitle, $casaDescription, $casaPublicEnrollment,
+       $casData1Title, $casData2Title, $casData3Title,
+       $caseData1Title, $caseData2Title, $caseData3Title,
+       $casData1Desc, $casData2Desc, $casData3Desc,
+       $caseData1Desc, $caseData2Desc, $caseData3Desc,
+       $timestamp )= GetClubOrServiceArchetype( $casaId );
+  $template->param(
+                  casId => $casId,
+                  casTitle => $casTitle,
+                  casDescription => $casDescription,
+                  casStartDate => $casStartDate,
+                  casEndDate => $casEndDate,
+                  casTimeStamp => $casTimestamp,
+                  casaId => $casaId,
+                  casaType => $casaType,
+                  casaTitle => $casaTitle,
+                  casaDescription => $casaDescription,
+                  casaPublicEnrollment => $casaPublicEnrollment,
+
+                  borrowernumber => $borrowernumber,
+                  );
+
+  if ( $caseData1Title ) {
+    $template->param( caseData1Title => $caseData1Title );
+  }
+  if ( $caseData2Title ) {
+    $template->param( caseData2Title => $caseData2Title );
+  }
+  if ( $caseData3Title ) {
+    $template->param( caseData3Title => $caseData3Title );
+  }
+  
+  if ( $caseData1Desc ) {
+    $template->param( caseData1Desc => $caseData1Desc );
+  }
+  if ( $caseData2Desc ) {
+    $template->param( caseData2Desc => $caseData2Desc );
+  }
+  if ( $caseData3Desc ) {
+    $template->param( caseData3Desc => $caseData3Desc );
+  }
+      
+} else { ## We were not passed any data, but the enrollment does not require 
any
+
+  my $casId = $query->param('casId');
+  my $casaId = $query->param('casaId');
+            
+  my $dateEnrolled; # Will default to Today
+              
+  my ( $success, $errorCode, $errorMessage ) = EnrollInClubOrService( $casaId, 
$casId, '', $dateEnrolled, '', '', '', '', $borrowernumber  );
+                
+  $template->param(
+    previousActionEnroll => 1,
+  );
+                            
+  if ( $success ) {
+    $template->param( enrollSuccess => 1 );
+  } else {
+    $template->param( enrollFailure => 1 );
+    $template->param( failureMessage => $errorMessage );
+  }
+
+
+}
+output_html_with_http_headers $query, $cookie, $template->output;
+

Index: members/clubsAndServices.pl
===================================================================
RCS file: members/clubsAndServices.pl
diff -N members/clubsAndServices.pl
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ members/clubsAndServices.pl 24 Apr 2007 18:00:09 -0000      1.1.2.1
@@ -0,0 +1,56 @@
+#!/usr/bin/perl
+
+# wrriten 15/10/2002 by address@hidden
+# script to display borrowers account details in the opac
+use strict;
+
+use CGI;
+use HTML::Template;
+
+use C4::Output;
+use C4::Search;
+use C4::Circulation::Circ2;
+use C4::Auth;
+use C4::Interface::CGI::Output;
+use C4::Date;
+use C4::Koha;
+use C4::ClubsAndServices;
+
+my $query = new CGI;
+
+my $borrowernumber = $query->param('borrowernumber');
+
+my ($template, $loggedinuser, $cookie)
+    = get_template_and_user({template_name => "members/clubsAndServices.tmpl",
+                            query => $query,
+                            type => "intranet",
+                            authnotrequired => 0,
+                            flagsrequired => {borrow => 1},
+                            debug => 1,
+                            });
+
+# get borrower information ....
+my $borrowerData = borrdata( '', $borrowernumber );
+$template->param(
+  borrowernumber => $borrowernumber,
+  surname => $borrowerData->{'surname'},
+  firstname => $borrowerData->{'firstname'},
+  cardnumber => $borrowerData->{'cardnumber'}
+);
+                                                
+
+
+if ( $query->param('action') eq 'cancel' ) { ## Cancel the enrollment in the 
passed club or service
+  CancelClubOrServiceEnrollment( $query->param('caseId') );
+}
+
+## Get the borrowers current clubs & services
+my $enrolledClubsAndServices = GetEnrolledClubsAndServices( $borrowernumber );
+$template->param( enrolledClubsAndServicesLoop => $enrolledClubsAndServices );
+
+## Get clubs & services the borrower can enroll in from the Intranet
+my $enrollableClubsAndServices = GetAllEnrollableClubsAndServices( 
$borrowernumber );
+$template->param( enrollableClubsAndServicesLoop => 
$enrollableClubsAndServices );
+
+output_html_with_http_headers $query, $cookie, $template->output;
+




reply via email to

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