changeset 293:486398fb60ea

Allow album-specific {tn,med}_{width,height,format} settings.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 01 Aug 2019 15:26:08 +0300
parents 418f932763f2
children 38f510786d88
files mgallery.inc.php mgallery.php mgtool.php
diffstat 3 files changed, 21 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/mgallery.inc.php	Thu Aug 01 15:11:12 2019 +0300
+++ b/mgallery.inc.php	Thu Aug 01 15:26:08 2019 +0300
@@ -198,6 +198,15 @@
 }
 
 
+function mgGetAlbumSetting(&$data, $key, $default = NULL)
+{
+  if (array_key_exists($key, $data))
+    return $data[$key];
+  else
+    return mgGetSetting($key, $default);
+}
+
+
 function mgGetPath($path, $key)
 {
   $val = mgGetSetting($key);
--- a/mgallery.php	Thu Aug 01 15:11:12 2019 +0300
+++ b/mgallery.php	Thu Aug 01 15:26:08 2019 +0300
@@ -456,8 +456,6 @@
 $galCleanURLS = mgGetSetting("clean_urls");
 $galTNPath = mgGetSetting("tn_path");
 $galMedPath = mgGetSetting("med_path");
-$galTNFormat = mgGetSetting("tn_format");
-$galMedFormat = mgGetSetting("med_format");
 $galTitlePrefix = mgGetSetting("title_prefix");
 $galTitleSep = mgGetSetting("title_sep");
 
@@ -649,6 +647,9 @@
   exit;
 }
 
+$galTNFormat = mgGetAlbumSetting($galData, "tn_format");
+$galMedFormat = mgGetAlbumSetting($galData, "med_format");
+
 
 function mgGetArrStr($data, $skeys, $sfmt1, $func = NULL)
 {
--- a/mgtool.php	Thu Aug 01 15:11:12 2019 +0300
+++ b/mgtool.php	Thu Aug 01 15:26:08 2019 +0300
@@ -869,7 +869,7 @@
   // Cleanup mode
   if ($mode == GCMD_CLEAN)
   {
-    $gallery = [];
+    $gallery = mgGetAlbumData($basepath, $path);
 
     if ($writeMode)
     {
@@ -886,8 +886,8 @@
       {
         foreach ($entries as $ename => &$edata)
         {
-          $medFilename = $medPath."/".$ename.".".mgGetSetting("med_format");
-          $tnFilename = $tnPath."/".$ename.".".mgGetSetting("tn_format");
+          $medFilename = $medPath."/".$ename.".".mgGetAlbumSetting($gallery, "med_format");
+          $tnFilename = $tnPath."/".$ename.".".mgGetAlbumSetting($gallery, "tn_format");
           $generatedFiles[$medFilename] = 1;
           $generatedFiles[$tnFilename] = 1;
         }
@@ -930,8 +930,8 @@
 
       $nentry++;
       $efilename = $path."/".$ename;
-      $medFilename = $medPath."/".$ename.".".mgGetSetting("med_format");
-      $tnFilename = $tnPath."/".$ename.".".mgGetSetting("tn_format");
+      $medFilename = $medPath."/".$ename.".".mgGetAlbumSetting($gallery, "med_format");
+      $tnFilename = $tnPath."/".$ename.".".mgGetAlbumSetting($gallery, "tn_format");
       $capFilename = $path."/".$edata["base"].".txt";
 
       if (array_key_exists($ename, $galEntries))
@@ -1006,16 +1006,16 @@
           {
             echo "1";
             mgConvertImage($efilename, $medFilename,
-              [mgGetSetting("med_width"), mgGetSetting("med_height")],
-              mgGetSetting("med_format"), mgGetSetting("med_quality"), TRUE);
+              [mgGetAlbumSetting($gallery, "med_width"), mgGetAlbumSetting($gallery, "med_height")],
+              mgGetAlbumSetting($gallery, "med_format"), mgGetAlbumSetting($gallery, "med_quality"), TRUE);
           }
 
           if ($updFlags & GUPD_TN_IMAGE)
           {
             echo "2";
             mgConvertImage($efilename, $tnFilename,
-              [mgGetSetting("tn_width"), mgGetSetting("tn_height")],
-              mgGetSetting("tn_format"), mgGetSetting("tn_quality"), TRUE);
+              [mgGetAlbumSetting($gallery, "tn_width"), mgGetAlbumSetting($gallery, "tn_height")],
+              mgGetAlbumSetting($gallery, "tn_format"), mgGetAlbumSetting($gallery, "tn_quality"), TRUE);
           }
         }