172 } |
172 } |
173 |
173 |
174 # Create the LDT's ZIP to download IT |
174 # Create the LDT's ZIP to download IT |
175 function createMyLdtProject($fichierIRI){ |
175 function createMyLdtProject($fichierIRI){ |
176 |
176 |
177 $MyRoot = "/iridata/users/hurons/public_html/DOCUMENT/_LDT"; |
177 $MyLDTRoot = ABSPATH; |
178 $MyRootRel = "non-classe/telecharger/?URL=DOCUMENT/_LDT"; |
178 $MyDocPath = LDT_PATH; |
179 $MyCache = "/CACHE"; |
179 $MyRootRel = DWL_PAGE; |
180 $MyExemple = "/EXEMPLE_zip"; |
180 $MyCache = LDT_CACHE; |
|
181 $MyExemple = LDT_TEMPLATE; |
181 $MyPattern = "X_NOMPROJET_X"; |
182 $MyPattern = "X_NOMPROJET_X"; |
182 $MyLdtName = "projet_".$MyPattern.".ldt"; |
183 $MyLdtName = "projet_".$MyPattern.".ldt"; |
183 $MyReadMeName="LISEZ_MOI_READ_ME.txt"; |
184 $MyReadMeName="LISEZ_MOI_READ_ME.txt"; |
184 $MySoundExt = "_audio.xml"; |
185 $MySoundExt = "_audio.xml"; |
185 $Return = ""; |
186 $Return = ""; |
191 |
192 |
192 // cette fontion n'est utilisé que sur les .IRI |
193 // cette fontion n'est utilisé que sur les .IRI |
193 if ($ext==".iri"){ |
194 if ($ext==".iri"){ |
194 |
195 |
195 // Vérifie si le cache éxiste déja |
196 // Vérifie si le cache éxiste déja |
196 if (file_exists($MyCache."/".$FileName.".zip")){ |
197 if (file_exists($MyLDTRoot.$MyCache."/".$FileName.".zip")){ |
197 //echo ($MyCache.$FileName.".zip"." is in cache"); |
198 //echo ($MyCache.$FileName.".zip"." is in cache"); |
198 // ensuite envoyer vers la redirection. |
199 // ensuite envoyer vers la redirection. |
|
200 echo ("Veuillez patientez un instant..."); |
199 redirectionDWL($MyRootRel.$MyCache."/".$FileName.".zip"); |
201 redirectionDWL($MyRootRel.$MyCache."/".$FileName.".zip"); |
200 |
202 |
201 } else { |
203 } else { |
202 |
204 |
203 echo ("Le fichier ".$FileName.".zip est en cours de compression, veuillez patientez un instant."); |
205 echo ("Le fichier ".$FileName.".zip est en cours de compression, veuillez patientez un instant..."); |
204 |
206 |
205 // Créer le .LDT à partir de l'exemple |
207 // Créer le .LDT à partir de l'exemple |
206 $MyLdtExemple = implode(file($MyRoot.$MyExemple."/".$MyLdtName , FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)); |
208 $MyLdtExemple = implode(file($MyLDTRoot.$MyExemple."/".$MyLdtName , FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)); |
207 $MyFuturLdt = str_replace($MyPattern, $FileName, $MyLdtExemple); |
209 $MyFuturLdt = str_replace($MyPattern, $FileName, $MyLdtExemple); |
208 |
210 |
209 // Créer le read me |
211 // Créer le read me |
210 $MyReadMeExemple = implode(file($MyRoot.$MyExemple."/".$MyPattern."/".$MyReadMeName , FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)); |
212 $MyReadMeExemple = implode(file($MyLDTRoot.$MyExemple."/".$MyPattern."/".$MyReadMeName , FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)); |
211 $MyFuturReadMe = str_replace($MyPattern, $FileName, $MyReadMeExemple); |
213 $MyFuturReadMe = str_replace($MyPattern, $FileName, $MyReadMeExemple); |
212 |
214 |
213 // ZIP l'ensemble est met dans le cache |
215 // ZIP l'ensemble est mis dans le cache |
214 $Zipfilename = $MyRoot.$MyCache."/".$FileName.".zip"; |
216 $Zipfilename = $MyLDTRoot.$MyDocPath.$MyCache."/".$FileName.".zip"; |
215 $zip = new ZipArchive(); |
217 $zip = new ZipArchive(); |
216 if ($zip->open($Zipfilename, ZIPARCHIVE::CREATE)!==TRUE) { |
218 if ($zip->open($Zipfilename, ZIPARCHIVE::CREATE)!==TRUE) { |
217 exit("Impossible d'ouvrir <$filename>\n"); |
219 exit("Impossible d'ouvrir <$filename>\n"); |
218 } |
220 } |
219 // ZIP - ajouter le .LDT |
221 // ZIP - ajouter le .LDT |
220 $MyLdtNewName = str_replace($MyPattern, $FileName, $MyLdtName); |
222 $MyLdtNewName = str_replace($MyPattern, $FileName, $MyLdtName); |
221 $zip->addFromString($MyLdtNewName, $MyFuturLdt); //$zip->addFile($MyFuturLdtName, $FileName); |
223 $zip->addFromString($MyLdtNewName, $MyFuturLdt); //$zip->addFile($MyFuturLdtName, $FileName); |
222 // ZIP - ajouter le .IRI |
224 // ZIP - ajouter le .IRI |
223 $zip->addFile($MyRoot."/".$fichierIRI, $FileName."/".$fichierIRI); |
225 $zip->addFile($MyLDTRoot."/".$fichierIRI, $FileName."/".$fichierIRI); |
224 // ZIP - ajouter le ReadMe |
226 // ZIP - ajouter le ReadMe |
225 $zip->addFromString($FileName."/".$MyReadMeName, $MyFuturReadMe); //$zip->addFile($MyRoot.$MyTemp."/".$FileName."/".$MyReadMeName, $FileName."/".$MyReadMeName); |
227 $zip->addFromString($FileName."/".$MyReadMeName, $MyFuturReadMe); //$zip->addFile($MyRoot.$MyTemp."/".$FileName."/".$MyReadMeName, $FileName."/".$MyReadMeName); |
226 // ZIP - ajouter le audio si il y a |
228 // ZIP - ajouter le audio si il y a |
227 $fileAudio = $MyRoot."/".$FileName.$MySoundExt ; |
229 $fileAudio = $MyLDTRoot."/".$FileName.$MySoundExt ; |
228 if (file_exists($fileAudio)){ |
230 if (file_exists($fileAudio)){ |
229 $zip->addFile($fileAudio, $FileName."/".$FileName.$MySoundExt); |
231 $zip->addFile($fileAudio, $FileName."/".$FileName.$MySoundExt); |
230 } |
232 } |
231 $zip->close(); |
233 $zip->close(); |
232 |
234 |
233 // mettre a jour la bdd ? pour vider le cache quand c'est un nouveau fichier ? |
235 // mettre a jour la bdd ? pour vider le cache quand c'est un nouveau fichier ? |
234 |
236 |
235 // ensuite envoyer vers la redirection. |
237 // ensuite envoyer vers la redirection. |
236 redirectionDWL($MyRootRel.$MyCache."/".$FileName.".zip"); |
238 $FileDWL = $MyRootRel.$MyCache."/".$FileName.".zip"; |
|
239 redirectionDWL($FileDWL); |
|
240 //echo ('<br/> DWL : '.$FileDWL); |
237 } |
241 } |
238 } |
242 } |
239 } |
243 } |
240 |
244 |
241 # Javascript DWL redirection |
245 # Javascript DWL redirection |