create: function() { var sb = doc.createElement('div'); var theme = this.options.theme || this.type; if (this.options.addContainerClassName) // sb.className = 'smartbanner' + ' smartbanner-' + theme; sb.className = ' smartbanner-' + theme; sb.innerHTML = this.getHtml(); //there isn’t neccessary a body if (doc.body) { doc.body.appendChild(sb); } else if (doc) { doc.addEventListener('DOMContentLoaded', function(){ doc.body.appendChild(sb); }); } this.options.postRender && this.options.postRender(); q('.smartbanner-button', sb).addEventListener('click', this.install.bind(this), false); var thisSmartBanner = this; Array.prototype.slice.call(q.all('.smartbanner-close, .js-smartbanner-close', sb)) .forEach(function(el){ el.addEventListener('click', thisSmartBanner.close.bind(thisSmartBanner), false); }); },
create: function() { var link = this.getStoreLink(); var inStore = this.options.price[this.type] + ' - ' + this.options.store[this.type]; var icon; for (var i = 0; i < this.iconRels.length; i++) { var rel = q('link[rel="'+this.iconRels[i]+'"]'); if (rel) { icon = rel.getAttribute('href'); break; } } var sb = doc.createElement('div'); sb.className = 'smartbanner smartbanner-' + this.type; sb.innerHTML = '<div class="smartbanner-container">' + '<a href="javascript:void(0);" class="smartbanner-close">×</a>' + '<span class="smartbanner-icon" style="background-image: url('+icon+')"></span>' + '<div class="smartbanner-info">' + '<div class="smartbanner-title">'+this.options.title+'</div>' + '<div>'+this.options.author+'</div>' + '<span>'+inStore+'</span>' + '</div>' + '<a href="'+link+'" class="smartbanner-button">' + '<span class="smartbanner-button-text">'+this.options.button+'</span>' + '</a>' + '</div>'; //there isn’t neccessary a body if (doc.body) { doc.body.appendChild(sb); } else if (doc) { doc.addEventListener('DOMContentLoaded', function(){ doc.body.appendChild(sb); }); } q('.smartbanner-button', sb).addEventListener('click', this.install.bind(this), false); q('.smartbanner-close', sb).addEventListener('click', this.close.bind(this), false); },