Giter Site home page Giter Site logo

biblioteca-codigos-magento's People

Contributors

rafaelstz avatar tchays avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

biblioteca-codigos-magento's Issues

Magento 1.9.2.2

Não funciona na versão 1.9.2.2, não tem suporte pra ela?

Módulo parcelamento dinômico produtos configuráveis e simples com variações - Newer 7

Olá, tudo bem?
Peço desculpas por abrir essa issue por aqui, mas estou com um módulo que após algumas modificações, está praticamente finalizado e
gostaria de disponibilizar para a comunidade, pois ele apresenta os valores parcelados dinamicamente para produtos configuráveis
e produtos simples com variações. Em resume, àqueles produtos em que você pode adicionar acessórios ou itens que alteram seu valor.

Na maioria dos módulos de parcelamento (inclusive nos de M2), o valor do parcelamento não altera, já que tanto M1 e M2 não fazem o refresh
da página mesmo com alteração de valores.

Pois bem, a Newer7 fez um módulo lá atrás, que altera o valor das parcelas, fiz alguns ajustes, inclusive na chamada dele no frontend,
já que no tutorial original deles não funciona. Porém, ele tem um pequeno problema, ele não capta "special price" corretamente (valores
promocionais), ele segue captando o valor inicial (old price). E assim, quando um item está em special price, ele não consegue
captar os valores e as parcelas ficam zeradas. Até consegui fazê-lo captar o valor do special price alterando o código

"$preco = $_product->getPrice();" para "$preco = $_product->getFinalPrice();" mas as parcelas seguem erradas.

Como está atualmente:

Para preços normais, ao selecionar uma opção, ele capta a alteração e as parcelas mudam
Para special price, ele originalmente não consegue captar o preço especial e não muda as parcelas
ou elas ficam zeradas.

Alterações feitas por mim:

  • Adição da possibilidade de incluir os juros nas parcelas
  • Alteração da chamada php no arquivo "view.phtml" no tutorial original para uma chamada menor e assim
    consegui fazê-lo se tornar visível no frontend (não estava funcionando seguindo o tutorial original)
  • Alteração na chamada php para captar o special price

O que falta para funcionar corretamente:

  • Alterar a captação de preço incial para preço final

Acredito que esse problema se dá nos arquivos "valores.phtml" e "IndexController.php"
mencionados abaixo:

Segue os códigos:

valores.phtml:

`getProduct(); $preco = $_product->getPrice(); $quantidade_parcelas = Mage::getStoreConfig('parcelamento/parcelamento_general/parcelamento_xparcelas'); $desconto = Mage::getStoreConfig('parcelamento/parcelamento_general/parcelamento_desconto'); $valor_parcela = number_format($preco * 1.2049/$quantidade_parcelas,2,',','.'); $preco_avista = ($preco/100)*(100-$desconto); echo '

R$ '.number_format($preco,2,',','.').' em até '.$quantidade_parcelas.'x de R$ '.$valor_parcela.' no cartão
R$ '.number_format($preco_avista,2,',','.').' à vista com '.$desconto.'% de desconto
'; ?>

<script type="text/javascript"> //getSkinUrl('images/newer7_parcelamento/ajax-loader.gif'); ?>"> Carregando'); $j.ajax({ url: 'getUrl("parcelamento")?>', type:"POST", data:({"preco": $j('.price-box span span.price').html()}), success: function(data) { $j('#parcelamento').html(data); } }) }) }) //]]> </script>`

Sim, eu cheguei a alterar o $preco = $_product->getPrice(); para $preco = $_product->getFinalPrice();
ele passa a capturar o valor final no início do parcelamento, mas os demais valores ficam zerados, devido a uma configuração
errônea, já que ele foi concebido para fazer a captura do preço inicial.

O outro arquivo é um controller, é o "IndexController.php"
possui o seguinte código:
`<?php

class Newer7_Parcelamento_IndexController extends Mage_Core_Controller_Front_Action {

public function indexAction() {

$preco_inicial = $this->getRequest()->get('preco');
$preco = str_replace('R$', '', $preco_inicial);
$preco = str_replace('.', '', $preco);
$preco = str_replace(',', '.', $preco);

$quantidade_parcelas = Mage::getStoreConfig('parcelamento/parcelamento_general/parcelamento_xparcelas');
$desconto = Mage::getStoreConfig('parcelamento/parcelamento_general/parcelamento_desconto');
$valor_parcela = number_format($preco/$quantidade_parcelas,2,',','.');
$preco_avista = ($preco/100)*(100-$desconto);

echo 'R$ '.number_format($preco,2,',','.').' em até '.$quantidade_parcelas.'x de R$ '.$valor_parcela.' no cartão
R$ '.number_format($preco_avista,2,',','.').' à vista com '.$desconto.'% de desconto';

	}
}

?>`

Veja ele em ação no seguinte site de testes:
Com special price:
https://ultraele1234.tk/O3Ti/index.php/teste.html
Com preço normal:
https://ultraele1234.tk/O3Ti/index.php/teste2.html

Tutorial original do módulo:
https://www.newer7.com.br/blog/magento/criar-modulo-para-magento-parcelas-produto-configuravel/

Acredito que mesmo antigo, este módulo tem muito potencial para resolver este problema que sempre foi uma
lacuna nas lojas Magento no Brasil, e se adaptado para M2, poderia ser um diferencial também.

Mais uma vez peço desculpas por abrir uma issue fora do tópico, se quiserem ter acesso ao módulo
com as alterações que eu já fiz, posso subir aqui sem problemas.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.