From e32e3ab2c33f81582f2d511fa98754d9df672f2d Mon Sep 17 00:00:00 2001 From: Juanfran Date: Tue, 12 Aug 2014 08:34:02 +0200 Subject: [PATCH] fix urls --- app/coffee/modules/base/navurls.coffee | 39 ++++++++++++++++---------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/app/coffee/modules/base/navurls.coffee b/app/coffee/modules/base/navurls.coffee index eecb3c82..346971d6 100644 --- a/app/coffee/modules/base/navurls.coffee +++ b/app/coffee/modules/base/navurls.coffee @@ -70,29 +70,38 @@ NavigationUrlsDirective = ($navurls, $auth, $q, $location) -> return [name, options] link = ($scope, $el, $attrs) -> - parseNav($attrs.tgNav, $scope).then (result) -> - [name, options] = result - user = $auth.getUser() - options.user = user.username if user + if $el.is("a") + $el.attr("href", "#") - url = $navurls.resolve(name) - fullUrl = $navurls.formatUrl(url, options) + $el.on "mouseenter", (event) -> + target = $(event.currentTarget) - $el.data("fullUrl", fullUrl) + if !target.data("fullUrl") + parseNav($attrs.tgNav, $scope).then (result) -> + [name, options] = result + user = $auth.getUser() + options.user = user.username if user - if $el.is("a") - $el.attr("href", fullUrl) + url = $navurls.resolve(name) + fullUrl = $navurls.formatUrl(url, options) + + target.data("fullUrl", fullUrl) + + if target.is("a") + target.attr("href", fullUrl) $el.on "click", (event) -> event.preventDefault() + target = $(event.currentTarget) - fullUrl = $(event.currentTarget).data('fullUrl') + fullUrl = target.data("fullUrl") - if event.which != 2 - $location.url(fullUrl) - $scope.$apply() - else - window.open fullUrl + switch event.which + when 1 + $location.url(fullUrl) + $scope.$apply() + when 2 + window.open fullUrl $scope.$on "$destroy", -> $el.off()