mirror of
https://framagit.org/fiat-tux/hat-softwares/lutim.git
synced 2026-08-10 19:03:36 +02:00
Change LUTIm to Lutim (easier to write)
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
Revision history for LUTIm
|
||||
Revision history for Lutim
|
||||
|
||||
0.3 2014-
|
||||
- Antiflood protection for the "Download by URL" feature (#29)
|
||||
- Stats page improved
|
||||
- Self-documented configuration template
|
||||
- Remote port detection can now use the X-Remote-Port header if set
|
||||
- LUTIm now uses the X-Forwarded-Proto header to set the scheme to https if needed
|
||||
- Lutim now uses the X-Forwarded-Proto header to set the scheme to https if needed
|
||||
The "https" option in configuration file is deprecated and will be removed in 0.4
|
||||
- Optionally delete images that are no longer viewed after a configurable delay in order to avoid saturation (#27)
|
||||
- Provide init script
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# LUTIm
|
||||
# Lutim
|
||||
|
||||
## What LUTIm means?
|
||||
## What Lutim means?
|
||||
It means Let's Upload That Image.
|
||||
|
||||
## What does it do?
|
||||
@@ -8,15 +8,15 @@ It stores images and allows you to see them or download them.
|
||||
Images are indefinitly stored unless you request that they will be deleted at first view or after 24 hours / one week / one month / one year.
|
||||
|
||||
## License
|
||||
LUTIm is licensed under the terms of the AGPL. See the LICENSE file.
|
||||
Lutim is licensed under the terms of the AGPL. See the LICENSE file.
|
||||
|
||||
## Official instance
|
||||
You can see it working at http://lut.im.
|
||||
|
||||
## Logo
|
||||
LUTIm's logo is an adaptation of [Lutin](http://commons.wikimedia.org/wiki/File:Lutin_by_godo.jpg) by [Godo](http://godoillustrateur.wordpress.com/), licensed under the terms of the CC-BY-SA 3.0 license.
|
||||
Lutim's logo is an adaptation of [Lutin](http://commons.wikimedia.org/wiki/File:Lutin_by_godo.jpg) by [Godo](http://godoillustrateur.wordpress.com/), licensed under the terms of the CC-BY-SA 3.0 license.
|
||||
|
||||

|
||||

|
||||
|
||||
## Dependencies
|
||||
* Carton : Perl dependencies manager, it will get what you need, so don't bother for Perl modules dependencies (but you can read the file `cpanfile` if you want).
|
||||
@@ -58,20 +58,20 @@ vi lutim.conf
|
||||
## Configuration
|
||||
The `lutim.conf.template` is self-documented but here is the options that you can set:
|
||||
|
||||
* hypnotoad: address and port to listen to, user and group which runs hypnotoad (if you run LUTIm with a different user from what is defined here, be sure that the user which launchs hypnotoad is able to setuid/setgid to the defined user/group, otherwise it will not work and you'll have 100% CPU consumption. Launch hypnotoad with the root user or with the user which is defined here);
|
||||
* hypnotoad: address and port to listen to, user and group which runs hypnotoad (if you run Lutim with a different user from what is defined here, be sure that the user which launchs hypnotoad is able to setuid/setgid to the defined user/group, otherwise it will not work and you'll have 100% CPU consumption. Launch hypnotoad with the root user or with the user which is defined here);
|
||||
* contact: write something which make people able to contact you (contact form URL, email address, whatever) ;
|
||||
* secrets: an array of random string. Used by Mojolicious for encrypting session cookies.
|
||||
* piwik\_img: the Piwik image provides you records of visits without javascript (better privacy than js and cookies) ;
|
||||
* length: length of the random string part of image's URL (default is 8) ;
|
||||
* provis\_step: LUTIm provisions random strings for image's URL per pack of `provis\_step` (default is 5) ;
|
||||
* provis\_step: Lutim provisions random strings for image's URL per pack of `provis\_step` (default is 5) ;
|
||||
* provisioning: number of random strings to provision (default is 100) ;
|
||||
* hosted\_by: if someone hosts your LUTIm instance, you can add some HTML (a logo for example) to make it appear on index page ;
|
||||
* hosted\_by: if someone hosts your Lutim instance, you can add some HTML (a logo for example) to make it appear on index page ;
|
||||
* tweet\_card\_via: a Twitter account which will appear on Twitter cards ;
|
||||
* max\_file\_size: well, this is explicit (default is 10Mio = 10485760 octets) ;
|
||||
* https: 1 if you want to provide secure images URLs (default is 0) DEPRECATED, PASS A `X-Forwarded-Proto` HEADER TO LUTIM FROM YOUR REVERSE PROXY INSTEAD ;
|
||||
* stats\_day\_num: when you generate statistics with `script/lutim cron stats`, you will have stats for the last `stats\_day\_num` days (default is 365) ;
|
||||
* keep\_ip\_during: when you delete IP addresses of image's senders with `script/lutim cron cleanbdd`, the IP addresses of images older than `keep\_ip\_during` days will be deleted (default is 365) ;
|
||||
* broadcast\_message: put some string (not HTML) here and this message will be displayed on all LUTIm pages (not in JSON responses) ;
|
||||
* broadcast\_message: put some string (not HTML) here and this message will be displayed on all Lutim pages (not in JSON responses) ;
|
||||
* allowed\_domains: array of authorized domains for API calls. Example: `['http://1.example.com', 'http://2.example.com']`. If you want to authorize everyone to use the API: `['\*']`.
|
||||
* default\_delay: what is the default time limit for files? Valid values are 0, 1, 7, 30 and 365;
|
||||
* max\_delay: if defined, the images will be deleted after that delay (in days), even if they were uploaded with "no delay" (or value superior to max\_delay) option and a warning message will be displayed on homepage;
|
||||
@@ -120,7 +120,7 @@ server {
|
||||
access_log off;
|
||||
error_log /var/log/nginx/lutim.error.log;
|
||||
|
||||
# This is important ! Make it OK with your LUTIm configuration
|
||||
# This is important ! Make it OK with your Lutim configuration
|
||||
client_max_body_size 40M;
|
||||
|
||||
location ~* ^/(img|css|font|js)/ {
|
||||
@@ -162,7 +162,7 @@ server {
|
||||
```
|
||||
|
||||
## Cron jobs
|
||||
LUTIm have commands which can be used in cron jobs.
|
||||
Lutim have commands which can be used in cron jobs.
|
||||
|
||||
To see what commands are available:
|
||||
```shell
|
||||
@@ -192,7 +192,7 @@ carton exec script/lutim cron cleanfiles
|
||||
To execute an action when the files directory is heavier than `max\_total\_size`.
|
||||
The available actions are `warn` and `stop-upload`:
|
||||
* `warn` prints a message on the standard out (which is normally mailed to you by `cron`) ;
|
||||
* `stop-upload` prints a message on the standard out and creates the `stop-upload` file which prevents uploading and put a warn on LUTIm interface ;
|
||||
* `stop-upload` prints a message on the standard out and creates the `stop-upload` file which prevents uploading and put a warn on Lutim interface ;
|
||||
* **DANGEROUS OPTION!!!** `delete` prints a message on the standard out and delete older images until the files directory goes under quota.
|
||||
|
||||
If the files directory go under quota, the `stop-upload` file is deleted. If you want to manually prevents uploading, create a file named `stop-upload.manual`.
|
||||
@@ -210,9 +210,9 @@ carton exec hypnotoad script/lutim
|
||||
It may take a few reloads of page before the message is displayed.
|
||||
|
||||
## Encryption
|
||||
LUTIm do encryption on the server if asked to, but does not store the key.
|
||||
Lutim does encryption on the server if asked to, but does not store the key.
|
||||
|
||||
The encryption is made on the server since LUTIm is made to be usable even without javascript. If you want to add client-side encryption for javascript-enabled browsers, patches are welcome.
|
||||
The encryption is made on the server since Lutim is made to be usable even without javascript. If you want to add client-side encryption for javascript-enabled browsers, patches are welcome.
|
||||
|
||||
## API
|
||||
You can add images by using the API. Here's the parameters of the `POST` request to `/` adress:.
|
||||
@@ -231,7 +231,7 @@ Exemple with curl:
|
||||
curl -F "format=json" -F "file=@/tmp/snap0001.jpg" http://lut.im
|
||||
```
|
||||
|
||||
You can allow people to use your instance of LUTIm from other domains.
|
||||
You can allow people to use your instance of Lutim from other domains.
|
||||
Add the allowed domains as an array in the `allowed\_domains` conf option. Put '`[\*]`' if you want to allow all domains.
|
||||
|
||||
## Shutter integration
|
||||
@@ -245,10 +245,10 @@ sudo cp utilities/Shutter.pm /usr/share/shutter/resources/system/upload_plugins/
|
||||
|
||||
And restart Shutter if it was running.
|
||||
|
||||
Of course, this plugin is configured for the official instance of LUTIm (<http://lut.im>), feel free to edit it for your own instance.
|
||||
Of course, this plugin is configured for the official instance of Lutim (<http://lut.im>), feel free to edit it for your own instance.
|
||||
|
||||
## Internationalization
|
||||
LUTIm comes with English and French languages. It will choose the language to display from the browser's settings.
|
||||
Lutim comes with English and French languages. It will choose the language to display from the browser's settings.
|
||||
|
||||
If you want to add more languages, for example German:
|
||||
```shell
|
||||
@@ -260,7 +260,7 @@ vim de.pm
|
||||
There's just a few sentences, so it will be quick to translate. Please consider to send me you language file in order to help the other users :smile:.
|
||||
|
||||
## Others projects dependancies
|
||||
LUTIm is written in Perl with the [Mojolicious](http://mojolicio.us) framework, uses the [Twitter bootstrap](http://getbootstrap.com) framework to look not too ugly, [JQuery](http://jquery.com) and [JQuery File Uploader](https://github.com/danielm/uploader/) (slightly modified) to add some modernity, [Raphaël](http://raphaeljs.com/) and [morris.js](http://www.oesmith.co.uk/morris.js/) for stats graphs.
|
||||
Lutim is written in Perl with the [Mojolicious](http://mojolicio.us) framework, uses the [Twitter bootstrap](http://getbootstrap.com) framework to look not too ugly, [JQuery](http://jquery.com) and [JQuery File Uploader](https://github.com/danielm/uploader/) (slightly modified) to add some modernity, [Raphaël](http://raphaeljs.com/) and [morris.js](http://www.oesmith.co.uk/morris.js/) for stats graphs.
|
||||
|
||||
## Contributors
|
||||
* Luc Didry, aka Sky (<http://www.fiat-tux.fr>), main developer
|
||||
|
||||
+11
-11
@@ -2,24 +2,24 @@ package Lutim::I18N::en;
|
||||
use Mojo::Base 'Lutim::I18N';
|
||||
|
||||
my $inf_body = <<EOF;
|
||||
<h4>What is LUTIm?</h4>
|
||||
<p>LUTIm is a free (as in free beer) and anonymous image hosting service. It's also the name of the free (as in free speech) software which provides this service.</p>
|
||||
<p>The images you post on LUTIm can be stored indefinitely or be deleted at first view or after 24 hours.</p>
|
||||
<h4>What is Lutim?</h4>
|
||||
<p>Lutim is a free (as in free beer) and anonymous image hosting service. It's also the name of the free (as in free speech) software which provides this service.</p>
|
||||
<p>The images you post on Lutim can be stored indefinitely or be deleted at first view or after 24 hours.</p>
|
||||
<h4>How does it work?</h4>
|
||||
<p>Drag and drop an image in the appropriate area or use the traditional way to send files and LUTIm will provide you two URLs. One to view the image, the other to directly download it.</p>
|
||||
<p>You can, optionally, request that the image(s) posted on LUTIm to be deleted at first view (or download) or after 24 hours.</p>
|
||||
<p>Drag and drop an image in the appropriate area or use the traditional way to send files and Lutim will provide you two URLs. One to view the image, the other to directly download it.</p>
|
||||
<p>You can, optionally, request that the image(s) posted on Lutim to be deleted at first view (or download) or after 24 hours.</p>
|
||||
<h4>Is it really free (as in free beer)?</h4>
|
||||
<p>Yes, it is! On the other side, if you want to support the developer, you can do it via <a href="https://flattr.com/submit/auto?user_id=_SKy_&url=[_1]&title=LUTIm&category=software">Flattr</a> or with <a href="bitcoin:1K3n4MXNRSMHk28oTfXEvDunWFthePvd8v?label=lutim">BitCoin</a>.</p>
|
||||
<p>Yes, it is! On the other side, if you want to support the developer, you can do it via <a href="https://flattr.com/submit/auto?user_id=_SKy_&url=[_1]&title=Lutim&category=software">Flattr</a> or with <a href="bitcoin:1K3n4MXNRSMHk28oTfXEvDunWFthePvd8v?label=lutim">BitCoin</a>.</p>
|
||||
<h4>Is it really anonymous?</h4>
|
||||
<p>Yes, it is! On the other side, for legal reasons, your IP address will be stored when you send an image. Don't panic, it is normally the case of all sites on which you send files!</p>
|
||||
<p>The IP address of the image's sender is permanently retained.</p>
|
||||
<p>If the files are deleted if you ask it while posting it, their SHA512 footprint are retained.</p>
|
||||
<h4>How to report an image?</h4>
|
||||
<p>Please contact the administrator: [_2]</p>
|
||||
<h4>How do you pronounce LUTIm?</h4>
|
||||
<h4>How do you pronounce Lutim?</h4>
|
||||
<p>Juste like you pronounce the French word <a href="https://fr.wikipedia.org/wiki/Lutin">lutin</a> (/ly.tɛ̃/).</p>
|
||||
<h4>What about the software which provides the service?</h4>
|
||||
<p>The LUTIm software is a <a href="http://en.wikipedia.org/wiki/Free_software">free software</a>, which allows you to download and install it on you own server. Have a look at the <a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL</a> to see what you can do.</p>
|
||||
<p>The Lutim software is a <a href="http://en.wikipedia.org/wiki/Free_software">free software</a>, which allows you to download and install it on you own server. Have a look at the <a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL</a> to see what you can do.</p>
|
||||
<p>For more details, see the <a href="https://github.com/ldidry/lutim">Github</a> page of the project.</p>
|
||||
<h4>Contributors</h4>
|
||||
<ul>
|
||||
@@ -58,7 +58,7 @@ our %Lexicon = (
|
||||
'1_year' => 'One year',
|
||||
'pushed-images' => ' sent images on this instance from beginning.',
|
||||
'graph-data-once-a-day' => 'The graph\'s datas are not updated in real-time.',
|
||||
'lutim-stats' => 'LUTIm\'s statistics',
|
||||
'lutim-stats' => 'Lutim\'s statistics',
|
||||
'back-to-index' => 'Back to homepage',
|
||||
'stop_upload' => 'Uploading is currently disabled, please try later or contact the administrator ([_1]).',
|
||||
'download_error' => 'An error occured while downloading the image.',
|
||||
@@ -70,8 +70,8 @@ our %Lexicon = (
|
||||
'delay_days' => '[_1] days',
|
||||
'delay_365' => '1 year',
|
||||
'max_delay' => 'Warning! The maximum time limit for an image is [_1] day(s), even if you choose "no time limit".',
|
||||
'crypt_image' => 'Encrypt the image (LUTIm does not keep the key).',
|
||||
'always_encrypt' => 'The images are encrypted on the server (LUTIm does not keep the key).',
|
||||
'crypt_image' => 'Encrypt the image (Lutim does not keep the key).',
|
||||
'always_encrypt' => 'The images are encrypted on the server (Lutim does not keep the key).',
|
||||
);
|
||||
|
||||
1;
|
||||
|
||||
+11
-11
@@ -2,24 +2,24 @@ package Lutim::I18N::fr;
|
||||
use Mojo::Base 'Lutim::I18N';
|
||||
|
||||
my $inf_body = <<EOF;
|
||||
<h4>Qu’est-ce que LUTIm ?</h4>
|
||||
<p>LUTIm est un service gratuit et anonyme d’hébergement d’images. Il s’agit aussi du nom du logiciel (libre) qui fournit ce service.</p>
|
||||
<p>Les images déposées sur LUTIm peuvent être stockées indéfiniment, ou s’effacer dès le premier affichage ou au bout de 24h.</p>
|
||||
<h4>Qu’est-ce que Lutim ?</h4>
|
||||
<p>Lutim est un service gratuit et anonyme d’hébergement d’images. Il s’agit aussi du nom du logiciel (libre) qui fournit ce service.</p>
|
||||
<p>Les images déposées sur Lutim peuvent être stockées indéfiniment, ou s’effacer dès le premier affichage ou au bout de 24h.</p>
|
||||
<h4>Comment ça marche ?</h4>
|
||||
<p>Faites glisser des images dans la zone prévue à cet effet ou sélectionnez un fichier de façon classique et LUTIm vous fournira deux URLs en retour. Une pour afficher l’image, l’autre pour la télécharger directement.</p>
|
||||
<p>Vous pouvez, de façon facultative, demander à ce que la ou les images déposées sur LUTIm soient supprimées après leur premier affichage (ou téléchargement) ou au bout de 24 heures.</p>
|
||||
<p>Faites glisser des images dans la zone prévue à cet effet ou sélectionnez un fichier de façon classique et Lutim vous fournira deux URLs en retour. Une pour afficher l’image, l’autre pour la télécharger directement.</p>
|
||||
<p>Vous pouvez, de façon facultative, demander à ce que la ou les images déposées sur Lutim soient supprimées après leur premier affichage (ou téléchargement) ou au bout de 24 heures.</p>
|
||||
<h4>C’est vraiment gratuit ?</h4>
|
||||
<p>Oui, ça l’est ! Par contre, si vous avez envie de soutenir le développeur, vous pouvez faire un microdon avec <a href="https://flattr.com/submit/auto?user_id=_SKy_&url=[_1]&title=LUTIm&category=software">Flattr</a> ou en <a href="bitcoin:1K3n4MXNRSMHk28oTfXEvDunWFthePvd8v?label=lutim">BitCoin</a>.</p>
|
||||
<p>Oui, ça l’est ! Par contre, si vous avez envie de soutenir le développeur, vous pouvez faire un microdon avec <a href="https://flattr.com/submit/auto?user_id=_SKy_&url=[_1]&title=Lutim&category=software">Flattr</a> ou en <a href="bitcoin:1K3n4MXNRSMHk28oTfXEvDunWFthePvd8v?label=lutim">BitCoin</a>.</p>
|
||||
<h4>C’est vraiment anonyme ?</h4>
|
||||
<p>Oui, ça l’est ! Par contre, pour des raisons légales, votre adresse IP sera enregistrée lorsque vous enverrez une image. Ne vous affolez pas, c’est de toute façon normalement le cas de tous les sites sur lesquels vous envoyez des fichiers !</p>
|
||||
<p>L’IP de la personne ayant déposé l’image est stockée de manière définitive.</p>
|
||||
<p>Si les fichiers sont bien supprimés si vous en avez exprimé le choix, leur empreinte SHA512 est toutefois conservée.</p>
|
||||
<h4>Comment peut-on faire pour signaler une image ?</h4>
|
||||
<p>Veuillez contacter l’administrateur : [_2]</p>
|
||||
<h4>Comment doit-on prononcer LUTIm ?</h4>
|
||||
<h4>Comment doit-on prononcer Lutim ?</h4>
|
||||
<p>Comme on prononce <a href="https://fr.wikipedia.org/wiki/Lutin">lutin</a> !</p>
|
||||
<h4>Et à propos du logiciel qui fournit le service ?</h4>
|
||||
<p>Le logiciel LUTIm est un <a href="https://fr.wikipedia.org/wiki/Logiciel_libre">logiciel libre</a>, ce qui vous permet de le télécharger et de l’installer sur votre propre serveur. Jetez un coup d’œil à l’<a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL</a> pour voir quels sont vos droits.</p>
|
||||
<p>Le logiciel Lutim est un <a href="https://fr.wikipedia.org/wiki/Logiciel_libre">logiciel libre</a>, ce qui vous permet de le télécharger et de l’installer sur votre propre serveur. Jetez un coup d’œil à l’<a href="https://www.gnu.org/licenses/agpl-3.0.html">AGPL</a> pour voir quels sont vos droits.</p>
|
||||
<p>Pour plus de détails, consultez la page <a href="https://github.com/ldidry/lutim">Github</a> du projet.</p>
|
||||
<h4>Contributeurs</h4>
|
||||
<ul>
|
||||
@@ -58,7 +58,7 @@ our %Lexicon = (
|
||||
'1_year' => 'Un an',
|
||||
'pushed-images' => ' images envoyées sur cette instance depuis le début.',
|
||||
'graph-data-once-a-day' => 'Les données du graphique ne sont pas mises à jour en temps réél.',
|
||||
'lutim-stats' => 'Statistiques de LUTIm',
|
||||
'lutim-stats' => 'Statistiques de Lutim',
|
||||
'back-to-index' => 'Retour à la page d\'accueil',
|
||||
'stop_upload' => 'L\'envoi d\'images est actuellement désactivé, veuillez réessayer plus tard ou contacter l\'administrateur ([_1]).',
|
||||
'download_error' => 'Une erreur est survenue lors du téléchargement de l\'image.',
|
||||
@@ -70,8 +70,8 @@ our %Lexicon = (
|
||||
'delay_days' => '[_1] jours',
|
||||
'delay_365' => '1 an',
|
||||
'max_delay' => 'Attention ! Le délai maximal de rétention d\'une image est de [_1] jour(s), même si vous choisissez « pas de limitation de durée ».',
|
||||
'crypt_image' => 'Chiffrer l\'image (LUTIm ne stocke pas la clé).',
|
||||
'always_encrypt' => 'Les images sont chiffrées sur le serveur (LUTIm ne stocke pas la clé).',
|
||||
'crypt_image' => 'Chiffrer l\'image (Lutim ne stocke pas la clé).',
|
||||
'always_encrypt' => 'Les images sont chiffrées sur le serveur (Lutim ne stocke pas la clé).',
|
||||
);
|
||||
|
||||
1;
|
||||
|
||||
@@ -5,7 +5,7 @@ use Mojo::DOM;
|
||||
use Mojo::Util qw(slurp spurt decode);
|
||||
use DateTime;
|
||||
|
||||
has description => 'Generate statistics about LUTIm.';
|
||||
has description => 'Generate statistics about Lutim.';
|
||||
has usage => sub { shift->extract_usage };
|
||||
|
||||
sub run {
|
||||
|
||||
@@ -21,18 +21,18 @@ sub run {
|
||||
my $total = du(qw/files/);
|
||||
|
||||
if ($total > $config->{max_total_size}) {
|
||||
say "[LUTIm cron job watch] Files directory is over quota ($total > ".$config->{max_total_size}.")";
|
||||
say "[Lutim cron job watch] Files directory is over quota ($total > ".$config->{max_total_size}.")";
|
||||
switch ($config->{policy_when_full}) {
|
||||
case 'warn' {
|
||||
say "[LUTIm cron job watch] Please, delete some files or increase quota (".$config->{max_total_size}.")";
|
||||
say "[Lutim cron job watch] Please, delete some files or increase quota (".$config->{max_total_size}.")";
|
||||
}
|
||||
case 'stop-upload' {
|
||||
open (my $fh, '>', 'stop-upload') or die ("Couldn't open stop-upload: $!");
|
||||
close($fh);
|
||||
say '[LUTIm cron job watch] Uploads are stopped. Delete some images and the stop-upload file to reallow uploads.';
|
||||
say '[Lutim cron job watch] Uploads are stopped. Delete some images and the stop-upload file to reallow uploads.';
|
||||
}
|
||||
case 'delete' {
|
||||
say '[LUTIm cron job watch] Older files are being deleted';
|
||||
say '[Lutim cron job watch] Older files are being deleted';
|
||||
do {
|
||||
for my $img (LutimModel::Lutim->select('WHERE path IS NOT NULL AND enabled = 1 ORDER BY created_at ASC LIMIT 50')) {
|
||||
unlink $img->path() or warn "Could not unlink ".$img->path.": $!";
|
||||
@@ -41,14 +41,14 @@ sub run {
|
||||
} while (du(qw/files/) > $config->{max_total_size});
|
||||
}
|
||||
else {
|
||||
say '[LUTIm cron job watch] Unrecognized policy_when_full option: '.$config->{policy_when_full}.'. Aborting.';
|
||||
say '[Lutim cron job watch] Unrecognized policy_when_full option: '.$config->{policy_when_full}.'. Aborting.';
|
||||
}
|
||||
}
|
||||
} else {
|
||||
unlink 'stop-upload' if (-f 'stop-upload');
|
||||
}
|
||||
} else {
|
||||
say "[LUTIm cron job watch] No max_total_size found in the configuration file. Aborting.";
|
||||
say "[Lutim cron job watch] No max_total_size found in the configuration file. Aborting.";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+7
-7
@@ -7,7 +7,7 @@
|
||||
hypnotoad => {
|
||||
# array of IP addresses and ports you want to listen to
|
||||
listen => ['http://127.0.0.1:8080'],
|
||||
# user and group you want for LUTIm to run with
|
||||
# user and group you want for Lutim to run with
|
||||
# be sure that this user/group have rights on the lutim directory
|
||||
# if you launch lutim from a different user, be sure that this user have the right to su this user/group
|
||||
# => if current_user is not the user that you sets here and is not root, there's chances that it will fail (see https://github.com/ldidry/lutim/issues/25)
|
||||
@@ -16,7 +16,7 @@
|
||||
},
|
||||
|
||||
################
|
||||
# LUTIm settings
|
||||
# Lutim settings
|
||||
################
|
||||
|
||||
# put a way to contact you here and uncomment it
|
||||
@@ -43,12 +43,12 @@
|
||||
#provisioning => 100,
|
||||
|
||||
# anti-flood protection delay, in seconds
|
||||
# users won't be able to ask LUTIm to download images more than one per anti_flood_delay seconds
|
||||
# users won't be able to ask Lutim to download images more than one per anti_flood_delay seconds
|
||||
# optional, default is 5
|
||||
#anti_flood_delay => 5
|
||||
|
||||
# twitter account which will appear on twitter cards
|
||||
# see https://dev.twitter.com/docs/cards/validation/validator to register your LUTIm instance on twitter
|
||||
# see https://dev.twitter.com/docs/cards/validation/validator to register your Lutim instance on twitter
|
||||
# optional, default is @framasky
|
||||
#tweet_card_via => '@framasky',
|
||||
|
||||
@@ -68,12 +68,12 @@
|
||||
#hosted_by => 'My super hoster <img src="http://hoster.example.com" alt="Hoster logo">',
|
||||
|
||||
# DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED
|
||||
# LUTIm now checks if the X-Forwarded-Proto header is present and equal to https.
|
||||
# Lutim now checks if the X-Forwarded-Proto header is present and equal to https.
|
||||
# set to 1 if you use Lutim behind a secure web server
|
||||
# optional, default is 0
|
||||
#https => 0,
|
||||
|
||||
# broadcast_message which will displayed on all pages of LUTIm (but no in json response)
|
||||
# broadcast_message which will displayed on all pages of Lutim (but no in json response)
|
||||
# optional, no default
|
||||
#broadcast_message => 'Maintenance',
|
||||
|
||||
@@ -97,7 +97,7 @@
|
||||
#always_encrypt => 0,
|
||||
|
||||
##########################
|
||||
# LUTIm cron jobs settings
|
||||
# Lutim cron jobs settings
|
||||
##########################
|
||||
|
||||
# number of days shown in /stats page (used with script/lutim cron stats)
|
||||
|
||||
|
Before Width: | Height: | Size: 234 KiB After Width: | Height: | Size: 234 KiB |
|
Before Width: | Height: | Size: 7.4 KiB After Width: | Height: | Size: 7.4 KiB |
|
Before Width: | Height: | Size: 384 KiB After Width: | Height: | Size: 384 KiB |
@@ -4,11 +4,11 @@
|
||||
% my $url = url_for('/')->to_abs();
|
||||
% $twitter_url .= '?url='.url_escape("$url")
|
||||
% .'&via=framasky'
|
||||
% .'&text=Check out this %23LUTIm instance! ';
|
||||
% .'&text=Check out this %23Lutim instance! ';
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>LUTIm</title>
|
||||
<title>Lutim</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" type="image/png" href="<%= url_for('/') %>img/favicon.png">
|
||||
@@ -73,7 +73,7 @@
|
||||
% }
|
||||
<div>
|
||||
<div class="pull-left hidden-xs logo">
|
||||
<img src="<%= url_for('/') %>img/LUTIm_small.png" alt="LUTIm logo">
|
||||
<img src="<%= url_for('/') %>img/Lutim_small.png" alt="Lutim logo">
|
||||
</div>
|
||||
<h1 class="hennypenny">Let's Upload That Image!</h1>
|
||||
<p>
|
||||
@@ -83,7 +83,7 @@
|
||||
<noscript><%= link_to url_for('about') => begin %><%=l 'informations' %><% end %> — </noscript>
|
||||
<%= link_to 'https://github.com/ldidry/lutim' => (title => l 'fork-me') => begin %><i class="lead icon icon-github-circled"></i><% end %>
|
||||
<%= link_to $twitter_url => (title => l 'share-twitter') => begin %><i class="lead icon icon-touiteur"></i><% end %>
|
||||
<%= link_to 'https://flattr.com/submit/auto?user_id=_SKy_&url='.$url.'&title=LUTIm&category=software' => (title => 'Flattr this') => begin %><i class="lead icon icon-flattr"></i><% end %>
|
||||
<%= link_to 'https://flattr.com/submit/auto?user_id=_SKy_&url='.$url.'&title=Lutim&category=software' => (title => 'Flattr this') => begin %><i class="lead icon icon-flattr"></i><% end %>
|
||||
<%= link_to 'bitcoin:1K3n4MXNRSMHk28oTfXEvDunWFthePvd8v?label=lutim' => (title => 'Give Bitcoins') => begin %><i class="lead icon icon-bitcoin"></i><% end %>
|
||||
</p>
|
||||
</div>
|
||||
@@ -104,7 +104,7 @@
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h3 class="modal-title">LUTIm</h3>
|
||||
<h3 class="modal-title">Lutim</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<%==l 'informations-body', url_for('/')->to_abs(), config('contact') %>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html style="height:100%;">
|
||||
<head>
|
||||
<title>LUTIm</title>
|
||||
<title>Lutim</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" type="image/png" href="<%= url_for('/')->to_abs() %>img/favicon.png">
|
||||
|
||||
Reference in New Issue
Block a user