Merge pull request #1668 from wallabag/v2-stuff

Few updates
This commit is contained in:
Nicolas Lœuillet 2016-02-16 12:27:43 +01:00
commit f6249b67f6
14 changed files with 110 additions and 65 deletions

View file

@ -7,7 +7,7 @@ $lineSize = 70;
$symfonyRequirements = new SymfonyRequirements();
$iniPath = $symfonyRequirements->getPhpIniConfigPath();
echo_title('Symfony2 Requirements Checker');
echo_title('Symfony Requirements Checker');
echo '> PHP is using the following php.ini file:'.PHP_EOL;
if ($iniPath) {
@ -43,9 +43,9 @@ foreach ($symfonyRequirements->getRecommendations() as $req) {
}
if ($checkPassed) {
echo_block('success', 'OK', 'Your system is ready to run Symfony2 projects');
echo_block('success', 'OK', 'Your system is ready to run Symfony projects');
} else {
echo_block('error', 'ERROR', 'Your system is not ready to run Symfony2 projects');
echo_block('error', 'ERROR', 'Your system is not ready to run Symfony projects');
echo_title('Fix the following mandatory requirements', 'red');

View file

@ -56,7 +56,7 @@ class InstallCommand extends ContainerAwareCommand
;
$output->writeln('<info>Wallabag has been successfully installed.</info>');
$output->writeln('<comment>Just execute `php bin/console server:run` for using wallabag: http://localhost:8000</comment>');
$output->writeln('<comment>Just execute `php bin/console server:run --env=prod` for using wallabag: http://localhost:8000</comment>');
}
protected function checkRequirements()

View file

@ -5,6 +5,7 @@ namespace Wallabag\CoreBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpFoundation\Request;
use Wallabag\CoreBundle\Entity\Config;
use Wallabag\CoreBundle\Entity\TaggingRule;
@ -64,7 +65,7 @@ class ConfigController extends Controller
'Password updated'
);
return $this->redirect($this->generateUrl('config'));
return $this->redirect($this->generateUrl('config').'#set4');
}
// handle changing user information
@ -82,7 +83,7 @@ class ConfigController extends Controller
'Information updated'
);
return $this->redirect($this->generateUrl('config'));
return $this->redirect($this->generateUrl('config').'#set3');
}
// handle rss information
@ -98,7 +99,7 @@ class ConfigController extends Controller
'RSS information updated'
);
return $this->redirect($this->generateUrl('config'));
return $this->redirect($this->generateUrl('config').'#set2');
}
// handle tagging rule
@ -116,7 +117,7 @@ class ConfigController extends Controller
'Tagging rules updated'
);
return $this->redirect($this->generateUrl('config'));
return $this->redirect($this->generateUrl('config').'#set5');
}
// handle adding new user
@ -144,10 +145,10 @@ class ConfigController extends Controller
$this->get('session')->getFlashBag()->add(
'notice',
sprintf('User "%s" added', $newUser->getUsername())
$this->get('translator')->trans('User "%username%" added', array('%username%' => $newUser->getUsername()))
);
return $this->redirect($this->generateUrl('config'));
return $this->redirect($this->generateUrl('config').'#set6');
}
return $this->render('WallabagCoreBundle:Config:index.html.twig', array(
@ -172,7 +173,7 @@ class ConfigController extends Controller
*
* @Route("/generate-token", name="generate_token")
*
* @return JsonResponse
* @return RedirectResponse|JsonResponse
*/
public function generateTokenAction(Request $request)
{
@ -187,7 +188,12 @@ class ConfigController extends Controller
return new JsonResponse(array('token' => $config->getRssToken()));
}
return $request->headers->get('referer') ? $this->redirect($request->headers->get('referer')) : $this->redirectToRoute('config');
$this->get('session')->getFlashBag()->add(
'notice',
'RSS token updated'
);
return $this->redirect($this->generateUrl('config').'#set2');
}
/**
@ -197,7 +203,7 @@ class ConfigController extends Controller
*
* @Route("/tagging-rule/delete/{id}", requirements={"id" = "\d+"}, name="delete_tagging_rule")
*
* @return \Symfony\Component\HttpFoundation\RedirectResponse
* @return RedirectResponse
*/
public function deleteTaggingRuleAction(TaggingRule $rule)
{
@ -214,7 +220,7 @@ class ConfigController extends Controller
'Tagging rule deleted'
);
return $this->redirect($this->generateUrl('config'));
return $this->redirect($this->generateUrl('config').'#set5');
}
/**

View file

@ -21,7 +21,7 @@ class NewUserType extends AbstractType
->add('plainPassword', RepeatedType::class, array(
'type' => PasswordType::class,
'invalid_message' => 'The password fields must match',
'first_options' => array('label' => 'Password'),
'first_options' => array('label' => 'Password'),
'second_options' => array('label' => 'Repeat new password'),
'constraints' => array(
new Constraints\Length(array(

View file

@ -27,6 +27,7 @@ Search: 'Rechercher'
Filter entries: 'Filtrer les articles'
Enter your search here: 'Saisissez votre terme de recherche'
Save new entry: 'Sauvegarder un nouvel article'
Export: Exporter
# Config screen
Settings: 'Paramètres'
@ -39,6 +40,7 @@ Items per page: "Nombre d'articles par page"
Language: 'Langue'
Save: 'Enregistrer'
RSS token: 'Jeton RSS'
RSS token updated: 'Jeton RSS mis à jour'
Name: 'Nom'
Email: 'Adresse e-mail'
No token: 'Aucun jeton généré'
@ -51,6 +53,7 @@ Old password: 'Mot de passe actuel'
New password: 'Nouveau mot de passe'
Repeat new password: 'Confirmez votre nouveau mot de passe'
Username: "Nom d'utilisateur"
Two factor authentication: Double authentification
# Tagging rules
Tagging rules: "Règles de tag automatiques"
@ -82,6 +85,7 @@ One rule and another: "Une règle et l'autre"
The domain name of the entry: "Le nom de domaine de l'article"
"Tests that a <i>subject</i> is matches a <i>search</i> (case-insensitive).<br />Example: <code>title matches \"football\"</code>": "Teste si un <i>sujet</i> correspond à une <i>recherche</i> (non sensible à la casse).<br />Exemple : <code>title matches \"football\"</code>"
Rule: "Règle"
FAQ: "FAQ"
# Entries
'estimated reading time': 'durée de lecture'
@ -97,6 +101,10 @@ Edit an entry: "Éditer un article"
Title: "Titre"
Is public: "Public"
# tag
Tags: Tags
"{0} There is no tag.|{1} There is one tag.|]1,Inf[ There are %count% tags.": "{0} Il n'y a pas de tag.|{1} Il y a un tag.|]1,Inf[ Il y a %count% tags."
# Filters
Filters: 'Filtres'
Status: 'Statut'
@ -110,7 +118,7 @@ to: 'à'
website.com: 'website.com'
Domain name: 'Nom de domaine'
Creation date: 'Date de création'
dd/mm/yyyy: 'dd/mm/aaaa'
dd/mm/yyyy: 'jj/mm/aaaa'
Clear: 'Effacer'
Filter: 'Filtrer'
website.com: "siteweb.com"
@ -161,6 +169,9 @@ Entry unstarred: "Article retiré des favoris"
Entry archived: "Article marqué comme lu"
Entry unarchived: "Article marqué comme non lu"
Entry deleted: "Article supprimé"
Tagging rule deleted: "Règle supprimée"
Tagging rules updated: "Règles mises à jour"
User "%username%" added: 'Utilisateur "%username%" ajouté'
# Entry
Mark as read: 'Marquer comme lu'
@ -173,6 +184,8 @@ Download: 'Télécharger'
Does this article appear wrong?: "Est-ce que cet article s'affiche mal ?"
Problems?: 'Un problème ?'
Edit title: "Modifier le titre"
Re-fetch content: Recharger le contenu
Tag added: Tag ajouté
# Import
Welcome on wallabag importer. Please select your previous service that you want to migrate.: "Bienvenue dans l'outil de migration de wallabag. Choisissez ci-dessous le service depuis lequel vous souhaitez migrer."
@ -189,8 +202,12 @@ Please select your wallabag export and click on the below button to upload and i
File: "Fichier"
Upload file: "Importer le fichier"
Import contents: "Importer les contenus"
Import: "Importer"
Import > Wallabag v1: "Importer > Wallabag v1"
Import > Wallabag v2: "Importer > Wallabag v2"
# Quickstart
Quickstart: Pour bien débuter
Welcome on wallabag!: "Bienvenue sur wallabag !"
We'll accompany you to visit wallabag and show you some features which can interess you.: "Nous allons vous accompagner pour vous faire faire le tour de la maison et vous présenter quelques fonctionnalités qui pourraient vous intéresser pour vous approprier cet outil."
Follow us!: "Suivez-nous !"

View file

@ -1 +1 @@
<a id="bookmarklet" ondragend="this.click();" href="javascript:var url=location.href||url;var wllbg=window.open('{{ url('bookmarklet') }}?url=' + encodeURI(url),'_blank');wllbg.close();void(0);">{% trans %}bag it!{% endtrans %}</a>
<a id="bookmarklet" ondragend="this.click();" href="javascript:var url=location.href||url;var wllbg=window.open('{{ url('bookmarklet') }}?url=' + encodeURI(url),'_blank');wllbg.close();void(0);">bag it!</a>

View file

@ -12,7 +12,7 @@
<ul class="links">
<li class="topPosF"><a href="#top" title="{% trans %}Back to top{% endtrans %}" class="tool top icon icon-arrow-up-thick"><span>{% trans %}Back to top{% endtrans %}</span></a></li>
<li><a href="{{ entry.url|e }}" target="_blank" title="{% trans %}original{% endtrans %} : {{ entry.title|e }}" class="tool link icon icon-link"><span>{{ entry.domainName|removeWww }}</span></a></li>
<li><a title="{% trans %}Reload content{% endtrans %}" class="tool icon icon-reload" href="{{ path('reload_entry', { 'id': entry.id }) }}"><span>{% trans %}Reload content{% endtrans %}</span></a></li>
<li><a title="{% trans %}Re-fetch content{% endtrans %}" class="tool icon icon-reload" href="{{ path('reload_entry', { 'id': entry.id }) }}"><span>{% trans %}Re-fetch content{% endtrans %}</span></a></li>
<li><a title="{% if entry.isArchived == 0 %}{% trans %}Mark as read{% endtrans %}{% else %}{% trans %}Mark as unread{% endtrans %}{% endif %}" class="tool icon icon-check {% if entry.isArchived == 0 %}archive-off{% else %}archive{% endif %}" href="{{ path('archive_entry', { 'id': entry.id }) }}"><span>{% if entry.isArchived == 0 %}{% trans %}Mark as read{% endtrans %}{% else %}{% trans %}Mark as unread{% endtrans %}{% endif %}</span></a></li>
<li><a title="{% trans %}Favorite{% endtrans %}" class="tool icon icon-star {% if entry.isStarred == 0 %}fav-off{% else %}fav{% endif %}" href="{{ path('star_entry', { 'id': entry.id }) }}"><span>{% trans %}Toggle favorite{% endtrans %}</span></a></li>
<li><a id="nav-btn-add-tag" title="{% trans %}Add a tag{% endtrans %}"><span>{% trans %}Tag{% endtrans %}</span></a></li>

View file

@ -1,15 +1,14 @@
<form name="entry" method="post" action="{{ path('new_entry')}}">
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form.url) %}
<span class="black-text">{{ form_errors(form.url) }}</span>
{% endif %}
{% if form_errors(form.url) %}
<span class="black-text">{{ form_errors(form.url) }}</span>
{% endif %}
{{ form_label(form.url) }}
{{ form_widget(form.url) }}
{{ form_label(form.url) }}
{{ form_widget(form.url) }}
<div class="hidden">{{ form_rest(form) }}</div>
</form>

View file

@ -16,7 +16,7 @@
</ul>
<h3>{% trans %}Mobile Apps{% endtrans %}</h3>
<ul>
<li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" target="_blank">{% trans %}via F-Droid{% endtrans %}</a> {% trans %} or {% endtrans %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" target="_blank">{% trans %}via Google Play{% endtrans %}</a></li>
<li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" target="_blank">via F-Droid</a> {% trans %} or {% endtrans %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" target="_blank">via Google Play</a></li>
<li>iOS: <a href="https://itunes.apple.com/app/wallabag/id828331015?mt=8" target="_blank">{% trans %}download the application{% endtrans %}</a></li>
<li>Windows Phone: <a href="http://www.windowsphone.com/en-US/store/app/wallabag/d5226cf1-f422-4e00-996c-88e9c5233332" target="_blank">{% trans %}download the application{% endtrans %}</a></li>
</ul>

View file

@ -1,15 +1,14 @@
<form name="tag" method="post" action="{{ path('new_tag', { 'entry': entry.id })}}">
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form.label) %}
<span class="black-text">{{ form_errors(form.label) }}</span>
{% endif %}
{% if form_errors(form.label) %}
<span class="black-text">{{ form_errors(form.label) }}</span>
{% endif %}
{{ form_widget(form.label, { 'attr': {'autocomplete': 'off'} }) }}
{{ form_widget(form.save, { 'attr': {'class': 'btn waves-effect waves-light'}, 'label': 'add tag' }) }}
{{ form_widget(form.label, { 'attr': {'autocomplete': 'off'} }) }}
{{ form_widget(form.save, { 'attr': {'class': 'btn waves-effect waves-light'}, 'label': 'add tag' }) }}
<div class="hidden">{{ form_rest(form) }}</div>
</form>

View file

@ -52,9 +52,9 @@
</li>
<li class="bold hide-on-med-and-down">
<a class="waves-effect collapsible-header" title="{% trans %}Reload content{% endtrans %}" href="{{ path('reload_entry', { 'id': entry.id }) }}" id="reload">
<a class="waves-effect collapsible-header" title="{% trans %}Re-fetch content{% endtrans %}" href="{{ path('reload_entry', { 'id': entry.id }) }}" id="reload">
<i class="mdi-action-autorenew small"></i>
<span>{% trans %}Reload content{% endtrans %}</span>
<span>{% trans %}Re-fetch content{% endtrans %}</span>
</a>
<div class="collapsible-body"></div>
</li>
@ -97,11 +97,41 @@
</a>
<div class="collapsible-body">
<ul>
{% if craue_setting('share_twitter') %}<li><a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool twitter icon icon-twitter" title="{% trans %}twitter{% endtrans %}"><span>{% trans %}twitter{% endtrans %}</span></a></li>{% endif %}
{% if craue_setting('share_shaarli') %}<li><a href="{{ craue_setting('shaarli_url') }}/index.php?post={{ entry.url|url_encode }}&amp;title={{ entry.title|url_encode }}" target="_blank" class="tool shaarli" title="{% trans %}shaarli{% endtrans %}"><span>{% trans %}shaarli{% endtrans %}</span></a></li>{% endif %}
{% if craue_setting('share_diaspora') %}<li><a href="{{ craue_setting('diaspora_url') }}/bookmarklet?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}&notes=&v=1&noui=1&jump=doclose" target="_blank" class="tool diaspora icon-image icon-image--diaspora" title="{% trans %}diaspora*{% endtrans %}"><span>{% trans %}diaspora*{% endtrans %}</span></a></li>{% endif %}
{% if craue_setting('carrot') %}<li><a href="https://secure.carrot.org/GiveAndGetBack.do?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" class="tool carrot icon-image icon-image--carrot" target="_blank" title="{% trans %}carrot{% endtrans %}"><span>Carrot</span></a></li>{% endif %}
{% if craue_setting('share_mail') %}<li><a href="mailto:?subject={{ entry.title|url_encode }}&amp;body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email icon icon-mail" title="{% trans %}Email{% endtrans %}"><span>{% trans %}Email{% endtrans %}</span></a></li>{% endif %}
{% if craue_setting('share_twitter') %}
<li>
<a href="https://twitter.com/home?status={{entry.title|url_encode}}%20{{ entry.url|url_encode }}%20via%20@wallabagapp" target="_blank" class="tool twitter icon icon-twitter" title="twitter">
<span>twitter</span>
</a>
</li>
{% endif %}
{% if craue_setting('share_shaarli') %}
<li>
<a href="{{ craue_setting('shaarli_url') }}/index.php?post={{ entry.url|url_encode }}&amp;title={{ entry.title|url_encode }}" target="_blank" class="tool shaarli" title="shaarli">
<span>shaarli</span>
</a>
</li>
{% endif %}
{% if craue_setting('share_diaspora') %}
<li>
<a href="{{ craue_setting('diaspora_url') }}/bookmarklet?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}&notes=&v=1&noui=1&jump=doclose" target="_blank" class="tool diaspora icon-image icon-image--diaspora" title="diaspora}">
<span>diaspora}</span>
</a>
</li>
{% endif %}
{% if craue_setting('carrot') %}
<li>
<a href="https://secure.carrot.org/GiveAndGetBack.do?url={{ entry.url|url_encode }}&title={{ entry.title|url_encode }}" class="tool carrot icon-image icon-image--carrot" target="_blank" title="carrot">
<span>Carrot</span>
</a>
</li>
{% endif %}
{% if craue_setting('share_mail') %}
<li>
<a href="mailto:?subject={{ entry.title|url_encode }}&amp;body={{ entry.url|url_encode }}%20via%20@wallabagapp" class="tool email icon icon-mail" title="{% trans %}Email{% endtrans %}">
<span>{% trans %}Email{% endtrans %}</span>
</a>
</li>
{% endif %}
</ul>
</div>
</li>

View file

@ -1,14 +1,13 @@
<form name="entry" method="post" action="{{ path('new_entry')}}">
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form.url) %}
<span class="black-text">{{ form_errors(form.url) }}</span>
{% endif %}
{% if form_errors(form.url) %}
<span class="black-text">{{ form_errors(form.url) }}</span>
{% endif %}
{{ form_widget(form.url, { 'attr': {'autocomplete': 'off', 'placeholder': 'http://website' | trans} }) }}
{{ form_widget(form.url, { 'attr': {'autocomplete': 'off', 'placeholder': 'http://website'} }) }}
<div class="hidden">{{ form_rest(form) }}</div>
</form>

View file

@ -18,12 +18,10 @@
</ul>
</div>
<div id="set1" class="col s12">
<a href="{{ path('new') }}">{% trans %}Thanks to this form{% endtrans %}</a>
</div>
<div id="set2" class="col s12">
<ul>
<li><a href="https://addons.mozilla.org/firefox/addon/wallabag/" target="_blank">{% trans %}Standard Firefox Add-On{% endtrans %}</a></li>
@ -31,16 +29,14 @@
</ul>
</div>
<div id="set3" class="col s12">
<ul>
<li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" target="_blank">{% trans %}via F-Droid{% endtrans %}</a> {% trans %} or {% endtrans %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" target="_blank">{% trans %}via Google Play{% endtrans %}</a></li>
<li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" target="_blank">via F-Droid</a> {% trans %} or {% endtrans %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" target="_blank">via Google Play</a></li>
<li>iOS: <a href="https://itunes.apple.com/app/wallabag/id828331015?mt=8" target="_blank">{% trans %}download the application{% endtrans %}</a></li>
<li>Windows Phone: <a href="http://www.windowsphone.com/en-US/store/app/wallabag/d5226cf1-f422-4e00-996c-88e9c5233332" target="_blank">{% trans %}download the application{% endtrans %}</a></li>
</ul>
</div>
<div id="set4" class="col s12">
{% trans %}Drag &amp; drop this link to your bookmarks bar:{% endtrans %}
{% include 'WallabagCoreBundle::_bookmarklet.html.twig' %}

View file

@ -1,14 +1,13 @@
<form name="tag" method="post" action="{{ path('new_tag', { 'entry': entry.id })}}">
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form) %}
<span class="black-text">{{ form_errors(form) }}</span>
{% endif %}
{% if form_errors(form.label) %}
<span class="black-text">{{ form_errors(form.label) }}</span>
{% endif %}
{% if form_errors(form.label) %}
<span class="black-text">{{ form_errors(form.label) }}</span>
{% endif %}
{{ form_widget(form.label, { 'attr': {'autocomplete': 'off'} }) }}
{{ form_widget(form.label, { 'attr': {'autocomplete': 'off'} }) }}
<div class="hidden">{{ form_rest(form) }}</div>
</form>