Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bugfix/v121 : Solución de bugs varios y agregado de nuevos impuestos #36

Merged
merged 7 commits into from Jul 14, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
10 changes: 10 additions & 0 deletions chrome_extension/css/styles.css

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion chrome_extension/css/styles.css.map

Large diffs are not rendered by default.

13 changes: 13 additions & 0 deletions chrome_extension/css/styles.scss
Expand Up @@ -141,6 +141,10 @@ body{

.discount_prices{
display:flex;

> div{
width: max-content;
}
}
}
}
Expand Down Expand Up @@ -176,6 +180,15 @@ body{
}
}

// URLS /SEARCH/

#search_result_container{
.col.search_price{
width: auto;
}
}



// URLS /SALE/
.promo_item_list{
Expand Down
5 changes: 5 additions & 0 deletions chrome_extension/js/addfunds_functions.js
@@ -1,5 +1,10 @@
let addFundsPrices = document.querySelectorAll('.game_purchase_price.price,.giftcard_text');
addFundsPrices.forEach(price => {

// Fix para sección /selectgiftcard
if(price?.classList?.[0] == "giftcard_text"){
price.innerText += ",00";
}
let positionArs = price.innerText.lastIndexOf("ARS$ ") + 5;
let baseNumericPrice = stringToNumber(price,positionArs);
price.dataset.argentinaPrice = calcularImpuestos(baseNumericPrice);
Expand Down
2 changes: 1 addition & 1 deletion chrome_extension/js/data.js
Expand Up @@ -3,7 +3,7 @@ const attributeName = "data-original-price";
let standardTaxes = [
{
name : "Retención del Impuesto a las ganancias - RG AFIP Nº 4815/2020",
value : 35,
value : 45,
moreInfo: "https://www.boletinoficial.gob.ar/detalleAviso/primera/235038/20200916"
},
{
Expand Down
33 changes: 20 additions & 13 deletions chrome_extension/js/helpers.js
Expand Up @@ -11,13 +11,15 @@ function getTotalTaxes(){

function calcularImpuestos(initialPrice){
let finalPrice = initialPrice;
standardTaxes.forEach(tax => {
finalPrice += parseFloat( (initialPrice * tax.value/100).toFixed(2));
})
standardTaxes &&
standardTaxes.forEach(tax => {
finalPrice += parseFloat( (initialPrice * tax.value/100).toFixed(2));
})

provinceTaxes.forEach(tax => {
finalPrice += parseFloat( (initialPrice * tax.value/100).toFixed(2));
})
provinceTaxes &&
provinceTaxes.forEach(tax => {
finalPrice += parseFloat( (initialPrice * tax.value/100).toFixed(2));
})

return finalPrice.toFixed(2);

Expand All @@ -36,18 +38,23 @@ function stringToNumber(number,positionArs = 5){

// Comprobación para cuando a Steam le pinta cambiar el orden de las comas y decimales!
const numero = number.innerText;
if( numero.indexOf(',') != -1 && numero.indexOf('.') != -1){
if(numero.indexOf(',') < numero.indexOf('.')){
const numeroArreglado = numero.replace(',','')
return parseFloat(numeroArreglado.slice(positionArs));
if(numero){
if( numero.indexOf(',') != -1 && numero.indexOf('.') != -1){
if(numero.indexOf(',') < numero.indexOf('.')){
const numeroArreglado = numero.replace(',','')
return parseFloat(numeroArreglado.slice(positionArs));
}
}
}

if( numero.indexOf(',') == -1){
const numeroArreglado = numero;
return parseFloat(numeroArreglado.slice(positionArs));
if(numero){
if( numero.indexOf(',') == -1){
const numeroArreglado = numero;
return parseFloat(numeroArreglado.slice(positionArs));
}
}


if(positionArs != "none"){
return parseFloat(number.innerText.slice(positionArs).replace(".","").replace(",","."));
} else {
Expand Down
2 changes: 1 addition & 1 deletion chrome_extension/js/menu.js
Expand Up @@ -20,7 +20,7 @@ function createMenus(){
<div class="opcion">
<div>
<label for="national-tax">Impuestos nacionales</label>
<input id="national-tax" type="number" name="national-tax" placeholder="65"/>
<input id="national-tax" type="number" name="national-tax" placeholder="75"/>
</div>
<small><a target="_blank" href='https://steamcito.com.ar/impuestos-hoy' style="display:inline">Ver listado de impuestos nacionales.</a></small>
</div>
Expand Down
1 change: 0 additions & 1 deletion chrome_extension/js/trigger.js
@@ -1,4 +1,3 @@

// Corro función por primera vez
getPrices();

Expand Down
27 changes: 14 additions & 13 deletions chrome_extension/manifest.json
@@ -1,20 +1,21 @@

{
"name": "Steamcito: Steam con impuestos Argentina 2022",
"version": "1.20",
"version": "1.21",
"description": "Muestra todos los productos de la tienda de Steam con todos los impuestos de Argentina incluidos",
"manifest_version": 2,
"manifest_version": 3,
"background": {
"scripts": ["js/background.js"],
"persistent": false
"service_worker": "js/background.js"
},

"web_accessible_resources": [
"emojis/*.woff",
"emojis/*.eot",
"emojis/*.ttf",
"emojis/*.png"
],
"web_accessible_resources": [{
"resources": [
"emojis/*.woff",
"emojis/*.eot",
"emojis/*.ttf",
"emojis/*.png"
],
"matches": ["<all_urls>"]
}],

"icons": {
"128": "icon128.png"
Expand All @@ -28,7 +29,7 @@
"matches": ["https://store.steampowered.com/*","https://steamcommunity.com/app*"],
"exclude_matches": ["https://store.steampowered.com/steamaccount/addfunds*","https://store.steampowered.com/digitalgiftcards*","https://store.steampowered.com/bundle/*"],
"run_at": "document_idle",
"js": ["js/menu.js","js/helpers.js","js/data.js","js/global_functions.js","js/trigger.js"],
"js": ["js/helpers.js","js/data.js","js/menu.js","js/global_functions.js","js/trigger.js"],
"css": ["css/styles.css"]
},
{
Expand Down Expand Up @@ -66,7 +67,7 @@
{
"matches": ["https://store.steampowered.com/account/subscriptions/*","https://store.steampowered.com/app/*"],
"run_at": "document_idle",
"js": ["js/subscriptions.js"]
"js": ["js/helpers.js","js/subscriptions.js"]
},
{
"matches": ["https://store.steampowered.com/account/history*"],
Expand Down
28 changes: 17 additions & 11 deletions readme.md
Expand Up @@ -9,7 +9,7 @@



# Steamcito - La extensión que calcula automáticamente los impuestos de Steam Argentina (2021)
# Steamcito - La extensión que calcula automáticamente los impuestos de Steam Argentina (2022)
Steamcito es una extensión para todos los navegadores que te permite visualizar el precio final de todos los productos de la tienda de Steam en precios argentinos con todos los impuestos incluidos.

[Ver vídeos e imágenes de todas las funcionalidades en Steamcito.com.ar](https://www.steamcito.com.ar)
Expand All @@ -31,12 +31,11 @@ Steamcito es una extensión para todos los navegadores que te permite visualizar

## Dispositivos Compatibles
- Compatible en Windows, Linux y Mac
- Próximamente en dispositivos Android

***

## Instrucciones de Instalación
1. [Instalá Steamcito en tu navegador](https://www.steamcito.com.ar)
## Instrucciones de instalación y uso
1. Instalá Steamcito [en tu navegador favorito](https://www.steamcito.com.ar)
2. ¡Listo! Ya podés entrar a la tienda de Steam desde tu navegador y Steamcito estará funcionando.
3. Opcionalmente podés personalizar los impuestos y otras opciones desde el mate que se encuentra arriba a la derecha en la tienda de Steam

Expand All @@ -50,15 +49,24 @@ Steamcito es una extensión para todos los navegadores que te permite visualizar
***

## ¿Por qué usar Steamcito?
- No tenés que sumar los impuestos de forma manual con la calculadora(representa un ahorro aproximado de 8 segundos por cada producto)
- Si usás tarjetas prepagas, no necesitás hacer cálculos para saber si tenés que cargarle más saldo para comprar un juego.
- Si tenés saldo en la Steam Wallet, te calcula automáticamente las dos opciones de compra disponibles: todo tarjeta y parte saldo/parte tarjeta.
- Siempre vas a ver el precio final de todos los productos de Steam
- Es compatible con todas las vistas de la tienda de Steam
- No tenés que sumar los impuestos de forma manual con la calculadora (representa un ahorro aproximado de 6-8 segundos por cada producto que ves)
- Si usás tarjetas prepagas no necesitás hacer cálculos para saber si tenés que cargarle más saldo para comprar un juego.
- Si tenés saldo en la Steam Wallet te calcula automáticamente las dos opciones de compra disponibles: todo con tarjeta y parte saldo/parte tarjeta.
- Algunos entes emisores de tarjetas tienen diferencias en el cálculo del porcentaje de impuestos. En Steamcito podés personalizar tus impuestos para calcular siempre de forma correcta.
- Tiene un matecito 🧉

***


## ¿Tenés planeado hacer algo similar para Origin, Microsoft, Epic Store, Playstation Store, etc?
¡Ya existe una muy buena extensión para otras tiendas! <a href="https://github.com/lucasromerodb/impuestito">Te recomiendo usar Impuestito</a> que aún está en desarrollo y hace los cálculos de impuestos para la mayoría de las tiendas 😀

***

## Reporte de Bugs y Sugerencias
¿Tenés una buena idea para Steamcito? ¿Encontraste un bug o tenés un problema para usar la extensión?
¿Encontraste un bug o tenés un problema para usar la extensión?

[Creá un issue](https://github.com/emilianog94/Steamcito-Precios-Steam-Argentina-Impuestos-Incluidos/issues)

Expand All @@ -76,9 +84,7 @@ Conocé todos los detalles de las últimas actualizaciones de Steamcito
***

## Roadmap
Conocé todo lo que se encuentra planeado y las ideas que existen actualmente para mejorar Steamcito

[Visitar tablero de Trello](https://trello.com/b/iv56hIIT/steamcito-roadmap-p%C3%BAblico)
El roadmap se encuentra cerrado ya que de momento no van a agregarse más funcionalidades! Actualmente realizo tareas de mantenimiento para resolver ocasionales bugs que surgen cuando Steam realiza cambios importantes en la lógica de su storefront.


***
Expand Down