mediaplugin を利用して jpeg 画像をアップロードすると、
素のファイルとDBにはjpeg で保存されるのに、 transfer フォルダには jpg で保存される。
これだとバグなので、修正。
・transfer.php
function beforeValidate(&$Model) {
if(isset($Model->data['Attachment'][0])){
foreach($Model->data['Attachment'] as $key => $v){
$path = pathinfo($v['file']['name']);
if($path['extension'] == 'jpeg'){
$Model->data['Attachment'][$key]['file']['name'] = $path['filename'].'.jpg';
}
}
}
if(isset($Model->data['Attachment']['file'])){
$path = pathinfo($Model->data['Attachment']['file']['name']);
if($path['extension'] == 'jpeg'){
$Model->data['Attachment']['file']['name'] = $path['filename'].'.jpg';
}
}
if (!isset($Model->data[$Model->alias]['file'])) {
return true;
}
$file = $Model->data[$Model->alias]['file'];
if (TransferValidation::blank($file)) {
$Model->data[$Model->alias]['file'] = null;
return true;
}
if (!$this->_prepare($Model, $file)) {
$Model->invalidate('file', 'error');
return false;
}
return true;
}
こんな感じに修正。
すると、 jpeg のバグが直る。



