Merge pull request #5 from taigaio/sas-layer

Initial SAS layer that allows easy overwrite default behavior.
stable
David Barragán Merino 2014-09-03 10:10:52 +02:00
commit 56220d6101
9 changed files with 86 additions and 32 deletions

View File

@ -193,6 +193,7 @@ modules = [
"taigaNavMenu",
"taigaProject",
"taigaUserSettings",
"taigaPlugins",
# Vendor modules
"ngRoute",

View File

@ -188,9 +188,6 @@ module.directive("tgLogin", ["$tgAuth", "$tgConfirm", "$tgLocation", "$tgConfig"
RegisterDirective = ($auth, $confirm, $location, $config, $navUrls) ->
link = ($scope, $el, $attrs) ->
$scope.privacyPolicyUrl = $config.get("privacyPolicyUrl")
$scope.termsOfServiceUrl = $config.get("termsOfServiceUrl")
$scope.data = {}
form = $el.find("form").checksley()
@ -313,9 +310,6 @@ module.directive("tgChangePasswordFromRecovery", ["$tgAuth", "$tgConfirm", "$tgL
InvitationDirective = ($auth, $confirm, $location, $params, $config, $navUrls) ->
link = ($scope, $el, $attrs) ->
$scope.privacyPolicyUrl = $config.get("privacyPolicyUrl")
$scope.termsOfServiceUrl = $config.get("termsOfServiceUrl")
token = $params.token
promise = $auth.getInvitation(token)

View File

@ -6,11 +6,12 @@ config = {
defaultLanguage: "en"
languageOptions: {
"es": "Spanish"
"en": "English"
}
pubblicRegisterEnabled: true
privacyPolicyUrl: null
termsOfServiceUrl: null
}
angular.module("taigaLocalConfig", []).value("localconfig", config)

View File

@ -21,14 +21,4 @@ form.register-form
a.button.button-register.button-gray(href="", title="Sign up") Sign up
input(type="submit", style="display:none")
p.register-text(ng-if="termsOfServiceUrl && privacyPolicyUrl")
span By clicking "Sign up", you agree to our <br />
a(tg-bo-href="termsOfServiceUrl", title="See terms of service", target="_blank") terms of service
span and
a(tg-bo-href="privacyPolicyUrl", title="See privacy policy", target="_blank") privacy policy.
p.register-text(ng-if="termsOfServiceUrl && !privacyPolicyUrl")
span By clicking "Sign up", you agree to our <br />
a(tg-bo-href="termsOfServiceUrl", title="See terms of service", target="_blank") terms of service
p.register-text(ng-if="!termsOfServiceUrl && privacyPolicyUrl")
span By clicking "Sign up", you agree to our <br />
a(tg-bo-href="privacyPolicyUrl", title="See privacy policy", target="_blank") privacy policy.
tg-terms-notice

View File

@ -22,16 +22,7 @@ div.register-form-container(tg-register)
a.button.button-register.button-gray(href="", title="Sign up") Sign up
input(type="submit", class="hidden")
p.register-text(ng-if="termsOfServiceUrl && privacyPolicyUrl")
span By clicking "Sign up", you agree to our <br />
a(tg-bo-href="termsOfServiceUrl", title="See terms of service", target="_blank") terms of service
span and
a(tg-bo-href="privacyPolicyUrl", title="See privacy policy", target="_blank") privacy policy.
p.register-text(ng-if="termsOfServiceUrl && !privacyPolicyUrl")
span By clicking "Sign up", you agree to our <br />
a(tg-bo-href="termsOfServiceUrl", title="See terms of service", target="_blank") terms of service
p.register-text(ng-if="!termsOfServiceUrl && privacyPolicyUrl")
span By clicking "Sign up", you agree to our <br />
a(tg-bo-href="privacyPolicyUrl", title="See privacy policy", target="_blank") privacy policy.
// Only displays terms notice when terms plugin is loaded.
tg-terms-notice
a.register-text-top(href="", title="Login", tg-nav="login") Are you already registered? Log in

0
app/plugins/.hidden Normal file
View File

22
app/plugins/main.coffee Normal file
View File

@ -0,0 +1,22 @@
###
# Copyright (C) 2014 Andrey Antukh <niwi@niwi.be>
# Copyright (C) 2014 Jesús Espino Garcia <jespinog@gmail.com>
# Copyright (C) 2014 David Barragán Merino <bameda@dbarragan.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# File: pluggins/main.coffee
###
module = angular.module("taigaPlugins", [])

View File

@ -0,0 +1,53 @@
###
# Copyright (C) 2014 Andrey Antukh <niwi@niwi.be>
# Copyright (C) 2014 Jesús Espino Garcia <jespinog@gmail.com>
# Copyright (C) 2014 David Barragán Merino <bameda@dbarragan.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# File: plugins/terms/terms.coffee
###
taiga = @.taiga
module = angular.module("taigaPlugins")
template = _.template("""
<p class="register-text">
<span>By clicking "Sign up", you agree to our <br /></span>
<a href="<%= termsUrl %>" title="See terms of service" target="_blank"> terms of service</a>
<span> and</span>
<a href="<%= privacyUrl %>" title="See privacy policy" target="_blank"> privacy policy.</a>
</p>""")
TermsNoticeDirective = ($config) ->
privacyPolicyUrl = $config.get("privacyPolicyUrl")
termsOfServiceUrl = $config.get("termsOfServiceUrl")
templateFn = ->
if not (privacyPolicyUrl and termsOfServiceUrl)
return ""
ctx = {termsUrl: termsOfServiceUrl, privacyUrl: privacyPolicyUrl}
return template(ctx)
return {
scope: {}
restrict: "AE"
template: templateFn
}
module.directive("tgTermsNotice", ["$tgConfig", TermsNoticeDirective])

View File

@ -36,7 +36,7 @@ paths = {
images: "app/images/**/*"
locales: "app/locales/**/*.json"
coffee: ["app/coffee/app.coffee",
"config/main.coffee",
"app/config/*.coffee",
"app/coffee/*.coffee",
"app/coffee/modules/controllerMixins.coffee",
"app/coffee/modules/*.coffee",
@ -53,7 +53,8 @@ paths = {
"app/coffee/modules/locales/*.coffee",
"app/coffee/modules/base/*.coffee",
"app/coffee/modules/resources/*.coffee",
"app/coffee/modules/user-settings/*.coffee"]
"app/coffee/modules/user-settings/*.coffee"
"app/plugins/**/*.coffee"]
vendorJsLibs: [
"app/vendor/jquery/dist/jquery.js",
"app/vendor/lodash/dist/lodash.js",
@ -75,7 +76,8 @@ paths = {
"app/vendor/jquery-textcomplete/jquery.textcomplete.js",
"app/vendor/markitup/markitup/jquery.markitup.js"
"app/js/jquery.ui.git.js",
"app/js/sha1.js"
"app/js/sha1.js",
"app/plugins/**/*.js"
]
}