Plugin Directory

Changeset 2026316


Ignore:
Timestamp:
02/07/2019 06:10:03 AM (7 years ago)
Author:
kranthitech
Message:

Updated premium extensions to work with Woocommerce based licensing

Location:
yeloni-free-exit-popup/trunk
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • yeloni-free-exit-popup/trunk/admin-interface/dist/admin.min.js

    r2013246 r2026316  
    479479//Initialize the app and route configuration here
    480480
    481 angular.module('yetienceApp', ['ui.router', 'formly', 'formlyBootstrap', 'jsonFormatter', 'ui.bootstrap', 'angular-md5', 'ngCookies', 'LocalStorageModule','angularTrix','ngTagsInput'])
    482 
    483 .config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) {
    484 
    485     if (yetience.website_saved) {
    486         $urlRouterProvider.otherwise('/list')
    487     } else {
    488         $urlRouterProvider.otherwise('/start')
    489     }
    490 
    491 
    492     $stateProvider
    493         .state('start', {
    494             url: '/start',
    495             templateUrl: yetience.adminPath + '/src/partials/start.html',
    496             controller: 'StartController'
    497         })
    498         .state('list', {
    499             url: '/list',
    500             templateUrl: yetience.adminPath + '/src/partials/list.html',
    501             controller: 'ListController'
    502         })
    503         .state('premium', {
    504             url: '/premium',
    505             templateUrl: yetience.adminPath + '/src/partials/gopremium.html',
    506             controller: 'GoPremiumController'
    507         })
    508         .state('build', {
    509             url: '/:mode/build',
    510             templateUrl: yetience.adminPath + '/src/partials/build.html',
    511             controller: 'buildController'
    512         })
    513         .state('build.goals', {
    514             url: '/goals',
    515             templateUrl: yetience.adminPath + '/src/partials/build.business.goal.html',
    516             controller: 'businessGoalsController'
    517         })
    518         .state('build.placement', {
    519             url: '/placement',
    520             templateUrl: yetience.adminPath + '/src/partials/build.widget.type.html',
    521             controller: 'widgetTypeController'
    522         })
    523 
    524     .state('build.select', {
    525             url: '/select',
    526             templateUrl: yetience.adminPath + '/src/partials/build.select.html',
    527             controller: 'buildSelectController'
    528         })
    529         .state('build.design', {
    530             url: '/design',
    531             templateUrl: yetience.adminPath + '/src/partials/build.design.html',
    532             controller: 'buildDesignController'
    533         })
    534         .state('build.integrate',{
    535             url: '/integrate',
    536             templateUrl: yetience.adminPath + '/src/partials/build.integrate.html',
    537             controller: 'buildIntegrateController'
    538         })
    539         .state('extensions', {
    540             url: '/extensions',
    541             templateUrl: yetience.adminPath + '/src/partials/extensions.html',
    542             controller: 'extensionSaleController'
    543         })
    544         .state('affiliate', {
    545             url: '/affiliate',
    546             templateUrl: yetience.adminPath + '/src/partials/affiliate.html',
    547             controller: 'affiliateController'
    548         })
     481angular.module('yetienceApp', ['ui.router', 'formly', 'formlyBootstrap', 'jsonFormatter', 'ui.bootstrap', 'angular-md5', 'ngCookies', 'LocalStorageModule', 'angularTrix', 'ngTagsInput'])
     482
     483    .config(['$stateProvider', '$urlRouterProvider', function ($stateProvider, $urlRouterProvider) {
     484
     485        if (yetience.website_saved) {
     486            $urlRouterProvider.otherwise('/list')
     487        } else {
     488            $urlRouterProvider.otherwise('/start')
     489        }
     490
     491
     492        $stateProvider
     493            .state('start', {
     494                url: '/start',
     495                templateUrl: yetience.adminPath + '/src/partials/start.html',
     496                controller: 'StartController'
     497            })
     498            .state('old_list', {
     499                url: '/old_list',
     500                templateUrl: yetience.adminPath + '/src/partials/list.html',
     501                controller: 'ListController'
     502            })
     503            .state('list', {
     504                url: '/list',
     505                templateUrl: yetience.adminPath + '/src/partials/home.html',
     506                controller: 'ListController'
     507            })
     508            .state('premium', {
     509                url: '/premium',
     510                templateUrl: yetience.adminPath + '/src/partials/gopremium.html',
     511                controller: 'GoPremiumController'
     512            })
     513            .state('build', {
     514                url: '/:mode/build',
     515                templateUrl: yetience.adminPath + '/src/partials/build.html',
     516                controller: 'buildController'
     517            })
     518            .state('build.goals', {
     519                url: '/goals',
     520                templateUrl: yetience.adminPath + '/src/partials/build.business.goal.html',
     521                controller: 'businessGoalsController'
     522            })
     523            .state('build.placement', {
     524                url: '/placement',
     525                templateUrl: yetience.adminPath + '/src/partials/build.widget.type.html',
     526                controller: 'widgetTypeController'
     527            })
     528
     529            .state('build.select', {
     530                url: '/select',
     531                templateUrl: yetience.adminPath + '/src/partials/build.select.html',
     532                controller: 'buildSelectController'
     533            })
     534            .state('build.design', {
     535                url: '/design',
     536                templateUrl: yetience.adminPath + '/src/partials/build.design.html',
     537                controller: 'buildDesignController'
     538            })
     539            .state('build.integrate', {
     540                url: '/integrate',
     541                templateUrl: yetience.adminPath + '/src/partials/build.integrate.html',
     542                controller: 'buildIntegrateController'
     543            })
     544            .state('extensions', {
     545                url: '/extensions',
     546                templateUrl: yetience.adminPath + '/src/partials/extensions.html',
     547                controller: 'extensionSaleController'
     548            })
     549            .state('affiliate', {
     550                url: '/affiliate',
     551                templateUrl: yetience.adminPath + '/src/partials/affiliate.html',
     552                controller: 'affiliateController'
     553            })
    549554        /*
    550555        .state('recommend', {
     
    585590        })
    586591        */
    587 }])
    588 
     592    }])
    589593angular.module('yetienceApp')
    590594    .controller('GoPremiumController', ['$scope', '$rootScope', 'SettingsService', '$modal', 'subscriptionAuth', 'CommService', '$state', 'localStorageService', function($scope, $rootScope, SettingsService, $modal, subscriptionAuth, CommService, $state, localStorageService) {
     
    665669        $scope.WU = WidgetUpdate
    666670
     671
    667672        //console.dir($scope.R)
    668673        //$scope.displayCounter = 1;
     
    711716
    712717            }
     718
     719            fetchSubscriberCount(SettingsService.setup())
    713720
    714721        })
     
    793800
    794801        $scope.isEmailTheme = function (index) {
     802            //console.log('index ', index)
    795803            var widgets = SettingsService.setup().widgets
    796804            // if (widgets[index].components.emailSubscription) {
     
    837845            SettingsService.saveSetup('<center>This Popup will be Deleted</center>', 'Delete')
    838846        }
    839 
     847        $scope.addonList = [1, 2, 3, 4, 5, 6, 7, 8]
    840848
    841849
     
    971979        }
    972980
     981        $scope.addonGroups = {
     982
     983            individual: {
     984                title: 'Get a Feature you need',
     985                monthly: 8,
     986                annual: 5
     987            },
     988            bundle: {
     989                title: 'Get all the Premium Features',
     990                monthly: 15,
     991                annual: 10
     992            },
     993
     994        }
     995
     996        $scope.addonShow = function (section, feature) {
     997            if (section == 'bundle' && feature == 'premiumSubscription') {
     998                return true
     999            }
     1000            if (section == 'individual' && feature != 'premiumSubscription') {
     1001                return true
     1002            }
     1003
     1004            return false
     1005        }
     1006
     1007        function fetchSubscriberCount(setup) {
     1008
     1009            CommService.getSubscriberCount(setup.id)
     1010                .then(function (count) {
     1011                    setup.subscriberCount = count
     1012                })
     1013        }
     1014
     1015        $scope.ext = {}
     1016        $scope.activate = function (license, extension) {
     1017            $scope.ext[extension].activationInProgress = true
     1018
     1019            CommService.activate(license, extension, SettingsService.setup().id)
     1020                .then(function (activation_response) {
     1021                    console.log('activation response is ', activation_response)
     1022                    $scope.ext[extension].activationInProgress = false
     1023                    if (!activation_response.status.success) {
     1024                        $scope.ext[extension].activationFailed = true
     1025                        $scope.ext[extension].activationError = activation_response.status.error
     1026                    } else {
     1027                        $scope.ext[extension].activationFailed = false
     1028                        location.reload()
     1029                    }
     1030                })
     1031        }
    9731032    }])
    9741033angular.module('yetienceApp')
     
    36613720
    36623721angular.module('yetienceApp')
    3663     .service('SettingsService', ['CommService', '$rootScope', 'configurationFields', '$cookies', '$q', 'UtilsService', '$stateParams', '$location', function(CommService, $rootScope, configurationFields, $cookies, $q, UtilsService, $stateParams, $location) {
     3722    .service('SettingsService', ['CommService', '$rootScope', 'configurationFields', '$cookies', '$q', 'UtilsService', '$stateParams', '$location', function (CommService, $rootScope, configurationFields, $cookies, $q, UtilsService, $stateParams, $location) {
    36643723
    36653724        this.hasAllFeatures = false;
    36663725        var setup = null
    3667         var encode = function(x) {
     3726        var encode = function (x) {
    36683727            return window.btoa(encodeURIComponent(x))
    36693728        }
    36703729
    3671         var decode = function() {
     3730        var decode = function () {
    36723731
    36733732            return decodeURIComponent(window.atob)
     
    36773736        this.decode = decode
    36783737
    3679         this.setup = function() {
     3738        this.setup = function () {
    36803739            return setup
    3681         } 
     3740        }
    36823741
    36833742        var action_button_message = "<h3>Almost done!</h3><br/>Your popup will appear when the user clicks on the round floating button. (If you need an exit intent popup, you can select another design)<div class='yel-instructions'><ul><li>Click the button below to Save your Popup</li><li>Open any page on your website</li><li>Wait till the page fully loads</li><li>The round floating button shows up on the bottom right of the page</li><li>The Popup should show up when the user clicks on the button</li><li>After saving, you can configure the Popup behaviour</li></ul></div><br>",
     
    36893748
    36903749            return CommService.getWebsite(website_id)
    3691                 .then(function(website) {
     3750                .then(function (website) {
    36923751                    // if (website.extensions) {
    36933752                    //     if (website.extensions.premiumSubscription) {
     
    37433802        function createWebsiteAndAttach() {
    37443803            return CommService.createWebsiteId()
    3745                 .then(function(website) {
    3746                    
     3804                .then(function (website) {
     3805
    37473806                    $cookies.put("autience-website-id", website.id)
    37483807                    angular.extend(setup, website)
     
    37683827            //3. Initially referrer_id is present, but later it is not present
    37693828            CommService.isReferrerPresent()
    3770                 .then(function(referrer_present) {
     3829                .then(function (referrer_present) {
    37713830
    37723831                    console.log('referrer_present is ' + referrer_present)
     
    37753834                    cb()
    37763835                })
    3777                 .catch(function() {
     3836                .catch(function () {
    37783837                    cb()
    37793838                })
     
    37813840        }
    37823841
    3783         this.initialize = function(cb) {
     3842        this.initialize = function (cb) {
    37843843            //when the page loads, read the setup and upload it to the server
    37853844            var setup_on_platform = yetience.readFromPlatform()
     
    38083867                    //console.log('trying with website_id fro cookie- ' + $cookies.get("autience-website-id"))
    38093868                    getWebsiteAndAttach($cookies.get("autience-website-id"), false)
    3810                         .then(function() {
     3869                        .then(function () {
    38113870                            //console.log("Attached website id from cookie")
    38123871                            cb()
    3813                         }, function() {
     3872                        }, function () {
    38143873                            //console.log("Cannot attach website id of cookie. Creating a new one")
    38153874                            createWebsiteAndAttach()
    3816                                 .then(function() {
     3875                                .then(function () {
    38173876                                    checkPoweredByAndAttach(saveSetupAndCallback(cb))
    38183877                                })
     
    38213880                    //console.log("there is no website id on cookie")
    38223881                    createWebsiteAndAttach()
    3823                         .then(function() {
     3882                        .then(function () {
    38243883                            checkPoweredByAndAttach(saveSetupAndCallback(cb))
    38253884                        })
     
    38303889                //console.log('WEBSITE ID found on setup')
    38313890
    3832                 getWebsiteAndAttach(setup.id, true).then(function() {
     3891                getWebsiteAndAttach(setup.id, true).then(function () {
    38333892                    cb()
    3834                 }, function() {
     3893                }, function () {
    38353894                    //console.log('website is not yet marked as saved.. marking')
    3836                     CommService.markSaved(setup.id).then(function() {
     3895                    CommService.markSaved(setup.id).then(function () {
    38373896                        //console.log("marked as saved")
    38383897                        CommService.createNewEvent("d_fresh_plugin_install", '')
     
    38443903
    38453904            function saveSetupAndCallback(cb) {
    3846                 return function() {
     3905                return function () {
    38473906                    saveSetup('', 'Got it. Thanks!', true)
    38483907                    cb()
     
    39003959        }
    39013960
    3902         this.addNewWidget = function(theme_id, widget) {
     3961        this.addNewWidget = function (theme_id, widget) {
    39033962            //pushing will be done at the end
    39043963            //setup.widgets.push(widget)
     
    39614020
    39624021            CommService.getThemeTemplate(theme_id)
    3963                 .then(function(template) {
     4022                .then(function (template) {
    39644023                    //console.log(template)
    39654024                    widget.raw = encode(template)
     
    39894048        }
    39904049
    3991         this.isPremium = function() {
     4050        this.isPremium = function () {
    39924051            if (setup.package_id && setup.package_id != 'default') {
    39934052                return true
     
    39954054        }
    39964055
    3997         this.showAffiliateLink = function(show) {
     4056        this.showAffiliateLink = function (show) {
    39984057
    39994058            setup.showAffiliateLink = show;
     
    40024061
    40034062
    4004         this.createWidget = function(theme) {
     4063        this.createWidget = function (theme) {
    40054064            return {
    40064065                code: UtilsService.getRandomCode(),
     
    40104069        }
    40114070
    4012         this.getWidget = function(index) {
     4071        this.getWidget = function (index) {
    40134072            return setup.widgets[index]
    40144073        }
     
    40274086
    40284087
    4029         this.SaveCurrentPopup = function() {
     4088        this.SaveCurrentPopup = function () {
    40304089            console.log('Calling Save Popup')
    40314090
     
    40434102                    }
    40444103                }
    4045 
    40464104            }
    40474105
     
    40954153        }
    40964154    }])
    4097 
    40984155angular.module('yetienceApp')
    40994156    .service('CommService', ['$http', '$q', '$rootScope', 'md5', function ($http, $q, $rootScope, md5) {
     
    43634420        }
    43644421
     4422        this.activate = function (license, extension, website_id) {
     4423            return postAndResolve('/subscription/api/activations/activate', {
     4424                license: license,
     4425                website_id: website_id,
     4426                extension: extension
     4427            })
     4428        }
     4429
    43654430        this.uploadSetup = function (website_id, setup) {
    43664431
     
    43714436            var url = el.getAttribute("href")
    43724437            return getAndResolve(url, null, '')
     4438        }
     4439
     4440        this.getSubscriberCount = function (website_id) {
     4441            return getAndResolve('/api/EmailSubscriptions/count?where[website_id]=' + website_id)
    43734442        }
    43744443
     
    46064675    }])
    46074676angular.module('yetienceApp')
    4608     .service('WidgetUpdate', ['CommService', '$state', '$timeout', 'SettingsService', 'UtilsService', '$rootScope', '$modal', '$q', function(CommService, $state, $timeout, SettingsService, UtilsService, $rootScope, $modal, $q) {
     4677    .service('WidgetUpdate', ['CommService', '$state', '$timeout', 'SettingsService', 'UtilsService', '$rootScope', '$modal', '$q', function (CommService, $state, $timeout, SettingsService, UtilsService, $rootScope, $modal, $q) {
    46094678
    46104679        var service = this
     
    46394708            design: {
    46404709                show: true,
    4641                 title: function(widget) {
     4710                title: function (widget) {
    46424711                    /*
    46434712                        If email subscription theme, then button title is 'Integrate'
     
    46544723                edit: true,
    46554724                operation: 'saveTemplate',
    4656                 saveOnCompletion: function(widget) {
     4725                saveOnCompletion: function (widget) {
    46574726                    //Save this if it is not an email widget
    46584727                    //if it's an email widget, don't save
     
    46704739                operation: 'saveEmailTemplate',
    46714740                tabTitle: 'Autoresponse',
    4672                 create: function(widget) {
     4741                create: function (widget) {
    46734742                    //if email sub widget - retur
    46744743                    if (widget) {
     
    46804749                    }
    46814750                },
    4682                 edit: function(widget) {
     4751                edit: function (widget) {
    46834752                    //if email sub widget - retur
    46844753                    if (widget) {
     
    47274796        }
    47284797
    4729         this.nextFunction = function(widget, customer) {
     4798        this.nextFunction = function (widget, customer) {
    47304799            var operation = states[current.state].operation
    47314800            if (operation) {
    47324801                //set working as true
    47334802                current.working = true
    4734                 operations[operation](widget, customer, function() {
    4735                     $timeout(function() {
     4803                operations[operation](widget, customer, function () {
     4804                    $timeout(function () {
    47364805                        current.working = false
    47374806                        goToNextState()
     
    47454814
    47464815        var operations = {
    4747             saveEmailTemplate: function(widget, customer, cb) {
     4816            saveEmailTemplate: function (widget, customer, cb) {
    47484817
    47494818                if (UtilsService.checkNested(widget, ['components', 'welcomeEmail', 'values', 'sendWelcomeEmail'])) {
    47504819                    if (widget.components.welcomeEmail.values.sendWelcomeEmail == true) {
    47514820                        CommService.addWelcomeEmail(widget)
    4752                             .then(function(status) {
     4821                            .then(function (status) {
    47534822                                console.log('status is ' + status)
    47544823                                savePopup(widget)
     
    47654834            },
    47664835
    4767             saveTemplate: function(widget, customer, cb) {
     4836            saveTemplate: function (widget, customer, cb) {
    47684837                widget.rendered = getWidget()
    47694838
    47704839                return getStyles()
    4771                     .then(function(content) {
     4840                    .then(function (content) {
    47724841                        theme_styles = content
    47734842                        return getCommonStyles()
    47744843                    })
    4775                     .then(function(content) {
     4844                    .then(function (content) {
    47764845                        common_styles = content
    47774846                        widget.styles = attachStyles(theme_styles, common_styles)
     
    47824851
    47834852            },
    4784             updateWidget: function(widget, customer, cb) {
     4853            updateWidget: function (widget, customer, cb) {
    47854854                if (widget.widget_id) {
    47864855                    //existing widget, update before proceeding
    47874856                    CommService.updateWidget(widget)
    4788                         .then(function(widget) {
     4857                        .then(function (widget) {
    47894858                            SettingsService.saveSetup('Your Widget has been Updated', 'Click here to Save Changes')
    47904859
     
    47984867
    47994868            },
    4800             createWidget: function(widget, customer, cb) {
     4869            createWidget: function (widget, customer, cb) {
    48014870
    48024871                //Take the widget on scope and create a new widget on the server
    48034872                CommService.createWidget(SettingsService.setup().id, widget, customer)
    4804                     .then(function(created_widget) {
     4873                    .then(function (created_widget) {
    48054874
    48064875                        //CommService.createNewEvent("design_saved",'');
     
    48464915            if (save_now) {
    48474916                checkAndAskWidgetName(widget)
    4848                     .then(function() {
     4917                    .then(function () {
    48494918                        SettingsService.SaveCurrentPopup()
    48504919                    })
     
    48564925
    48574926        function isEmailPopup(widget) {
     4927            if (!$rootScope.themes) {
     4928                return false //themes are not yet fetched
     4929            }
    48584930            if (widget) {
    48594931                return ($rootScope.themes[widget.theme].categories.indexOf('subscribe') >= 0)
     
    48854957
    48864958                var modalInstance = $modal.open({
    4887                     controller: ['$rootScope','WidgetUpdate', function(R,WU) {
     4959                    controller: ['$rootScope', 'WidgetUpdate', function (R, WU) {
    48884960                        this.R = $rootScope
    48894961                        this.WU = WU
    48904962
    4891                         this.poweredBy = function() {
    4892                             return !R.SETUP.poweredBy||R.SETUP.customPoweredBy
     4963                        this.poweredBy = function () {
     4964                            return !R.SETUP.poweredBy || R.SETUP.customPoweredBy
    48934965                        }
    48944966
    48954967                        this.currentWidget = widget
    48964968
    4897                         this.ok = function() {
     4969                        this.ok = function () {
    48984970                            modalInstance.close()
    48994971                            D.resolve()
     
    49094981        }
    49104982
    4911         this.changePoweredBy = function(fromCreate) {
     4983        this.changePoweredBy = function (fromCreate) {
    49124984            //Create a new variable customPoweredBy so that we can keep the 'powered by yeloni' option always available to downloaded plugin users
    49134985            $rootScope.SETUP.customPoweredBy = true
    49144986            //return if the widget is being created
    4915             if(fromCreate == true){
     4987            if (fromCreate == true) {
    49164988                return
    49174989            }
    4918             var message =  "'Powered by Yeloni' message will now be displayed", button = 'Enable'
     4990            var message = "'Powered by Yeloni' message will now be displayed",
     4991                button = 'Enable'
    49194992            // console.log($rootScope.SETUP.poweredBy)
    4920             if($rootScope.SETUP.poweredBy == false){
     4993            if ($rootScope.SETUP.poweredBy == false) {
    49214994                message = "'Powered by Yeloni' message will no longer be displayed", button = 'Disable'
    49224995            }
    49234996
    4924             SettingsService.saveSetup('<center> '+message+' </center>', button)
     4997            SettingsService.saveSetup('<center> ' + message + ' </center>', button)
    49254998        }
    49264999    }])
    4927 
    49285000angular.module('yetienceApp')
    49295001    .service('UpgradeService', [ '$rootScope', 'SettingsService', 'subscriptionAuth', 'CommService', function( $rootScope, SettingsService, subscriptionAuth, CommService) {
     
    49675039
    49685040angular.module('yetienceApp')
    4969     .service('FeatureStatusService', ['$rootScope', function($rootScope, SettingsService) {
    4970 
    4971 
    4972         this.mobileScreens = function(widget, feature) {
     5041    .service('FeatureStatusService', ['$rootScope', function ($rootScope, SettingsService) {
     5042
     5043
     5044        this.mobileScreens = function (widget, feature) {
    49735045            feature.priority = 1;
    49745046            return {
     
    49775049                ideal: "Show on mobiles & desktops",
    49785050                icon: "glyphicon glyphicon-phone",
    4979                 upgrade: 'Mobiles and Tablets addon',
    4980                 description: 'In the free version popup is shown only on Desktops. Get this addon to show Popups on Mobiles and Tablets'
     5051                upgrade: 'Show on Mobiles and Tablets addon',
     5052                description: 'In the free version popup is shown only on Desktops. Get this addon to show Popups on Mobiles and Tablets',
     5053                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/Mobile_and_tablets_addon.jpg',
     5054                url: 'https://www.yeloni.com/product/show-mobiles-tablets/',
     5055                wcId: '1627',
     5056                enabled: true
    49815057            };
    49825058        }
    49835059
    4984         this.specificPages = function(widget, feature) {
     5060        this.specificPages = function (widget, feature) {
    49855061            feature.priority = 2;
    49865062
     
    49905066                ideal: "Show on selected pages",
    49915067                icon: "glyphicon glyphicon-list-alt",
    4992                 upgrade: 'Page Selection addon',
    4993                 description: "In the free version popup is shown on all the pages of your website. Get this addon to specify which page(s) you want to see the popup on"
     5068                upgrade: 'Show on Selected Pages addon',
     5069                description: "In the free version popup is shown on all the pages of your website. Get this addon to specify which page(s) you want to see the popup on",
     5070                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/page_selection_addon.jpg',
     5071                url: 'https://www.yeloni.com/product/show-selected-pages/',
     5072                wcId: '1628',
     5073                enabled: true
    49945074            };
    49955075        }
    49965076
    4997         this.hideAfterCta = function(widget, feature) {
     5077        this.hideAfterCta = function (widget, feature) {
    49985078            feature.priority = 6;
    49995079            return {
     
    50025082                ideal: "Disable after subscription",
    50035083                icon: "glyphicon glyphicon-flash",
    5004                 upgrade: 'Stick Around addon',
    5005                 description: "This addon helps you to keep the widget active on multiple pages throughout the visitor's session until they perform the expected action"
     5084                upgrade: 'Show until Expected Action addon',
     5085                description: "This addon helps you to keep the widget active on multiple pages throughout the visitor's session until they perform the expected action",
     5086                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/stick_around_addon.jpg',
     5087                url: 'https://www.yeloni.com/product/hide-popup-action/',
     5088                wcId: '1633',
     5089                enabled: false
    50065090            };
    50075091        }
    50085092
    5009         this.emailSignature = function(widget, feature) {
     5093        this.emailSignature = function (widget, feature) {
    50105094            feature.priority = 5;
    50115095            return {
     
    50145098                ideal: "ideal",
    50155099                icon: "glyphicon glyphicon-tag",
    5016                 upgrade: "Unbranding addon",
    5017                 description: "Auto responder messages come with a small footnote. This extension enables you to disable the message"
     5100                upgrade: "Disable all Yeloni Branding addon",
     5101                description: "Auto responder messages come with a small footnote. This extension enables you to disable the message",
     5102                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/unbranding_addon.jpg',
     5103                url: 'https://www.yeloni.com/product/remove-yeloni-email-signature-autoresponder-emails/',
     5104                wcId: '1629',
     5105                enabled: true
    50185106            };
    50195107        }
    50205108
    5021         this.customHtml = function(widget, feature) {
     5109        this.customHtml = function (widget, feature) {
    50225110            feature.priority = 4;
    50235111            return {
     
    50265114                ideal: "custom html >",
    50275115                icon: "glyphicon glyphicon-list-alt",
    5028                 upgrade: 'Custom HTML addon',
    5029                 description: "If you have specific requirements or an in-house designer, this extension allows you to create popups with your own HTML and CSS"
     5116                upgrade: 'Add your own Custom HTML addon',
     5117                description: "If you have specific requirements or an in-house designer, this extension allows you to create popups with your own HTML and CSS",
     5118                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/custom_html_addon.jpg',
     5119                url: 'https://www.yeloni.com/product/custom-html-popup/',
     5120                wcId: '1630',
     5121                enabled: true
    50305122            };
    50315123        }
    50325124
    5033         this.premiumEmail = function(widget, feature) {
     5125        this.premiumEmail = function (widget, feature) {
    50345126            feature.priority = 3;
    50355127            return {
     
    50385130                ideal: " >",
    50395131                icon: "glyphicon glyphicon-envelope",
    5040                 upgrade: 'Email Marketing addon',
    5041                 description: 'This extension allows you to integrate Yeloni with Aweber, Active Campaign and Sendy'
     5132                upgrade: 'Email Marketing Integrations',
     5133                description: 'This extension allows you to integrate Yeloni with Aweber, Active Campaign and Sendy',
     5134                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/email_marketing_addon.jpg',
     5135                url: 'https://www.yeloni.com/product/connect-email-provider/',
     5136                wcId: '1631',
     5137                enabled: true
    50425138            };
    50435139        }
    50445140
    5045         this.showAdminFeature = function(widget, feature) {
     5141        this.showAdminFeature = function (widget, feature) {
    50465142            feature.priority = 7;
    50475143            return {
     
    50515147                icon: "glyphicon glyphicon-user",
    50525148                upgrade: 'Guest Only addon',
    5053                 description: "This allows you to disable widgets for users who are already logged in. Works only if you are using wordpress to manage your users"
    5054             };
    5055         }
    5056 
    5057         this.limitByReferrer = function(widget, feature) {
     5149                description: "This allows you to disable widgets for users who are already logged in. Works only if you are using wordpress to manage your users",
     5150                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/guest_only_addon.jpg',
     5151                url: 'https://www.yeloni.com/product/hide-popup-logged-visitors/',
     5152                wcId: '1632',
     5153                enabled: false
     5154            }
     5155        }
     5156
     5157        this.limitByReferrer = function (widget, feature) {
    50585158            feature.priority = 8;
    50595159            return {
     
    50635163                icon: "glyphicon glyphicon-globe",
    50645164                upgrade: 'Segment by Source addon',
    5065                 description: 'This allows you to segment your audience based on the referring site. For example, you could show one widget to search traffic (from google) and another widget for social traffic (from facebook)'
     5165                description: 'This allows you to segment your audience based on the referring site. For example, you could show one widget to search traffic (from google) and another widget for social traffic (from facebook)',
     5166                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/segment_by_source_addon.jpg',
     5167                url: 'https://www.yeloni.com/product/show-hide-popup-based-referrer/',
     5168                wcId: '1634',
     5169                enabled: false
    50665170            };
    50675171        }
    50685172
    5069         this.premiumSubscription = function(widget, feature) {
     5173        this.premiumSubscription = function (widget, feature) {
    50705174            feature.priority = 9;
    50715175            return {
     
    50745178                ideal: "All the above for 10$/month",
    50755179                icon: "glyphicon glyphicon-usd",
    5076                 upgrade: 'Get all the above Addons for 8$ a month (Most Popular)',
    5077                 description: 'In this plan you get all the above 8 addons at the same price of 2 addons. Its not a surprise that most of our users prefer this plan :)'
     5180                upgrade: 'All Features Listed Below',
     5181                description: 'In this plan you get all the above 8 addons at the same price of 2 addons. Its not a surprise that most of our users prefer this plan :)',
     5182                image: 'https://www.yeloni.com/wp-content/uploads/2019/01/all_features.jpg',
     5183                url: 'https://www.yeloni.com/product/all-in-one-subscription/',
     5184                wcId: '1626',
     5185                enabled: true
    50785186            };
    50795187        }
    50805188
    50815189    }])
    5082 
    50835190angular.module('yetienceApp')
    50845191    .constant('configurationFields', {
  • yeloni-free-exit-popup/trunk/admin-interface/src/platform_index.html

    r2007742 r2026316  
    99    <div id="yetience-content" style="display:none">
    1010
    11         <div class="yel-newuser-menubar" ng-hide="onStartPage()" id="yel-newuser-menubar">
     11        <!-- <div class="yel-newuser-menubar" ng-hide="onStartPage()" id="yel-newuser-menubar" style="display:none">
    1212            <div class="menubar-title"><a href="#" id="yel-menubar-title">{{R.Y.title}} </a></div>
    13             <!--<div class="menubar-title" ng-hide="premiumText"><a href="#">{{R.Y.title}}</a></div>
    14             <div class="menubar-title" ng-hide="premiumText"><a href="#">{{R.Y.title}} ({{R.packages[S.package_id].name}})</a></div>-->
    1513
    1614            <div class="menubar-right-contents">
    17                 <!-- <div style="margin-right:100px" id="yel-basic-support">
    18                     Got a Question?
    19                 </div> -->
    20                 <!-- <div style="margin-right:100px" id="yel-basic-support">
    21                     Got a Question? &nbsp
    22                     <a href="https://wordpress.org/support/plugin/yeloni-free-exit-popup" target="_blank" class="btn btn-primary btn-sm">
    23                       Write to our Support Team <i class="glyphicon glyphicon-headphones"></i>
    24                     </a>
    25                 </div> -->
     15
    2616                <div style="margin-right:100px;display:none" id="yel-premium-support">
    2717                    Got a question? Write to us on [email protected]
     
    3525            </div>
    3626            <div style="clear:both"></div>
    37         </div>
     27        </div> -->
    3828
    3929        <!--time bound offer yellow bar-->
  • yeloni-free-exit-popup/trunk/yetience-plugin.php

    r2018133 r2026316  
    44Plugin URI: #
    55Description: Exit Popups are the best way to engage visitors leaving your website. Show offers, social buttons, email signup forms or customize it as you like.
    6 Version: 8.1.9
     6Version: 9.0.0
    77Author: Jayasri Nagrale
    88Author URI: http://www.yeloni.com
Note: See TracChangeset for help on using the changeset viewer.