Your Cart is currently empty!
Product update
Coupon
add
Coupon code invalid! Please re-enter!
AJAX loader
You are here: HomeForum
Welcome, Guest

SJ Financial Problem
(1 viewing) (1) Guest
  • Page:
  • 1
  • 2

TOPIC: SJ Financial Problem

Re: SJ Financial Problem 10 years, 2 months ago #20864

Strict Standards: Non-static method JSite::getMenu() should not be called statically, assuming $this from incompatible context in /home/radionaw/public_html/passportnew/plugins/system/yt/includes/site/lib/yt_template.php on line 107

Strict Standards: Non-static method JApplication::getMenu() should not be called statically, assuming $this from incompatible context in /home/radionaw/public_html/passportnew/includes/application.php on line 539

Strict Standards: Non-static method JSite::getMenu() should not be called statically, assuming $this from incompatible context in /home/radionaw/public_html/passportnew/plugins/system/yt/includes/site/lib/yt_template.php on line 107

Strict Standards: Non-static method JApplication::getMenu() should not be called statically, assuming $this from incompatible context in /home/radionaw/public_html/passportnew/includes/application.php on line 539
SJ Financial - шаблон joomla Joomla
پاسپۆڕتی سلێمانی

Strict Standards: Redefining already defined constructor for class YtObject in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytobject.php on line 21


Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Home

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Explore

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Module Variations

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Extensions

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Module positions

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Typography

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Shortcodes

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
What's new?

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Joomla Pages

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Joomla content

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
List All Categories

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Featured Articles

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Archived Articles

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Category List

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Category Blog

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Category Blog (1 column)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Category Blog (2 columns)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Category Blog (3 columns)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Category Blog (4 columns)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Single Article

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Page breaks

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Weblinks

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
News Feed

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
List News Feeds in a Category

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Single news feed

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Search

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Searchcom_search component

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Smart Searchsmart_search component

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
User Component

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Registration Form

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Login Form

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
User Profile

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Edit User Profile

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Password Reset

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Username Reminder Request

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Contact

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
K2

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
K2 Category

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
K2 User Page

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
K2 Tags Page

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
K2 Item

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Latest items (1 column)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Latest items (2 columns)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Latest items (3 columns)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Latest items (4 columns)

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Companies
About company

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 506

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 511
Donec vulputate velit ut

Lorem ipsum do vlor sit amet onsect etur piscing elit. Proin rutrum nisi eu ante mattis sit amet
Profile Company

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 506

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 511
Quick Links

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 506

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 511
Nam at nulla nib
Business Services
Development
Maecenas consequ
Sed scelerisque
Gravida sapien
Etiam vehicula alique
These companies
Toyota to reveal
Ong awaited new
Corolla
Sed scelerisque
Aliquet orci quis
Big Tech

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 208
Global Economy
Top Videos

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 506

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/templates/sj_financial/menusys/ytmenu.php on line 511

Strict Standards: Non-static method BaseHelper::_cleanText() should not be called statically in /home/radionaw/public_html/passportnew/modules/mod_sj_meganews/core/helper.php on line 185

Strict Standards: Non-static method BaseHelper::_cleanText() should not be called statically in /home/radionaw/public_html/passportnew/modules/mod_sj_meganews/core/helper.php on line 185

Strict Standards: Non-static method BaseHelper::_cleanText() should not be called statically in /home/radionaw/public_html/passportnew/modules/mod_sj_meganews/core/helper.php on line 185

Strict Standards: Non-static method BaseHelper::_cleanText() should not be called statically in /home/radionaw/public_html/passportnew/modules/mod_sj_meganews/core/helper.php on line 185

Strict Standards: Only variables should be assigned by reference in /home/radionaw/public_html/passportnew/modules/mod_sj_meganews/core/helper_base.php on line 237

Fatal error: Call to undefined function exif_imagetype() in /home/radionaw/public_html/passportnew/modules/mod_sj_meganews/core/helper_image.php on line 262
The topic has been locked.

Re: SJ Financial Problem 10 years, 2 months ago #20866

  • SA Thuy
Dear Alan Ismael,

Please go to the file: /public_html/passportnew/modules/mod_sj_meganews/core/helper_image.php and find:

