summaryrefslogtreecommitdiff
path: root/controller/config.php
diff options
context:
space:
mode:
Diffstat (limited to 'controller/config.php')
-rw-r--r--controller/config.php63
1 files changed, 63 insertions, 0 deletions
diff --git a/controller/config.php b/controller/config.php
new file mode 100644
index 0000000..47b85f9
--- /dev/null
+++ b/controller/config.php
@@ -0,0 +1,63 @@
1<?php
2// controller/config.php
3
4// Ce fichier sert à:
5// => vérifier la disponibilité des extensions PHP
6// => obtenir des variables globales
7// => permettre une configuration à la main par l'utilisateur
8
9
10// mode de stockage des données, écrire 'files' ou 'database'
11$storage = 'files';
12// laisser 'files'!!
13// l'utilisation d'une BDD n'est pas prévue pour l'instant
14
15// Racine du site (inutile pour l'instant)
16//$root = getcwd();
17
18// nom de domaine (inutile pour l'instant)
19//$host = $_SERVER['HTTP_HOST'];
20
21// bibliothèque utilisée pour créer les miniatures
22if(extension_loaded("imagick")) // on préfère imagemagick
23{
24 $imageLibrary = 'imagick';
25}
26elseif(extension_loaded('gd'))
27{
28 $imageLibrary = 'gd';
29}
30else
31{
32 echo('<script>alert(\'Erreur: Une de ces extensions de PHP est nécessaire: imagemagick ou GD. Veuillez activer une des deux dans le fichier php.ini ou installer le paquet php-imagick ou php-gd.\');</script>');
33}
34
35// format dans lequel créer les sauvegardes
36// zip uniquement pour l'instant
37if(extension_loaded("zip"))
38{
39 $archiveFormat = 'zip';
40}
41else
42{
43 echo('<script>alert(\'Erreur: PHP doit être capable de gérer les archives. Veuillez activer zip dans le fichier php.ini.\');</script>');
44}
45
46
47// conversion des 2M du php.ini en 2000000
48// les kibi, mébi et gibi sont inutiles ici
49function returnBytes ($size_str) // chaine du style '2M'
50{
51 switch (substr ($size_str, -1))
52 {
53 case 'Ki': case 'ki': return (int)$size_str * 1024;
54 case 'Mi': case 'mi': return (int)$size_str * 1048576;
55 case 'Gi': case 'gi': return (int)$size_str * 1073741824;
56 case 'K': case 'k': return (int)$size_str * 1000;
57 case 'M': case 'm': return (int)$size_str * 1000000;
58 case 'G': case 'g': return (int)$size_str * 1000000000;
59 default: return $size_str;
60 }
61}
62// taille max des fichiers dans le php.ini (défaut = 2M)
63$maxWeight = returnBytes(ini_get('upload_max_filesize'));