#!/usr/bin/perl

#use utf8;
use strict;
use CGI;
use Digest::SHA qw(
    sha1_base64
    sha1_hex
);

use Opals::Context;
use Opals::Template_ajax qw(
    tmpl_read
    tmpl_write
    tmpl_preference
);
use Opals::Locale qw(
    loc_getMsgFile
    loc_write
);
use JSON;
my $dbh = Opals::Context->dbh();
END { $dbh->disconnect(); }

my $cgi      = CGI->new;
my $input    = $cgi->Vars();
my ($permission, $cookie, $template) = tmpl_read(
    {
        dbh             => $dbh,
        cgi             => $cgi,
        tmplFile        => 'ajax/portlet/getWebLinks.tmpl',
    }
);

     my $nItemShow   = $input->{'nItemShow'};
    my $fieldsShow  = $input->{'fieldsShow'};
    if(defined $nItemShow && $nItemShow eq 'All'){
        $nItemShow=0;
    }
    elsif(!defined $nItemShow || $nItemShow <=0){$nItemShow=5;}
    if(!defined $fieldsShow || $fieldsShow eq ''){$fieldsShow='title,url,grade,subject';}

    my $webLinkList = getWebLinks($dbh,$nItemShow,$fieldsShow );
    my $webLink={nItemShow     => $nItemShow,
                 webLinkList   =>$webLinkList};
    my $json = to_json($webLink);
    print "Content-type: text/plain\n\n";
    print $json;

=item    
    $template->param(
        webLinkList   => $webLinkList,
        nItemShow     => $nItemShow,

    );
    if ($fieldsShow =~ m/grade/gi){
        $template->param(showGrade =>1);
    }
    if ($fieldsShow =~ m/subject/gi){
        $template->param(showSubject =>1);
    }
  
$template->param(fieldsShow =>$fieldsShow);

tmpl_write($dbh, $cgi, $cookie, $template);
=cut
################################################################################
sub getWebLinks{
    my ($dbh,$nItemShow) = @_;
    my @webLinkList;

    my $sql=(<<_SQL_);
     select * from   opl_webLinks order by title
_SQL_
    if($nItemShow >0){
        $sql .= " limit  $nItemShow";
    }
    open debug,">/tmp/aa11";print debug "$nItemShow\n";close debug;
    my $sth = $dbh->prepare($sql);
    $sth->execute();
    my $url; 
    while (my $rec = $sth->fetchrow_hashref) {
        $url = $rec->{'url'};
        if($url !~ m/^mailto:/i && $url !~ m/http:\/\/|https:\/\//i){
            $url = "http://" . $url;
            $rec->{'url'} = $url;
        }
        $rec->{'description'} =~ s/\n/<br>/g;
        $rec->{'title'} =~ s/'/\'/g;

        $rec->{'subject'}     =~ s/,/, /g;
        $rec->{'grade'}       =~ s/,/, /g;
        push @webLinkList, $rec;
    }
    $sth->finish;
    
    return \@webLinkList;
}

