Prerel 1.7.2.6

This commit is contained in:
Chris Collins
2025-08-23 14:49:08 +01:00
parent 9c1ffe79fe
commit 9e3f0fff9a
8 changed files with 15 additions and 22 deletions

2
.gitignore vendored
View File

@@ -26,4 +26,4 @@
/WeddingShare/wwwroot/banners
/WeddingShare/wwwroot/images/custom_resources
/WeddingShare/config/wedding-share.db.bak
/WeddingShare/config/key-c8502003-3735-4a35-8488-69a3a0736916.xml
/WeddingShare/config/key-*.xml

View File

@@ -51,7 +51,7 @@
<td>
@if (userPermissions.HasFlag(AccessPermissions.Gallery_View))
{
<i class="btnOpenGallery btn btn-outline-primary fa-solid fa-up-right-from-square" data-url="@_url.GenerateFullUrl(Context?.Request, "/Gallery", append)" data-target="@(await _settings.GetOrDefault(Settings.Basic.LinksOpenNewTab, true) ? "_blank" : "_self")" alt="Open"></i>
<i class="btnOpenGallery btn btn-outline-primary fa-solid fa-up-right-from-square" data-url="@_url.GenerateFullUrl(Context?.Request, "/Gallery", append, new List<string>() { "partial" })" data-target="@(await _settings.GetOrDefault(Settings.Basic.LinksOpenNewTab, true) ? "_blank" : "_self")" alt="Open"></i>
}
@if (userPermissions.HasFlag(AccessPermissions.Gallery_Download))
{

View File

@@ -9,6 +9,7 @@
var userPermissions = User?.Identity?.GetUserPermissions() ?? AccessPermissions.None;
var qrCodeEnabled = await _settings.GetOrDefault(Settings.Gallery.QRCode.Enabled, true, Model?.Gallery?.Id);
var showFilters = await _settings.GetOrDefault(Settings.Gallery.ShowFilters, true, Model?.Gallery?.Id);
var excludeFromUrls = new List<string>() { "partial" };
}
@if (qrCodeEnabled)
@@ -67,7 +68,7 @@
{
new KeyValuePair<string, string>("mode", ((int)mode).ToString())
};
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append)">@_localizer[mode.ToString()].Value</a>
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append, excludeFromUrls)">@_localizer[mode.ToString()].Value</a>
}
</div>
</div>
@@ -83,7 +84,7 @@
{
new KeyValuePair<string, string>("group", ((int)group).ToString())
};
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append)">@_localizer[group.ToString()].Value</a>
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append, excludeFromUrls)">@_localizer[group.ToString()].Value</a>
}
</div>
</div>
@@ -99,7 +100,7 @@
{
new KeyValuePair<string, string>("order", ((int)order).ToString())
};
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append)">@_localizer[order.ToString()].Value</a>
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append, excludeFromUrls)">@_localizer[order.ToString()].Value</a>
}
</div>
</div>
@@ -115,7 +116,7 @@
{
new KeyValuePair<string, string>("filter", ((int)filter).ToString())
};
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append)">@_localizer[filter.ToString()].Value</a>
<a class="dropdown-item" href="@_url.GenerateFullUrl(Context.Request, Context.Request.Path, append, excludeFromUrls)">@_localizer[filter.ToString()].Value</a>
}
</div>
</div>

View File

@@ -5,6 +5,8 @@
var queryString = HttpUtility.ParseQueryString(Context.Request.QueryString.ToString());
queryString.Remove("page");
queryString.Remove("Page");
queryString.Remove("partial");
queryString.Remove("Partial");
var pageUrl = $"/{Context.Request.Path.ToString()?.TrimStart('/')?.TrimEnd('?')}?{queryString.ToString()?.TrimStart('?')}";
}

View File

@@ -32,7 +32,7 @@
catch { }
}
var qrExclude = new List<string>();
var qrExclude = new List<string>() { "partial" };
if (await _settings.GetOrDefault(Settings.Basic.HideKeyFromQRCode, false))
{
qrExclude.Add("key");

View File

@@ -133,7 +133,7 @@
var image = imageGroupImages.ElementAt(index);
<div class="image-tile mb-2">
<a href="@image.ImagePath" class="media-viewer-item" data-media-viewer-type="@image?.MediaType.ToString().ToLower()" data-media-viewer-collection="@image.GalleryName" data-media-viewer-author="@(identityEnabled ? $"{_localizer["Uploaded_By"].Value}: {(!string.IsNullOrWhiteSpace(image?.UploadedBy) ? $"{image?.UploadedBy}{(!string.IsNullOrWhiteSpace(image?.UploaderEmailAddress) && User?.Identity != null && User.Identity.IsAuthenticated ? $" - {image?.UploaderEmailAddress?.ToLower()}" : string.Empty)}" : "Anonymous")}" : string.Empty)" data-media-viewer-download="@((await _settings.GetOrDefault(Settings.Gallery.Download, true, Model?.Gallery?.Id) || (User?.Identity != null && User.Identity.IsAuthenticated)).ToString().ToLower())">
<a href="@image.ImagePath" class="media-viewer-item" data-media-viewer-index="@index" data-media-viewer-type="@image?.MediaType.ToString().ToLower()" data-media-viewer-collection="@image.GalleryName" data-media-viewer-author="@(identityEnabled ? $"{_localizer["Uploaded_By"].Value}: {(!string.IsNullOrWhiteSpace(image?.UploadedBy) ? $"{image?.UploadedBy}{(!string.IsNullOrWhiteSpace(image?.UploaderEmailAddress) && User?.Identity != null && User.Identity.IsAuthenticated ? $" - {image?.UploaderEmailAddress?.ToLower()}" : string.Empty)}" : "Anonymous")}" : string.Empty)" data-media-viewer-download="@((await _settings.GetOrDefault(Settings.Gallery.Download, true, Model?.Gallery?.Id) || (User?.Identity != null && User.Identity.IsAuthenticated)).ToString().ToLower())">
<img src="@image?.ThumbnailPath" class="w-100 shadow-1-strong" loading="lazy" onerror="this.onerror=null;this.src='@image?.ThumbnailPathFallback';" />
@if (image?.MediaType == MediaType.Video)
{

View File

@@ -158,7 +158,7 @@
}
},
"Release": {
"Version": "1.7.2.5"
"Version": "1.7.2.6"
},
"Sponsors": {
"Url": "https://sponsors.wedding-share.org",

View File

@@ -125,7 +125,9 @@ function moveSlide(direction) {
index = 0;
}
openMediaViewer(items[index]);
let slide = $(`a[data-media-viewer-index='${index}']`);
openMediaViewer(slide);
}
(function () {
@@ -133,18 +135,6 @@ function moveSlide(direction) {
clearTimeout(playButtonTimeout);
playButtonTimeout = setTimeout(function () {
let collections = [];
$('.media-viewer-item').each(function () {
let name = $(this).data('media-viewer-collection');
if (!collections.includes(name)) {
collections.push(name);
$(`*[data-media-viewer-collection='${name}']`).each(function (i) {
$(this).attr('data-media-viewer-index', i);
});
}
});
$('.media-viewer-item .media-viewer-play').each(function () {
let element = $(this);
let preview = element.parent();