]> source.dussan.org Git - sonarqube.git/commitdiff
refactor header.js to use favorites api
authorStas Vilchik <vilchiks@gmail.com>
Mon, 19 Dec 2016 13:39:35 +0000 (14:39 +0100)
committerStas Vilchik <vilchiks@gmail.com>
Mon, 19 Dec 2016 13:39:35 +0000 (14:39 +0100)
server/sonar-web/src/main/js/components/source-viewer/header.js

index b632622917bb1a063e271be8228669449dd4c906..6d7c75b81d3b4297ff991b4ba968a020ed9b5fdf 100644 (file)
@@ -24,8 +24,7 @@ import Marionette from 'backbone.marionette';
 import MoreActionsView from './more-actions';
 import MeasuresOverlay from './measures-overlay';
 import Template from './templates/source-viewer-header.hbs';
-
-const API_FAVORITE: string = window.baseUrl + '/api/favorites';
+import { addFavorite, removeFavorite } from '../../api/favorites';
 
 export default Marionette.ItemView.extend({
   template: Template,
@@ -39,28 +38,15 @@ export default Marionette.ItemView.extend({
   },
 
   toggleFavorite () {
-    const that = this;
     if (this.model.get('fav')) {
-      $.ajax({
-        url: API_FAVORITE + '/remove',
-        type: 'POST',
-        data: {
-          component: this.model.get('key')
-        }
-      }).done(function () {
-        that.model.set('fav', false);
-        that.render();
+      removeFavorite(this.model.get('key')).then(() => {
+        this.model.set('fav', false);
+        this.render();
       });
     } else {
-      $.ajax({
-        url: API_FAVORITE + '/add',
-        type: 'POST',
-        data: {
-          component: this.model.get('key')
-        }
-      }).done(function () {
-        that.model.set('fav', true);
-        that.render();
+      addFavorite(this.model.get('key')).then(() => {
+        this.model.set('fav', true);
+        this.render();
       });
     }
   },