Browse Source

Display selected system page in sidebar

Vova Tkach 6 years ago
parent
commit
822eb406d3
1 changed files with 17 additions and 3 deletions
  1. 17 3
      engine/backend/modules/modules.go

+ 17 - 3
engine/backend/modules/modules.go

@@ -96,7 +96,8 @@ func (this *Module) module_get_list_of_modules() *[]ModuleItem {
 		for i := 0; i < t.NumMethod(); i++ {
 			m := t.Method(i)
 			if strings.HasPrefix(m.Name, "Module_") && strings.HasSuffix(m.Name, "_alias") {
-				alias := m.Name[7:][:5]
+				alias := m.Name[7:]
+				alias = alias[0:len(alias)-6]
 				this.modlist = append(this.modlist, ModuleItem{
 					alias,
 					this.module_get_display(alias),
@@ -156,8 +157,21 @@ func (this *Module) GetNavMenuModules() string {
 }
 
 func (this *Module) GetSidebarLeft() string {
-	sidebar := `<ul class="nav flex-column">`
 	list := this.module_get_list_of_modules()
+
+	// Add system module to sidebar if selected
+	sbsys := ``
+	for _, value := range *list {
+		if !value.Display && value.Alias == this.mmod {
+			sbsys += `<ul class="nav flex-column">`
+			sbsys += `<li class="nav-item active"><a class="nav-link" href="/cp/` + value.Alias + `/">` + value.Icon + value.Name + `</a>` + this.module_get_submenu(value.Alias) + `</li>`
+			sbsys += `</ul>`
+			sbsys += `<div class="dropdown-divider" style="border-color:#d6d6d6;margin:0px;"></div>`
+			break
+		}
+	}
+
+	sidebar := `<ul class="nav flex-column">`
 	for _, value := range *list {
 		if value.Display {
 			class := ""
@@ -170,7 +184,7 @@ func (this *Module) GetSidebarLeft() string {
 		}
 	}
 	sidebar += `</ul>`
-	return sidebar
+	return sbsys + sidebar
 }
 
 func (this *Module) GetContent() string {