changeset 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 c9fad00199f9
children 3491ab93630e
files mgtool.php
diffstat 1 files changed, 35 insertions(+), 25 deletions(-) [+]
line wrap: on
line diff
--- a/mgtool.php	Fri Aug 28 13:13:27 2015 +0300
+++ b/mgtool.php	Mon Sep 14 09:54:01 2015 +0300
@@ -327,6 +327,39 @@
 }
 
 
+function mgWriteGalleryCache($cacheFilename, &$gallery, &$entries)
+{
+  // Store gallery cache for this directory
+  $images = array();
+  $albums = array();
+  foreach ($entries as $ename => &$edata)
+  {
+    if ($edata["hide"])
+      continue;
+
+    unset($edata["hide"]);
+    if ($edata["type"] == 0)
+      $images[$ename] = &$edata;
+    else
+      $albums[$ename] = &$edata;
+  }
+  ksort($images);
+  ksort($albums);
+
+  $str =
+    "<?\n".
+    "\$galData = ".var_export($gallery, TRUE).";\n".
+    "\$galAlbumsIndex = ".var_export(array_keys($albums), TRUE).";\n".
+    "\$galImagesIndex = ".var_export(array_keys($images), TRUE).";\n".
+    "\$galEntries = ".var_export($entries, TRUE).";\n".
+    "?>";
+
+  if (@file_put_contents($cacheFilename, $str, LOCK_EX) === FALSE)
+    return mgError("Error writing '".$cacheFilename."'\n");
+
+  return TRUE;
+}
+
 function mgHandleDirectory($mode, $basepath, $path, $parentData, $parentEntry, $writeMode, $startAt)
 {
   global $galExifConversions, $galTNPath, $galCleanFlags;
@@ -509,34 +542,11 @@
     mgCheckQuit(TRUE);
 
     // Store gallery cache for this directory
-    if ($writeMode)
+    if ($writeMode && !mgWriteGalleryCache($cacheFilename, $gallery, $entries))
+      return FALSE;
     {
-      $images = array();
-      $albums = array();
-      foreach ($entries as $ename => &$edata)
       {
-        if ($edata["hide"])
-          continue;
-
-        unset($edata["hide"]);
-        if ($edata["type"] == 0)
-          $images[$ename] = &$edata;
-        else
-          $albums[$ename] = &$edata;
       }
-      ksort($images);
-      ksort($albums);
-
-      $str =
-        "<?\n".
-        "\$galData = ".var_export($gallery, TRUE).";\n".
-        "\$galAlbumsIndex = ".var_export(array_keys($albums), TRUE).";\n".
-        "\$galImagesIndex = ".var_export(array_keys($images), TRUE).";\n".
-        "\$galEntries = ".var_export($entries, TRUE).";\n".
-        "?>";
-
-      if (@file_put_contents($cacheFilename, $str, LOCK_EX) === FALSE)
-        return mgError("Error writing '".$cacheFilename."'\n");
     }
   }
   else