From 8c46f317202f03293a0922bde44934836dc5a84d Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Tue, 2 Sep 2014 19:19:10 +0200 Subject: [PATCH] Add directive for public register message on login. This removes conditional logic on template linking process and innecesary scope mutation on login directive. Also, it has less data bindings, because the new directive do all work at compile time without adding additional bindings. --- app/coffee/modules/auth.coffee | 25 ++++++++++++++++++++++ app/partials/views/modules/login-form.jade | 4 +--- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/app/coffee/modules/auth.coffee b/app/coffee/modules/auth.coffee index 87131eaf..a5c33af0 100644 --- a/app/coffee/modules/auth.coffee +++ b/app/coffee/modules/auth.coffee @@ -145,6 +145,31 @@ module.service("$tgAuth", AuthService) ## Login Directive ############################################################################# +# Directive that manages the visualization of public register +# message/link on login page. + +PublicRegisterMessageDirective = ($config) -> + template = _.template(""" +

+ Not registered yet? + create your free account here +

""") + + templateFn = -> + url = $config.get("publicRegisterEnabled") + if not url + return "" + return template({url:url}) + + return { + restrict: "AE" + scope: {} + template: templateFn + } + + +module.directive("tgPublicRegisterMessage", ["$tgConfig", PublicRegisterMessageDirective]) + LoginDirective = ($auth, $confirm, $location, $config, $routeParams, $navUrls) -> link = ($scope, $el, $attrs) -> $scope.pubblicRegisterEnabled = $config.get("pubblicRegisterEnabled") diff --git a/app/partials/views/modules/login-form.jade b/app/partials/views/modules/login-form.jade index f3dec69e..3dca584e 100644 --- a/app/partials/views/modules/login-form.jade +++ b/app/partials/views/modules/login-form.jade @@ -13,6 +13,4 @@ div.login-form-container(tg-login) a.button.button-login.button-gray(href="", ng-click="ctrl.submit()", title="Sign in") Sign in input(type="submit", style="display:none") - p.login-text(ng-if="pubblicRegisterEnabled") - span Not registered yet? - a(href="", tg-nav="register", title="Register") create your free account here + tg-public-register-message