diff options
Diffstat (limited to 'server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee')
-rw-r--r-- | server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee b/server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee new file mode 100644 index 00000000000..31fc35abe68 --- /dev/null +++ b/server/sonar-web/src/main/coffee/apps/quality-gate/router.coffee @@ -0,0 +1,62 @@ +# +# SonarQube, open source software quality management tool. +# Copyright (C) 2008-2014 SonarSource +# mailto:contact AT sonarsource DOT com +# +# SonarQube is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 3 of the License, or (at your option) any later version. +# +# SonarQube 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# + +define [ + './models/quality-gate', + './views/quality-gate-detail-view', + './views/quality-gate-detail-header-view', +], ( + QualityGate, + QualityGateDetailView, + QualityGateDetailHeaderView +) -> + + class QualityGateRouter extends Backbone.Router + + routes: + '': 'index' + 'show/:id': 'show' + + + initialize: (options) -> + @app = options.app + + + index: -> + + + show: (id) -> + qualityGate = @app.qualityGates.get id + if qualityGate + @app.qualityGateSidebarListView.highlight id + + qualityGateDetailHeaderView = new QualityGateDetailHeaderView + app: @app + model: qualityGate + @app.layout.headerRegion.show qualityGateDetailHeaderView + + qualityGateDetailView = new QualityGateDetailView + app: @app + model: qualityGate + @app.layout.detailsRegion.show qualityGateDetailView + qualityGateDetailView.$el.hide() + + qualityGate.fetch().done -> + qualityGateDetailView.$el.show() |