Skip to main content

Override ed estensioni Javascript

È possibile sostituire o estendere alcune funzioni Javascript di utilizzo comune per modificarne il comportamento. Per far ciò è sufficiente creare una funzione che ha lo stesso nome della funzione da modificare con l’aggiunta di “_override” o “_extension” e gli stessi parametri ed includerla in un file Javascript aggiuntivo, caricato nel modo spiegato nel precedente paragrafo. Il comportamento delle due estensioni è il seguente:

FUNZIONE_override() Se presente, viene chiamata questa funzione invece di
quella originale. Il valore di ritorno di questa funzione è
quello restituito.
FUNZIONE_extension() Se presente, viene chiamata questa funzione e se
restituisce false o un valore equivalente a false, la
funzione originale termina restituendo false, mentre se
restituisce true o un valore equivalente, l’esecuzione
prosegue nella funzione originale.

La differenza è quindi che nel primo caso, la funzione originale viene interamente ignorata, mentre nel secondo, si può decidere se continuare l’esecuzione standard o no. Questo è molto comodo nel caso delle funzioni di validazione, solitamente molto lunghe, in cui si voglia semplicemente aggiungere un controllo, senza ricopiare l’intera funzione per piccoli cambiamenti.
Le funzioni che supportano queste estensioni sono indicate di seguito:

File Funzioni
include/js/general.js doformValidation
startCall
getFormValidate
include/js/Inventory.js

settotalnoofrows

deleteRow

calcTotal

calcProductTotal

calcGrandTotal

validateInventory

FindDuplicate

validateNewTaxType

validateTaxes

setDiscount

callTaxCalc

calcCurrentTax

calcGroupTax

calcSHTax

validateProductDiscounts

updatePrices

updatePriceValues

resetSHandAdjValues

moveUpDown

InventorySelectAll

fnAddProductOrServiceRowNew