public function save($con = null) { if (!file_exists(sfConfig::get('sf_upload_dir') . '/sfCart/products/')) { mkdir(sfConfig::get('sf_upload_dir') . '/sfCart/products/'); } $return = parent::save($con); $fullpath = $this->getValue('photo_path'); $genFileName = basename($fullpath); $thumbpath1 = sfConfig::get('sf_upload_dir') . '/sfCart/products/48x48/' . $genFileName; $thumbpath2 = sfConfig::get('sf_upload_dir') . '/sfCart/products/172x129/' . $genFileName; $thumbpath3 = sfConfig::get('sf_upload_dir') . '/sfCart/products/300x200/' . $genFileName; if (!file_exists(sfConfig::get('sf_upload_dir') . '/sfCart/products/48x48/')) { mkdir(sfConfig::get('sf_upload_dir') . '/sfCart/products/48x48/'); } if (!file_exists(sfConfig::get('sf_upload_dir') . '/sfCart/products/172x129/')) { mkdir(sfConfig::get('sf_upload_dir') . '/sfCart/products/172x129/'); } if (!file_exists(sfConfig::get('sf_upload_dir') . '/sfCart/products/300x200/')) { mkdir(sfConfig::get('sf_upload_dir') . '/sfCart/products/300x200/'); } //not handling if file already exists if (file_exists($fullpath)) { $thumbnail = new Thumb(48, 48); $thumbnail->loadFile($fullpath); $thumbnail->cropImage(48, 48, $fullpath, $thumbpath1); $thumbnail = new Thumb(172, 129); $thumbnail->loadFile($fullpath); $thumbnail->cropImage(172, 129, $fullpath, $thumbpath2); $thumbnail = new Thumb(300, 200); $thumbnail->loadFile($fullpath); $thumbnail->cropImage(300, 200, $fullpath, $thumbpath3); } return $return; }