Finale WooCommerce Sales Countdown Timer & Discount Plugin

Finale WooCommerce Sales Countdown Timer & Discount Plugin v2.21

No permission to download

wmswina

Member
Mar 12, 2019
89
75
18
localhost
wmswina submitted a new resource:

Finale - WooCommerce Sales Countdown Timer & Discount Plugin - Download Finale - WooCommerce Sales Countdown Timer & Discount Plugin (untouched)

Use Finale To Create Urgency-Led Campaigns That
Make Shoppers Punch In Their Card Details Right Away


Meet the superpowers your WooCommerce store will get.

Run Sales Between Two Fixed Times For A Spike In Revenue
Set up seasonal or festive offers on your store. Select start, end date and time with the discount amount.
Start your campaigns right away or schedule them for a later date. No need to visit individual product pages to turn on the...

Read more about this resource...
 

furqanafzal

New member
Nov 7, 2019
15
3
3
There is a solution, open lite version and deactivate the pro version. After opening the lite version, open plugins page in another window and activate the pro version and then refresh the page where lite version is opened and then you will see all the settings to setup.
It asks for license activation stuck at setup wizard.
 

MyTester

Active member
Jul 18, 2019
169
57
28
@Tomz or @wmswina Plugin asks for activation code

It takes nulled plugin, can anyone do?

An update to version 2.17.0 has also been released.

Someone to help?
 

rio512hsu

New member
Dec 26, 2018
11
5
3
nulled by modifying 'WCCT_EDD_License_Handler.php'
PHP:
<?php

/**
* License handler for Easy Digital Downloads
*
* This class should simplify the process of adding license information
* to new EDD extensions.
*
* @version 1.1
*/
if ( ! defined( 'ABSPATH' ) ) {
    exit;
} // Exit if accessed directly

if ( ! class_exists( 'WCCT_EDD_License' ) ) :

    /**
     * EDD_License Class
     */
    class WCCT_EDD_License {

        protected static $instance = null;
        private $file;
        private $license;
        private $item_name;
        private $item_shortname;
        private $version;
        private $author;
        private $api_url = 'https://xlplugins.com/';

        /**
         * Class constructor
         *
         * @global  array $edd_options
         *
         * @param string $_file
         * @param string $_item_name
         * @param string $_version
         * @param string $_author
         * @param string $_optname
         * @param string $_api_url
         */
        function __construct( $_file, $_item_name, $_version, $_author, $_optname = null, $_api_url = null ) {

            $this->file           = $_file;
            $this->item_name      = $_item_name;
            $this->item_shortname = '' . preg_replace( '/[^a-zA-Z0-9_\s]/', '', str_replace( ' ', '_', strtolower( $this->item_name ) ) );
            $this->version        = $_version;

            $this->license = get_option( 'xl_licenses_' . $this->item_shortname ) == false ? '' : get_option( 'xl_licenses_' . $this->item_shortname );
            $this->author  = $_author;
            $this->api_url = is_null( $_api_url ) ? $this->api_url : $_api_url;

            // Setup hooks
            $this->includes();

            $this->auto_updater();
        }

        /**
         * Include the updater class
         *
         * @access  private
         * @return  void
         */
        private function includes() {
            if ( ! class_exists( 'WCCT_EDD_SL_Plugin_Updater' ) ) {
                require_once 'WCCT_EDD_SL_Plugin_Updater.php';
            }
        }


        /**
         * Auto updater
         *
         * @access  private
         * @global  array $edd_options
         * @return  void
         */
        private function auto_updater() {

            // Setup the updater
            $edd_updater = new WCCT_EDD_SL_Plugin_Updater( $this->api_url, $this->file, array(
                'version'   => $this->version,
                'license'   => $this->license,
                'item_name' => $this->item_name,
                'author'    => $this->author,
            ) );
        }


        /**
         * Activate the license key
         *
         * @access  public
         * @return  void
         */
        public function activate_license( $license ) {

            if ( ! $license ) {
                return;
            }

            if ( 'valid' == get_option( $this->item_shortname . '_license_active' ) ) {
                return;
            }

            // Data to send to the API
            $api_params = array(
                'edd_action' => 'activate_license',
                'license'    => 'valid',
                'item_name'  => urlencode( $this->item_name ),
                'purchase'   => WCCT_PURCHASE,
            );

            // Decode license data
            $license_data = $api_params;

            update_option( $this->item_shortname . 'license_data', $license_data, true );
            update_option( $this->item_shortname . '_license_active', $license_data->license, true );

            if ( class_exists( 'XL_admin_notifications' ) && $license_data->license == 'valid' ) {
                do_action( 'xl_license_activated', WCCT_PLUGIN_BASENAME );
                XL_admin_notifications::add_notification( array(
                    'plugin_license_notif' . $this->item_shortname => array(
                        'type'           => 'success',
                        'is_dismissable' => true,
                        'content'        => sprintf( __( '<p> Plugin <strong>%s</strong> successfully activated. </p>', 'my-text-domain' ), $this->item_name ),
                    ),
                ) );
            }
        }

        /**
         * Deactivate the license key
         *
         * @access  public
         * @return  void
         */
        public function deactivate_license() {

            // Data to send to the API
            $api_params = array(
                'edd_action' => 'deactivate_license',
                'license'    => $this->license,
                'item_name'  => urlencode( $this->item_name ),
                'purchase'   => WCCT_PURCHASE,
            );

            // Call the API
            $response = wp_remote_get( esc_url_raw( add_query_arg( $api_params, $this->api_url ) ), array(
                'timeout'   => 15,
                'sslverify' => false,
            ) );

            // Make sure there are no errors
            if ( is_wp_error( $response ) ) {
                return;
            }

            // Decode the license data

            $license_data = json_decode( wp_remote_retrieve_body( $response ) );

            if ( $license_data->license == 'deactivated' ) {
                delete_option( $this->item_shortname . '_license_active' );
                delete_option( $this->item_shortname . 'license_data' );
                delete_option( 'xl_licenses_' . $this->item_shortname );
            }

            return ( $license_data->license == 'deactivated' ) ? true : false;
        }

        /**
         * Check if license key is valid once per week
         *
         * @access  public
         * @since   2.5
         * @return  void
         */
        public function weekly_license_check() {

            if ( ! empty( $_POST['edd_settings'] ) ) {
                return; // Don't fire when saving settings
            }

            $is_transient = get_transient( 'xl_last_license_check_for_' . $this->item_shortname );

            if ( ! empty( $is_transient ) ) {
                return;
            }

            if ( empty( $this->license ) ) {
                return;
            }

            // data to send in our API request
            $api_params = array(
                'edd_action' => 'check_license',
                'license'    => 'valid',
                'item_name'  => urlencode( $this->item_name ),
                'url'        => home_url(),
                'purchase'   => WCCT_PURCHASE,
            );

            $license_data = $api_params;

            update_option( $this->item_shortname . 'license_data', $license_data, true );
            update_option( $this->item_shortname . '_license_active', $license_data->license, true );

            set_transient( 'xl_last_license_check_for_' . $this->item_shortname, 'yes', 60 * 60 );
        }

    }


