Mercurial > hg > mgallery
comparison mgtool.php @ 15:805f93962cf9
Factorize gallery cache file writing to a separate function.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 14 Sep 2015 09:54:01 +0300 |
parents | 0b097770061d |
children | 3491ab93630e |
comparison
equal
deleted
inserted
replaced
14:c9fad00199f9 | 15:805f93962cf9 |
---|---|
324 return TRUE; | 324 return TRUE; |
325 | 325 |
326 return ($entry[$field] < $cvalue); | 326 return ($entry[$field] < $cvalue); |
327 } | 327 } |
328 | 328 |
329 | |
330 function mgWriteGalleryCache($cacheFilename, &$gallery, &$entries) | |
331 { | |
332 // Store gallery cache for this directory | |
333 $images = array(); | |
334 $albums = array(); | |
335 foreach ($entries as $ename => &$edata) | |
336 { | |
337 if ($edata["hide"]) | |
338 continue; | |
339 | |
340 unset($edata["hide"]); | |
341 if ($edata["type"] == 0) | |
342 $images[$ename] = &$edata; | |
343 else | |
344 $albums[$ename] = &$edata; | |
345 } | |
346 ksort($images); | |
347 ksort($albums); | |
348 | |
349 $str = | |
350 "<?\n". | |
351 "\$galData = ".var_export($gallery, TRUE).";\n". | |
352 "\$galAlbumsIndex = ".var_export(array_keys($albums), TRUE).";\n". | |
353 "\$galImagesIndex = ".var_export(array_keys($images), TRUE).";\n". | |
354 "\$galEntries = ".var_export($entries, TRUE).";\n". | |
355 "?>"; | |
356 | |
357 if (@file_put_contents($cacheFilename, $str, LOCK_EX) === FALSE) | |
358 return mgError("Error writing '".$cacheFilename."'\n"); | |
359 | |
360 return TRUE; | |
361 } | |
329 | 362 |
330 function mgHandleDirectory($mode, $basepath, $path, $parentData, $parentEntry, $writeMode, $startAt) | 363 function mgHandleDirectory($mode, $basepath, $path, $parentData, $parentEntry, $writeMode, $startAt) |
331 { | 364 { |
332 global $galExifConversions, $galTNPath, $galCleanFlags; | 365 global $galExifConversions, $galTNPath, $galCleanFlags; |
333 | 366 |
507 echo "\r".$path." ..... DONE\n"; | 540 echo "\r".$path." ..... DONE\n"; |
508 | 541 |
509 mgCheckQuit(TRUE); | 542 mgCheckQuit(TRUE); |
510 | 543 |
511 // Store gallery cache for this directory | 544 // Store gallery cache for this directory |
512 if ($writeMode) | 545 if ($writeMode && !mgWriteGalleryCache($cacheFilename, $gallery, $entries)) |
513 { | 546 return FALSE; |
514 $images = array(); | 547 { |
515 $albums = array(); | |
516 foreach ($entries as $ename => &$edata) | |
517 { | 548 { |
518 if ($edata["hide"]) | |
519 continue; | |
520 | |
521 unset($edata["hide"]); | |
522 if ($edata["type"] == 0) | |
523 $images[$ename] = &$edata; | |
524 else | |
525 $albums[$ename] = &$edata; | |
526 } | 549 } |
527 ksort($images); | |
528 ksort($albums); | |
529 | |
530 $str = | |
531 "<?\n". | |
532 "\$galData = ".var_export($gallery, TRUE).";\n". | |
533 "\$galAlbumsIndex = ".var_export(array_keys($albums), TRUE).";\n". | |
534 "\$galImagesIndex = ".var_export(array_keys($images), TRUE).";\n". | |
535 "\$galEntries = ".var_export($entries, TRUE).";\n". | |
536 "?>"; | |
537 | |
538 if (@file_put_contents($cacheFilename, $str, LOCK_EX) === FALSE) | |
539 return mgError("Error writing '".$cacheFilename."'\n"); | |
540 } | 550 } |
541 } | 551 } |
542 else | 552 else |
543 mgFatal("Invalid work mode '".$mode."'.\n"); | 553 mgFatal("Invalid work mode '".$mode."'.\n"); |
544 | 554 |