<?php
/**
*
* @Artiphp 6
* @paquetage video
* @version video.php, 2024/07/27 arteam
* @copyright (c) 2001-2016 Ronald Guerin - webmaster@artiloo.com - http://www.artiloo.com
* @license consulter artpublic/license/index.html GNU Public License
*
*/

// Protection - Page
define('IN_ARTI', true);

// Chargement configuration Artiphp
require('../artpublic/config.inc.php'); // ATTENTION : chemin relatif depuis racine Artiphp

// Debug de la page
//error_reporting(E_ALL ^ E_NOTICE);

// Connexion au noyau
// ------------------
include(ARTI_SYS_INT_FCT_PATH . 'identification.inc.php'); // zone membre

// Langue
// ------
if (empty($_SESSION['SESSION_IDSKIN'])) {
    include(ARTI_SYS_INT_FCT_PATH . 'donnees_skin.inc.php');
}
$SESSION_LANGSKIN = $_SESSION['SESSION_LANGSKIN'];
include(ARTI_SYS_INT_PATH . "langues/$SESSION_LANGSKIN/index.inc.php");

include_once(ARTI_SYS_INT_FCT_PATH . 'fonctions_date.inc.php');


// Configuration specifique au module
include('config_mod.inc.php');

include(ARTI_SYS_INT_FCT_PATH . 'verif_acl.inc.php'); // ACL general

$id_video = $_GET['id_video'];

if ($_GET['val']) {
    $val = $_GET['val'];
    list($id_video, $suite) = explode('_', $val);
}

$id_video = intval($id_video);


