Handle menu selection client side
This commit is contained in:
@@ -18,10 +18,10 @@
|
||||
</div>
|
||||
<div class="collapse navbar-collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li class="${artists-active}">${artists class="Lms-btn"}</li>
|
||||
<li class="${releases-active}">${releases class="Lms-btn"}</li>
|
||||
<li class="${tracks-active}">${tracks class="Lms-btn"}</li>
|
||||
<li class="${playqueue-active}">${playqueue class="Lms-btn"}</li>
|
||||
<li>${artists class="Lms-btn"}</li>
|
||||
<li>${releases class="Lms-btn"}</li>
|
||||
<li>${tracks class="Lms-btn"}</li>
|
||||
<li>${playqueue class="Lms-btn"}</li>
|
||||
</ul>
|
||||
<div class="navbar-form navbar-left">
|
||||
${filters class="form-group Lms-clusters-control"}
|
||||
|
||||
@@ -349,7 +349,7 @@ enum IdxRoot
|
||||
|
||||
static
|
||||
void
|
||||
handlePathChange(Wt::WTemplate& main, Wt::WStackedWidget& stack, bool isAdmin)
|
||||
handlePathChange(Wt::WStackedWidget& stack, bool isAdmin)
|
||||
{
|
||||
static const struct
|
||||
{
|
||||
@@ -373,11 +373,6 @@ handlePathChange(Wt::WTemplate& main, Wt::WStackedWidget& stack, bool isAdmin)
|
||||
|
||||
LMS_LOG(UI, DEBUG) << "Internal path changed to '" << wApp->internalPath() << "'";
|
||||
|
||||
main.bindString("artists-active", wApp->internalPathMatches("/artists") ? "active" : "");
|
||||
main.bindString("releases-active", wApp->internalPathMatches("/releases") ? "active" : "");
|
||||
main.bindString("tracks-active", wApp->internalPathMatches("/tracks") ? "active" : "");
|
||||
main.bindString("playqueue-active", wApp->internalPathMatches("/playqueue") ? "active" : "");
|
||||
|
||||
for (const auto& view : views)
|
||||
{
|
||||
if (wApp->internalPathMatches(view.path))
|
||||
@@ -442,6 +437,11 @@ LmsApplication::createHome()
|
||||
|
||||
declareJavaScriptFunction("onLoadCover", "function(id) { id.className += \" Lms-cover-loaded\"}");
|
||||
doJavaScript("$('body').tooltip({ selector: '[data-toggle=\"tooltip\"]'})");
|
||||
doJavaScript(R"(
|
||||
$(".navbar-nav a").on("click", function(){
|
||||
$(".navbar-nav").find(".active").removeClass("active");
|
||||
$(this).parent().addClass("active");
|
||||
});)");
|
||||
|
||||
Wt::WTemplate* main {root()->addWidget(std::make_unique<Wt::WTemplate>(Wt::WString::tr("Lms.template")))};
|
||||
|
||||
@@ -603,10 +603,10 @@ LmsApplication::createHome()
|
||||
|
||||
internalPathChanged().connect([=]
|
||||
{
|
||||
handlePathChange(*main, *mainStack, isUserAdmin());
|
||||
handlePathChange(*mainStack, isUserAdmin());
|
||||
});
|
||||
|
||||
handlePathChange(*main, *mainStack, isUserAdmin());
|
||||
handlePathChange(*mainStack, isUserAdmin());
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
Reference in New Issue
Block a user