Files
Mimante/Mimante/Examples/Pensofal Biostone Tegamino - Bidoo_files/stringFormatHelpers_it.js.download
T
Alby96 ee67bedc31 Aggiunta calcolo valore prodotto e miglioramenti UI
Implementato il calcolo del valore reale dei prodotti in asta,
includendo il prezzo "Compra Subito", spese di spedizione e
risparmio stimato. Aggiunta una nuova sezione "Info Prodotto"
nella UI per visualizzare i dettagli estratti e i calcoli.

- **AuctionMonitorControl.xaml**: Aggiunta sezione fissa per
  mostrare informazioni prodotto e calcolo valore.
- **AuctionMonitorControl.xaml.cs**: Gestiti eventi per il
  caricamento e aggiornamento delle informazioni prodotto.
- **MainWindow**: Integrati handler per il calcolo e refresh
  delle informazioni prodotto.
- **AuctionInfo.cs**: Aggiunte proprietà per gestire prezzo
  "Compra Subito", spese di spedizione e limiti di vincita.
- **ProductValueCalculator.cs**: Nuova utility per calcolare
  il valore del prodotto e parsare informazioni dall'HTML.
- **AuctionViewModel.cs**: Binding per visualizzare risparmio,
  costo totale e convenienza nella UI.
- **Documentazione**: Aggiornata con dettagli sull'algoritmo
  di calcolo e layout UI.

Fix:
- Risolto problema di encoding UTF-8 per emoji nella UI.
- Migliorato parsing HTML per prezzi e limiti di vincita.

TODO:
- Testare parsing su più aste e gestire edge cases.
- Implementare caricamento automatico delle informazioni.
2025-11-21 16:55:21 +01:00

140 lines
6.7 KiB
Plaintext

