1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
<?php
class Modelmedia extends Model
{
public function __construct() {
}
public function addmedia(array $file, $maxsize = 2 ** 24, $id)
{
$message = 'runing';
$id = strtolower(strip_tags($id));
$id = str_replace(' ', '_', $id);
if (isset($file) and $file['media']['error'] == 0 and $file['media']['size'] < $maxsize) {
$infosfichier = pathinfo($file['media']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = $this::MEDIA_EXTENSIONS;
if (in_array($extension_upload, $extensions_autorisees)) {
if (!file_exists($this::MEDIA_DIR . $id . '.' . $extension_upload)) {
$extension_upload = strtolower($extension_upload);
$uploadok = move_uploaded_file($file['media']['tmp_name'], $this::MEDIA_DIR . $id . '.' . $extension_upload);
if ($uploadok) {
$message = 'uploadok';
} else {
$message = 'uploaderror';
}
} else {
$message = 'filealreadyexist';
}
}
} else {
$message = 'filetoobig';
}
return $message;
}
public function getmedia($entry, $dir)
{
$fileinfo = pathinfo($entry);
$filepath = $fileinfo['dirname'] . '.' . $fileinfo['extension'];
$donnees = array(
'id' => str_replace('.' . $fileinfo['extension'], '', $fileinfo['filename']),
'path' => $dir,
'extension' => $fileinfo['extension']
);
return new Media($donnees);
}
public function getlistermedia($dir, $type = "all")
{
if ($handle = opendir($dir)) {
$list = [];
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
$media = $this->getmedia($entry, $dir);
$media->analyse();
if (in_array($type, self::MEDIA_TYPES)) {
if ($media->type() == $type) {
$list[] = $media;
}
} else {
$list[] = $media;
}
}
}
return $list;
}
return $list;
}
}
?>
|