Added translations and currentRoute parameter

This commit is contained in:
Nicolas Lœuillet 2016-11-10 15:23:53 +01:00
parent 398de40517
commit 49b042dfdf
15 changed files with 57 additions and 8 deletions

View File

@ -27,7 +27,7 @@ class EntryController extends Controller
* *
* @return \Symfony\Component\HttpFoundation\Response * @return \Symfony\Component\HttpFoundation\Response
*/ */
public function searchFormAction(Request $request, $page) public function searchFormAction(Request $request, $page, $currentRoute)
{ {
$form = $this->createForm(SearchEntryType::class); $form = $this->createForm(SearchEntryType::class);
@ -39,6 +39,7 @@ class EntryController extends Controller
return $this->render('WallabagCoreBundle:Entry:search_form.html.twig', [ return $this->render('WallabagCoreBundle:Entry:search_form.html.twig', [
'form' => $form->createView(), 'form' => $form->createView(),
'currentRoute' => $currentRoute,
]); ]);
} }
@ -269,10 +270,11 @@ class EntryController extends Controller
{ {
$repository = $this->get('wallabag_core.entry_repository'); $repository = $this->get('wallabag_core.entry_repository');
$searchTerm = (isset($request->get('search_entry')['term']) ? $request->get('search_entry')['term'] : ''); $searchTerm = (isset($request->get('search_entry')['term']) ? $request->get('search_entry')['term'] : '');
$currentRoute = (!is_null($request->get('currentRoute')) ? $request->get('currentRoute') : '');
switch ($type) { switch ($type) {
case 'search': case 'search':
$qb = $repository->getBuilderForSearchByUser($this->getUser()->getId(), $searchTerm); $qb = $repository->getBuilderForSearchByUser($this->getUser()->getId(), $searchTerm, $currentRoute);
break; break;
case 'untagged': case 'untagged':

View File

@ -90,18 +90,30 @@ class EntryRepository extends EntityRepository
* *
* @param int $userId * @param int $userId
* @param string $term * @param string $term
* @param strint $currentRoute
* *
* @return QueryBuilder * @return QueryBuilder
*/ */
public function getBuilderForSearchByUser($userId, $term) public function getBuilderForSearchByUser($userId, $term, $currentRoute)
{ {
return $this $qb = $this
->getBuilderByUser($userId) ->getBuilderByUser($userId);
->andWhere('e.content LIKE :term')->setParameter('term', '%'.$term.'%')
->orWhere('e.title LIKE :term')->setParameter('term', '%'.$term.'%') if ('starred' === $currentRoute) {
$qb->andWhere('e.isStarred = true');
} elseif ('unread' === $currentRoute) {
$qb->andWhere('e.isArchived = false');
} elseif ('archive' === $currentRoute) {
$qb->andWhere('e.isArchived = true');
}
$qb
->andWhere('e.content LIKE :term OR e.title LIKE :term')->setParameter('term', '%'.$term.'%')
->leftJoin('e.tags', 't') ->leftJoin('e.tags', 't')
->groupBy('e.id') ->groupBy('e.id')
->having('count(t.id) = 0'); ->having('count(t.id) = 0');
return $qb;
} }
/** /**

View File

@ -162,6 +162,7 @@ entry:
# archived: 'Archived entries' # archived: 'Archived entries'
# filtered: 'Filtered entries' # filtered: 'Filtered entries'
# filtered_tags: 'Filtered by tags:' # filtered_tags: 'Filtered by tags:'
# filtered_search: 'Filtered by search:'
# untagged: 'Untagged entries' # untagged: 'Untagged entries'
list: list:
# number_on_the_page: '{0} There is no entry.|{1} There is one entry.|]1,Inf[ There are %count% entries.' # number_on_the_page: '{0} There is no entry.|{1} There is one entry.|]1,Inf[ There are %count% entries.'
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
# page_title: 'Edit an entry' # page_title: 'Edit an entry'
# title_label: 'Title' # title_label: 'Title'

View File

@ -162,6 +162,7 @@ entry:
archived: 'Archivierte Einträge' archived: 'Archivierte Einträge'
filtered: 'Gefilterte Einträge' filtered: 'Gefilterte Einträge'
filtered_tags: 'Gefiltert nach Tags:' filtered_tags: 'Gefiltert nach Tags:'
# filtered_search: 'Filtered by search:'
untagged: 'Nicht getaggte Einträge' untagged: 'Nicht getaggte Einträge'
list: list:
number_on_the_page: '{0} Es gibt keine Einträge.|{1} Es gibt einen Eintrag.|]1,Inf[ Es gibt %count% Einträge.' number_on_the_page: '{0} Es gibt keine Einträge.|{1} Es gibt einen Eintrag.|]1,Inf[ Es gibt %count% Einträge.'
@ -227,6 +228,8 @@ entry:
placeholder: 'https://website.de' placeholder: 'https://website.de'
form_new: form_new:
url_label: URL url_label: URL
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'Eintrag bearbeiten' page_title: 'Eintrag bearbeiten'
title_label: 'Titel' title_label: 'Titel'

View File

@ -162,6 +162,7 @@ entry:
archived: 'Artículos archivados' archived: 'Artículos archivados'
filtered: 'Artículos filtrados' filtered: 'Artículos filtrados'
# filtered_tags: 'Filtered by tags:' # filtered_tags: 'Filtered by tags:'
# filtered_search: 'Filtered by search:'
# untagged: 'Untagged entries' # untagged: 'Untagged entries'
list: list:
number_on_the_page: '{0} No hay artículos.|{1} Hay un artículo.|]1,Inf[ Hay %count% artículos.' number_on_the_page: '{0} No hay artículos.|{1} Hay un artículo.|]1,Inf[ Hay %count% artículos.'
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'Editar un artículo' page_title: 'Editar un artículo'
title_label: 'Título' title_label: 'Título'

View File

@ -162,6 +162,7 @@ entry:
archived: 'مقاله‌های بایگانی‌شده' archived: 'مقاله‌های بایگانی‌شده'
filtered: 'مقاله‌های فیلترشده' filtered: 'مقاله‌های فیلترشده'
# filtered_tags: 'Filtered by tags:' # filtered_tags: 'Filtered by tags:'
# filtered_search: 'Filtered by search:'
# untagged: 'Untagged entries' # untagged: 'Untagged entries'
list: list:
number_on_the_page: '{0} هیج مقاله‌ای نیست.|{1} یک مقاله هست.|]1,Inf[ %count% مقاله هست.' number_on_the_page: '{0} هیج مقاله‌ای نیست.|{1} یک مقاله هست.|]1,Inf[ %count% مقاله هست.'
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: نشانی url_label: نشانی
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'ویرایش مقاله' page_title: 'ویرایش مقاله'
title_label: 'عنوان' title_label: 'عنوان'

View File

@ -162,6 +162,7 @@ entry:
archived: "Articles lus" archived: "Articles lus"
filtered: "Articles filtrés" filtered: "Articles filtrés"
filtered_tags: "Articles filtrés par tags :" filtered_tags: "Articles filtrés par tags :"
filtered_search: 'Articles filtrés par une recherche :'
untagged: "Article sans tag" untagged: "Article sans tag"
list: list:
number_on_the_page: "{0} Il ny a pas darticles.|{1} Il y a un article.|]1,Inf[ Il y a %count% articles." number_on_the_page: "{0} Il ny a pas darticles.|{1} Il y a un article.|]1,Inf[ Il y a %count% articles."
@ -227,6 +228,8 @@ entry:
placeholder: "http://website.com" placeholder: "http://website.com"
form_new: form_new:
url_label: "Adresse" url_label: "Adresse"
search:
placeholder: "Que recherchez-vous ?"
edit: edit:
page_title: "Éditer un article" page_title: "Éditer un article"
title_label: "Titre" title_label: "Titre"

View File

@ -162,6 +162,7 @@ entry:
archived: 'Contenuti archiviati' archived: 'Contenuti archiviati'
filtered: 'Contenuti filtrati' filtered: 'Contenuti filtrati'
# filtered_tags: 'Filtered by tags:' # filtered_tags: 'Filtered by tags:'
# filtered_search: 'Filtered by search:'
# untagged: 'Untagged entries' # untagged: 'Untagged entries'
list: list:
number_on_the_page: "{0} Non ci sono contenuti.|{1} C'è un contenuto.|]1,Inf[ Ci sono %count% contenuti." number_on_the_page: "{0} Non ci sono contenuti.|{1} C'è un contenuto.|]1,Inf[ Ci sono %count% contenuti."
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'Modifica voce' page_title: 'Modifica voce'
title_label: 'Titolo' title_label: 'Titolo'

View File

@ -162,6 +162,7 @@ entry:
archived: 'Articles legits' archived: 'Articles legits'
filtered: 'Articles filtrats' filtered: 'Articles filtrats'
filtered_tags: 'Filtats per etiquetas:' filtered_tags: 'Filtats per etiquetas:'
# filtered_search: 'Filtered by search:'
untagged: 'Articles sens etiqueta' untagged: 'Articles sens etiqueta'
list: list:
number_on_the_page: "{0} I a pas cap d'article.|{1} I a un article.|]1,Inf[ I a %count% articles." number_on_the_page: "{0} I a pas cap d'article.|{1} I a un article.|]1,Inf[ I a %count% articles."
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'Modificar un article' page_title: 'Modificar un article'
title_label: 'Títol' title_label: 'Títol'

View File

@ -162,6 +162,7 @@ entry:
archived: 'Zarchiwizowane wpisy' archived: 'Zarchiwizowane wpisy'
filtered: 'Odfiltrowane wpisy' filtered: 'Odfiltrowane wpisy'
filtered_tags: 'Filtrowane po tagach:' filtered_tags: 'Filtrowane po tagach:'
# filtered_search: 'Filtered by search:'
untagged: 'Odtaguj wpisy' untagged: 'Odtaguj wpisy'
list: list:
number_on_the_page: '{0} Nie ma wpisów.|{1} Jest jeden wpis.|]1,Inf[ Są %count% wpisy.' number_on_the_page: '{0} Nie ma wpisów.|{1} Jest jeden wpis.|]1,Inf[ Są %count% wpisy.'
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'Edytuj wpis' page_title: 'Edytuj wpis'
title_label: 'Tytuł' title_label: 'Tytuł'

View File

@ -162,6 +162,7 @@ entry:
archived: 'Entradas arquivadas' archived: 'Entradas arquivadas'
filtered: 'Entradas filtradas' filtered: 'Entradas filtradas'
filtered_tags: 'Filtrar por tags:' filtered_tags: 'Filtrar por tags:'
# filtered_search: 'Filtered by search:'
untagged: 'Entradas sem tags' untagged: 'Entradas sem tags'
list: list:
number_on_the_page: '{0} Não existem entradas.|{1} Existe uma entrada.|]1,Inf[ Existem %count% entradas.' number_on_the_page: '{0} Não existem entradas.|{1} Existe uma entrada.|]1,Inf[ Existem %count% entradas.'
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'Editar uma entrada' page_title: 'Editar uma entrada'
title_label: 'Título' title_label: 'Título'

View File

@ -162,6 +162,7 @@ entry:
# archived: 'Archived entries' # archived: 'Archived entries'
# filtered: 'Filtered entries' # filtered: 'Filtered entries'
# filtered_tags: 'Filtered by tags:' # filtered_tags: 'Filtered by tags:'
# filtered_search: 'Filtered by search:'
# untagged: 'Untagged entries' # untagged: 'Untagged entries'
list: list:
# number_on_the_page: '{0} There is no entry.|{1} There is one entry.|]1,Inf[ There are %count% entries.' # number_on_the_page: '{0} There is no entry.|{1} There is one entry.|]1,Inf[ There are %count% entries.'
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
# page_title: 'Edit an entry' # page_title: 'Edit an entry'
# title_label: 'Title' # title_label: 'Title'

View File

@ -162,6 +162,7 @@ entry:
# archived: 'Archived entries' # archived: 'Archived entries'
# filtered: 'Filtered entries' # filtered: 'Filtered entries'
# filtered_tags: 'Filtered by tags:' # filtered_tags: 'Filtered by tags:'
# filtered_search: 'Filtered by search:'
# untagged: 'Untagged entries' # untagged: 'Untagged entries'
list: list:
number_on_the_page: '{0} Herhangi bir makale yok.|{1} Burada bir adet makale var.|]1,Inf[ Burada %count% adet makale var.' number_on_the_page: '{0} Herhangi bir makale yok.|{1} Burada bir adet makale var.|]1,Inf[ Burada %count% adet makale var.'
@ -227,6 +228,8 @@ entry:
placeholder: 'http://website.com' placeholder: 'http://website.com'
form_new: form_new:
url_label: Url url_label: Url
search:
# placeholder: 'What are you looking for?'
edit: edit:
page_title: 'Makaleyi düzenle' page_title: 'Makaleyi düzenle'
title_label: 'Başlık' title_label: 'Başlık'

View File

@ -7,6 +7,8 @@
<span class="black-text">{{ form_errors(form.term) }}</span> <span class="black-text">{{ form_errors(form.term) }}</span>
{% endif %} {% endif %}
<input type="hidden" name="currentRoute" value="{{ currentRoute }}" />
{{ form_widget(form.term, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.search.placeholder'} }) }} {{ form_widget(form.term, { 'attr': {'autocomplete': 'off', 'placeholder': 'entry.search.placeholder'} }) }}
{{ form_rest(form) }} {{ form_rest(form) }}

View File

@ -107,7 +107,7 @@
</ul> </ul>
</div> </div>
<div class="input-field nav-panel-search" style="display: none"> <div class="input-field nav-panel-search" style="display: none">
{{ render(controller("WallabagCoreBundle:Entry:searchForm")) }} {{ render(controller("WallabagCoreBundle:Entry:searchForm", {'currentRoute': app.request.attributes.get('_route')})) }}
<label for="search" class="active"><i class="material-icons search">search</i></label> <label for="search" class="active"><i class="material-icons search">search</i></label>
<i class="material-icons close">clear</i> <i class="material-icons close">clear</i>
</div> </div>