endif; // end class_exists check
 
Last edited:
  • Like
Reactions: AnormaL

MyTester

Active member
Jul 18, 2019
169
57
28
nulled by modifying 'WCCT_EDD_License_Handler.php'
PHP:
<?php

/**
* License handler for Easy Digital Downloads
*
* This class should simplify the process of adding license information
* to new EDD extensions.
*
* @version 1.1
*/
if ( ! defined( 'ABSPATH' ) ) {
    exit;
} // Exit if accessed directly

if ( ! class_exists( 'WCCT_EDD_License' ) ) :

    /**
     * EDD_License Class
     */
    class WCCT_EDD_License {

        protected static $instance = null;
        private $file;
        private $license;
        private $item_name;
        private $item_shortname;
        private $version;
        private $author;
        private $api_url = 'https://xlplugins.com/';

        /**
         * Class constructor
         *
         * @global  array $edd_options
         *
         * @param string $_file
         * @param string $_item_name
         * @param string $_version
         * @param string $_author
         * @param string $_optname
         * @param string $_api_url
         */
        function __construct( $_file, $_item_name, $_version, $_author, $_optname = null, $_api_url = null ) {

            $this->file           = $_file;
            $this->item_name      = $_item_name;
            $this->item_shortname = '' . preg_replace( '/[^a-zA-Z0-9_\s]/', '', str_replace( ' ', '_', strtolower( $this->item_name ) ) );
            $this->version        = $_version;

            $this->license = get_option( 'xl_licenses_' . $this->item_shortname ) == false ? '' : get_option( 'xl_licenses_' . $this->item_shortname );
            $this->author  = $_author;
            $this->api_url = is_null( $_api_url ) ? $this->api_url : $_api_url;

            // Setup hooks
            $this->includes();

            $this->auto_updater();
        }

        /**
         * Include the updater class
         *
         * @access  private
         * @return  void
         */
        private function includes() {
            if ( ! class_exists( 'WCCT_EDD_SL_Plugin_Updater' ) ) {
                require_once 'WCCT_EDD_SL_Plugin_Updater.php';
            }
        }


        /**
         * Auto updater
         *
         * @access  private
         * @global  array $edd_options
         * @return  void
         */
        private function auto_updater() {

            // Setup the updater
            $edd_updater = new WCCT_EDD_SL_Plugin_Updater( $this->api_url, $this->file, array(
                'version'   => $this->version,
                'license'   => $this->license,
                'item_name' => $this->item_name,
                'author'    => $this->author,
            ) );
        }


        /**
         * Activate the license key
         *
         * @access  public
         * @return  void
         */
        public function activate_license( $license ) {

            if ( ! $license ) {
                return;
            }

            if ( 'valid' == get_option( $this->item_shortname . '_license_active' ) ) {
                return;
            }

            // Data to send to the API
            $api_params = array(
                'edd_action' => 'activate_license',
                'license'    => 'valid',
                'item_name'  => urlencode( $this->item_name ),
                'purchase'   => WCCT_PURCHASE,
            );

            // Decode license data
            $license_data = $api_params;

            update_option( $this->item_shortname . 'license_data', $license_data, true );
            update_option( $this->item_shortname . '_license_active', $license_data->license, true );

            if ( class_exists( 'XL_admin_notifications' ) && $license_data->license == 'valid' ) {
                do_action( 'xl_license_activated', WCCT_PLUGIN_BASENAME );
                XL_admin_notifications::add_notification( array(
                    'plugin_license_notif' . $this->item_shortname => array(
                        'type'           => 'success',
                        'is_dismissable' => true,
                        'content'        => sprintf( __( '<p> Plugin <strong>%s</strong> successfully activated. </p>', 'my-text-domain' ), $this->item_name ),
                    ),
                ) );
            }
        }

        /**
         * Deactivate the license key
         *
         * @access  public
         * @return  void
         */
        public function deactivate_license() {

            // Data to send to the API
            $api_params = array(
                'edd_action' => 'deactivate_license',
                'license'    => $this->license,
                'item_name'  => urlencode( $this->item_name ),
                'purchase'   => WCCT_PURCHASE,
            );

            // Call the API
            $response = wp_remote_get( esc_url_raw( add_query_arg( $api_params, $this->api_url ) ), array(
                'timeout'   => 15,
                'sslverify' => false,
            ) );

            // Make sure there are no errors
            if ( is_wp_error( $response ) ) {
                return;
            }

            // Decode the license data

            $license_data = json_decode( wp_remote_retrieve_body( $response ) );

            if ( $license_data->license == 'deactivated' ) {
                delete_option( $this->item_shortname . '_license_active' );
                delete_option( $this->item_shortname . 'license_data' );
                delete_option( 'xl_licenses_' . $this->item_shortname );
            }

            return ( $license_data->license == 'deactivated' ) ? true : false;
        }

        /**
         * Check if license key is valid once per week
         *
         * @access  public
         * @since   2.5
         * @return  void
         */
        public function weekly_license_check() {

            if ( ! empty( $_POST['edd_settings'] ) ) {
                return; // Don't fire when saving settings
            }

            $is_transient = get_transient( 'xl_last_license_check_for_' . $this->item_shortname );

            if ( ! empty( $is_transient ) ) {
                return;
            }

            if ( empty( $this->license ) ) {
                return;
            }

            // data to send in our API request
            $api_params = array(
                'edd_action' => 'check_license',
                'license'    => 'valid',
                'item_name'  => urlencode( $this->item_name ),
                'url'        => home_url(),
                'purchase'   => WCCT_PURCHASE,
            );

            $license_data = json_decode( wp_remote_retrieve_body( $response ) );

            update_option( $this->item_shortname . 'license_data', $license_data, true );
            update_option( $this->item_shortname . '_license_active', $license_data->license, true );

            set_transient( 'xl_last_license_check_for_' . $this->item_shortname, 'yes', 60 * 60 );
        }

    }


