<?php
$items=new yamlReadwriter();
$items->setType("items_export"); // important

switch($_POST['action']){
    case "loadform":
        $menu_edit= array();
        include(APP."snippets/menu-viewer.php");
        
        $items->addHidden("action","submitform");
        $items->addHidden("callback","yc_filldestination");
        
        $items->setSnippetFolder(APP."form_parts/");
        $items->form_title="Exporter des items";
        $items->form_comment="Sélectionnez les items à exporter. Ils seront exportés dans un dossier export à la racine du site.";
        $items->writeForm();

        break; 

    case "submitform":
        $menu_edit= array();
        include(APP."snippets/menu-viewer.php");
        // prendre les items un par un
        $files=$_POST['sources'];
        
        // creer un dossier spécifique
        fix_exists_dir(CHEMIN."BACKUPS");
        $today=date('Y_m_d-g_i');
        
        define("BACKUP",CHEMIN."BACKUPS/".$today."/");
        define("BACKUP_ITEMS",BACKUP."items");
        define("BACKUP_IMPORTS",BACKUP."imports");
        
        
        fix_exists_dir(BACKUP);
        fix_exists_dir(BACKUP_ITEMS);
        fix_exists_dir(BACKUP_IMPORTS);
        
        $item=new yamlReadwriter();
        $item->loadYaml(getTemplate("structure_item.yaml"));
        $item->setType("item"); // important
        
        
        
        echo "<div class='p-3'>";
        echo "<h2 class='mb-3 lh-1'>Export de Yaml<br>et documents attachés</h2>";
        echo "<div class='mb-3'>Export du fichier de description yaml dans backup</div>";
        copy(getTemplate("structure_item.yaml"),BACKUP."structure_item.yaml");
        
        
        echo "<div class='fs-small'><b>Fichiers exportés:</b><br>";
        foreach($files as $item_url){
            copy(CONTENTS."items/".$item_url,BACKUP_ITEMS."/".$item_url);
            
            $item->cleanContents();
            $item->loadContentFromYaml(CONTENTS."items/".$item_url);
            
            foreach($item->content as $id => $content){
                if($item->getParam($id,"type")=='file'){
                    $fichiers=$item->getAsarray($id);
                    foreach($fichiers as $fichier){
                        copy(IMPORTS.$fichier, BACKUP_IMPORTS."/".$fichier);
                    }
                }
            }
            echo $item_url."<br>";
        }
        
        echo "</div><hr><div class='py-3'>Export terminé. <br><br>Les fichiers se trouvent à la racine du site dans le dossier BACKUPS.</div>";
        
        echo "</div>";


        
        break;
}