Commit 5dbbddc9ff58bbfe306d903b41fae9e1cd14bcbd
1 parent
f338d0b4
Exists in
master
and in
38 other branches
Use restangular to get data from api
Showing
7 changed files
with
20 additions
and
19 deletions
Show diff stats
bower.json
@@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
8 | "angular-sanitize": "~1.4.2", | 8 | "angular-sanitize": "~1.4.2", |
9 | "angular-messages": "~1.4.2", | 9 | "angular-messages": "~1.4.2", |
10 | "angular-aria": "~1.4.2", | 10 | "angular-aria": "~1.4.2", |
11 | - "angular-resource": "~1.4.2", | 11 | + "restangular": "~1.5.1", |
12 | "angular-ui-router": "~0.2.15", | 12 | "angular-ui-router": "~0.2.15", |
13 | "bootstrap-sass": "~3.3.5", | 13 | "bootstrap-sass": "~3.3.5", |
14 | "angular-bootstrap": "~0.13.4", | 14 | "angular-bootstrap": "~0.13.4", |
src/app/components/noosfero/noosfero.service.js
@@ -3,14 +3,14 @@ | @@ -3,14 +3,14 @@ | ||
3 | 3 | ||
4 | angular.module('angular').service('noosfero', noosfero); | 4 | angular.module('angular').service('noosfero', noosfero); |
5 | 5 | ||
6 | - function noosfero($resource) { | 6 | + function noosfero() { |
7 | this.communities = communities; | 7 | this.communities = communities; |
8 | this.articles = articles; | 8 | this.articles = articles; |
9 | function communities() { | 9 | function communities() { |
10 | - return $resource('/api/v1/communities/:id'); | 10 | + // return $resource('/api/v1/communities/:id'); |
11 | } | 11 | } |
12 | function articles() { | 12 | function articles() { |
13 | - return $resource('/api/v1/articles/:id'); | 13 | + // return $resource('/api/v1/articles/:id'); |
14 | } | 14 | } |
15 | } | 15 | } |
16 | })(); | 16 | })(); |
src/app/content-viewer/content-viewer.controller.js
@@ -7,17 +7,15 @@ | @@ -7,17 +7,15 @@ | ||
7 | 7 | ||
8 | 8 | ||
9 | /** @ngInject */ | 9 | /** @ngInject */ |
10 | - function ContentViewerController(noosfero, $log, $stateParams) { | 10 | + function ContentViewerController(noosfero, $log, $stateParams, Restangular, $state) { |
11 | var vm = this; | 11 | var vm = this; |
12 | vm.article = null; | 12 | vm.article = null; |
13 | activate(); | 13 | activate(); |
14 | 14 | ||
15 | function activate() { | 15 | function activate() { |
16 | - $log.log($stateParams.page); | ||
17 | - noosfero.articles().get({path: $stateParams.page, private_token: '1b00325e5f769a0c38550bd35b3f1d64'}).$promise.then(function (article) { | ||
18 | - //FIXME | ||
19 | - vm.content = article.articles[0]; | ||
20 | - console.log(vm.content); | 16 | + Restangular.one('communities', $state.current.data.profile.id).one('articles').get({path: $stateParams.page}).then(function(articles) { |
17 | + $log.log(articles); | ||
18 | + vm.content = articles.article; | ||
21 | }); | 19 | }); |
22 | } | 20 | } |
23 | } | 21 | } |
src/app/index.config.js
@@ -6,11 +6,10 @@ | @@ -6,11 +6,10 @@ | ||
6 | .config(config); | 6 | .config(config); |
7 | 7 | ||
8 | /** @ngInject */ | 8 | /** @ngInject */ |
9 | - function config($logProvider, $locationProvider) { | ||
10 | - // Enable log | 9 | + function config($logProvider, $locationProvider, RestangularProvider) { |
11 | $logProvider.debugEnabled(true); | 10 | $logProvider.debugEnabled(true); |
12 | - | ||
13 | $locationProvider.html5Mode({enabled: true}); | 11 | $locationProvider.html5Mode({enabled: true}); |
12 | + RestangularProvider.setBaseUrl('/api/v1'); | ||
14 | } | 13 | } |
15 | 14 | ||
16 | })(); | 15 | })(); |
src/app/index.module.js
@@ -2,6 +2,6 @@ | @@ -2,6 +2,6 @@ | ||
2 | 'use strict'; | 2 | 'use strict'; |
3 | 3 | ||
4 | angular | 4 | angular |
5 | - .module('angular', ['ngAnimate', 'ngCookies', 'ngTouch', 'ngSanitize', 'ngMessages', 'ngAria', 'ngResource', 'ui.router', 'ui.bootstrap', 'toastr']); | 5 | + .module('angular', ['ngAnimate', 'ngCookies', 'ngTouch', 'ngSanitize', 'ngMessages', 'ngAria', 'restangular', 'ui.router', 'ui.bootstrap', 'toastr']); |
6 | 6 | ||
7 | })(); | 7 | })(); |
src/app/index.route.js
@@ -13,7 +13,10 @@ | @@ -13,7 +13,10 @@ | ||
13 | url: '/:profile', | 13 | url: '/:profile', |
14 | templateUrl: 'app/profile/profile.html', | 14 | templateUrl: 'app/profile/profile.html', |
15 | controller: 'ProfileController', | 15 | controller: 'ProfileController', |
16 | - controllerAs: 'vm' | 16 | + controllerAs: 'vm', |
17 | + data: { | ||
18 | + profile: null | ||
19 | + } | ||
17 | }) | 20 | }) |
18 | .state('profile.page', { | 21 | .state('profile.page', { |
19 | url: '/{page:.*}', | 22 | url: '/{page:.*}', |
src/app/profile/profile.controller.js
@@ -7,15 +7,16 @@ | @@ -7,15 +7,16 @@ | ||
7 | 7 | ||
8 | 8 | ||
9 | /** @ngInject */ | 9 | /** @ngInject */ |
10 | - function ProfileController(noosfero, $log, $stateParams) { | 10 | + function ProfileController(noosfero, $log, $stateParams, $state, Restangular) { |
11 | var vm = this; | 11 | var vm = this; |
12 | vm.boxes = []; | 12 | vm.boxes = []; |
13 | activate(); | 13 | activate(); |
14 | 14 | ||
15 | function activate() { | 15 | function activate() { |
16 | - noosfero.communities().get({identifier: $stateParams.profile, private_token: '1b00325e5f769a0c38550bd35b3f1d64'}).$promise.then(function (profile) { | ||
17 | - $log.log(profile); | ||
18 | - vm.owner = profile.communities[0]; | 16 | + Restangular.one('communities').get({private_token: '1b00325e5f769a0c38550bd35b3f1d64', identifier: $stateParams.profile}).then(function(communities) { |
17 | + $log.log(communities); | ||
18 | + vm.owner = communities.communities[0]; | ||
19 | + $state.current.data.profile = vm.owner; | ||
19 | }); | 20 | }); |
20 | } | 21 | } |
21 | 22 |