[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 <?php 2 // $GET $POST 3 $branche=$_GET['branch']; 4 5 6 // Récupérer la date de dernière modification d'un fichier distant (la fonction retourne un timestamp unix, cf. http://wiki.pcinfo-web.com/timestamp ) 7 function RecupDateModifDistant( $uri ) { 8 // default 9 $unixtime = 0; 10 $fp = fopen( $uri, "r" ); 11 if( !$fp ) {return;} 12 13 $MetaData = stream_get_meta_data( $fp ); 14 15 foreach( $MetaData['wrapper_data'] as $response ) 16 { 17 // Dans le cas d'une redirection vers une autre page / un autre fichier 18 if( substr( strtolower($response), 0, 10 ) == 'location: ' ) 19 { 20 $newUri = substr( $response, 10 ); 21 fclose( $fp ); 22 return RecupDateModifDistant( $newUri ); 23 } 24 // Dans le cas où on a bien l'en-tête "last-modified" 25 elseif( substr( strtolower($response), 0, 15 ) == 'last-modified: ' ) 26 { 27 $unixtime = strtotime( substr($response, 15) ); 28 //$unixtime = substr($response,15); 29 // Mise au format pour l'interface SE3 30 $unixtime = date( 'Y-m-d\TH:i:sO' , $unixtime ); 31 break; 32 } 33 } 34 fclose( $fp ); 35 return $unixtime; 36 } 37 38 39 40 // en-tete du fichier a generer. 41 echo "<?xml version='1.0' encoding='iso-8859-1'?>\n"; 42 echo "<packages>\n"; 43 44 $svnurl="http://svn.tice.ac-caen.fr/svn/SambaEdu3/wpkg-packages"; 45 46 if ($branche<>"testing") { 47 $branche="stable"; 48 } 49 50 $file = fopen ("$svnurl/$branche", "r"); 51 if (!$file) { 52 echo "<p>Impossible de lire la page.\n"; 53 exit; 54 } 55 while (!feof ($file)) { 56 $line = fgets ($file, 1024); 57 /* Cela ne fonctionne que si les balises href sont correctement utilisees */ 58 //if (preg_match ("@\<a.*\>(.*)/\</a\>@i", $line, $out)) { 59 // $rep = $out[1]; 60 //echo $rep; 61 62 // if ($rep <> "..") { 63 //echo $rep; 64 // pour la date : date("F d Y H:i:s", filename($xml)); 65 //$srep = fopen ("$svnurl/$branche/$rep", "r"); 66 //while (!feof ($srep)) { 67 //$files = fgets ($srep, 1024); 68 if (preg_match ("@\<a.*\>(.*).xml\</a\>@i", $line, $xmlfiles)) { 69 $xmlfile = $xmlfiles[1]; 70 // LIRE LE id dans le fichier $xmlfile.xml et sa date 71 $filedate = RecupDateModifDistant( "$svnurl/$branche/$rep/$xmlfile.xml" ); 72 //$fileopened = fopen ("$svnurl/$branche/$rep/$xmlfile.xml", "r"); 73 // recuperation de l'id dans le xml 74 //$filedate=date("F d Y H:i:s", filemtime($svnurl/$branche/$rep/$xmlfile.xml)); 75 //fclose($fileopened); 76 $md5sum=md5_file("$svnurl/$branche/$xmlfile.xml"); 77 //$md5sum="b3aa7b6f8357e66f291b8cda074e990d"; 78 $id="$xmlfile"; // pour les tests 79 echo "<package id='$id' xml='$xmlfile.xml' url='$svnurl/$branche/$xmlfile.xml' md5sum='$md5sum' date='$filedate' svn_link='$svnurl/logs/$xmlfile.log' /> "; 80 //echo "$xmlfile.xml"; 81 echo "\n"; 82 } 83 //} 84 //fclose($srep); 85 // } 86 //} 87 } 88 fclose($file); 89 echo "</packages>"; 90 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |