From 81d665b29808a36d12de32204f34f457ed7a623d Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Tue, 27 May 2014 19:09:40 +0600 Subject: [PATCH] SONAR-5209 Add or remove a component as favorite --- .../coffee/component-viewer/header.coffee | 24 +++++++++++++++++++ .../src/main/hbs/component-viewer/header.hbs | 7 ++++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/sonar-server/src/main/coffee/component-viewer/header.coffee b/sonar-server/src/main/coffee/component-viewer/header.coffee index 907427fab76..535d147a202 100644 --- a/sonar-server/src/main/coffee/component-viewer/header.coffee +++ b/sonar-server/src/main/coffee/component-viewer/header.coffee @@ -9,6 +9,8 @@ define [ $ = jQuery + API_FAVORITE = "#{baseUrl}/api/favourites" + class HeaderView extends Marionette.ItemView template: Templates['header'] @@ -20,6 +22,8 @@ define [ events: + 'click .js-favorite': 'toggleFavorite' + 'click @ui.expandLinks': 'showExpandedBar' 'click .js-toggle-issues': 'toggleIssues' @@ -63,6 +67,26 @@ define [ @delegateEvents() + toggleFavorite: -> + component = @options.main.component + if component.get 'fav' + $.ajax + url: "#{API_FAVORITE}/#{component.get 'key'}" + type: 'DELETE' + .done => + component.set 'fav', false + @render() + else + $.ajax + url: API_FAVORITE + type: 'POST' + data: key: component.get 'key' + .done => + component.set 'fav', true + @render() + + + showExpandedBar: (e) -> el = $(e.currentTarget) if el.is '.active' diff --git a/sonar-server/src/main/hbs/component-viewer/header.hbs b/sonar-server/src/main/hbs/component-viewer/header.hbs index 072d24c3799..3ce64919f12 100644 --- a/sonar-server/src/main/hbs/component-viewer/header.hbs +++ b/sonar-server/src/main/hbs/component-viewer/header.hbs @@ -1,5 +1,4 @@
-
{{#if component.projectName}}
@@ -16,7 +15,11 @@
-- 2.39.5