#!/usr/bin/perl

use strict;
use CGI;

use Opals::Context;
use Opals::Constant;
use Opals::Template qw(
    tmpl_read
    tmpl_write
    tmpl_redirect
);

use Opals::Locale qw(
    loc_getMsgFile
    loc_write
);
use Opals::Date qw(
    date_f005
    date_text
);
use Opals::ReserveShelf qw(
    rs_getReserveShelfByGrp
    rs_getReserveShelfByField
    rs_delete
);

my $dbh = Opals::Context->dbh();
END { $dbh->disconnect(); }

my $cgi = CGI->new;
my $input = $cgi->Vars();
my ($permission, $cookieList, $template) = tmpl_read(
    {
        dbh             => $dbh,
        cgi             => $cgi,
        tmplFile        => 'rs/rsList.tmpl',
    }
);
 
my $dateToday = date_f005();
   $dateToday =~ s/([\d]{4})([\d]{2})([\d]{2})[\d]+\.(0|1)/$1-$2-$3/;
my $sessionID = $cgi->cookie('globalSessionID');
      
   my $shelfId     = $input->{'shelfId'};
   my $op          = $input->{'op'};
   my $shelfReserve     =undef;

   my $grpBy      = $input->{'grpBy'};
   my $srchBy     = $input->{'searchBy'};
   my $srList;
   if($op eq "del" && (defined $shelfId && $shelfId>0)){
       rs_delete($dbh,$shelfId);
   }

    if($srchBy && $srchBy ne ''){
        my $sVal     = $input->{'sVal'};
        $srList   = rs_getReserveShelfByField($dbh,$srchBy,$sVal);
        $template->param("hide_$srchBy"     => 1,
                          "hili_$srchBy" => 1);
    }
    else{
        $grpBy ='subject' if(!$grpBy || $grpBy eq '');
        $srList= rs_getReserveShelfByGrp($dbh,$grpBy);
    }

    $template->param(srList=> $srList ,
                     "browse_$grpBy"    => 1,
                     hlpUrl     => Opals::Constant->getHlpUrl('reserveShelf'));             
  
  
  if ($permission && $permission->{'circ_rsrv'}) {
      $template->param(editable=>1);
  }
 
#Tue, Jan 12, 2010 @ 10:31:41 EST
my $msgValMap ={};
my $msgMap            =loc_getMsgFile('util/reserveShelf.msg',$msgValMap);
loc_write($template,$msgMap);

tmpl_write($dbh, $cgi, $cookieList, $template);





