(function($, window, document, undefined) { 'use strict'; var gtc, slNamespace = window.addthisnamespaces && window.addthisnamespaces['at40'] ? addthisnamespaces['at40']: 'addthis-smartlayers'; $(function() { gtc.init(); }); gtc = { init: function() { var self = this; commonMethods.localStorageSettings({ namespace: slNamespace, method: "get" }, function(obj) { self.returninguser = $.type(obj) === "object" ? true: false; if(self.returninguser) { if(obj.closedFollowPopover) { self.closedFollowPopover = true; } } self.callPlugins().bindEvents().readyLogic(obj); }); }, enabledFollow: false, disabledClass: 'ui-state-disabled', rightArrowClass: 'ui-icon-triangle-1-e', downArrowClass: 'ui-icon-triangle-1-s', mouseenterAnimation: 'tada', fbDefaultText: 'YOUR-PROFILE', closedFollowPopover: false, defaults: { '#at40-accordion-follow-checkbox': false, '#at40-accordion-share-checkbox': true, '#at40-accordion-toaster-checkbox': true, '#at40-accordion-trending-checkbox': true, 'input:text': '', '#follow-facebook': 'YOUR-PROFILE', '#left-share-position': true, '#at40-accordion-share-buttons': 5, '#at40-accordion-trending-textarea': 'Recommended for you:', '#at40-accordion-more-themes': 'transparent', '.at40-accordion-follow-checkbox': false, '#facebook-follow-checkbox': true }, placeholderText: { 'twitter': 'YOUR-USERNAME', 'rss': 'YOUR-FEED', 'default': 'YOUR-PROFILE' }, callPlugins: function() { // Calls the iButton jQuery plugin that creates iPhone-style button toggles for all of the checkboxes $('.at40-accordion .at40-accordion-checkbox').iButton({allowRadioUncheck: true, enableDrag: false}); // Calls the twitter bootstrap popover plugin on all of the follow text boxes $('.follow-tooltip').popover({ trigger: 'hover', animation: true }); // Calls the twitter bootstrap tabs plugin if(!gtc.returninguser) { $(window).load(function() { var followPopover = $('li.at40-accordion-follow').popover({ trigger: 'manual', html: 'true', animation: true, title : 'Turn on Follow' + '', content: 'If you have Facebook, Twitter, or other social profiles.' }); setTimeout(function() { followPopover.popover('show'); },2000); }); commonMethods.localStorageSettings({ namespace: slNamespace, method: "set", data: { returninguser: true } }); } $('[data-toggle=tooltip]').tooltip(); $.extend($.expr[":"], { 'reallyvisible': function(elem) { var $elem = $(elem); return $elem.css('display') !== 'none' && $elem.css('visibility') !== 'hidden'; }, 'hasValue': function(elem, index, match) { return $(elem).val() !== ''; } }); return this; }, readyLogic: function(obj) { var elem, $elem, val, accordion = $('.at40-accordion'); for(elem in obj) { if(obj.hasOwnProperty(elem)) { $elem = $(elem); val = obj[elem]; if($elem.is('input:text') || $elem.is('textarea')) { $elem.val(val); } else if($elem.is(':checkbox')) { if(val === true) { if(!$elem.is(':checked')) { $elem.attr('checked', 'checked').trigger('change', true); } } else if(val === false) { if($elem.is(':checked')) { $elem.removeAttr('checked').trigger('change', true); } } } else if($elem.is(':radio')) { if(val === true) { if(!$elem.is(':checked')) { $elem.attr('checked', 'checked').trigger('click', true).trigger('change', true); } } else if(val === false) { if($elem.is(':checked')) { $elem.removeAttr('checked').trigger('click', true).trigger('change', true); } } } else if($elem.is('select')) { $elem.val(val).trigger('change', true); } } } accordion.find('input:text').add(accordion.find('textarea')).trigger('keyup', true); accordion.find('select').trigger('change', true); accordion.find('input:checkbox').trigger('change', true); return this; }, disable: function(parentElem, internal, surface) { var self = this, textboxes = parentElem.find('input:text'), radiobuttons = parentElem.find('input:radio'), checkboxes = parentElem.find('input:checkbox'), textareas = parentElem.find('textarea'), selects = parentElem.find('select'), icon = parentElem.prev('.at40-accordion-row').find('.at40-accordion-icon'); parentElem.addClass(self.disabledClass); textboxes.attr('readonly', 'readonly'); radiobuttons.add(textareas).add(checkboxes).attr('disabled', 'disabled'); textboxes.add(textareas).addClass('no-selection'); if(selects.length && selects.data('selectBox-selectBoxIt')) { selects.data('selectBox-selectBoxIt').disable(); } $('.follow-tooltip').popover('destroy'); if(surface === 'follow') { $('.facebookAndTwitterPopover').popover('hide'); } if(!internal) { parentElem.slideUp(); icon.removeClass(self.downArrowClass).addClass(self.rightArrowClass); } }, enable: function(parentElem, internal, surface) { var self = this, device = $('body').attr('data-device') || 'desktop', textboxes = parentElem.find('input:text'), radiobuttons = parentElem.find('input:radio'), checkboxes = parentElem.find('input:checkbox'), textareas = parentElem.find('textarea'), selects = parentElem.find('select'), icon = parentElem.prev('.at40-accordion-row').find('.at40-accordion-icon'); if(surface === 'share' && device !== 'desktop') return; parentElem.removeClass(self.disabledClass); textboxes.removeAttr('readonly'); radiobuttons.add(textareas).add(checkboxes).removeAttr('disabled'); textboxes.add(textareas).removeClass('no-selection'); if(selects.length && selects.data('selectBox-selectBoxIt')) { selects.data('selectBox-selectBoxIt').enable(); } $('.follow-tooltip').popover({ trigger: 'hover', animation: true }); if(!internal) { parentElem.slideDown(); icon.removeClass(self.rightArrowClass).addClass(self.downArrowClass); } }, events: { '.at40-accordion-icon-and-text': { 'click': function(e, internal) { var self = gtc, row = $(this).parent('.at40-accordion-row'), service = row.attr('data-type'), hiddenItem = $('.at40-accordion-' + service + '-hidden'), accordionCheckbox = row.find('.at40-accordion-checkbox'), facebookCheckbox = $('#facebook-follow-checkbox'), icon = $(this).find('.at40-accordion-icon'), fb = $('#follow-facebook'), fbVal = fb.val(), fbLength = fbVal.length, hiddenItemIsDisabled = hiddenItem.hasClass(self.disabledClass), hiddenItemIsVisible = hiddenItem.is(':visible'), accordionIsChecked = accordionCheckbox.is(':checked'), device = $('body').attr('data-device') || 'desktop'; if(internal) { hiddenItem.slideDown(); icon.removeClass(self.rightArrowClass).addClass(self.downArrowClass); } else if(hiddenItem.length && hiddenItemIsVisible) { hiddenItem.slideUp(); icon.removeClass(self.downArrowClass).addClass(self.rightArrowClass); } else if(hiddenItem.length && !hiddenItemIsVisible) { hiddenItem.slideDown(); icon.removeClass(self.rightArrowClass).addClass(self.downArrowClass); } if(accordionCheckbox.length) { if(accordionIsChecked && hiddenItemIsDisabled && (device === 'desktop' && service !== 'share')) { hiddenItem.removeClass(self.disabledClass); self.enable(hiddenItem, internal); } else if(!accordionIsChecked && !hiddenItemIsDisabled) { self.disable(hiddenItem, internal); } } if(service === 'follow' && !hiddenItemIsDisabled) { $('li.at40-accordion-follow').popover('destroy'); } if(row.hasClass('at40-accordion-follow') && !hiddenItem.hasClass(self.disabledClass)) { if(accordionCheckbox.is(':checked')) { if((!fbLength || fbVal === self.fbDefaultText)) { if(!gtc.closedFollowPopover) { $('.facebookAndTwitterPopover').popover('destroy').popover({ trigger: 'manual', html: 'true', title : 'Add Social Profiles' + '' }); } if(!self.enabledFollow) { if((!fbLength || fbVal === self.fbDefaultText) && facebookCheckbox.is(':checked')) { row.promise().done(function() { self.backgroundAnimation({ elem: fb, start: { wait: 500, duration: 500, props: { backgroundColor: '#c60f13', borderColor: '#CCC' } }, end: { wait: 400, duration: 400, props: { backgroundColor: '#fff', borderColor: '#CD0A0A' } } }); }); } } self.enabledFollow = true; if(!gtc.closedFollowPopover && fbVal === self.fbDefaultText) { $('.facebookAndTwitterPopover').popover('show'); } } $('.at40-accordion-follow-hidden input:text').trigger('keyup', true); } else { gtc.removePopover(); } } if(fbVal !== gtc.fbDefaultText) { fb.css('borderColor', '#CCC'); } else if(fbVal === gtc.fbDefaultText && facebookCheckbox.is(':checked')) { fb.css('borderColor', '#CD0A0A'); } } }, '.at40-accordion-checkbox': { 'change': function(e, internal) { var self = gtc, checkbox = $(this), surface = checkbox.attr('data-surface'), row = $('.at40-accordion-' + surface), hiddenItem = $('.at40-accordion-' + surface + '-hidden'), fb = $('#follow-facebook'), fbLength = fb.val().length, device = $('body').attr('data-device') || 'desktop', previewImg = $('.' + device + '-device[data-previewservice=' + surface + ']'), allPreviewImgs = $('[data-previewservice=' + surface + ']'), follow = $('.at40-follow-horizontal'), visibleFollowIcons; if(checkbox.is(':checked')) { self.enable(hiddenItem, internal, surface); allPreviewImgs.fadeIn().promise().done(function() { if(!internal) { previewImg.addClass('animated ' + gtc.mouseenterAnimation + ' animate-pulse-speed'); $('html, body').promise().done(function() { setTimeout(function() { if(previewImg.is(':reallyvisible')) { previewImg.tooltip('show'); } },0); }); } if(surface === 'follow') { visibleFollowIcons = $('.at40-follow-horizontal .at40-follow-icon:visible'); if(!visibleFollowIcons.length) { follow.hide(); } } }); } else { self.disable(hiddenItem, internal, surface); allPreviewImgs.removeClass('animated ' + gtc.mouseenterAnimation + ' animate-pulse-speed').fadeOut().tooltip('hide'); } if(internal === undefined) { if(surface) { if(checkbox.is(':checked')) { } else { } } } $('#at40-accordion-more-themes').trigger('change'); } }, '.at40-accordion-follow .at40-accordion-checkbox': { 'change': function(e, internal) { if(internal) { return; } $('.at40-accordion-follow-popover').popover('destroy'); var self = gtc, checkbox = $(this), row = $(this).parent('.at40-accordion-row'), hiddenItem = row.next('.at40-accordion-hidden'), fb = $('#follow-facebook'), fbVal = fb.val(), fbLength = fb.val().length; if(checkbox.is(':checked')) { if(!self.enabledFollow && !fbLength || fbVal === self.fbDefaultText) { $('.at40-accordion-follow .at40-accordion-icon-and-text').trigger('click', true); } } } }, '.show-more-follow-options-link': { 'click': function(e) { e.preventDefault(); var showMoreOptions = $('.show-more-follow-options'), showLessOptionsLink = $('.show-less-follow-options-link'), followCheckbox = $('#at40-accordion-follow-checkbox'); if(followCheckbox.is(':checked')) { if(!showMoreOptions.is(':reallyvisible')) { showMoreOptions.slideDown(); $(this).hide(); showLessOptionsLink.show(); } } } }, '.show-less-follow-options-link': { 'click': function(e) { e.preventDefault(); var showMoreOptions = $('.show-more-follow-options'), showMoreOptionsLink = $('.show-more-follow-options-link'), followCheckbox = $('#at40-accordion-follow-checkbox'); if(followCheckbox.is(':checked')) { if(showMoreOptions.is(':reallyvisible')) { showMoreOptions.slideUp(); $(this).hide(); showMoreOptionsLink.show(); } } } }, '.follow-tooltip': { click: function(e) { e.preventDefault(); }, 'mouseover': function() { gtc.removePopover(); } }, '.at40-accordion-trending-textarea': { 'keyup': function(e) { $('.at40-trending-text').text($(this).val()); } }, '#right-share-position': { 'change': function(e, internal) { $('.at40-sharing-vertical').css('right', '0'); } }, '#left-share-position': { 'change': function(e, internal) { $('.at40-sharing-vertical').css('right', 'auto'); } }, '#at40-accordion-share-buttons': { 'change': function(e, internal) { var val = +$(this).val(), buttons = $('.at40-sharing-vertical .at40-share-icon'), btns; if(val === 1) { btns = buttons.eq(-1); btns.fadeIn(); buttons.not(btns).fadeOut(); } else { btns = buttons.slice(0, val - 1).add(buttons.eq(-1)); btns.fadeIn(); buttons.not(btns).fadeOut(); } } }, '.at40-accordion-follow-hidden input[data-service]': { 'keyup change': function(e, internal) { var isCheckbox = $(this).is(':checkbox'), service = $(this).attr('data-service'), company = $(this).attr('data-company'), accordionCheckbox = $('#at40-accordion-follow-checkbox'), accordionCheckboxIsChecked = accordionCheckbox.is(':checked'), followCheckbox = $('#' + service + (company ? '-company-' : '-') + 'follow-checkbox'), followCheckboxIsChecked = followCheckbox.is(':checked'), follow = $('.at40-follow-horizontal'), followItems = $('.at40-accordion-follow-hidden input:text').filter(':hasValue'), textbox = company ? $('#follow-' + service + '-company') : $('#follow-' + service), textboxVal = textbox.val(), dynamicClass = '.at40-follow-icon-' + service, dynamicElem, dynamicElemIsVisible, currentPlaceholderText = gtc.placeholderText[service] || gtc.placeholderText['default'], checkboxesAreChecked = followCheckboxIsChecked && accordionCheckboxIsChecked, visibleFollowIcons; if(company) { dynamicClass += '-company'; } dynamicElem = follow.find(dynamicClass); dynamicElemIsVisible = dynamicElem.is(':reallyvisible'); if(checkboxesAreChecked) { textbox.removeClass(gtc.disabledClass); } else { textbox.addClass(gtc.disabledClass); } if(checkboxesAreChecked && textboxVal.length && !dynamicElemIsVisible) { dynamicElem.fadeIn().css('display', 'inline-block'); follow.show(); } if(!followCheckboxIsChecked || !textboxVal.length && !internal) { dynamicElem.fadeOut(400).promise().done(function() { visibleFollowIcons = $('.at40-follow-horizontal .at40-follow-icon:visible'); if(!visibleFollowIcons.length) { follow.hide(); } }); } if(checkboxesAreChecked && (!textboxVal.length || textboxVal === currentPlaceholderText) && !textbox.is(':focus') && isCheckbox) { if(!internal) { textbox.val(currentPlaceholderText).css('borderColor', '#CD0A0A').select(); } dynamicElem.fadeIn().css('display', 'inline-block'); } else { textbox.attr('placeholder', '').css('borderColor', '#CCC'); } } }, '#at40-accordion-more-themes': { 'change device-change': function() { var device = $('body').attr('data-device'), desktopTrending = $('.at40-desktop-trending'), tabletTrending = $('.at40-tablet-trending'), phoneTrending = $('.at40-phone-trending'), toaster = $('.at40-toaster-img'), follow = $('.at40-follow-horizontal'), visibleFollowItems = follow.find('.at40-follow-icon:reallyvisible'), sharing = $('.at40-sharing-vertical'), isFollowChecked = $('#at40-accordion-follow-checkbox').is(':checked'), isShareChecked = $('#at40-accordion-share-checkbox').is(':checked'), isToasterChecked = $('#at40-accordion-toaster-checkbox').is(':checked'), isTrendingChecked = $('#at40-accordion-trending-checkbox').is(':checked'), tabletShare = $('.at40-tablet-share'), tabletFollow = $('.at40-tablet-follow'), phoneShare = $('.at40-phone-share'), phoneFollow = $('.at40-phone-follow'), tabletDivider = $('.at40-tablet-share-divider, .at40-tablet-follow-divider'), phoneDivider = $('.at40-phone-share-divider, .at40-phone-follow-divider'), tabletArrow = $('.at40-tablet-arrow'), phoneArrow = $('.at40-phone-arrow'), theme = $(this).val(); if(theme === 'light' || theme === 'transparent') { desktopTrending.attr('src', smart_layer_params.img_base+'surface_recommended.png'); tabletTrending.attr('src', smart_layer_params.img_base+'surface_recommended.png'); phoneTrending.attr('src', smart_layer_params.img_base+'preview_phone_recommended.png'); toaster.attr('src', smart_layer_params.img_base+'preview_toaster.png'); if(theme === 'transparent') { follow.add(sharing).removeClass('dark-theme').removeClass('gray-theme').removeClass('light-theme'); } else if(theme === 'light') { follow.add(sharing).removeClass('dark-theme').removeClass('gray-theme').addClass('light-theme'); } tabletDivider.add(phoneDivider).removeClass('dark-divider').removeClass('light-divider').addClass('transparent-divider'); } else if(theme === 'gray') { desktopTrending.attr('src', smart_layer_params.img_base+'surface_recommended_gray.png'); tabletTrending.attr('src', smart_layer_params.img_base+'surface_recommended_gray.png'); phoneTrending.attr('src', smart_layer_params.img_base+'preview_phone_recommended_light.png'); toaster.attr('src', smart_layer_params.img_base+'preview_toaster.png'); follow.add(sharing).removeClass('dark-theme').removeClass('light-theme').addClass('gray-theme'); tabletDivider.add(phoneDivider).removeClass('dark-divider').removeClass('transparent-divider').addClass('light-divider'); } else if(theme === 'dark') { desktopTrending.attr('src', smart_layer_params.img_base+'surface_recommended_dark.png'); tabletTrending.attr('src', smart_layer_params.img_base+'surface_recommended_dark.png'); phoneTrending.attr('src', smart_layer_params.img_base+'preview_phone_recommended_dark.png'); toaster.attr('src', smart_layer_params.img_base+'preview_toaster_dark.png'); follow.add(sharing).removeClass('gray-theme').removeClass('light-theme').addClass('dark-theme'); tabletDivider.add(phoneDivider).removeClass('transparent-divider').removeClass('light-divider').addClass('dark-divider'); } theme = theme === 'light' ? 'transparent' : theme; if(!visibleFollowItems.length && device === 'desktop') { follow.hide(); } if(!isFollowChecked && !isShareChecked) { tabletDivider.add(phoneDivider).hide(); tabletArrow.add(phoneArrow).hide(); } else if(isFollowChecked && isShareChecked) { tabletFollow.removeClass('at40-tablet-follow-full').attr('src', smart_layer_params.img_base+'half_tablet_' + theme + '_follow.png').show(); phoneFollow.removeClass('at40-phone-follow-full').attr('src', smart_layer_params.img_base+'half_mobile_' + theme + '_follow.png').show(); tabletShare.attr('src', smart_layer_params.img_base+'half_tablet_' + theme + '_share.png').removeClass('at40-tablet-share-full').show(); phoneShare.removeClass('at40-phone-share-full').attr('src', smart_layer_params.img_base+'half_mobile_' + theme + '_share.png').show(); tabletDivider.add(phoneDivider).show(); tabletArrow.attr('src', smart_layer_params.img_base+'tablet_tab_' + theme + '.png').show(); phoneArrow.attr('src', smart_layer_params.img_base+'mobile_tab_' + theme + '.png').show(); } else { tabletArrow.add(phoneArrow).hide(); tabletDivider.add(phoneDivider).hide(); if(isFollowChecked && !isShareChecked) { tabletShare.add(phoneShare).hide(); tabletFollow.addClass('at40-tablet-follow-full').attr('src', smart_layer_params.img_base+'tablet_' + theme + '_follow.png').show(); phoneShare.removeClass('at40-phone-share-full').hide(); phoneFollow.addClass('at40-phone-follow-full').attr('src', smart_layer_params.img_base+'mobile_' + theme + '_follow.png').show(); } else if(!isFollowChecked && isShareChecked) { tabletShare.attr('src', smart_layer_params.img_base+'tablet_' + theme + '_share.png').addClass('at40-tablet-share-full').show(); tabletFollow.removeClass('at40-tablet-follow-full').hide(); phoneShare.attr('src', smart_layer_params.img_base+'mobile_' + theme + '_share.png').addClass('at40-phone-share-full').show(); phoneFollow.removeClass('at40-phone-follow-full').hide(); } } if(!isTrendingChecked) { $('[data-previewservice=trending]').hide(); } if(!isFollowChecked) { $('[data-previewservice=follow]').hide(); } if(!isShareChecked) { $('[data-previewservice=share]').hide(); } if(!isToasterChecked) { $('[data-previewservice=toaster]').hide(); } $('.follow-tooltip').popover({ trigger: 'hover', animation: true }); } }, '.at40-accordion-row': { 'mouseenter': function() { var service = $(this).attr('data-type'), device = $('body').attr('data-device') || 'desktop', previewImg = $('.' + device + '-device[data-previewservice=' + service + ']:visible'); if(((service !== 'follow') || (service === 'follow' && $('.at40-follow-horizontal .at40-follow-icon:visible').length))) { previewImg.addClass('animated ' + gtc.mouseenterAnimation + ' animate-pulse-speed').tooltip('show'); } }, 'mouseleave': function() { var service = $(this).attr('data-type'), previewImg = $('[data-previewservice=' + service + ']').filter(':reallyvisible'); previewImg.removeClass('animated ' + gtc.mouseenterAnimation + ' animate-pulse-speed').tooltip('hide'); } }, '#follow-facebook': { 'keyup': function(e, internal) { if(internal) { return; } var elem = $(this), val = elem.val(), service = elem.attr('data-service'), facebookCheckbox = $('#facebook-follow-checkbox'); if(service === 'facebook' && val !== gtc.fbDefaultText) { elem.css('borderColor', '#CCC'); } else if(service === 'facebook' && val === gtc.fbDefaultText && facebookCheckbox.is(':checked')) { elem.css('borderColor', '#CD0A0A'); } } }, '#facebook-follow-checkbox': { 'change': function(e, internal) { if(!$(this).is(':checked')) { gtc.removePopover(); } } }, '.at40-accordion input, .at40-accordion select, .at40-accordion textarea': { 'keyup change select': function(e) { var dynamicObj = {}, $elem = $(this); dynamicObj['#' + $elem.attr('id')] = $elem.is('input:radio') || $elem.is('input:checkbox') ? $elem.is(':checked') : $elem.attr('value'); commonMethods.localStorageSettings({ namespace: slNamespace, method: 'set', data: dynamicObj }); if($elem.is('input:radio') && $elem.is(':checked')) { $elem.siblings('input:radio').attr('checked', false).trigger('keyup'); } } }, '.facebookAndTwitterPopover': { 'hide': function() { gtc.closedFollowPopover = true; commonMethods.localStorageSettings({ namespace: slNamespace, method: 'set', data: { closedFollowPopover: true } }); } }, '.at40-restore-default-options': { 'click': function(ev) { var defaults = gtc.defaults; commonMethods.localStorageSettings({ namespace: slNamespace, method: "remove" }); gtc.readyLogic(defaults); $('.at40-accordion-hidden').not('.at40-accordion-more-hidden').slideUp(); $('.at40-accordion-more-hidden').slideDown(); ev.preventDefault(); } }, 'input.save-profile': { 'click': function(ev) { gtc.generateCode(); } }, '.at40-device-type-buttons .btn': { 'click': function(ev) { ev.preventDefault(); if($(this).hasClass('btn-primary')) return; var currentButton = $(this), device = currentButton.attr('data-device'), desktopImg = $('.at40-browser-img'), tabletImg = $('.at40-tablet-img'), phoneImg = $('.at40-phone-img'), desktopDevice = $('.desktop-device'), tabletDevice = $('.tablet-device'), phoneDevice = $('.phone-device'), tabletBackground = $('.at40-tablet-background'), trendingText = $('.at40-trending-text'), phoneBackground = $('.at40-phone-background'), shareAccordionCheckbox = $('#at40-accordion-share-checkbox'), isShareChecked = shareAccordionCheckbox.is(':checked'), shareHiddenContent = $('.at40-accordion-share-hidden'), toaster = $('.at40-accordion-toaster'), toasterHiddenContent = $('.at40-accordion-toaster-hidden'), toasterIcon = $('.at40-accordion-toaster .at40-accordion-icon'), previewArea = $('#preview'); $('.at40-device-type-buttons .btn').not(currentButton).removeClass('btn-primary'); $('body').attr('data-device', device); previewArea.hide(); if(!currentButton.hasClass('btn-primary')) { currentButton.addClass('btn-primary'); if(device === 'desktop') { tabletDevice.add(phoneDevice).addClass('smartlayers-hidden'); tabletImg.add(phoneImg).addClass('hidden-off-screen'); desktopImg.removeClass('hidden-off-screen'); trendingText.removeClass('at40-trending-text-tablet').removeClass('at40-trending-text-phone'); desktopDevice.removeClass('smartlayers-hidden'); } else if(device === 'tablet') { desktopDevice.add(phoneDevice).addClass('smartlayers-hidden'); desktopImg.add(phoneImg).addClass('hidden-off-screen'); tabletImg.removeClass('hidden-off-screen'); trendingText.removeClass('at40-trending-text-phone').addClass('at40-trending-text-tablet'); tabletDevice.removeClass('smartlayers-hidden'); } else if(device === 'phone') { desktopDevice.add(tabletDevice).add(trendingText).addClass('smartlayers-hidden'); desktopImg.add(tabletImg).addClass('hidden-off-screen'); phoneImg.removeClass('hidden-off-screen'); trendingText.removeClass('at40-trending-text-tablet').addClass('at40-trending-text-phone'); phoneDevice.add(trendingText).not(phoneBackground).removeClass('smartlayers-hidden'); } if(device === 'tablet' || device === 'phone') { if(isShareChecked) { gtc.disable(shareHiddenContent, true); $('[data-device=' + device + '] .at40-accordion-share-hidden').tooltip({ trigger: 'hover', animation: true, title : 'Desktop Only', placement: 'right' }); } toaster.add(toasterHiddenContent).hide(); } else if(device === 'desktop') { $('[data-device=' + device + '] .at40-accordion-share-hidden').tooltip('destroy'); if(isShareChecked) { gtc.enable(shareHiddenContent, true); } toaster.show(); toasterIcon.removeClass(gtc.downArrowClass).addClass(gtc.rightArrowClass); } } previewArea.children().hide(); previewArea.show(); previewArea.children('.at40-browser-img').show().promise().done(function() { previewArea.children().fadeIn(200); if(device !== 'desktop') { $('.at40-preview-trending-img').hide(); } $('#at40-accordion-more-themes').trigger('device-change'); }); } }, 'a[href=#]': { 'click': function(ev) { ev.preventDefault(); } }, }, backgroundAnimation: function(obj) { setTimeout(function() { obj.elem.animate(obj.start.props, obj.start.duration, function() { setTimeout(function() { obj.elem.animate(obj.end.props, obj.end.duration); }, obj.end.wait); }); }, obj.start.wait); }, removePopover: function() { if(gtc.enabledFollow) { $('.facebookAndTwitterPopover').popover('destroy'); } }, bindEvents: function() { var x, events = this.events; for(x in events) { if(events.hasOwnProperty(x)) { $(x).on(events[x]); } } return this; }, generateCode: function() { var pubId; if($("#addthis_profile").val() != "") { pubId = $("#addthis_profile").val(); } else { pubId = $("#pub").val(); } // Setting the generated code template property var leftSharePosition = $('#left-share-position'), template = _.template($.trim($("#generated-code").html()), { theme: $('#at40-accordion-more-themes').val(), followIsTurnedOn: $('#at40-accordion-follow-checkbox').is(':checked'), shareIsTurnedOn: $('#at40-accordion-share-checkbox').is(':checked'), toasterIsTurnedOn: $('#at40-accordion-toaster-checkbox').is(':checked'), trendingIsTurnedOn: $('#at40-accordion-trending-checkbox').is(':checked'), sharePosition: leftSharePosition.is(':checked') ? "left": "right", numPreferredServices: $('#at40-accordion-share-buttons').val(), followServices: (function() { var services = "[", followCheckboxes = $.grep($('.at40-accordion-follow-checkbox:checked'), function(elem) { var currentService = $(elem).attr('data-service'), company = $(elem).attr('data-company'), currentId = company === 'true' ? $('#follow-' + currentService + '-company').val() : $('#follow-' + currentService).val(); return currentId !== '' && currentId !== 'YOUR-FEED' && currentId !== 'YOUR-PROFILE' && currentId !== 'YOUR-USERNAME'; }), currentService = "", currentId = "", company = ""; if(followCheckboxes.length) { $(followCheckboxes).each(function(iterator, value) { currentService = $(this).attr('data-service'); company = $(this).attr('data-company'); currentId = company === 'true' ? $('#follow-' + currentService + '-company').val() : $('#follow-' + currentService).val(); if(currentService === 'rss') { currentId = 'http://' + currentId; } else if(currentService === 'gplus') { currentService = 'google_follow'; } if(iterator < followCheckboxes.length - 1) { if(company === 'true') { services += "\r\n {'service': '" + currentService + "', 'id': '" + currentId + "', 'usertype': 'company'},"; } else { services += "\r\n {'service': '" + currentService + "', 'id': '" + currentId + "'},"; } } else { if(company === 'true') { services += "\r\n {'service': '" + currentService + "', 'id': '" + currentId + "', 'usertype': 'company'}"; services += "\r\n ]"; } else { services += "\r\n {'service': '" + currentService + "', 'id': '" + currentId + "'}"; services += "\r\n ]"; } } }); } else { services += ']'; } return services; }()), trendingLabel: $('#at40-accordion-trending-textarea').val() }); $.ajax( {"url" : smart_layer_params.wp_ajax_url, "type" : "post", "data" : {"action" : 'save_smart_layer_settings', "value" : template, "profileId" : $('#addthis_profile').val(), }, "success": function(data) { }, "complete" :function(data) { $('#smartlayers-getthecode').submit(); }, }); $('textarea#txt').val(template); } }; }(window.jQuery, window, document));