defer resetMenuTestState(ts)
 
        home := ts.site.newHomeNode()
-       homeMenuEntry := &MenuEntry{Name: home.Title, Url: string(home.Permalink)}
+       homeMenuEntry := &MenuEntry{Name: home.Title, Url: home.Url}
 
        for i, this := range []struct {
                menu           string
 
 
 func (n *Node) HasMenuCurrent(menuId string, inme *MenuEntry) bool {
        if inme.HasChildren() {
-               me := MenuEntry{Name: n.Title, Url: string(n.Permalink)}
+               me := MenuEntry{Name: n.Title, Url: n.Url}
 
                for _, child := range inme.Children {
                        if me.IsSameResource(child) {
 
 func (n *Node) IsMenuCurrent(menuId string, inme *MenuEntry) bool {
 
-       me := MenuEntry{Name: n.Title, Url: string(n.Permalink)}
-
+       me := MenuEntry{Name: n.Title, Url: n.Url}
        if !me.IsSameResource(inme) {
                return false
        }
 
        ret := PageMenus{}
 
        if ms, ok := page.Params["menu"]; ok {
-               link, _ := page.Permalink()
+               link, _ := page.RelPermalink()
 
                me := MenuEntry{Name: page.LinkTitle(), Weight: page.Weight, Url: link}
 
 
                                        }
 
                                        menuEntry.MarshallMap(ime)
+
                                        if strings.HasPrefix(menuEntry.Url, "/") {
-                                               // make it absolute so it matches the nodes
-                                               menuEntry.Url = s.permalinkStr(menuEntry.Url)
+                                               // make it match the nodes
+                                               menuEntry.Url = s.prepUrl(menuEntry.Url)
                                        }
+
                                        if ret[name] == nil {
                                                ret[name] = &Menu{}
                                        }