#!/usr/bin/perl
use strict;
use warnings;

use Digest::MD5 qw(md5 md5_hex md5_base64);
use MIME::Parser;
use MIME::Entity;
use MIME::Body;
use Getopt::Long;


use lib qw(Core);
use lib qw(Classes);
use ImagesManager;
use ResultsManager;
use ResultsTargetManager;
use ResultsUploadManager;

use Logger;

my $SCRIPTNAME = 'upload_results.pl';

#my $logger = new Logger();

my $directory = "";
my @FILES_LIST = ();
my $count_files = 0;


my $results_manager = new ResultsManager();
my $results_target_manager = new ResultsTargetManager();
my $resultsupload_manager = new ResultsUploadManager();

my $TARGET = "T0388";
my $protein_pdb = '/data/CASP9/TARGETS/'.$TARGET.'.pdb';
my $output_small_str_image_png = '/data/CASP9/PLOTS/STR/'.$TARGET.'.small.png'; #structure image
my $images_manager = new ImagesManager();


#$resultsupload_manager->generate_al_small_images($TARGET);
#$resultsupload_manager->generate_gdt_images($TARGET);
############# end
#exit(0);




############################################################################################ JOIN LGA and ACE 
############# JOIN LGA 4 A results with ACE
#my $lga_results_dir = "/data/CASP9/RESULTS/LGA/4A/DATA/".$TARGET;
#my $ace_results_dir = "/data/CASP9/RESULTS/ACE/".$TARGET;
#my $lga_ace_results_dir = "/data/CASP9/RESULTS/LGA_ACE/".$TARGET;
#$resultsupload_manager->join_lga_with_ace($lga_results_dir, $ace_results_dir, $lga_ace_results_dir, $TARGET);
############# JOIN end


########### MVSM Count upload
#my $parameters = {'target' => $TARGET};
#my @results = $results_manager->get_results($parameters);
#
#for(my $count = 0; $count < scalar(@results); $count++) {
#
#print $results[$count]->{ID} . "\n";
#
#	$resultsupload_manager->update_mvsm_results($results[$count]->{ID});
#
#}

my $target_list = 'conf/targets_list_descriptors_003';

open (TL, $target_list) || die "Cannot open input file $target_list: $!";
while(my $target = <TL>) {
	chomp($target);
	if ($target =~ /^#/){next;}

	$TARGET = $target;

# #### run this script when all results is uploaded
# $resultsupload_manager->update_rank($TARGET);
# 
#}


# # # ##############DESCRIPTORS old
# # # $directory = "/data/CASP9/RESULTS/DESCRIPTORS/$TARGET";
# # # @FILES_LIST = ();
# # # if(open(FILE_list_of_results, "/bin/ls " . $directory. "/*.al |")) {
# # # 	@FILES_LIST = <FILE_list_of_results>;
# # # 	close (FILE_list_of_results);
# # # }
# # # $count_files = 0;
# # # foreach my $line (@FILES_LIST) {
# # #     	$count_files ++;	
# # # 	$line =~ /$directory\/(.*)/;
# # # 	my $file_name = $1;
# # # 	$resultsupload_manager->upload_descriptors($file_name, $directory);
# # # 	print "File #" . $count_files . "\n";
# # # }

##############DESCRIPTORS
$directory = "/data/CASP9/RESULTS/DESCRIPTORS";
my $file_name = $TARGET . '_res';
$resultsupload_manager->upload_descriptors($file_name, $directory);
}

exit(0);
