|
From: <ara...@us...> - 2007-01-20 22:31:27
|
Revision: 67
http://svn.sourceforge.net/easybox-mod/?rev=67&view=rev
Author: aragornis
Date: 2007-01-20 14:31:24 -0800 (Sat, 20 Jan 2007)
Log Message:
-----------
Gros patch de fjandot sur le module d'enregistrement
Modif des compteurs de la playlist audio
Modified Paths:
--------------
trunk/_framework/fonctions_partagees.inc.php
trunk/module/mp3/playlist_audio.tpl
trunk/module/multiposte/add.php
trunk/module/multiposte/enregistrement.tpl
trunk/module/multiposte/enregistrement_add.tpl
trunk/module/multiposte/index1.php
Modified: trunk/_framework/fonctions_partagees.inc.php
===================================================================
--- trunk/_framework/fonctions_partagees.inc.php 2007-01-19 19:27:20 UTC (rev 66)
+++ trunk/_framework/fonctions_partagees.inc.php 2007-01-20 22:31:24 UTC (rev 67)
@@ -54,6 +54,22 @@
RETURN($result[0]['value']);
}
+//Supprime les variables de session
+function clean_vars(){
+global $USER;
+ $db = sqlite_open($USER.'utilisateur.db', 0666);
+ sqlite_query($db,'DELETE FROM var');
+ sqlite_close($db);
+}
+
+//Supprime une variable de session
+function del_variable($var){
+global $USER;
+ $db = sqlite_open($USER.'utilisateur.db', 0666);
+ sqlite_query($db,'DELETE FROM var WHERE var=\''.$var.'\'');
+ sqlite_close($db);
+}
+
//Programmer une action cron
function save_cron($timestamp, $exec){
global $USER;
@@ -82,22 +98,6 @@
RETURN($result[0]['value']);
}
-//Supprime les variables de session
-function clean_vars(){
-global $USER;
- $db = sqlite_open($USER.'utilisateur.db', 0666);
- sqlite_query($db,'DELETE FROM var');
- sqlite_close($db);
-}
-
-//Supprime une variable de session
-function del_variable($var){
-global $USER;
- $db = sqlite_open($USER.'utilisateur.db', 0666);
- sqlite_query($db,'DELETE FROM var WHERE var=\''.$var.'\'');
- sqlite_close($db);
-}
-
//Fournit le lien ou doit retourner EB \xE0 la fin du fichier en cours
function page_retour_film(){
global $RACINE_REP;
Modified: trunk/module/mp3/playlist_audio.tpl
===================================================================
--- trunk/module/mp3/playlist_audio.tpl 2007-01-19 19:27:20 UTC (rev 66)
+++ trunk/module/mp3/playlist_audio.tpl 2007-01-20 22:31:24 UTC (rev 67)
@@ -46,10 +46,9 @@
{assign var=temp value=$min-16}
{attribbouton touche="green" lien="lecteuraudio.php?min=$temp"}
{/if}
- {counter name=indice start=$min print=false}
{section name=playlist loop=$pl start=$min max=16}
- <font size="1">{counter name=indice print=true}. </font>
+ <font size="1">{counter name=indice print=true start=$min}. </font>
<font size="1">
{if $pl[playlist].1}<u>{/if}
<a href=lecteuraudio.php?toplay={$pl[playlist].3}&url={$pl[playlist].2|urlencode}>{$pl[playlist].0|truncate:130:''|strip_delimiters}</a>
Modified: trunk/module/multiposte/add.php
===================================================================
--- trunk/module/multiposte/add.php 2007-01-19 19:27:20 UTC (rev 66)
+++ trunk/module/multiposte/add.php 2007-01-20 22:31:24 UTC (rev 67)
@@ -17,93 +17,225 @@
$smarty->assign('CONTENT',$smarty->fetch('enregistrement_add.tpl'));
$smarty->display('interface.tpl');
break;
-
+
+ case 'modif' :
+ $chaine = explode("|",urldecode($_GET['chaine']));
+ $deb = $_GET['deb'];
+ $end = $_GET['end'];
+ $id = $_GET['id'];
+
+ // Suppression des commandes et fichiers
+ $at=shell_exec('at');
+ if(eregi(urldecode($_GET['fichierbat']),$at))
+ {
+ $at=exec('at '.$_GET['task'].' /delete');
+ $at.=exec('at '.$_GET['taskend'].' /delete');
+ }
+ @unlink(urldecode($_GET['fichierbat']));
+ @unlink(ereg_replace(".bat","-end.bat",urldecode($_GET['fichierbat'])));
+
+ // Modification des commandes at et des fichiers bat
+ $fichier = realpath($ini[multiposte][multiposte]).'\\'.$chaine[1].' - '.date("d-m-y H\hi", $deb).'.mpg';
+ $fichierbat = $chaine[1].' - '.date("d-m-y H\hi", $deb).'.bat';
+ $fichierbat2 = $chaine[1].' - '.date("d-m-y H\hi", $deb).'-end.bat';
+
+ //Cr\xE9ation du fichier bat de lancement
+
+ $contenu_html = @file_get_contents ($USER.'multiposte.m3u');
+ if(eregi('stream?id=', $contenu_html)){
+ $moreinfo = 'stream?id=';
+ }
+
+ //Profils d'encodage
+ if($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]!='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1,acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.$id;
+ }elseif($ini[multiposte][cvid]=='none' AND $ini[multiposte][caud]=='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.$id;
+ }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.$id;
+ }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.$id;
+ }
+
+ $variable = 'SET vlcpath="'.realpath("../../../").'"
+ CD %vlcpath%
+ '.$link.'
+ exit';
+
+ $fp = fopen(realpath($USER).'\\'.$fichierbat,"a+");
+ fputs($fp,$variable);
+ fclose($fp);
+
+ //Cr\xE9ation du fichier bat de fermeture
+ $link2 = 'start http://localhost:8080/lecteur/stop_rec.php?id='.$id;
+ $variable = 'SET vlcpath="'.realpath("../../../").'"
+ CD %vlcpath%
+ '.$link2.'
+ exit';
+
+ $fp = fopen($USER.$fichierbat2,"w+");
+ fputs($fp,$variable);
+ fclose($fp);
+
+ //Enregistrement des taches
+ $output = exec('at '.date("H:i", $deb).' /interactive /next:'.date("d", $deb).' "'.realpath($USER.$fichierbat).'"');
+ $output2 = exec('at '.date("H:i", $end).' /interactive /next:'.date("d", $end).' "'.realpath($USER.$fichierbat2).'"');
+ $debut = 'ID = ';
+ $fin = '';
+ preg_match("/$debut(.{1,2})$fin/s", $output, $valeur);
+ preg_match("/$debut(.{1,2})$fin/s", $output2, $valeur2);
+
+ // Modification de end dans SQLite
+ $db = sqlite_open('../../_utilisateur/records.db', 0666);
+ $requete='DELETE FROM records WHERE id='.$id;
+ $result = sqlite_query($db,$requete);
+ sqlite_query($db,'INSERT INTO records VALUES ("'.$id.'","'.urldecode($_GET['chaine']).'","'.$deb.'","'.$end.'","'.realpath($USER.$fichierbat).'","'.$valeur[1].'","'.$valeur2[1].'","En attente")');
+
+ sqlite_close($db);
+
+ // Redirection page see
+ $META['refresh']= '3;url=index1.php?module=see';
+ $msg = "<br><br>Votre enregistrement a bien \xE9t\xE9 modifi\xE9 :<br>";
+ $msg .= 'Sur '.$chaine[1].' le '.date("d/m/y H:i", $deb);
+ $smarty->assign('AVERTISSEMENT',$msg);
+ $smarty->display('avertissement.tpl');
+
+
+ break;
case '4':
$chaine = explode("|",$_GET['chaine']);
+ $j = $y = 0;
+ $chaine = explode('|',urldecode($_GET['chaine']));
+ // Si l'heure de d\xE9but n'est pas renseign\xE9e, c'est mintenant
+ if( $_GET['deb_heure']) $deb_heure = $_GET['deb_heure']; else $deb_heure = date("H");
+ if( $_GET['deb_min']) $deb_min = $_GET['deb_min']; else $deb_min = date("i")+1;
+ // Si l'heure de fin n'est pas renseign\xE9e, c'est un enregistrement d'une heure
+ if( $_GET['fin_heure']) $fin_heure = $_GET['fin_heure']; else $fin_heure = $deb_heure+1;
+ if( $_GET['fin_min']) $fin_min = $_GET['fin_min']; else $fin_min = $deb_min;
+ // programation sur le jour suivant
+ if( $_GET['deb_heure'] > $_GET['fin_heure']) $j = 1;
+ // Si le jour n'est pas saisi c'est aujourd'hui
+ if( $_GET['deb_jour'])
+ $jour = $_GET['deb_jour'];
+ else $jour = date("d");
+ // Si le mois n'est pas saisi
+ if( $_GET['deb_mois'])
+ $mois = $_GET['deb_mois'];
+ else $mois = date("m");
+ // Programmation l'ann\xE9e suivante : mois identique, jour pr\xE9c\xE9dent
+ if( sprintf("%02d", $mois) == date("m") && sprintf("%02d", $jour) < date("d")) $y = 1;
+ // programation l'ann\xE9e suivante : mois pr\xE9c\xE9dent
+ if( sprintf("%02d", $mois) < date("m")) $y = 1;
+ // cr\xE9ation des dates corrig\xE9es
+ $deb = mktime( $deb_heure, $deb_min, 0, $mois, $jour, date("Y")+$y);
+ $end = mktime($fin_heure, $fin_min, 0, $mois , $jour + $j, date("Y")+$y);
+ // $deb et $fin \xE0 cheval sur heure courante : debut enregistrement dans une minute
+ if($deb < strtotime("now") && $end > strtotime("now"))
+ $deb = mktime( date("H"), date("i")+1, 0, date("m"), date("d"), date("Y"));
+ /********************* A FAIRE ******************/
+ // V\xE9rifier si il n'y a pas d\xE9j\xE0 un enregistrement programm\xE9
+ $db = sqlite_open('../../_utilisateur/records.db', 0666);
+ $requete='SELECT * from records '; // debut et fin qui nous interresse !!
+ $result = sqlite_query($db,$requete);
+ $Heures_OK = TRUE;
+ while($row = sqlite_fetch_array($result)){
+ if ( ($deb >= $row['debut'] && $deb < $row['fin']) || ($end > $row['debut'] && $end <= $row['fin'])){
+ // Si c'est la m\xEAme chaine, proposer de concat\xE9ner les deux enregistrements
+ if( $_GET['chaine'] == $row['chaine']){
+ ($deb < $row['debut'])?$new_deb = $deb : $new_deb = $row['debut'];
+ ($end > $row['fin'])?$new_end = $end : $new_end = $row['fin'];
+ $msg = "<br>Deux programmes sur ".$chaine[1]." se chevauchent !<br><br>";
+ $msg .= 'Fusionner les deux enregistrements ?<br>';
+ $msg .= '<a href="add.php?etape=modif&id='.$row['id'].'&chaine='.urlencode($row['chaine']).'&deb='.$new_deb.'&end='.$new_end.'&task='.$row['task'].'&taskend='.$row['taskend'].'&fichierbat='.urlencode($row['fichierbat']).'">OUI</a> / <a href="index1.php?module=see">NON</a>';
+ }
+ else{
+ $META['refresh']= '2;url=index1.php?module=see';
+ $msg = "<br><br>Cet enregistrement entre en conflit avec un autre.<br>";
+ $msg .= 'Veuillez v\xE9rifier et/ou corriger.';
+ }
+ $Heures_OK = FALSE;
+ }
+ }
+ /********************* A FAIRE ******************/
+ if( $Heures_OK){
+ // ATTENTION Vlc a des probl\xE8mes avec les accents lors de la cr\xE9ation du fichier --- Mais \xE7a marche avec la 0.8.6 !!!
+ $fichier = realpath($ini[multiposte][multiposte]).'\\'.$chaine[1].' - '.date("d-m-y H\hi", $deb).'.mpg';
+ $fichierbat = $chaine[1].' - '.date("d-m-y H\hi", $deb).'.bat';
+ $fichierbat2 = $chaine[1].' - '.date("d-m-y H\hi", $deb).'-end.bat';
- $deb = $_GET['debtime'];
- $end = $_GET['endtime'];
-
- if(isset($_GET['deb_heure']) || isset($_GET['deb_min']) || isset($_GET['deb_mois']) || isset($_GET['deb_jour'])){
- $deb = mktime(max($_GET['deb_heure'],1), max($_GET['deb_min'],1), 0, max($_GET['deb_mois'],1) , max($_GET['deb_jour'],1), 2007);
- $end = mktime(max($_GET['fin_heure'],1), max($_GET['fin_min'],1), 0, max($_GET['fin_mois'],1) , max($_GET['fin_jour'],1), 2007);
- }
-
- if($deb>$end){
- $META['refresh']= '2;url=?etape=4&chaine='.$_GET['chaine'].'&deb_jour='.$_GET['deb_jour'].'&deb_mois='.$_GET['deb_mois'].'&deb_heure='.$_GET['deb_heure'].'&deb_min='.$_GET['deb_min'].'&fin_jour='.$_GET['fin_jour'].'&fin_mois='.$_GET['fin_mois'].'&fin_heure='.$_GET['fin_heure'].'&fin_min='.$_GET['fin_min'];
- $msg = 'Les dates ne concordent pas. Veuillez modifier votre saisie.';
- }
-
- $fichier = realpath($ini[multiposte][multiposte]).'\\'.$chaine[1].' - '.date("d-m-y H\hi", $deb).'.mpg';
- $fichierbat = $chaine[1].' - '.date("d-m-y H\hi", $deb).'.bat';
- $fichierbat2 = $chaine[1].' - '.date("d-m-y H\hi", $deb).'-end.bat';
-
- $db = sqlite_open('../../_utilisateur/records.db', 0666);
- $requete='SELECT * from records ';
- $result = sqlite_query($db,$requete);
+ $requete='SELECT MAX(id) from records ';
+ $result = sqlite_query($db,$requete);
+ sqlite_close($db);
+ $row = sqlite_fetch_array($result);
- //Cr\xE9ation du fichier bat de lancement
+ //Cr\xE9ation du fichier bat de lancement
- $contenu_html = @file_get_contents ($USER.'multiposte.m3u');
- if(eregi('stream?id=', $contenu_html)){
- $moreinfo = 'stream?id=';
- }
-
- //Profils d'encodage
- if($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]!='none'){
- $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1,acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
- start http://localhost:8080/lecteur/lunch_rec.php?id='.(sqlite_num_rows($result)+1);
- }elseif($ini[multiposte][cvid]=='none' AND $ini[multiposte][caud]=='none'){
- $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
- start http://localhost:8080/lecteur/lunch_rec.php?id='.(sqlite_num_rows($result)+1);
- }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){
- $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
- start http://localhost:8080/lecteur/lunch_rec.php?id='.(sqlite_num_rows($result)+1);
- }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){
- $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
- start http://localhost:8080/lecteur/lunch_rec.php?id='.(sqlite_num_rows($result)+1);
+ $contenu_html = @file_get_contents ($USER.'multiposte.m3u');
+ if(eregi('stream?id=', $contenu_html)){
+ $moreinfo = 'stream?id=';
+ }
+
+ //Profils d'encodage
+ if($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]!='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1,acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1);
+ }elseif($ini[multiposte][cvid]=='none' AND $ini[multiposte][caud]=='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1);
+ }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{vcodec='.$ini[multiposte][cvid].',vb='.$ini[multiposte][bvid].',scale=1} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1);
+ }elseif($ini[multiposte][cvid]!='none' AND $ini[multiposte][caud]=='none'){
+ $link = 'start vlc\vlc.exe --wx-systray --intf=dummy --extraintf=http --http-src="'.realpath(realpath("../../").'/http-vlc').'" --http-host=:8082 --http-charset=ISO-8859-1 --quiet --dummy-quiet -vvv rtsp://mafreebox.freebox.fr/freeboxtv/'.$moreinfo.$chaine[2].' --sout=#transcode{acodec='.$ini[multiposte][caud].',ab='.$ini[multiposte][baud].',channels=2} --sout=#duplicate{dst=std{access=file,mux='.$ini[multiposte][muxer].',url="'.$fichier.'"}
+ start http://localhost:8080/lecteur/lunch_rec.php?id='.($row[0]+1);
}
- $variable = 'SET vlcpath="'.realpath("../../../").'"
- CD %vlcpath%
- '.$link.'
- exit';
+ $variable = 'SET vlcpath="'.realpath("../../../").'"
+ CD %vlcpath%
+ '.$link.'
+ exit';
- $fp = fopen(realpath($USER).'\\'.$fichierbat,"a+");
- fputs($fp,$variable);
- fclose($fp);
+ $fp = fopen(realpath($USER).'\\'.$fichierbat,"a+");
+ fputs($fp,$variable);
+ fclose($fp);
- //Cr\xE9ation du fichier bat de fermeture
- $link2 = 'start http://localhost:8080/lecteur/stop_rec.php?id='.(sqlite_num_rows($result)+1);
- $variable = 'SET vlcpath="'.realpath("../../../").'"
- CD %vlcpath%
- '.$link2.'
- exit';
+ //Cr\xE9ation du fichier bat de fermeture
+ $link2 = 'start http://localhost:8080/lecteur/stop_rec.php?id='.($row[0]+1);
+ $variable = 'SET vlcpath="'.realpath("../../../").'"
+ CD %vlcpath%
+ '.$link2.'
+ exit';
- $fp = fopen($USER.$fichierbat2,"w+");
- fputs($fp,$variable);
- fclose($fp);
+ $fp = fopen($USER.$fichierbat2,"w+");
+ fputs($fp,$variable);
+ fclose($fp);
- //Enregistrement des taches
- $output = exec('at '.date("H:i", $deb).' /interactive /next:'.date("d", $deb).' "'.realpath($USER.$fichierbat).'"');
- $output2 = exec('at '.date("H:i", $end).' /interactive /next:'.date("d", $end).' "'.realpath($USER.$fichierbat2).'"');
+ //Enregistrement des taches
+ $output = exec('at '.date("H:i", $deb).' /interactive /next:'.date("d", $deb).' "'.realpath($USER.$fichierbat).'"');
+ $output2 = exec('at '.date("H:i", $end).' /interactive /next:'.date("d", $end).' "'.realpath($USER.$fichierbat2).'"');
- if(eregi("T\x83che ajout\x82e",$output)){
- $META['refresh']= '3;url=index1.php?module=see';
- $msg = "<br><br>Votre enregistrement a bien \xE9t\xE9 programm\xE9 :<br>";
- $msg .= 'Sur '.$chaine[1].' le '.date("d/m/y H:i", $deb);
- }
+ //if(eregi("T\x83che ajout\x82e",$output)){ // Probl\xE8me d'encodage des accents dans le fichier !!
+ if(isset($output)){ // Ce test n'est pas bon test !!!
+ $META['refresh']= '3;url=index1.php?module=see';
+ $msg = "<br><br>Votre enregistrement a bien \xE9t\xE9 programm\xE9 :<br>";
+ $msg .= 'Sur '.$chaine[1].' le '.date("d/m/y H:i", $deb);
+ }
- $debut = 'ID = ';
- $fin = '';
- preg_match("/$debut(.{1,2})$fin/s", $output, $valeur);
- preg_match("/$debut(.{1,2})$fin/s", $output2, $valeur2);
-
- sqlite_query($db,'INSERT INTO records VALUES ("'.(sqlite_num_rows($result)+1).'","'.$_GET['chaine'].'","'.$deb.'","'.$end.'","'.realpath($USER.$fichierbat).'","'.$valeur[1].'","'.$valeur2[1].'","En attente")');
-
- $smarty->assign('AVERTISSEMENT',$msg);
- $smarty->display('avertissement.tpl');
+ $debut = 'ID = ';
+ $fin = '';
+ preg_match("/$debut(.{1,2})$fin/s", $output, $valeur);
+ preg_match("/$debut(.{1,2})$fin/s", $output2, $valeur2);
+
+ sqlite_query($db,'INSERT INTO records VALUES ("'.($row[0]+1).'","'.$_GET['chaine'].'","'.$deb.'","'.$end.'","'.realpath($USER.$fichierbat).'","'.$valeur[1].'","'.$valeur2[1].'","En attente")');
+ }
+ $smarty->assign('AVERTISSEMENT',$msg);
+ $smarty->display('avertissement.tpl');
+
break;
@@ -134,7 +266,8 @@
}
if(!eregi("Mire FREEBOX",trim(utf8_decode($valeur[2][$key])))){
- $CHAINE[]=array('id'=>trim($valeur[1][$key]), 'nom'=>trim(utf8_decode($valeur[2][$key])), 'num'=>trim($valeur[3][$key]), 'ico'=>trim(str_replace(array('>',' !',' ','\xE9','\xEE','\xF4'),array('','','','e','i','o'),$ico)).'.gif');
+ // Encodage URL du nom de la chaine (utilis\xE9 en passage d'argument sur lien html)
+ $CHAINE[]=array('id'=>trim($valeur[1][$key]), 'nom'=>trim(utf8_decode($valeur[2][$key])), 'num'=>trim($valeur[3][$key]), 'ico'=>trim(str_replace(array('>',' !',' ','\xE9','\xEE','\xF4','\xE8','\xEA','\''),array('','','','e','i','o','e','e',''),$ico)).'.gif');
}
}
Modified: trunk/module/multiposte/enregistrement.tpl
===================================================================
--- trunk/module/multiposte/enregistrement.tpl 2007-01-19 19:27:20 UTC (rev 66)
+++ trunk/module/multiposte/enregistrement.tpl 2007-01-20 22:31:24 UTC (rev 67)
@@ -5,7 +5,43 @@
<table width="450" border="0" cellpadding="0" cellspacing="0">
{/if}
{cycle name=color assign=COLOR print=false values="`$smarty.config.COULEUR_INTERFACE1`,`$smarty.config.COULEUR_INTERFACE2`"}
- <tr><td width=324 bgcolor="{$COLOR}">{$ENREGISTREMENT[enregistrement].num+1} - {$ENREGISTREMENT[enregistrement].chaine} du {$ENREGISTREMENT[enregistrement].d\xE9but} au {$ENREGISTREMENT[enregistrement].fin}</a></td><td width="110" bgcolor="{$COLOR}">{$ENREGISTREMENT[enregistrement].statut}</td><td width="20" bgcolor="{$COLOR}"><a href="index1.php?module=delete&id={$ENREGISTREMENT[enregistrement].num}"><table width="20" height="20" border="0" cellpadding="0" cellspacing="0" bgcolor="{$COLOR}" abgcolor="{#COULEUR_ALINK#}"><tr height="20"><td align=center width="20" height="20" align="center" valign="middle"><img src="{$INTERFACE_REP}delete.gif" border="0" width="20" height="20"></td></tr></table></a></td></tr>
+ <tr>
+ <td width=324 bgcolor="{$COLOR}">
+ {$ENREGISTREMENT[enregistrement].chaine} {$ENREGISTREMENT[enregistrement].dates}
+ </td>
+ <td width="110" bgcolor="{$COLOR}">
+ {if $ENREGISTREMENT[enregistrement].statut != 'Enregistr\xE9'}
+ {$ENREGISTREMENT[enregistrement].statut}
+ {/if}
+ </td>
+ <td width="20" bgcolor="{$COLOR}">
+ {if $ENREGISTREMENT[enregistrement].statut != 'En cours'}
+ <a href="index1.php?module=delete&id={$ENREGISTREMENT[enregistrement].num}">
+ <table width="20" height="20" border="0" cellpadding="0" cellspacing="0" bgcolor="{$COLOR}" abgcolor="{#COULEUR_ALINK#}">
+ <tr height="20">
+ <td align=center width="20" height="20" align="center" valign="middle">
+ {if $ENREGISTREMENT[enregistrement].statut == 'En attente'}
+ <img src="{$INTERFACE_REP}cancelled.gif" border="0" width="20" height="20">
+ {else}
+ <img src="{$INTERFACE_REP}finished.gif" border="0" width="20" height="20">
+ {/if}
+ </td>
+ </tr>
+ </table>
+ </a>
+ {else}
+ <a href="index1.php?module=suppr&id={$ENREGISTREMENT[enregistrement].num}">
+ <table width="20" height="20" border="0" cellpadding="0" cellspacing="0" bgcolor="{$COLOR}" abgcolor="{#COULEUR_ALINK#}">
+ <tr height="20">
+ <td align=center width="20" height="20" align="center" valign="middle">
+ <img src="{$INTERFACE_REP}encours.gif" border="0" width="20" height="20">
+ </td>
+ </tr>
+ </table>
+ </a>
+ {/if}
+ </td>
+ </tr>
{if $smarty.section.enregistrement.last}
</table>
{/if}
Modified: trunk/module/multiposte/enregistrement_add.tpl
===================================================================
--- trunk/module/multiposte/enregistrement_add.tpl 2007-01-19 19:27:20 UTC (rev 66)
+++ trunk/module/multiposte/enregistrement_add.tpl 2007-01-20 22:31:24 UTC (rev 67)
@@ -1,13 +1,31 @@
{if $etape==3}
{attribbouton touche="red" lien="add.php?etape=2"}
Choisissez les date et heure du d\xE9but et de la fin de l'enregistrement :<br> <br>
- <table width="450" border="0" cellpadding="0" cellspacing="0"><tr><td align=center width="150"><img src="{$INTERFACE_REP}heure_enregistrement.gif"></td>
- <td align=center>
- <form action="add.php" method="get"><input type=hidden name="etape" value="4"><input type=hidden name=chaine value="{$_GET.chaine}">
- <u>D\xE9but de l'enregistrement</u> : <br> <br>Le <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_jour size=2> / <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_mois size=2> \xE0 <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_heure size=2> h <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_min size=2> min
- <br> <br><u>Fin de l'enregistrement</u> : <br> <br>Le <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=fin_jour size=2> / <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=fin_mois size=2> \xE0 <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=fin_heure size=2> h <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=fin_min size=2> min
- <br> <br><input bgcolor="{#COULEUR_TEXTBOX#}" type=submit value="Valider les heures d'enregistrement"></form>
- </td></tr></table>
+ <table width="450" border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td align=center width="150">
+ <img src="{$INTERFACE_REP}heure_enregistrement.gif">
+ </td>
+ <td align=center>
+ <form action="add.php" method="get">
+ <input type=hidden name="etape" value="4">
+ <input type=hidden name=chaine value="{$_GET.chaine}">
+ <u>D\xE9but de l'enregistrement</u> : <br>
+ <br>Le
+ <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_jour size=2 focused> /
+ <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_mois size=2>
+ <br> <br>
+ De
+ <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_heure size=2> h
+ <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=deb_min size=2> min \xE0
+ <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=fin_heure size=2> h
+ <input bgcolor="{#COULEUR_TEXTBOX#}" type=text name=fin_min size=2> min
+ <br> <br>
+ <input bgcolor="{#COULEUR_TEXTBOX#}" type=submit value="Valider les heures d'enregistrement">
+ </form>
+ </td>
+ </tr>
+ </table>
<br> <br>Utilisez la petite croix rouge de la t\xE9l\xE9commande pour effacer un champ si vous voulez corriger une valeur.
{else}
Choisissez la chaine a enregistrer :<br> <br>
@@ -23,7 +41,7 @@
{if $smarty.section.chaine.first}
<table width="480" height="400" border="0" cellpadding="0" cellspacing="0"><tr>
{/if}
- <td width="96" height="80"><a href="add.php?etape=3&chaine={$CHAINE[chaine].id|urlencode}|{$CHAINE[chaine].nom}|{$CHAINE[chaine].num}"><table border="0" cellpadding="0" cellspacing="0" width="96" height="80" bgcolor="{#COULEUR_FOND1#}" abgcolor="{#COULEUR_TABLE_SELECTED#}"><tr height="40"><td align=center width="96" height="40" valign="middle"><img width="36" height="36" border="0" src="{$CHAINE_REP}{$CHAINE[chaine].ico}"></td></tr><tr height="40"><td align=center width="96" height="40"><font size="1">{$CHAINE[chaine].nom}</font></td></tr></table></a></td>
+ <td width="96" height="80"><a href="add.php?etape=3&chaine={$CHAINE[chaine].id}|{$CHAINE[chaine].nom|urlencode}|{$CHAINE[chaine].num}"><table border="0" cellpadding="0" cellspacing="0" width="96" height="80" bgcolor="{#COULEUR_FOND1#}" abgcolor="{#COULEUR_TABLE_SELECTED#}"><tr height="40"><td align=center width="96" height="40" valign="middle"><img width="36" height="36" border="0" src="{$CHAINE_REP}{$CHAINE[chaine].ico}"></td></tr><tr height="40"><td align=center width="96" height="40"><font size="1">{$CHAINE[chaine].nom}</font></td></tr></table></a></td>
{if $smarty.section.chaine.iteration is div by 5 AND NOT $smarty.section.chaine.last}
</tr><tr>
{/if}
Modified: trunk/module/multiposte/index1.php
===================================================================
--- trunk/module/multiposte/index1.php 2007-01-19 19:27:20 UTC (rev 66)
+++ trunk/module/multiposte/index1.php 2007-01-20 22:31:24 UTC (rev 67)
@@ -11,52 +11,76 @@
array('lien'=>'/module/films/index1.php?directory='.urlencode($ini['multiposte']['multiposte']), 'nom'=>'Enregistr\xE9s', 'selected'=>0));
switch($module){
-case 'see':
- $db = sqlite_open('../../_utilisateur/records.db', 0666);
- $requete='SELECT * from records';
- $result = sqlite_query($db,$requete);
-
- $at=shell_exec('at');
+case 'suppr' : //arr\xEAt d'un enregistrement en cours
+ if(isset($_GET['id'])){
+ $db = sqlite_open('../../_utilisateur/records.db', 0666);
+ $requete='SELECT * from records WHERE id='.$_GET['id'];
+ $result = sqlite_query($db,$requete);
+ $result = sqlite_fetch_array($result);
+
+ $at=exec('at '.$result['task'].' /delete');
+ $at.=exec('at '.$result['taskend'].' /delete');
+
+
+ $requete='UPDATE records SET statut=\'Enregistr\xE9\' WHERE id='.$_GET['id'];
+ $result = sqlite_query($db,$requete);
+ sqlite_close($db);
+ $file1 = @file_get_contents("http://127.0.0.1:8082/lecteur/action.html?control=shutdown");
+
+ $META['refresh']= '2;url=index1.php?module=see';
- while($row = sqlite_fetch_array($result)){
- if(eregi(addslashes($row[fichierbat]),$at) or $row[statut]!="En attente" or 1==1){
- $chaine = explode("|",$row[chaine]);
- $ENREGISTREMENT[]=array('num'=>$row[id], 'chaine'=>$chaine[1], 'd\xE9but'=>date("d/m/y H:i", $row[debut]), 'fin'=>date("d/m/y H:i", $row[fin]), 'statut'=>$row[statut]);
- }
- }
-
-sqlite_close($db);
-
-$LINK['red']='index1.php';
-
-$smarty->assign('ENREGISTREMENT',$ENREGISTREMENT);
-$smarty->assign('CONTENT',$smarty->fetch('enregistrement.tpl'));
-$smarty->display('interface.tpl');
+ $smarty->assign('AVERTISSEMENT',"Enregistrement interrompu");
+ $smarty->display('avertissement.tpl');
+ }
break;
case 'delete':
-$db = sqlite_open('../../_utilisateur/records.db', 0666);
-$requete='SELECT * from records WHERE id='.$_GET['id'];
-$result = sqlite_query($db,$requete);
-$result = sqlite_fetch_array($result);
-
-$at=exec('at '.$result['task'].' /delete');
-$at.=exec('at '.$result['taskend'].' /delete');
+ if(isset($_GET['id'])){
+ $db = sqlite_open('../../_utilisateur/records.db', 0666);
+ $requete='SELECT * from records WHERE id='.$_GET['id'];
+ $result = sqlite_query($db,$requete);
+ $result = sqlite_fetch_array($result);
+ $at=shell_exec('at');
+ if(eregi(addslashes($result['fichierbat']),$at))
+ {
+ $at=exec('at '.$result['task'].' /delete');
+ $at.=exec('at '.$result['taskend'].' /delete');
+ }
-@unlink($result['fichierbat']);
-@unlink(ereg_replace(".bat","-end.bat",$result['fichierbat']));
-$requete='DELETE from records WHERE id='.$_GET['id'];
-$result = sqlite_query($db,$requete);
+ @unlink($result['fichierbat']);
+ @unlink(ereg_replace(".bat","-end.bat",$result['fichierbat']));
+ $requete='DELETE from records WHERE id='.$_GET['id'];
+ $result = sqlite_query($db,$requete);
-$META['refresh']= '2;url=index1.php?module=see';
+ $META['refresh']= '2;url=index1.php?module=see';
-$smarty->assign('AVERTISSEMENT',"Suppression de l'enregistrement effectu\xE9e");
-$smarty->display('avertissement.tpl');
+ $smarty->assign('AVERTISSEMENT',"Suppression de l'enregistrement effectu\xE9e");
+ $smarty->display('avertissement.tpl');
-sqlite_close($db);
+ sqlite_close($db);
+ }
break;
+case 'see':
+
+ $db = sqlite_open('../../_utilisateur/records.db', 0666);
+ $requete='SELECT * from records ORDER BY debut';
+ $result = sqlite_query($db,$requete);
+
+ while($row = sqlite_fetch_array($result)){
+ $chaine = explode("|",$row[chaine]);
+ $dates = Cool_Date( $row[debut], $row[fin]);
+ $ENREGISTREMENT[]=array('num'=>$row[id], 'chaine'=>$chaine[1], 'dates'=>$dates, 'statut'=>$row[statut]);
+ }
+ sqlite_close($db);
+ $LINK['red']='index1.php';
+
+ $smarty->assign('ENREGISTREMENT',$ENREGISTREMENT);
+ $smarty->assign('CONTENT',$smarty->fetch('enregistrement.tpl'));
+ $smarty->display('interface.tpl');
+break;
+
default :
$LINK['red']=$MODULE.'_menu/menu.php?cat=9';
$smarty->assign('CONTENT',$smarty->fetch('enregistrement.tpl'));
@@ -64,6 +88,13 @@
break;
}
+function Cool_Date( $debut, $fin) {
+$mois = array("janvier","f\xE9vrier","mars","avril","mai","juin","juillet","ao\xFBt","septembre","octobre","novembre","d\xE9cembre");
+ if (date("d m", $debut) == date("d m",mktime(0,0,0,date('m'),date('d')-1,date('Y')))) $date_deb = "hier";
+ elseif (date("d m", $debut) == date("d m")) $date_deb = "aujourd'hui";
+ elseif (date("d m", $debut) == date("d m",mktime(0,0,0,date('m'),date('d')+1,date('Y')))) $date_deb = "demain";
+ else $date_deb = 'le '.date("d", $debut) .' '. $mois[date("n", $debut)-1];
+ return sprintf("%s de %s \xE0 %s", $date_deb, date("H:i", $debut),date("H:i", $fin));
+}
-
?>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|