quinta-feira, 26 de julho de 2012

EXTENSÃO PARA IMOBILIÁRIA - JOOMLA 2.5

Após peneirar bem as extensões joomla em busca de uma extensão para atender a sites de imobiliárias, encontrei um excelente componente, o Joomla Estate Agency JEA, ele é bem completo e o pouco que falta, pode ser suprido com outros módulos e plugins, vai de acordo com a criatividade de cada um.

Neste momento estou a escrever este post, apenas para explicar como alterar o simbolo da moeda para real  ao invés de euro, como vem no componente.

O componente pode ser baixado através deste link:  http://joomlacode.org/gf/project/jea/frs/


O pacote de tradução para o português pt_BR neste link: http://joomlacode.org/gf/project/jea/docman/?subdir=678

Gentilmente traduzido por Bruno Musolino

Toda documentação do componente pode ser adquirida em qualquer dos links acima, aproveite e dê uma boa olhada no demo que apresenta a extensão para sites de imobiliária, este componente joomla para imobiliária apresenta funções simples e que podem ser de grande ajuda na hora de desenvolver um projeto. Mas como disse antes ele pode ser associado a outras extensões para ficar mais atrativo.

No entanto após instalado e traduzido, verifiquei que no site apresentava a moeda em Euros, e somente valor inteiro, bem quanto ao tipo de moeda, encontrei uma solução, acesse o seu cpanel e vá em gerenciador de arquivos, depois basta alterar o seguinte arquivo que fica no diretório:

components/com_jea/helpers/html/utility.php



 public static function formatPrice($price=0 , $default='')
    {
        $params = self::getParams();
        if (!empty($price)) {
            $currency_symbol     = $params->get('currency_symbol', '&euro');  ==>substituir por 'R$'
            $decimal_separator   = $params->get('decimals_separator', ',');
            $price = self::formaNumber($price);
_____________________________________
Assim vai ficar a linha depois da alteração:     
$currency_symbol     = $params->get('currency_symbol', 'R$');

Pronto, desta maneira o valor se apresentará da seguinte forma no seu site, ex: 800 R$ e não 800 €

Se alguém mais se aventurar a melhorar um pouco mais e quiser compartilhar, por favor deixe seu comentário.

Blog de: Vinícius Luna

2 comentários:

  1. acho que o código inteiro ficaria assim, pra que haja formatação da milhar e decimal

    get('currency_symbol', 'R$');
    $decimal_separator = $params->get('decimals_separator', ',');
    $price = self::formaNumber($price);

    // Is currency symbol before or after price ?
    if ($params->get('symbol_position', 0)) {
    $price = $price .' '. $currency_symbol;
    } else {
    $price = $currency_symbol .' '. $price;
    }
    return $price;

    } else {
    return $default ;
    }
    }

    /**
    * Format surface following the component configuration.
    * If surface is empty, return a default string value.
    *
    * @param float|int $price
    * @param string $default
    * @return unknown
    */
    public static function formatSurface($surface=0, $default='')
    {
    $params = self::getParams();
    if (!empty($surface)) {
    $surfaceMeasure = $params->get('surface_measure', 'm²');
    $surface = self::formaNumber($surface);
    return $surface . ' ' . $surfaceMeasure;
    } else {
    return $default ;
    }
    }

    /**
    * Format number following the component configuration.
    *
    * @param float|int $price
    * @return unknown
    */
    public static function formaNumber ($number=O)
    {
    $params = self::getParams();
    $number = (float) $number;
    $decimal_separator = $params->get('decimals_separator', ',');
    $thousands_separator = $params->get('thousands_separator', '. ');
    $decimals = (int) $params->get('decimals_number', '2');
    return number_format( $number, $decimals, $decimal_separator, $thousands_separator);
    }


    protected static function getParams()
    {
    if (self::$_params == null) {
    self::$_params = JComponentHelper::getParams('com_jea');
    }
    return self::$_params;
    }

    }

    ResponderExcluir
  2. Boa noite Edenilson, obrigado pela contribuição!

    Vou testar esta parte do código e funcionando lhe comunicarei.

    Aproveito para lhe convidar para ser um colunista do Blog, caso queira, lhe enviarei permissões de postagens.

    ResponderExcluir