Merge pull request #858 from taigaio/user-settings-plugins-support
user settings plugins supportstable
commit
c862e1eb4d
|
@ -335,6 +335,10 @@ configure = ($routeProvider, $locationProvider, $httpProvider, $provide, $tgEven
|
||||||
$routeProvider.when("/cancel-account/:cancel_token",
|
$routeProvider.when("/cancel-account/:cancel_token",
|
||||||
{templateUrl: "user/cancel-account.html"})
|
{templateUrl: "user/cancel-account.html"})
|
||||||
|
|
||||||
|
# UserSettings - Contrib Plugins
|
||||||
|
$routeProvider.when("/user-settings/contrib/:plugin",
|
||||||
|
{templateUrl: "contrib/user-settings.html"})
|
||||||
|
|
||||||
# User profile
|
# User profile
|
||||||
$routeProvider.when("/profile",
|
$routeProvider.when("/profile",
|
||||||
{
|
{
|
||||||
|
@ -594,6 +598,7 @@ init = ($log, $rootscope, $auth, $events, $analytics, $translate, $location, $na
|
||||||
# Taiga Plugins
|
# Taiga Plugins
|
||||||
$rootscope.contribPlugins = @.taigaContribPlugins
|
$rootscope.contribPlugins = @.taigaContribPlugins
|
||||||
$rootscope.adminPlugins = _.filter(@.taigaContribPlugins, {"type": "admin"})
|
$rootscope.adminPlugins = _.filter(@.taigaContribPlugins, {"type": "admin"})
|
||||||
|
$rootscope.userSettingsPlugins = _.filter(@.taigaContribPlugins, {"type": "userSettings"})
|
||||||
|
|
||||||
$rootscope.$on "$translateChangeEnd", (e, ctx) ->
|
$rootscope.$on "$translateChangeEnd", (e, ctx) ->
|
||||||
lang = ctx.language
|
lang = ctx.language
|
||||||
|
|
|
@ -112,6 +112,7 @@ urls = {
|
||||||
"user-settings-user-change-password": "/user-settings/user-change-password"
|
"user-settings-user-change-password": "/user-settings/user-change-password"
|
||||||
"user-settings-user-avatar": "/user-settings/user-avatar"
|
"user-settings-user-avatar": "/user-settings/user-avatar"
|
||||||
"user-settings-mail-notifications": "/user-settings/mail-notifications"
|
"user-settings-mail-notifications": "/user-settings/mail-notifications"
|
||||||
|
"user-settings-contrib": "/user-settings/contrib/:plugin"
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -56,3 +56,16 @@ class ContribController extends taiga.Controller
|
||||||
return @.loadProject()
|
return @.loadProject()
|
||||||
|
|
||||||
module.controller("ContribController", ContribController)
|
module.controller("ContribController", ContribController)
|
||||||
|
|
||||||
|
|
||||||
|
class ContribUserSettingsController extends taiga.Controller
|
||||||
|
@.$inject = [
|
||||||
|
"$rootScope",
|
||||||
|
"$scope",
|
||||||
|
"$routeParams"
|
||||||
|
]
|
||||||
|
|
||||||
|
constructor: (@rootScope, @scope, @params) ->
|
||||||
|
@scope.currentPlugin = _.head(_.filter(@rootScope.userSettingsPlugins, {"slug": @params.plugin}))
|
||||||
|
|
||||||
|
module.controller("ContribUserSettingsController", ContribUserSettingsController)
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
doctype html
|
||||||
|
|
||||||
|
div.wrapper(
|
||||||
|
ng-controller="ContribUserSettingsController as ctrl"
|
||||||
|
ng-init="section='user-settings'"
|
||||||
|
)
|
||||||
|
sidebar.menu-secondary.sidebar.settings-nav(tg-user-settings-navigation)
|
||||||
|
include ../includes/modules/user-settings-menu
|
||||||
|
|
||||||
|
section.main(ng-include="currentPlugin.template")
|
|
@ -10,3 +10,10 @@ section.admin-menu
|
||||||
li#usersettingsmenu-mail-notifications
|
li#usersettingsmenu-mail-notifications
|
||||||
a(href="", tg-nav="user-settings-mail-notifications", title="{{ 'USER_SETTINGS.MENU.EMAIL_NOTIFICATIONS' | translate }}")
|
a(href="", tg-nav="user-settings-mail-notifications", title="{{ 'USER_SETTINGS.MENU.EMAIL_NOTIFICATIONS' | translate }}")
|
||||||
span.title(translate="USER_SETTINGS.MENU.EMAIL_NOTIFICATIONS")
|
span.title(translate="USER_SETTINGS.MENU.EMAIL_NOTIFICATIONS")
|
||||||
|
li#usersettings-contrib(ng-repeat="plugin in userSettingsPlugins")
|
||||||
|
a(
|
||||||
|
href=""
|
||||||
|
tg-nav="user-settings-contrib:plugin=plugin.slug"
|
||||||
|
ng-class="{active: plugin.slug == currentPlugin.slug}"
|
||||||
|
)
|
||||||
|
span.title {{ plugin.name }}
|
||||||
|
|
Loading…
Reference in New Issue