mirror of
https://github.com/wallabag/wallabag.git
synced 2024-10-31 22:28:54 +00:00
commit
7ba37bd91a
21 changed files with 831 additions and 153 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -2,4 +2,5 @@ vendor
|
|||
composer.phar
|
||||
db/poche.sqlite
|
||||
output
|
||||
phpdoc*
|
||||
phpdoc*
|
||||
inc/config/myconfig.inc.php
|
3
CONTRIBUTING.md
Normal file
3
CONTRIBUTING.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
# How contributing
|
||||
|
||||
When you create an issue on github, don't forget to give us your poche version. You can find it in config screen or in ./inc/poche/config.inc.php.
|
83
INSTALL.md
83
INSTALL.md
|
@ -1,53 +1,64 @@
|
|||
# Installing poche
|
||||
|
||||
Get the [latest version](https://github.com/inthepoche/poche/archive/1.0-beta1.zip) of poche on github. Unzip it and upload it on your server.
|
||||
## requirements
|
||||
|
||||
your datas can be stored on sqlite, postgres or mysql databases.
|
||||
it's highly recommended to have php cURL and tidy_parse_string to fetch articles content.
|
||||
|
||||
Edit /inc/poche/config.inc.php :
|
||||
## you don't want to install twig (the template engine) by yourself
|
||||
|
||||
Download this file http://static.inthepoche.com/files/poche-1.0-latest-with-twig.zip
|
||||
|
||||
Extract this file on your server.
|
||||
|
||||
## you want to install twig by yourself
|
||||
|
||||
Download the latest version here : http://www.inthepoche.com/?pages/T%C3%A9l%C3%A9charger-poche
|
||||
|
||||
Extract this file on your server.
|
||||
|
||||
```php
|
||||
define ('STORAGE','sqlite'); # postgres, mysql, sqlite
|
||||
define ('STORAGE_SERVER', 'localhost'); # leave blank for sqlite
|
||||
define ('STORAGE_DB', 'poche'); # only for postgres & mysql
|
||||
define ('STORAGE_SQLITE', './db/poche.sqlite');
|
||||
define ('STORAGE_USER', 'user'); # leave blank for sqlite
|
||||
define ('STORAGE_PASSWORD', 'pass'); # leave blank for sqlite
|
||||
```
|
||||
|
||||
poche must have write access on assets, cache and db directories.
|
||||
|
||||
[PHP cURL](http://www.php.net/manual/en/book.curl.php) & [tidy_parse_string](http://www.php.net/manual/en/tidy.parsestring.php) are recommended.
|
||||
|
||||
## twig
|
||||
poche now uses twig for templating. You have to install twig.
|
||||
|
||||
Install composer in your project :
|
||||
```bash
|
||||
curl -s http://getcomposer.org/installer | php
|
||||
```
|
||||
Install via composer :
|
||||
```bash
|
||||
php composer.phar install
|
||||
```
|
||||
|
||||
If you don't want to install twig by yourself, you can download [this file](http://static.inthepoche.com/files/poche-1.0-latest-with-twig.zip).
|
||||
### using sqlite
|
||||
|
||||
## storage in sqlite
|
||||
You have to install [sqlite for php](http://www.php.net/manual/en/book.sqlite.php) on your server.
|
||||
Copy / paste install/poche.sqlite in db folder.
|
||||
|
||||
Copy /install/poche.sqlite in /db
|
||||
### using mysql or postgresql
|
||||
|
||||
## storage in mysql
|
||||
Execute /install/mysql.sql file in your database.
|
||||
Execute the sql file in /install (mysql.sql or postgres.sql)
|
||||
|
||||
## storage in postgres
|
||||
Execute /install/postgres.sql file in your database.
|
||||
Then, go to step 3.
|
||||
|
||||
## upgrading from poche <= 0.3
|
||||
With poche <= 0.3, all your datas were stored in a sqlite file. The structure of this file changed.
|
||||
# Upgrading poche
|
||||
|
||||
You have to execute http://yourpoche/install/update_sqlite_from_0_to_1.php before using this new version.
|
||||
Replace all the files except **db/poche.sqlite**. Also remember to edit the file /inc/poche/config.inc.php.
|
||||
|
||||
## installing poche
|
||||
you can go on your poche http://yourpoche. You have to fill the fields and that's all !
|
||||
## Upgrading from poche <= 0.3
|
||||
|
||||
You have to execute http://yourpoche/install/update_sqlite_from_0_to_1.php
|
||||
|
||||
Then, go to step 3.
|
||||
|
||||
## Upgrading from poche >= 1.0 beta1
|
||||
|
||||
Nothing to do here.
|
||||
|
||||
Then, go to step 3.
|
||||
|
||||
# Here is the step 3
|
||||
|
||||
You must have write access on assets, cache and db directories. These directories may not exist, you'll have to create them.
|
||||
|
||||
You can use poche ! Enjoy.
|
||||
|
||||
# Some problems you may encounter
|
||||
|
||||
## Blank page
|
||||
|
||||
Be sure to have write access on assets, cache and db directories.
|
||||
|
||||
## PHP Fatal error: Call to a member function fetchAll() on a non-object in /var/www/poche/inc/poche/Database.class.php on line 42
|
||||
|
||||
If you want to install poche, delete the db/poche.sqlite file and copy / paste the install/poche.sqlite in /db. Be sure to have write access.
|
48
README.md
48
README.md
|
@ -1,42 +1,26 @@
|
|||
# poche
|
||||
Abandon Pocket, Instapaper and other Readability service : adopt poche. It is the same, but it is open source. Moreover, you can migrate from Pocket & Readability.
|
||||
# what is poche ?
|
||||
Abandon Pocket, Instapaper and other Readability service : adopt poche. It is the same, but it is free (like in freedom) and open source.
|
||||
|
||||
![poche](http://inthepoche.com/img/logo.png)
|
||||
## Some features
|
||||
|
||||
The website of poche is [inthepoche.com](http://inthepoche.com).
|
||||
* adding, deleting, archiving and setting as favorite a link
|
||||
* import from pocket / readability / instapaper
|
||||
* share links by email and on twitter
|
||||
* a design adapted to tablets and smartphones
|
||||
* extensions for Chrome and Firefox
|
||||
* Android application
|
||||
* multi languages (very soon!)
|
||||
* multi users (very soon!)
|
||||
* update notification in configuration screen
|
||||
* many storage modes (sqlite, mysql, postgresql)
|
||||
* many templates
|
||||
* ...
|
||||
|
||||
To test poche, a demo website is online : [demo.inthepoche.com](http://demo.inthepoche.com) (login poche, password poche).
|
||||
|
||||
To get news from poche, [follow us on twitter](http://twitter.com/getpoche) or [read the poche blog](http://inthepoche.com/blog). A Google Group is also available : [poche-users](https://groups.google.com/forum/#!forum/poche-users).
|
||||
|
||||
[![flattr](http://api.flattr.com/button/flattr-badge-large.png)](http://flattr.com/thing/1265480/poche-a-read-it-later-open-source-system)
|
||||
|
||||
## Installation
|
||||
|
||||
Read the INSTALL.md file.
|
||||
|
||||
## Security
|
||||
You **have** to protect your db/poche.sqlite file. Modify the virtual host of your website to add this condition :
|
||||
```apache
|
||||
<Files ~ "\.sqlite$">
|
||||
Order allow,deny
|
||||
Deny from all
|
||||
</Files>
|
||||
```
|
||||
|
||||
Nginx version:
|
||||
```nginx
|
||||
location ~ /(db) {
|
||||
deny all;
|
||||
return 404;
|
||||
}
|
||||
```
|
||||
|
||||
## Usage
|
||||
See the documentation on our website : [inthepoche.com](http://inthepoche.com).
|
||||
|
||||
## Travis
|
||||
[![Build Status](https://api.travis-ci.org/inthepoche/poche.png?branch=dev)](http://travis-ci.org/#!/inthepoche/poche)
|
||||
Read the [INSTALL.md file](https://github.com/inthepoche/poche/blob/master/INSTALL.md).
|
||||
|
||||
## License
|
||||
Copyright © 2010-2013 Nicolas Lœuillet <nicolas.loeuillet@gmail.com>
|
||||
|
|
|
@ -18,11 +18,10 @@ class Poche
|
|||
|
||||
function __construct()
|
||||
{
|
||||
if (file_exists('./install') && !DEBUG_POCHE) {
|
||||
Tools::logm('folder /install exists');
|
||||
die('To install your poche with sqlite, copy /install/poche.sqlite in /db and delete the folder /install. you have to delete the /install folder before using poche.');
|
||||
$this->initTpl();
|
||||
if (!$this->checkBeforeInstall()) {
|
||||
exit;
|
||||
}
|
||||
|
||||
$this->store = new Database();
|
||||
$this->init();
|
||||
$this->messages = new Messages();
|
||||
|
@ -34,6 +33,63 @@ class Poche
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* all checks before installation.
|
||||
* @return boolean
|
||||
*/
|
||||
private function checkBeforeInstall()
|
||||
{
|
||||
$msg = '';
|
||||
$allIsGood = TRUE;
|
||||
|
||||
if (!is_writable(CACHE)) {
|
||||
Tools::logm('you don\'t have write access on cache directory');
|
||||
die('You don\'t have write access on cache directory.');
|
||||
}
|
||||
else if (file_exists('./install/update.php') && !DEBUG_POCHE) {
|
||||
$msg = 'A poche update is needed. Please execute this update <a href="install/update.php">by clicking here</a>. If you have already do the update, please delete /install folder.';
|
||||
$allIsGood = FALSE;
|
||||
}
|
||||
else if (file_exists('./install') && !DEBUG_POCHE) {
|
||||
$msg = 'If you want to update your poche, you just have to delete /install folder. <br />To install your poche with sqlite, copy /install/poche.sqlite in /db and delete the folder /install. you have to delete the /install folder before using poche.';
|
||||
$allIsGood = FALSE;
|
||||
}
|
||||
else if (STORAGE == 'sqlite' && !is_writable(STORAGE_SQLITE)) {
|
||||
Tools::logm('you don\'t have write access on sqlite file');
|
||||
$msg = 'You don\'t have write access on sqlite file.';
|
||||
$allIsGood = FALSE;
|
||||
}
|
||||
|
||||
if (!$allIsGood) {
|
||||
echo $this->tpl->render('error.twig', array(
|
||||
'msg' => $msg
|
||||
));
|
||||
}
|
||||
|
||||
return $allIsGood;
|
||||
}
|
||||
|
||||
private function initTpl()
|
||||
{
|
||||
# template engine
|
||||
$loader = new Twig_Loader_Filesystem(TPL);
|
||||
if (DEBUG_POCHE) {
|
||||
$twig_params = array();
|
||||
}
|
||||
else {
|
||||
$twig_params = array('cache' => CACHE);
|
||||
}
|
||||
$this->tpl = new Twig_Environment($loader, $twig_params);
|
||||
$this->tpl->addExtension(new Twig_Extensions_Extension_I18n());
|
||||
# filter to display domain name of an url
|
||||
$filter = new Twig_SimpleFilter('getDomain', 'Tools::getDomain');
|
||||
$this->tpl->addFilter($filter);
|
||||
|
||||
# filter for reading time
|
||||
$filter = new Twig_SimpleFilter('getReadingTime', 'Tools::getReadingTime');
|
||||
$this->tpl->addFilter($filter);
|
||||
}
|
||||
|
||||
private function init()
|
||||
{
|
||||
Tools::initPhp();
|
||||
|
@ -55,24 +111,6 @@ class Poche
|
|||
bindtextdomain($language, LOCALE);
|
||||
textdomain($language);
|
||||
|
||||
# template engine
|
||||
$loader = new Twig_Loader_Filesystem(TPL);
|
||||
if (DEBUG_POCHE) {
|
||||
$twig_params = array();
|
||||
}
|
||||
else {
|
||||
$twig_params = array('cache' => CACHE);
|
||||
}
|
||||
$this->tpl = new Twig_Environment($loader, $twig_params);
|
||||
$this->tpl->addExtension(new Twig_Extensions_Extension_I18n());
|
||||
# filter to display domain name of an url
|
||||
$filter = new Twig_SimpleFilter('getDomain', 'Tools::getDomain');
|
||||
$this->tpl->addFilter($filter);
|
||||
|
||||
# filter for reading time
|
||||
$filter = new Twig_SimpleFilter('getReadingTime', 'Tools::getReadingTime');
|
||||
$this->tpl->addFilter($filter);
|
||||
|
||||
# Pagination
|
||||
$this->pagination = new Paginator($this->user->getConfigValue('pager'), 'p');
|
||||
}
|
||||
|
@ -87,10 +125,12 @@ class Poche
|
|||
if (($_POST['password'] == $_POST['password_repeat'])
|
||||
&& $_POST['password'] != "" && $_POST['login'] != "") {
|
||||
# let's rock, install poche baby !
|
||||
$this->store->install($_POST['login'], Tools::encodeString($_POST['password'] . $_POST['login']));
|
||||
Session::logout();
|
||||
Tools::logm('poche is now installed');
|
||||
Tools::redirect();
|
||||
if ($this->store->install($_POST['login'], Tools::encodeString($_POST['password'] . $_POST['login'])))
|
||||
{
|
||||
Session::logout();
|
||||
Tools::logm('poche is now installed');
|
||||
Tools::redirect();
|
||||
}
|
||||
}
|
||||
else {
|
||||
Tools::logm('error during installation');
|
||||
|
@ -180,6 +220,7 @@ class Poche
|
|||
}
|
||||
break;
|
||||
default:
|
||||
Tools::logm('action ' . $action . 'doesn\'t exist');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -409,9 +450,11 @@ class Poche
|
|||
$str_data = file_get_contents("./readability");
|
||||
$data = json_decode($str_data,true);
|
||||
Tools::logm('starting import from Readability');
|
||||
|
||||
$count = 0;
|
||||
foreach ($data as $key => $value) {
|
||||
$url = '';
|
||||
$url = NULL;
|
||||
$favorite = FALSE;
|
||||
$archive = FALSE;
|
||||
foreach ($value as $attr => $attr_value) {
|
||||
if ($attr == 'article__url') {
|
||||
$url = new Url(base64_encode($attr_value));
|
||||
|
@ -420,20 +463,30 @@ class Poche
|
|||
if (STORAGE == 'postgres') {
|
||||
$sequence = 'entries_id_seq';
|
||||
}
|
||||
// if ($attr_value == 'favorite' && $attr_value == 'true') {
|
||||
// $last_id = $this->store->getLastId($sequence);
|
||||
// $this->store->favoriteById($last_id);
|
||||
// $this->action('toogle_fav', $url, $last_id, TRUE);
|
||||
// }
|
||||
if ($attr_value == 'archive' && $attr_value == 'true') {
|
||||
if ($attr_value == 'true') {
|
||||
if ($attr == 'favorite') {
|
||||
$favorite = TRUE;
|
||||
}
|
||||
if ($attr == 'archive') {
|
||||
$archive = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
# we can add the url
|
||||
if (!is_null($url) && $url->isCorrect()) {
|
||||
$this->action('add', $url, 0, TRUE);
|
||||
$count++;
|
||||
if ($favorite) {
|
||||
$last_id = $this->store->getLastId($sequence);
|
||||
$this->action('toggle_fav', $url, $last_id, TRUE);
|
||||
}
|
||||
if ($archive) {
|
||||
$last_id = $this->store->getLastId($sequence);
|
||||
$this->action('toggle_archive', $url, $last_id, TRUE);
|
||||
}
|
||||
}
|
||||
if ($url->isCorrect())
|
||||
$this->action('add', $url, 0, TRUE);
|
||||
}
|
||||
$this->messages->add('s', _('import from Readability completed'));
|
||||
$this->messages->add('s', _('import from Readability completed. ' . $count . ' new links.'));
|
||||
Tools::logm('import from Readability completed');
|
||||
Tools::redirect();
|
||||
}
|
||||
|
|
|
@ -233,4 +233,30 @@ class Tools
|
|||
|
||||
return $minutes;
|
||||
}
|
||||
|
||||
|
||||
public static function createMyConfig()
|
||||
{
|
||||
$myconfig_file = './inc/poche/myconfig.inc.php';
|
||||
|
||||
if (version_compare(POCHE_VERSION, '1.0-beta3') == 1) {
|
||||
# $myconfig_file is only created with poche > 1.0-beta3
|
||||
# in 1.0-beta3, the update script creates $myconfig_file
|
||||
|
||||
if (!is_writable('./inc/poche/')) {
|
||||
self::logm('you don\'t have write access to create ./inc/poche/myconfig.inc.php');
|
||||
die('You don\'t have write access to create ./inc/poche/myconfig.inc.php.');
|
||||
}
|
||||
|
||||
if (!file_exists($myconfig_file))
|
||||
{
|
||||
$fp = fopen($myconfig_file, 'w');
|
||||
fwrite($fp, '<?php'."\r\n");
|
||||
fwrite($fp, "define ('POCHE_VERSION', '1.0-beta3');" . "\r\n");
|
||||
fwrite($fp, "define ('SALT', '" . md5(time() . $_SERVER['SCRIPT_FILENAME'] . rand()) . "');" . "\r\n");
|
||||
fwrite($fp, "define ('LANG', 'en_EN.utf8');" . "\r\n");
|
||||
fclose($fp);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -27,7 +27,7 @@ class Url
|
|||
|
||||
public function isCorrect()
|
||||
{
|
||||
$pattern = '|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i';
|
||||
$pattern = '|^(.*:)//([a-z\-.]+)(:[0-9]+)?(.*)$|i';
|
||||
|
||||
return preg_match($pattern, $this->url);
|
||||
}
|
||||
|
|
57
inc/poche/config.inc.php
Normal file → Executable file
57
inc/poche/config.inc.php
Normal file → Executable file
|
@ -8,47 +8,30 @@
|
|||
* @license http://www.wtfpl.net/ see COPYING file
|
||||
*/
|
||||
|
||||
# storage
|
||||
define ('STORAGE','sqlite'); # postgres, mysql, sqlite
|
||||
define ('STORAGE_SERVER', 'localhost'); # leave blank for sqlite
|
||||
define ('STORAGE_DB', 'poche'); # only for postgres & mysql
|
||||
define ('STORAGE_SQLITE', './db/poche.sqlite');
|
||||
define ('STORAGE_USER', 'postgres'); # leave blank for sqlite
|
||||
define ('STORAGE_PASSWORD', 'postgres'); # leave blank for sqlite
|
||||
|
||||
define ('POCHE_VERSION', '1.0-beta1');
|
||||
define ('MODE_DEMO', FALSE);
|
||||
define ('DEBUG_POCHE', FALSE);
|
||||
define ('CONVERT_LINKS_FOOTNOTES', FALSE);
|
||||
define ('REVERT_FORCED_PARAGRAPH_ELEMENTS', FALSE);
|
||||
define ('DOWNLOAD_PICTURES', FALSE);
|
||||
define ('SHARE_TWITTER', TRUE);
|
||||
define ('SHARE_MAIL', TRUE);
|
||||
define ('SALT', '464v54gLLw928uz4zUBqkRJeiPY68zCX');
|
||||
define ('ABS_PATH', 'assets/');
|
||||
define ('TPL', './tpl');
|
||||
define ('LOCALE', './locale');
|
||||
define ('CACHE', './cache');
|
||||
define ('LANG', 'en_EN.UTF8');
|
||||
define ('PAGINATION', '10');
|
||||
define ('THEME', 'light');
|
||||
require_once __DIR__ . '/../../inc/poche/define.inc.php';
|
||||
|
||||
# /!\ Be careful if you change the lines below /!\
|
||||
require_once './inc/poche/User.class.php';
|
||||
require_once './inc/poche/Tools.class.php';
|
||||
require_once './inc/poche/Url.class.php';
|
||||
require_once './inc/3rdparty/class.messages.php';
|
||||
require_once './inc/poche/Poche.class.php';
|
||||
require_once './inc/3rdparty/Readability.php';
|
||||
require_once './inc/3rdparty/Encoding.php';
|
||||
require_once './inc/poche/Database.class.php';
|
||||
require_once './vendor/autoload.php';
|
||||
require_once './inc/3rdparty/simple_html_dom.php';
|
||||
require_once './inc/3rdparty/paginator.php';
|
||||
require_once './inc/3rdparty/Session.class.php';
|
||||
if (!file_exists(__DIR__ . '/../../vendor/autoload.php')) {
|
||||
die('Twig does not seem installed. Have a look at <a href="http://inthepoche.com/?pages/Documentation">the documentation.</a>');
|
||||
}
|
||||
|
||||
if (file_exists(__DIR__ . '/../../inc/poche/myconfig.inc.php')) {
|
||||
require_once __DIR__ . '/../../inc/poche/myconfig.inc.php';
|
||||
}
|
||||
require_once __DIR__ . '/../../inc/poche/User.class.php';
|
||||
require_once __DIR__ . '/../../inc/poche/Url.class.php';
|
||||
require_once __DIR__ . '/../../inc/3rdparty/class.messages.php';
|
||||
require_once __DIR__ . '/../../inc/poche/Poche.class.php';
|
||||
require_once __DIR__ . '/../../inc/3rdparty/Readability.php';
|
||||
require_once __DIR__ . '/../../inc/3rdparty/Encoding.php';
|
||||
require_once __DIR__ . '/../../inc/poche/Database.class.php';
|
||||
require_once __DIR__ . '/../../vendor/autoload.php';
|
||||
require_once __DIR__ . '/../../inc/3rdparty/simple_html_dom.php';
|
||||
require_once __DIR__ . '/../../inc/3rdparty/paginator.php';
|
||||
require_once __DIR__ . '/../../inc/3rdparty/Session.class.php';
|
||||
|
||||
if (DOWNLOAD_PICTURES) {
|
||||
require_once './inc/poche/pochePictures.php';
|
||||
require_once __DIR__ . '/../../inc/poche/pochePictures.php';
|
||||
}
|
||||
|
||||
$poche = new Poche();
|
||||
|
|
30
inc/poche/define.inc.php
Normal file
30
inc/poche/define.inc.php
Normal file
|
@ -0,0 +1,30 @@
|
|||
<?php
|
||||
/**
|
||||
* poche, a read it later open source system
|
||||
*
|
||||
* @category poche
|
||||
* @author Nicolas Lœuillet <nicolas@loeuillet.org>
|
||||
* @copyright 2013
|
||||
* @license http://www.wtfpl.net/ see COPYING file
|
||||
*/
|
||||
|
||||
define ('STORAGE','sqlite'); # postgres, mysql, sqlite
|
||||
define ('STORAGE_SERVER', 'localhost'); # leave blank for sqlite
|
||||
define ('STORAGE_DB', 'poche'); # only for postgres & mysql
|
||||
define ('STORAGE_SQLITE', __DIR__ . '/../../db/poche.sqlite');
|
||||
define ('STORAGE_USER', 'postgres'); # leave blank for sqlite
|
||||
define ('STORAGE_PASSWORD', 'postgres'); # leave blank for sqlite
|
||||
|
||||
define ('MODE_DEMO', FALSE);
|
||||
define ('DEBUG_POCHE', FALSE);
|
||||
define ('CONVERT_LINKS_FOOTNOTES', FALSE);
|
||||
define ('REVERT_FORCED_PARAGRAPH_ELEMENTS', FALSE);
|
||||
define ('DOWNLOAD_PICTURES', FALSE);
|
||||
define ('SHARE_TWITTER', TRUE);
|
||||
define ('SHARE_MAIL', TRUE);
|
||||
define ('ABS_PATH', 'assets/');
|
||||
define ('TPL', __DIR__ . '/../../tpl');
|
||||
define ('LOCALE', __DIR__ . '/../../locale');
|
||||
define ('CACHE', __DIR__ . '/../../cache');
|
||||
define ('PAGINATION', '10');
|
||||
define ('THEME', 'light');
|
|
@ -8,6 +8,9 @@
|
|||
* @license http://www.wtfpl.net/ see COPYING file
|
||||
*/
|
||||
|
||||
require_once './inc/poche/Tools.class.php';
|
||||
Tools::createMyConfig();
|
||||
|
||||
include dirname(__FILE__).'/inc/poche/config.inc.php';
|
||||
|
||||
# Parse GET & REFERER vars
|
||||
|
|
79
install/update.php
Normal file
79
install/update.php
Normal file
|
@ -0,0 +1,79 @@
|
|||
<?php
|
||||
require_once dirname(__FILE__).'/../inc/poche/Tools.class.php';
|
||||
include dirname(__FILE__).'/../inc/poche/define.inc.php';
|
||||
require_once __DIR__ . '/../inc/poche/Database.class.php';
|
||||
$store = new Database();
|
||||
$old_salt = '464v54gLLw928uz4zUBqkRJeiPY68zCX';
|
||||
?>
|
||||
<!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>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>updating poche</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>update poche to 1.0-beta3</h1>
|
||||
|
||||
<h2>Changelog</h2>
|
||||
<p>
|
||||
<ul>
|
||||
<li>this awesome updating step</li>
|
||||
<li>error message when install folder exists</li>
|
||||
<li>more tests before installation (write access, etc.)</li>
|
||||
<li>updated README to make installation easier</li>
|
||||
<li>german language thanks to HLFH</li>
|
||||
<li>spanish language thanks to Nitche</li>
|
||||
<li>new file ./inc/poche/myconfig.inc.php created to store language and salt</li>
|
||||
<li><a href="https://github.com/inthepoche/poche/issues/119">#119</a>: salt is now created when installing poche</li>
|
||||
<li><a href="https://github.com/inthepoche/poche/issues/130">#130</a>: robots.txt added</li>
|
||||
<li><a href="https://github.com/inthepoche/poche/issues/136">#136</a>: error during readability import</li>
|
||||
<li><a href="https://github.com/inthepoche/poche/issues/137">#137</a>: mixed content alert in https</li>
|
||||
<li><a href="https://github.com/inthepoche/poche/issues/138">#138</a>: change pattern to parse url with #</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>To update your poche, please fill the following fields.</p>
|
||||
<p>
|
||||
<form name="update" method="post">
|
||||
<div><label for="login">login:</label> <input type="text" name="login" id="login" /></div>
|
||||
<div><label for="password">password:</label> <input type="password" name="password" id="password" /></div>
|
||||
<div><input type="hidden" name="go" value="ok" /><input type="submit" value="update" /></div>
|
||||
</form>
|
||||
</p>
|
||||
<?php
|
||||
if (isset($_POST['go'])) {
|
||||
if (!empty($_POST['login']) && !empty($_POST['password'])) {
|
||||
$user = $store->login($_POST['login'], sha1($_POST['password'] . $_POST['login'] . $old_salt));
|
||||
if ($user != array()) {
|
||||
$new_salt = md5(time() . $_SERVER['SCRIPT_FILENAME'] . rand());
|
||||
$myconfig_file = '../inc/poche/myconfig.inc.php';
|
||||
if (!is_writable('../inc/poche/')) {
|
||||
die('You don\'t have write access to create ./inc/poche/myconfig.inc.php.');
|
||||
}
|
||||
|
||||
if (!file_exists($myconfig_file))
|
||||
{
|
||||
$fp = fopen($myconfig_file, 'w');
|
||||
|
||||
fwrite($fp, '<?php'."\r\n");
|
||||
fwrite($fp, "define ('POCHE_VERSION', '1.0-beta3');" . "\r\n");
|
||||
fwrite($fp, "define ('SALT', '" . $new_salt . "');" . "\r\n");
|
||||
fwrite($fp, "define ('LANG', 'en_EN.utf8');" . "\r\n");
|
||||
fclose($fp);
|
||||
}
|
||||
# faire une mise à jour de la table users en prenant en compte le nouveau SALT généré
|
||||
$store->updatePassword($user['id'], sha1($_POST['password'] . $_POST['login'] . $new_salt));
|
||||
?>
|
||||
<p><span style="color: green;">your poche is up to date!</span></p>
|
||||
<p><span style="color: red;">don't forget to delete ./install/ folder after the update.</span></p>
|
||||
<p><a href="../">go back to your poche</a></p>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
BIN
locale/de_DE.utf8/LC_MESSAGES/de_DE.utf8.mo
Normal file
BIN
locale/de_DE.utf8/LC_MESSAGES/de_DE.utf8.mo
Normal file
Binary file not shown.
114
locale/de_DE.utf8/LC_MESSAGES/de_DE.utf8.po
Normal file
114
locale/de_DE.utf8/LC_MESSAGES/de_DE.utf8.po
Normal file
|
@ -0,0 +1,114 @@
|
|||
#
|
||||
# Translators:
|
||||
# HLFH <gaspard.dhautefeuille@gmail.com>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: poche\n"
|
||||
"POT-Creation-Date: 2013-08-02 10:26+0100\n"
|
||||
"PO-Revision-Date: 2013-08-06 11:48+0100\n"
|
||||
"Last-Translator: Nicolas Lœuillet <nicolas.loeuillet@gmail.com>\n"
|
||||
"Language-Team: German (http://www.transifex.com/projects/p/poche/language/"
|
||||
"de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: de\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 1.5.4\n"
|
||||
"X-Poedit-Basepath: /\n"
|
||||
"X-Poedit-KeywordsList: _;gettext;gettext_noop\n"
|
||||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Poedit-SearchPath-0: /var/www/poche-i18n\n"
|
||||
|
||||
#: /var/www/poche-i18n/import.php:17
|
||||
msgid "Please execute the import script locally, it can take a very long time."
|
||||
msgstr ""
|
||||
"Wir danken Ihnen, den Import in lokal zu ausführen, kann es einige Zeit "
|
||||
"dauern."
|
||||
|
||||
#: /var/www/poche-i18n/import.php:17
|
||||
msgid "Please choose between Pocket & Readabilty :"
|
||||
msgstr "Wir danken Ihnen, zwischen Pocket und Readability zu wählen:"
|
||||
|
||||
#: /var/www/poche-i18n/import.php:17
|
||||
msgid "Bye bye Pocket, let's go !"
|
||||
msgstr "Auf wiedersehen Pocket, auf geht's!"
|
||||
|
||||
#: /var/www/poche-i18n/import.php:17
|
||||
msgid "Bye bye Readability, let's go !"
|
||||
msgstr "Auf wiedersehen Readability, auf geht's!"
|
||||
|
||||
#: /var/www/poche-i18n/import.php:48
|
||||
msgid "Import from Pocket completed."
|
||||
msgstr "Der Import aus Poche ist abgeschlossen."
|
||||
|
||||
#: /var/www/poche-i18n/import.php:48 /var/www/poche-i18n/import.php:66
|
||||
msgid "Welcome to poche !"
|
||||
msgstr "Willkommen in Poche!"
|
||||
|
||||
#: /var/www/poche-i18n/import.php:66
|
||||
msgid "Import from Readability completed."
|
||||
msgstr "Der Import aus Readability ist abgeschlossen."
|
||||
|
||||
#: /var/www/poche-i18n/import.php:70
|
||||
msgid "Error with the import."
|
||||
msgstr "Fehler beim Import."
|
||||
|
||||
#: /var/www/poche-i18n/import.php:70
|
||||
msgid "Back to poche"
|
||||
msgstr "Rückkehr zu Poche"
|
||||
|
||||
#: /var/www/poche-i18n/index.php:18
|
||||
msgid "Wrong token."
|
||||
msgstr "Ungültiges Token."
|
||||
|
||||
#: /var/www/poche-i18n/index.php:43
|
||||
msgid "Login failed !"
|
||||
msgstr "Fehler bei der Anmeldung."
|
||||
|
||||
#: /var/www/poche-i18n/index.php:59
|
||||
msgid "your password has been updated"
|
||||
msgstr "Ihr Passwort wurde aktualisiert."
|
||||
|
||||
#: /var/www/poche-i18n/index.php:62
|
||||
msgid "in demo mode, you can't update password"
|
||||
msgstr "Im Demo-Modus kann das Passwort nicht geändert werden."
|
||||
|
||||
#: /var/www/poche-i18n/index.php:66
|
||||
msgid ""
|
||||
"your password can't be empty and you have to repeat it in the second field"
|
||||
msgstr ""
|
||||
"Ihr Passwort darf nicht leer sein, und Sie müssen es in das zweite Feld zu "
|
||||
"wiederholen."
|
||||
|
||||
#: /var/www/poche-i18n/index.php:83
|
||||
msgid "poche, a read it later open source system"
|
||||
msgstr "Poche, eine Opensourceanwendung, um später zu lesen"
|
||||
|
||||
#: /var/www/poche-i18n/inc/MyTool.class.php:18
|
||||
msgid "Oops, it seems you don't have PHP 5."
|
||||
msgstr "Hoppla, scheint es, dass PHP 5 nicht installiert ist."
|
||||
|
||||
#: /var/www/poche-i18n/inc/functions.php:352
|
||||
msgid "the link has been added successfully"
|
||||
msgstr "der Link wurde erfolgreich hinzugefügt"
|
||||
|
||||
#: /var/www/poche-i18n/inc/functions.php:355
|
||||
msgid "error during insertion : the link wasn't added"
|
||||
msgstr "Fehler beim Einfügen: der Link wurde nicht hinzugefügt"
|
||||
|
||||
#: /var/www/poche-i18n/inc/functions.php:359
|
||||
msgid "error during url preparation : the link wasn't added"
|
||||
msgstr "Fehler beim Einfügen: der Link wurde nicht hinzugefügt"
|
||||
|
||||
#: /var/www/poche-i18n/inc/functions.php:364
|
||||
msgid "error during url preparation : the link is not valid"
|
||||
msgstr "Fehler bei der Herstellung der URL: der Link ist nicht gültig"
|
||||
|
||||
#: /var/www/poche-i18n/inc/functions.php:373
|
||||
msgid "the link has been deleted successfully"
|
||||
msgstr "der Link wurde erfolgreich hinzugefügt"
|
||||
|
||||
#: /var/www/poche-i18n/inc/functions.php:377
|
||||
msgid "the link wasn't deleted"
|
||||
msgstr "der Link wurde nicht entfernt."
|
BIN
locale/es_ES.utf8/LC_MESSAGES/es_ES.utf8.mo
Normal file
BIN
locale/es_ES.utf8/LC_MESSAGES/es_ES.utf8.mo
Normal file
Binary file not shown.
382
locale/es_ES.utf8/LC_MESSAGES/es_ES.utf8.po
Normal file
382
locale/es_ES.utf8/LC_MESSAGES/es_ES.utf8.po
Normal file
|
@ -0,0 +1,382 @@
|
|||
#
|
||||
# Translators:
|
||||
# Nitche <nicolas.canseco@gmail.com>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: poche\n"
|
||||
"POT-Creation-Date: 2013-08-06 08:35+0100\n"
|
||||
"PO-Revision-Date: 2013-08-16 19:09+0100\n"
|
||||
"Last-Translator: Nicolas Lœuillet <nicolas.loeuillet@gmail.com>\n"
|
||||
"Language-Team: Spanish (http://www.transifex.com/projects/p/poche/language/"
|
||||
"es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Language: es\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 1.5.4\n"
|
||||
"X-Poedit-Basepath: /\n"
|
||||
"X-Poedit-KeywordsList: _;gettext;gettext_noop\n"
|
||||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Poedit-SearchPath-0: /var/www/poche-i18n\n"
|
||||
|
||||
#: /var/www/poche-i18n/index.php:43
|
||||
msgid "poche, a read it later open source system"
|
||||
msgstr "poche, a read it later open source system"
|
||||
|
||||
#: /var/www/poche-i18n/inc/poche/Poche.class.php:101
|
||||
msgid "the link has been added successfully"
|
||||
msgstr "el enlace a sido agregado con éxito"
|
||||
|
||||
#: /var/www/poche-i18n/inc/poche/Poche.class.php:104
|
||||
msgid "error during insertion : the link wasn't added"
|
||||
msgstr "error en la inserción : el enlace no ha sido agregado"
|
||||
|
||||
#: /var/www/poche-i18n/inc/poche/Poche.class.php:109
|
||||
msgid "error during fetching content : the link wasn't added"
|
||||
msgstr ""
|
||||
"error durante la recuperación del contenido : el enlace no a sido agregado"
|
||||
|
||||
#: /var/www/poche-i18n/inc/poche/Poche.class.php:119
|
||||
msgid "the link has been deleted successfully"
|
||||
msgstr "el enlace a sido suprimido con éxito"
|
||||
|
||||
#: /var/www/poche-i18n/inc/poche/Poche.class.php:123
|
||||
msgid "the link wasn't deleted"
|
||||
msgstr "el enlace no ha sido suprimido"
|
||||
|
||||
#: /var/www/poche-i18n/inc/poche/Tools.class.php:18
|
||||
msgid "Oops, it seems you don't have PHP 5."
|
||||
msgstr "Parece que PHP 5 no está instalado"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:32
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:70
|
||||
#: /var/www/poche-i18n/cache/76/a4/e7c21f2e0ba29104fc654cd8ba41.php:50
|
||||
msgid "config"
|
||||
msgstr "configuración"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:46
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:31
|
||||
#: /var/www/poche-i18n/cache/76/a4/e7c21f2e0ba29104fc654cd8ba41.php:26
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:34
|
||||
msgid "home"
|
||||
msgstr "inicio"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:54
|
||||
#: /var/www/poche-i18n/cache/76/a4/e7c21f2e0ba29104fc654cd8ba41.php:34
|
||||
msgid "favorites"
|
||||
msgstr "favoritos"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:62
|
||||
#: /var/www/poche-i18n/cache/76/a4/e7c21f2e0ba29104fc654cd8ba41.php:42
|
||||
msgid "archive"
|
||||
msgstr "archivos"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:74
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:76
|
||||
#: /var/www/poche-i18n/cache/76/a4/e7c21f2e0ba29104fc654cd8ba41.php:54
|
||||
#: /var/www/poche-i18n/cache/76/a4/e7c21f2e0ba29104fc654cd8ba41.php:56
|
||||
msgid "logout"
|
||||
msgstr "desconexión "
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:87
|
||||
msgid "Bookmarklet"
|
||||
msgstr "Bookmarklet"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:91
|
||||
msgid ""
|
||||
"Thanks to the bookmarklet, you will be able to easily add a link to your "
|
||||
"poche."
|
||||
msgstr ""
|
||||
"Gracias a tu bookmarklet, puedes agregar fácilmente un enlace en tu bolsillo"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:93
|
||||
msgid "Have a look to this documentation:"
|
||||
msgstr "échale un ojo a la documentación :"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:97
|
||||
msgid "Drag & drop this link to your bookmarks bar and have fun with poche."
|
||||
msgstr ""
|
||||
"Arrastra y suelta ese enlace en tu barra de favoritos en tu navegador y "
|
||||
"disfruta de tu poche."
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:103
|
||||
msgid "poche it!"
|
||||
msgstr "pochéalo!"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:108
|
||||
msgid "Updating poche"
|
||||
msgstr "Actualizar"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:113
|
||||
msgid "your version"
|
||||
msgstr "su versión"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:119
|
||||
msgid "latest stable version"
|
||||
msgstr "ultima versión estable"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:125
|
||||
msgid "a more recent stable version is available."
|
||||
msgstr "una versión estable más reciente está disponible"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:128
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:142
|
||||
msgid "you are up to date."
|
||||
msgstr "estás al día"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:133
|
||||
msgid "latest dev version"
|
||||
msgstr "ultima versión de desarollo"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:139
|
||||
msgid "a more recent development version is available."
|
||||
msgstr "una versión de desarollo más reciente está disponible"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:150
|
||||
msgid "Change your password"
|
||||
msgstr "Modificar tu contraseña"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:157
|
||||
msgid "New password:"
|
||||
msgstr "Nueva contraseña :"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:161
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:171
|
||||
#: /var/www/poche-i18n/cache/d4/28/e0d08991ec2d8a7b133505e7c651.php:60
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:68
|
||||
msgid "Password"
|
||||
msgstr "Contraseña"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:167
|
||||
msgid "Repeat your new password:"
|
||||
msgstr "Repetir la nueva contraseña :"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:177
|
||||
msgid "Update"
|
||||
msgstr "Poner al día"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:193
|
||||
msgid "Import"
|
||||
msgstr "Importar"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:197
|
||||
msgid "Please execute the import script locally, it can take a very long time."
|
||||
msgstr ""
|
||||
"Gracias por ejecutar la importación en local, esto puede demorar un tiempo"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:201
|
||||
msgid "More infos in the official doc:"
|
||||
msgstr "Más información en la documentación oficial :"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:206
|
||||
msgid "import from Pocket"
|
||||
msgstr "la importación desde Pocket está terminada"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:210
|
||||
msgid "import from Readability"
|
||||
msgstr "la importación desde Readability está terminada"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:214
|
||||
msgid "import from Instapaper"
|
||||
msgstr "Importar desde Instapaper"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:220
|
||||
msgid "Export your poche datas"
|
||||
msgstr "Exportar sus datos de poche"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:224
|
||||
msgid "Click here"
|
||||
msgstr "Haga clic aquí"
|
||||
|
||||
#: /var/www/poche-i18n/cache/c9/b0/845a8dc93165e6c00b6b43068799.php:226
|
||||
msgid "to export your poche datas."
|
||||
msgstr "Para exportar sus datos de poche"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:46
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:139
|
||||
#: /var/www/poche-i18n/cache/30/97/b548692380c89d047a16cec7af79.php:22
|
||||
msgid "back to home"
|
||||
msgstr "volver a la pagina de inicio"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:50
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:147
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:119
|
||||
msgid "toggle mark as read"
|
||||
msgstr "marcar como leído"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:60
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:157
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:129
|
||||
msgid "toggle favorite"
|
||||
msgstr "favorito"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:70
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:167
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:139
|
||||
msgid "delete"
|
||||
msgstr "suprimir"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:82
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:179
|
||||
msgid "tweet"
|
||||
msgstr "tweetear"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:93
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:190
|
||||
msgid "email"
|
||||
msgstr "enviar por mail"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:109
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:125
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:153
|
||||
msgid "original"
|
||||
msgstr "original"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:143
|
||||
msgid "back to top"
|
||||
msgstr "volver arriba"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:198
|
||||
msgid "this article appears wrong?"
|
||||
msgstr "este articulo no se ve bien ?"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:200
|
||||
msgid "create an issue"
|
||||
msgstr "crear un ticket"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:202
|
||||
msgid "or"
|
||||
msgstr "o"
|
||||
|
||||
#: /var/www/poche-i18n/cache/7a/1e/68e6b4aec1301ae024cc85232e7c.php:206
|
||||
msgid "contact us by mail"
|
||||
msgstr "contactarnos por mail"
|
||||
|
||||
#: /var/www/poche-i18n/cache/88/8a/ee3b7080c13204391c14947a0c2c.php:22
|
||||
msgid "powered by"
|
||||
msgstr "propulsado por"
|
||||
|
||||
#: /var/www/poche-i18n/cache/d4/28/e0d08991ec2d8a7b133505e7c651.php:31
|
||||
msgid "installation"
|
||||
msgstr "instalacion"
|
||||
|
||||
#: /var/www/poche-i18n/cache/d4/28/e0d08991ec2d8a7b133505e7c651.php:42
|
||||
msgid "install your poche"
|
||||
msgstr "instala tu poche"
|
||||
|
||||
#: /var/www/poche-i18n/cache/d4/28/e0d08991ec2d8a7b133505e7c651.php:47
|
||||
msgid ""
|
||||
"poche is still not installed. Please fill the below form to install it. "
|
||||
"Don't hesitate to <a href='http://inthepoche.com/?pages/Documentation'>read "
|
||||
"the documentation on poche website</a>."
|
||||
msgstr ""
|
||||
"poche todavia no està instalado. Gracias de llenar los campos siguientes "
|
||||
"para instalarlo. No dudes de <a href='http://inthepoche.com/?pages/"
|
||||
"Documentation'>leer la documentacion en el sitio de poche</a>."
|
||||
|
||||
#: /var/www/poche-i18n/cache/d4/28/e0d08991ec2d8a7b133505e7c651.php:53
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:55
|
||||
msgid "Login"
|
||||
msgstr "Nombre de usuario"
|
||||
|
||||
#: /var/www/poche-i18n/cache/d4/28/e0d08991ec2d8a7b133505e7c651.php:67
|
||||
msgid "Repeat your password"
|
||||
msgstr "repita su contraseña"
|
||||
|
||||
#: /var/www/poche-i18n/cache/d4/28/e0d08991ec2d8a7b133505e7c651.php:74
|
||||
msgid "Install"
|
||||
msgstr "Instalar"
|
||||
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:31
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:42
|
||||
msgid "login to your poche"
|
||||
msgstr "conectarse a tu poche"
|
||||
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:48
|
||||
msgid "you are in demo mode, some features may be disabled."
|
||||
msgstr ""
|
||||
"este es el modo de demostración, algunas funcionalidades pueden estar "
|
||||
"desactivadas."
|
||||
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:80
|
||||
msgid "Stay signed in"
|
||||
msgstr "seguir conectado"
|
||||
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:86
|
||||
msgid "(Do not check on public computers)"
|
||||
msgstr "(no marcar en un ordenador publico)"
|
||||
|
||||
#: /var/www/poche-i18n/cache/ae/26/05eb67771213c16bd8c9aaf2d2c4.php:93
|
||||
msgid "Sign in"
|
||||
msgstr "conectarse"
|
||||
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:55
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:57
|
||||
msgid "by date asc"
|
||||
msgstr "por fecha ascendiente"
|
||||
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:59
|
||||
msgid "by date"
|
||||
msgstr "por fecha"
|
||||
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:65
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:67
|
||||
msgid "by date desc"
|
||||
msgstr "por fecha descendiente"
|
||||
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:75
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:77
|
||||
msgid "by title asc"
|
||||
msgstr "por titulo ascendiente"
|
||||
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:79
|
||||
msgid "by title"
|
||||
msgstr "por titulo"
|
||||
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:85
|
||||
#: /var/www/poche-i18n/cache/dd/a8/530129765655dcde0a70a31a78b6.php:87
|
||||
msgid "by title desc"
|
||||
msgstr "por titulo descendiente"
|
||||
|
||||
#~ msgid "Please choose between Pocket & Readabilty :"
|
||||
#~ msgstr "Merci de choisir entre Pocket & Readability :"
|
||||
|
||||
#~ msgid "Bye bye Pocket, let's go !"
|
||||
#~ msgstr "Bye bye Pocket, en route !"
|
||||
|
||||
#~ msgid "Bye bye Readability, let's go !"
|
||||
#~ msgstr "Bye bye Readability, en route !"
|
||||
|
||||
#~ msgid "Welcome to poche !"
|
||||
#~ msgstr "Bienvenue dans poche !"
|
||||
|
||||
#~ msgid "Error with the import."
|
||||
#~ msgstr "Erreur durant l'import."
|
||||
|
||||
#~ msgid "Wrong token."
|
||||
#~ msgstr "Mauvais jeton."
|
||||
|
||||
#~ msgid "Login failed !"
|
||||
#~ msgstr "Connexion échouée."
|
||||
|
||||
#~ msgid "your password has been updated"
|
||||
#~ msgstr "Votre mot de passe a été mis à jour. "
|
||||
|
||||
#~ msgid "in demo mode, you can't update password"
|
||||
#~ msgstr "En mode démo, le mot de passe ne peut être modifié."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "your password can't be empty and you have to repeat it in the second field"
|
||||
#~ msgstr ""
|
||||
#~ "Votre mot de passe ne peut être vide et vous devez le répéter dans le "
|
||||
#~ "second champ."
|
||||
|
||||
#~ msgid "error during url preparation : the link wasn't added"
|
||||
#~ msgstr "erreur durant l'insertion : le lien n'a pas été ajouté"
|
||||
|
||||
#~ msgid "error during url preparation : the link is not valid"
|
||||
#~ msgstr "erreur durant la préparation de l'URL : le lien n'est pas valide"
|
||||
|
||||
#~ msgid "TEST"
|
||||
#~ msgstr "NICOLAS"
|
2
robots.txt
Normal file
2
robots.txt
Normal file
|
@ -0,0 +1,2 @@
|
|||
User-agent: *
|
||||
Disallow: /
|
|
@ -6,6 +6,6 @@
|
|||
<link rel="stylesheet" href="./tpl/css/style.css" media="all">
|
||||
<link rel="stylesheet" href="./tpl/css/style-{{ constant('THEME') }}.css" media="all" title="{{ constant('THEME') }} theme">
|
||||
<link rel="stylesheet" href="./tpl/css/messages.css" media="all">
|
||||
<link href='http://fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'>
|
||||
<link href='//fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'>
|
||||
<script src="./tpl/js/jquery-2.0.3.min.js"></script>
|
||||
<script type="text/javascript">$(document).ready(function(){$("body").prepend('<a href="#top" class="top_link" title="{% trans "back to top" %}"><img src="./tpl/img/{{ constant("THEME") }}/backtotop.png" alt={% trans "back to top" %}"/></a>');$(".top_link").css({position:"fixed",right:"15px",bottom:"15px",display:"none",padding:"20px",background:"#ccc","-moz-border-radius":"40px","-webkit-border-radius":"40px","border-radius":"40px",opacity:"0.9","z-index":"2000"});$(window).scroll(function(){posScroll=$(document).scrollTop();if(posScroll>=400)$(".top_link").fadeIn(600);else $(".top_link").fadeOut(600)})})</script>
|
7
tpl/error.twig
Normal file
7
tpl/error.twig
Normal file
|
@ -0,0 +1,7 @@
|
|||
{% extends "layout.twig" %}
|
||||
{% block title %}{% trans "error" %}{% endblock %}
|
||||
{% block content %}
|
||||
<h1>error</h1>
|
||||
<p>{{ msg|raw }}</p>
|
||||
<p>Don't forget <a href="http://inthepoche.com/?pages/Documentation">the documentation</a>.</p>
|
||||
{% endblock %}
|
|
@ -7,21 +7,21 @@
|
|||
<p>
|
||||
{% trans "poche is still not installed. Please fill the below form to install it. Don't hesitate to <a href='http://inthepoche.com/?pages/Documentation'>read the documentation on poche website</a>." %}
|
||||
</p>
|
||||
<div class="row">
|
||||
<p class="row">
|
||||
<label class="col w150p" for="login">{% trans "Login" %}</label>
|
||||
<input class="col" type="text" id="login" name="login" placeholder="Login" tabindex="1" autofocus />
|
||||
</div>
|
||||
<div class="row">
|
||||
</p>
|
||||
<p class="row">
|
||||
<label class="col w150p" for="password">{% trans "Password" %}</label>
|
||||
<input class="col" type="password" id="password" name="password" placeholder="Password" tabindex="2">
|
||||
</div>
|
||||
<div class="row">
|
||||
</p>
|
||||
<p class="row">
|
||||
<label class="col w150p" for="password_repeat">{% trans "Repeat your password" %}</label>
|
||||
<input class="col" type="password" id="password_repeat" name="password_repeat" placeholder="Password" tabindex="3">
|
||||
</div>
|
||||
<div class="row mts txtcenter">
|
||||
</p>
|
||||
<p class="row mts txtcenter">
|
||||
<button class="bouton" type="submit" tabindex="4">{% trans "Install" %}</button>
|
||||
</div>
|
||||
</p>
|
||||
</fieldset>
|
||||
<input type="hidden" name="token" value="{{ token }}">
|
||||
</form>
|
||||
|
|
Loading…
Reference in a new issue