function formattaPrezzo(sValue) {
"use strict";
if(!isNaN(sValue)) {
var iEuro = parseInt(parseInt(sValue) / 100);
var iCents = parseInt(parseInt(sValue) - (iEuro * 100)).toString();
var sCents = '';
if(iCents == 0) {
sCents = '00';
} else if((iCents < 10) && (iCents >= 0)) {
sCents = '0' + iCents;
} else {
sCents = iCents;
}
return iEuro.toString() + "," + sCents;
}
}
function FormattaOraGiorni(sGiorni, sOre, sMinuti, sSecondi) {
"use strict";
return(sGiorni > 9 ? sGiorni : '0' + sGiorni) + ':' + (sOre > 9 ? sOre : '0' + sOre) + ':' + (sMinuti > 9 ? sMinuti : '0' + sMinuti) + ':' + (sSecondi > 9 ? sSecondi : '0' + sSecondi);
}
function FormattaOra(sMinuti, sSecondi) {
"use strict";
return(sMinuti > 9 ? sMinuti : '0' + sMinuti) + ':' + (sSecondi > 9 ? sSecondi : '0' + sSecondi);
}
function FormattaOraCompleto(sOre, sMinuti, sSecondi) {
"use strict";
return(sOre > 9 ? sOre : '0' + sOre) + ':' + (sMinuti > 9 ? sMinuti : '0' + sMinuti) + ':' + (sSecondi > 9 ? sSecondi : '0' + sSecondi);
}
function FormattaOraGiorniPromo(sGiorni, sOre, sMinuti, sSecondi) {
"use strict"
var visibilityDays = sGiorni<=0 ? 'hidden' : '';
var visibilityHours = sOre<=0 ? 'hidden' : '';
return "<div class='welc_timebox_marg "+visibilityDays+"'><div class='welc_timebox_num'>" + (sGiorni > 9 ? sGiorni : '0' + sGiorni) + "</div><div class='welc_timebox_text'>Giorni</div></div>" + " " + "<div class='welc_timebox_marg "+visibilityHours+"'><div class='welc_timebox_num'>" + (sOre > 9 ? sOre : '0' + sOre) + "</div><div class='welc_timebox_text'>Ore</div></div>" + " " + "<div class='welc_timebox_marg'><div class='welc_timebox_num'>" + (sMinuti > 9 ? sMinuti : '0' + sMinuti) + "</div><div class='welc_timebox_text'>Minuti</div></div>" + " " + "<div class='welc_timebox_nomarg'><div class='welc_timebox_num'>" + (sSecondi > 9 ? sSecondi : '0' + sSecondi) + "</div><div class='welc_timebox_text'>Secondi</div></div>";
}
function FormattaOraBenv(sOre, sMinuti, sSecondi) {
"use strict"
return "<div class='welc_timebox_marg'><div class='welc_timebox_num'>" + (sOre > 9 ? sOre : '0' + sOre) + "</div><div class='welc_timebox_text'>Ore</div></div>" + " " + "<div class='welc_timebox_marg'><div class='welc_timebox_num'>" + (sMinuti > 9 ? sMinuti : '0' + sMinuti) + "</div><div class='welc_timebox_text'>Minuti</div></div>" + " " + "<div class='welc_timebox_nomarg'><div class='welc_timebox_num'>" + (sSecondi > 9 ? sSecondi : '0' + sSecondi) + "</div><div class='welc_timebox_text'>Secondi</div></div>";
}
function formattaDataStorico(stamp) {
"use strict";
var ris = parseInt(stamp) * 1000;
var dataStorico = new Date(ris);
var slDay = (dataStorico.getDate() < 10) ? "0" : "";
var slMonth = (dataStorico.getMonth() < 9) ? "0" : "";
return(slDay + dataStorico.getDate() + '/' + slMonth + (dataStorico.getMonth() + 1) + '/' + dataStorico.getFullYear());
}
var mesi = ['Gennaio','Febbraio','Marzo','Aprile',
'Maggio','Giugno','Luglio','Agosto',
'Settembre','Ottobre','Novembre','Dicembre'];
function tomorrToday(nowstamp, scadstamp) {
"use strict";
var adesso = parseInt(nowstamp) * 1000;
var domani = (parseInt(nowstamp) * 1000) + 86400000;
var scadenza = parseInt(scadstamp) * 1000;
var adesso_data = new Date(adesso);
var domani_data = new Date(domani);
var scadenza_data = new Date(scadenza);
var text_day = "";
var slHour = (scadenza_data.getHours() < 10) ? "0" : "";
var slMinute = (scadenza_data.getMinutes() < 10) ? "0" : "";
var data_format = scadenza_data.getDate() + ' ' + mesi[scadenza_data.getMonth()] + ' ';
if((scadenza_data.getDate() == adesso_data.getDate()) && (scadenza_data.getMonth() == adesso_data.getMonth()))
data_format = "Oggi alle ";
if((scadenza_data.getDate() == domani_data.getDate()) && (scadenza_data.getMonth() == domani_data.getMonth()))
data_format = "Domani alle ";
text_day = data_format + slHour + scadenza_data.getHours() + ':' + slMinute + scadenza_data.getMinutes();
return(text_day);
}
function tomorrTodayAdv(nowstamp, scadstamp) {
"use strict";
var adesso = parseInt(nowstamp) * 1000;
var domani = (parseInt(nowstamp) * 1000) + 86400000;
var scadenza = parseInt(scadstamp) * 1000;
var adesso_data = new Date(adesso);
var domani_data = new Date(domani);
var scadenza_data = new Date(scadenza);
var text_day = "";
var slHour = (scadenza_data.getHours() < 10) ? "0" : "";
var slMinute = (scadenza_data.getMinutes() < 10) ? "0" : "";
var data_format = 'il ' + scadenza_data.getDate() + ' ' + mesi[scadenza_data.getMonth()] + ' ';
if((scadenza_data.getDate() == adesso_data.getDate()) && (scadenza_data.getMonth() == adesso_data.getMonth()))
data_format = "Oggi ";
if((scadenza_data.getDate() == domani_data.getDate()) && (scadenza_data.getMonth() == domani_data.getMonth()))
data_format = "Domani ";
text_day = data_format + slHour + scadenza_data.getHours() + ':' + slMinute + scadenza_data.getMinutes();
return(text_day);
}
function hoursMinFormat(stamp) {
"use strict";
var ris = parseInt(stamp) * 1000;
var dataStorico = new Date(ris);
var slHour = (dataStorico.getHours() < 10) ? "0" : "";
var slMinute = (dataStorico.getMinutes() < 10) ? "0" : "";
return(slHour + dataStorico.getHours() + ':' + slMinute + dataStorico.getMinutes());
}
function formattaOraStorico(stamp) {
"use strict";
var ris = parseInt(stamp) * 1000;
var dataStorico = new Date(ris);
var slHour = (dataStorico.getHours() < 10) ? "0" : "";
var slMinute = (dataStorico.getMinutes() < 10) ? "0" : "";
var slSecond = (dataStorico.getSeconds() < 10) ? "0" : "";
return(slHour + dataStorico.getHours() + ':' + slMinute + dataStorico.getMinutes() + ':' + slSecond + dataStorico.getSeconds());
}
function formattaDataEOraStorico(stamp) {
"use strict";
var ris = parseInt(stamp) * 1000;
var dataStorico = new Date(ris);
var slDay = (dataStorico.getDate() < 10) ? "0" : "";
var slMonth = (dataStorico.getMonth() < 9) ? "0" : "";
var slHour = (dataStorico.getHours() < 10) ? "0" : "";
var slMinute = (dataStorico.getMinutes() < 10) ? "0" : "";
var slSecond = (dataStorico.getSeconds() < 10) ? "0" : "";
return(slDay + dataStorico.getDate() + '/' + slMonth + (dataStorico.getMonth() + 1) + '/' + dataStorico.getFullYear() + ' ' + slHour + dataStorico.getHours() + ':' + slMinute + dataStorico.getMinutes() + ':' + slSecond + dataStorico.getSeconds());
}
function formattaVerboseDataEOraStorico(stamp) {
"use strict";
var current = moment.unix(stamp);
return current.calendar(null,{
lastDay : '[Ieri alle] H:mm:ss',
sameDay : '[Oggi alle] H:mm:ss',
nextDay : '[Domani alle] H:mm:ss',
lastWeek : '[il] L [alle] H:mm:ss',
nextWeek : '[il] L [alle] H:mm:ss',
sameElse : '[il] L [alle] H:mm:ss'
});
}