//== Class definition var LayoutBuilder = function() { var exporter = { init: function() { $('#m-btn-howto').click(function(e) { e.preventDefault(); $('#m-howto').slideToggle(); }); this.exportHtml(); this.exportHtmlStatic(); this.exportAngular(); }, startLoad: function(options) { $('#builder_export'). addClass('m-loader m-loader--light m-loader--right'). find('> span > span'). text('Exporting...'). closest('.m-form__actions'). find('.btn'). prop('disabled', true); $.notify(options); }, doneLoad: function() { $('#builder_export'). removeClass('m-loader m-loader--light m-loader--right'). find('> span > span'). text('Export'). closest('.m-form__actions'). find('.btn'). prop('disabled', false); }, exportHtml: function() { $('#builder_export_html').click(function(e) { e.preventDefault(); if (!envato.isVerified()) return; var _self = $(this); exporter.startLoad({ title: 'Generate HTML Partials', message: 'Process started and it may take about 1 to 10 minutes.', }); $.ajax('index.php', { method: 'POST', data: { builder_export: 1, export_type: 'partial', demo: $(_self).data('demo'), }, }).done(function(r) { var result = JSON.parse(r); if (result.message) { exporter.stopWithNotify(result.message); return; } var timer = setInterval(function() { $.ajax('index.php', { method: 'POST', data: { builder_export: 1, builder_check: result.id, }, }).done(function(r) { var result = JSON.parse(r); if (typeof result === 'undefined') return; // export status 1 is completed if (result.export_status !== '1') return; $('