if (!exif_imagetype()){


=> Please remove exclamation mark :


if (exif_imagetype()){


Then set Error Reporting to Default

Thanks
The topic has been locked.

Re: SJ Financial Problem 10 years, 2 months ago #20867

  • SA Thuy
Dear Alan Ismael,

You shouldn't public your account in forum, please add it in :
Require Help
From Staff + Mod/Admin?

when you reply
I deleted the post.


Thanks
The topic has been locked.

Re: SJ Financial Problem 10 years, 2 months ago #20868

Dear SA thuy
thank you for replay.
this line not fond in helper_image.php


<?php
/**
* @package Sj Mega News
* @version 2.5
* @license www.gnu.org/licenses/gpl-2.0.html GNU/GPL
* @copyright (c) 2012 YouTech Company. All Rights Reserved.
* @author YouTech Company www.smartaddons.com
*
*/
defined('_JEXEC') or die;

class ImageHelper{
protected static $instances = array();
protected static $defaults = array(
'type' => null,
'width' => null,
'height' => null,
'quality' => 90,
'function' => null,
'function_mode' => null,
'transparency' => true,
'background' => array('r'=>255, 'g'=>255, 'b'=>255)
);

public static $cache = null;
public static $cache_url = null;

public static $supports = array(
IMAGETYPE_PNG,
IMAGETYPE_GIF,
IMAGETYPE_JPEG
);
public static $functions = array(
'resize',
'crop',
'rotate',
'flip_horizontal',
'flip_vertical'
);
public static $modes = array(
'center',
'fill',
'fit',
'stretch'
);

protected $image = null;
protected $in = null;
protected $out = null;
protected $errors = array();
protected $options = null;
protected $_process = 1;
protected $debug = false;
/**
*
* @param mixed $image
* @param array $options
* @return ImageHelper
*/
public static function init($image, $options = array()){
$cacheid = count(self::$instances);
if (!isset(self::$instances[$cacheid])){
self::$instances[$cacheid] = new ImageHelper($image, $options);
}
return self::$instances[$cacheid];
}

/**
* ImageHelper constructor
* @param unknown_type $image
* @param unknown_type $options
*/
public function __construct($image = null, $options = array()){
!is_null($image) && $this->image = $image;

// defaults
foreach (ImageHelper::$defaults as $name => $value){
$this->options[$name] = array_key_exists($name, $options) ? $options[$name] : $value;
}
$this->in = array(
'type'=>null,
'src' =>null
);
$this->out = array();
$this->initCache($options);
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::__construct');
}

public static function setDefault($params = null){
self::$defaults = array(
'type' => null,
'width' => null,
'height' => null,
'quality' => 90,
'function' => null,
'function_mode' => null,
'transparency' => true,
'background' => array('r'=>255, 'g'=>255, 'b'=>255)
);

if ($params instanceof JRegistry){
$opts = array();

// output type ?
$imgcfg_type = $params->get('imgcfg_type', 0);
if (in_array($imgcfg_type, array(IMAGETYPE_JPEG, IMAGETYPE_PNG, IMAGETYPE_GIF))){
$opts['type'] = $imgcfg_type;
}

// function ?
$imgcfg_fn = $params->get('imgcfg_function', 'none_resize');
$imgcfg_fn = explode('_', $imgcfg_fn);
if ( in_array($imgcfg_fn[0], self::$functions) ){
$opts['function'] = $imgcfg_fn[0];
if ($imgcfg_fn[0] == 'resize'){
if ( isset($imgcfg_fn[1]) && in_array($imgcfg_fn[1], self::$modes) ){
$opts['function_mode'] = $imgcfg_fn[1];
} else {
$opts['function_mode'] = self::$modes[2];
}
}

}

// background
$imgcfg_background = $params->get('imgcfg_background', null);
if (!is_null($imgcfg_background)){
$opts['background'] = $imgcfg_background;
}

// quality
$imgcfg_quality = $params->get('imgcfg_quality', null);
if ( $imgcfg_quality != null && intval($imgcfg_quality) > 0 && intval($imgcfg_quality) < 100 ){
$opts['quality'] = intval($imgcfg_quality);
}

// transparency
$imgcfg_transparency = $params->get('imgcfg_transparency', 1);
if ( $imgcfg_transparency != null){
$opts['transparency'] = $imgcfg_transparency ? true : false;
}

// dimension ?
$imgcfg_w = $params->get('imgcfg_width', 0);
$imgcfg_h = $params->get('imgcfg_height', 0);
if ( intval($imgcfg_w) > 0 ){
$opts['width'] = $imgcfg_w;
}
if ( intval($imgcfg_h) > 0 ){
$opts['height'] = $imgcfg_h;
}

self::$cache = $params->get('imgcfg_cache');
self::$cache_url = $params->get('imgcfg_cache_url');
// $this->initCache($cache_params);
}
self::$defaults = array_merge(self::$defaults, $opts);
}

public static function testDefault(){
echo 'ImageHelper::$defaults'.'<br>';
//var_dump(self::$defaults);
}

/**
* convert absolute path in joomla to url (not 4 script file)
* @param string $jpath must contain JPATH_BASE
* @return string
*/
public function jpath2url($jpath){
$realpath = realpath($jpath);
if (!empty($realpath) && defined('JPATH_BASE')){
$jpathbase = realpath(JPATH_BASE);
if (stripos($realpath, $jpathbase)===0){
$subpath = str_replace($jpathbase, '', $realpath);
if (!empty($subpath) && DIRECTORY_SEPARATOR==$subpath[0]){
$subpath = substr($subpath, 1);
}
return JPath::clean($subpath, '/');
}
}
return $jpath;
}

public function initCache($options = array()){
$private_cache = array_key_exists('cache', $options) ? $options['cache'] : null;
$private_cache_url = array_key_exists('cache_url', $options) ? $options['cache_url'] : null;

if (empty($private_cache)){
if (is_null(ImageHelper::$cache) && defined('JPATH_CACHE')){
ImageHelper::$cache = JPATH_CACHE.'/resized';
if (!file_exists(ImageHelper::$cache)){
if (!@mkdir(ImageHelper::$cache, 0755, true)){
ImageHelper::$cache = null;
}
}
}
if (is_null(ImageHelper::$cache)){
ImageHelper::$cache = dirname(__FILE__).'/resized';
if (!file_exists(ImageHelper::$cache)){
if (!@mkdir(ImageHelper::$cache, 0755, true)){
ImageHelper::$cache = null;
}
}
}
if (is_null(ImageHelper::$cache)){
$this->errors[] = 'Can not create cache folder!';
} else {
$private_cache = ImageHelper::$cache;
}
}

if (empty($private_cache_url)){
if (empty($private_cache)){
// noop
} else {
$private_cache_url = $this->jpath2url($private_cache);
}
}

$this->out['cache'] = $private_cache;
$this->out['cache_url'] = $private_cache_url;
}

/**
* Get image type for input url or path of file.
* @return mixed
*/
protected function getInputType(){
if ( !isset($this->in['type']) ){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::getInputType');
if (is_string($this->image)){
$path = $this->image;
} else {
$path = @$this->image['src'];
}

if (is_string($path)){
$ps = JString::parse_url($path);
if ( array_key_exists('path', $ps) && !empty($ps['path']) ){
$isHttp = isset($ps['scheme']) && in_array($ps['scheme'], array('http', 'https'));
if (!$isHttp || JURI::isInternal($path)){
$path = $ps['path'];
} else {
// is extenal url.
$this->in['type'] = 'url';
$this->in['src'] = $path;
return $this->in['type'];
}
}
} else if (!$path){
$this->errors[] = 'Image path must be string or stored in array_argument[src]!';
}
//var_dump('Path: ', $path);
if ( !file_exists($path) ){
$this->errors[] = 'Image path is not exists!';
} else {
//var_dump('EXISTS');
$this->in['src'] = realpath($path);
$infor = array();
if ( !function_exists('exif_imagetype') ){
$intype = exif_imagetype($path);
} else {
$infor = getimagesize($path);
$intype= @$infor[2];
}
switch ($intype){
case IMAGETYPE_PNG:
$this->in['type'] = IMAGETYPE_PNG;
break;
case IMAGETYPE_GIF:
$this->in['type'] = IMAGETYPE_GIF;
break;
case IMAGETYPE_JPEG:
$this->in['type'] = IMAGETYPE_JPEG;
break;
default:
}
}
}
return $this->in['type'];
}

protected function getInputResource(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::getInputResource');
//var_dump('getInputResource: '.$this->in['src']);
if ( !isset($this->in['image']) ){
$intype = $this->getInputType();
switch ($intype){
case IMAGETYPE_PNG:
$this->in['image'] = imagecreatefrompng($this->in['src']);
break;
case IMAGETYPE_GIF:
$this->in['image'] = imagecreatefromgif($this->in['src']);
break;
case IMAGETYPE_JPEG:
$this->in['image'] = imagecreatefromjpeg($this->in['src']);
break;
default:
$this->in['image'] = null;
return false;
}
}
return is_resource($this->in['image']) ? $this->in['image'] : null;
}

protected function validOptions(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::validOptions');
// TODO: validate input
$type = $this->getInputType();
$input_type_ok = ($type=='url') || in_array($type, ImageHelper::$supports);
if ( !$input_type_ok ){
$this->errors[] = 'Input type is not supported!';
$this->_process = 0;
} else if ($type=='url'){
$this->_process = 0;
}

// required options
$output_type_ok = !is_null($this->options['type']) && in_array($this->options['type'], ImageHelper::$supports);
if ( !$output_type_ok ){
if ( $input_type_ok ){
$this->options['type'] = $type;
}
}

if ( !($this->options['width']>0 || $this->options['height']>0) ){
$this->errors[] = 'Output width or height must be greater than zero (>0)!';
$this->_process = 0;
}

if ( in_array($this->options['function'], ImageHelper::$functions) ){
if ($this->options['function'] == 'resize' && !in_array($this->options['function_mode'], ImageHelper::$modes)){
$this->errors[] = 'Resize mode is not valid! should be in ['.implode(', ', ImageHelper::$modes).']';
$this->_process = 0;
}
} else {
$this->errors[] = 'Output function is not valid! should be in ['.implode(', ', ImageHelper::$functions).']';
$this->_process = 0;
}

// auto parse options
if ( !isset($this->options['quality']) || !is_numeric($this->options['quality']) || $this->options['quality']==0 ){
$this->options['quality'] = 90;
} else {
if ($this->options['quality'] < 10){
$this->options['quality'] = 10;
}
if ($this->options['quality'] > 100){
$this->options['quality'] = 100;
}
}

$c = &$this->options['background'];
if ( is_string($this->options['background']) ){
if ( preg_match('/^#?([a-fA-F0-9]{3}|[a-fA-F0-9]{6})$/i', $this->options['background'], $m) ){
$hex = isset($m[1]) ? $m[1] : null;
if (strlen($hex)==3){
$hex = $hex[0].$hex[0].$hex[1].$hex[1].$hex[2].$hex[2];
}
if ($hex){
$dec = hexdec($hex);
$this->options['background'] = array(
'r' => 0xFF & ($dec >> 0x10),
'g' => 0xFF & ($dec >> 0x8),
'b' => 0xFF & $dec
);
} else {
$this->options['background'] = null;
}
} else {
$this->options['background'] = null;
}
}
if ( !is_array($this->options['background']) ){
$this->options['background'] = null;
} else {
$valid = 1;
$bg = $this->options['background'];
foreach (array('r', 'g', 'b') as $e){
if ( !array_key_exists($e, $bg) || ($bg[$e]<0) || ($bg[$e]>255) ){
$valid = 0;
break;
}
}
if (!$valid){
$this->options['background'] = null;
}
}

return count($this->errors) == 0;
}

protected function getOutputFile(){
if ( !array_key_exists('src', $this->out) || is_null($this->out['src']) ){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::getOutputFile');
$hash = md5( serialize( array($this->options, $this->in['src'], $this->in['type']) ) );
if (defined('DEBUG') && 0){
$hash = basename($this->in['src'], '.jpg');
$w = isset($this->options['width']) ? $this->options['width'] : 0;
$h = isset($this->options['height']) ? $this->options['height'] : 0;
$hash .= '-'.$w.'x'.$h;
$hash .= '-'.$this->options['function'];
$hash .= '-'.$this->options['function_mode'];
$hash .= '-'.$this->options['quality'];
}
switch ($this->options['type']){
case IMAGETYPE_PNG:
$ext = '.png';
break;
case IMAGETYPE_GIF:
$ext = '.gif';
break;
case IMAGETYPE_JPEG:
$ext = '.jpg';
break;
default:
$ext = image_type_to_extension($this->options['type'], true);
}
$this->out['src'] = $this->out['cache'].'/'.$hash.$ext;
$this->save2f();
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::getOutputFile::::'.$this->out['src']);
}
return $this->out['src'];
}

protected function getOutputUrl(){
if (!isset($this->out['url'])){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::getOutputUrl');
if ( $this->validOptions() && in_array($this->options['type'], ImageHelper::$supports) ){
$this->out['url'] = $this->out['cache_url'].'/'.basename( $this->getOutputFile() );
} else {
$original = is_string($this->image) ? $this->image : @$this->image['src'];
if (!(stripos($original, 'http')===0)){
$original = $this->jpath2url($original);
}
$this->out['url'] = $original;
$this->debug && JFactory::getApplication()->enqueueMessage('Not validOptions:: '.$this->out['url']);
}
$is_ajax = ! empty ( $_SERVER ['HTTP_X_REQUESTED_WITH'] ) && strtolower ( $_SERVER ['HTTP_X_REQUESTED_WITH'] ) == 'xmlhttprequest';
if ($is_ajax && !(stripos($this->out['url'], 'http')===0)){
$this->out['url'] = JUri::root(). $this->out['url'];
}
}
return $this->out['url'];
}

/**
* @return mixed
*/
public function output(){
if ( $this->validOptions() && $this->getInputResource()){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::output');
$this->process();
if (is_resource($this->out['image'])){
$oImage = &$this->out['image'];
switch( $this->options['type'] ){
case IMAGETYPE_JPEG:
imagejpeg($oImage, $this->getOutputFile(), $this->options['quality']);
break;
case IMAGETYPE_GIF:
imagegif($oImage, $this->getOutputFile());
break;
case IMAGETYPE_PNG:
imagepng($oImage, $this->getOutputFile(), 10 - round($this->options['quality']/10.0));
break;
}
}
}
}

/**
*@return string
*/
public function tag(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::tag');
if (!$this->getOutputUrl()){
return '';
}
$tag = array();
if (is_array($this->image)){
foreach ($this->image as $att => $val){
if ($att == 'src'){
$tag[] = 'src="'.$this->getOutputUrl().'"';
} else {
$tag[] = $att.'="'.$val.'"';
}
}
if (!array_key_exists('alt', $this->image)){
$tag[] = 'alt="'.$this->getOutputUrl().'"';
}
} else {
$tag[] = 'src="'.$this->getOutputUrl().'"';
$tag[] = 'alt="'.$this->getOutputUrl().'"';
}
return count($tag) ? '<img '.implode(' ', $tag).'/>' : '';
}

/**
* @return string
*/
public function path(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::path');
return $this->__toString();
}

public function src(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::src');
return $this->getOutputUrl();
}


/**
* @return string
*/
public function error(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::error');
return $this->errors;
}


/**
* Resize input image by size
* @param int $w
* @param int $h
* @return ImageHelper
*/

public function resize($w = 0, $h = 0){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::resize');
if ($w > 0) $this->options['width'] = $w;
if ($h > 0) $this->options['height'] = $h;
return $this;
}

protected function actionPerformed(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::actionPerformed');
$sImage = $this->getInputResource();
if ( !is_resource($sImage) ) return;
$sw = imagesx($sImage);
$sh = imagesy($sImage);
if ( $this->options['function']=='resize' ){
$ow = is_null($this->options['width']) ? 0 : intval($this->options['width']);
$oh = is_null($this->options['height']) ? 0 : intval($this->options['height']);
if ( $ow==0 && $oh==0 ){
die('thoi khoi resize');
} else if ($ow == 0){
// resize by height.
$this->options['function_mode'] = ImageHelper::$modes[3];
$ow = $this->options['width'] = round($oh * $sw/$sh);
} else if ($oh == 0){
$this->options['function_mode'] = ImageHelper::$modes[3];
$oh = $this->options['height'] = (int)round($ow * $sh/$sw);
// resize by width
} else if ( abs($oh-round($ow*$sh/$sw)) <= 1 ){
// resize by ca hai
$this->options['function_mode'] = ImageHelper::$modes[3];
$oh = $this->options['height'] = round($ow*$sh/$sw);
}
$oImage = $this->getCanvas();
// build agrs
$sx = $sy = 0;
$dx = $dy = 0;
$dw = $sw;
$dh = $sh;
switch($this->options['function_mode']){
case ImageHelper::$modes[0]:
if ($ow > $dw) {
$dx = ($ow-$dw)/2;
}
if ($oh > $dh) {
$dy = ($oh-$dh)/2;
}
if ($sw > $ow){
$sx = ($sw-$ow)/2;
}
if ($sh > $oh){
$sy = ($sh-$oh)/2;
}
break;
case ImageHelper::$modes[1]:
$or = 1.0*$sw/$sh;
if ($ow < $oh*$or){
$dw = round($oh*$or);
$dh = $oh;
$dx = ($ow-$dw)/2;
$dy = 0;
} else {
$dw = $ow;
$dh = round($ow/$or);
$dx = 0;
$dy = ($oh-$dh)/2;
}
break;
case ImageHelper::$modes[2]:
$or = 1.0*$sw/$sh;
if ($ow > $oh*$or){
$dw = round($oh*$or);
$dh = $oh;
$dx = ($ow-$dw)/2;
$dy = 0;
} else {
$dw = $ow;
$dh = round($ow/$or);
$dx = 0;
$dy = ($oh-$dh)/2;
}
break;
default:
case ImageHelper::$modes[3]:
$dw = $ow;
$dh = $oh;
break;
}

imagecopyresampled(
$oImage,
$sImage,
$dx, $dy, $sx, $sy,
$dw, $dh, $sw, $sh
);

$this->out['image'] = $oImage;
}
return 1;
}

// public function __destruct(){
// $this->save2f();
// $this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::__destruct');
// }

protected function save2f(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::save2f');
if ($this->_process && ($of = $this->getOutputFile()) && !file_exists($of)){
$this->actionPerformed();
if ( array_key_exists('image', $this->out) && is_resource($this->out['image'])){
$oImage = &$this->out['image'];
switch( $this->options['type'] ){
case IMAGETYPE_JPEG:
imagejpeg($oImage, $of, $this->options['quality']);
break;
case IMAGETYPE_GIF:
imagegif($oImage, $of);
break;
case IMAGETYPE_PNG:
imagepng($oImage, $of, 10 - round($this->options['quality']/10.0));
break;
}
}
}
}

protected function getCanvas(){
if ( !isset($this->out['image']) ){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::getCanvas');
$oImage = imagecreatetruecolor($this->options['width'], $this->options['height']);
if ($this->options['transparency'] && in_array($this->options['type'], array(IMAGETYPE_GIF, IMAGETYPE_PNG))){
if (IMAGETYPE_GIF == $this->in['type']){
$trans_index = imagecolortransparent($this->in['image']);
if ($trans_index >= 0) {
$trans_color = imagecolorsforindex($this->in['image'], $trans_index);
$trans_index = imagecolorallocate($oImage, $trans_color['red'], $trans_color['green'], $trans_color['blue']);
imagefill($oImage, 0, 0, $trans_index);
imagecolortransparent($oImage, $trans_index);
}
} else if (IMAGETYPE_PNG == $this->in['type']){
$png_alpha = ((ord(file_get_contents($this->in['src'], false, null, 25, 1)) & 6) & 4) == 4;
if ($png_alpha){
imagealphablending($oImage, true);
$transparent = imagecolorallocatealpha($oImage, 0, 0, 0, 127);
imagefilledrectangle($oImage, 0, 0, $this->options['width'], $this->options['height'], $transparent);
imagealphablending($oImage, false);
imagesavealpha($oImage, true);
}
}
} else if ( !is_null($this->options['background'])
&& $this->options['function']==ImageHelper::$functions[0]
&& in_array($this->options['function_mode'], array(ImageHelper::$modes[0], ImageHelper::$modes[2]))){
$bgc = imagecolorallocate(
$oImage,
$this->options['background']['r'],
$this->options['background']['g'],
$this->options['background']['b']
);
imagefilledrectangle($oImage, 0, 0, $this->options['width'], $this->options['height'], $bgc);
}
$this->out['image'] = $oImage;
}
return $this->out['image'];
}

public function __toString(){
$this->debug && JFactory::getApplication()->enqueueMessage('ImageHelper::__toString');
$f = $this->getOutputFile();
return is_null($f) ? '' : $f;
}
}
The topic has been locked.

Re: SJ Financial Problem 10 years, 2 months ago #20870

  • SA Thuy
Dear Alan Ismael,


It's my mistake, please find:
if ( !function_exists('exif_imagetype') ){

=> Edit to:
if ( function_exists('exif_imagetype') ){


Thanks
The topic has been locked.

Re: SJ Financial Problem 10 years, 2 months ago #20877

Dear SA thuy
My problem solved, many thanks for your cooperation, appreciated.
The topic has been locked.
  • Page:
  • 1
  • 2
Time to create page: 0.51 seconds

Notification

Please find your issue via Suggested Posts before submitting your question. We have solved the most of issues and maybe your issue was solved before.

Latest My Topics

No posts to display.

Love all our templates?

Join our membership clubs starting at $49 only for access to all of our templates

Join Now
Home Pricing
Your Cart is currently empty!
Product update
Coupon
add
Coupon code invalid! Please re-enter!
AJAX loader
SearchSupport
Magento Themes Magento Extensions Free Magento Extensions Prestashop Themes Prestashop Modules Magento 2 Themes