#!/usr/bin/env perl
# Zkopíruje fotky her ze složek, které mají divná jména, ve kterých jsou i pravidla a které často patří Jakubovi bez přístupu pro ostatní,
# do složek, které se jmenují podle kódů her.
# Copyright © 2015 Dan Zeman <zeman@ufal.mff.cuni.cz>
# Licence: GNU GPL

use utf8;
use open ':utf8';
use lib '/s/w/lib/dan';
use lib '/s/w/lib/cgi/hry';
binmode(STDIN, ':utf8');
binmode(STDOUT, ':utf8');
binmode(STDERR, ':utf8');
# Danovy sdílené knihovny.
use dzsql;
use sitesql;
use ascii;
use dzsys;
# Připojit se k databázi her.
$hdb = sitesql::connect_obchod('hry');
$odb = sitesql::connect_obchod('web_hrejsi_obchod');
# Získat z databáze seznam kódů her a odpovídajících složek na starém webu, pokud existují.
my $hry = dzsql::dotaz($hdb, 'kod', 'nazev', 'slozka_hrejsi', 'hry ORDER BY kod');
print("Nalezeno ", scalar(@{$hry}), " her.\n");
my $nmsh = 0;
foreach my $hra (@{$hry})
{
    my $unazev = ascii::ascii(lc($hra->{nazev}));
    $unazev =~ s/[^\p{Latin}\pN\s]//g;
    $unazev =~ s/^\s+//;
    $unazev =~ s/\s+$//;
    $unazev =~ s/\s+/_/g;
    $unazev = 'nazev_hry' if(!$unazev);
    if(defined($hra->{slozka_hrejsi}) && $hra->{slozka_hrejsi} ne '')
    {
        my $zdroj = '/var/web/hrejsi.cz/obr/'.$hra->{slozka_hrejsi}.'/obr';
        if(-d $zdroj)
        {
            my @soubory = grep {m/\.(jpg|gif)$/} (dzsys::get_files($zdroj));
            my $ns = scalar(@soubory);
            if($ns > 0)
            {
                my $x = $ns > 4 ? 'ů' : $ns > 1 ? 'y' : '';
                print("$hra->{kod}\t$hra->{slozka_hrejsi}\t$ns soubor$x\n");
                $nmsh++;
                my $cil = '/var/web/hrejsi.cz/obr/k/'.$hra->{kod};
                system("mkdir -p $cil");
                open(NAZEV, ">$cil/$unazev.txt");
                print NAZEV ("$hra->{nazev}\n");
                close(NAZEV);
                system("cp $zdroj/*.jpg $cil") if(grep {m/\.jpg$/} @soubory);
                system("cp $zdroj/*.gif $cil") if(grep {m/\.gif$/} @soubory);
                system("chmod 660 $cil/*");
            }
        }
    }
}
print("Nalezeno ", scalar(@{$hry}), " her, z toho $nmsh má složku hrejsi.\n");
