Merge Request #37

Merged
noosfero-themes/angular-theme!37
Created by Victor Costa

Component to search for articles in the environment

Issue #49

Assignee: Ábner Oliveira
Milestone: 2016.06

Merged by Ábner Oliveira

Source branch has been removed
Commits (3)
3 participants
  • Me
    Michel Felipe @mfdeveloper

    Reassigned to @mfdeveloper

    Choose File ...   File name...
    Cancel
  • Me
    Michel Felipe started a discussion on the diff
    last updated by Victor Costa
    src/app/search/search-form/search-form.component.ts 0 → 100644
      1 +import {Component, Inject} from "ng-forward";
      2 +
      3 +@Component({
      4 + selector: 'search-form',
      5 + templateUrl: 'app/search/search-form/search-form.html'
      6 +})
      7 +@Inject("$state")
      8 +export class SearchFormComponent {
    2
    • Me
      Michel Felipe @mfdeveloper (Edited )

      Esse componente é realmente necessário? Talvez utilizar somente o componente SearchComponent com condições para renderizar o form ou a lista de resultados. É apenas uma sugestão, avalie com calma o que seria mais interessante.

      Me peguei a pensar sobre isso pq esse componente só renderiza um HTML diferente, e um único método que na verdade, redireciona para uma rota! :)

      Choose File ...   File name...
      Cancel
    • 4a20548511a65cfccc863520b70c3ee9?s=40&d=identicon
      Victor Costa @vfcosta

      É necessário pois o form fica na navbar e o resultado da busca responde por uma rota específica.

      Choose File ...   File name...
      Cancel
    Me
    Michel Felipe started a discussion on the diff
    last updated by Victor Costa
    src/app/search/search.component.ts 0 → 100644
      1 +import {Component, Inject} from "ng-forward";
      2 +import {ArticleService} from "./../../lib/ng-noosfero-api/http/article.service";
      3 +
      4 +@Component({
      5 + selector: 'search',
      6 + templateUrl: 'app/search/search.html'
      7 +})
      8 +@Inject(ArticleService, "$stateParams")
      9 +export class SearchComponent {
      10 +
      11 + articles: noosfero.Article[];
      12 + query: string;
      13 + totalResults = 0;
      14 + perPage = 10;
    2
    Me
    Michel Felipe started a discussion on the diff
    last updated by Michel Felipe
    src/app/search/search.html 0 → 100644
      1 +<h2>Search</h2>
      2 +
      3 +<div class="search-results">
      4 + <div class="summary">
      5 + {{"search.results.summary" | translate:{results: ctrl.totalResults}:"messageformat"}}
    3
    • Me
      Michel Felipe @mfdeveloper (Edited )

      Para ficar mais claro e limpa essas condições, não seria melhor adicionar isso a um método do SearchComponent ? Pensando que um designer qualquer possa sobreescrever essa view em temas customizados, minimizar a quantidade de condições + especificas pode melhorar a legibilidade!

      Choose File ...   File name...
      Cancel
    • 4a20548511a65cfccc863520b70c3ee9?s=40&d=identicon
      Victor Costa @vfcosta

      Não entendi o que você quis dizer nesse comentário.

      Choose File ...   File name...
      Cancel
    • Me
      Michel Felipe @mfdeveloper (Edited )

      Algo nessa linha:

      <div class="summary">
         {{ ctrl.resultsText }}
      </div>
      
      

      Onde ctrl.resultsText é um atributo ou método get do typescript que já retorna o texto traduzido a depender da condição que você adicionou acima, entende?

      Choose File ...   File name...
      Cancel
    Me
    Michel Felipe started a discussion on the outdated diff
    last updated by Michel Felipe
    src/languages/pt.json
    74 74 "profile.content.success.message": "Perfil salvo!",
    75 75 "custom_content.title": "Editar conteúdo",
    76 76 "profile.custom_header.label": "Cabeçalho",
    77   - "profile.custom_footer.label": "Rodapé"
      77 + "profile.custom_footer.label": "Rodapé",
      78 + "search.results.summary": "{results, plural, one{result} other{# resultados}}"
    3
    • Me
      Michel Felipe @mfdeveloper

      Não deveria ser traduzido para o pt-br esse texto? (results, plural...). É alguma restrição da paginação?

      Choose File ...   File name...
      Cancel
    • 4a20548511a65cfccc863520b70c3ee9?s=40&d=identicon
      Victor Costa @vfcosta

      Está traduzido, os termos results e plural pertencem a forma de traduzir com o messageformat (para especificar termos em plural)

      Choose File ...   File name...
      Cancel
    • Me
      Michel Felipe @mfdeveloper (Edited )

      Perfeito @vfcosta . Era isso q estava em dúvida !!

      Choose File ...   File name...
      Cancel
    Me
    Michel Felipe started a discussion on the diff
    last updated by Michel Felipe
    src/lib/ng-noosfero-api/http/article.service.ts
    118 118 return this.listSubElements(<noosfero.Article>articleElement, "children", params);
    119 119 }
    120 120  
      121 + search(params: any): ng.IPromise<noosfero.RestResult<noosfero.Article[]>> {
      122 + let deferred = this.$q.defer<noosfero.RestResult<noosfero.Article[]>>();
      123 + let restRequest = this.restangularService.all("search").customGET('article', params);
      124 + restRequest.then(this.getHandleSuccessFunction(deferred)).catch(this.getHandleErrorFunction(deferred));
    1
    • Me
      Michel Felipe @mfdeveloper

      Se o resultado da pesquisa retornar 404 do endpoint do backend, é exibida uma página de Not found específica? Como é tratado os diferentes códigos de erro do servidor?

      Choose File ...   File name...
      Cancel
    Me
    Michel Felipe started a discussion on the diff
    last updated by Michel Felipe
    src/app/search/search.scss 0 → 100644
      2 + .summary {
      3 + color: #bbbbbb;
      4 + font-size: 13px;
      5 + border-top: 1px solid #ececec;
      6 + }
      7 + .result {
      8 + margin: 25px 0;
      9 +
      10 + .title {
      11 + h4 {
      12 + margin: 0;
      13 + }
      14 + }
      15 + .info {
      16 + .profile {
      17 + color: #6e9e7b;
    1
    • Me
      Michel Felipe @mfdeveloper

      Essas cores não poderiam ser variáveis para serem reutilizadas e/ou sobrescritas em outros temas?

      Choose File ...   File name...
      Cancel
    Me
    Michel Felipe started a discussion on the outdated diff
    last updated by Michel Felipe
    src/app/search/search.html 0 → 100644
    ... ... @@ -0,0 +1,26 @@
  • Me
    Michel Felipe @mfdeveloper

    O campo de busca está desaparecendo no responsivo. O comportamento é este mesmo?

    Choose File ...   File name...
    Cancel
  • Me
    Michel Felipe @mfdeveloper (Edited )

    O campo de busca está tomando muito espaço na navbar. Associado a mais botões, com o que @abner está fazendo na issue #91, o espaço pode ficar bastante prejudicado. Não seria melhor utilizar uma abordagem "retrátil" como em um desses dois temas abaixo?

    Cube Bootstrap

    Material Admin

    Choose File ...   File name...
    Cancel
  • Me
    Michel Felipe @mfdeveloper

    O texto results logo abaixo do titulo no resultado da busca, não está traduzindo para pt-br quando modifico o idioma

    Choose File ...   File name...
    Cancel
  • Me
    Michel Felipe @mfdeveloper

    Assignee removed

    Choose File ...   File name...
    Cancel
  • 0deafa1501ec8dd687ee70f90488d592?s=40&d=identicon
    Ábner Oliveira @abner

    Reassigned to @abner

    Choose File ...   File name...
    Cancel
  • 0deafa1501ec8dd687ee70f90488d592?s=40&d=identicon
    Ábner Oliveira @abner

    Added 1 new commit:

    Choose File ...   File name...
    Cancel
  • 0deafa1501ec8dd687ee70f90488d592?s=40&d=identicon
    Ábner Oliveira @abner

    Added 1 new commit:

    • 575daccf - changed search.component and the search-form.component to fill the query field w…
    Choose File ...   File name...
    Cancel
  • 0deafa1501ec8dd687ee70f90488d592?s=40&d=identicon
    Ábner Oliveira @abner
    Choose File ...   File name...
    Cancel