In questa pagina sono documentati tutti i tipi di dato e i relativi metodi usati per le variabili e nelle funzioni globali.
Per i tipi di dato di base di Scriggo, vedere la documentazione sui tipi di dato in Scriggo.
Il tipo AlignedImage
rappresenta una immagine allineata a sinistra, al centro o a destra.
type AlignedImage struct {
// Allineamento, può essere "left", "center" o "right".
Align string
// Immagine.
Image
}
Un valore di tipo AlignedImage
può essere direttamente visualizzato nell'HTML:
{{ image }}
in quanto su un valore di tipo AlignedImage
si può chiamare il metodo HTML
.
func (image AlignedImage) HTML() string
HTML
ritorna l'immagine in un formato adatto per essere mostrato in una pagina HTML.
func (image AlignedImage) IsZero() bool
IsZero
ritorna true
se l'immagine non è presente.
Il tipo AncestorItem
rappresenta un ancestor item.
Contiene solamente campi non esportati ma un valore di questo tipo può essere direttamente visualizzato nell'HTML:
{{ item }}
in quanto su un valore di tipo AncestorItem
si può chiamare il metodo HTML
.
func (item AncestorItem) HTML() string
HTML
ritorna l'ancestor item in un formato adatto per essere mostrato in una pagina HTML.
Il tipo AppliedFilter
rappresenta un filtro applicato.
Contiene solamente campi non esportati ma un valore di questo tipo può essere direttamente visualizzato nell'HTML:
{{ filter }}
in quanto su un valore di tipo AppliedFilter
si può chiamare il metodo HTML
.
func (filter AppliedFilter) HTML() string
HTML
ritorna il filtro applicato in un formato adatto per essere mostrato in una pagina HTML.
Il tipo Attribute
rappresenta un attributo di un prodotto.
type Attribute struct {
// Identificatore.
ID int
// Nome.
Name string
// Valori.
Values []AttributeValue
}
Il tipo AttributeValue
rappresenta un valore di un attributo.
type AttributeValue struct {
// Descrizione.
Description string
// Icona.
Icon AttributeValueIcon
// Identificatore.
ID int
// Nome.
Name AttributeValueName
// Indirizzo.
URL string
}
Il tipo AttributeValueIcon
rappresenta l'icona di un valore di un attributo. Può essere un colore oppure una immagine.
type AttributeValueIcon struct {
// Colore in formato esadecimale.
Color string
// Immagine.
Image Image
}
Un valore di tipo AttributeValueIcon
può essere direttamente visualizzato nell'HTML:
{{ icon }}
in quanto su un valore di tipo AttributeValueIcon
si può chiamare il metodo HTML
.
func (icon AttributeValueIcon) HTML() string
HTML
ritorna l'icona in un formato adatto per essere mostrato in una pagina HTML.
Il tipo AttributeValueName
rappresenta il nome di un valore di un attributo.
type AttributeValueName struct {
// Nome.
Value string
}
Un valore di tipo AttributeValueName
può essere direttamente visualizzato nell'HTML:
{{ name }}
in quanto su un valore di tipo AttributeValueName
si può chiamare il metodo HTML
.
func (name AttributeValueName) HTML() string
HTML
ritorna il nome in un formato adatto per essere mostrato in una pagina HTML.
Il tipo Banner
rappresenta un singolo banner del sito.
type Banner struct {
// Immagini.
Images []BannerImage
// Nome della location.
Name string
}
Il tipo BannerImage
rappresenta una singola immagine di un banner.
type BannerImage struct {
// Immagine
Image
}
Un valore di tipo BannerImage
può essere direttamente visualizzato nell'HTML:
{{ bannerImage }}
in quanto su un valore di tipo BannerImage
si può chiamare il metodo HTML
.
func (image BannerImage) HTML() string
HTML
ritorna l'immagine in un formato adatto per essere mostrato in una pagina HTML.
Il tipo Banners
rappresenta i banner del sito. I suoi campi sono i nomi delle locations dei banner. I nomi delle location si possono vedere nel Template Editor nella sezione Banners, facendo clic su mostra locations.
type Banners struct {
// I campi di Banners sono i nomi delle locations dei banner del sito.
// Di seguito il nome "SlideShow" è solo di esempio.
SlideShow Banner
}
Se ad esempio le location si chiamano "Top" e "Footer" allora Banners
è definito nel seguente modo:
type Banners struct {
// Banners in alto.
Top Banner
// Banners a fondo pagina.
Footer Banner
}
e sarà quindi possibile visualizzare i banner tramite la variable banners
come documentato a seguire.
Il tipo BlogPost
rappresenta un articolo del blog.
type BlogPost struct {
// Autore.
Author string
// Data di pubblicazione.
Date string
// Immagine larga.
LargeImage LinkedImage
// Immagine piccola.
SmallImage LinkedImage
// Sommario.
Summary HTML
// Titolo.
Title LinkedText
}
Il tipo Breadcrumb
rappresenta i filtri attualmente applicati sotto forma di breadcrumb. Facendo clic su un filtro vengono applicati solamente il filtro stesso e i suoi predecessori.
Se si filtra per parole chiave e novità allora anche questi due saranno presenti come filtri nella breadcrumb.
type Breadcrumb struct {
// Indica se il filtro è su un attributo.
IsByAttribute bool
// Indica se il filtro è sui reparti.
IsByDepartment bool
// Indica se il filtro è sulle parole chiave.
IsByKeywords bool
// Indica se il filtro è sui prodotti in novità.
IsByNewrelease bool
// Indica se il filtro è sul prezzo.
IsByPrice bool
// Indica se il filtro è sui produttori.
IsByProducer bool
// Nome del filtro applicato.
Item HTML
// Posizione a partire a 1. Viene utilizzato ad esempio per i microdata.
Position int
}
Il tipo CartItem
rappresenta una riga del carrello.
type CartItem struct {
// Pulsante per rimuovere la referenza dal carrello.
ButtonRemove HTML
// Pulsante per aggiornare il carrello in seguito alla modifica della quantità.
ButtonUpdate HTML
// Descrizione breve del prodotto.
Description HTML
// Sconto rispetto al prezzo di listino.
Discount Discount
// Immagine del prodotto.
Image LinkedImage
// Suggerimento per il cliente sul tipo di richieste che può fare sul
// prodotto in caso di preventivo. Presente solo se è su preventivo.
InfoForRequests string
// Indica se è in pre-ordine.
IsPreOrder bool
// Prezzo di listino.
ListPrice Price
// Nome della referenza.
Name HTML
// IVA in percentuale.
PercentTax Decimal
// Prezzo.
Price Price
// Prezzi per quantità.
Prices []PriceTier
// Produttore.
Producer HTML
// Identificatore del prodotto.
ProductID int
// Quantità.
Quantity Decimal
// Modulo che il cliente può compilare con richieste specifiche sul
// prodotto. Presente solo se è su preventivo.
Requests HTML
// Codice di magazzino.
SKU string
// Indica se deve essere preventivato oppure può essere ordinato.
ToQuote bool
// Prezzo totale.
TotalPrice Price
// Messaggio di avviso sulla disponibilità.
Warning HTML
// Peso.
Weight Decimal
}
Il tipo ChildDepartment
rappresenta il reparto figlio di un determinato reparto.
type ChildDepartment struct {
// Identificatore.
ID int
// Immagine piccola.
Image LinkedImage
// Nome.
Name LinkedText
}
Il tipo Decimal
rappresenta un numero decimale.
Non ha campi a cui è possibile accedere ma un valore Decimal
può essere direttamente visualizzato nell'HTML:
{{ value }}
in quanto su un valore di tipo Decimal
si può chiamare il metodo HTML
.
func (d Decimal) Add(d2 Decimal) Decimal
Add
ritorna la somma d
+ d2
.
func (d Decimal) Cmp(d2 Decimal) int
Cmp
compara d
e d2
e ritorna:
d
< d2
d
== d2
d
> d2
func (d Decimal) Div(d2 Decimal) Decimal
Div
ritorna la divisione d
/ d2
. Va in panic se d2
è 0.
func (d Decimal) Equal(d2 Decimal) bool
Equal
indica se d
== d2
come numeri decimali.
func (d Decimal) Float64() float64
Float64
ritorna il valore float64
più vicino a d
. Può ritornare +Inf
o -Inf
.
func (d Decimal) HTML() string
HTML
ritorna il numero decimale in un formato adatto per essere mostrato in una pagina HTML. Il locale è quello della pagina correntemente renderizzata.
func (d Decimal) IsNegative() bool
IsNegative
indica se d
< 0.
func (d Decimal) IsPositive() bool
IsPositive
indica se d
> 0.
func (d Decimal) IsZero() bool
IsZero
indica se d
== 0.
func (d Decimal) JSON() string
JSON
ritorna la rappresentazione di d
come un numero JSON. Consente di utilizzare un valore Decimal
nel codice JSON.
Se la variabile price
ha tipo Decimal
e valore 172.99 allora il seguente codice:
<script type="application/ld+json">{ "price": {{ price }} }</script>
sarà renderizzato come:
<script type="application/ld+json">{ "price": 172.99 }</script>
func (d Decimal) JavaScript() string
JavaScript
ritorna la rappresentazione di d
come un numero JavaScript. Consente di utilizzare un valore Decimal
nel codice JavaScript.
Se la variabile price
ha tipo Decimal
e valore 172.99 allora il seguente codice:
<script>var price = {{ price }};</script>
sarà renderizzato come:
<script>var price = 172.99;</script>
func (d Decimal) LessThan(d2 Decimal) bool
LessThan
indica se d
< d2
.
func (d Decimal) LessThanOrEqual(d2 Decimal) bool
LessThan
indica se d
<= d2
.
func (d Decimal) Mul(d2 Decimal) Decimal
Mul
ritorna la moltiplicazione d
* d2
.
func (d Decimal) Neg() Decimal
Neg
ritorna -d
.
func (d Decimal) Round(n int) Decimal
Round
ritorna d
arrotondato a n
cifre decimali.
func (d Decimal) String() string
String
ritorna la rappresentazione di d
sotto forma di stringa con tutte le sue cifre decimali significative.
func (d Decimal) StringN(n int) string
StringN
ritorna la rappresentazione di d
sotto forma di stringa con esattamente n
cifre decimali. Se d
ha più cifre decimali significative di n
allora è prima troncato a n
cifre decimali.
func (d Decimal) Sub(d2 Decimal) Decimal
Sub
ritorna la sottrazione d
- d2
.
func (d Decimal) Truncate(n int) Decimal
Truncate
ritorna d
troncato a n
cifre decimali.
type Department struct {
// Identificatore.
ID int
// Nome.
Name LinkedText
// Immagine piccola.
Image LinkedImage
// Reparti figli.
ChildDepartments []Department
}
Il tipo Discount
rappresenta uno sconto fisso o in percentuale.
type Discount struct {
// Ammontare.
Amount Price
// Percentuale.
Percent Decimal
}
Un valore Discount
può essere direttamente visualizzato nell'HTML:
{{ discount }}
in quanto su un valore di tipo Discount
si può chiamare il metodo HTML
. Se il campo Amount
è zero e il campo Percent
è maggiore di zero allora mostra il valore di Percent
altrimenti mostra quello di Amount
.
Se la variabile discount
ha tipo Discount
e valore 10.50 allora il seguente codice:
<b>Sconto: {{ discount }}</b>
sarà visualizzato come:
<b>Sconto: € 10,50</b>
func (d Discount) HTML() string
HTML
ritorna lo sconto in un formato adatto per essere mostrato in una pagina HTML. Se d.Amount == 0
e d.Percent > 0
allora mostra d.Percent
altrimenti d.Amount
. La valuta e il locale sono quelli della pagina correntemente renderizzata.
func (d Discount) IsZero() bool
IsZero
indica se d.Amount == 0
e d.Percent == 0
.
Il tipo File
rappresenta un file allegato ad un prodotto.
type File struct {
// Descrizione.
Description LinkedText
// Dimensione in KB.
Size string
}
type Filter struct {
// Reparti superiori del reparto corrente.
// È nil se il filtro non è sui reparti.
Ancestors []FilterAncestor
// Nome o icona del valore attualmente applicato.
// È nil se il filtro non consente di applicare più valori contemporaneamente.
AppliedValue FilterItem
// Indica se si possono applicare più valori oppure uno solo per volta.
// Può essere "multi" o "single".
ApplyMode string
// Identificativo dell'attributo del filtro. Significativo solo per
// i filtri su attributo.
Attribute int
// Indica se ogni valore del filtro viene mostrato come nome o icona. Può
// essere "name" o "icon".
DisplayAs string
// Indica se è applicato, ossia se almeno un valore del filtro è
// applicato.
IsApplied bool
// Indica se il filtro è su un attributo.
IsByAttribute bool
// Indica se il filtro è sui reparti.
IsByDepartment bool
// Indica se il filtro è sul prezzo.
IsByPrice bool
// Indica se il filtro è sui produttori.
IsByProducer bool
// Indica se è espandibile, ossia se solo alcuni valori sono sempre
// mostrati e gli altri sono mostrati espandendo tutti i valori del filtro.
IsExpandable bool
// Numero di valori del filtro che sono inizialmente nascosti e vengono
// mostrati solo quando viene espanso. È zero se il filtro è sul prezzo.
OnExpandCount int
// Titolo.
Title HTML
// Valori. Per il filtro sui reparti è la lista dei reparti, per il
// filtro sui produttori è la lista dei produttori, per i filtri sugli
// attributi è la lista dei valori dell'attributo, per il filtro sui
// prezzi è la lista delle fasce di prezzo a meno che non si sia scelto
// di visualizzarlo come slider.
Values []FilterValue
//
// I seguenti campi significativi solo per i filtri per prezzo.
//
// Pulsante per applicare il filtro per prezzo.
ButtonApply HTML
// Simbolo della valuta. Disponibile solo per il filtro su prezzo.
Currency HTML
// Massimo prezzo tra i prodotti filtrati. Disponibile solo se è visualizzato
// come slider.
MaxPrice Decimal
// Minimo prezzo tra i prodotti filtrati. Disponibile solo se è visualizzato
// come slider.
MinPrice Decimal
// Prezzo a partire da..
PriceFrom HTML
// Prezzo fino a..
PriceTo HTML
// Slider di selezione di una fascia di prezzo. Disponibile solo se è
// visualizzato come slider.
Slider HTML
}
Il tipo FilterAncestor
rappresenta un reparto antenato.
type FilterAncestor struct {
// Identificatore del reparto antenato.
ID int
// Nome del reparto antenato.
Item AncestorItem
}
Il tipo FilterItem
rappresenta una voce di un filtro.
FilterItem
ha solamente campi non esportati ma un valore di questo tipo può essere direttamente visualizzato nell'HTML:
{{ item }}
in quanto su un valore di tipo FilterItem
si può chiamare il metodo HTML
.
func (item FilterItem) HTML() string
HTML
ritorna la voce di filtro in un formato adatto per essere mostrato in una pagina HTML.
Il tipo FilterValue
rappresenta una voce di un filtro.
type FilterValue struct {
// Identificatore. Per il filtro sui reparti è l'identificatore del
// reparto, per il filtro sui produttori è l'identificatore del
// produttore mentre per il filtro sugli attributi è l'identificatore del
// valore dell'attributo.
ID int
// Indica se è applicabile. Se si è scelto per il filtro di non mostrare
// i valori non applicabili allora tutti i valori mostrati saranno applicabili.
IsApplicable bool
// Indica se è applicato.
IsApplied bool
// Nome o icona seguito eventualmente dal conteggio dei prodotti.
Item FilterItem
// Indica se viene mostrato solo quando i valori del filtro vengono
// espansi. Può essere "yes" oppure "no".
OnExpand string
}
Il tipo HTML
rappresenta del codice HTML.
type HTML string
Un valore string
viene sottoposto ad escape per essere rendirizzato in un costesto HTML. Ad esempio:
{% var s = "<b>hello</b>" %}
{{ s }}
è rendirizzato:
<b>hello</b>
Mentre un valore HTML
non viene sottoposto ad escape nel contesto HTML. Ad esempio:
{% var s = HTML("<b>hello</b>") %}
{{ s }}
è rendirizzato:
<b>hello</b>
Il tipo Image
rappresenta una immagine.
type Image struct {
// Valore dell'attributo "alt".
Alt string
// Altezza in pixel.
Height int
// Valore dell'attributo "itemprop".
Itemprop string
// Valore dell'attributo "title".
Title string
// Indirizzo dell'immagine in singola risoluzione.
URL string
// Indirizzo dell'immagine in doppia risoluzione.
URL2x string
// Larghezza in pixel.
Width int
}
Un valore di tipo Image
può essere direttamente visualizzato nell'HTML:
{{ image }}
in quanto su un valore di tipo Image
si può chiamare il metodo HTML
.
func (image Image) HTML() string
HTML
ritorna l'immagine in un formato adatto per essere mostrato in una pagina HTML.
Il tipo InvoiceInList
rappresenta un fattura nella pagina documents.html
.
type InvoiceInList struct {
// Pulsante per vedere la fattura.
ButtonView HTML
// Data di emissione.
Date string
// Numero.
Number string
// Stato.
Status HTML
// Totale.
Total Price
// Tipo di fattura.
Type HTML
// Indirizzo della pagina di dettaglio della fattura.
URL string
}
Il tipo Item
rappresenta una referenza di un prodotto.
type Item struct {
// Pulsante per aggiungere la referenza al carrello, se la giacenza
// è maggiore di zero oppure la referenza è comunque ordinabile.
ButtonAddToCart HTML
// Sconto rispetto al prezzo di listino.
Discount Discount
// Codice EAN13.
EAN string
// Immagine.
Image LinkedImage
// Codice ISBN13.
ISBN string
// Indica se è in vendita.
IsForSale bool
// Prezzo di listino.
ListPrice Price
// Quantità massima ordinabile.
MaximumOrderQuantity Decimal
// Quantità minima ordinabile.
MinimumOrderQuantity Decimal
// Opzioni.
Options []Option
// IVA in percentuale.
PercentTax Decimal
// Prezzo.
Price Price
// Prezzi per quantità.
Prices []PriceTier
// Quantità da aggiungere al carrello. È vuoto se la
// giacenza è zero o la referenza non è comunque ordinabile.
Quantity HTML
// Giorni necessari per il riordino se non è subito disponibile.
ReorderDays int
// Codice di magazzino.
SKU string
// Data di spedizione.
ShippingDate string
// Quantità disponibile.
Stock Decimal
// Codice UPC.
UPC string
// Peso.
Weight Decimal
}
Il tipo LinkedImage
rappresenta una immagine con un link.
type LinkedImage struct {
// Immagine.
Image
}
Un valore di tipo LinkedImage
può essere direttamente visualizzato nell'HTML:
{{ image }}
in quanto su un valore di tipo LinkedImage
è possibile chiamare il metodo HTML
.
func (image LinkedImage) HTML() string
HTML
ritorna l'immagine in un formato adatto per essere mostrato in una pagina HTML.
Il tipo LinkedText
rappresenta un testo con un link.
type LinkedText struct {
// Indica se il link viene aperto in una nuova finestra.
Blank bool
// Classe.
Class string
// Testo.
Text string
// Titolo.
Title string
// Indirizzo.
URL string
}
Un valore di tipo LinkedText
può essere direttamente visualizzato nell'HTML:
{{ text }}
in quanto su un valore di tipo LinkedText
è possibile chiamare il metodo HTML
.
func (text LinkedText) HTML() string
HTML
ritorna il testo in un formato adatto per essere mostrato in una pagina HTML.
Il tipo Menu
rappresenta un singolo menù del sito.
type Menu struct {
// Voci
Items []HTML
// Nome della sezione del menù.
Name string
// Titolo
Title HTML
}
func (menu Menu) IsZero() bool
IsZero
indica se len(menu.Items) == 0
e menu.Title == ""
. Consente di usare un valore Menu
come condizione di un if
per verificare se contiene delle voci e un titolo.
{% if menu := menus.Account; menu %}
<div class="menu">
{% if menu.Title %}<h3>{{ menu.Title }}</h3>{% end %}
{% if menu.Items %}
<ul>
{% for item in menu.Items %}
<li>{{ item }}</li>
{% end for %}
</ul>
{% end if %}
</div>
{% end if %}
Il tipo Menus
rappresenta i menù del sito. I campi sono i nomi delle sezioni dei menù. I nomi delle sezioni si possono vedere nel Template Editor alla voce Menù, facendo clic su mostra sezioni.
type Menus struct {
// I campi di Menus sono i nomi delle sezioni dei menù del sito.
// Di seguito il nome "Company" è solo di esempio.
Company Menu
}
Il tipo NewsletterList
rappresenta una lista di newsletter a cui è possibile sottoscriversi.
type NewsletterList struct {
// Descrizione.
Description string
// Nome.
Name string
// Casella selezionabile per sottoscrivere la lista.
Subscription HTML
}
Il tipo Option
rappresenta una opzione di una variante.
type Option struct {
// Nome.
Name string
// Nome della corrispondente variante.
Variant string
}
Il tipo Order
rappresenta un ordine di un cliente con le relative spedizioni e resi.
type Order struct {
// Indirizzo di fatturazione.
BillingAddress HTML
// Pulsante per stampare l'ordine.
ButtonPrint HTML
// Nome e cognome del cliente, o nome dell'azienda.
CustomerName string
// Data di creazione dell'ordine.
Date string
// Referenze di prodotto ordinate e non ancora spedite.
Items []OrderItem
// Numero.
Number string
// Resi.
Returns []Return
// Spedizioni.
Shipments []Shipment
// Indirizzo di spedizione.
ShipmentAddress HTML
// Stato.
Status HTML
// Totale.
Total Price
}
Il tipo OrderInList
rappresenta un ordine nella pagina documents.html
.
type OrderInList struct {
// Pulsante per vedere l'ordine.
ButtonView HTML
// Data di creazione.
Date string
// Numero.
Number string
// Stato.
Status HTML
// Totale.
Total Price
// Indirizzo della pagina di dettaglio dell'ordine.
URL string
}
Il tipo OrderItem
rappresenta una riga di un ordine.
type OrderItem struct {
// Pulsante per aggiungere la referenza al carrello
// nella quantità dell'ordine.
ButtonAddAllToCart HTML
// Pulsante per aggiungere la referenza al carrello
// nella sua quantità minima ordinabile.
ButtonAddToCart HTML
// Immagine larga, se presente.
LargeImage LinkedImage
// Immagine media, se presente.
MediumImage LinkedImage
// Nome.
Name HTML
// Prezzo.
Price Price
// Quantità.
Quantity Decimal
// Richieste del cliente.
Requests string
// Quantità spedita.
ShippedQuantity Decimal
// Codice di magazzino.
SKU string
// Immagine piccola, se presente.
SmallImage LinkedImage
// Codice della classe IVA.
TaxCode string
// IVA in percentuale.
TaxRate Decimal
// Prezzo totale.
TotalPrice Price
}
Il tipo PageNumber
rappresenta un numero di pagina di una paginazione.
type PageNumber int
Un valore di tipo PageNumber
può essere direttamente visualizzato nell'HTML:
{{ pageNumber }}
in quanto su un valore di tipo PageNumber
è possibile chiamare il metodo HTML
. Il numero è visualizzato solo se è maggiore di uno.
func (number PageNumber) HTML() string
HTML
ritorna il numero di pagina in un formato adatto per essere mostrato in una pagina HTML. Se number <= 1
ritorna una stringa vuota.
Il tipo Pagination
rappresenta una paginazione. È usato nella paginazione di prodotti e ordini.
type Pagination struct {
// Pagina corrente. La prima pagina è la pagina 1.
Current int
// Ultima pagina.
Last int
// Testo del link per andare alla pagina successiva. Corrisponde al valore presente
// nelle traduzioni del template in corrispondenza della voce ButtonNextPage.
NextText HTML
// Testo del link per andare alla pagina precedente. Corrisponde al valore presente
// nelle traduzioni del template in corrispondenza della voce ButtonPreviousPage.
PreviousText HTML
}
Un valore di tipo Pagination
, come la variabile pagination
, può essere direttamente visualizzato nell'HTML per mostrare la paginazione in formato standard:
{{ pagination }}
in quanto su un valore di tipo Pagination
si può chiamare il metodo HTML
.
func (p Pagination) HTML() string
HTML
ritorna la paginazione in un formato adatto per essere mostrato in una pagina HTML. Se p.Last <= 1
ritorna una stringa vuota.
func (p Pagination) IsZero() bool
IsZero
indica se la paginazione non è presente ossia se p.Last <= 1
.
func (p Pagination) PagePath(n int) string
PagePath
ritorna il path assoluto dell'URL della pagina n
. Ritorna una stringa vuota se n < 1
oppure se n > p.Last
.
Il metodo PagePath
può essere usato per mostrare una paginazione personalizzata:
{% for i := 1; i <= p.Last; i++ %}
{% if i == p.Current %}
{{ i }}
{% else %}
<a href="{{ pagination.PagePath(i) }}">{{ i }}</a>
{ % end if %}
{ % end for %}
Il tipo PaymentMethod
rappresenta un metodo di pagamento che può essere selezionato durante il checkout.
type PaymentMethod struct {
// Casella selezionabile per scegliere il metodo di pagamento.
Choice HTML
// Descrizione.
Description string
// Nome.
Name HTML
}
Il tipo Price
rappresenta un prezzo o un costo con e senza IVA.
type Price struct {
// Prezzo netto (prezzo IVA inclusa).
Net Decimal
// Prezzo lordo (prezzo IVA esclusa).
Gross Decimal
}
Un valore di tipo Price
può essere direttamente visualizzata nell'HTML:
{{ price }}
in quanto su un valore di tipo Price
si può chiamare il metodo HTML
. Visualizza il prezzo lordo o netto in base al cliente.
func (price Price) HTML() string
HTML
ritorna il prezzo in un formato adatto per essere mostrato in una pagina HTML. La valuta e il locale sono quelli della pagina correntemente renderizzata. HTML
visualizza il prezzo lordo o netto in base al gruppo clienti corrente.
func (p Price) IsZero() bool
IsZero
indica se p
== 0.
func (p Price) JSON() string
JSON
ritorna la rappresentazione di p
come numero JSON. Consente di utilizzare un valore Price
nel codice JSON.
Se la variabile price
ha tipo Price
e valore 37.50 allora il seguente codice:
<script type="application/ld+json">{ "price": {{ price }} }</script>
sarà renderizzato come:
<script type="application/ld+json">{ "price": 37.50 }</script>
Il prezzo visualizzato sarà quello lordo o netto in base al cliente. In alternativa usare p.Gross
per visualizzare sempre quello lordo e p.Net
per visualizzare sempre quello netto.
func (p Price) JavaScript() string
JavaScript
ritorna la rappresentazione di p
come numero JavaScript. Consente di utilizzare un valore Price
nel codice JavaScript.
Se la variabile price
ha tipo Price
e valore 16.99 allora il seguente codice:
<script>var price = {{ price }};</script>
sarà renderizzato come:
<script>var price = 9.99;</script>
Il prezzo visualizzato sarà quello lordo o netto in base al cliente. In alternativa usare p.Gross
per visualizzare sempre quello lordo e p.Net
per visualizzare sempre quello netto.
Il tipo PriceTier
rappresenta un prezzo che varia per quantità.
type PriceTier struct {
// Sconto rispetto al prezzo di listino.
Discount Discount
// Quantità a partire dalla quale si applica il prezzo.
From Decimal
// Prezzo di listino.
ListPrice Price
// Prezzo di vendita.
Price Price
// Quantità fino alla quale si applica il prezzo.
To Decimal
}
Il tipo Processing
rappresenta un trattamento sulla privacy secondo la normativa GDPR.
type Processing struct {
// Casella da selezionare per accettare il consenso sul trattamento.
Consent HTML
// Descrizione del trattamento.
Description string
// Identificativo univoco del trattamento.
ID int
// Indica se il consenso è obbligatorio.
IsConsentRequired bool
// Collegamento alla pagina con i dettagli.
MoreInfo HTML
// Titolo del trattamento.
Title string
}
Il tipo ProductImage
rappresenta una immagine di un prodotto.
type ProductImage struct {
// Immagine.
Image
// Indirizzo della corrispondente immagine di zoom.
ZoomImageURL string
}
Un valore di tipo ProductImage
può essere direttamente visualizzato nell'HTML:
{{ image }}
in quanto su un valore di tipo ProductImage
si può chiamare il metodo HTML
.
func (image ProductImage) HTML() string
HTML
ritorna l'immagine in un formato adatto per essere mostrato in una pagina HTML.
type PrintedItem struct {
// Nome.
Name string
// Prezzo.
Price Price
// Quantità.
Quantity Decimal
// Richieste del cliente.
Requests string
// Codice di magazzino.
SKU string
// Codice della classe IVA.
TaxCode string
// IVA in percentuale.
TaxRate Decimal
// Prezzo totale.
TotalPrice Price
}
type PrintedTax struct {
// Ammontare della tassa.
Amount Decimal
// Codice della classe IVA.
Code string
// Nome della classe IVA.
Name string
// IVA in percentuale.
Rate Decimal
// Totale tassabile.
TaxableTotal Decimal
}
Il tipo Producer
rappresenta un produttore.
type Producer struct {
// Identificativo.
ID int
// Nome.
Name LinkedText
// Logo.
Logo LinkedImage
}
Un valore Producer
può essere direttamente visualizzato nell'HTML:
{{ producer }}
in quanto su un valore di tipo Producer
si può chiamare il metodo HTML
.
Il tipo Product
rappresenta un prodotto.
type Product struct {
// Pulsante per aggiungere il prodotto al carrello.
ButtonAddToCart HTML
// Pulsante per aggiungere il prodotto alla lista dei desideri.
ButtonAddToWishList HTML
// Pulsante per rimuovere un prodotto dalla lista dei desideri,
// disponibile solo nella pagina wish-list.html
ButtonRemove HTML
// Codice del prodotto.
Code string
// Reparto principale del prodotto.
Department string
// Sconto rispetto al prezzo di listino.
Discount Discount
// Identificatore del prodotto.
ID int
// Indica se è in vendita.
IsForSale bool
// Indica se è una novità.
IsNewRelease bool
// Indica se è in pre-ordine.
IsPreOrder bool
// Immagine larga. Potrà essere visualizzata in dimensione piccola o
// media se diversamente indicato nel gestionale.
LargeImage LinkedImage
// Prezzo di listino.
ListPrice Price
// Immagine media. Potrà essere visualizzata in dimensione piccola o
// larga se diversamente indicato nel gestionale.
MediumImage LinkedImage
// Messaggio che informa il cliente che può richiedere un preventivo sul
// prodotto con una quantità minima.
MinQuoteMessage HTML
// Nome.
Name LinkedText
// IVA in percentuale.
PercentTax Decimal
// Posizione del prodotto nell'elenco a partire da uno. Utilizzato in
// particolare nei prodotti più venduti.
Position int
// Messaggio che informa che il prodotto è in pre-ordine.
PreOrderMessage HTML
// Prezzo di vendita.
Price Price
// Produttore.
Producer string
// Logo del produttore.
ProducerLogo LinkedImage
// Rating delle recensioni da 0.0 a 5.0.
ReviewRating Decimal
// Descrizione breve.
ShortDescription HTML
// Codice di magazzino della referenza primaria.
SKU string
// Immagine piccola. Potrà essere visualizzata in dimensione media o
// larga se diversamente indicato nel gestionale.
SmallImage LinkedImage
}
Il tipo Promotion rappresenta una promozione.
type Promotion struct {
// Descrizione.
Description string
// Data di termine.
EndTime string
// Immagine piccola.
Image LinkedImage
// Immagine grande.
LargeImage LinkedImage
// Nome.
Name LinkedText
// Immagine piccola.
SmallImage LinkedImage
// Data di inizio.
StartTime string
}
Il tipo QuoteInList
rappresenta un preventivo nella pagina documents.html
.
type QuoteInList struct {
// Pulsante per vedere il preventivo.
ButtonView HTML
// Data di creazione.
Date string
// Numero.
Number string
// Stato.
Status HTML
// Totale.
Total Price
// Indirizzo della pagina di dettaglio del preventivo.
URL string
}
Il tipo Return
rappresenta un reso.
type Return struct {
// Pulsante per stampare il reso.
ButtonPrint HTML
// Data in cui è stata fatta la richiesta di reso.
Date string
// Referenze di cui è stato richiesto il reso.
Items []ReturnItem
// Numero.
Number string
// Stato.
Status HTML
}
Il tipo ReturnItem
rappresenta una riga di un reso.
type ReturnItem struct {
// Stato di approvazione del reso del prodotto.
Approval HTML
// Commenti del cliente sul prodotto inseriti alla richiesta del reso.
Comments string
// Immagine larga, se presente.
LargeImage LinkedImage
// Immagine media, se presente.
MediumImage LinkedImage
// Nome.
Name HTML
// Prezzo.
Price Price
// Quantità.
Quantity Decimal
// Motivo della richiesta di reso.
Reason string
// Codice di magazzino.
SKU string
// Immagine piccola, se presente.
SmallImage LinkedImage
// Codice della classe IVA.
TaxCode string
// IVA in percentuale.
TaxRate Decimal
}
Il tipo ReturnableItem
rappresenta una referenza di cui può essere fatto il reso.
type ReturnableItem struct {
// Casella selezionabile per aggiungere la referenza al reso.
AddToReturn HTML
// Commenti del cliente.
Comments HTML
// Data di consegna della relativa spedizione.
DeliveryDate string
// Identificativo della referenza nell'ambito del reso.
ID string
// Informazioni sulle condizioni per fare il reso.
Info string
// Nome.
Name string
// Numero del relativo ordine.
OrderNumber string
// Quantità di cui fare il reso.
Quantity TextField
// Menù per la scelta del motivo del reso.
Reasons HTML
// Quantità massima di cui si può fare il reso.
ReturnableQuantity Decimal
// Codice di magazzino.
SKU string
}
Il tipo Review
rappresenta una recensione di un prodotto.
type Review struct {
// Autore.
Author string
// Codice.
Code string
// Contenuto.
Content string
// Data.
Date string
// Rating da 0.0 a 5.0.
Rating Decimal
// Sommario.
Summary string
}
Il tipo ShippingMethod
rappresenta un metodo di spedizione che può essere selezionato durante il checkout.
type ShippingMethod struct {
// Casella selezionabile per scegliere il metodo di spedizione.
Choice HTML
// Nome.
Name HTML
}
Il tipo Shipment
rappresenta una spedizione.
type Shipment struct {
// Pulsante per fare il reso delle referenze.
ButtonReturnItems HTML
// Data di consegna.
DeliveryDate string
// Referenze spedite.
Items []ShipmentItem
// Data di spedizione.
ShippingDate string
// Numero di tracciamento.
TrackingNumber string
// Link alla pagina di tracciamento.
TrackingURL HTML
}
Il tipo ShipmentItem
rappresenta una riga di un reso.
type ShipmentItem struct {
// Pulsante per aggiungere la referenza al carrello
// nella quantità della spedizione.
ButtonAddAllToCart HTML
// Pulsante per aggiungere la referenza al carrello
// nella sua quantità minima ordinabile.
ButtonAddToCart HTML
// Indica se è possibile richiedere il reso.
IsReturnable bool
// Immagine larga, se presente.
LargeImage LinkedImage
// Ultimo giorno per richiedere il reso.
LastDateToReturn string
// Immagine media, se presente.
MediumImage LinkedImage
// Nome.
Name HTML
// Prezzo.
Price Price
// Quantità.
Quantity Decimal
// Richieste del cliente.
Requests string
// Codice di magazzino.
SKU string
// Immagine piccola, se presente.
SmallImage LinkedImage
// Codice della classe IVA.
TaxCode string
// IVA in percentuale.
TaxRate Decimal
}
Il tipo SiblingDepartment
rappresenta il reparto fratello di un determinato reparto.
type SiblingDepartment struct {
// Immagine piccola.
Image LinkedImage
// Nome.
Name LinkedText
}
Il tipo Snippet
rappresenta uno snippet ritornato dalla funzione snippet
.
Contiene solamente campi non esportati ma un valore di questo tipo può essere direttamente visualizzato nell'HTML:
{{ snippet("rating") }}
in quanto su un valore di tipo Snippet
si può chiamare il metodo HTML
. Se non esiste lo snippet con il nome passato come argomento alla funzione snippet
, visualizza un commento HTML con il messaggio di errore.
func (s Snippet) Error() error
Error
ritorna l'errore che si è verificato nel leggere lo snippet. Ritorna nil
se non si è verificato nessun errore.
func (s Snippet) HTML() string
HTML
ritorna lo snippet in formato adatto per essere inserito nel codice HTML.
Il tipo TextField
rappresenta un campo di testo di un modulo.
type TextField struct {
// Errore verificatosi nella compilazione del campo.
Error HTML
// Indica se il campo è obbligatorio.
Required bool
// Il valore del campo.
Value string
}
Un valore di tipo TextField
può essere direttamente visualizzato nell'HTML:
{{ item }}
in quanto su un valore di tipo TextField
si può chiamare il metodo HTML
.
func (field TextField) HTML() string
HTML
ritorna il campo in un formato adatto per essere mostrato in una pagina HTML.
Il tipo Thumbnail
rappresenta una miniatura di una immagine di un prodotto.
type Thumbnail struct {
// Immagine.
Image
// Indirizzo della corrispondente immagine larga.
LargeImageURL string
// Indirizzo della corrispondente immagine zoom.
ZoomImageURL string
}
Il tipo Thumbnails
rappresenta le miniatura delle immagini di un prodotto.
type Thumbnails []Thumbnail
Un valore di tipo Thumbnails
può essere direttamente visualizzato nell'HTML:
{{ thumbnails }}
in quanto su un valore di tipo Thumbnails
si può chiamare il metodo HTML
.
func (t Thumbnails) HTML() string
HTML
ritorna le miniature in un formato adatto per essere mostrato in una pagina HTML.
Il tipo Variant
rappresenta una variante.
type Variant struct {
// Nome.
Name string
// Opzioni.
Options HTML
}