Пример использования JS API
Javascript API позволяет глубже совместить онлайн-редактор макетов с логикой работы Вашего сайта, в том числе с внешними системами расчета заказа. Ниже показаны лишь базовые примеры управления редактором. Полная информация о возможностях доступна на странице Javascript API.

Пример кода

<script type="text/javascript" src="http://demo.printeditor.ru/editor.js"></script> <script> window.editor = new PrintEditor('editorcontainer',{ //config },function(state) { if(state.success==true) { editor.newDesign(57); editor.setEventHandler('editorLoaded',function(data) { add2log('Событие: editorLoaded '); }); editor.setEventHandler('designLoaded',function(data) { add2log('Событие: designLoaded (editordesignid = '+data.editordesignid+')'); }); editor.setEventHandler('designSaved',function(data) { add2log('Событие: designSaved (editordesignid = '+data.editordesignid+')'); }); editor.setEventHandler('templateLoaded',function(data) { add2log('Событие: templateLoaded (editortemplateid = '+data.editortemplateid+')'); }); editor.setEventHandler('designOrderRequest',function(data) { add2log('Событие: designOrderRequest (editordesignid = '+data.editordesignid+')'); }); editor.setEventHandler('designAddToBasket',function(data) { add2log('Событие: addToBasket (editordesignid = '+data.editordesignid+', basketitemid = '+data.basketitemid+', title = '+data.title+', amount = '+data.amount+', summary = '+data.summary+', weight = '+data.weight+', thumbnails[0] = '+data.thumbnails[0]+')'); }); editor.setEventHandler('designOrdered',function(data) { add2log('Событие: designOrdered (editordesignid = '+data.editordesignid+', orderid = '+data.orderid+')'); }); editor.setEventHandler('userLoginRequest',function(data) { add2log('Событие: userLoginRequest (email = '+data.email+'), password = '+data.password+')'); }); editor.setEventHandler('userRegisterRequest',function(data) { add2log('Событие: userLoginRequest (email = '+data.email+', name = '+data.name+', phone = '+data.phone+', password = '+data.password+')'); }); editor.setEventHandler('userLoggedIn',function(data) { add2log('Событие: userLoggedIn (userid = '+data.userid+', customeruserid = '+data.customeruserid+')'); }); editor.setEventHandler('userLoggedOut',function(data) { add2log('Событие: userLoggedOut'); }); editor.setEventHandler('userRegistered',function(data) { add2log('Событие: userRegistered (userid = '+data.userid+')'); }); } else { alert("Ошибка"); } }); </script> <input type="button" class="button" onclick="window.editor.newDesign(57);" value="Загрузить пресет визитки" /> <input type="button" class="button" onclick="window.editor.loadTemplate(50)" value="Загрузить шаблон" /> <input type="button" class="button" onclick="window.editor.loginUser(50,{'name':'Тест','email':'info@printeditor.ru'},'<?=$sign?>');" value="Вход пользователя #50" /> <input type="button" class="button" onclick="window.editor.logoutUser();" value="Выход пользователя" /> <input type="button" class="button" onclick="window.editor.saveDesign(function(state) {if(state.success==1) { add2log('Collback: Редактор сообщил, что макет сохранен успешно (saveDesign).'); } else { alert('Collback: Не удалось сохранить макет (saveDesign)');} });" value="Сохранить макет" /> <input type="button" class="button" onclick="window.editor.saveDesignAs(false,function(state) {if(state.success==1) { add2log('Collback: Редактор сообщил, что макет сохранен успешно (saveDesignAs).'); } else { alert('Collback: Не удалось сохранить макет (saveDesignAs)');} });" value="Сохранить макет как" /> <input type="button" class="button" onclick="window.editor.getDesignData(function(state) {add2log('Информация получена: product = '+state.product+', productpresetid = '+state.productpresetid+', width = '+state.width+', height = '+state.height+', pages = '+state.pages+', foldingtype = '+state.foldingtype+', diecuttype = '+state.diecuttype+', perforationtype = '+state.perforationtype);});" value="Параметры макета" /> <input type="button" class="button" onclick="window.editor.orderDesign(function(state) {add2log('orderDesign Callback');});" value="Заказать" /> <div id="editorcontainer"></div>

Журнал

Вызов методов