// affichage d'une video specifique
// --------------------------------
if ($id_video) {
    $requete = "SELECT * FROM `" . ARTI_PREFIX_TB . $mod_encours_dir . "`, " . ARTI_PREFIX_TB . "categories WHERE id_video='$id_video' AND id_cat=id_categorie AND affichagePage2='1'";
    $result = mysql_query($requete, $link);
    $dossier = mysql_fetch_object($result);

    // liens uniquement sur categories autorisees
    $visucat = explode('][', trim($dossier->group_c_visu, '[]'));

    if (in_array($SESSION_ARTIGROUP, $visucat)) {
    } else {
        header('Location: ' . ARTI_WEB_INT_FCT_PATH . 'erreur.php?ec=2');
        exit();
    }

    // decodage du texte
    $dossier->nom_video = stripslashes($dossier->nom_video);
    $dossier->descVideo = stripslashes($dossier->descVideo);
    $dossier->url_video = stripslashes($dossier->url_video);
    $dossier->subtitle = stripslashes($dossier->subtitle);
    $caturl_friendly = stripslashes($dossier->url_friendly);

    $urlfriendlypartage = stripslashes($dossier->newsrewriting);

    // personnalisation
    if (!($ascdesc)) { $ascdesc = 'desc';}
    if (!($ordre)) { $ordre = 'dateNews';}


    // -----------------------------------------
    // DEFINITION DE LA CATEGORIE
    // -----------------------------------------

    // si la categorie est une sous-categorie
    if ($dossier->id_parentcat) {
        $nomsscat = stripslashes($dossier->nomCategorie);
        $sscaturl_friendly = stripslashes($dossier->url_friendly);
        $sscat = $dossier->id_categorie;
        $requete3 = "SELECT id_categorie, nomCategorie, url_friendly FROM " . ARTI_PREFIX_TB . "categories WHERE id_categorie='$dossier->id_parentcat'";
        $result3 = mysql_query($requete3, $link);
        $defcat1 = mysql_fetch_object($result3);
        $nomcat = stripslashes($defcat1->nomCategorie);
        $caturl_friendly = stripslashes($defcat1->url_friendly);
        $cat = $defcat1->id_categorie;
        // si la categorie n'est pas une sous-categorie
    } else {
        $nomcat = stripslashes($dossier->nomCategorie);
        $cat = $dossier->id_categorie;
    }

    if (ARTI_URL_TYPE == 1) {
        $valurl = 'index.php?val=' . $cat . '_' . $caturl_friendly;
    } else {
        $valurl = 'categorie_' . $cat . '_' . $caturl_friendly . '.html';
    }
    // en-tete de page
    if ($sscat) {
        if (ARTI_URL_TYPE == 1) {
            $valurl2 = 'index.php?val=' . $sscat . '_' . $sscaturl_friendly;
        } else {
            $valurl2 = 'categorie_' . $sscat . '_' . $sscaturl_friendly . '.html';
        }
        $entete = "<a href=\"" . ARTI_WEB_PATH . "index.php\">$LG_ACCUEIL</a><a href=\"index.php\">$lg_mod_titre</a><a href=\"$valurl\">" . $nomcat . "</a><a href=\"$valurl2\">" . $nomsscat . "</a>\n\n";
    } else {
        $entete = "<a href=\"" . ARTI_WEB_PATH . "index.php\">$LG_ACCUEIL</a><a href=\"index.php\">$lg_mod_titre</a><a href=\"$valurl\">" . $nomcat . "</a>\n\n";
    }
    


    // metatags -----------------------
    $nDoss = htmlspecialchars($dossier->nom_video);
    $metatitle = $nDoss . ' ' . $nomsscat . ' ' . $nomcat . ' - ' . ARTI_SITE_NAME;
    $nDossDes = strip_tags($dossier->nom_video);
    $nDossDes = str_replace("\r\n", ' ', $nDossDes);
    $nDossDes = substr($nDossDes,0,197);
    $nDossDes .= '...';
    $nDossDes = htmlspecialchars($nDossDes);
    $metaDescription = $nDossDes . ' - ' . $nomsscat . ' ' . $nomcat;
    // --------------------------------


    // actualisation du nombre de fois lu
    // ----------------------------------
    $requete2 = "UPDATE `" . ARTI_PREFIX_TB . $mod_encours_dir . "` SET videoLu=videoLu+1 WHERE id_video ='$id_video'";
    $result2 = mysql_query($requete2, $link);
    // ----------------------------------
    
    // verif img
    //-----------------
    $nom_image = $dossier->url_video . '.webp';
	$repertoire = $_SERVER['DOCUMENT_ROOT'] . $mod_encours_dir . '/images/gd/';
	$repertoire2 = $_SERVER['DOCUMENT_ROOT'] . $mod_encours_dir . '/images/';
	$chemin_complet = $repertoire . $nom_image;
	$chemin_complet2 = $repertoire2 . $nom_image;

    $chemin_image = "" . ARTI_SITE_URL . $mod_encours_dir . "/images/gd/" . $dossier->url_video . ".webp";
    $chemin_image2 = "" . ARTI_SITE_URL . $mod_encours_dir . "/images/" . $dossier->url_video . ".webp";
    
   
    if (file_exists($chemin_complet) && is_file($chemin_complet)) {
    
    	$userAgent = $_SERVER['HTTP_USER_AGENT'];
		$isMobile = preg_match('/(android|iphone|ipad|mobile)/i', $userAgent);

		if ($isMobile) {
			if (file_exists($chemin_complet2) && is_file($chemin_complet2)) {
    			$urlimage = $chemin_image2;
			} else {
    			$urlimage = "https://i.ytimg.com/vi/" . $dossier->url_video . "/maxresdefault.jpg";
			}
		} else {
			$urlimage = $chemin_image;
		}
    	
	} else {
    	if (file_exists($chemin_complet2) && is_file($chemin_complet2)) {
    		$urlimage = $chemin_image2;
		} else {
    		$urlimage = "https://i.ytimg.com/vi/" . $dossier->url_video . "/maxresdefault.jpg";
		}
	}
	

    


    $listedossiers = "\n";
    $listedossiers .= "<div class=\"dossier\">\n";
    $listedossiers .= "<div class=\"titre\"><h1>" . $dossier->nom_video . "</h1><h2>" . $nomcat . "</h2> <span> " . arti_date_court($dossier->date_video) . " - " . $LG_DOSLU . " " . $dossier->videoLu . " " . $LG_DOSFOIS . "</span></div>\n";



    $listedossiers .= "<div class=\"texte\">\n";

 
$listedossiers .= "<div class=\"youtube-facade\" data-id=\"" . $dossier->url_video . "\" style=\"background-image: url('" . $urlimage. "');\">\n";
$listedossiers .= "<button class=\"play-button\" title=\"Video Youtube : " . $dossier->nom_video . "\"></button><small>En cliquant sur Play, vous acceptez le transfert de données vers YouTube.</small>\n";
$listedossiers .= "</div>\n";

    
    
    


	if ($dossier->subtitle) {
	
	    $listedossiers .= "<p class=\"accordion\"><button class=\"accordionbut\" aria-haspopup=\"true\" aria-expanded=\"false\">Transcription du contenu de la vid&eacute;o</button></p>\n";
	    $listedossiers .= "<div class=\"panel\">" . $dossier->subtitle . "</div>\n";
	
	}
	
    $listedossiers .= "</div>\n";


 


    $listedossiers .= "</div>\n\n"; // FERMETURE "<div class=\"dossier\">\n"


    // DEBUT Rapid'Admin
    $rapid_admin="1";
    if ($rapid_admin == '1') {
        $groupcat = explode('][', trim($dossier->group_contenu, '[]'));
        $groupcat2 = explode('][', trim($dossier->group_mescont, '[]'));
        $groupcat3 = explode('][', trim($dossier->group_proposition, '[]'));
        if (in_array($SESSION_ARTIGROUP, $groupcat)) {
            $listedossiers .= "<div class=\"rapid_admin\">" . $LG_RAPID_ADMIN . " <a href=\"" . ARTI_WEB_ADM_PATH . $mod_encours_dir . "/saisie.php?mod=" . $id_video . "\"><img src=\"" . ARTI_WEB_ADM_ADM_PATH . "imgadmin/bbmodif.gif\" alt=\"" . $LG_FORMMOD . "\" /></a></div>\n";



        }
    }
    // FIN Rapid'Admin

} else {
    header('Location: index.php');
    exit();
}



