Bonjour,
Je me suis cassé la tête sur un probleme de croping de l'image dans le plugin Media du tuto du meme nom.
Apres débug, je m'appercois que dans mediasController
$file ne prends pas en compte le repertoire "img" et commence tout de suite avec uploads.
ce qui fait qu'il ne trouve pas les fichiers...
Le code originale
function crop() {
if (!isset($this->request->params'file'])) {
die();
}
extract($this->request->params);
$file = trim($file, '/');
$file = str_replace('.', '', $file);
$size = explode('x', $format);
$images = glob(WWW_ROOT . $file . '.*');
j'ai ajouté 'img' manuellement et cela marche, mais peut etre que j'ai raté une configuration dans mon routes.php
code modifié :
$images = glob(WWW_ROOT . 'img/'.$file . '.*');
$dest = WWW_ROOT . 'img/'.$file . '_' . $format . '.jpg';
En tout cas mon routes.php est configuré comme ceci
Router::connect('/img/:file_:format.jpg',
array(
'controller'=>'medias', 'action'=>'crop','plugin'=>'media'
),
array(
'file' => 'uploads\/([0-9]{4})\/([0-9]{2})\/^\/]+',
'format'=>'126x126|200x200'
)
);
et mon bootstrap
CakePlugin::loadAll(
array(
'Media' => array(
'routes' => false
)
));
(ici j'ai bien essayer de mettre routes a true, mais cela ne marche plus du tout
Merci beaucoup pour votre aide.
et j'ajoute que j'ai ajouté img dans le model
class MediaBehavior extends ModelBehavior{
private $options = array(
'path' => 'img/uploads/%y/%m/%f',
'formats' => false
);