Esempio n. 1
0
 function thumbnail($filename, $width = 640, $height = 480)
 {
     jimport('joomla.filesystem.folder');
     jimport('joomla.filesystem.file');
     $source = "/media/com_arcnaanimals/{$filename}";
     if (!JFile::exists(JPATH_ROOT . $source)) {
         return false;
     }
     $destination = "/media/com_arcnaanimals/thumbs/{$width}_{$height}_{$filename}";
     if (!JFile::exists(JPATH_ROOT . $destination)) {
         if (!JFolder::exists(dirname(JPATH_ROOT . $destination))) {
             JFolder::create(dirname(JPATH_ROOT . $destination));
         }
         require_once JPATH_COMPONENT_ADMINISTRATOR . '/helpers/thumbnail/Thumbnail.class.php';
         $thumb = new Thumbnail(JPATH_ROOT . $source);
         // Contructor and set source image file
         $thumb->size($width, $height);
         // [OPTIONAL] set the biggest width and height for thumbnail
         $thumb->process();
         // generate image
         // save the file
         ob_start();
         $thumb->show();
         $output = ob_get_contents();
         ob_end_clean();
         JFile::write(JPATH_ROOT . $destination, $output);
     }
     $url = JURI::root(true) . $destination;
     return "<img src='{$url}' alt='{$filename}'/>";
 }
$thumb->allow_enlarge=false;              // [OPTIONAL] allow to enlarge the thumbnail
//$thumb->CalculateQFactor(10000);          // [OPTIONAL] Calculate JPEG quality factor for a specific size in bytes
//$thumb->bicubic_resample=false;             // [OPTIONAL] set resample algorithm to bicubic
*/
$thumb->img_watermark = 'watermark.png';
// [OPTIONAL] set watermark source file, only PNG format [RECOMENDED ONLY WITH GD 2 ]
/*
$thumb->img_watermark_Valing='TOP';   	    // [OPTIONAL] set watermark vertical position, TOP | CENTER | BOTTON
$thumb->img_watermark_Haling='LEFT';   	    // [OPTIONAL] set watermark horizonatal position, LEFT | CENTER | RIGHT

$thumb->txt_watermark='Watermark Text';	    // [OPTIONAL] set watermark text [RECOMENDED ONLY WITH GD 2 ]
$thumb->txt_watermark_color='FF0000';	    // [OPTIONAL] set watermark text color , RGB Hexadecimal[RECOMENDED ONLY WITH GD 2 ]
$thumb->txt_watermark_font=5;	            // [OPTIONAL] set watermark text font: 1,2,3,4,5
$thumb->txt_watermark_Valing='BOTTOM';   	// [OPTIONAL] set watermark text vertical position, TOP | CENTER | BOTTOM
$thumb->txt_watermark_Haling='RIGHT';       // [OPTIONAL] set watermark text horizonatal position, LEFT | CENTER | RIGHT
$thumb->txt_watermark_Hmargin=10;           // [OPTIONAL] set watermark text horizonatal margin in pixels
$thumb->txt_watermark_Vmargin=10;           // [OPTIONAL] set watermark text vertical margin in pixels

$thumb->size_width(150);				    // [OPTIONAL] set width for thumbnail, or
$thumb->size_height(113);				    // [OPTIONAL] set height for thumbnail, or
$thumb->size_auto(150);					    // [OPTIONAL] set the biggest width or height for thumbnail
*/
$thumb->size(150, 113);
// [OPTIONAL] set the biggest width and height for thumbnail
$thumb->process();
// generate image
$thumb->show();
// show your thumbnail, or
//$thumb->save("thumbnail.".$thumb->output_format);			// save your thumbnail to file, or
//$image = $thumb->dump();                  // get the image
//echo ($thumb->error_msg);                 // print Error Mensage
 public static function update($values, $user)
 {
     $id = $values['id'];
     if ($id) {
         $q = new Doctrine_Query();
         $q = $q->select('t.*')->from('Theme t');
         $q = $q->addWhere('id = ?', array($id));
         if (!$user->getRole() == User::ADMIN) {
             $q = $q->addWhere('user_id = ?', array($user->getId()));
         }
         $theme = $q->fetchOne();
     } else {
         $theme = new Theme();
     }
     if ($theme) {
         $theme->setName($values['name']);
         $theme->setDescription($values['description']);
         if (!$theme->getUserId()) {
             $theme->setUserId($user->getId());
         }
         $file = $values['file'];
         if ($file) {
             $filename = $file->getOriginalName();
             $theme->setFileName($filename);
         }
         $theme->setApproved(false);
         $theme->save();
         $folderpath = $theme->getFolderPath();
         if (!is_dir($folderpath)) {
             mkdir($folderpath);
         }
         if ($file) {
             $filepath = $folderpath . $theme->getFileName();
             $file->save($filepath);
         }
         $screenshot = $values['screenshot'];
         if ($screenshot) {
             $screenshotpath = $folderpath . $theme->getId() . $screenshot->getOriginalName();
             $screenshot->save($screenshotpath);
             $smallThumb = new Thumbnail($screenshotpath);
             if ($smallThumb->getCurrentWidth() > 150 || $smallThumb->getCurrentHeight() > 150) {
                 $smallThumb->resize(150, 150);
             }
             $smallThumb->show(100, $folderpath . 'smallthumb.png');
             $bigThumb = new Thumbnail($screenshotpath);
             if ($bigThumb->getCurrentWidth() > 500 || $bigThumb->getCurrentHeight() > 500) {
                 $bigThumb->resize(500, 500);
             }
             $bigThumb->show(100, $folderpath . 'bigthumb.png');
             $screenshot = new Thumbnail($screenshotpath);
             $screenshot->show(100, $folderpath . 'screenshot.png');
             unlink($screenshotpath);
         }
         $outputs = array();
         if ($file) {
             exec(Tools::get('edje_list_path') . ' ' . $filepath, $outputs);
             $groups = array_splice($outputs, 4);
             $groups = array_keys(array_flip($groups));
             $name = substr($outputs[0], 6);
             if ($name) {
                 $theme->setName($name);
             }
             $author = substr($outputs[1], 8);
             if ($author) {
                 $theme->setAuthor($author);
             }
             $license = substr($outputs[2], 9);
             $theme->setLicense($license);
             $version = substr($outputs[3], 9);
             $theme->setVersion($version);
             $theme->save();
             $theme->clearThemeGroups();
             foreach ($groups as $group) {
                 $theme->addThemeGroup($group);
             }
         }
         return $theme;
     }
     return null;
 }
 public static function update($values, $user)
 {
     $id = $values['id'];
     if ($id) {
         $q = new Doctrine_Query();
         $q = $q->select('m.*')->from('Madule m');
         $q = $q->addWhere('id = ?', array($id));
         if (!$user->getRole() == User::ADMIN) {
             $q = $q->addWhere('user_id = ?', array($user->getId()));
         }
         $module = $q->fetchOne();
     } else {
         $module = new Madule();
     }
     if ($module) {
         $module->setName($values['name']);
         $module->setDescription($values['description']);
         $module->setSourceUrl($values['source_url']);
         if (!$module->getUserId()) {
             $module->setUserId($user->getId());
         }
         $module->setApplicationId($values['application_id']);
         $module->setApproved(false);
         $module->save();
         $folderpath = $module->getFolderPath();
         if (!is_dir($folderpath)) {
             mkdir($folderpath);
         }
         $screenshot = $values['screenshot'];
         if ($screenshot) {
             $screenshotpath = $folderpath . $module->getId() . $screenshot->getOriginalName();
             $screenshot->save($screenshotpath);
             $smallThumb = new Thumbnail($screenshotpath);
             if ($smallThumb->getCurrentWidth() > 150 || $smallThumb->getCurrentHeight() > 150) {
                 $smallThumb->resize(150, 150);
             }
             $smallThumb->show(100, $folderpath . 'smallthumb.png');
             $bigThumb = new Thumbnail($screenshotpath);
             if ($bigThumb->getCurrentWidth() > 500 || $bigThumb->getCurrentHeight() > 500) {
                 $bigThumb->resize(500, 500);
             }
             $bigThumb->show(100, $folderpath . 'bigthumb.png');
             $screenshot = new Thumbnail($screenshotpath);
             $screenshot->show(100, $folderpath . 'screenshot.png');
             unlink($screenshotpath);
         }
         return $module;
     }
     return null;
 }