// schema.org
// -----------------------

$activschemeorg="1";  

if (isset($dossier->descVideo) && $dossier->descVideo!='') {

  $ajoutdesc="	\"description\": \"" . strip_tags(htmlspecialchars($dossier->descVideo)) . "\", ";

} else {

  $ajoutdesc="";

}

if (isset($dossier->dureeVideo) && $dossier->dureeVideo!='') {

	$parts = explode(':', trim($dossier->dureeVideo));

	if (count($parts) == 3) {
    	// Cas HH:MM:SS
    	$iso = "PT" . (int)$parts[0] . "H" . (int)$parts[1] . "M" . (int)$parts[2] . "S";
	} else {
    	// Cas MM:SS
    	$iso = "PT" . (int)$parts[0] . "M" . (int)$parts[1] . "S";
	}

  	$ajoutduree = "	\"duration\": \"" . $iso . "\", ";

} else {

  $ajoutduree="";

}

$date_brute = $dossier->date_video;
$dateform = new DateTime($date_brute);
$uploadDate = $dateform->format('c');

    		$urlfriendly1 = stripslashes($dossier->videorewriting);
    		if (ARTI_URL_TYPE == 1) {
        		$valurl1 = ARTI_SITE_URL . $mod_encours_dir . '/video.php?val=' . $dossier->id_video . '_' . $urlfriendly1;
    		} else {
        		$valurl1 = ARTI_SITE_URL . $mod_encours_dir . '/video_' . $dossier->id_video . '_' . $urlfriendly1 . '.html';
    		}
	
$schemeorg="

<link rel=\"preload\" 
      as=\"image\" 
      href=\"" . $urlimage. "\" 
      fetchpriority=\"high\">
      
<script type=\"application/ld+json\">
{
  \"@context\": \"https://schema.org\",
  \"@type\": \"VideoObject\",
  \"name\": \"" . $dossier->nom_video . "\",
  " . $ajoutdesc . "
  " . $ajoutduree . "
  \"thumbnailUrl\": [
    \"" . $urlimage. "\"
  ],
  \"uploadDate\": \"" . $uploadDate . "\",

  \"embedUrl\": \"https://www.youtube.com/embed/" . $dossier->url_video . "\",
  \"mainEntityOfPage\": \"" . $valurl1 . "\"
}
</script>
";

// -----------------------
// fin schema.org




mysql_free_result($result);

// presentation
// ------------
$milieu = "<div id=\"mod_video\" class=\"mod_content\">\n\n";
$milieu .= $listedossiers;

$SESSION_SKIN = $_SESSION['SESSION_SKIN'];





$milieu .= '</div>' . "\n\n"; // FERMETURE "<div id=\"mod_news\">\n\n"

// Template
// --------
$SESSION_SKIN = $_SESSION['SESSION_SKIN'];
include(ARTI_SYS_INT_PATH . "templates/temp$SESSION_SKIN/temp.html");
echo $arti;
mysql_close($link);
?>