Commit a5d806757c8465eab184d3590d5663fa3ab1b149

Authored by Leonardo Merlin
2 parents fb9bdb73 323f1574

Merge branch 'master' into staging

src/app/components/a11y-bar/a11y-bar.html
... ... @@ -27,7 +27,7 @@
27 27 <div class="col-sm-6">
28 28 <ul class="action-links list-inline list-unstyled">
29 29 <li>
30   - <a id="siteaction-accessibility" class="color-theme-common-fg" href="http://portalpadrao.gov.br/acessibilidade" target="_blank" title="Acessibilidade" accesskey="5">Acessibilidade</a>
  30 + <a id="siteaction-accessibility" class="color-theme-common-fg" ui-sref="acessibilidade" title="Leia sobre a acessibilidade do Dialoga Brasil" accesskey="5">Acessibilidade</a>
31 31 </li>
32 32 <li>
33 33 <a id="siteaction-contrast" class="color-theme-common-fg" href="#" title="Alto Contraste" accesskey="6" ng-click="actionContrast()">Alto Contraste</a>
... ...
src/app/components/dialoga-service/dialoga.service.js
... ... @@ -14,6 +14,7 @@
14 14 extendedService.serviceDialoga = $rootScope.basePath + '/api/v1/dialoga_plugin/';
15 15 extendedService.getHome = getHome;
16 16 extendedService.getAbout = getAbout;
  17 + extendedService.getAcessibility = getAcessibility;
17 18 extendedService.getTerms = getTerms;
18 19 extendedService.getThemes = getThemes;
19 20 extendedService.getThemeBySlug = getThemeBySlug;
... ... @@ -68,6 +69,19 @@
68 69 }
69 70 }
70 71  
  72 + function getAcessibility (cbSuccess, cbError) {
  73 + if( !!CACHE.acessibility ){
  74 + cbSuccess(CACHE.acessibility);
  75 + }else{
  76 + // load article content
  77 + ArticleService.getArticleById(API.articleId.acessibility, {}, function (article){
  78 + CACHE.acessibility = article;
  79 +
  80 + cbSuccess(CACHE.acessibility);
  81 + }, cbError);
  82 + }
  83 + }
  84 +
71 85 function getTerms (cbSuccess, cbError) {
72 86 if( !!CACHE.terms ){
73 87 cbSuccess(CACHE.terms);
... ...
src/app/index.config.js
... ... @@ -6,6 +6,7 @@
6 6 // .config(configWhitelist)
7 7 .config(configHeadersInterceptor)
8 8 .config(configLocationProvider)
  9 + .config(configHrefWhitelist)
9 10 .config(configBreadcrumbProvider)
10 11 .config(config);
11 12  
... ... @@ -53,6 +54,11 @@
53 54 }
54 55  
55 56 /** @ngInject */
  57 + function configHrefWhitelist($compileProvider) {
  58 + $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|file|whatsapp):/);
  59 + }
  60 +
  61 + /** @ngInject */
56 62 function configBreadcrumbProvider($breadcrumbProvider) {
57 63 $breadcrumbProvider.setOptions({
58 64 prefixStateName: 'inicio',
... ...
src/app/index.constants.js
... ... @@ -17,6 +17,7 @@
17 17 articleId: {
18 18 home: '103358',
19 19 about: '108073',
  20 + acessibility: '117319',
20 21 terms: '107880'
21 22 },
22 23 communityId: '19195'
... ...
src/app/index.route.js
... ... @@ -171,6 +171,17 @@
171 171 }
172 172 }
173 173 })
  174 + .state('acessibilidade', {
  175 + url: '/acessibilidade',
  176 + ncyBreadcrumb: {label: 'Acessibilidade'},
  177 + views: {
  178 + 'main': {
  179 + templateUrl: 'app/pages/article/article.html',
  180 + controller: 'ArticlePageController',
  181 + controllerAs: 'pageArticle'
  182 + }
  183 + }
  184 + })
174 185 .state('mapa-do-site', {
175 186 url: '/mapa-do-site',
176 187 ncyBreadcrumb: {label: 'Mapa do Site'},
... ...
src/app/pages/article/article.controller.js
... ... @@ -37,6 +37,9 @@
37 37 var vm = this;
38 38  
39 39 switch (vm.page){
  40 + case 'acessibilidade':
  41 + vm.DialogaService.getAcessibility(handleSuccess, handleError);
  42 + break;
40 43 case 'sobre':
41 44 vm.DialogaService.getAbout(handleSuccess, handleError);
42 45 break;
... ...
src/app/pages/programas/programa.controller.js
... ... @@ -186,10 +186,14 @@
186 186  
187 187 if (vm.error.code === 400) {
188 188 // Bad Request
189   - vm.error.message = '';
190   - vm.error.message += 'Não foi possível enviar a proposta.<br>';
191   - vm.error.message += 'Este problema já foi registrado em nossos servidores.<br>';
192   - vm.error.message += 'Por favor, tente novamente mais tarde.';
  189 + if (angular.equals(error.message, 'Resumo é muito longo (máximo: 200 caracteres)')) {
  190 + vm.error.message = 'Proposta muito longa (máximo: 200 caracteres)';
  191 + } else {
  192 + vm.error.message = '';
  193 + vm.error.message += 'Não foi possível enviar a proposta.<br>';
  194 + vm.error.message += 'Este problema já foi registrado em nossos servidores.<br>';
  195 + vm.error.message += 'Por favor, tente novamente mais tarde.';
  196 + }
193 197 }
194 198  
195 199 // vm.proposalStatus = vm.PROPOSAL_STATUS.SENT | vm.PROPOSAL_STATUS.ERROR;
... ...