From 6d00d5f6a52c37830f283d9d79b0254af28e32d7 Mon Sep 17 00:00:00 2001
From: Peter Jaszkowiak
Date: Wed, 21 Dec 2016 15:47:13 -0700
Subject: [PATCH] Fix ACP title issues
---
public/language/en-GB/admin/menu.json | 2 +-
public/src/admin/admin.js | 44 +++++++++++++--------------
2 files changed, 23 insertions(+), 23 deletions(-)
diff --git a/public/language/en-GB/admin/menu.json b/public/language/en-GB/admin/menu.json
index 7a5327f643..6a4995ea6e 100644
--- a/public/language/en-GB/admin/menu.json
+++ b/public/language/en-GB/admin/menu.json
@@ -39,7 +39,7 @@
"section-appearance": "Appearance",
"appearance/themes": "Themes",
"appearance/skins": "Skins",
- "appearance/customise": "Custom HTML & CSS",
+ "appearance/customise": "Custom HTML & CSS",
"section-extend": "Extend",
"extend/plugins": "Plugins",
diff --git a/public/src/admin/admin.js b/public/src/admin/admin.js
index 1c44a7e78d..58e79aa95c 100644
--- a/public/src/admin/admin.js
+++ b/public/src/admin/admin.js
@@ -95,6 +95,7 @@
}
url = [config.relative_path, url].join('/');
+ var fallback;
$('#main-menu li').removeClass('active');
$('#main-menu a').removeClass('active').filter('[href="' + url + '"]').each(function () {
@@ -102,36 +103,35 @@
menu
.parent().addClass('active')
.parents('.menu-item').addClass('active');
-
- var match = menu.attr('href').match(/admin\/((.+?)\/.+?)$/);
- if (!match) {
- return;
- }
- var str = '[[admin/menu:' + match[1] + ']]';
- if (match[2] === 'settings') {
- str = translator.compile('admin/menu:settings.page-title', str);
- }
- translator.translate(str, function (text) {
- $('#main-page-title').text(text);
- });
+ fallback = menu.text();
});
- var title = url;
- if (/admin\/general\/dashboard$/.test(title)) {
- title = '[[admin/menu:general/dashboard]]';
+ var mainTitle;
+ var pageTitle;
+ if (/admin\/general\/dashboard$/.test(url)) {
+ mainTitle = pageTitle = '[[admin/menu:general/dashboard]]';
+ } else if (/admin\/plugins\//.test(url)) {
+ mainTitle = fallback;
+ pageTitle = '[[admin/menu:section-plugins]] > ' + mainTitle;
} else {
- title = title.match(/admin\/(.+?)\/(.+?)$/);
- title = '[[admin/menu:section-' +
- (title[1] === 'development' ? 'advanced' : title[1]) +
- ']]' + (title[2] ? (' > [[admin/menu:' +
- title[1] + '/' + title[2] + ']]') : '');
+ var matches = url.match(/admin\/(.+?)\/(.+?)$/);
+ mainTitle = '[[admin/menu:' + matches[1] + '/' + matches[2] + ']]';
+ pageTitle = '[[admin/menu:section-' +
+ (matches[1] === 'development' ? 'advanced' : matches[1]) +
+ ']]' + (matches[2] ? (' > ' + mainTitle) : '');
+ if (matches[2] === 'settings') {
+ mainTitle = translator.compile('admin/menu:settings.page-title', mainTitle);
+ }
}
- title = '[[admin/admin:acp-title, ' + title + ']]';
+ pageTitle = translator.compile('admin/admin:acp-title', pageTitle);
- translator.translate(title, function (title) {
+ translator.translate(pageTitle, function (title) {
document.title = title.replace(/>/g, '>');
});
+ translator.translate(mainTitle, function (text) {
+ $('#main-page-title').text(text);
+ });
});
}