#!/usr/bin/perl

#use utf8;
use strict;
use CGI;

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

use Opals::Search qw(
    srch_systemList
    srch_F852Default_marc21
);

use Opals::Permission qw(

    permission_getList
    permission_getDefaultPermission
    permission_getDefaultPermissionByType

);

use Opals::User qw(
    
    user_permission_1
    user_StrPermission_1
    user_listPermission_1
);


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        => 'ktest.tmpl',
#        reqPermission   => 'reqPermission1|reqPermission2|etc.',
#        op              => $op,
    }
);

# See User.pm for the list of permissions
#if ($permission && $permission->{'reqPermission1'}) {

#my $sl =  srch_systemList($dbh);
#my $obj = srch_F852Default_marc21($dbh);

open debug, ">/tmp/debugKKK";

=item
my @arrPermission = qw(
    user_add 
    user_edit       
    marc_edit       
    pref_edit       
    bibsrc          
    circ_loan       
    circ_return     
    circ_rsrv_self  
    circ_rsrv       
    report          
    user_delete     
    fine            
    notice   );       

my $sql = "select uid, permission from opl_user where permission <> ' ' && permission regexp 'y'"; 
my $sth = $dbh->prepare($sql);
    $sth->execute();
    while (my $rec = $sth->fetchrow_hashref){
        my $permission = $rec->{'permission'};
        my $newPermission="";
        print debug $permission,"\n";
        for (my $i = 0; $i < length($permission);$i++){
            if (substr($permission,$i,1) eq 'y'){
                $newPermission .= $arrPermission[$i] . ',' ;
            }
        }
        print debug "new permission \t" , $newPermission ,"\n";
    }
    
    $sth->finish;

=cut
my @arr1 = qw (1 2 3 4);
my @arr2 = qw (1 2 3 4 5 6 7);
my %hash1 = map{$_ =>1} @arr1;

if (grep {$hash1{$_}} @arr2){
     print debug "test $_ \n";
}
=item
foreach my $a1(@arr1){
    foreach my $a2(@arr2){
        if ($a1 eq $a2){
            print debug "$a1 = $a2 \n";
        }
        else {
            print debug "$a1 != $a2\n";
        }
    }
}
=cut

close debug;


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

##############################################################
sub user_select {
    my $dbh = @_;


}

sub user_listPermission {
    my ($dbh) =@_;
    my $sql = "select group_concat(code SEPARATOR ',') as permissions from opl_permission";
    my $sth = $dbh->prepare($sql);
    $sth->execute();
    my ($permStr) = $sth->fetchrow_array;
    $sth->finish;
    my @permArr = split(/,/ , $permStr);
    my $permissions;
    foreach my $p (@permArr){
        $permissions->{$p} = 1;
    }
    return $permissions;
}


