Descrizione
Questo metodo può essere utilizzato per ottenere la lista dei template di categoria presenti all'interno del sistema.
Utilizzo
I parametri richiesti da questa funzione sono:
- templateId: Id del tempalte di cui si vogliono ottenere informazioni, se impostato a false verranno ritornate tutti i template presenti nel sistema.
- languageId: Id della lingua in cui si vogliono ottenere il nome del template, per le lingue disponibile vedere il metodo getAvailableLanguages.
- workflowType: Tipologia di template che si vuole visualizzare.
- thumbSize: dimensione dell'immagine di preview espressa in pixel (la preview è generata in formato quadrato).
In caso di successo ritorna un'array di oggetti così strutturati:
- categoryTemplateId: Id del template.
- categoryTemplateCode: Codice del template.
- categoryTemplateName: Nome del template.
- categoryId: Descrizione del template.
- workflowType: Tipologia di template.
- image: Url dell'immagine di preview del template.
- urlSeo: Se impostato contiene il path di navigazione google Friendly.
- taxClassId: Id della classe di tassa associata al template.
- relatedProducts: Array di interi che rappresentano gli id dei prodotti associati.
- relatedStores: Array di interi che rappresentano gli id degli store associati.
- relatedLayouts: Array di interi che rappresentano di id dei layout associati.
- rewardDefault: Numero di punti associati di default al template.
- rewards: Array di strutture che rappresentano i punti associati al template, così strutturati:
- customerGroupId: Id del gruppo utenti collegato.
- points: Numero di punti assegnati.
- shippingAvailable: true se il template richiede la spedizione, false in caso contrario.
- dateAvailable: Stringa contenente la data di disponibilità del template nel formato YYYY-MM-DD HH:MM:SS.
- showDefaultPrice: true se durante la navigazione dello shop viene visualizzato il prezzo di partenza del template, false in caso contrario.
- viewCount: Numero di visualizzazione del template.
- enable: true se il template è attivo, false in caso contrario.
- dateCreated: Stringa contenente la data in cui è stato creato il template nel formato YYYY-MM-DD HH:MM:SS.
- dateUpdated: Stringa contenente la data in cui è stato modificato il template nel formato YYYY-MM-DD HH:MM:SS.
Gestione errori
In caso di errore il metodo genererà un'eccezione che riporterà uno dei seguenti codici di errore:
- ERROR_INVALID_PARAMS: Uno dei parametri inviati non è valido.
- ERROR_INVALID_TOKEN: Non è stato effettuato nessun login in precedenza o la sessione è scaduta per inutilizzo.
- ERROR_INVALID_IP: L'indirizzo ip del server che sta effettuando la chiamata non valido perchè non inserito nella whitelist associata alle credenziali.
- ERROR_SERVER_UNAVAILABLE: Il server non è disponibile o si è verificato un errore di comunicazione generico.
ATTENZIONE
Possibili tipologie di workflow
Il campo workflowType può avere i seguenti valori:
- SML: Prodotto stampato di piccolo formato.
- LRG: Prodotto stampato di grande formato.
- NPR: Prodotto non stampato.
In .NET è possibile utilizzare la struttura statica CatalogItemWorkflowTypes presente in Structures.
PHP
require "vendor/autoload.php" try { $ezPrintSDK = new ezPrintSDKWrapper('http://demo.ezprint.it'); $apiToken = $ezPrintSDK->cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG'); $availableLanguages = $ezPrintSDK->backOffice->bGetAvailableLanguages(); $categoryTemplates = $ezPrintSDK->backOffice->bGetCatalogCategoryTemplates(false, $availableLanguages[0]['languageId'], false, 100); foreach($categoryTemplates as $template) { echo $template['categoryTemplateId'], ' ', $template['categoryTemplateName']; } } catch (Exception $e) { echo 'Error Code: ', $e->getMessage(); }
Node.js
try { var util = require('util'); var ezPrintSDK = require('ezprint-sdk-wrapper'); ezPrintSDK.initializeWrapper('http://demo.ezprint.it'); var apiToken = ezPrintSDK.cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG'); var availableLanguages = ezPrintSDK.backOffice.bGetAvailableLanguages(); var categoryTemplates = ezPrintSDK.backOffice.bGetCatalogCategoryTemplates(false, availableLanguages[0].languageId, false, 100); categoryTemplates.forEach(function(template) { console.log(template.categoryTemplateId); console.log(template.categoryTemplateName); }); } catch (ex) { console.log(ex); }
.NET (C#)
try { ezPrintSDKWrapper.Client ezPrintSDK = new ezPrintSDKWrapper.Client("http://demo.ezprint.it"); ezPrintSDK.cLoginAPI("1WHm0icsupAEm9fil9en","yCHZ0nKiyn1MU0DhpgmG"); List<ezPrintSDKWrapper.Structures.languageItem> availableLanguages = ezPrintSDK.BackOffice.bGetAvailableLanguages(); List<ezPrintSDKWrapper.Structures.categoryTemplateItem> categoryTemplates = ezPrintSDK.BackOffice.bGetCatalogCategoryTemplates(false, availableLanguages[0].languageId, false, 100); System.Console.WriteLine("Catalog Category Template {0}: {1}", categoryTemplates[0].categoryTemplateId, categoryTemplates[0].categoryTemplateName); } catch (ezPrintException ex) { string ErrorMessage = ex.Message; }
products