#Declaration de l espace de travail et du chemin de l executable R :
use strict;
use Carp;
use Statistics::R;
use Cwd qw(abs_path);
use File::Basename;

#Parametres d'entree
my $count_file               =$ARGV[0]; #input count file name
my $output_file              =$ARGV[1]; #output file name

#Récuperer le numero (unique) de l'output
my ($nb) = ($output_file=~/galaxy_dataset_(\d+)\.\S+$/);

#Repertoire de sortie cree par le script, verif des droits d'ecriture sur ce repertoire de sortie
`cd /galaxydata/database/files/workspace/; mkdir $nb; chmod -R 777 $nb/; cd $nb/;`;
my $working_dir= "/galaxydata/database/files/workspace/$nb";

# Rbin path
$r_bin   = '/usr/local/bioinfo/src/R/current/bin/R';
#Log dir
$log_dir = $working_dir;

#déclaration de l'objet $R et ouverture du pont :
$R = Statistics::R->new(
    "r_bin"   => $r_bin,
    "log_dir" => $log_dir,
) or die "Problem with R : $!\n";
# Ouverture du pont
$R->startR;

#envoi du repertoire de travail
$R->send(
   qq`
   if (!require(devtools))
   install.packages("devtools")
   devtools::install_github("jcheng5/googleCharts")
    `);

#Fermeture du pont
$R->stopR();

#Mise en forme d'un rapport HTML
open OUT,"> $working_dir/report.html"
	or die "Unable to create HTML output file : $!\n";
print OUT "<HTML><HEAD><TITLE>Charts</TITLE></HEAD>\n";
print OUT "<BODY>\n";

#Recuperation des outputs dans Galaxy
my $cmdhtml ='';
my $out= "$working_dir/statistics_report.html";
if (! -e $out){print STDERR "Pas de fichier html produit \n";}
else {$cmdhtml = "(mv $out $output_file) >& ./cp_html.log 2>&1";
system $cmdhtml;}