endif; // end class_exists check

I modified the Plugin PRO code, installed it myself and activated it.

But keep asking for a License key to Release the use of the Plugin.

What can I have done wrong or missing?

And thank you so much for trying to help!
 

MyTester

Active member
Jul 18, 2019
169
57
28
I can't use it either.

Because you need activation code or nulled version.

An update to version 2.17.0 has also been released.
 

wmswina

Member
Mar 12, 2019
89
75
18
localhost
wmswina updated Finale WooCommerce Sales Countdown Timer & Discount Plugin with a new update entry:

Finale WooCommerce Sales Countdown Timer & Discount Plugin 2.17.0

January 13, 2020 - Version 2.17.0
  • Added: AeroCheckout page rule is added to show sticky header and footer element on the checkout page.
  • Added: Compatibility added with plugin 'WP WebinarSystem Pro', added support of product type 'webinar'.
  • Fixed: The campaign wasn't indexing for Finale deal pages addon when 'user is guest' rule is set. Fixed.
  • Fixed: Compatibility issues with 'Breeze' plugin, caching not allowing countdown timer to change, fixed.

Read the rest of this update entry...
 
  • Like
Reactions: amit338

rio512hsu

New member
Dec 26, 2018
11
5
3
I modified the Plugin PRO code, installed it myself and activated it.

But keep asking for a License key to Release the use of the Plugin.

What can I have done wrong or missing?

And thank you so much for trying to help!
I've update the code which exact what I am using.
Please try again
If it didn't work out, I could not help though
 

About us

  • Our community has been around for many years and pride ourselves on offering unbiased, critical discussion among people of all different backgrounds. We are working every day to make sure our community is one of the best.

Quick Navigation

User Menu