Descrizione
Questo metodo può essere utilizzato per modificare uno smartTemplate all'interno del sistema.
Utilizzo
I parametri richiesti da questa funzione sono:
- templateId: Id del template da modificare.
- templateName: Array di oggetti che definiscano il nome del template nelle varie lingue così strutturati:
- languageId: Id della lingua.
- value: Nome del template nella lingua specificata, lunghezza minima 5 caratteri, massima 100.
- templateImage: Url dell'immagine di preview del template, false se non necessario.
- colorPaletteType: Tipologia di palette colore utilizzata nel template.
- colorPaletteItems: Array di stringhe che contengono i colori presenti nella palette in valori esadecimali #FFFFFF.
- presetColorId: Id del preset per i colori impostato nel template, false se non necessario.
- presetFontId: Id del preset per i fonts impostato nel template, false se non necessario.
- googleFonts: Array di interi che contengono gli id dei font google associati a questo template.
- adobeTypeKit: Id del kit di adobe associato al template, false se non necessario.
- enable: true se la categoria è attiva, false in caso contrario.
- sortOrder: Numero che rappresenta l'indice di visualizzazione per questo elemento.
Il metodo non ha nessun valore di ritorno.
Gestione errori
In caso di errore il metodo genererà un'eccezione che riporterà uno dei seguenti codici di errore:
- ERROR_INVALID_TEMPLATE_ID: L'id del template non è valido.
- ERROR_INVALID_PARAMS: Uno dei parametri inviati non è valido.
- ERROR_UNABLE_TO_GET_IMAGE: Si è verificato un errore nel salvataggio dell'immagine associata.
- 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 palette colori
Il campo colorPaletteType può avere i seguenti valori:
- PALETTE: I colori potranno essere scelti da un palette limitata di valori definita nel template.
- PICKER: I colori potranno essere scelti trami un colorpicker.
In .NET è possibile utilizzare la struttura statica colorPaletteTypes presente in Structures.
PHP
require "vendor/autoload.php" try { $ezPrintSDK = new ezPrintSDKWrapper('http://demo.ezprint.it'); $apiToken = $ezPrintSDK->cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG'); $googleFonts = $ezPrintSDK->editor->eGetGoogleFonts(); $availableLanguages = $ezPrintSDK->backOffice->bGetAvailableLanguages(); $smartTemplates = $ezPrintSDK->backOffice->eGetSmartTemplates(false, false, $availableLanguages[0]['languageId'], 200); $googleFontIds = array_map(function($elem) {return $elemem['fontId'];}, array_slice($googleFonts, 0, 5)); $templateName = array(); foreach($availableLanguages as $language) { $templateName[] = array( 'languageId' => $language['languageId'], 'value' => 'Nome ' . $language['languageName'] ); } $ezPrintSDK->editor->eEditSmartTemplate($smartTemplates[0]['templateId'], $templateName, false, 'PICKER', array(), false, false, $googleFontIds, '', true, 0); } catch (Exception $e) { echo 'Error Code: ', $e->getMessage(); }
Node.js
try { var ezPrintSDK = require('ezprint-sdk-wrapper'); ezPrintSDK.initializeWrapper('http://demo.ezprint.it'); var apiToken = ezPrintSDK.cLoginAPI('1WHm0icsupAEm9fil9en','yCHZ0nKiyn1MU0DhpgmG'); var googleFonts = ezPrintSDK.editor.eGetGoogleFonts(); var availableLanguages = $ezPrintSDK.backOffice.bGetAvailableLanguages(); var smartTemplates = ezPrintSDK.editor.eGetSmartTemplates(false, false, availableLanguages[0].languageId, 200); var googleFontIds = googleFonts.slice(0, 5).map(function(elem) {return elem.fontId;}); var templateName = []; availableLanguages.forEach(function(language) { templateName.push({ languageId: language['languageId'], value: 'Nome ' . language['languageName'] }); }); ezPrintSDK.editor.eEditSmartTemplate(smartTemplates[0].templateId, templateName, false, 'PICKER', [], false, false, googleFontIds, '', true, 0); } 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.googleFontItem> googleFonts = ezPrintSDK.Editor.eGetGoogleFonts(); List<ezPrintSDKWrapper.Structures.languageItem> availableLanguages = ezPrintSDK.BackOffice.bGetAvailableLanguages(); List<ezPrintSDKWrapper.Structures.localizationItem> templateName = new List<ezPrintSDKWrapper.Structures.localizationItem>(); List<ezPrintSDKWrapper.Structures.smartTemplateItem> smartTemplates = ezPrintSDK.Editor.eGetSmartTemplates(false, false, availableLanguages[0].languageId, 200); int[] googleFontIds = new int[] {}; foreach (ezPrintSDKWrapper.Structures.googleFontItem font in googleFonts.Take(5)) { googleFontIds.Concat(new int[] {font.fontId}); } foreach (ezPrintSDKWrapper.Structures.languageItem language in availableLanguages) { templateName.Add(new ezPrintSDKWrapper.Structures.localizationItem() {languageId = language.languageId, value = "Name " + language.languageName}); } ezPrintSDK.editor.eEditSmartTemplate(smartTemplates[0].templateId, templateName, false, ezPrintSDKWrapper.Structures.colorPaletteTypes.pickerType, new string[] {}, false, false, googleFontIds, "", true, 0); } catch (ezPrintException ex) { string ErrorMessage = ex.Message; }