[Cppcms-users] Navigation template - Set "active" on corresponding entry
Brought to you by:
artyom-beilis
From: <jo...@em...> - 2020-10-12 20:26:29
|
Hi guys! I started evaluating CppCMS for a project a few days ago. Right now I am trying to build a very simple user management back-end as a proof of concept. I am implementing a simple portal using CppCMS. The master page has a simple sidebar for navigational purposes based on the W3C example (https://www.w3schools.com/howto/howto_css_sidebar_responsive.asp). My master template looks like this (mainly the sidebar template is of interest): <% c++ #include "data/content.hpp" %> <% skin defskin %> <% view master uses content::master %> <% template title() %> <%= title %> <% end template %> <% template page_content() %> Override Me <% end template %> <% template sidebar() %> <div class="sidebar"> <a class="active" href='<% url "/" %>'>Home</a> <a href='<% url "/news" %>'>News</a> <a href='<% url "/users" %>'>Users</a> </div> <% end template %> <% template render() %> <html> <head> <link rel="stylesheet" href="/css/style.css"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title><% include title() %></title> </head> <body> <% include sidebar() %> <div class="content"> <h1><% include title() %></h1> <% include page_content() %> </div> </body> </html> <% end template %> <% end view %> <% end skin %> What is the appropriate/recommended way of setting the class="active" attribute for the URL of the current view/page? Is there a mechanism in the template engine that allows me to set the attribute on the appropriate menu item in the master template? Note: I've posted this also on GitHub issues but by now I figured I might have more luck here. Best regards, ~ Joel |