# HG changeset patch # User Matti Hamalainen # Date 1564662368 -10800 # Node ID 486398fb60ea8a2962f922e4e0e736a9d258c5a8 # Parent 418f932763f246da90d60f93534d448dac6378dc Allow album-specific {tn,med}_{width,height,format} settings. diff -r 418f932763f2 -r 486398fb60ea mgallery.inc.php --- 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); diff -r 418f932763f2 -r 486398fb60ea mgallery.php --- 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) { diff -r 418f932763f2 -r 486398fb60ea mgtool.php --- 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); } }