Esempio n. 5
0
 function thumb()
 {
     global $registrant_avatar_width, $registrant_avatar_height;
     ob_clean();
     include JPATH_SITE . "/components/com_dtregister/lib/thumbnail.inc.php";
     $registrant_avatar_width = JRequest::getVar('w', $registrant_avatar_width);
     $registrant_avatar_height = JRequest::getVar('h', $registrant_avatar_height);
     $thumb = new Thumbnail($_GET['filename']);
     $thumb->resize($registrant_avatar_width, $registrant_avatar_height);
     $thumb->show();
     exit;
 }
Esempio n. 6
0
 function showImage($filePath, $width, $height)
 {
     //echo $filePath;die;
     App::import('Vendor', 'Thumbnail', array('file' => 'thumbnail.inc.php'));
     /* ERROR Image */
     if (!file($filePath)) {
         $filePath = URL_SITE . '/img/noimage.png';
         $size = getimagesize($filePath);
         if (empty($width)) {
             $width = $size[0];
         }
     }
     /* End of error image */
     $thumb = new Thumbnail($filePath);
     $size = getimagesize($filePath);
     /* width and height setting and resize width and height with respect to image width and height  */
     if (!empty($width)) {
         if ($size[0] > $width) {
             $width = $width;
         } else {
             $width = $size[0];
         }
     }
     if (!empty($height)) {
         if ($size[1] > $height) {
             $height = $height;
         } else {
             $height = $size[0];
         }
     }
     //echo $width.'/'.$height;die;
     /* end of setting */
     //check to see if file exists
     //$thumb->resize($width,$height);
     echo $thumb->show();
     exit;
     //$thumb->crop(110,120,$width,$height);
     if (isset($filePath)) {
         $thumb->show();
         exit;
     } else {
         $thumb->destruct();
         exit;
     }
 }