Commit 83438d0e9f88c78865f97f157564cd03ca0eb4ff

Authored by Caio Almeida
1 parent c1286e5f
Exists in production

Ticket #174: List proposals from national phase

www/html/_left_sidebar.html
... ... @@ -7,6 +7,7 @@
7 7 <ul class="list" ng-show="loggedIn">
8 8 <li class="item" ng-click="showProfile()"><i class="icon ion-person"></i> Meu Perfil</li>
9 9 <li class="item" ng-click="editProfile()"><i class="icon ion-person-add"></i> Atualizar Perfil</li>
  10 + <li class="item" ng-click="showNationalProposals()"><i class="icon ion-ios-flag"></i> Etapa Nacional</li>
10 11 <li class="item" ng-click="showMyProposals()"><i class="icon ion-document"></i> Minhas Propostas</li>
11 12 <li class="item" ng-click="showFollowedProposals()"><i class="icon ion-eye"></i> Propostas Seguidas</li>
12 13 <li class="item" ng-click="showVotedProposals()"><i class="icon ion-thumbsup"></i> Propostas Apoiadas</li>
... ...
www/index.html
... ... @@ -35,7 +35,7 @@
35 35  
36 36 <ion-side-menus id="body" ng-show="!introDisplayed">
37 37 <ion-side-menu side="left">
38   - <ng-include src="'html/_left_sidebar.html?2'"></ng-include>
  38 + <ng-include src="'html/_left_sidebar.html?3'"></ng-include>
39 39 </ion-side-menu>
40 40  
41 41 <ion-side-menu-content>
... ...
www/js/config.js.example
... ... @@ -3,5 +3,6 @@ var ConfJuvAppConfig = {
3 3 noosferoApiPublicHost: 'http://app.juventude.gov.br',
4 4 noosferoApiVersion: 'v1',
5 5 noosferoDiscussion: 99895,
6   - noosferoStatutePath: 'articles/participatorio/0010/2309/Resolucao-01-2015-etapa-digital.pdf'
  6 + noosferoStatutePath: 'articles/participatorio/0010/2309/Resolucao-01-2015-etapa-digital.pdf',
  7 + noosferoNationalPhaseProfileId: '31118'
7 8 };
... ...
www/js/controllers.js
... ... @@ -329,21 +329,22 @@ angular.module(&#39;confjuvapp.controllers&#39;, [])
329 329 $scope.loading = true;
330 330  
331 331 var path = 'states/';
332   - if($scope.profile && $scope.profile.region){
  332 + if ($scope.profile && $scope.profile.region) {
333 333 path += $scope.profile.region.parent_id;
334   - }else{
  334 + }
  335 + else {
335 336 return;
336 337 }
337 338  
338 339 $http.get(ConfJuvAppUtils.pathTo(path))
339 340 .then(function(resp) {
340 341 $scope.profile.state = resp.data;
341   - if($scope.profile.state){
  342 + if ($scope.profile.state) {
342 343 $scope.setCityOfProfile();
343 344 }
344 345 $scope.loading = false;
345 346 }, function(err) {
346   - $ionicPopup.alert({ title: 'Estados', template: 'Não foi possível atribuir o estado ao perfil' });
  347 + // $ionicPopup.alert({ title: 'Estados', template: 'Não foi possível atribuir o estado ao perfil' });
347 348 $scope.loading = false;
348 349 });
349 350 };
... ... @@ -1572,4 +1573,47 @@ angular.module(&#39;confjuvapp.controllers&#39;, [])
1572 1573 }
1573 1574 };
1574 1575  
  1576 + /******************************************************************************
  1577 + N A T I O N A L P H A S E P R O P O S A L S
  1578 + ******************************************************************************/
  1579 +
  1580 + $scope.nationalProposals = [];
  1581 +
  1582 + $scope.showNationalProposals = function() {
  1583 + $scope.cardsBackup = [];
  1584 + $scope.showBackupProposalsLink = false;
  1585 +
  1586 + if ($scope.nationalProposals.length == 0) {
  1587 + $scope.cards = [];
  1588 +
  1589 + var config = {
  1590 + headers: {
  1591 + 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
  1592 + },
  1593 + timeout: defaultTimeout
  1594 + };
  1595 +
  1596 + var path = 'articles?private_token=' + $scope.token + '&fields=title,image,body,abstract,id,tag_list,categories,created_by,author.name,votes_count,comments_count,followers_count&content_type=ProposalsDiscussionPlugin::Proposal&_=' + (new Date().getTime()) + '&author_id=' + ConfJuvAppConfig.noosferoNationalPhaseProfileId + '&per_page=400&parent_id[]=';
  1597 +
  1598 + for (var i = 0; i < $scope.topics.length; i++) {
  1599 + path += '&parent_id[]=' + $scope.topics[i].id;
  1600 + }
  1601 + $scope.loading = true;
  1602 +
  1603 + $http.get(ConfJuvAppUtils.pathTo(path), config)
  1604 + .then(function(resp) {
  1605 + console.log('NATIONAL PROPOSALS: ' + resp.data.articles.length);
  1606 + $scope.nationalProposals = resp.data.articles;
  1607 + $scope.cards = $scope.nationalProposals.slice();
  1608 + $scope.loading = false;
  1609 + }, function(err) {
  1610 + $scope.loading = false;
  1611 + });
  1612 + }
  1613 + else {
  1614 + $scope.cards = $scope.nationalProposals.slice();
  1615 + }
  1616 + };
  1617 +
  1618 +
1575 1619 }); // Ends controller
... ...