mirror of
https://github.com/wallabag/wallabag.git
synced 2025-07-22 17:18:37 +00:00
Cleanup & simplify theme
This commit is contained in:
parent
71798e4ec4
commit
495aecfe74
252 changed files with 158 additions and 8993 deletions
|
@ -6,13 +6,26 @@ use Liip\ThemeBundle\Helper\DeviceDetectionInterface;
|
|||
use Symfony\Component\Security\Core\SecurityContextInterface;
|
||||
use Wallabag\CoreBundle\Entity\User;
|
||||
|
||||
/**
|
||||
* This class intend to detect the active theme for the logged in user.
|
||||
* It will retrieve the configured theme of the user.
|
||||
*
|
||||
* If no user where logged in, it will returne the default theme
|
||||
*/
|
||||
|
||||
class DetectActiveTheme implements DeviceDetectionInterface
|
||||
{
|
||||
protected $securityContext;
|
||||
protected $defaultTheme;
|
||||
|
||||
public function __construct(SecurityContextInterface $securityContext)
|
||||
/**
|
||||
* @param SecurityContextInterface $securityContext Needed to retrieve the current user
|
||||
* @param string $defaultTheme Default theme when user isn't logged in
|
||||
*/
|
||||
public function __construct(SecurityContextInterface $securityContext, $defaultTheme)
|
||||
{
|
||||
$this->securityContext = $securityContext;
|
||||
$this->defaultTheme = $defaultTheme;
|
||||
}
|
||||
|
||||
public function setUserAgent($userAgent)
|
||||
|
@ -21,9 +34,10 @@ class DetectActiveTheme implements DeviceDetectionInterface
|
|||
|
||||
/**
|
||||
* This should return the active theme for the logged in user.
|
||||
* No active theme for:
|
||||
*
|
||||
* Default theme for:
|
||||
* - anonymous user
|
||||
* - user without a config (shouldn't happen..)
|
||||
* - user without a config (shouldn't happen ..)
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
|
@ -31,15 +45,14 @@ class DetectActiveTheme implements DeviceDetectionInterface
|
|||
{
|
||||
$user = $this->securityContext->getToken()->getUser();
|
||||
|
||||
// anon user don't deserve a theme
|
||||
if (!$user instanceof User) {
|
||||
return false;
|
||||
return $this->defaultTheme;
|
||||
}
|
||||
|
||||
$config = $user->getConfig();
|
||||
|
||||
if (!$config) {
|
||||
return false;
|
||||
return $this->defaultTheme;
|
||||
}
|
||||
|
||||
return $config->getTheme();
|
||||
|
|
|
@ -20,6 +20,7 @@ services:
|
|||
class: Wallabag\CoreBundle\Helper\DetectActiveTheme
|
||||
arguments:
|
||||
- @security.context
|
||||
- %theme% # default theme from parameters.yml
|
||||
|
||||
wallabag_core.form.type.config:
|
||||
class: Wallabag\CoreBundle\Form\Type\ConfigType
|
||||
|
|
|
@ -2,10 +2,6 @@
|
|||
|
||||
{% block title %}{% trans %}Config{% endtrans %}{% endblock %}
|
||||
|
||||
{% block menu %}
|
||||
{% include "WallabagCoreBundle::_menu.html.twig" %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h2>{% trans %}Wallabag configuration{% endtrans %}</h2>
|
||||
|
||||
|
|
|
@ -2,10 +2,6 @@
|
|||
|
||||
{% block title "Unread" %}
|
||||
|
||||
{% block menu %}
|
||||
{% include "WallabagCoreBundle::_menu.html.twig" %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{% block pager %}
|
||||
{% if entries is not empty %}
|
||||
|
|
|
@ -2,10 +2,6 @@
|
|||
|
||||
{% block title %}{{ entry.title|raw }} ({{ entry.url | e | domainName }}){% endblock %}
|
||||
|
||||
{% block menu %}
|
||||
{% include "WallabagCoreBundle::_menu.html.twig" %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div id="article_toolbar">
|
||||
<ul class="links">
|
||||
|
|
|
@ -2,10 +2,6 @@
|
|||
|
||||
{% block title %}{% trans %}Save new entry{% endtrans %}{% endblock %}
|
||||
|
||||
{% block menu %}
|
||||
{% include "WallabagCoreBundle::_menu.html.twig" %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{{ form(form) }}
|
||||
{% endblock %}
|
||||
|
|
|
@ -1,6 +1,11 @@
|
|||
{% extends "WallabagCoreBundle::layout-login.html.twig" %}
|
||||
{% extends "WallabagCoreBundle::layout.html.twig" %}
|
||||
|
||||
{% block title %}{% trans %}login to your wallabag{% endtrans %}{% endblock %}
|
||||
|
||||
{% block body_class %}login{% endblock %}
|
||||
|
||||
{% block menu %}{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
{% if error %}
|
||||
<div>{{ error.message }}</div>
|
||||
|
@ -19,11 +24,7 @@
|
|||
<label class="col w150p" for="password">{% trans %}Password{% endtrans %}</label>
|
||||
<input type="password" id="password" name="_password" />
|
||||
</div>
|
||||
{#
|
||||
Si vous voulez contrôler l'URL vers laquelle l'utilisateur est redirigé en cas de succès
|
||||
(plus de détails ci-dessous)
|
||||
<input type="hidden" name="_target_path" value="/account" />
|
||||
#}
|
||||
|
||||
<div class="row mts txtcenter">
|
||||
<button type="submit">login</button>
|
||||
</div>
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
{% extends "WallabagCoreBundle::layout.html.twig" %}
|
||||
|
||||
{% block title %}{% trans %}About{% endtrans %}{% endblock %}
|
||||
{% block menu %}
|
||||
{% include "WallabagCoreBundle::_menu.html.twig" %}
|
||||
{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<h2>{% trans %}About wallabag{% endtrans %}</h2>
|
||||
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
<footer class="w600p center mt3 mb3 smaller txtright">
|
||||
<p>{% trans %}powered by{% endtrans %} <a href="http://wallabag.org">wallabag</a></p>
|
||||
</footer>
|
|
@ -1,16 +0,0 @@
|
|||
{% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
|
||||
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/ratatouille.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/font.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/main.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/messages.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/print.css') }}" media="print">
|
||||
|
||||
<script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
|
||||
<script src="{{ asset('themes/baggy/js/jquery.cookie.js') }}"></script>
|
||||
<script src="{{ asset('themes/baggy/js/init.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
|
||||
<script src="{{ asset('themes/baggy/js/closeMessage.js') }}"></script>
|
||||
<script src="{{ asset('bundles/wallabagcore/js/bookmarklet.js') }}"></script>
|
|
@ -1,14 +0,0 @@
|
|||
<button id="menu" class="icon icon-menu desktopHide"><span>Menu</span></button>
|
||||
<ul id="links" class="links">
|
||||
<li><a href="{{ path('unread') }}">{% trans %}unread{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('starred') }}">{% trans %}favorites{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('archive') }}"}>{% trans %}archive{% endtrans %}</a></li>
|
||||
<li><a href="?view=tags">{% trans %}tags{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('new_entry') }}">{% trans %}save a link{% endtrans %}</a></li>
|
||||
<li style="position: relative;"><a href="javascript: void(null);" id="search">{% trans %}search{% endtrans %}</a>
|
||||
{% include "WallabagCoreBundle::_search_form.html.twig" %}
|
||||
</li>
|
||||
<li><a href="{{ path('config') }}">{% trans %}config{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('about') }}">{% trans %}about{% endtrans %}</a></li>
|
||||
<li><a class="icon icon-power" href="{{ path('logout') }}" title="{% trans %}logout{% endtrans %}">{% trans %}logout{% endtrans %}</a></li>
|
||||
</ul>
|
|
@ -1,9 +0,0 @@
|
|||
|
||||
{% if flashMessages %}
|
||||
<div class="messages success">
|
||||
<a href="#" class="closeMessage">×</a>
|
||||
{% for flashMessage in flashMessages %}
|
||||
<p>{{ flashMessage }}</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
|
@ -1,10 +0,0 @@
|
|||
<div id="bagit-form" class="messages info popup-form">
|
||||
<form method="get" action="index.php" target="_blank" id="bagit-form-form">
|
||||
<h2>{% trans %}Save a link{% endtrans %}</h2>
|
||||
<a href="javascript: void(null);" id="bagit-form-close" class="close-button--popup close-button">×</a>
|
||||
<input type="hidden" name="autoclose" value="1" />
|
||||
<input required placeholder="example.com/article" class="addurl" id="plainurl" name="plainurl" type="url" />
|
||||
<span id="add-link-result"></span>
|
||||
<input type="submit" value="{% trans %}save link!"{% endtrans %} />
|
||||
</form>
|
||||
</div>
|
|
@ -1,9 +0,0 @@
|
|||
<div id="search-form" class="messages info popup-form">
|
||||
<form method="get" action="index.php">
|
||||
<h2>{% trans %}Search{% endtrans %}</h2>
|
||||
<a href="javascript: void(null);" id="search-form-close" class="close-button--popup close-button">×</a>
|
||||
<input type="hidden" name="view" value="search"></input>
|
||||
<input required placeholder="{% trans %}Enter your search here{% endtrans %}" type="text" name="search" id="searchfield"><br>
|
||||
<input id="submit-search" type="submit" value="{% trans %}Search{% endtrans %}"></input>
|
||||
</form>
|
||||
</div>
|
|
@ -1,5 +0,0 @@
|
|||
<header class="w600p center mbm">
|
||||
<h1 class="logo">
|
||||
{% block logo %}<img width="100" height="100" src="{{ asset('themes/baggy/img/logo-w.png') }}" alt="wallabag logo" />{% endblock %}
|
||||
</h1>
|
||||
</header>
|
115
src/Wallabag/CoreBundle/Resources/views/base.html.twig
Normal file
115
src/Wallabag/CoreBundle/Resources/views/base.html.twig
Normal file
|
@ -0,0 +1,115 @@
|
|||
<!DOCTYPE html>
|
||||
<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
|
||||
<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
|
||||
<html lang="fr">
|
||||
<head>
|
||||
{% block head %}
|
||||
<meta name="viewport" content="initial-scale=1.0">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<!--[if IE]>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=10">
|
||||
<![endif]-->
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
|
||||
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{{ asset('themes/_global/img/appicon/favicon.ico') }}">
|
||||
|
||||
{% block css %}{% endblock %}
|
||||
{% block scripts %}
|
||||
<script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/jquery.cookie.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/bookmarklet.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/closeMessage.js') }}"></script>
|
||||
{% endblock %}
|
||||
|
||||
<title>{% block title %}{% endblock %} - wallabag</title>
|
||||
{% endblock %}
|
||||
</head>
|
||||
|
||||
<body class="{% block body_class %}{% endblock %}">
|
||||
{% block header %}
|
||||
<header class="w600p center mbm">
|
||||
<h1 class="logo">
|
||||
{% block logo %}
|
||||
<img width="100" height="100" src="{{ asset('themes/baggy/img/logo-w.png') }}" alt="wallabag logo" />
|
||||
{% endblock %}
|
||||
</h1>
|
||||
</header>
|
||||
{% endblock %}
|
||||
|
||||
<div id="main">
|
||||
{% block menu %}
|
||||
<button id="menu" class="icon icon-menu desktopHide"><span>Menu</span></button>
|
||||
<ul id="links" class="links">
|
||||
<li><a href="{{ path('unread') }}">{% trans %}unread{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('starred') }}">{% trans %}favorites{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('archive') }}"}>{% trans %}archive{% endtrans %}</a></li>
|
||||
<li><a href="?view=tags">{% trans %}tags{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('new_entry') }}">{% trans %}save a link{% endtrans %}</a></li>
|
||||
<li style="position: relative;"><a href="javascript: void(null);" id="search">{% trans %}search{% endtrans %}</a>
|
||||
<div id="search-form" class="messages info popup-form">
|
||||
<form method="get" action="index.php">
|
||||
<h2>{% trans %}Search{% endtrans %}</h2>
|
||||
<a href="javascript: void(null);" id="search-form-close" class="close-button--popup close-button">×</a>
|
||||
<input type="hidden" name="view" value="search"></input>
|
||||
<input required placeholder="{% trans %}Enter your search here{% endtrans %}" type="text" name="search" id="searchfield"><br>
|
||||
<input id="submit-search" type="submit" value="{% trans %}Search{% endtrans %}"></input>
|
||||
</form>
|
||||
</div>
|
||||
</li>
|
||||
<li><a href="{{ path('config') }}">{% trans %}config{% endtrans %}</a></li>
|
||||
<li><a href="{{ path('about') }}">{% trans %}about{% endtrans %}</a></li>
|
||||
<li><a class="icon icon-power" href="{{ path('logout') }}" title="{% trans %}logout{% endtrans %}">{% trans %}logout{% endtrans %}</a></li>
|
||||
</ul>
|
||||
{% endblock %}
|
||||
|
||||
{% block precontent %}{% endblock %}
|
||||
|
||||
{% block messages %}
|
||||
{% for flashMessage in app.session.flashbag.get('notice') %}
|
||||
<div class="messages success">
|
||||
<a href="#" class="closeMessage">×</a>
|
||||
<p>{{ flashMessage }}</p>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% endblock %}
|
||||
|
||||
<div id="content" class="w600p center">
|
||||
{% block content %}{% endblock %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% block footer %}
|
||||
<footer class="w600p center mt3 mb3 smaller txtright">
|
||||
<p>{% trans %}powered by{% endtrans %} <a href="http://wallabag.org">wallabag</a></p>
|
||||
</footer>
|
||||
{% endblock %}
|
||||
</body>
|
||||
</html>
|
|
@ -1,27 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
|
||||
<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="initial-scale=1.0">
|
||||
<meta charset="utf-8">
|
||||
<!--[if IE]>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=10">
|
||||
<![endif]-->
|
||||
<title>{% block title %}{% endblock %} - wallabag</title>
|
||||
{% include "WallabagCoreBundle::_head.html.twig" %}
|
||||
</head>
|
||||
<body class="login">
|
||||
<h1>DEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULT</h1>
|
||||
{% include "WallabagCoreBundle::_top.html.twig" %}
|
||||
<div id="main">
|
||||
{% block menu %}{% endblock %}
|
||||
<div id="content" class="w600p center">
|
||||
{% block content %}{% endblock %}
|
||||
</div>
|
||||
</div>
|
||||
{% include "WallabagCoreBundle::_footer.html.twig" %}
|
||||
</body>
|
||||
</html>
|
|
@ -1,29 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
|
||||
<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="initial-scale=1.0">
|
||||
<meta charset="utf-8">
|
||||
<!--[if IE]>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=10">
|
||||
<![endif]-->
|
||||
<title>{% block title %}{% endblock %} - wallabag</title>
|
||||
{% include "WallabagCoreBundle::_head.html.twig" %}
|
||||
</head>
|
||||
<body>
|
||||
<h1>DEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULTDEFAULT</h1>
|
||||
{% include "WallabagCoreBundle::_top.html.twig" %}
|
||||
<div id="main">
|
||||
{% block menu %}{% endblock %}
|
||||
{% block precontent %}{% endblock %}
|
||||
{{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
|
||||
<div id="content" class="w600p center">
|
||||
{% block content %}{% endblock %}
|
||||
</div>
|
||||
</div>
|
||||
{% include "WallabagCoreBundle::_footer.html.twig" %}
|
||||
</body>
|
||||
</html>
|
|
@ -1,26 +0,0 @@
|
|||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-152.png') }}" sizes="152x152">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-144.png') }}" sizes="144x144">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-120.png') }}" sizes="120x120">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-114.png') }}" sizes="114x114">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-76.png') }}" sizes="76x76">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-72.png') }}" sizes="72x72">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon-57.png') }}" sizes="57x57">
|
||||
|
||||
<link rel="apple-touch-icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
|
||||
<link rel="icon" type="image/png" href="{{ asset('themes/_global/img/appicon/apple-touch-icon.png') }}">
|
||||
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{{ asset('themes/_global/img/appicon/favicon.ico') }}">
|
|
@ -1,5 +0,0 @@
|
|||
<div id="display-mode">
|
||||
<a href="javascript: void(null);" id="listmode" class="listmode">
|
||||
<img src="{{ poche_url }}themes/{{ theme }}/img/{{ theme }}/blank.png" alt="{% trans "toggle view mode" %}" title="{% trans "toggle view mode" %}" width="16" height="16">
|
||||
</a>
|
||||
</div>
|
|
@ -1,187 +0,0 @@
|
|||
{% extends "layout.twig" %}
|
||||
|
||||
{% block title %}{% trans "config" %}{% endblock %}
|
||||
{% block menu %}
|
||||
{% include '_menu.twig' %}
|
||||
{% endblock %}
|
||||
{% block content %}
|
||||
<h2>{% trans "Saving articles" %}</h2>
|
||||
<p>{% trans "There are several ways to save an article:" %} {% trans "(<a href=\"http://doc.wallabag.org/en/User_documentation/Save_your_first_article\" target=\"_blank\" title=\"Documentation\">?</a>)" %}</p>
|
||||
<p>
|
||||
<form method="get" action="index.php">
|
||||
<label class="addurl" for="config_plainurl">{% trans "By filling this field" %}:</label><br>
|
||||
<input required placeholder="example.com/article" class="addurl" id="config_plainurl" name="plainurl" type="url" />
|
||||
<input type="submit" value="{% trans "bag it!" %}" />
|
||||
</form>
|
||||
</p>
|
||||
<h3>Browser Plugins</h3>
|
||||
<ul>
|
||||
<li><a href="https://addons.mozilla.org/firefox/addon/wallabag/" target="_blank">{% trans "Firefox Add-On" %}</a></li>
|
||||
<li><a href="https://chrome.google.com/webstore/detail/wallabag/bepdcjnnkglfjehplaogpoonpffbdcdj" target="_blank">{% trans "Chrome Extension" %}</a></li>
|
||||
</ul>
|
||||
<h3>Mobile Apps</h3>
|
||||
<ul>
|
||||
<li>Android: <a href="https://f-droid.org/app/fr.gaulupeau.apps.InThePoche" target="_blank">{% trans "via F-Droid" %}</a> {% trans " or " %} <a href="https://play.google.com/store/apps/details?id=fr.gaulupeau.apps.InThePoche" target="_blank">{% trans "via Google Play" %}</a></li>
|
||||
<li>iOS: <a href="https://itunes.apple.com/app/wallabag/id828331015?mt=8" target="_blank">{% trans "download the application" %}</a></li>
|
||||
<li>Windows Phone: <a href="http://www.windowsphone.com/en-us/store/app/wallabag/ff890514-348c-4d0b-9b43-153fff3f7450" target="_blank">{% trans "download the application" %}</a></li>
|
||||
</ul>
|
||||
<h3>{% trans "Bookmarklet" %}</h3>
|
||||
<p>
|
||||
{% trans "Drag & drop this link to your bookmarks bar:" %} <a id="bookmarklet" ondragend="this.click();" href="javascript:if(top['bookmarklet-url@wallabag.org']){top['bookmarklet-url@wallabag.org'];}else{(function(){var%20url%20=%20location.href%20||%20url;window.open('{{ poche_url }}?action=add&url='%20+%20btoa(url),'_self');})();void(0);}">{% trans "bag it!" %}</a>
|
||||
</p>
|
||||
|
||||
<h2>{% trans "Feeds" %}</h2>
|
||||
{% if token == '' %}
|
||||
<p>{% trans "Your feed token is currently empty and must first be generated to enable feeds. Click <a href='?feed&action=generate'>here to generate it</a>." %}</p>
|
||||
{% else %}
|
||||
<ul>
|
||||
<li><a href="?feed&type=home&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Unread feed" %}</a></li>
|
||||
<li><a href="?feed&type=fav&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Favorites feed" %}</a></li>
|
||||
<li><a href="?feed&type=archive&user_id={{ user_id }}&token={{ token }}" target="_blank">{% trans "Archive feed" %}</a></li>
|
||||
</ul>
|
||||
<p class="more-info">
|
||||
{% trans "Your token:" %} <strong>{{token}}</strong><br>
|
||||
{% trans "Your user id:" %} <strong>{{user_id}}</strong><br>
|
||||
{% trans "You can regenerate your token: <a href='?feed&action=generate'>generate!</a>." %}
|
||||
</p>
|
||||
{% endif %}
|
||||
|
||||
<h2>{% trans "Change your theme" %}</h2>
|
||||
<form method="post" action="?updatetheme" name="changethemeform">
|
||||
<fieldset class="w500p inline">
|
||||
<div class="row">
|
||||
<label class="col w150p" for="theme">{% trans "Theme:" %}</label>
|
||||
<select class="col" id="theme" name="theme">
|
||||
{% for key, theme in themes %}
|
||||
<option value="{{ key }}" {{ theme.current ? 'selected' : '' }}>{{ theme.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
<button class="bouton" type="submit" tabindex="4">{% trans "Update" %}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
<input type="hidden" name="returnurl" value="{{ referer }}">
|
||||
<input type="hidden" name="token" value="{{ token }}">
|
||||
</form>
|
||||
|
||||
<h2>{% trans "Change your language" %}</h2>
|
||||
<form method="post" action="?updatelanguage" name="changelanguageform">
|
||||
<fieldset class="w500p inline">
|
||||
<div class="row">
|
||||
<label class="col w150p" for="language">{% trans "Language:" %}</label>
|
||||
<select class="col" id="language" name="language">
|
||||
{% for language in languages %}
|
||||
<option value="{{ language.value }}" {{ language.current ? 'selected' : '' }}>{{ language.name }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
<button class="bouton" type="submit" tabindex="4">{% trans "Update" %}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
<input type="hidden" name="returnurl" value="{{ referer }}">
|
||||
<input type="hidden" name="token" value="{{ token }}">
|
||||
</form>
|
||||
|
||||
<h2><a name="import"></a>{% trans "Import" %}</h2>
|
||||
<p>{% trans "You can import your Pocket, Readability, Instapaper, Wallabag or any data in appropriate json or html format." %}</p>
|
||||
<p>{% trans "Please select export file on your computer and press \"Import\" button below. Wallabag will parse your file, insert all URLs and start fetching of articles if required." %}</p>
|
||||
<form method="post" action="?import" name="uploadfile" enctype="multipart/form-data">
|
||||
<fieldset class="w500p">
|
||||
<div class="row">
|
||||
<label class="col w150p" for="file">{% trans "File:" %}</label>
|
||||
<input class="col" type="file" id="file" name="file" tabindex="4" required="required">
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
<button class="bouton" type="submit" tabindex="4">{% trans "Import" %}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
<p><a href="?import">{% trans "You can click here to fetch content for articles with no content." %}</a></p>
|
||||
<p class="more-info">{% trans "Fetching process is controlled by two constants in your config file: IMPORT_LIMIT (how many articles are fetched at once) and IMPORT_DELAY (delay between fetch of next batch of articles)." %}</p>
|
||||
|
||||
<h2>{% trans "Export your wallabag data" %}</h2>
|
||||
<p><a href="?export" target="_blank">{% trans "Export JSON" %}</a><br>
|
||||
<span class="more-info">Data will be exported in a single JSON file.</span></p>
|
||||
|
||||
<h2>{% trans "Fancy an E-Book ?" %}</h2>
|
||||
<p>{% trans "Click to get all your articles in one ebook :" %}
|
||||
<ul>
|
||||
<li><a href="./?epub&method=all" title="{% trans 'Generate ePub file' %}">ePub 3</a></li>
|
||||
<li><a href="./?mobi&method=all" title="{% trans 'Generate Mobi file' %}">Mobi</a></li>
|
||||
<li><a href="./?pdf&method=all" title="{% trans 'Generate PDF file' %}">PDF</a></li>
|
||||
</ul>
|
||||
|
||||
<span class="more-info">{% trans "This can <b>take a while</b> and can <b>even fail</b> if you have too many articles, depending on your server configuration." %}</span></p>
|
||||
|
||||
<h2><a name="cache"></a>{% trans "Cache" %}</h2>
|
||||
<p><a href="?empty-cache">{% trans "Delete Cache" %}</a><br>
|
||||
<span class="more-info">Deleting the cache may help with display or other problems.</span></p>
|
||||
|
||||
{% if http_auth == 0 %}
|
||||
<h2>{% trans "Change your password" %}</h2>
|
||||
<form method="post" action="?config" name="loginform">
|
||||
<fieldset class="w500p">
|
||||
<div class="row">
|
||||
<label class="col w150p" for="password">{% trans "New password:" %}</label>
|
||||
<input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2">
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col w150p" for="password_repeat">{% trans "Repeat your new password:" %}</label>
|
||||
<input class="col" type="password" id="password_repeat" name="password_repeat" placeholder="{% trans "Password" %}" tabindex="3">
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
<button class="bouton" type="submit" tabindex="4">{% trans "Update" %}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
<input type="hidden" name="returnurl" value="{{ referer }}">
|
||||
<input type="hidden" name="token" value="{{ token }}">
|
||||
</form>
|
||||
{% endif %}
|
||||
|
||||
<h2>{% trans 'Add user' %}</h2>
|
||||
<form method="post" action="?newuser">
|
||||
<fieldset class="w500p">
|
||||
<div class="row">
|
||||
<label class="col w150p" for="newusername">{% trans 'Login for new user' %}</label>
|
||||
<input class="col" type="text" id="newusername" name="newusername" placeholder="{% trans 'Login' %}" required>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col w150p" for="password4newuser">{% trans "Password for new user" %}</label>
|
||||
<input class="col" type="password" id="password4newuser" name="password4newuser" placeholder="{% trans 'Password' %}" required>
|
||||
</div>
|
||||
<div class="row">
|
||||
<label class="col w150p" for="newuseremail">{% trans 'Email for new user (not required)' %}</label>
|
||||
<input class="col" type="email" id="newuseremail" name="newuseremail" placeholder="{% trans 'Email' %}">
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
<button type="submit">{% trans "Add user" %}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<h2>{% trans "Delete account" %}</h2>
|
||||
{% if not only_user %}<form method="post" action="?deluser">
|
||||
<p>{% trans "You can delete your account by entering your password and validating." %}<br /><b>{% trans "Be careful, data will be erased forever (that is a very long time)." %}</b></p>
|
||||
<fieldset class="w500p">
|
||||
<div class="row">
|
||||
<label class="col w150p" for="password4deletinguser">{% trans "Type here your password" %}</label>
|
||||
<input class="col" type="password" id="password4deletinguser" name="password4deletinguser" placeholder="{% trans "Password" %}">
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
<button type="submit">{% trans "Delete account" %}</button>
|
||||
</div>
|
||||
</form>
|
||||
{% else %}<p>{% trans "You are the only user, you cannot delete your own account." %}</p>
|
||||
<p>{% trans "To completely remove wallabag, delete the wallabag folder on your web server (and eventual databases)." %}</p>{% endif %}
|
||||
|
||||
<h2>{% trans "Upgrading wallabag" %}</h2>
|
||||
<ul>
|
||||
<li>{% trans "Installed version" %}: <strong>{{ constant('WALLABAG') }}</strong></li>
|
||||
<li>{% trans "Latest stable version" %}: {{ prod }}. {% if compare_prod == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent stable version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_prod }})</li>
|
||||
{% if constant('DEBUG_POCHE') == 1 %}<li>{% trans "Latest dev version" %}: {{ dev }}. {% if compare_dev == -1 %}<strong><a href="http://wallabag.org/">{% trans "A more recent development version is available." %}</a></strong>{% else %}{% trans "You are up to date." %}{% endif %} ({% trans "Last check:" %} {{ check_time_dev }}){% endif %}</li>
|
||||
</ul>
|
||||
<p class="more-info">{% trans "You can clear cache to check the latest release." %}</p>
|
||||
|
||||
{% endblock %}
|
|
@ -1,29 +0,0 @@
|
|||
{% extends "layout.twig" %}
|
||||
{% block title %}edit tags{% endblock %}
|
||||
{% block menu %}
|
||||
{% include '_menu.twig' %}
|
||||
{% endblock %}
|
||||
{% block content %}
|
||||
|
||||
<script src="{{ poche_url }}themes/_global/js/jquery-ui-1.10.4.custom.min.js"></script>
|
||||
<script src="{{ poche_url }}themes/_global/js/autoCompleteTags.js"></script>
|
||||
<link rel="stylesheet" href="{{ poche_url }}themes/_global/css/jquery-ui-1.10.4.custom.min.css" media="all">
|
||||
|
||||
<div id="article">
|
||||
<h2>{{ entry.title|raw }}</21>
|
||||
</div>
|
||||
{% if tags is empty %}
|
||||
<div class="notags">{% trans "no tags" %}</div>
|
||||
{% endif %}
|
||||
<ul>
|
||||
{% for tag in tags %}<li>{{ tag.value }} <a href="./?action=remove_tag&tag_id={{ tag.id }}&id={{ entry_id }}">✘</a></li>{% endfor %}
|
||||
</ul>
|
||||
<form method="post" action="./?action=add_tag">
|
||||
<input type="hidden" name="entry_id" value="{{ entry_id }}" />
|
||||
<label for="value">{% trans "Add tags:" %}</label><input type="text" placeholder="{% trans "interview" %}, {% trans "editorial" %}, {% trans "video" %}" id="value" name="value" required="required" />
|
||||
<input type="submit" value="Tag" />
|
||||
<p>{% trans "Start typing for auto complete." %}<br>
|
||||
{% trans "You can enter multiple tags, separated by commas." %}</p>
|
||||
</form>
|
||||
<a class="icon icon-reply return" href="./?view=view&id={{ entry_id }}">{% trans "return to article" %}</a>
|
||||
{% endblock %}
|
|
@ -1,43 +1,17 @@
|
|||
<!DOCTYPE html>
|
||||
<!--[if lte IE 6]><html class="no-js ie6 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if lte IE 7]><html class="no-js ie7 ie67 ie678" lang="en"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js ie8 ie678" lang="en"><![endif]-->
|
||||
<!--[if gt IE 8]><html class="no-js" lang="en"><![endif]-->
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta name="viewport" content="initial-scale=1.0">
|
||||
<meta charset="utf-8">
|
||||
<!--[if IE]>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=10">
|
||||
<![endif]-->
|
||||
<title>{% block title %}{% endblock %} - wallabag</title>
|
||||
{% include "WallabagCoreBundle:themes:_global/_head_icon.html.twig" %}
|
||||
{% extends "WallabagCoreBundle::base.html.twig" %}
|
||||
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/ratatouille.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/font.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/main.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/messages.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/print.css') }}" media="print">
|
||||
{% block css %}
|
||||
{{ parent() }}
|
||||
|
||||
<script src="{{ asset('themes/_global/js/jquery-2.0.3.min.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/autoClose.js') }}"></script>
|
||||
<script src="{{ asset('themes/baggy/js/jquery.cookie.js') }}"></script>
|
||||
<script src="{{ asset('themes/baggy/js/init.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
|
||||
<script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
|
||||
<script src="{{ asset('themes/baggy/js/closeMessage.js') }}"></script>
|
||||
<script src="{{ asset('bundles/wallabagcore/js/bookmarklet.js') }}"></script>
|
||||
</head>
|
||||
<body>
|
||||
{% include "WallabagCoreBundle::_top.html.twig" %}
|
||||
<div id="main">
|
||||
{% block menu %}{% endblock %}
|
||||
{% block precontent %}{% endblock %}
|
||||
{{ include("WallabagCoreBundle::_messages.html.twig", {'flashMessages': app.session.flashbag.get('notice')}) }}
|
||||
<div id="content" class="w600p center">
|
||||
{% block content %}{% endblock %}
|
||||
</div>
|
||||
</div>
|
||||
{% include "WallabagCoreBundle::_footer.html.twig" %}
|
||||
</body>
|
||||
</html>
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/ratatouille.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/font.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/main.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/messages.css') }}" media="all">
|
||||
<link rel="stylesheet" href="{{ asset('themes/baggy/css/print.css') }}" media="print">
|
||||
{% endblock %}
|
||||
|
||||
{% block scripts %}
|
||||
{{ parent() }}
|
||||
|
||||
<script src="{{ asset('themes/baggy/js/init.js') }}"></script>
|
||||
{% endblock %}
|
||||
|
|
|
@ -1,34 +0,0 @@
|
|||
{% extends "layout-login.twig" %}
|
||||
|
||||
{% block title %}{% trans "login to your wallabag" %}{% endblock %}
|
||||
{% block content %}
|
||||
{% if http_auth == 0 %}
|
||||
<form method="post" action="?login" name="loginform">
|
||||
<fieldset class="w500p center">
|
||||
<h2 class="mbs txtcenter">{% trans "Login to wallabag" %}</h2>
|
||||
{% if constant('MODE_DEMO') == 1 %}<p>{% trans "you are in demo mode, some features may be disabled." %}</p>{% endif %}
|
||||
<div class="row">
|
||||
<label class="col w150p" for="login">{% trans "Username" %}</label>
|
||||
<input class="col" type="text" id="login" name="login" placeholder="{% trans "Username" %}" tabindex="1" autofocus {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} />
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<label class="col w150p" for="password">{% trans "Password" %}</label>
|
||||
<input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2" {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} />
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
<div class="col">
|
||||
<input type="checkbox" id="longlastingsession" name="longlastingsession" tabindex="3" /> <label for="longlastingsession">{% trans "Stay signed in" %}</label><br />
|
||||
<small class="inbl">{% trans "(Do not check on public computers)" %}</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
<button class="bouton" type="submit" tabindex="4">{% trans "Sign in" %}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
<input type="hidden" name="returnurl" value="{{ referer }}">
|
||||
<input type="hidden" name="token" value="{{ token }}">
|
||||
</form>
|
||||
{% endif %}
|
||||
{% endblock %}
|
|
@ -1,13 +0,0 @@
|
|||
{% extends "layout.twig" %}
|
||||
{% block title %}Tags{% endblock %}
|
||||
{% block menu %}
|
||||
{% include '_menu.twig' %}
|
||||
{% endblock %}
|
||||
{% block content %}
|
||||
<h2>{% trans "Tags" %}</h2>
|
||||
<ul class="list-tags">
|
||||
{% for tag in tags %}<li>{% if token != '' %}<a class="icon icon-rss" href="?feed&type=tag&user_id={{ user_id }}&tag_id={{ tag.id }}&token={{ token }}" target="_blank"><span>rss</span></a>{% endif %} <a href="./?view=tag&id={{ tag.id }}">{{ tag.value }}</a> ({{ tag.entriescount }})
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endblock %}
|
|
@ -1,3 +0,0 @@
|
|||
name = Baggy
|
||||
description = Responsive black and white theme especially adapted to smartphones.
|
||||
requirements[] = default
|
Loading…
Add table
Add a link
Reference in a new issue