Plugin Directory


Ignore:
Location:
directorist
Files:
907 added
5 edited

Legend:

Unmodified
Added
Removed
  • directorist/trunk/config.php

    r2731298 r2752034  
    11<?php
    22// Plugin version.
    3 if ( ! defined( 'ATBDP_VERSION' ) ) {define( 'ATBDP_VERSION', '7.2.2' );}
     3if ( ! defined( 'ATBDP_VERSION' ) ) {define( 'ATBDP_VERSION', '7.2.3' );}
    44// Plugin Folder Path.
    55if ( ! defined( 'ATBDP_DIR' ) ) { define( 'ATBDP_DIR', plugin_dir_path( __FILE__ ) ); }
    66// Plugin Folder URL.
    77if ( ! defined( 'ATBDP_URL' ) ) { define( 'ATBDP_URL', plugin_dir_url( __FILE__ ) ); }
    88// Plugin Root File.
    99if ( ! defined( 'ATBDP_FILE' ) ) { define( 'ATBDP_FILE', __FILE__ ); }
    1010if ( ! defined( 'ATBDP_BASE' ) ) { define( 'ATBDP_BASE', plugin_basename( __FILE__ ) ); }
    1111// Plugin Text domain File.
    1212if ( ! defined( 'ATBDP_TEXTDOMAIN' ) ) { define( 'ATBDP_TEXTDOMAIN' , 'directorist' ); }
    1313// Plugin Includes Path
    1414if ( !defined('ATBDP_INC_DIR') ) { define('ATBDP_INC_DIR', ATBDP_DIR.'includes/'); }
    1515// Plugin Class Path
    1616if ( !defined('ATBDP_CLASS_DIR') ) { define('ATBDP_CLASS_DIR', ATBDP_DIR.'includes/classes/'); }
    1717// Plugin Model Path
    1818if ( !defined('ATBDP_MODEL_DIR') ) { define('ATBDP_MODEL_DIR', ATBDP_DIR.'includes/model/'); }
    1919
    2020// Plugin Template Path
    2121if ( !defined('ATBDP_VIEWS_DIR') ) { define('ATBDP_VIEWS_DIR', ATBDP_DIR.'views/'); }
    2222
    2323if ( ! defined( 'DIRECTORIST_LOAD_MIN_FILES' ) ) { define( 'DIRECTORIST_LOAD_MIN_FILES', true ); }
    2424if ( ! defined( 'DIRECTORIST_SCRIPT_VERSION' ) ) { define( 'DIRECTORIST_SCRIPT_VERSION', ATBDP_VERSION ); }
    2525if ( ! defined( 'DIRECTORIST_DISABLE_SHORTCODE_RESTRICTION_ON_SCRIPTS' ) ) { define( 'DIRECTORIST_DISABLE_SHORTCODE_RESTRICTION_ON_SCRIPTS', false ); }
    2626if ( ! defined( 'DIRECTORIST_DEBUG_SHORTCODE_SCRIPTS' ) ) { define( 'DIRECTORIST_DEBUG_SHORTCODE_SCRIPTS', false ); }
    2727if ( ! defined( 'DIRECTORIST_DEBUG_SHORTCODE_SCRIPTS_SHOW_ALL' ) ) { define( 'DIRECTORIST_DEBUG_SHORTCODE_SCRIPTS_SHOW_ALL', false ); }
    2828
    2929// Public Assets Path
    3030if ( ! defined( 'DIRECTORIST_ASSETS' ) ) { define('DIRECTORIST_ASSETS', ATBDP_URL . 'assets/'); }
    3131if ( ! defined( 'ATBDP_PUBLIC_ASSETS') ) { define('ATBDP_PUBLIC_ASSETS', DIRECTORIST_ASSETS ); }
    3232if ( ! defined( 'DIRECTORIST_CSS' ) ) { define('DIRECTORIST_CSS', DIRECTORIST_ASSETS . 'css/'); }
    3333if ( ! defined( 'DIRECTORIST_JS' ) ) { define('DIRECTORIST_JS', DIRECTORIST_ASSETS . 'js/'); }
    3434
    3535// Vendor Assets Path
    3636if ( ! defined( 'DIRECTORIST_VENDOR_CSS' ) ) { define('DIRECTORIST_VENDOR_CSS', DIRECTORIST_ASSETS . 'vendor-css/'); }
    3737if ( ! defined( 'DIRECTORIST_VENDOR_JS' ) ) { define('DIRECTORIST_VENDOR_JS', DIRECTORIST_ASSETS . 'vendor-js/'); }
    3838
    3939// Plugin Admin Assets Path
    4040if ( !defined('ATBDP_ADMIN_ASSETS') ) { define('ATBDP_ADMIN_ASSETS', ATBDP_URL.'admin/assets/'); }
    4141// Plugin Language File Path
    4242if ( !defined('ATBDP_LANG_DIR') ) { define('ATBDP_LANG_DIR', dirname(plugin_basename( __FILE__ ) ) . '/languages'); }
    4343// Plugin Name
    4444if ( !defined('ATBDP_NAME') ) { define('ATBDP_NAME', 'Directorist'); }
    4545// Plugin Post Type
    4646
    4747if ( !defined('ATBDP_POST_TYPE') ) { define('ATBDP_POST_TYPE', 'at_biz_dir'); }
    4848if ( !defined('ATBDP_ORDER_POST_TYPE') ) { define('ATBDP_ORDER_POST_TYPE', 'atbdp_orders'); }
    4949if ( !defined('ATBDP_CUSTOM_FIELD_POST_TYPE') ) { define('ATBDP_CUSTOM_FIELD_POST_TYPE', 'atbdp_fields'); }
    5050// Plugin Category Taxonomy
    5151if ( !defined('ATBDP_CATEGORY') ) { define('ATBDP_CATEGORY', ATBDP_POST_TYPE.'-category'); }
    5252// Plugin Location Taxonomy
    5353if ( !defined('ATBDP_LOCATION') ) { define('ATBDP_LOCATION', ATBDP_POST_TYPE.'-location'); }
    5454// Plugin Tag Taxonomy
    5555if ( !defined('ATBDP_TAGS') ) { define('ATBDP_TAGS', ATBDP_POST_TYPE.'-tags'); }
    5656// Plugin Type Taxonomy
    5757if ( ! defined( 'ATBDP_DIRECTORY_TYPE' ) ) { define( 'ATBDP_DIRECTORY_TYPE', 'atbdp_listing_types' ); }
    5858if ( ! defined('ATBDP_TYPE') ) { define('ATBDP_TYPE', ATBDP_DIRECTORY_TYPE); }
    5959
    6060// Plugin Alert Message
    6161if ( !defined('ATBDP_ALERT_MSG') ) { define('ATBDP_ALERT_MSG', __('You do not have the right to access this file directly', 'directorist')); }
    6262
    6363
    6464// Plugin Veiw Path
    6565if ( !defined('ATBDP_VIEW_DIR') ) { define('ATBDP_VIEW_DIR', ATBDP_DIR.'includes/view/'); }
    6666
    6767define( 'DIRECTORIST_VENDOR', DIRECTORIST_ASSETS . 'vendor/' );
  • directorist/trunk/directorist-base.php

    r2731298 r2752034  
    11<?php
    22/**
    33 * Plugin Name: Directorist - Business Directory Plugin
    44 * Plugin URI: https://wpwax.com
    55 * Description: A comprehensive solution to create professional looking directory site of any kind. Like Yelp, Foursquare, etc.
    6  * Version: 7.2.2
     6 * Version: 7.2.3
    77 * Author: wpWax
    88 * Author URI: https://wpwax.com
    99 * Text Domain: directorist
    1010 * Domain Path: /languages
    1111 */
    1212
    1313// prevent direct access to the file
    1414defined('ABSPATH') || die('No direct script access allowed!');
    1515
    1616/**
    1717 * Main Directorist_Base Class.
    1818 *
    1919 * @since 1.0
    2020 */
    2121final class Directorist_Base
    2222{
    2323    /** Singleton *************************************************************/
    2424
    2525    /**
    2626     * @var Directorist_Base The one true Directorist_Base
    2727     * @since 1.0
    2828     */
    2929    private static $instance;
    3030
    3131    /**
    3232     * ATBDP_Metabox Object.
    3333     *
    3434     * @var object|ATBDP_Metabox
    3535     * @since 1.0
    3636     */
    3737    public $metabox;
    3838
    3939    /**
    4040     * ATBDP_Custom_Post Object.
    4141     *
    4242     * @var object|ATBDP_Custom_Post
    4343     * @since 1.0
    4444     */
    4545    public $custom_post;
    4646
    4747    /**
    4848     * ATBDP_Custom_Taxonomy Object.
    4949     *
    5050     * @var object|ATBDP_Custom_Taxonomy
    5151     * @since 1.0
    5252     */
    5353    public $taxonomy;
    5454
    5555    /**
    5656     * Enqueue_Assets Object.
    5757     *
    5858     * @var object|Enqueue_Assets
    5959     * @since 7.0
    6060     */
    6161    public $enqueue_assets;
    6262
    6363    /**
    6464     * ATBDP_Ajax_Handler Object.
    6565     *
    6666     * @var object|ATBDP_Ajax_Handler
    6767     * @since 1.0
    6868     */
    6969    public $ajax_handler;
    7070
    7171    /**
    7272     * ATBDP_Shortcode Object.
    7373     *
    7474     * @var object|ATBDP_Shortcode
    7575     * @since 1.0
    7676     */
    7777    public $shortcode;
    7878
    7979    /**
    8080     * ATBDP_Helper Object.
    8181     *
    8282     * @var object|ATBDP_Helper
    8383     * @since 1.0
    8484     */
    8585    public $helper;
    8686
    8787    /**
    8888     * ATBDP_Listing Object.
    8989     *
    9090     * @var object|ATBDP_Listing
    9191     * @since 1.0
    9292     */
    9393    public $listing;
    9494
    9595    /**
    9696     * ATBDP_User Object.
    9797     *
    9898     * @var object|ATBDP_User
    9999     * @since 1.0
    100100     */
    101101    public $user;
    102102
    103103    /**
    104104     * ATBDP_Roles Object.
    105105     *
    106106     * @var object|ATBDP_Roles
    107107     * @since 3.0
    108108     */
    109109    public $roles;
    110110
    111111    /**
    112112     * ATBDP_Gateway Object.
    113113     *
    114114     * @var ATBDP_Gateway
    115115     * @since 3.1.0
    116116     */
    117117    public $gateway;
    118118
    119119    /**
    120120     * ATBDP_Order Object.
    121121     *
    122122     * @var ATBDP_Order
    123123     * @since 3.1.0
    124124     */
    125125    public $custom_field;
    126126
    127127    /**
    128128     * ATBDP_Custom_Field Object.
    129129     *
    130130     * @var ATBDP_Custom_Field
    131131     * @since 3.1.6
    132132     */
    133133    public $order;
    134134
    135135    /**
    136136     * ATBDP_Email Object.
    137137     *
    138138     * @var ATBDP_Email
    139139     * @since 3.1.0
    140140     */
    141141    public $email;
    142142
    143143    /**
    144144     * ATBDP_SEO Object.
    145145     *
    146146     * @var ATBDP_SEO
    147147     * @since 4.7.0
    148148     */
    149149    public $seo;
    150150
    151151    /**
    152152     * ATBDP_Tools Object.
    153153     *
    154154     * @var ATBDP_Tools
    155155     * @since 4.7.2
    156156     */
    157157    public $tools;
    158158
    159159    /**
    160160     * ATBDP_Single_Templates Object.
    161161     *
    162162     * @var ATBDP_Single_Templates
    163163     * @since 5.0.5
    164164     */
    165165    public $ATBDP_Single_Templates;
    166166
    167167    /**
    168168     * Main Directorist_Base Instance.
    169169     *
    170170     * Insures that only one instance of Directorist_Base exists in memory at any one
    171171     * time. Also prevents needing to define globals all over the place.
    172172     *
    173173     * @since 1.0
    174174     * @static
    175175     * @static_var array $instance
    176176     * @uses Directorist_Base::setup_constants() Setup the constants needed.
    177177     * @uses Directorist_Base::includes() Include the required files.
    178178     * @uses Directorist_Base::load_textdomain() load the language files.
    179179     * @see  ATBDP()
    180180     * @return object|Directorist_Base The one true Directorist_Base
    181181     */
    182182    public static function instance()
    183183    {
    184184        if (!isset(self::$instance) && !(self::$instance instanceof Directorist_Base)) {
    185185            self::$instance = new Directorist_Base;
    186186            self::$instance->setup_constants();
    187187
    188188            add_action('plugins_loaded', array(self::$instance, 'load_textdomain'));
    189189            add_action('plugins_loaded', array(self::$instance, 'add_polylang_swicher_support') );
    190190            add_action('widgets_init', array(self::$instance, 'register_widgets'));
    191191
    192192            add_action( 'template_redirect', [ self::$instance, 'check_single_listing_page_restrictions' ] );
    193193            add_action( 'atbdp_show_flush_messages', [ self::$instance, 'show_flush_messages' ] );
    194194
    195195            self::$instance->includes();
    196196
    197197            self::$instance->custom_post = new ATBDP_Custom_Post; // create custom post
    198198            self::$instance->taxonomy = new ATBDP_Custom_Taxonomy;
    199199
    200200            add_action('init', array( self::$instance, 'on_install_update_actions' ) );
    201201
    202202            self::$instance->enqueue_assets = new Directorist\Enqueue_Assets;
    203203
    204204            // ATBDP_Listing_Type_Manager
    205205            self::$instance->multi_directory_manager = new Directorist\Multi_Directory_Manager;
    206206            self::$instance->multi_directory_manager->run();
    207207
    208208            self::$instance->settings_panel = new ATBDP_Settings_Panel;
    209209            self::$instance->settings_panel->run();
    210210
    211211            self::$instance->hooks = new ATBDP_Hooks;
    212212            self::$instance->metabox = new ATBDP_Metabox;
    213213            self::$instance->ajax_handler = new ATBDP_Ajax_Handler;
    214214            self::$instance->helper = new ATBDP_Helper;
    215215            self::$instance->listing = new ATBDP_Listing;
    216216            self::$instance->user = new ATBDP_User;
    217217            self::$instance->roles = new ATBDP_Roles;
    218218            if( class_exists( 'ATBDP_Gateway' ) ) {
    219219                self::$instance->gateway = new ATBDP_Gateway;
    220220            }
    221221            self::$instance->order = new ATBDP_Order;
    222222            self::$instance->shortcode = new \Directorist\ATBDP_Shortcode;
    223223            self::$instance->email = new ATBDP_Email;
    224224            self::$instance->seo = new ATBDP_SEO;
    225225            // self::$instance->validator = new ATBDP_Validator;
    226226            // self::$instance->ATBDP_Single_Templates = new ATBDP_Single_Templates;
    227227            self::$instance->tools = new ATBDP_Tools;
    228228            self::$instance->announcement = new ATBDP_Announcement;
    229229
    230230            /*Extensions Link*/
    231231            /*initiate extensions link*/
    232232
    233233            if( is_admin() ){
    234234                new ATBDP_Extensions();
    235235            }
    236236
    237237            /**
    238238             * Deprected review rating class.
    239239             * Will be removed in future.
    240240             */
    241241            include_once ATBDP_INC_DIR . 'review/class-bc-review-rating.php';
    242242            self::$instance->review = new ATBDP_Review_Rating();
    243243
    244244            //activate rewrite api
    245245            new ATBDP_Rewrite;
    246246            //map custom capabilities
    247247            add_filter('map_meta_cap', array(self::$instance->roles, 'meta_caps'), 10, 4);
    248248            //add dtbdp custom body class
    249249            add_filter('body_class', array(self::$instance, 'atbdp_body_class'), 99);
    250250
    251251            // Attempt to create listing related custom pages with plugin's custom shortcode to give user best experience.
    252252            // we can check the database if our custom pages have been installed correctly or not here first.
    253253            // This way we can minimize the adding of our custom function to the WordPress hooks.
    254254
    255255            if (get_option('atbdp_pages_version') < 1) {
    256256                add_action('wp_loaded', array(self::$instance, 'add_custom_directorist_pages'));
    257257            }
    258258            //fire up one time compatibility increasing function.
    259259            if (get_option('atbdp_meta_version') < 1) {
    260260                add_action('init', array(self::$instance, 'add_custom_meta_keys_for_old_listings'));
    261261            }
    262262
    263263
    264264            // init offline gateway
    265265            new ATBDP_Offline_Gateway;
    266266            // Init Cron jobs to run some periodic tasks
    267267            new ATBDP_Cron;
    268268            // add upgrade feature
    269269            new ATBDP_Upgrade;
    270270            // add uninstall menu
    271271            add_filter('atbdp_settings_menus', array(self::$instance, 'add_uninstall_menu'));
    272272
    273273            self::init_hooks();
    274274
    275275            // Initialize appsero tracking
    276276            self::$instance->init_appsero();
    277277
    278278            /**
    279279             * Fire loaded action hook once everything is loaded.
    280280             *
    281281             * Call anything safely once Directorist is fully loaded with all functionalites.
    282282             * For example, all the Directorist extensions can use this hook to load safely.
    283283             * Usage:
    284284             * add_action( 'directorist_loaded', static function( $instance ) {
    285285             *     $instance->{any prop or method}
    286286             * } );
    287287             *
    288288             * @since 7.2.0
    289289             *
    290290             * @param object Instance of Directorist_Base
    291291             */
    292292            do_action( 'directorist_loaded', self::$instance );
    293293        }
    294294
    295295        return self::$instance;
    296296    }
    297297
    298298    // on_install_update_actions
    299299    public function on_install_update_actions() {
    300300        $install_event_key = get_directorist_option( 'directorist_installed_event_key', '', true );
    301301
    302302        // Execute directorist_installed hook if plugin gets installed first time
    303303        if ( empty( $install_event_key ) ) {
    304304            update_directorist_option( 'directorist_installed_event_key', ATBDP_VERSION );
    305305            update_directorist_option( 'directorist_updated_event_key', ATBDP_VERSION );
    306306
    307307            do_action( 'directorist_installed' );
    308308            return;
    309309        }
    310310
    311311        // Prevent executing directorist_updated hook if plugin is not updated
    312312        $update_event_key = get_directorist_option( 'directorist_updated_event_key', '', true );
    313313        if ( $update_event_key === ATBDP_VERSION ) {
    314314            return;
    315315        }
    316316
    317317        // Execute directorist_updated hook if plugin gets updated
    318318        do_action( 'directorist_updated' );
    319319        update_directorist_option( 'directorist_updated_event_key', ATBDP_VERSION );
    320320    }
    321321
    322322    // show_flush_messages
    323323    public function show_flush_messages() {
    324324        atbdp_get_flush_messages();
    325325    }
    326326
    327327    // check_single_listing_page_restrictions
    328328    public function check_single_listing_page_restrictions() {
    329329        $restricted_for_logged_in_user = get_directorist_option( 'restrict_single_listing_for_logged_in_user', false );
    330330        $current_user_id = get_current_user_id();
    331331
    332332        if ( is_singular( ATBDP_POST_TYPE ) && ! empty( $restricted_for_logged_in_user ) && empty( $current_user_id ) ) {
    333333
    334334            atbdp_auth_guard();
    335335            die;
    336336        }
    337337    }
    338338
    339339    // add_polylang_swicher_support
    340340    public function add_polylang_swicher_support() {
    341341        add_filter('pll_the_language_link', function($url, $current_lang) {
    342342            // Adjust the category link
    343343            $category_url = $this->get_polylang_swicher_link_for_term([
    344344                'term_type'            => 'category',
    345345                'term_default_page_id' => get_directorist_option('single_category_page'),
    346346                'term_query_var'       => ( ! empty( $_GET['category'] ) ) ? $_GET['category'] : get_query_var('atbdp_category'),
    347347                'current_lang'         => $current_lang,
    348348                'url'                  => $url,
    349349            ]);
    350350
    351351            if ( ! empty( $category_url ) ) { return $category_url; }
    352352
    353353            // Adjust the location link
    354354            $location_url = $this->get_polylang_swicher_link_for_term([
    355355                'term_type'            => 'location',
    356356                'term_default_page_id' => get_directorist_option('single_location_page'),
    357357                'term_query_var'       => ( ! empty( $_GET['location'] ) ) ? $_GET['location'] : get_query_var('atbdp_location'),
    358358                'current_lang'         => $current_lang,
    359359                'url'                  => $url,
    360360            ]);
    361361
    362362            if ( ! empty( $location_url ) ) { return $location_url; }
    363363
    364364            return $url;
    365365        }, 10, 2);
    366366    }
    367367
    368368    // get_polylang_swicher_link_for_term
    369369    public function get_polylang_swicher_link_for_term( $args ) {
    370370        $default = [
    371371            'term_type'            => '',
    372372            'term_query_var'       => '',
    373373            'term_default_page_id' => '',
    374374            'current_lang'         => '',
    375375            'url'                  => '',
    376376        ];
    377377
    378378        $args = array_merge( $default, $args );
    379379
    380380        if ( empty( $args[ 'term_query_var' ] ) ) { return false; }
    381381
    382382        // Get language slug of the default page
    383383        $page_lang = pll_get_post_language( $args[ 'term_default_page_id' ] );
    384384
    385385        // If current lang slug != default page
    386386        // modyfy the url
    387387        if ( $args[ 'current_lang' ] !== $page_lang ) {
    388388            return $args['url'] ."?". $args['term_type'] ."=". $args['term_query_var'];
    389389        }
    390390
    391391        if ( $args[ 'current_lang' ] === $page_lang  ) {
    392392            return $args['url'] . $args['term_query_var'];
    393393        }
    394394
    395395        return false;
    396396    }
    397397
    398398    /**
    399399     * Init Hooks
    400400     *
    401401     * @access private
    402402     * @since 6.4.5
    403403     * @return void
    404404     */
    405405    public static function init_hooks()
    406406    {
    407407        ATBDP_Cache_Helper::reset_cache();
    408408    }
    409409
    410410    /**
    411411     * Setup plugin constants.
    412412     *
    413413     * @access private
    414414     * @since 1.0
    415415     * @return void
    416416     */
    417417    private function setup_constants()
    418418    {
    419419        // test
    420420        require_once plugin_dir_path(__FILE__) . '/config.php'; // loads constant from a file so that it can be available on all files.
    421421    }
    422422
    423423    function autoload( $dir = '' ) {
    424424        if ( !file_exists( $dir ) ) return;
    425425        foreach ( scandir( $dir ) as $file ) {
    426426            if ( preg_match( "/.php$/i", $file ) ) {
    427427                require_once( $dir . $file );
    428428            }
    429429        }
    430430    }
    431431
    432432    /**
    433433     * Include required files.
    434434     *
    435435     * @access private
    436436     * @since 1.0
    437437     * @return void
    438438     */
    439439    private function includes()
    440440    {
    441441        $this->autoload( ATBDP_INC_DIR . 'helpers/' );
    442442
    443443        self::require_files([
    444444            ATBDP_INC_DIR . 'class-helper',
    445445            ATBDP_INC_DIR . 'helper-functions',
    446446            ATBDP_INC_DIR . 'template-functions',
    447447            ATBDP_INC_DIR . 'custom-actions',
    448448            ATBDP_INC_DIR . 'custom-filters',
    449449            ATBDP_INC_DIR . 'elementor/init',
    450450            ATBDP_INC_DIR . 'system-status/class-system-status',
    451451            ATBDP_INC_DIR . 'gutenberg/init',
    452452            ATBDP_INC_DIR . 'review/init',
    453453            ATBDP_INC_DIR . 'rest-api/init',
    454454        ]);
    455455
    456456        load_dependencies('all', ATBDP_INC_DIR . 'data-store/');
    457457        load_dependencies('all', ATBDP_INC_DIR . 'model/');
    458458        load_dependencies('all', ATBDP_INC_DIR . 'hooks/');
    459459        load_dependencies('all', ATBDP_INC_DIR . 'modules/');
    460460        load_dependencies('all', ATBDP_INC_DIR . 'modules/multi-directory-setup/');
    461461
    462462        load_dependencies('all', ATBDP_CLASS_DIR); // load all php files from ATBDP_CLASS_DIR
    463463
    464464        /*Load gateway related stuff*/
    465465        load_dependencies('all', ATBDP_INC_DIR . 'gateways/');
    466466        /*Load payment related stuff*/
    467467        load_dependencies('all', ATBDP_INC_DIR . 'payments/');
    468468        load_dependencies('all', ATBDP_INC_DIR . 'checkout/');
    469469
    470470
    471471    }
    472472
    473473    // require_files
    474474    public static function require_files( array $files = [] ) {
    475475        foreach ( $files as $file ) {
    476476            if ( file_exists( "{$file}.php" ) ) {
    477477                require_once "{$file}.php";
    478478            }
    479479        }
    480480    }
    481481
    482482    public static function prepare_plugin()
    483483    {
    484484        include ATBDP_INC_DIR . 'classes/class-installation.php';
    485485        ATBDP_Installation::install();
    486486    }
    487487
    488488    /**
    489489     * Throw error on object clone.
    490490     *
    491491     * The whole idea of the singleton design pattern is that there is a single
    492492     * object therefore, we don't want the object to be cloned.
    493493     *
    494494     * @since 1.0
    495495     * @access public
    496496     * @return void
    497497     */
    498498    public function __clone()
    499499    {
    500500        // Cloning instances of the class is forbidden.
    501501        _doing_it_wrong(__FUNCTION__, __('Cheatin&#8217; huh?', 'directorist'), '1.0');
    502502    }
    503503
    504504    /**
    505505     * Disable unserializing of the class.
    506506     *
    507507     * @since 1.0
    508508     * @access public
    509509     * @return void
    510510     */
    511511    public function __wakeup()
    512512    {
    513513        // Unserializing instances of the class is forbidden.
    514514        _doing_it_wrong(__FUNCTION__, __('Cheatin&#8217; huh?', 'directorist'), '1.0');
    515515    }
    516516
    517517    /**
    518518     * It registers widgets and sidebar support
    519519     *
    520520     * @since 1.0
    521521     * @access public
    522522     * @return void
    523523     */
    524524    public function register_widgets()
    525525    {
    526526        if (!is_registered_sidebar('right-sidebar-listing')) {
    527527            register_sidebar(array(
    528528                'name' => apply_filters('atbdp_right_sidebar_name', __('Directorist - Listing Right Sidebar', 'directorist')),
    529529                'id' => 'right-sidebar-listing',
    530530                'description' => __('Add widgets for the right sidebar on single listing page', 'directorist'),
    531531                'before_widget' => '<div class="widget atbd_widget %2$s">',
    532532                'after_widget' => '</div>',
    533533                'before_title' => '<div class="atbd_widget_title"><h4>',
    534534                'after_title' => '</h4></div>',
    535535            ));
    536536        }
    537537
    538538        register_widget('BD_Popular_Listing_Widget');
    539539        register_widget('BD_video_Widget');
    540540        register_widget('BD_contact_form_Widget');
    541541        register_widget('BD_Submit_Item_Widget');
    542542        register_widget('BD_Login_Form_Widget');
    543543        register_widget('BD_Categories_Widget');
    544544        register_widget('BD_Locations_Widget');
    545545        register_widget('BD_Tags_Widget');
    546546        register_widget('BD_Search_Widget');
    547547        register_widget('BD_Map_Widget');
    548548        // register_widget('BD_All_Map_Widget');
    549549        register_widget('BD_Similar_Listings_Widget');
    550550        register_widget('BD_Author_Info_Widget');
    551551        register_widget('BD_Featured_Listings_Widget');
    552552
    553553    }
    554554
    555555    public function load_textdomain()
    556556    {
    557557
    558558        load_plugin_textdomain('directorist', false, ATBDP_LANG_DIR);
    559559        if ( get_transient( '_directorist_setup_page_redirect' ) ) {
    560560            directorist_redirect_to_admin_setup_wizard();
    561561        }
    562562    }
    563563
    564564    /**
    565565     * It  loads a template file from the Default template directory.
    566566     * @todo; Improve this method in future so that it lets user/developers to change/override any templates this plugin uses
    567567     * @param string $name Name of the file that should be loaded from the template directory.
    568568     * @param array $args Additional arguments that should be passed to the template file for rendering dynamic  data.
    569569     * @param bool $return_path Whether to return the path instead of including it
    570570     * @return string|void
    571571     */
    572572    public function load_template($name, $args = array(), $return_path = false)
    573573    {
    574574        global $post;
    575575        $path = ATBDP_VIEWS_DIR . $name . '.php';
    576576        if ($return_path) return $path;
    577577        include($path);
    578578    }
    579579
    580580    public function add_custom_directorist_pages()
    581581    {
    582582        $create_permission = apply_filters('atbdp_create_required_pages', true);
    583583        if ($create_permission){
    584584            atbdp_create_required_pages();
    585585        }
    586586    }
    587587
    588588    public function add_uninstall_menu($menus) {
    589589        $menus['uninstall_menu'] = array(
    590590            'title' => __('Uninstall', 'directorist'),
    591591            'name' => 'uninstall_menu',
    592592            'icon' => 'font-awesome:fa-window-close',
    593593            'controls' => apply_filters('atbdp_uninstall_settings_controls', array(
    594594                'currency_section' => array(
    595595                    'type' => 'section',
    596596                    'title' => __('Uninstall Settings', 'directorist'),
    597597                    'fields' => get_uninstall_settings_submenus(),
    598598                ),
    599599            )),
    600600        );
    601601        $menus['csv_import'] = array(
    602602            'title' => __('Listings Import', 'directorist'),
    603603            'name' => 'csv_import',
    604604            'icon' => 'font-awesome:fa-upload',
    605605            'controls' => apply_filters('atbdp_csv_import_settings_controls', array(
    606606                'currency_section' => array(
    607607                    'type' => 'section',
    608608                    'title' => __('Listings Import', 'directorist'),
    609609                    'fields' => get_csv_import_settings_submenus(),
    610610                ),
    611611            )),
    612612        );
    613613        return $menus;
    614614    }
    615615
    616616    /**
    617617     * It displays popular listings
    618618     * @param int $count [optional] Number of popular listing to show. Default 5.
    619619     * If the count is more than one then it uses it, else the function will use the value from the settings page.
    620620     * Count variable is handy if we want to show different number of popular listings on different pages. For example, on different widgets place
    621621     * @todo Try to move popular listings related functionalities to a dedicated listing related class that handles popular listings, related listings etc. when have time.
    622622     */
    623623    public function show_popular_listing($count = 5)
    624624    {
    625625        $popular_listings = $this->get_popular_listings($count);
    626626
    627627        if ($popular_listings->have_posts()) { ?>
    628628            <div class="atbd_categorized_listings">
    629629                <ul class="listings">
    630630                    <?php foreach ($popular_listings->posts as $pop_post) {
    631631                        // get only one parent or high level term object
    632632                        $top_category = ATBDP()->taxonomy->get_one_high_level_term($pop_post->ID, ATBDP_CATEGORY);
    633633                        $listing_img = get_post_meta($pop_post->ID, '_listing_img', true);
    634634                        $listing_prv_img = get_post_meta($pop_post->ID, '_listing_prv_img', true);
    635635                        $cats = get_the_terms($pop_post->ID, ATBDP_CATEGORY);
    636636                        $post_link = get_the_permalink( $pop_post->ID );
    637637                        ?>
    638638                        <li>
    639639                            <div class="atbd_left_img">
    640640                                <?php
    641641                                $disable_single_listing = get_directorist_option('disable_single_listing');
    642642                                if (empty($disable_single_listing)){
    643643                                ?>
    644644                                <a href="<?php echo esc_url( $post_link ); ?>">
    645645                                    <?php
    646646                                    }
    647647                                    $default_image = get_directorist_option('default_preview_image', DIRECTORIST_ASSETS . 'images/grid.jpg');
    648648                                    if (!empty($listing_prv_img)) {
    649649                                        echo '<img src="' . esc_url(wp_get_attachment_image_url($listing_prv_img, array(90, 90))) . '" alt="' . esc_html($pop_post->post_title) . '">';
    650650                                    } elseif (!empty($listing_img[0]) && empty($listing_prv_img)) {
    651651                                        echo '<img src="' . esc_url(wp_get_attachment_image_url($listing_img[0], array(90, 90))) . '" alt="' . esc_html($pop_post->post_title) . '">';
    652652                                    } else {
    653653                                        echo '<img src="' . $default_image . '" alt="' . esc_html($pop_post->post_title) . '">';
    654654                                    }
    655655                                    if (empty($disable_single_listing)) {
    656656                                        echo '</a>';
    657657                                    }
    658658                                    ?>
    659659                            </div>
    660660                            <div class="atbd_right_content">
    661661                                <div class="cate_title">
    662662                                    <h4>
    663663                                        <?php
    664664                                        if (empty($disable_single_listing)) {
    665665                                            ?>
    666666                                            <a href="<?php echo esc_url($post_link); ?>"><?php echo esc_html($pop_post->post_title); ?></a>
    667667                                            <?php
    668668                                        } else {
    669669                                            echo esc_html($pop_post->post_title);
    670670                                        } ?>
    671671                                    </h4>
    672672                                </div>
    673673
    674674                                <?php if (!empty($cats)) {
    675675                                    $totalTerm = count($cats);
    676676                                    ?>
    677677
    678678                                    <p class="directory_tag">
    679679                                        <span class="<?php atbdp_icon_type(true); ?>-tags"></span>
    680680                                        <span>
    681681                                                <a href="<?php echo ATBDP_Permalink::atbdp_get_category_page($cats[0]); ?>">
    682682                                                                     <?php echo esc_html($cats[0]->name); ?>
    683683                                                </a>
    684684                                            <?php
    685685                                            if ($totalTerm > 1) {
    686686                                                ?>
    687687                                                <span class="atbd_cat_popup">  +<?php echo $totalTerm - 1; ?>
    688688                                                    <span class="atbd_cat_popup_wrapper">
    689689                                                                    <?php
    690690                                                                    $output = array();
    691691                                                                    foreach (array_slice($cats, 1) as $cat) {
    692692                                                                        $link = ATBDP_Permalink::atbdp_get_category_page($cat);
    693693                                                                        $space = str_repeat(' ', 1);
    694694                                                                        $output [] = "{$space}<a href='{$link}'>{$cat->name}<span>,</span></a>";
    695695                                                                    } ?>
    696696                                                        <span><?php echo join($output) ?></span>
    697697                                                                </span>
    698698                                                            </span>
    699699                                            <?php } ?>
    700700
    701701                                        </span>
    702702                                    </p>
    703703                                <?php }
    704704                                ATBDP()->show_static_rating($pop_post);
    705705                                ?>
    706706                            </div>
    707707                        </li>
    708708                    <?php } // ends the loop
    709709                    ?>
    710710
    711711                </ul>
    712712            </div> <!--ends .categorized_listings-->
    713713        <?php }
    714714
    715715    }
    716716
    717717    /**
    718718     * It gets the popular listings of the given listing/post
    719719     *
    720720     * @param int $count [optional] Number of popular listing to show.  If the count is more than one then it uses it,
    721721     *                   else the function will use the value from the settings page.
    722722     *                   Count variable is handy if we want to show different number of popular listings on different pages.
    723723     *                   For example, on different widgets place. Default 5.
    724724     * @return WP_Query It returns the popular listings if found.
    725725     */
    726726    public function get_popular_listings( $count = 5, $listing_id = 0 ) {
    727727        $count           = intval( $count > 0 ? $count : 5 );
    728728        $view_to_popular = get_directorist_option( 'views_for_popular' );
    729729
    730730        /**
    731731         * It filters the number of the popular listing to display
    732732         * @since 1.0.0
    733733         * @param int $count The number of popular listing  to show
    734734         */
    735735        $count = apply_filters( 'atbdp_popular_listing_number', $count );
    736736
    737737        $args = array(
    738738            'post_type'      => ATBDP_POST_TYPE,
    739739            'post_status'    => 'publish',
    740740            'posts_per_page' => $count,
    741741        );
    742742
    743743        $has_featured               = (bool) get_directorist_option( 'enable_featured_listing' );
    744744        $has_featured               = $has_featured || is_fee_manager_active();
    745745        $listing_popular_by         = get_directorist_option( 'listing_popular_by' );
    746746        $average_review_for_popular = (int) get_directorist_option( 'average_review_for_popular', 4 );
    747747        $view_to_popular            = (int) get_directorist_option( 'views_for_popular' );
    748748
    749749        $meta_queries = array();
    750750
    751751        if ( $has_featured ) {
    752752            if ( 'average_rating' === $listing_popular_by ) {
    753753                $meta_queries['_rating'] = array(
    754754                    'key'     => directorist_get_rating_field_meta_key(),
    755755                    'value'   => $average_review_for_popular,
    756756                    'type'    => 'NUMERIC',
    757757                    'compare' => '<=',
    758758                );
    759759            } elseif ( 'view_count' === $listing_popular_by ) {
    760760                $meta_queries['views'] = array(
    761761                    'key'     => directorist_get_listing_views_count_meta_key(),
    762762                    'value'   => $view_to_popular,
    763763                    'type'    => 'NUMERIC',
    764764                    'compare' => '>=',
    765765                );
    766766
    767767                $args['orderby'] = array(
    768768                    '_featured' => 'DESC',
    769769                    'views'     => 'DESC',
    770770                );
    771771            } else {
    772772                $meta_queries['views'] = array(
    773773                    'key'     => directorist_get_listing_views_count_meta_key(),
    774774                    'value'   => $view_to_popular,
    775775                    'type'    => 'NUMERIC',
    776776                    'compare' => '>=',
    777777                );
    778778
    779779                $meta_queries['_rating'] = array(
    780780                    'key'     => directorist_get_rating_field_meta_key(),
    781781                    'value'   => $average_review_for_popular,
    782782                    'type'    => 'NUMERIC',
    783783                    'compare' => '<=',
    784784                );
    785785
    786786                $args['orderby'] = array(
    787787                    '_featured' => 'DESC',
    788788                    'views'     => 'DESC',
    789789                );
    790790            }
    791791        } else {
    792792            if ( 'average_rating' === $listing_popular_by ) {
    793793                $meta_queries['_rating'] = array(
    794794                    'key'     => directorist_get_rating_field_meta_key(),
    795795                    'value'   => $average_review_for_popular,
    796796                    'type'    => 'NUMERIC',
    797797                    'compare' => '<=',
    798798                );
    799799            } elseif ( 'view_count' === $listing_popular_by ) {
    800800                $meta_queries['views'] = array(
    801801                    'key'     => directorist_get_listing_views_count_meta_key(),
    802802                    'value'   => $view_to_popular,
    803803                    'type'    => 'NUMERIC',
    804804                    'compare' => '>=',
    805805                );
    806806
    807807                $args['orderby'] = array(
    808808                    'views' => 'DESC',
    809809                );
    810810            } else {
    811811                $meta_queries['views'] = array(
    812812                    'key'     => directorist_get_listing_views_count_meta_key(),
    813813                    'value'   => $view_to_popular,
    814814                    'type'    => 'NUMERIC',
    815815                    'compare' => '>=',
    816816                );
    817817
    818818                $meta_queries['_rating'] = array(
    819819                    'key'     => directorist_get_rating_field_meta_key(),
    820820                    'value'   => $average_review_for_popular,
    821821                    'type'    => 'NUMERIC',
    822822                    'compare' => '<=',
    823823                );
    824824
    825825                $args['orderby'] = array(
    826826                    'views' => 'DESC',
    827827                );
    828828            }
    829829        }
    830830
    831831        if ( count( $meta_queries ) ) {
    832832            $meta_queries['relation'] = 'AND';
    833833            $args['meta_query'] = $meta_queries;
    834834        }
    835835
    836836        return new WP_Query( apply_filters( 'atbdp_popular_listing_args', $args ) );
    837837    }
    838838
    839839    /**
    840840     * It displays static rating of the given post
    841841     * @param object|WP_Post $post The current post object
    842842     */
    843843    public function show_static_rating($post)
    844844    {
    845845        if ( ! directorist_is_review_enabled() ) {
    846846            return;
    847847        }
    848848
    849849        if ( empty( $post ) || ! ( $post instanceof \WP_Post ) || $post->post_type !== ATBDP_POST_TYPE ) {
    850850            return;
    851851        }
    852852
    853853        $average = directorist_get_listing_rating( $post->ID );
    854854        ?>
    855855        <div class="atbd_rated_stars">
    856856            <?php echo ATBDP()->review->print_static_rating($average); ?>
    857857        </div>
    858858        <?php
    859859    }
    860860
    861861    /**
    862862     * It gets the related listings of the given listing/post
    863863     * @param object|WP_Post $post The WP Post Object of whose related listing we would like to show
    864864     * @return object|WP_Query It returns the related listings if found.
    865865     */
    866866    public function get_related_listings($post)
    867867    {
    868868        $rel_listing_num = get_directorist_option('rel_listing_num', 2);
    869869        $atbd_cats = get_the_terms($post, ATBDP_CATEGORY);
    870870        $atbd_tags = get_the_terms($post, ATBDP_TAGS);
    871871        // get the tag ids of the listing post type
    872872        $atbd_cats_ids = array();
    873873        $atbd_tags_ids = array();
    874874
    875875        if (!empty($atbd_cats)) {
    876876            foreach ($atbd_cats as $atbd_cat) {
    877877                $atbd_cats_ids[] = $atbd_cat->term_id;
    878878            }
    879879        }
    880880        if (!empty($atbd_tags)) {
    881881            foreach ($atbd_tags as $atbd_tag) {
    882882                $atbd_tags_ids[] = $atbd_tag->term_id;
    883883            }
    884884        }
    885885        $relationship = get_directorist_option('rel_listings_logic','OR');
    886886        $args = array(
    887887            'post_type' => ATBDP_POST_TYPE,
    888888            'tax_query' => array(
    889889                'relation' => $relationship,
    890890                array(
    891891                    'taxonomy' => ATBDP_CATEGORY,
    892892                    'field' => 'term_id',
    893893                    'terms' => $atbd_cats_ids,
    894894                ),
    895895                array(
    896896                    'taxonomy' => ATBDP_TAGS,
    897897                    'field' => 'term_id',
    898898                    'terms' => $atbd_tags_ids,
    899899                ),
    900900            ),
    901901            'posts_per_page' => (int)$rel_listing_num,
    902902            'post__not_in' => array($post->ID),
    903903        );
    904904
    905905        $meta_queries = array();
    906906        $meta_queries[] = array(
    907907            'relation' => 'OR',
    908908            array(
    909909                'key' => '_expiry_date',
    910910                'value' => current_time('mysql'),
    911911                'compare' => '>', // eg. expire date 6 <= current date 7 will return the post
    912912                'type' => 'DATETIME'
    913913            ),
    914914            array(
    915915                'key' => '_never_expire',
    916916                'value' => 1,
    917917            )
    918918        );
    919919
    920920        $meta_queries = apply_filters('atbdp_related_listings_meta_queries', $meta_queries);
    921921        $count_meta_queries = count($meta_queries);
    922922        if ($count_meta_queries) {
    923923            $args['meta_query'] = ($count_meta_queries > 1) ? array_merge(array('relation' => 'AND'), $meta_queries) : $meta_queries;
    924924        }
    925925
    926926        //return new WP_Query(apply_filters('atbdp_related_listing_args', $args));
    927927
    928928    }
    929929
    930930    /**
    931931     * It gets the related listings widget of the given listing/post
    932932     * @param object|WP_Post $post The WP Post Object of whose related listing we would like to show
    933933     * @return object|WP_Query It returns the related listings if found.
    934934     */
    935935    public function get_related_listings_widget($post, $count)
    936936    {
    937937        $directory_type = get_the_terms( get_the_ID(), ATBDP_TYPE );
    938938        $type_id        = ! empty( $directory_type ) ? $directory_type[0]->term_id : '';
    939939        $same_author    = get_directorist_type_option( $type_id, 'listing_from_same_author', false );
    940940        $rel_listing_num = !empty($count) ? $count : 5;
    941941        $atbd_cats = get_the_terms($post, ATBDP_CATEGORY);
    942942        $atbd_tags = get_the_terms($post, ATBDP_TAGS);
    943943        // get the tag ids of the listing post type
    944944        $atbd_cats_ids = array();
    945945        $atbd_tags_ids = array();
    946946
    947947        if (!empty($atbd_cats)) {
    948948            foreach ($atbd_cats as $atbd_cat) {
    949949                $atbd_cats_ids[] = $atbd_cat->term_id;
    950950            }
    951951        }
    952952        if (!empty($atbd_tags)) {
    953953            foreach ($atbd_tags as $atbd_tag) {
    954954                $atbd_tags_ids[] = $atbd_tag->term_id;
    955955            }
    956956        }
    957957        $args = array(
    958958            'post_type' => ATBDP_POST_TYPE,
    959959            'tax_query' => array(
    960960                'relation' => 'OR',
    961961                array(
    962962                    'taxonomy' => ATBDP_CATEGORY,
    963963                    'field' => 'term_id',
    964964                    'terms' => $atbd_cats_ids,
    965965                ),
    966966                array(
    967967                    'taxonomy' => ATBDP_TAGS,
    968968                    'field' => 'term_id',
    969969                    'terms' => $atbd_tags_ids,
    970970                ),
    971971            ),
    972972            'posts_per_page' => (int)$rel_listing_num,
    973973            'post__not_in' => array($post->ID),
    974974        );
    975975        if( ! empty( $same_author ) ){
    976976            $args['author']  = get_post_field( 'post_author', get_the_ID() );
    977977        }
    978978
    979979        return new WP_Query(apply_filters('atbdp_related_listing_args', $args));
    980980
    981981    }
    982982
    983983    public function add_custom_meta_keys_for_old_listings()
    984984    {
    985985        // get all the listings that does not have any of the following meta key missing
    986986        // loop through then and find which one does not contain a meta key
    987987        // if they return false then add new meta keys to them
    988988        $args = array(
    989989            'post_type' => ATBDP_POST_TYPE,
    990990            'post_status' => 'any',
    991991            'posts_per_page' => -1,
    992992            'meta_query' => array(
    993993                'relation' => 'OR',
    994994                array(
    995995                    'key' => '_featured',
    996996                    'compare' => 'NOT EXISTS'
    997997                ),
    998998                array(
    999999                    'key' => '_expiry_date',
    10001000                    'compare' => 'NOT EXISTS'
    10011001                ),
    10021002                array(
    10031003                    'key' => '_never_expire',
    10041004                    'compare' => 'NOT EXISTS',
    10051005                ),
    10061006                array(
    10071007                    'key' => '_listing_status',
    10081008                    'compare' => 'NOT EXISTS'
    10091009                ),
    10101010                array(
    10111011                    'key' => '_price',
    10121012                    'compare' => 'NOT EXISTS',
    10131013                ),
    10141014            )
    10151015
    10161016        );
    10171017        $listings = new WP_Query($args);
    10181018
    10191019        foreach ($listings->posts as $l) {
    10201020            $ft = get_post_meta($l->ID, '_featured', true);
    10211021            $ep = get_post_meta($l->ID, '_expiry_date', true);
    10221022            $np = get_post_meta($l->ID, '_never_expire', true);
    10231023            $ls = get_post_meta($l->ID, '_listing_status', true);
    10241024            $pr = get_post_meta($l->ID, '_price', true);
    10251025            $exp_d = calc_listing_expiry_date();
    10261026            if (empty($ft)) {
    10271027                update_post_meta($l->ID, '_featured', 0);
    10281028            }
    10291029            if (empty($ep)) {
    10301030                update_post_meta($l->ID, '_expiry_date', $exp_d);
    10311031            }
    10321032            if (empty($np)) {
    10331033                update_post_meta($l->ID, '_never_expire', 0);
    10341034            }
    10351035            if (empty($ls)) {
    10361036                update_post_meta($l->ID, '_listing_status', 'post_status');
    10371037            }
    10381038            if (empty($pr)) {
    10391039                update_post_meta($l->ID, '_price', 0);
    10401040            }
    10411041        }
    10421042        // update db version to avoid duplication
    10431043        update_option('atbdp_meta_version', 1);
    10441044
    10451045    }
    10461046
    10471047    /**
    10481048     * Parse the video URL and determine it's valid embeddable URL for usage.
    10491049     */
    10501050    public function atbdp_parse_videos($url)
    10511051    {
    10521052        $embeddable_url = '';
    10531053        // Check for YouTube
    10541054        $is_youtube = preg_match('/youtu\.be/i', $url) || preg_match('/youtube\.com\/watch/i', $url);
    10551055
    10561056        if ($is_youtube) {
    10571057            $pattern = '/^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*/';
    10581058            preg_match($pattern, $url, $matches);
    10591059            if (count($matches) && strlen($matches[7]) == 11) {
    10601060                $embeddable_url = 'https://www.youtube.com/embed/' . $matches[7];
    10611061            }
    10621062        }
    10631063
    10641064        // Check for Vimeo
    10651065        $is_vimeo = preg_match('/vimeo\.com/i', $url);
    10661066
    10671067        if ($is_vimeo) {
    10681068            $pattern = '/\/\/(www\.)?vimeo.com\/(\d+)($|\/)/';
    10691069            preg_match($pattern, $url, $matches);
    10701070            if (count($matches)) {
    10711071                $embeddable_url = 'https://player.vimeo.com/video/' . $matches[2];
    10721072            }
    10731073        }
    10741074
    10751075        // Return
    10761076        return $embeddable_url;
    10771077
    10781078    }
    10791079
    10801080    public function atbdp_body_class($c_classes)
    10811081    {
    10821082        $c_classes[] = 'directorist-content-active';//class name goes here
    10831083        $c_classes[] = 'directorist-preload';//class name goes here
    10841084
    10851085        return $c_classes;
    10861086    }
    10871087
    10881088    /**
    10891089     * Initialize appsero tracking.
    10901090     *
    10911091     * Removed custom plugins meta data field in 7.0.5.4
    10921092     * since Appsero made this builtin.
    10931093     *
    10941094     * @see https://github.com/Appsero/client
    10951095     *
    10961096     * @return void
    10971097     */
    10981098    public function init_appsero() {
    10991099        if ( ! class_exists( '\Appsero\Client' ) ) {
    11001100            require_once ATBDP_INC_DIR . 'modules/appsero/src/Client.php';
    11011101        }
    11021102
    11031103        $client = new \Appsero\Client( 'd9f81baf-2b03-49b1-b899-b4ee71c1d1b1', 'Directorist – Business Directory & Classified Listings WordPress Plugin', __FILE__ );
    11041104
    11051105        // Active insights
    11061106        $client->insights()->init();
    11071107    }
    11081108
    11091109} // ends Directorist_Base
    11101110
    11111111
    11121112/**
    11131113 * The main function for that returns Directorist_Base
    11141114 *
    11151115 * The main function responsible for returning the one true Directorist_Base
    11161116 * Instance to functions everywhere.
    11171117 *
    11181118 * Use this function like you would a global variable, except without needing
    11191119 * to declare the global.
    11201120 *
    11211121 *
    11221122 * @since 1.0
    11231123 * @return object|Directorist_Base The one true Directorist_Base Instance.
    11241124 */
    11251125function ATBDP()
    11261126{
    11271127    return Directorist_Base::instance();
    11281128}
    11291129
    11301130ATBDP();
    11311131register_activation_hook(__FILE__, array('Directorist_Base', 'prepare_plugin'));
  • directorist/trunk/includes/classes/class-extension.php

    r2731298 r2752034  
    11<?php
    2 
    32/**
    43 * ATBDP Extensions class
    54 *
    65 * This class is for interacting with Extensions eg. showing extensions lists
    76 *
    87 * @package     ATBDP
    98 * @subpackage  inlcudes/classes Extensions
    109 * @copyright   Copyright (c) 2018, AazzTech
    1110 * @since       1.0
    1211 */
    1312
    1413// Exit if accessed directly
    1514
    1615if ( ! defined( 'ABSPATH' ) ) {
    17     die( 'Direct access is not allowed.' );
     16    die( 'Direct access is not allowed.' );
    1817}
    1918
     19if ( ! is_admin() ) {
     20    return;
     21}
     22
    2023if ( ! class_exists( 'ATBDP_Extensions' ) ) {
    2124
    22     /**
    23      * Class ATBDP_Extensions
    24      */
    25     class ATBDP_Extensions {
    26         public static $extensions_aliases = [];
    27 
    28         public $extensions          = [];
    29         public $themes              = [];
    30         public $required_extensions = [];
    31 
    32         public function __construct() {
    33             add_action( 'admin_menu', [$this, 'admin_menu'], 100 );
    34 
    35             if( ! empty( $_GET['page'] ) && ( 'atbdp-extension' === $_GET['page'] ) ){
    36                 add_action( 'admin_init', [ $this, 'initial_setup' ] );
    37             }
    38            
    39             add_action( 'admin_init', [ $this, 'setup_ajax_actions' ] );
    40         }
    41 
    42         public function setup_ajax_actions() {
    43             if ( ! current_user_can( 'manage_options' ) ) {
    44                 return;
    45             }
    46 
    47             // Ajax
    48             add_action( 'wp_ajax_atbdp_authenticate_the_customer', [$this, 'authenticate_the_customer'] );
    49             add_action( 'wp_ajax_atbdp_download_file', [$this, 'handle_file_download_request'] );
    50             add_action( 'wp_ajax_atbdp_install_file_from_subscriptions', [$this, 'handle_file_install_request_from_subscriptions'] );
    51             add_action( 'wp_ajax_atbdp_plugins_bulk_action', [$this, 'plugins_bulk_action'] );
    52             add_action( 'wp_ajax_atbdp_activate_theme', [$this, 'activate_theme'] );
    53             add_action( 'wp_ajax_atbdp_activate_plugin', [$this, 'activate_plugin'] );
    54             add_action( 'wp_ajax_atbdp_update_plugins', [$this, 'handle_plugins_update_request'] );
    55             add_action( 'wp_ajax_atbdp_update_theme', [$this, 'handle_theme_update_request'] );
    56             add_action( 'wp_ajax_atbdp_refresh_purchase_status', [$this, 'handle_refresh_purchase_status_request'] );
    57             add_action( 'wp_ajax_atbdp_close_subscriptions_sassion', [$this, 'handle_close_subscriptions_sassion_request'] );
    58 
    59             // add_action( 'wp_ajax_atbdp_download_purchased_items', array($this, 'download_purchased_items') );
    60         }
    61 
    62         // initial_setup
    63         public function initial_setup() {
    64             if ( ! current_user_can( 'manage_options' ) ) {
    65                 return;
    66             }
    67 
    68             $this->setup_extensions_alias();
    69 
    70             wp_update_plugins();
    71            
    72             // Apply hook to required extensions
    73             $this->required_extensions = apply_filters( 'directorist_required_extensions', [] );
    74 
    75             $this->setup_products_list();
    76         }
    77 
    78         // setup_extensions_alias
    79         public function setup_extensions_alias() {
    80 
    81             // Latest Key     => Deprecated key
    82             // Deprecated key => Latest Key
    83             self::$extensions_aliases = apply_filters( 'directorist_extensions_aliases', [
    84                 'directorist-listings-with-map'        => 'directorist-listings-map',
    85                 'directorist-listings-map'             => 'directorist-listings-with-map',
    86 
    87                 'directorist-adverts-manager'          => 'directorist-ads-manager',
    88                 'directorist-ads-manager'              => 'directorist-adverts-manager',
    89 
    90                 'directorist-gallery'                  => 'directorist-image-gallery',
    91                 'directorist-image-gallery'            => 'directorist-gallery',
    92 
    93                 'directorist-slider-carousel'          => 'directorist-listings-slider-carousel',
    94                 'directorist-listings-slider-carousel' => 'directorist-slider-carousel',
    95 
    96                 'directorist-faqs'                     => 'directorist-listing-faqs',
    97                 'directorist-listing-faqs'             => 'directorist-faqs',
    98             ] );
    99         }
    100 
    101         // get_required_extension_list
    102         public function get_required_extension_list() {
    103             $required_extensions = [];
    104 
    105             foreach ( $this->required_extensions as $recommandation ) {
    106 
    107                 if ( ! isset( $recommandation['extensions'] ) ) {
    108                     continue;
    109                 }
    110 
    111                 if ( ! is_array( $recommandation['extensions'] ) ) {
    112                     continue;
    113                 }
    114 
    115                 foreach ( $recommandation['extensions'] as $extension ) {
    116                     $extension_alias = $this->get_extension_alias_key( $extension );
    117 
    118                     if ( ! ( isset( $this->extensions[$extension] ) || isset( $this->extensions[$extension_alias] ) ) ) {
    119                         continue;
    120                     }
    121 
    122                     if ( empty( $required_extensions[$extension] ) ) {
    123                         $required_extensions[$extension] = [];
    124                     }
    125 
    126                     $required_extensions[$extension][] = $recommandation['ref'];
    127                 }
    128 
    129             }
    130 
    131             return $required_extensions;
    132         }
    133 
    134         // prepare_the_final_requred_extension_list
    135         public function prepare_the_final_requred_extension_list( array $args = [] ) {
    136             $recommandation = [];
    137 
    138             $required_extensions_list = $this->get_required_extension_list();
    139             $purchased_extension_list = self::get_purchased_extension_list();
    140             $purchased_extensions     = ( ! empty( $purchased_extension_list ) && is_array( $purchased_extension_list ) ) ? array_keys( $purchased_extension_list ) : [];
    141             $plugin_dir_path          = trailingslashit( dirname( ATBDP_DIR ) );
    142 
    143             foreach ( $required_extensions_list as $extension => $recommanded_by ) {
    144                 $extension_alias = $this->get_extension_alias_key( $extension );
    145 
    146                 if ( $this->has_match_in_active_plugins( [ $extension, $extension_alias ] ) ) {
    147                     continue;
    148                 }
    149 
    150                 $is_purchased       = ( in_array( $extension, $purchased_extensions ) ) ? true : false;
    151                 $is_purchased_alias = ( in_array( $extension_alias, $purchased_extensions ) ) ? true : false;
    152 
    153                 $is_installed = file_exists( $plugin_dir_path . $extension );
    154                 $is_installed_alias = ( ! empty( $extension_alias ) && file_exists( $plugin_dir_path . $extension_alias ) ) ? true : false;
    155 
    156 
    157                 $base = "{$extension}/{$extension}.php";
    158 
    159                 if ( ! empty( $this->extensions[ $extension ] ) && ! empty( $this->extensions[ $extension ]['base'] ) ) {
    160                     $base = $this->extensions[ $extension ]['base'];
    161                 }
    162 
    163                 if ( ! empty( $this->extensions[ $extension_alias ] ) && ! empty( $this->extensions[ $extension_alias ]['base'] ) ) {
    164                     $base = $this->extensions[ $extension_alias ]['base'];
    165                 }
    166 
    167                 $recommandation[$extension]              = [];
    168                 $recommandation[$extension]['ref']       = $recommanded_by;
    169                 $recommandation[$extension]['base']      = $base;
    170                 $recommandation[$extension]['purchased'] = ( $is_purchased || $is_purchased_alias ) ? true : false;
    171                 $recommandation[$extension]['installed'] = ( $is_installed || $is_installed_alias ) ? true : false;
    172             }
    173 
    174             return $recommandation;
    175         }
    176 
    177         public function has_match_in_active_plugins( $plugin_name = '' ) {
    178             $match_found = false;
    179 
    180             $active_plugins = get_option( 'active_plugins', array() );
    181            
    182             if ( empty( $plugin_name ) ) {
    183                 return false;
    184             }
    185 
    186             if ( empty( $active_plugins ) ) {
    187                 return false;
    188             }
    189 
    190             if ( ! is_array( $active_plugins ) ) {
    191                 return false;
    192             }
    193 
    194             foreach ( $active_plugins as $plugin_path ) {
    195                 if ( empty( $plugin_name ) && ( false !== strpos( $plugin_path, $plugin_name ) ) ) {
    196                     return true;
    197                 }
    198 
    199                 if ( is_array( $plugin_name ) ) {
    200                     foreach ( $plugin_name as $plugin_key ) {
    201                         if ( is_string( $plugin_key ) && ! empty( $plugin_key ) && false !== strpos( $plugin_path, $plugin_key ) ) {
    202                             return true;
    203                         }
    204                     }
    205                 }
    206             }
    207 
    208             return $match_found;
    209         }
    210 
    211         // get_the_products_list
    212         public function setup_products_list() {
    213 
    214 
    215             $url     = 'https://app.directorist.com/wp-json/directorist/v1/get-remote-products';
    216             $headers = [
    217                 'user-agent' => 'Directorist/' . md5( esc_url( home_url() ) ) . ';',
    218                 'Accept'     => 'application/json',
    219             ];
    220 
    221             $config = [
    222                 'method'      => 'GET',
    223                 'timeout'     => 30,
    224                 'redirection' => 5,
    225                 'httpversion' => '1.0',
    226                 'headers'     => $headers,
    227                 'cookies'     => [],
    228             ];
    229 
    230             $response_body = [];
    231 
    232             try {
    233                 $response = wp_remote_get( $url, $config );
    234 
    235                 if ( ! is_wp_error( $response ) ) {
    236                     $response_body = ( 'string' === gettype( $response['body'] ) ) ? json_decode( $response['body'], true ) : $response['body'];
    237                     $extensions = $response_body['extensions'];
    238                     $themes = $response_body['themes'];
    239 
    240                     $this->extensions = apply_filters( 'atbdp_extension_list', $extensions );
    241                     $this->themes = apply_filters( 'atbdp_theme_list', $themes );
    242                 }
    243                
    244             } catch ( Exception $e ) {
    245 
    246             }
    247         }
    248 
    249         // exclude_purchased_extensions
    250         public function exclude_purchased_extensions( $extensions ) {
    251             $has_subscriptions_sassion = get_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
    252             $is_logged_in              = ( ! empty( $has_subscriptions_sassion ) ) ? true : false;
    253 
    254             if ( ! $is_logged_in ) {
    255                 return $extensions;
    256             }
    257 
    258             $purchased_products = get_user_meta( get_current_user_id(), '_atbdp_purchased_products', true );
    259 
    260             if ( empty( $purchased_products ) ) {
    261                 return $extensions;
    262             }
    263 
    264             $purchased_extensions = ( ! empty( $purchased_products['plugins'] ) ) ? $purchased_products['plugins'] : '';
    265 
    266             if ( empty( $purchased_extensions ) ) {
    267                 return $extensions;
    268             }
    269 
    270             $purchased_extensions_keys = ( is_array( $purchased_extensions ) ) ? array_keys( $purchased_extensions ) : [];
    271             $excluded_extensions       = $extensions;
    272 
    273             foreach ( $excluded_extensions as $extension_key => $extension ) {
    274 
    275                 if ( ! in_array( $extension_key, $purchased_extensions_keys ) ) {
    276                     continue;
    277                 }
    278 
    279                 $excluded_extensions[$extension_key]['active'] = false;
    280             }
    281 
    282             return $excluded_extensions;
    283         }
    284 
    285         // exclude_purchased_themes
    286         public function exclude_purchased_themes( $themes ) {
    287             $has_subscriptions_sassion = get_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
    288             $is_logged_in              = ( ! empty( $has_subscriptions_sassion ) ) ? true : false;
    289 
    290             if ( ! $is_logged_in ) {
    291                 return $themes;
    292             }
    293 
    294             $purchased_products = get_user_meta( get_current_user_id(), '_atbdp_purchased_products', true );
    295 
    296             if ( empty( $purchased_products ) ) {
    297                 return $themes;
    298             }
    299 
    300             $purchased_themes = ( ! empty( $purchased_products['themes'] ) ) ? $purchased_products['themes'] : '';
    301 
    302             if ( empty( $purchased_themes ) ) {
    303                 return $themes;
    304             }
    305 
    306             $purchased_themes_keys = is_array( $purchased_themes ) ? array_keys( $purchased_themes ) : [];
    307             $excluded_themes       = $themes;
    308 
    309             foreach ( $excluded_themes as $theme_key => $theme ) {
    310 
    311                 if ( ! in_array( $theme_key, $purchased_themes_keys ) ) {
    312                     continue;
    313                 }
    314 
    315                 $excluded_themes[$theme_key]['active'] = false;
    316             }
    317 
    318             return $excluded_themes;
    319         }
    320 
    321         // get_active_extensions
    322         public function get_active_extensions() {
    323             $active_extensions = [];
    324 
    325             foreach ( $this->extensions as $extension_key => $extension_args ) {
    326 
    327                 if ( empty( $extension_args['active'] ) ) {
    328                     continue;
    329                 }
    330 
    331                 $active_extensions[$extension_key] = $extension_args;
    332             }
    333 
    334             return $active_extensions;
    335         }
    336 
    337         // get_active_themes
    338         public function get_active_themes() {
    339             $active_themes = [];
    340 
    341             foreach ( $this->themes as $theme_key => $theme_args ) {
    342 
    343                 if ( empty( $theme_args['active'] ) ) {
    344                     continue;
    345                 }
    346 
    347                 $active_themes[$theme_key] = $theme_args;
    348             }
    349 
    350             return $active_themes;
    351         }
    352 
    353         // handle_plugins_update_request
    354         public function handle_plugins_update_request() {
    355 
    356             if ( ! $this->is_verified_nonce() ) {
    357                 $status            = [];
    358                 $status['success'] = false;
    359                 $status['message'] = 'Invalid request';
    360 
    361                 wp_send_json( ['status' => $status] );
    362             }
    363 
    364             $plugin_key = ( isset( $_POST['plugin_key'] ) ) ? $_POST['plugin_key'] : '';
    365             $status     = $this->update_plugins( ['plugin_key' => $plugin_key] );
    366 
    367             wp_send_json( $status );
    368         }
    369 
    370         // update_plugins
    371         public function update_plugins( array $args = [] ) {
    372             $default = ['plugin_key' => ''];
    373             $args    = array_merge( $default, $args );
    374 
    375             $status     = ['success' => true];
    376             $plugin_key = $args['plugin_key'];
    377 
    378             $plugin_updates       = get_site_transient( 'update_plugins' );
    379             $outdated_plugins     = $plugin_updates->response;
    380             $outdated_plugins_key = ( is_array( $outdated_plugins ) ) ? array_keys( $outdated_plugins ) : [];
    381 
    382             if ( empty( $outdated_plugins_key ) ) {
    383                 $status['message'] = __( 'All plugins are up to date', 'directorist' );
    384 
    385                 return ['status' => $status];
    386             }
    387 
    388             if ( ! empty( $plugin_key ) && ! in_array( $plugin_key, $outdated_plugins_key ) ) {
    389                 $status['message'] = __( 'The plugin is up to date', 'directorist' );
    390 
    391                 return ['status' => $status];
    392             }
    393 
    394             $plugins_available_in_subscriptions = self::get_purchased_extension_list();
    395 
    396             // Update single
    397             if ( ! empty( $plugin_key ) ) {
    398                 $plugin_key  = self::filter_plugin_key_from_base_name( $plugin_key );
    399                 $plugin_item = self::extract_plugin_from_list( $plugin_key, $plugins_available_in_subscriptions );
    400                 $url         = self::get_file_download_link( $plugin_item, 'plugin' );
    401 
    402                 $download_status = $this->download_plugin( ['url' => $url] );
    403 
    404                 if ( ! $download_status['success'] ) {
    405                     $status['success'] = false;
    406                     $status['message'] = __( 'The plugin could not update', 'directorist' );
    407                     $status['log']     = $download_status['message'];
    408                 } else {
    409                     $status['success'] = true;
    410                     $status['message'] = __( 'The plugin has been updated successfully', 'directorist' );
    411                     $status['log']     = $download_status['message'];
    412                 }
    413 
    414                 return ['status' => $status];
    415             }
    416 
    417             // Update all
    418             $updated_plugins       = [];
    419             $update_failed_plugins = [];
    420 
    421             foreach ( $outdated_plugins as $plugin_base => $plugin ) {
    422                 $plugin_key  = self::filter_plugin_key_from_base_name( $plugin_key );
    423                 $plugin_item = self::extract_plugin_from_list( $plugin_key, $plugins_available_in_subscriptions );
    424                 $url         = self::get_file_download_link( $plugin_item, 'plugin' );
    425 
    426                 $download_status = $this->download_plugin( ['url' => $url] );
    427 
    428                 if ( ! $download_status['success'] ) {
    429                     $update_failed_plugins[$plugin_base] = $plugin;
    430                 } else {
    431                     $updated_plugins[$plugin_base] = $plugin;
    432                 }
    433 
    434             }
    435 
    436             $status['updated_plugins']       = $updated_plugins;
    437             $status['update_failed_plugins'] = $update_failed_plugins;
    438 
    439             if ( ! empty( $updated_plugins ) && ! empty( $update_failed_plugins ) ) {
    440                 $status['success'] = false;
    441                 $status['message'] = __( 'Some of the plugin could not update', 'directorist' );
    442             }
    443 
    444             if ( empty( $update_failed_plugins ) ) {
    445                 $status['success'] = true;
    446                 $status['message'] = __( 'All the plugins are updated successfully', 'directorist' );
    447             }
    448 
    449             if ( empty( $updated_plugins ) ) {
    450                 $status['success'] = true;
    451                 $status['message'] = __( 'No plugins could not update', 'directorist' );
    452             }
    453 
    454             return ['status' => $status];
    455         }
    456 
    457         // extract_plugin_from_list
    458         public static function extract_plugin_from_list( $plugin_key = '', $list = [] ) {
    459 
    460             $plugin_item = [];
    461             $plugin_key  = ( is_string( $plugin_key ) ) ? $plugin_key : '';
    462             $list        = ( is_array( $list ) ) ? $list : [];
    463 
    464             $keys_in_list = array_keys( $list );
    465 
    466             if ( in_array( $plugin_key, $keys_in_list ) ) {
    467                 $plugin_item = $list[$plugin_key];
    468             }
    469 
    470             $plugin_alias_key = self::get_extension_alias_key( $plugin_key );
    471 
    472             if ( in_array( $plugin_alias_key, $keys_in_list ) ) {
    473                 $plugin_item = $list[$plugin_alias_key];
    474             }
    475 
    476             return $plugin_item;
    477         }
    478 
    479         // filter_plugin_key_from_base_name
    480         public static function filter_plugin_key_from_base_name( $plugin_key = '' ) {
    481 
    482             if ( ! is_string( $plugin_key ) ) {
    483                 return '';
    484             }
    485 
    486             $plugin_key = preg_replace( '/\/.+/', '', $plugin_key );
    487 
    488             return $plugin_key;
    489         }
    490 
    491         // get_extension_alias_key
    492         public static function get_extension_alias_key( string $plugin_key = '' ) {
    493             $extensions_aliases      = self::$extensions_aliases;
    494             $extensions_aliases_keys = ( is_array( $extensions_aliases ) && ! empty( $extensions_aliases ) ) ? array_keys( $extensions_aliases ) : [];
    495             $plugin_alias_key        = in_array( $plugin_key, $extensions_aliases_keys ) ? $extensions_aliases[$plugin_key] : '';
    496 
    497             return $plugin_alias_key;
    498         }
    499 
    500         // plugins_bulk_action
    501         public function plugins_bulk_action() {
    502             $status = ['success' => true];
    503 
    504             if ( ! $this->is_verified_nonce() ) {
    505                 $status['success'] = false;
    506                 $status['message'] = 'Invalid request';
    507 
    508                 wp_send_json( ['status' => $status] );
    509             }
    510 
    511             $task         = ( isset( $_POST['task'] ) ) ? $_POST['task'] : '';
    512             $plugin_items = ( isset( $_POST['plugin_items'] ) ) ? $_POST['plugin_items'] : '';
    513 
    514             // Validation
    515             if ( empty( $task ) ) {
    516                 $status['success'] = false;
    517                 $status['message'] = 'No task found';
    518                 wp_send_json( ['status' => $status] );
    519             }
    520 
    521             if ( empty( $plugin_items ) ) {
    522                 $status['success'] = false;
    523                 $status['message'] = 'No plugin items found';
    524                 wp_send_json( ['status' => $status] );
    525             }
    526 
    527             // Activate
    528             if ( 'activate' === $task ) {
    529                 foreach ( $plugin_items as $plugin ) {
    530                     activate_plugin( $plugin );
    531                 }
    532             }
    533 
    534             // Deactivate
    535             if ( 'deactivate' === $task ) {
    536                 deactivate_plugins( $plugin_items );
    537             }
    538 
    539             // Uninstall
    540             if ( 'uninstall' === $task ) {
    541                 delete_plugins( $plugin_items );
    542             }
    543 
    544             wp_send_json( ['status' => $status] );
    545         }
    546 
    547         // activate_theme
    548         public function activate_theme() {
    549             $status           = ['success' => true];
    550             $theme_stylesheet = ( isset( $_POST['theme_stylesheet'] ) ) ? $_POST['theme_stylesheet'] : '';
    551 
    552             if ( ! $this->is_verified_nonce() ) {
    553                 $status['success'] = false;
    554                 $status['message'] = 'Invalid request';
    555 
    556                 wp_send_json( ['status' => $status] );
    557             }
    558 
    559             if ( empty( $theme_stylesheet ) ) {
    560                 $status['success'] = false;
    561                 $status['message'] = __( 'Theme\'s stylesheet is missing', 'directorist' );
    562 
    563                 wp_send_json( ['status' => $status] );
    564             }
    565 
    566             switch_theme( $theme_stylesheet );
    567             wp_send_json( ['status' => $status] );
    568         }
    569 
    570         // activate_plugin
    571         public function activate_plugin() {
    572             $status     = ['success' => true];
    573             $plugin_key = ( isset( $_POST['item_key'] ) ) ? $_POST['item_key'] : '';
    574 
    575             if ( ! $this->is_verified_nonce() ) {
    576                 $status['success'] = false;
    577                 $status['message'] = 'Invalid request';
    578 
    579                 wp_send_json( ['status' => $status] );
    580             }
    581 
    582             if ( empty( $plugin_key ) ) {
    583                 $status['success'] = false;
    584                 $status['log']     = ['$plugin_key' => $plugin_key];
    585                 $status['message'] = __( 'Please specefy which plugin to activate', 'directorist' );
    586 
    587                 wp_send_json( ['status' => $status] );
    588             }
    589 
    590             activate_plugin( $plugin_key );
    591             wp_send_json( ['status' => $status] );
    592         }
    593 
    594         // handle_theme_update_request
    595         public function handle_theme_update_request() {
    596 
    597             if ( ! $this->is_verified_nonce() ) {
    598                 $status            = [];
    599                 $status['success'] = false;
    600                 $status['message'] = 'Invalid request';
    601 
    602                 wp_send_json( ['status' => $status] );
    603             }
    604 
    605             $theme_stylesheet = ( isset( $_POST['theme_stylesheet'] ) ) ? $_POST['theme_stylesheet'] : '';
    606 
    607             $update_theme_status = $this->update_the_themes( ['theme_stylesheet' => $theme_stylesheet] );
    608             wp_send_json( $update_theme_status );
    609         }
    610 
    611         // update_the_theme
    612         public function update_the_themes( array $args = [] ) {
    613             $default = ['theme_stylesheet' => ''];
    614             $args    = array_merge( $default, $args );
    615 
    616             $status = ['success' => true];
    617 
    618             $theme_stylesheet    = $args['theme_stylesheet'];
    619             $theme_updates       = get_site_transient( 'update_themes' );
    620             $outdated_themes     = $theme_updates->response;
    621             $outdated_themes_key = ( is_array( $outdated_themes ) ) ? array_keys( $outdated_themes ) : [];
    622 
    623             if ( empty( $outdated_themes_key ) ) {
    624                 $status['message'] = __( 'All themes are up to date', 'directorist' );
    625 
    626                 return ['status' => $status];
    627             }
    628 
    629             if ( ! empty( $theme_stylesheet ) && ! in_array( $theme_stylesheet, $outdated_themes_key ) ) {
    630                 $status['message'] = __( 'The theme is up to date', 'directorist' );
    631 
    632                 return ['status' => $status];
    633             }
    634 
    635             $themes_available_in_subscriptions      = self::get_purchased_theme_list();
    636             $themes_available_in_subscriptions_keys = ( is_array( $themes_available_in_subscriptions ) ) ? array_keys( $themes_available_in_subscriptions ) : [];
    637 
    638             // Check if stylesheet is present
    639             if ( ! empty( $theme_stylesheet ) ) {
    640 
    641                 // Check if the the update is available
    642                 if ( ! in_array( $theme_stylesheet, $outdated_themes_key ) ) {
    643                     $status['success'] = false;
    644                     $status['message'] = __( 'The theme is already upto date', 'directorist' );
    645 
    646                     return ['status' => $status];
    647                 }
    648 
    649                 $theme_item = $themes_available_in_subscriptions[$theme_stylesheet];
    650                 $url        = self::get_file_download_link( $theme_item, 'theme' );
    651                 $url        = ( empty( $url ) && ! empty( $outdated_themes[ $theme_stylesheet ]['package'] ) ) ? $outdated_themes[ $theme_stylesheet ]['package'] : $url;
    652                
    653                 $download_status = $this->download_theme( ['url' => $url] );
    654                
    655                 if ( ! $download_status['success'] ) {
    656                     $status['success'] = false;
    657                     $status['message'] = __( 'The theme could not update', 'directorist' );
    658                     $status['log']     = $download_status['message'];
    659                 } else {
    660                     $status['success'] = true;
    661                     $status['message'] = __( 'The theme has been updated successfully', 'directorist' );
    662                     $status['log']     = $download_status['message'];
    663                     wp_clean_themes_cache();
    664                 };
    665 
    666                 return ['status' => $status];
    667             }
    668 
    669             // Update all
    670             $updated_themes       = [];
    671             $update_failed_themes = [];
    672 
    673             foreach ( $outdated_themes as $theme_key => $theme ) {
    674                 $url = '';
    675 
    676                 if ( ! in_array( $theme_key, $themes_available_in_subscriptions_keys ) ) {
    677                     continue;
    678                 }
    679 
    680                 $theme_item = $themes_available_in_subscriptions[$theme_key];
    681                 $url        = self::get_file_download_link( $theme_item, 'theme' );
    682 
    683                 $download_status = $this->download_theme( ['url' => $url] );
    684 
    685                 if ( ! $download_status['success'] ) {
    686                     $update_failed_themes[$theme_key] = $theme;
    687                 } else {
    688                     $updated_themes[$theme_key] = $theme;
    689                 }
    690 
    691             }
    692 
    693             $status['updated_themes']       = $updated_themes;
    694             $status['update_failed_themes'] = $update_failed_themes;
    695 
    696             if ( ! empty( $updated_themes ) && ! empty( $update_failed_themes ) ) {
    697                 $status['success'] = false;
    698                 $status['message'] = __( 'Some of the theme could not update', 'directorist' );
    699             }
    700 
    701             if ( empty( $update_failed_themes ) ) {
    702                 $status['success'] = true;
    703                 $status['message'] = __( 'All the themes are updated successfully', 'directorist' );
    704             }
    705 
    706             if ( empty( $updated_themes ) ) {
    707                 $status['success'] = true;
    708                 $status['message'] = __( 'No themes could not update', 'directorist' );
    709             }
    710 
    711             return ['status' => $status];
    712         }
    713 
    714         // authenticate_the_customer
    715         public function authenticate_the_customer() {
    716 
    717             $status = ['success' => true, 'log' => []];
    718 
    719             if ( ! $this->is_verified_nonce() ) {
    720                 $status['success']                 = false;
    721                 $status['log']['invalid_request'] = [
    722                     'type'    => 'error',
    723                     'message' => 'Invalid request',
    724                 ];
    725             }
    726 
    727             // Get form data
    728             $username = ( isset( $_POST['username'] ) ) ? $_POST['username'] : '';
    729             $password = ( isset( $_POST['password'] ) ) ? urlencode( $_POST['password'] ) : '';
    730 
    731             // Validate username
    732             if ( empty( $username ) && ! empty( $password ) ) {
    733                 $status['success']                 = false;
    734                 $status['log']['username_missing'] = [
    735                     'type'    => 'error',
    736                     'message' => 'Username is required',
    737                 ];
    738             }
    739 
    740             // Validate password
    741             if ( empty( $password ) && ! empty( $username ) ) {
    742                 $status['success']                 = false;
    743                 $status['log']['password_missing'] = [
    744                     'type'    => 'error',
    745                     'message' => 'Password is required',
    746                 ];
    747             }
    748 
    749             // Validate username && password
    750             if ( empty( $password ) && empty( $username ) ) {
    751                 $status['success']                 = false;
    752                 $status['log']['password_missing'] = [
    753                     'type'    => 'error',
    754                     'message' => 'Username and Password is required',
    755                 ];
    756             }
    757 
    758             if ( ! $status['success'] ) {
    759                 wp_send_json( ['status' => $status] );
    760             }
    761 
    762             // Get licencing data
    763             $response = self::remote_authenticate_user( ['user' => $username, 'password' => $password] );
    764 
    765             // Validate response
    766             if ( ! $response['success'] ) {
    767                 $status['success']      = false;
    768                 $default_status_message = ( isset( $response['message'] ) ) ? $response['message'] : '';
    769 
    770                 if ( isset( $response['log'] ) && isset( $response['log']['errors'] ) && is_array( $response['log']['errors'] ) ) {
    771                     foreach ( $response['log']['errors'] as $error_key => $error_value ) {
    772                         $status['log'][$error_key] = [
    773                             'type'    => 'error',
    774                             'message' => ( is_array( $error_value ) ) ? $error_value[0] : $error_value,
    775                         ];
    776                     }
    777 
    778                 } else {
    779                     $status['log']['unknown_error'] = [
    780                         'type'    => 'error',
    781                         'message' => ( ! empty( $default_status_message ) ) ? $default_status_message : __( 'Something went wrong', 'directorist' ),
    782                     ];
    783                 }
    784 
    785                 wp_send_json( ['status' => $status, 'response_body' => $response] );
    786             }
    787 
    788             $previous_username = get_user_meta( get_current_user_id(), '_atbdp_subscribed_username', true );
    789 
    790             // Enable Sassion
    791             update_user_meta( get_current_user_id(), '_atbdp_subscribed_username', $username );
    792             update_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
    793 
    794             $plugins_available_in_subscriptions = self::get_purchased_extension_list();
    795             $themes_available_in_subscriptions  = self::get_purchased_theme_list();
    796             $has_previous_subscriptions         = ( ! empty( $plugins_available_in_subscriptions ) || ! empty( $themes_available_in_subscriptions ) ) ? true : false;
    797 
    798             if ( $previous_username === $username && $has_previous_subscriptions ) {
    799                 // Enable Sassion
    800                 update_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
    801                 $this->refresh_purchase_status( $args = ['password' => $password] );
    802 
    803                 wp_send_json( ['status' => $status, 'has_previous_subscriptions' => true] );
    804             }
    805 
    806             delete_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions' );
    807             delete_user_meta( get_current_user_id(), '_themes_available_in_subscriptions' );
    808 
    809             $license_data = $response['license_data'];
    810 
    811             // Update user meta
    812             if ( ! empty( $license_data['themes'] ) ) {
    813                 $themes_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['themes'] );
    814                 update_user_meta( get_current_user_id(), '_themes_available_in_subscriptions', $themes_available_in_subscriptions );
    815             }
    816 
    817             if ( ! empty( $license_data['plugins'] ) ) {
    818                 $plugins_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['plugins'] );
    819                 update_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions', $plugins_available_in_subscriptions );
    820             }
    821 
    822             $status['success']                 = true;
    823             $status['log']['login_successful'] = [
    824                 'type'    => 'success',
    825                 'message' => 'Login is successful',
    826             ];
    827 
    828             wp_send_json( ['status' => $status, 'license_data' => $license_data] );
    829         }
    830 
    831         // handle_refresh_purchase_status_request
    832         public function handle_refresh_purchase_status_request() {
    833             $status   = ['success' => true];
    834 
    835             if ( ! $this->is_verified_nonce() ) {
    836                 $status['success'] = false;
    837                 $status['message'] = 'Invalid request';
    838 
    839                 wp_send_json( ['status' => $status] );
    840             }
    841 
    842             $password = ( isset( $_POST['password'] ) ) ? $_POST['password'] : '';
    843 
    844             $status = $this->refresh_purchase_status( ['password' => $password] );
    845 
    846             wp_send_json( $status );
    847         }
    848 
    849         // refresh_purchase_status
    850         public function refresh_purchase_status( array $args = [] ) {
    851             $status  = ['success' => true];
    852             $default = ['password' => ''];
    853             $args    = array_merge( $default, $args );
    854 
    855             if ( empty( $args['password'] ) ) {
    856                 $status['success'] = false;
    857                 $status['message'] = __( 'Password is required', 'directorist' );
    858 
    859                 return ['status' => $status];
    860             }
    861 
    862             $username = get_user_meta( get_current_user_id(), '_atbdp_subscribed_username', true );
    863             $password = $args['password'];
    864 
    865             if ( empty( $username ) ) {
    866                 $status['success'] = false;
    867                 $status['reload']  = true;
    868                 $status['message'] = __( 'Sassion is destroyed, please sign-in again', 'directorist' );
    869 
    870                 delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
    871 
    872                 return ['status' => $status];
    873             }
    874 
    875             // Get licencing data
    876             $authentication = self::remote_authenticate_user( ['user' => $username, 'password' => $password] );
    877 
    878             // Validate response
    879             if ( ! $authentication['success'] ) {
    880                 $status['success'] = false;
    881                 $status['message'] = $authentication['message'];
    882 
    883                 return ['status' => $status, 'response_body' => $authentication];
    884             }
    885 
    886             $license_data = $authentication['license_data'];
    887 
    888             // Update user meta
    889             if ( ! empty( $license_data['themes'] ) ) {
    890                 $themes_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['themes'] );
    891                 update_user_meta( get_current_user_id(), '_themes_available_in_subscriptions', $themes_available_in_subscriptions );
    892             }
    893 
    894             if ( ! empty( $license_data['plugins'] ) ) {
    895                 $plugins_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['plugins'] );
    896                 update_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions', $plugins_available_in_subscriptions );
    897             }
    898 
    899             $status['success'] = true;
    900             $status['message'] = __( 'Your purchase has been refreshed successfuly', 'directorist' );
    901 
    902             return ['status' => $status];
    903         }
    904 
    905         // handle_close_subscriptions_sassion_request
    906         public function handle_close_subscriptions_sassion_request() {
    907 
    908             if ( ! $this->is_verified_nonce() ) {
    909                 $status            = [];
    910                 $status['success'] = false;
    911                 $status['message'] = 'Invalid request';
    912 
    913                 wp_send_json( ['status' => $status] );
    914             }
    915 
    916             $hard_logout_state = ( isset( $_POST['hard_logout'] ) ) ? $_POST['hard_logout'] : false;
    917             $status            = $this->close_subscriptions_sassion( ['hard_logout' => $hard_logout_state] );
    918 
    919             wp_send_json( $status );
    920         }
    921 
    922         // close_subscriptions_sassion
    923         public function close_subscriptions_sassion( array $args = [] ) {
    924             $default = ['hard_logout' => false];
    925             $args    = array_merge( $default, $args );
    926 
    927             $status = ['success' => true];
    928             delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
    929 
    930             if ( $args['hard_logout'] ) {
    931                 delete_user_meta( get_current_user_id(), '_atbdp_subscribed_username' );
    932                 delete_user_meta( get_current_user_id(), '_themes_available_in_subscriptions' );
    933                 delete_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions' );
    934             }
    935 
    936             return $status;
    937         }
    938 
    939         // prepare_available_in_subscriptions
    940         public function prepare_available_in_subscriptions( array $products = [] ) {
    941             $available_in_subscriptions = [];
    942 
    943             if ( empty( $products ) ) {
    944                 return $available_in_subscriptions;
    945             }
    946 
    947             foreach ( $products as $product ) {
    948                 $product_key                              = $this->get_product_key_from_permalink( $product['permalink'] );
    949                 $available_in_subscriptions[$product_key] = $product;
    950             }
    951 
    952             return $available_in_subscriptions;
    953         }
    954 
    955         // get_product_key_from_permalink
    956         public function get_product_key_from_permalink( string $permalink = '' ) {
    957             $product_key = str_replace( 'http://directorist.com/product/', '', $permalink );
    958             $product_key = str_replace( 'https://directorist.com/product/', '', $product_key );
    959             $product_key = str_replace( '/', '', $product_key );
    960 
    961             return $product_key;
    962         }
    963 
    964         // handle_license_activation_request
    965         public function handle_license_activation_request() {
    966             $status       = ['success' => true];
    967             $license_item = ( isset( $_POST['license_item'] ) ) ? $_POST['license_item'] : '';
    968             $product_type = ( isset( $_POST['product_type'] ) ) ? $_POST['product_type'] : '';
    969 
    970             if ( empty( $license_item ) ) {
    971                 $status['success'] = false;
    972                 $status['message'] = 'License item is missing';
    973 
    974                 wp_send_json( ['status' => $status] );
    975             }
    976 
    977             if ( empty( $product_type ) ) {
    978                 $status['success'] = false;
    979                 $status['message'] = 'Product type is required';
    980 
    981                 wp_send_json( ['status' => $status] );
    982             }
    983 
    984             $activation_status = $this->activate_license( $license_item, $product_type );
    985             $status['success'] = $activation_status['success'];
    986 
    987             wp_send_json( ['status' => $status, 'activation_status' => $activation_status] );
    988         }
    989 
    990         // activate_license
    991         public function activate_license( $license_item, $product_type = '' ) {
    992             $status            = ['success' => true];
    993             $activation_status = self::remote_activate_license( $license_item );
    994 
    995             if ( empty( $activation_status['success'] ) ) {
    996                 $status['success'] = false;
    997             }
    998 
    999             $status['response'] = $activation_status['response'];
    1000             $product_type       = self::filter_product_type( $product_type );
    1001 
    1002             if ( $status['success'] && ( 'plugin' === $product_type || 'theme' === $product_type ) ) {
    1003                 $user_purchased = get_user_meta( get_current_user_id(), '_atbdp_purchased_products', true );
    1004 
    1005                 if ( empty( $user_purchased ) ) {
    1006                     $user_purchased = [];
    1007                 }
    1008 
    1009                 if ( empty( $user_purchased[$product_type] ) ) {
    1010                     $user_purchased[$product_type] = [];
    1011                 }
    1012 
    1013                 $purchased_items = $user_purchased[$product_type];
    1014 
    1015                 // Append new product
    1016                 $product_key                   = $this->get_product_key_from_permalink( $license_item['permalink'] );
    1017                 $purchased_items[$product_key] = $license_item;
    1018 
    1019                 $user_purchased[$product_type] = $purchased_items;
    1020                 update_user_meta( get_current_user_id(), '_atbdp_purchased_products', $user_purchased );
    1021 
    1022                 $status['purchased_products'] = $user_purchased;
    1023             }
    1024 
    1025             return $status;
    1026         }
    1027 
    1028         // handle_file_install_request_from_subscriptions
    1029         public function handle_file_install_request_from_subscriptions() {
    1030             $item_key = ( isset( $_POST['item_key'] ) ) ? $_POST['item_key'] : '';
    1031             $type     = ( isset( $_POST['type'] ) ) ? $_POST['type'] : '';
    1032 
    1033             if ( ! $this->is_verified_nonce() ) {
    1034                 $status            = [];
    1035                 $status['success'] = false;
    1036                 $status['message'] = 'Invalid request';
    1037 
    1038                 wp_send_json( ['status' => $status] );
    1039             }
    1040 
    1041             $installation_status = $this->install_file_from_subscriptions( ['item_key' => $item_key, 'type' => $type] );
    1042             wp_send_json( $installation_status );
    1043         }
    1044 
    1045         // install_file_from_subscriptions
    1046         public function install_file_from_subscriptions( array $args = [] ) {
    1047             $default = ['item_key' => '', 'type' => ''];
    1048             $args    = array_merge( $default, $args );
    1049 
    1050             $item_key = $args['item_key'];
    1051             $type     = $args['type'];
    1052 
    1053             $status = ['success' => true];
    1054 
    1055             if ( empty( $item_key ) ) {
    1056                 $status['success'] = false;
    1057                 $status['message'] = __( 'Item key is missing', 'directorist' );
    1058 
    1059                 return ['status' => $status];
    1060             }
    1061 
    1062             if ( empty( $type ) ) {
    1063                 $status['success'] = false;
    1064                 $status['message'] = __( 'Type not specified', 'directorist' );
    1065 
    1066                 return ['status' => $status];
    1067             }
    1068 
    1069             if ( 'plugin' !== $type && 'theme' !== $type ) {
    1070                 $status['success'] = false;
    1071                 $status['message'] = __( 'Invalid type', 'directorist' );
    1072 
    1073                 return ['status' => $status];
    1074             }
    1075 
    1076             if ( 'theme' === $type ) {
    1077                 $available_in_subscriptions = self::get_purchased_theme_list();
    1078             }
    1079 
    1080             if ( 'plugin' === $type ) {
    1081                 $available_in_subscriptions = self::get_purchased_extension_list();
    1082             }
    1083 
    1084             if ( empty( $available_in_subscriptions ) ) {
    1085                 $status['success'] = false;
    1086                 $status['message'] = __( 'Nothing available in subscriptions', 'directorist' );
    1087 
    1088                 return ['status' => $status];
    1089             }
    1090 
    1091             if ( empty( $available_in_subscriptions[$item_key] ) ) {
    1092                 $status['success'] = false;
    1093                 $status['message'] = __( 'The item is not available in your subscriptions', 'directorist' );
    1094 
    1095                 return ['status' => $status];
    1096             }
    1097 
    1098             $installing_file = $available_in_subscriptions[$item_key];
    1099 
    1100             $activatation_status = $this->activate_license( $installing_file, $type );
    1101             $status['log']       = $activatation_status;
    1102 
    1103             if ( ! $activatation_status['success'] ) {
    1104                 $status['success'] = false;
    1105                 $status['message'] = __( 'The license is not valid, please check you subscription.', 'directorist' );
    1106 
    1107                 return ['status' => $status];
    1108             }
    1109 
    1110             $link          = $installing_file['download_link'];
    1111             $download_args = ['url' => $link];
    1112 
    1113             if ( 'plugin' === $type ) {
    1114                 $download_status = $this->download_plugin( $download_args );
    1115             }
    1116 
    1117             if ( 'theme' === $type ) {
    1118                 $download_status = $this->download_theme( $download_args );
    1119             }
    1120 
    1121             if ( ! $download_status['success'] ) {
    1122                 return $download_status;
    1123             }
    1124 
    1125             $status['success'] = true;
    1126             $status['message'] = __( 'Installed Successfully', 'directorist' );
    1127 
    1128             return ['status' => $status];
    1129         }
    1130 
    1131         // handle_plugin_download_request
    1132         public function handle_file_download_request() {
    1133             $status        = ['success' => true];
    1134 
    1135             if ( ! $this->is_verified_nonce() ) {
    1136                 $status['success'] = false;
    1137                 $status['message'] = 'Invalid request';
    1138 
    1139                 wp_send_json( ['status' => $status] );
    1140             }
    1141 
    1142             $download_item = ( isset( $_POST['download_item'] ) ) ? $_POST['download_item'] : '';
    1143             $type          = ( isset( $_POST['type'] ) ) ? $_POST['type'] : '';
    1144 
    1145             if ( empty( $download_item ) ) {
    1146                 $status['success'] = false;
    1147                 $status['message'] = 'Download item is missing';
    1148 
    1149                 wp_send_json( ['status' => $status] );
    1150             }
    1151 
    1152             if ( empty( $type ) ) {
    1153                 $status['success'] = false;
    1154                 $status['message'] = 'Type not specified';
    1155 
    1156                 wp_send_json( ['status' => $status] );
    1157             }
    1158 
    1159             if ( 'plugin' !== $type && 'theme' !== $type ) {
    1160                 $status['success'] = false;
    1161                 $status['message'] = 'Invalid type';
    1162 
    1163                 wp_send_json( ['status' => $status] );
    1164             }
    1165 
    1166             $activate_license = $this->activate_license( $download_item, $type );
    1167 
    1168             if ( ! $activate_license['success'] ) {
    1169                 $status['success'] = false;
    1170                 $status['message'] = __( 'Activation failed', 'directorist' );
    1171                 $status['ref']     = $activate_license;
    1172 
    1173                 wp_send_json( ['status' => $status] );
    1174             }
    1175 
    1176             if ( empty( $download_item['download_link'] ) ) {
    1177                 $status['success'] = false;
    1178                 $status['message'] = 'Download Link not found';
    1179 
    1180                 wp_send_json( ['status' => $status] );
    1181             }
    1182 
    1183             if ( ! is_string( $download_item['download_link'] ) ) {
    1184                 $status['success'] = false;
    1185                 $status['message'] = 'Download Link not found';
    1186 
    1187                 wp_send_json( ['status' => $status] );
    1188             }
    1189 
    1190             $link          = $download_item['download_link'];
    1191             $download_args = ['url' => $link];
    1192 
    1193             if ( 'plugin' === $type ) {
    1194                 $download_status = $this->download_plugin( $download_args );
    1195             }
    1196 
    1197             if ( 'theme' === $type ) {
    1198                 $download_status = $this->download_theme( $download_args );
    1199             }
    1200 
    1201             if ( ! $download_status['success'] ) {
    1202                 return $download_status;
    1203             }
    1204 
    1205             $status['success'] = true;
    1206             $status['message'] = __( 'Donloaded', 'directorist' );
    1207 
    1208             wp_send_json( ['status' => $status] );
    1209         }
    1210 
    1211         // download_plugin
    1212         public function download_plugin( array $args = [] ) {
    1213             $status = ['success' => false];
    1214 
    1215             $default = ['url' => '', 'init_wp_filesystem' => true];
    1216             $args    = array_merge( $default, $args );
    1217 
    1218             if ( empty( $default ) ) {
    1219                 return $status;
    1220             }
    1221 
    1222             if ( empty( $args['url'] ) ) {
    1223                 $status['success'] = false;
    1224                 $status['message'] = __( 'Download link not found', 'directorist' );
    1225 
    1226                 return $status;
    1227             }
    1228 
    1229             global $wp_filesystem;
    1230 
    1231             if ( $args['init_wp_filesystem'] ) {
    1232 
    1233                 if ( ! function_exists( 'WP_Filesystem' ) ) {
    1234                     include ABSPATH . 'wp-admin/includes/file.php';
    1235                 }
    1236 
    1237                 WP_Filesystem();
    1238             }
    1239 
    1240             $plugin_path = ABSPATH . 'wp-content/plugins';
    1241             $temp_dest   = "{$plugin_path}/atbdp-temp-dir";
    1242             $file_url    = $args['url'];
    1243             $file_name   = basename( $file_url );
    1244             $tmp_file    = download_url( $file_url );
    1245 
    1246             if ( ! is_string( $tmp_file ) ) {
    1247                 $status['success']  = false;
    1248                 $status['tmp_file'] = $tmp_file;
    1249                 $status['file_url'] = $file_url;
    1250                 $status['message']  = 'Could not download the file';
    1251 
    1252                 return $status;
    1253             }
    1254 
    1255             // Make Temp Dir
    1256             if ( $wp_filesystem->exists( $temp_dest ) ) {
    1257                 $wp_filesystem->delete( $temp_dest, true );
    1258             }
    1259 
    1260             $wp_filesystem->mkdir( $temp_dest );
    1261 
    1262             if ( ! file_exists( $temp_dest ) ) {
    1263                 $status['success'] = false;
    1264                 $status['message'] = __( 'Could not create temp directory', 'directorist' );
    1265 
    1266                 return $status;
    1267             }
    1268 
    1269             // Sets file temp destination.
    1270             $file_path = "{$temp_dest}/{$file_name}";
    1271 
    1272             set_error_handler( function ( $errno, $errstr, $errfile, $errline ) {
    1273                 // error was suppressed with the @-operator
    1274                 if ( 0 === error_reporting() ) {
    1275                     return false;
    1276                 }
    1277 
    1278                 throw new ErrorException( $errstr, 0, $errno, $errfile, $errline );
    1279             } );
    1280 
    1281             // Copies the file to the final destination and deletes temporary file.
    1282             try {
    1283                 copy( $tmp_file, $file_path );
    1284             } catch ( Exception $e ) {
    1285                 $status['success'] = false;
    1286                 $status['message'] = $e->getMessage();
    1287 
    1288                 return $status;
    1289             }
    1290 
    1291             @unlink( $tmp_file );
    1292             unzip_file( $file_path, $temp_dest );
    1293 
    1294             if ( "{$plugin_path}/" !== $file_path || $file_path !== $plugin_path ) {
    1295                 @unlink( $file_path );
    1296             }
    1297 
    1298             $extracted_file_dir = glob( "{$temp_dest}/*", GLOB_ONLYDIR );
    1299 
    1300             foreach ( $extracted_file_dir as $dir_path ) {
    1301                 $dir_name  = basename( $dir_path );
    1302                 $dest_path = "{$plugin_path}/{$dir_name}";
    1303 
    1304                 // Delete Previous Files if Exists
    1305                 if ( $wp_filesystem->exists( $dest_path ) ) {
    1306                     $wp_filesystem->delete( $dest_path, true );
    1307                 }
    1308 
    1309             }
    1310 
    1311             copy_dir( $temp_dest, $plugin_path );
    1312             $wp_filesystem->delete( $temp_dest, true );
    1313 
    1314             $status['success'] = true;
    1315             $status['message'] = __( 'The plugin has been downloaded successfully', 'directorist' );
    1316 
    1317             return $status;
    1318         }
    1319 
    1320         // download_theme
    1321         public function download_theme( array $args = [] ) {
    1322             $status = ['success' => false];
    1323 
    1324             $default = ['url' => '', 'init_wp_filesystem' => true];
    1325             $args    = array_merge( $default, $args );
    1326 
    1327             if ( empty( $default ) ) {
    1328                 return $status;
    1329             }
    1330 
    1331             if ( empty( $args['url'] ) ) {
    1332                 $status['success'] = false;
    1333                 $status['message'] = __( 'Download link not found', 'directorist' );
    1334 
    1335                 return $status;
    1336             }
    1337 
    1338             global $wp_filesystem;
    1339 
    1340             if ( $args['init_wp_filesystem'] ) {
    1341 
    1342                 if ( ! function_exists( 'WP_Filesystem' ) ) {
    1343                     include ABSPATH . 'wp-admin/includes/file.php';
    1344                 }
    1345 
    1346                 WP_Filesystem();
    1347             }
    1348 
    1349             $theme_path = ABSPATH . 'wp-content/themes';
    1350             $temp_dest  = "{$theme_path}/atbdp-temp-dir";
    1351             $file_url   = $args['url'];
    1352             $file_name  = basename( $file_url );
    1353             $tmp_file   = download_url( $file_url );
    1354 
    1355             if ( ! is_string( $tmp_file ) ) {
    1356                 $status['success']  = false;
    1357                 $status['tmp_file'] = $tmp_file;
    1358                 $status['file_url'] = $file_url;
    1359                 $status['message']  = 'Could not download the file';
    1360 
    1361                 return $status;
    1362             }
    1363 
    1364             // Make Temp Dir
    1365             if ( $wp_filesystem->exists( $temp_dest ) ) {
    1366                 $wp_filesystem->delete( $temp_dest, true );
    1367             }
    1368 
    1369             $wp_filesystem->mkdir( $temp_dest );
    1370 
    1371             if ( ! file_exists( $temp_dest ) ) {
    1372                 $status['success'] = false;
    1373                 $status['message'] = __( 'Could not create temp directory', 'directorist' );
    1374 
    1375                 return $status;
    1376             }
    1377 
    1378             // Sets file temp destination.
    1379             $file_path = "{$temp_dest}/{$file_name}";
    1380 
    1381             set_error_handler( function ( $errno, $errstr, $errfile, $errline ) {
    1382                 // error was suppressed with the @-operator
    1383                 if ( 0 === error_reporting() ) {
    1384                     return false;
    1385                 }
    1386 
    1387                 throw new ErrorException( $errstr, 0, $errno, $errfile, $errline );
    1388             } );
    1389 
    1390             // Copies the file to the final destination and deletes temporary file.
    1391             try {
    1392                 copy( $tmp_file, $file_path );
    1393             } catch ( Exception $e ) {
    1394                 $status['success'] = false;
    1395                 $status['message'] = $e->getMessage();
    1396 
    1397                 return $status;
    1398             }
    1399 
    1400             @unlink( $tmp_file );
    1401             unzip_file( $file_path, $temp_dest );
    1402 
    1403             if ( "{$theme_path}/" !== $file_path || $file_path !== $theme_path ) {
    1404                 @unlink( $file_path );
    1405             }
    1406 
    1407             $extracted_file_dir = glob( "{$temp_dest}/*", GLOB_ONLYDIR );
    1408             $dir_path           = $extracted_file_dir[0];
    1409 
    1410             $dir_name  = basename( $dir_path );
    1411             $dest_path = "{$theme_path}/{$dir_name}";
    1412             $zip_files = glob( "{$dir_path}/*.zip" );
    1413 
    1414             // If has child theme
    1415             if ( ! empty( $zip_files ) ) {
    1416                 $new_temp_dest = "{$temp_dest}/_temp_dest";
    1417                 $this->install_themes_from_zip_files( $zip_files, $new_temp_dest, $wp_filesystem );
    1418 
    1419                 copy_dir( $new_temp_dest, $theme_path );
    1420                 $wp_filesystem->delete( $temp_dest, true );
    1421 
    1422                 $status['success'] = false;
    1423                 $status['message'] = __( 'The theme has been downloaded successfully', 'directorist' );
    1424             }
    1425 
    1426             // Delete Previous Files If Exists
    1427             if ( $wp_filesystem->exists( $dest_path ) ) {
    1428                 $wp_filesystem->delete( $dest_path, true );
    1429             }
    1430 
    1431             copy_dir( $temp_dest, $theme_path );
    1432             $wp_filesystem->delete( $temp_dest, true );
    1433 
    1434             $status['success'] = true;
    1435             $status['message'] = __( 'The theme has been downloaded successfully', 'directorist' );
    1436 
    1437             return $status;
    1438         }
    1439 
    1440         // install_theme_from_zip
    1441         public function install_themes_from_zip_files( $zip_files, $temp_dest, $wp_filesystem ) {
    1442             $theme_path = ABSPATH . 'wp-content/themes';
    1443 
    1444             foreach ( $zip_files as $zip ) {
    1445                 $file     = basename( $zip );
    1446                 $dir_name = str_replace( '.zip', '', $file );
    1447 
    1448                 if ( preg_match( '/[-]child[.]zip$/', $file ) ) {
    1449                     $temp_dest_path = "{$temp_dest}/{$dir_name}";
    1450                     $main_dest_path = "{$theme_path}/{$dir_name}";
    1451 
    1452                     // Skip if has child
    1453                     if ( $wp_filesystem->exists( $main_dest_path ) ) {
    1454                         continue;
    1455                     }
    1456 
    1457                     $wp_filesystem->mkdir( $temp_dest_path );
    1458                     unzip_file( $zip, $temp_dest_path );
    1459                     // @unlink( $zip );
    1460 
    1461                     continue;
    1462                 }
    1463 
    1464                 $main_dest_path = "{$theme_path}/{$dir_name}";
    1465 
    1466                 if ( $wp_filesystem->exists( $main_dest_path ) ) {
    1467                     $wp_filesystem->delete( $main_dest_path, true );
    1468                 }
    1469 
    1470                 unzip_file( $zip, $temp_dest );
    1471                 // @unlink( $zip );
    1472             }
    1473 
    1474         }
    1475 
    1476         // get_customers_purchased
    1477         public function get_customers_purchased( $license_data ) {
    1478             // Activate the licenses
    1479             $activation_url = 'https://directorist.com';
    1480 
    1481             // Activate the Extensions
    1482             $purchased_extensions_meta    = [];
    1483             $purchased_extensions         = [];
    1484             $invalid_purchased_extensions = [];
    1485 
    1486             if ( ! empty( $license_data['plugins'] ) ) {
    1487 
    1488                 foreach ( $license_data['plugins'] as $extension ) {
    1489                     $license              = ( ! empty( $response_body['all_access'] ) ) ? $response_body['active_licenses'][0] : $extension['license'];
    1490                     $extension['license'] = $license;
    1491 
    1492                     $activation_status = self::remote_activate_license( $extension, 'plugin' );
    1493 
    1494                     if ( empty( $activation_status['success'] ) ) {
    1495                         $invalid_purchased_extensions[] = ['extension' => $extension, 'response' => $activation_status['response']];
    1496                         continue;
    1497                     }
    1498 
    1499                     $purchased_extensions[] = $extension;
    1500 
    1501                     // Store the ref for db
    1502                     $link    = $extension['permalink'];
    1503                     $ext_key = str_replace( 'http://directorist.com/product/', '', $link );
    1504                     $ext_key = str_replace( 'https://directorist.com/product/', '', $ext_key );
    1505                     $ext_key = str_replace( '/', '', $ext_key );
    1506 
    1507                     $purchased_extensions_meta[$ext_key] = [
    1508                         'item_id' => $extension['item_id'],
    1509                         'license' => $extension['license'],
    1510                         'license' => $extension['license'],
    1511                         'file'    => $extension['links'],
    1512                     ];
    1513                 }
    1514 
    1515             }
    1516 
    1517             // Activate the Themes
    1518             $purchased_themes_meta    = [];
    1519             $purchased_themes         = [];
    1520             $invalid_purchased_themes = [];
    1521 
    1522             if ( ! empty( $license_data['themes'] ) ) {
    1523 
    1524                 foreach ( $license_data['themes'] as $theme ) {
    1525                     $license          = ( ! empty( $response_body['all_access'] ) ) ? $response_body['active_licenses'][0] : $theme['license'];
    1526                     $theme['license'] = $license;
    1527 
    1528                     $activation_status = self::remote_activate_license( $theme );
    1529 
    1530                     if ( empty( $activation_status['success'] ) ) {
    1531                         $invalid_purchased_themes[] = $theme;
    1532                         $invalid_purchased_themes[] = ['extension' => $theme, 'response' => $activation_status['response']];
    1533                         continue;
    1534                     }
    1535 
    1536                     $purchased_themes[] = $theme;
    1537 
    1538                     // Store the ref for db
    1539                     $link      = $theme['permalink'];
    1540                     $theme_key = str_replace( 'http://directorist.com/product/', '', $link );
    1541                     $theme_key = str_replace( 'https://directorist.com/product/', '', $theme_key );
    1542                     $theme_key = str_replace( '/', '', $theme_key );
    1543 
    1544                     $purchased_themes_meta[$theme_key] = [
    1545                         'item_id' => $extension['item_id'],
    1546                         'license' => $extension['license'],
    1547                         'file'    => $extension['links'],
    1548                     ];
    1549                 }
    1550 
    1551             }
    1552 
    1553             $customers_purchased = [
    1554                 'extensions' => $purchased_extensions_meta,
    1555                 'themes'     => $purchased_themes_meta,
    1556             ];
    1557 
    1558             update_user_meta( get_current_user_id(), '_atbdp_purchased_products', $customers_purchased );
    1559 
    1560             $status['purchased_extensions']         = $purchased_extensions;
    1561             $status['invalid_purchased_extensions'] = $invalid_purchased_extensions;
    1562 
    1563             $status['purchased_themes']         = $purchased_themes;
    1564             $status['invalid_purchased_themes'] = $invalid_purchased_themes;
    1565 
    1566             $status['customers_purchased'] = $customers_purchased;
    1567 
    1568             return $status;
    1569         }
    1570 
    1571         // download_purchased_items
    1572         public function download_purchased_items() {
    1573             $status = ['success' => true, 'log' => []];
    1574 
    1575             $cart = ( isset( $_POST['customers_purchased'] ) ) ? $_POST['customers_purchased'] : '';
    1576 
    1577             if ( empty( $cart ) ) {
    1578                 $status['success']                        = false;
    1579                 $status['log']['no_purchased_data_found'] = [
    1580                     'type'    => 'error',
    1581                     'message' => 'No purchased data found',
    1582                 ];
    1583                 wp_send_json( ['status' => $status] );
    1584             }
    1585 
    1586             // Download the extensions
    1587             if ( ! function_exists( 'WP_Filesystem' ) ) {
    1588                 include ABSPATH . 'wp-admin/includes/file.php';
    1589             }
    1590 
    1591             WP_Filesystem();
    1592 
    1593             // Download Extenstions
    1594             if ( ! empty( $cart['purchased_extensions'] ) ) {
    1595                 foreach ( $cart['purchased_extensions'] as $extension ) {
    1596                     $download_link = $extension['download_link'];
    1597                     if ( empty( $download_link ) ) {
    1598                         continue;
    1599                     }
    1600 
    1601                     $this->download_plugin( ['url' => $download_link, 'init_wp_filesystem' => false] );
    1602                 }
    1603 
    1604             }
    1605 
    1606             // Download Themes
    1607             if ( ! empty( $cart['purchased_themes'] ) ) {
    1608                 foreach ( $cart['purchased_themes'] as $theme ) {
    1609                     $download_link = $extension['download_link'];
    1610                     if ( empty( $download_link ) ) {
    1611                         continue;
    1612                     }
    1613 
    1614                     $this->download_theme( ['url' => $download_link, 'init_wp_filesystem' => false] );
    1615                 }
    1616 
    1617             }
    1618 
    1619             $status['message'] = 'Download has been completed, redirecting...';
    1620 
    1621             wp_send_json( ['status' => $status] );
    1622         }
    1623 
    1624         /**
    1625          * It Adds menu item
    1626          */
    1627         public function admin_menu() {
    1628             add_submenu_page(
    1629                 'edit.php?post_type=at_biz_dir',
    1630                 __( 'Get Extensions', 'directorist' ),
    1631                 __( '<span>Themes & Extensions</span>', 'directorist' ),
    1632                 'manage_options',
    1633                 'atbdp-extension',
    1634                 [$this, 'show_extension_view']
    1635             );
    1636         }
    1637 
    1638         // get_extensions_overview
    1639         public function get_extensions_overview() {
    1640             // Get Extensions Details
    1641             $plugin_updates       = get_site_transient( 'update_plugins' );
    1642             $outdated_plugins     = $plugin_updates->response;
    1643             $outdated_plugins_key = ( is_array( $outdated_plugins ) ) ? array_keys( $outdated_plugins ) : [];
    1644             $official_extensions  = is_array( $this->extensions ) ? array_keys( $this->extensions ) : [];
    1645 
    1646             $all_installed_plugins_list = get_plugins();
    1647             $installed_extensions       = [];
    1648             $total_active_extensions    = 0;
    1649             $total_outdated_extensions  = 0;
    1650          
    1651             foreach ( $all_installed_plugins_list as $plugin_base => $plugin_data ) {
    1652 
    1653                 $folder_base = strtok( $plugin_base, '/' );
    1654 
    1655                 if ( preg_match( '/^directorist-/', $plugin_base ) && in_array( $folder_base, $official_extensions ) ) {
    1656                     $installed_extensions[$plugin_base] = $plugin_data;
    1657 
    1658                     if ( is_plugin_active( $plugin_base ) ) {
    1659                         $total_active_extensions++;
    1660                     }
    1661 
    1662                     if ( in_array( $plugin_base, $outdated_plugins_key ) ) {
    1663                         $total_outdated_extensions++;
    1664                     }
    1665 
    1666                 }
    1667 
    1668             }
    1669 
    1670             // ---
    1671             $extensions_available_in_subscriptions = $this->get_extensions_available_in_subscriptions( [
    1672                 'installed_extensions' => $installed_extensions,
    1673             ] );
    1674 
    1675             // ---
    1676             $extensions_promo_list = $this->get_extensions_promo_list( [
    1677                 'extensions_available_in_subscriptions' => $extensions_available_in_subscriptions,
    1678                 'installed_extensions'                  => $installed_extensions,
    1679             ] );
    1680 
    1681             $required_extensions_list = $this->prepare_the_final_requred_extension_list( [
    1682                 'installed_extension_list'              => $installed_extensions,
    1683                 'extensions_available_in_subscriptions' => $extensions_available_in_subscriptions,
    1684             ] );
    1685 
    1686             $total_installed_ext_list             = count( $installed_extensions );
    1687             $total_ext_available_in_subscriptions = count( $extensions_available_in_subscriptions );
    1688             $total_available_extensions           = $total_installed_ext_list + $total_ext_available_in_subscriptions;
    1689 
    1690             $overview = [
    1691                 'outdated_plugin_list'                  => $outdated_plugins,
    1692                 'outdated_plugins_key'                  => $outdated_plugins_key,
    1693                 'all_installed_plugins_list'            => $all_installed_plugins_list,
    1694                 'installed_extension_list'              => $installed_extensions,
    1695                 'total_active_extensions'               => $total_active_extensions,
    1696                 'total_outdated_extensions'             => $total_outdated_extensions,
    1697                 'extensions_promo_list'                 => $extensions_promo_list,
    1698                 'extensions_available_in_subscriptions' => $extensions_available_in_subscriptions,
    1699                 'total_available_extensions'            => $total_available_extensions,
    1700                 'required_extensions'                   => $required_extensions_list,
    1701             ];
    1702 
    1703             return $overview;
    1704         }
    1705 
    1706         // get_extensions_available_in_subscriptions
    1707         public function get_extensions_available_in_subscriptions( array $args = [] ) {
    1708             $installed_extensions      = ( ! empty( $args['installed_extensions'] ) ) ? $args['installed_extensions'] : [];
    1709             $installed_extensions_keys = $this->get_sanitized_extensions_keys( $installed_extensions );
    1710 
    1711             $extensions_available_in_subscriptions = self::get_purchased_extension_list();
    1712             $extensions_available_in_subscriptions = ( is_array( $extensions_available_in_subscriptions ) ) ? $extensions_available_in_subscriptions : [];
    1713 
    1714             if ( ! empty( $extensions_available_in_subscriptions ) && is_array( $extensions_available_in_subscriptions ) ) {
    1715 
    1716                 foreach ( $extensions_available_in_subscriptions as $base => $args ) {
    1717                     $base_alias       = $this->get_extension_alias_key( $base );
    1718                     $plugin_key       = preg_replace( '/(directorist-)/', '', $base );
    1719                     $plugin_alias_key = preg_replace( '/(directorist-)/', '', $base_alias );
    1720 
    1721                     $is_in_installed_extensions       = in_array( $plugin_key, $installed_extensions_keys ) ? true : false;
    1722                     $is_in_installed_extensions_alias = in_array( $plugin_alias_key, $installed_extensions_keys ) ? true : false;
    1723 
    1724                     if ( $is_in_installed_extensions || $is_in_installed_extensions_alias ) {
    1725                         unset( $extensions_available_in_subscriptions[$base] );
    1726                     }
    1727 
    1728                 }
    1729 
    1730             }
    1731 
    1732             return $extensions_available_in_subscriptions;
    1733         }
    1734 
    1735         // get_extensions_promo_list
    1736         public function get_extensions_promo_list( array $args = [] ) {
    1737             $installed_extensions      = ( ! empty( $args['installed_extensions'] ) ) ? $args['installed_extensions'] : [];
    1738             $installed_extensions_keys = $this->get_sanitized_extensions_keys( $installed_extensions );
    1739 
    1740             $extensions_available_in_subscriptions      = ( ! empty( $args['extensions_available_in_subscriptions'] ) ) ? $args['extensions_available_in_subscriptions'] : [];
    1741             $extensions_available_in_subscriptions_keys = is_array( $extensions_available_in_subscriptions ) ? array_keys( $extensions_available_in_subscriptions ) : [];
    1742 
    1743             // Filter extensions available in subscriptions
    1744             $promo_extensions = $this->get_active_extensions();
    1745 
    1746             if ( ! empty( $promo_extensions ) && is_array( $installed_extensions_keys ) ) {
    1747 
    1748                 foreach ( $promo_extensions as $_extension_base => $_extension_args ) {
    1749                     $extension_base_alias = $this->get_extension_alias_key( $_extension_base );
    1750                     $ext_key              = preg_replace( '/(directorist-)/', '', $_extension_base );
    1751                     $ext_alias_key        = preg_replace( '/(directorist-)/', '', $extension_base_alias );
    1752 
    1753                     // Exclude Installed Extensions
    1754                     $in_installed_extensions       = in_array( $ext_key, $installed_extensions_keys ) ? true : false;
    1755                     $in_installed_extensions_alias = in_array( $ext_alias_key, $installed_extensions_keys ) ? true : false;
    1756 
    1757                     if ( $in_installed_extensions || $in_installed_extensions_alias ) {
    1758                         unset( $promo_extensions[$_extension_base] );
    1759                     }
    1760 
    1761                     // Exclude Subscripted Extensions
    1762                     $is_available_in_subscriptions       = in_array( $_extension_base, $extensions_available_in_subscriptions_keys ) ? true : false;
    1763                     $is_available_in_subscriptions_alias = in_array( $extension_base_alias, $extensions_available_in_subscriptions_keys ) ? true : false;
    1764 
    1765                     if ( $is_available_in_subscriptions || $is_available_in_subscriptions_alias ) {
    1766                         unset( $promo_extensions[$_extension_base] );
    1767                     }
    1768 
    1769                 }
    1770 
    1771             }
    1772 
    1773             return $promo_extensions;
    1774         }
    1775 
    1776         // get_sanitized_extensions_keys
    1777         public function get_sanitized_extensions_keys( array $extensions_list = [] ) {
    1778             $extensions_keys = ( is_array( $extensions_list ) ) ? array_keys( $extensions_list ) : [];
    1779 
    1780             if ( ! empty( $extensions_keys ) && is_array( $extensions_keys ) ) {
    1781 
    1782                 foreach ( $extensions_keys as $index => $key ) {
    1783                     $new_key = preg_replace( '/\/.+/', '', $key );
    1784                     $new_key = preg_replace( '/(directorist-)/', '', $new_key );
    1785 
    1786                     $extensions_keys[$index] = $new_key;
    1787                 }
    1788 
    1789             }
    1790 
    1791             return $extensions_keys;
    1792         }
    1793 
    1794         // get_themes_overview
    1795         public function get_themes_overview() {
    1796             // Check form theme update
    1797             $current_theme = wp_get_theme();
    1798             get_theme_update_available( $current_theme->stylesheet );
    1799 
    1800             $sovware_themes       = ( is_array( $this->themes ) ) ? array_keys( $this->themes ) : [];
    1801             $theme_updates        = get_site_transient( 'update_themes' );
    1802             $outdated_themes      = $theme_updates->response;
    1803             $outdated_themes_keys = ( is_array( $outdated_themes ) ) ? array_keys( $outdated_themes ) : [];
    1804 
    1805             $all_themes            = wp_get_themes();
    1806             $active_theme_slug     = get_option( 'stylesheet' );
    1807             $installed_theme_list  = [];
    1808             $total_active_themes   = 0;
    1809             $total_outdated_themes = 0;
    1810 
    1811             foreach ( $all_themes as $theme_base => $theme_data ) {
    1812 
    1813                 if ( in_array( $theme_base, $sovware_themes ) ) {
    1814                     $customizer_link = "customize.php?theme={$theme_data->stylesheet}&return=%2Fwp-admin%2Fthemes.php";
    1815                     $customizer_link = admin_url( $customizer_link );
    1816 
    1817                     $installed_theme_list[$theme_base] = [
    1818                         'name'            => $theme_data->name,
    1819                         'version'         => $theme_data->version,
    1820                         'thumbnail'       => $theme_data->get_screenshot(),
    1821                         'customizer_link' => $customizer_link,
    1822                         'has_update'      => ( in_array( $theme_data->stylesheet, $outdated_themes_keys ) ) ? true : false,
    1823                         'stylesheet'      => $theme_data->stylesheet,
    1824                     ];
    1825 
    1826                     if ( $active_theme_slug === $theme_base ) {
    1827                         $total_active_themes++;
    1828                     }
    1829 
    1830                     if ( in_array( $theme_base, $outdated_themes_keys ) ) {
    1831                         $total_outdated_themes++;
    1832                     }
    1833 
    1834                 }
    1835 
    1836             }
    1837 
    1838             $installed_themes_keys = ( is_array( $installed_theme_list ) ) ? array_keys( $installed_theme_list ) : [];
    1839 
    1840             // Themes available in subscriptions
    1841             $themes_available_in_subscriptions = self::get_purchased_theme_list();
    1842             $themes_available_in_subscriptions = ( ! empty( $themes_available_in_subscriptions ) && is_array( $themes_available_in_subscriptions ) ) ? $themes_available_in_subscriptions : [];
    1843 
    1844             if ( ! empty( $themes_available_in_subscriptions ) ) {
    1845 
    1846                 foreach ( $themes_available_in_subscriptions as $base => $args ) {
    1847                     $item = $themes_available_in_subscriptions[$base];
    1848 
    1849                     // Merge Local Theme Info
    1850                     if ( ! empty( $this->themes[$base] ) ) {
    1851                         $item = array_merge( $this->themes[$base], $item );
    1852                     }
    1853 
    1854                     // Merge Local Theme Info
    1855                     if ( in_array( $base, $installed_themes_keys ) ) {
    1856                         $item = array_merge( $installed_theme_list[$base], $item );
    1857                     }
    1858 
    1859                     $is_installed         = ( in_array( $base, $installed_themes_keys ) ) ? true : false;
    1860                     $item['is_installed'] = $is_installed;
    1861 
    1862                     $themes_available_in_subscriptions[$base] = $item;
    1863                 }
    1864 
    1865             }
    1866 
    1867             // total_available_themes
    1868             $total_available_themes = count( $themes_available_in_subscriptions );
    1869 
    1870             // themes_promo_list
    1871             $themes_promo_list = $this->get_themes_promo_list( [
    1872                 'installed_theme_list'              => $installed_theme_list,
    1873                 'themes_available_in_subscriptions' => $themes_available_in_subscriptions,
    1874             ] );
    1875 
    1876             // current_active_theme_info
    1877             $current_active_theme_info = $this->get_current_active_theme_info(
    1878                 [
    1879                     'outdated_themes_keys' => $outdated_themes_keys,
    1880                     'installed_theme_list' => $installed_theme_list,
    1881                 ]
    1882             );           
    1883             $current_active_theme_info['stylesheet'];
    1884 
    1885             $themes_available_in_subscriptions_keys = array_keys( $themes_available_in_subscriptions );
    1886 
    1887             if ( in_array( $current_active_theme_info['stylesheet'], $themes_available_in_subscriptions_keys ) ) {
    1888                 unset( $themes_available_in_subscriptions[$current_active_theme_info['stylesheet']] );
    1889             }
    1890 
    1891             $overview = [
    1892                 'total_active_themes'               => $total_active_themes,
    1893                 'total_outdated_themes'             => $total_outdated_themes,
    1894                 'installed_theme_list'              => $installed_theme_list,
    1895                 'current_active_theme_info'         => $current_active_theme_info,
    1896                 'themes_promo_list'                 => $themes_promo_list,
    1897                 'themes_available_in_subscriptions' => $themes_available_in_subscriptions,
    1898                 'total_available_themes'            => $total_available_themes,
    1899             ];
    1900 
    1901             return $overview;
    1902         }
    1903 
    1904         // get_current_active_theme_info
    1905         public function get_current_active_theme_info( array $args = [] ) {
    1906             // Get Current Active Theme Info
    1907             $current_active_theme = wp_get_theme();
    1908             $customizer_link      = "customize.php?theme={$current_active_theme->stylesheet}&return=%2Fwp-admin%2Fthemes.php";
    1909             $customizer_link      = admin_url( $customizer_link );
    1910 
    1911             // Check form theme update
    1912             $has_update = isset( $args[ 'installed_theme_list' ][ $current_active_theme->stylesheet ] ) ? $args[ 'installed_theme_list' ][ $current_active_theme->stylesheet ][ 'has_update' ] : '';
    1913            
    1914             $active_theme_info = [
    1915                 'name'            => $current_active_theme->name,
    1916                 'version'         => $current_active_theme->version,
    1917                 'thumbnail'       => $current_active_theme->get_screenshot(),
    1918                 'customizer_link' => $customizer_link,
    1919                 'has_update'      => $has_update,
    1920                 'stylesheet'      => $current_active_theme->stylesheet,
    1921             ];
    1922 
    1923             return $active_theme_info;
    1924         }
    1925 
    1926         // get_themes_promo_list
    1927         public function get_themes_promo_list( array $args = [] ) {
    1928             $installed_theme_list  = ( ! empty( $args['installed_theme_list'] ) ) ? $args['installed_theme_list'] : [];
    1929             $installed_themes_keys = $this->get_sanitized_themes_keys( $installed_theme_list );
    1930 
    1931             $themes_available_in_subscriptions      = ( ! empty( $args['themes_available_in_subscriptions'] ) ) ? $args['themes_available_in_subscriptions'] : [];
    1932             $themes_available_in_subscriptions_keys = is_array( $themes_available_in_subscriptions ) ? array_keys( $themes_available_in_subscriptions ) : [];
    1933 
    1934             // Filter all active themes
    1935             $themes_promo_list = $this->get_active_themes();
    1936 
    1937             if ( ! empty( $themes_promo_list ) ) {
    1938 
    1939                 foreach ( $themes_promo_list as $_theme_base => $_extension_args ) {
    1940 
    1941                     // Exclude Installed Themes
    1942                     if ( in_array( $_theme_base, $installed_themes_keys ) ) {
    1943                         unset( $themes_promo_list[$_theme_base] );
    1944                     }
    1945 
    1946                     // Exclude Subscripted Themes
    1947                     if ( in_array( $_theme_base, $themes_available_in_subscriptions_keys ) ) {
    1948                         unset( $themes_promo_list[$_theme_base] );
    1949                     }
    1950 
    1951                 }
    1952 
    1953             }
    1954 
    1955             return $themes_promo_list;
    1956         }
    1957 
    1958         // get_sanitized_themes_keys
    1959         public function get_sanitized_themes_keys( array $theme_list = [] ) {
    1960             $theme_keys = ( is_array( $theme_list ) ) ? array_keys( $theme_list ) : [];
    1961 
    1962             return $theme_keys;
    1963         }
    1964 
    1965         // remote_activate_license
    1966         public static function remote_activate_license( $license_item = [] ) {
    1967             $status = ['success' => false];
    1968 
    1969             if ( ! is_array( $license_item ) ) {
    1970                 $status['message'] = __( 'Nothing to activate', 'directorist' );
    1971 
    1972                 return $status;
    1973             }
    1974 
    1975             if ( isset( $license_item['skip_licencing'] ) && ! empty( $license_item['skip_licencing'] ) ) {
    1976                 $status['success'] = true;
    1977 
    1978                 return $status;
    1979             }
    1980 
    1981             $item_id = ( ! empty( $license_item['item_id'] ) ) ? $license_item['item_id'] : 0;
    1982             $license = ( ! empty( $license_item['license'] ) ) ? $license_item['license'] : '';
    1983 
    1984             $activation_url = 'https://directorist.com';
    1985             $query_args     = [
    1986                 'edd_action' => 'activate_license',
    1987                 'url'        => home_url(),
    1988                 'item_id'    => $item_id,
    1989                 'license'    => $license,
    1990             ];
    1991 
    1992             try {
    1993                 $response = wp_remote_get( $activation_url, [
    1994                     'timeout'   => 15,
    1995                     'sslverify' => false,
    1996                     'body'      => $query_args,
    1997                 ] );
    1998 
    1999                 $response_status = json_decode( $response['body'], true );
    2000             } catch ( Exception $e ) {
    2001                 $status['success']  = false;
    2002                 $status['message']  = $e->getMessage();
    2003                 $status['response'] = null;
    2004 
    2005                 return $status;
    2006             }
    2007 
    2008             $status['response'] = $response_status;
    2009 
    2010             if ( empty( $response_status['success'] ) ) {
    2011                 $status['success'] = false;
    2012                 $status['message'] = __( 'Activation failed', 'directorist' );
    2013 
    2014                 return $status;
    2015             }
    2016 
    2017             $status['success'] = true;
    2018 
    2019             return $status;
    2020         }
    2021 
    2022         // remote_authenticate_user
    2023         public static function remote_authenticate_user( $user_credentials = [] ) {
    2024             $status = ['success' => true];
    2025 
    2026             $url     = 'https://directorist.com/wp-json/directorist/v1/licencing';
    2027             $headers = [
    2028                 'user-agent' => 'Directorist/' . md5( esc_url( home_url() ) ) . ';',
    2029                 'Accept'     => 'application/json',
    2030             ];
    2031 
    2032             $config = [
    2033                 'method'      => 'GET',
    2034                 'timeout'     => 30,
    2035                 'redirection' => 5,
    2036                 'httpversion' => '1.0',
    2037                 'headers'     => $headers,
    2038                 'cookies'     => [],
    2039                 'body'        => $user_credentials, // [ 'user' => '', 'password' => '']
    2040             ];
    2041 
    2042             $response_body = [];
    2043 
    2044             try {
    2045                 $response = wp_remote_get( $url, $config );
    2046 
    2047                 if ( is_wp_error( $response ) ) {
    2048                     $status['success'] = false;
    2049                     $status['message'] = Directorist\Helper::get_first_wp_error_message( $response );
    2050                 } else {
    2051                     $response_body = ( 'string' === gettype( $response['body'] ) ) ? json_decode( $response['body'], true ) : $response['body'];
    2052                 }
    2053                
    2054             } catch ( Exception $e ) {
    2055                 $status['success'] = false;
    2056                 $status['message'] = $e->getMessage();
    2057             }
    2058 
    2059             if ( is_array( $response_body ) ) {
    2060                 $status = array_merge(  $status, $response_body );
    2061             }
    2062            
    2063             if ( empty( $response_body['success'] ) ) {
    2064                 $status['success'] = false;
    2065             }
    2066 
    2067             $status['response'] = $response_body;
    2068 
    2069             return $status;
    2070         }
    2071 
    2072         // get_file_download_link
    2073         public static function get_file_download_link( $file_item = [], $product_type = 'plugin' ) {
    2074             if ( ! is_array( $file_item ) ) {
    2075                 return '';
    2076             }
    2077 
    2078             if ( ! isset( $file_item['item_id'] ) ) {
    2079                 return '';
    2080             }
    2081 
    2082             if ( ! isset( $file_item['license'] ) ) {
    2083                 return '';
    2084             }
    2085 
    2086             if ( empty( $file_item['item_id'] ) || empty( $file_item['license'] ) ) {
    2087                 return '';
    2088             }
    2089 
    2090             $activation_url = 'https://directorist.com/wp-json/directorist/v1/get-product-data/';
    2091             $query_args     = [
    2092                 'product_type' => $product_type,
    2093                 'license'      => $file_item['license'],
    2094                 'item_id'      => $file_item['item_id'],
    2095                 'get_info'     => 'download_link',
    2096             ];
    2097 
    2098             try {
    2099                 $response = wp_remote_get( $activation_url, [
    2100                     'timeout'   => 15,
    2101                     'sslverify' => false,
    2102                     'body'      => $query_args,
    2103                 ] );
    2104 
    2105                 $response = json_decode( $response['body'], true );
    2106             } catch ( Exception $e ) {
    2107                 return '';
    2108             }
    2109 
    2110             $status['response'] = $response;
    2111 
    2112             if ( empty( $response['success'] ) && empty( $response['data'] ) ) {
    2113                 return '';
    2114             }
    2115 
    2116             return $response['data'];
    2117         }
    2118 
    2119         // get_purchased_extension_list
    2120         public static function get_purchased_extension_list() {
    2121             $extensions_available_in_subscriptions = get_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions', true );
    2122             $directorist_purchased_extension_list  = apply_filters( 'directorist_purchased_extension_list', $extensions_available_in_subscriptions );
    2123 
    2124             if ( is_array( $directorist_purchased_extension_list ) ) {
    2125                 return $directorist_purchased_extension_list;
    2126             }
    2127 
    2128             return $extensions_available_in_subscriptions;
    2129         }
    2130 
    2131         // get_purchased_theme_list
    2132         public static function get_purchased_theme_list() {
    2133             $themes_available_in_subscriptions = get_user_meta( get_current_user_id(), '_themes_available_in_subscriptions', true );
    2134             $directorist_purchased_theme_list  = apply_filters( 'directorist_purchased_theme_list', $themes_available_in_subscriptions );
    2135 
    2136             if ( is_array( $directorist_purchased_theme_list ) ) {
    2137                 return $directorist_purchased_theme_list;
    2138             }
    2139 
    2140             return $themes_available_in_subscriptions;
    2141         }
    2142 
    2143         // filter_product_name
    2144         public static function filter_product_type( $product_type = '' ) {
    2145             $product_type = ( 'plugins' === $product_type ) ? 'plugin' : $product_type;
    2146             $product_type = ( 'themes' === $product_type ) ? 'theme' : $product_type;
    2147 
    2148             return $product_type;
    2149         }
    2150 
    2151         /**
    2152          * It Loads Extension view
    2153          */
    2154         public function show_extension_view() {
    2155             // delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
    2156             // delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
    2157 
    2158             // Check Sassion
    2159             $has_subscriptions_sassion = get_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
    2160             $is_logged_in              = ( ! empty( $has_subscriptions_sassion ) ) ? true : false;
    2161 
    2162             $settings_url = admin_url( 'edit.php?post_type=at_biz_dir&page=atbdp-settings#extension_settings__extensions_general' );
    2163 
    2164             $extensions_overview = $this->get_extensions_overview();
    2165             $themes_overview     = $this->get_themes_overview();
    2166 
    2167             $hard_logout = apply_filters( 'atbdp_subscriptions_hard_logout', false );
    2168             $hard_logout = ( $hard_logout ) ? 1 : 0;
    2169 
    2170             $data = [
    2171                 'ATBDP_Extensions'                      => $this,
    2172                 'is_logged_in'                          => $is_logged_in,
    2173                 'hard_logout'                           => $hard_logout,
    2174 
    2175                 'total_active_extensions'               => $extensions_overview['total_active_extensions'],
    2176                 'total_outdated_extensions'             => $extensions_overview['total_outdated_extensions'],
    2177                 'outdated_plugin_list'                  => $extensions_overview['outdated_plugin_list'],
    2178                 'installed_extension_list'              => $extensions_overview['installed_extension_list'],
    2179                 'extensions_available_in_subscriptions' => $extensions_overview['extensions_available_in_subscriptions'],
    2180                 'total_available_extensions'            => $extensions_overview['total_available_extensions'],
    2181                 'extensions_promo_list'                 => $extensions_overview['extensions_promo_list'],
    2182                 'required_extensions_list'              => $extensions_overview['required_extensions'],
    2183 
    2184                 'total_active_themes'                   => $themes_overview['total_active_themes'],               // $my_active_themes,
    2185                 'total_outdated_themes'                 => $themes_overview['total_outdated_themes'],             // $my_outdated_themes,
    2186                 'installed_theme_list'                  => $themes_overview['installed_theme_list'],              // $installed_theme_list,
    2187                 'current_active_theme_info'             => $themes_overview['current_active_theme_info'],         // $active_theme,
    2188                 'themes_available_in_subscriptions'     => $themes_overview['themes_available_in_subscriptions'], // $themes_available_in_subscriptions,
    2189                 'total_available_themes'                => $themes_overview['total_available_themes'],
    2190                 'themes_promo_list'                     => $themes_overview['themes_promo_list'],
    2191 
    2192                 'extension_list'                        => $this->extensions,
    2193                 'theme_list'                            => $this->themes,
    2194 
    2195                 'settings_url'                          => $settings_url,
    2196             ];
    2197 
    2198             ATBDP()->load_template( 'admin-templates/theme-extensions/theme-extension', $data );
    2199         }
    2200 
    2201 
    2202         private function is_verified_nonce(){
    2203             $nonce = ! empty( $_POST['nonce'] ) ? $_POST['nonce'] : '';
    2204             return wp_verify_nonce( $nonce, 'atbdp_nonce_action_js' );
    2205         }
    2206 
    2207     }
     25    /**
     26     * Class ATBDP_Extensions
     27     */
     28    class ATBDP_Extensions {
     29        public static $extensions_aliases = [];
     30
     31        public $extensions          = [];
     32        public $themes              = [];
     33        public $required_extensions = [];
     34
     35        public function __construct() {
     36            add_action( 'admin_menu', [ $this, 'admin_menu' ], 100 );
     37            add_action( 'admin_init', [ $this, 'setup_ajax_actions' ] );
     38
     39            if ( ! empty( $_GET['page'] ) && ( 'atbdp-extension' === $_GET['page'] ) ) {
     40                add_action( 'admin_init', [ $this, 'initial_setup' ] );
     41            }
     42        }
     43
     44        public function setup_ajax_actions() {
     45            if ( ! current_user_can( 'manage_options' ) ) {
     46                return;
     47            }
     48
     49            // Ajax
     50            add_action( 'wp_ajax_atbdp_authenticate_the_customer', [$this, 'authenticate_the_customer'] );
     51            add_action( 'wp_ajax_atbdp_download_file', [$this, 'handle_file_download_request'] );
     52            add_action( 'wp_ajax_atbdp_install_file_from_subscriptions', [$this, 'handle_file_install_request_from_subscriptions'] );
     53            add_action( 'wp_ajax_atbdp_plugins_bulk_action', [$this, 'plugins_bulk_action'] );
     54            add_action( 'wp_ajax_atbdp_activate_theme', [$this, 'activate_theme'] );
     55            add_action( 'wp_ajax_atbdp_activate_plugin', [$this, 'activate_plugin'] );
     56            add_action( 'wp_ajax_atbdp_update_plugins', [$this, 'handle_plugins_update_request'] );
     57            add_action( 'wp_ajax_atbdp_update_theme', [$this, 'handle_theme_update_request'] );
     58            add_action( 'wp_ajax_atbdp_refresh_purchase_status', [$this, 'handle_refresh_purchase_status_request'] );
     59            add_action( 'wp_ajax_atbdp_close_subscriptions_sassion', [$this, 'handle_close_subscriptions_sassion_request'] );
     60
     61            // add_action( 'wp_ajax_atbdp_download_purchased_items', array($this, 'download_purchased_items') );
     62        }
     63
     64        // initial_setup
     65        public function initial_setup() {
     66            $this->setup_extensions_alias();
     67
     68            wp_update_plugins();
     69
     70            // Apply hook to required extensions
     71            $this->required_extensions = apply_filters( 'directorist_required_extensions', [] );
     72
     73            $this->setup_products_list();
     74        }
     75
     76        // setup_extensions_alias
     77        public function setup_extensions_alias() {
     78
     79            // Latest Key     => Deprecated key
     80            // Deprecated key => Latest Key
     81            self::$extensions_aliases = apply_filters( 'directorist_extensions_aliases', [
     82                'directorist-listings-with-map'        => 'directorist-listings-map',
     83                'directorist-listings-map'             => 'directorist-listings-with-map',
     84
     85                'directorist-adverts-manager'          => 'directorist-ads-manager',
     86                'directorist-ads-manager'              => 'directorist-adverts-manager',
     87
     88                'directorist-gallery'                  => 'directorist-image-gallery',
     89                'directorist-image-gallery'            => 'directorist-gallery',
     90
     91                'directorist-slider-carousel'          => 'directorist-listings-slider-carousel',
     92                'directorist-listings-slider-carousel' => 'directorist-slider-carousel',
     93
     94                'directorist-faqs'                     => 'directorist-listing-faqs',
     95                'directorist-listing-faqs'             => 'directorist-faqs',
     96            ] );
     97        }
     98
     99        // get_required_extension_list
     100        public function get_required_extension_list() {
     101            $required_extensions = [];
     102
     103            foreach ( $this->required_extensions as $recommandation ) {
     104
     105                if ( ! isset( $recommandation['extensions'] ) ) {
     106                    continue;
     107                }
     108
     109                if ( ! is_array( $recommandation['extensions'] ) ) {
     110                    continue;
     111                }
     112
     113                foreach ( $recommandation['extensions'] as $extension ) {
     114                    $extension_alias = $this->get_extension_alias_key( $extension );
     115
     116                    if ( ! ( isset( $this->extensions[$extension] ) || isset( $this->extensions[$extension_alias] ) ) ) {
     117                        continue;
     118                    }
     119
     120                    if ( empty( $required_extensions[$extension] ) ) {
     121                        $required_extensions[$extension] = [];
     122                    }
     123
     124                    $required_extensions[$extension][] = $recommandation['ref'];
     125                }
     126
     127            }
     128
     129            return $required_extensions;
     130        }
     131
     132        // prepare_the_final_requred_extension_list
     133        public function prepare_the_final_requred_extension_list( array $args = [] ) {
     134            $recommandation = [];
     135
     136            $required_extensions_list = $this->get_required_extension_list();
     137            $purchased_extension_list = self::get_purchased_extension_list();
     138            $purchased_extensions     = ( ! empty( $purchased_extension_list ) && is_array( $purchased_extension_list ) ) ? array_keys( $purchased_extension_list ) : [];
     139            $plugin_dir_path          = trailingslashit( dirname( ATBDP_DIR ) );
     140
     141            foreach ( $required_extensions_list as $extension => $recommanded_by ) {
     142                $extension_alias = $this->get_extension_alias_key( $extension );
     143
     144                if ( $this->has_match_in_active_plugins( [ $extension, $extension_alias ] ) ) {
     145                    continue;
     146                }
     147
     148                $is_purchased       = ( in_array( $extension, $purchased_extensions ) ) ? true : false;
     149                $is_purchased_alias = ( in_array( $extension_alias, $purchased_extensions ) ) ? true : false;
     150
     151                $is_installed = file_exists( $plugin_dir_path . $extension );
     152                $is_installed_alias = ( ! empty( $extension_alias ) && file_exists( $plugin_dir_path . $extension_alias ) ) ? true : false;
     153
     154
     155                $base = "{$extension}/{$extension}.php";
     156
     157                if ( ! empty( $this->extensions[ $extension ] ) && ! empty( $this->extensions[ $extension ]['base'] ) ) {
     158                    $base = $this->extensions[ $extension ]['base'];
     159                }
     160
     161                if ( ! empty( $this->extensions[ $extension_alias ] ) && ! empty( $this->extensions[ $extension_alias ]['base'] ) ) {
     162                    $base = $this->extensions[ $extension_alias ]['base'];
     163                }
     164
     165                $recommandation[$extension]              = [];
     166                $recommandation[$extension]['ref']       = $recommanded_by;
     167                $recommandation[$extension]['base']      = $base;
     168                $recommandation[$extension]['purchased'] = ( $is_purchased || $is_purchased_alias ) ? true : false;
     169                $recommandation[$extension]['installed'] = ( $is_installed || $is_installed_alias ) ? true : false;
     170            }
     171
     172            return $recommandation;
     173        }
     174
     175        public function has_match_in_active_plugins( $plugin_name = '' ) {
     176            $match_found = false;
     177
     178            $active_plugins = get_option( 'active_plugins', array() );
     179
     180            if ( empty( $plugin_name ) ) {
     181                return false;
     182            }
     183
     184            if ( empty( $active_plugins ) ) {
     185                return false;
     186            }
     187
     188            if ( ! is_array( $active_plugins ) ) {
     189                return false;
     190            }
     191
     192            foreach ( $active_plugins as $plugin_path ) {
     193                if ( empty( $plugin_name ) && ( false !== strpos( $plugin_path, $plugin_name ) ) ) {
     194                    return true;
     195                }
     196
     197                if ( is_array( $plugin_name ) ) {
     198                    foreach ( $plugin_name as $plugin_key ) {
     199                        if ( is_string( $plugin_key ) && ! empty( $plugin_key ) && false !== strpos( $plugin_path, $plugin_key ) ) {
     200                            return true;
     201                        }
     202                    }
     203                }
     204            }
     205
     206            return $match_found;
     207        }
     208
     209        // get_the_products_list
     210        public function setup_products_list() {
     211
     212
     213            $url     = 'https://app.directorist.com/wp-json/directorist/v1/get-remote-products';
     214            $headers = [
     215                'user-agent' => 'Directorist/' . md5( esc_url( home_url() ) ) . ';',
     216                'Accept'     => 'application/json',
     217            ];
     218
     219            $config = [
     220                'method'      => 'GET',
     221                'timeout'     => 30,
     222                'redirection' => 5,
     223                'httpversion' => '1.0',
     224                'headers'     => $headers,
     225                'cookies'     => [],
     226            ];
     227
     228            $response_body = [];
     229
     230            try {
     231                $response = wp_remote_get( $url, $config );
     232
     233                if ( ! is_wp_error( $response ) ) {
     234                    $response_body = ( 'string' === gettype( $response['body'] ) ) ? json_decode( $response['body'], true ) : $response['body'];
     235                    $extensions = $response_body['extensions'];
     236                    $themes = $response_body['themes'];
     237
     238                    $this->extensions = apply_filters( 'atbdp_extension_list', $extensions );
     239                    $this->themes = apply_filters( 'atbdp_theme_list', $themes );
     240                }
     241
     242            } catch ( Exception $e ) {
     243
     244            }
     245        }
     246
     247        // exclude_purchased_extensions
     248        public function exclude_purchased_extensions( $extensions ) {
     249            $has_subscriptions_sassion = get_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
     250            $is_logged_in              = ( ! empty( $has_subscriptions_sassion ) ) ? true : false;
     251
     252            if ( ! $is_logged_in ) {
     253                return $extensions;
     254            }
     255
     256            $purchased_products = get_user_meta( get_current_user_id(), '_atbdp_purchased_products', true );
     257
     258            if ( empty( $purchased_products ) ) {
     259                return $extensions;
     260            }
     261
     262            $purchased_extensions = ( ! empty( $purchased_products['plugins'] ) ) ? $purchased_products['plugins'] : '';
     263
     264            if ( empty( $purchased_extensions ) ) {
     265                return $extensions;
     266            }
     267
     268            $purchased_extensions_keys = ( is_array( $purchased_extensions ) ) ? array_keys( $purchased_extensions ) : [];
     269            $excluded_extensions       = $extensions;
     270
     271            foreach ( $excluded_extensions as $extension_key => $extension ) {
     272
     273                if ( ! in_array( $extension_key, $purchased_extensions_keys ) ) {
     274                    continue;
     275                }
     276
     277                $excluded_extensions[$extension_key]['active'] = false;
     278            }
     279
     280            return $excluded_extensions;
     281        }
     282
     283        // exclude_purchased_themes
     284        public function exclude_purchased_themes( $themes ) {
     285            $has_subscriptions_sassion = get_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
     286            $is_logged_in              = ( ! empty( $has_subscriptions_sassion ) ) ? true : false;
     287
     288            if ( ! $is_logged_in ) {
     289                return $themes;
     290            }
     291
     292            $purchased_products = get_user_meta( get_current_user_id(), '_atbdp_purchased_products', true );
     293
     294            if ( empty( $purchased_products ) ) {
     295                return $themes;
     296            }
     297
     298            $purchased_themes = ( ! empty( $purchased_products['themes'] ) ) ? $purchased_products['themes'] : '';
     299
     300            if ( empty( $purchased_themes ) ) {
     301                return $themes;
     302            }
     303
     304            $purchased_themes_keys = is_array( $purchased_themes ) ? array_keys( $purchased_themes ) : [];
     305            $excluded_themes       = $themes;
     306
     307            foreach ( $excluded_themes as $theme_key => $theme ) {
     308
     309                if ( ! in_array( $theme_key, $purchased_themes_keys ) ) {
     310                    continue;
     311                }
     312
     313                $excluded_themes[$theme_key]['active'] = false;
     314            }
     315
     316            return $excluded_themes;
     317        }
     318
     319        // get_active_extensions
     320        public function get_active_extensions() {
     321            $active_extensions = [];
     322
     323            foreach ( $this->extensions as $extension_key => $extension_args ) {
     324
     325                if ( empty( $extension_args['active'] ) ) {
     326                    continue;
     327                }
     328
     329                $active_extensions[$extension_key] = $extension_args;
     330            }
     331
     332            return $active_extensions;
     333        }
     334
     335        // get_active_themes
     336        public function get_active_themes() {
     337            $active_themes = [];
     338
     339            foreach ( $this->themes as $theme_key => $theme_args ) {
     340
     341                if ( empty( $theme_args['active'] ) ) {
     342                    continue;
     343                }
     344
     345                $active_themes[$theme_key] = $theme_args;
     346            }
     347
     348            return $active_themes;
     349        }
     350
     351        // handle_plugins_update_request
     352        public function handle_plugins_update_request() {
     353
     354            if ( ! $this->is_verified_nonce() ) {
     355                $status            = [];
     356                $status['success'] = false;
     357                $status['message'] = 'Invalid request';
     358
     359                wp_send_json( ['status' => $status] );
     360            }
     361
     362            $plugin_key = ( isset( $_POST['plugin_key'] ) ) ? wp_unslash( $_POST['plugin_key'] ) : '';
     363            $status     = $this->update_plugins( ['plugin_key' => $plugin_key] );
     364
     365            wp_send_json( $status );
     366        }
     367
     368        // update_plugins
     369        public function update_plugins( array $args = [] ) {
     370            $default = ['plugin_key' => ''];
     371            $args    = array_merge( $default, $args );
     372
     373            $status     = ['success' => true];
     374            $plugin_key = $args['plugin_key'];
     375
     376            $plugin_updates       = get_site_transient( 'update_plugins' );
     377            $outdated_plugins     = $plugin_updates->response;
     378            $outdated_plugins_key = ( is_array( $outdated_plugins ) ) ? array_keys( $outdated_plugins ) : [];
     379
     380            if ( empty( $outdated_plugins_key ) ) {
     381                $status['message'] = __( 'All plugins are up to date', 'directorist' );
     382
     383                return ['status' => $status];
     384            }
     385
     386            if ( ! empty( $plugin_key ) && ! in_array( $plugin_key, $outdated_plugins_key ) ) {
     387                $status['message'] = __( 'The plugin is up to date', 'directorist' );
     388
     389                return ['status' => $status];
     390            }
     391
     392            $plugins_available_in_subscriptions = self::get_purchased_extension_list();
     393
     394            // Update single
     395            if ( ! empty( $plugin_key ) ) {
     396                $plugin_key  = self::filter_plugin_key_from_base_name( $plugin_key );
     397                $plugin_item = self::extract_plugin_from_list( $plugin_key, $plugins_available_in_subscriptions );
     398                $url         = self::get_file_download_link( $plugin_item, 'plugin' );
     399
     400                $download_status = $this->download_plugin( ['url' => $url] );
     401
     402                if ( ! $download_status['success'] ) {
     403                    $status['success'] = false;
     404                    $status['message'] = __( 'The plugin could not update', 'directorist' );
     405                    $status['log']     = $download_status['message'];
     406                } else {
     407                    $status['success'] = true;
     408                    $status['message'] = __( 'The plugin has been updated successfully', 'directorist' );
     409                    $status['log']     = $download_status['message'];
     410                }
     411
     412                return ['status' => $status];
     413            }
     414
     415            // Update all
     416            $updated_plugins       = [];
     417            $update_failed_plugins = [];
     418
     419            foreach ( $outdated_plugins as $plugin_base => $plugin ) {
     420                $plugin_key  = self::filter_plugin_key_from_base_name( $plugin_key );
     421                $plugin_item = self::extract_plugin_from_list( $plugin_key, $plugins_available_in_subscriptions );
     422                $url         = self::get_file_download_link( $plugin_item, 'plugin' );
     423
     424                $download_status = $this->download_plugin( ['url' => $url] );
     425
     426                if ( ! $download_status['success'] ) {
     427                    $update_failed_plugins[$plugin_base] = $plugin;
     428                } else {
     429                    $updated_plugins[$plugin_base] = $plugin;
     430                }
     431
     432            }
     433
     434            $status['updated_plugins']       = $updated_plugins;
     435            $status['update_failed_plugins'] = $update_failed_plugins;
     436
     437            if ( ! empty( $updated_plugins ) && ! empty( $update_failed_plugins ) ) {
     438                $status['success'] = false;
     439                $status['message'] = __( 'Some of the plugin could not update', 'directorist' );
     440            }
     441
     442            if ( empty( $update_failed_plugins ) ) {
     443                $status['success'] = true;
     444                $status['message'] = __( 'All the plugins are updated successfully', 'directorist' );
     445            }
     446
     447            if ( empty( $updated_plugins ) ) {
     448                $status['success'] = true;
     449                $status['message'] = __( 'No plugins could not update', 'directorist' );
     450            }
     451
     452            return ['status' => $status];
     453        }
     454
     455        // extract_plugin_from_list
     456        public static function extract_plugin_from_list( $plugin_key = '', $list = [] ) {
     457
     458            $plugin_item = [];
     459            $plugin_key  = ( is_string( $plugin_key ) ) ? $plugin_key : '';
     460            $list        = ( is_array( $list ) ) ? $list : [];
     461
     462            $keys_in_list = array_keys( $list );
     463
     464            if ( in_array( $plugin_key, $keys_in_list ) ) {
     465                $plugin_item = $list[$plugin_key];
     466            }
     467
     468            $plugin_alias_key = self::get_extension_alias_key( $plugin_key );
     469
     470            if ( in_array( $plugin_alias_key, $keys_in_list ) ) {
     471                $plugin_item = $list[$plugin_alias_key];
     472            }
     473
     474            return $plugin_item;
     475        }
     476
     477        // filter_plugin_key_from_base_name
     478        public static function filter_plugin_key_from_base_name( $plugin_key = '' ) {
     479
     480            if ( ! is_string( $plugin_key ) ) {
     481                return '';
     482            }
     483
     484            $plugin_key = preg_replace( '/\/.+/', '', $plugin_key );
     485
     486            return $plugin_key;
     487        }
     488
     489        // get_extension_alias_key
     490        public static function get_extension_alias_key( string $plugin_key = '' ) {
     491            $extensions_aliases      = self::$extensions_aliases;
     492            $extensions_aliases_keys = ( is_array( $extensions_aliases ) && ! empty( $extensions_aliases ) ) ? array_keys( $extensions_aliases ) : [];
     493            $plugin_alias_key        = in_array( $plugin_key, $extensions_aliases_keys ) ? $extensions_aliases[$plugin_key] : '';
     494
     495            return $plugin_alias_key;
     496        }
     497
     498        // plugins_bulk_action
     499        public function plugins_bulk_action() {
     500            $status = ['success' => true];
     501
     502            if ( ! $this->is_verified_nonce() ) {
     503                $status['success'] = false;
     504                $status['message'] = 'Invalid request';
     505
     506                wp_send_json( ['status' => $status] );
     507            }
     508
     509            $task         = ( isset( $_POST['task'] ) ) ? wp_unslash( $_POST['task'] ) : '';
     510            $plugin_items = ( isset( $_POST['plugin_items'] ) ) ? wp_unslash( $_POST['plugin_items'] ) : '';
     511
     512            // Validation
     513            if ( empty( $task ) ) {
     514                $status['success'] = false;
     515                $status['message'] = 'No task found';
     516                wp_send_json( ['status' => $status] );
     517            }
     518
     519            if ( empty( $plugin_items ) ) {
     520                $status['success'] = false;
     521                $status['message'] = 'No plugin items found';
     522                wp_send_json( ['status' => $status] );
     523            }
     524
     525            // Activate
     526            if ( 'activate' === $task ) {
     527                foreach ( $plugin_items as $plugin ) {
     528                    activate_plugin( $plugin );
     529                }
     530            }
     531
     532            // Deactivate
     533            if ( 'deactivate' === $task ) {
     534                deactivate_plugins( $plugin_items );
     535            }
     536
     537            // Uninstall
     538            if ( 'uninstall' === $task ) {
     539                delete_plugins( $plugin_items );
     540            }
     541
     542            wp_send_json( ['status' => $status] );
     543        }
     544
     545        // activate_theme
     546        public function activate_theme() {
     547            $status           = ['success' => true];
     548            $theme_stylesheet = ( isset( $_POST['theme_stylesheet'] ) ) ? wp_unslash( $_POST['theme_stylesheet'] ) : '';
     549
     550            if ( ! $this->is_verified_nonce() ) {
     551                $status['success'] = false;
     552                $status['message'] = 'Invalid request';
     553
     554                wp_send_json( ['status' => $status] );
     555            }
     556
     557            if ( empty( $theme_stylesheet ) ) {
     558                $status['success'] = false;
     559                $status['message'] = __( 'Theme\'s stylesheet is missing', 'directorist' );
     560
     561                wp_send_json( ['status' => $status] );
     562            }
     563
     564            switch_theme( $theme_stylesheet );
     565            wp_send_json( ['status' => $status] );
     566        }
     567
     568        // activate_plugin
     569        public function activate_plugin() {
     570            $status     = ['success' => true];
     571            $plugin_key = ( isset( $_POST['item_key'] ) ) ? wp_unslash( $_POST['item_key'] ) : '';
     572
     573            if ( ! $this->is_verified_nonce() ) {
     574                $status['success'] = false;
     575                $status['message'] = 'Invalid request';
     576
     577                wp_send_json( ['status' => $status] );
     578            }
     579
     580            if ( empty( $plugin_key ) ) {
     581                $status['success'] = false;
     582                $status['log']     = ['$plugin_key' => $plugin_key];
     583                $status['message'] = __( 'Please specefy which plugin to activate', 'directorist' );
     584
     585                wp_send_json( ['status' => $status] );
     586            }
     587
     588            activate_plugin( $plugin_key );
     589            wp_send_json( ['status' => $status] );
     590        }
     591
     592        // handle_theme_update_request
     593        public function handle_theme_update_request() {
     594
     595            if ( ! $this->is_verified_nonce() ) {
     596                $status            = [];
     597                $status['success'] = false;
     598                $status['message'] = 'Invalid request';
     599
     600                wp_send_json( ['status' => $status] );
     601            }
     602
     603            $theme_stylesheet = ( isset( $_POST['theme_stylesheet'] ) ) ? wp_unslash( $_POST['theme_stylesheet'] ) : '';
     604
     605            $update_theme_status = $this->update_the_themes( ['theme_stylesheet' => $theme_stylesheet] );
     606            wp_send_json( $update_theme_status );
     607        }
     608
     609        // update_the_theme
     610        public function update_the_themes( array $args = [] ) {
     611            $default = ['theme_stylesheet' => ''];
     612            $args    = array_merge( $default, $args );
     613
     614            $status = ['success' => true];
     615
     616            $theme_stylesheet    = $args['theme_stylesheet'];
     617            $theme_updates       = get_site_transient( 'update_themes' );
     618            $outdated_themes     = $theme_updates->response;
     619            $outdated_themes_key = ( is_array( $outdated_themes ) ) ? array_keys( $outdated_themes ) : [];
     620
     621            if ( empty( $outdated_themes_key ) ) {
     622                $status['message'] = __( 'All themes are up to date', 'directorist' );
     623
     624                return ['status' => $status];
     625            }
     626
     627            if ( ! empty( $theme_stylesheet ) && ! in_array( $theme_stylesheet, $outdated_themes_key ) ) {
     628                $status['message'] = __( 'The theme is up to date', 'directorist' );
     629
     630                return ['status' => $status];
     631            }
     632
     633            $themes_available_in_subscriptions      = self::get_purchased_theme_list();
     634            $themes_available_in_subscriptions_keys = ( is_array( $themes_available_in_subscriptions ) ) ? array_keys( $themes_available_in_subscriptions ) : [];
     635
     636            // Check if stylesheet is present
     637            if ( ! empty( $theme_stylesheet ) ) {
     638
     639                // Check if the the update is available
     640                if ( ! in_array( $theme_stylesheet, $outdated_themes_key ) ) {
     641                    $status['success'] = false;
     642                    $status['message'] = __( 'The theme is already upto date', 'directorist' );
     643
     644                    return ['status' => $status];
     645                }
     646
     647                $theme_item = $themes_available_in_subscriptions[$theme_stylesheet];
     648                $url        = self::get_file_download_link( $theme_item, 'theme' );
     649                $url        = ( empty( $url ) && ! empty( $outdated_themes[ $theme_stylesheet ]['package'] ) ) ? $outdated_themes[ $theme_stylesheet ]['package'] : $url;
     650
     651                $download_status = $this->download_theme( ['url' => $url] );
     652
     653                if ( ! $download_status['success'] ) {
     654                    $status['success'] = false;
     655                    $status['message'] = __( 'The theme could not update', 'directorist' );
     656                    $status['log']     = $download_status['message'];
     657                } else {
     658                    $status['success'] = true;
     659                    $status['message'] = __( 'The theme has been updated successfully', 'directorist' );
     660                    $status['log']     = $download_status['message'];
     661                    wp_clean_themes_cache();
     662                };
     663
     664                return ['status' => $status];
     665            }
     666
     667            // Update all
     668            $updated_themes       = [];
     669            $update_failed_themes = [];
     670
     671            foreach ( $outdated_themes as $theme_key => $theme ) {
     672                $url = '';
     673
     674                if ( ! in_array( $theme_key, $themes_available_in_subscriptions_keys ) ) {
     675                    continue;
     676                }
     677
     678                $theme_item = $themes_available_in_subscriptions[$theme_key];
     679                $url        = self::get_file_download_link( $theme_item, 'theme' );
     680
     681                $download_status = $this->download_theme( ['url' => $url] );
     682
     683                if ( ! $download_status['success'] ) {
     684                    $update_failed_themes[$theme_key] = $theme;
     685                } else {
     686                    $updated_themes[$theme_key] = $theme;
     687                }
     688
     689            }
     690
     691            $status['updated_themes']       = $updated_themes;
     692            $status['update_failed_themes'] = $update_failed_themes;
     693
     694            if ( ! empty( $updated_themes ) && ! empty( $update_failed_themes ) ) {
     695                $status['success'] = false;
     696                $status['message'] = __( 'Some of the theme could not update', 'directorist' );
     697            }
     698
     699            if ( empty( $update_failed_themes ) ) {
     700                $status['success'] = true;
     701                $status['message'] = __( 'All the themes are updated successfully', 'directorist' );
     702            }
     703
     704            if ( empty( $updated_themes ) ) {
     705                $status['success'] = true;
     706                $status['message'] = __( 'No themes could not update', 'directorist' );
     707            }
     708
     709            return ['status' => $status];
     710        }
     711
     712        /**
     713         * Authenticate users as directorist customer.
     714         *
     715         * @return void
     716         */
     717        public function authenticate_the_customer() {
     718
     719            $status = ['success' => true, 'log' => []];
     720
     721            if ( ! $this->is_verified_nonce() ) {
     722                $status['success']                 = false;
     723                $status['log']['invalid_request'] = [
     724                    'type'    => 'error',
     725                    'message' => 'Invalid request',
     726                ];
     727            }
     728
     729            // Get form data
     730            $username = ( isset( $_POST['username'] ) ) ? $_POST['username'] : '';
     731            $password = ( isset( $_POST['password'] ) ) ? urlencode( $_POST['password'] ) : '';
     732
     733            // Validate username
     734            if ( empty( $username ) && ! empty( $password ) ) {
     735                $status['success']                 = false;
     736                $status['log']['username_missing'] = [
     737                    'type'    => 'error',
     738                    'message' => 'Username is required',
     739                ];
     740            }
     741
     742            // Validate password
     743            if ( empty( $password ) && ! empty( $username ) ) {
     744                $status['success']                 = false;
     745                $status['log']['password_missing'] = [
     746                    'type'    => 'error',
     747                    'message' => 'Password is required',
     748                ];
     749            }
     750
     751            // Validate username && password
     752            if ( empty( $password ) && empty( $username ) ) {
     753                $status['success']                 = false;
     754                $status['log']['password_missing'] = [
     755                    'type'    => 'error',
     756                    'message' => 'Username and Password is required',
     757                ];
     758            }
     759
     760            if ( ! $status['success'] ) {
     761                wp_send_json( ['status' => $status] );
     762            }
     763
     764            // Get licencing data
     765            $response = self::remote_authenticate_user( ['user' => $username, 'password' => $password] );
     766
     767            // Validate response
     768            if ( ! $response['success'] ) {
     769                $status['success']      = false;
     770                $default_status_message = ( isset( $response['message'] ) ) ? $response['message'] : '';
     771
     772                if ( isset( $response['log'] ) && isset( $response['log']['errors'] ) && is_array( $response['log']['errors'] ) ) {
     773                    foreach ( $response['log']['errors'] as $error_key => $error_value ) {
     774                        $status['log'][$error_key] = [
     775                            'type'    => 'error',
     776                            'message' => ( is_array( $error_value ) ) ? $error_value[0] : $error_value,
     777                        ];
     778                    }
     779
     780                } else {
     781                    $status['log']['unknown_error'] = [
     782                        'type'    => 'error',
     783                        'message' => ( ! empty( $default_status_message ) ) ? $default_status_message : __( 'Something went wrong', 'directorist' ),
     784                    ];
     785                }
     786
     787                wp_send_json( ['status' => $status, 'response_body' => $response] );
     788            }
     789
     790            $previous_username = get_user_meta( get_current_user_id(), '_atbdp_subscribed_username', true );
     791
     792            // Enable Sassion
     793            update_user_meta( get_current_user_id(), '_atbdp_subscribed_username', $username );
     794            update_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
     795
     796            $plugins_available_in_subscriptions = self::get_purchased_extension_list();
     797            $themes_available_in_subscriptions  = self::get_purchased_theme_list();
     798            $has_previous_subscriptions         = ( ! empty( $plugins_available_in_subscriptions ) || ! empty( $themes_available_in_subscriptions ) ) ? true : false;
     799
     800            if ( $previous_username === $username && $has_previous_subscriptions ) {
     801                // Enable Sassion
     802                update_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
     803                $this->refresh_purchase_status( $args = ['password' => $password] );
     804
     805                wp_send_json( ['status' => $status, 'has_previous_subscriptions' => true] );
     806            }
     807
     808            delete_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions' );
     809            delete_user_meta( get_current_user_id(), '_themes_available_in_subscriptions' );
     810
     811            $license_data = $response['license_data'];
     812
     813            // Update user meta
     814            if ( ! empty( $license_data['themes'] ) ) {
     815                $themes_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['themes'] );
     816                update_user_meta( get_current_user_id(), '_themes_available_in_subscriptions', $themes_available_in_subscriptions );
     817            }
     818
     819            if ( ! empty( $license_data['plugins'] ) ) {
     820                $plugins_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['plugins'] );
     821                update_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions', $plugins_available_in_subscriptions );
     822            }
     823
     824            $status['success']                 = true;
     825            $status['log']['login_successful'] = [
     826                'type'    => 'success',
     827                'message' => 'Login is successful',
     828            ];
     829
     830            wp_send_json( ['status' => $status, 'license_data' => $license_data] );
     831        }
     832
     833        // handle_refresh_purchase_status_request
     834        public function handle_refresh_purchase_status_request() {
     835            $status   = ['success' => true];
     836
     837            if ( ! $this->is_verified_nonce() ) {
     838                $status['success'] = false;
     839                $status['message'] = 'Invalid request';
     840
     841                wp_send_json( ['status' => $status] );
     842            }
     843
     844            $password = ( isset( $_POST['password'] ) ) ? $_POST['password'] : '';
     845
     846            $status = $this->refresh_purchase_status( ['password' => $password] );
     847
     848            wp_send_json( $status );
     849        }
     850
     851        // refresh_purchase_status
     852        public function refresh_purchase_status( array $args = [] ) {
     853            $status  = ['success' => true];
     854            $default = ['password' => ''];
     855            $args    = array_merge( $default, $args );
     856
     857            if ( empty( $args['password'] ) ) {
     858                $status['success'] = false;
     859                $status['message'] = __( 'Password is required', 'directorist' );
     860
     861                return ['status' => $status];
     862            }
     863
     864            $username = get_user_meta( get_current_user_id(), '_atbdp_subscribed_username', true );
     865            $password = $args['password'];
     866
     867            if ( empty( $username ) ) {
     868                $status['success'] = false;
     869                $status['reload']  = true;
     870                $status['message'] = __( 'Sassion is destroyed, please sign-in again', 'directorist' );
     871
     872                delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
     873
     874                return ['status' => $status];
     875            }
     876
     877            // Get licencing data
     878            $authentication = self::remote_authenticate_user( ['user' => $username, 'password' => $password] );
     879
     880            // Validate response
     881            if ( ! $authentication['success'] ) {
     882                $status['success'] = false;
     883                $status['message'] = $authentication['message'];
     884
     885                return ['status' => $status, 'response_body' => $authentication];
     886            }
     887
     888            $license_data = $authentication['license_data'];
     889
     890            // Update user meta
     891            if ( ! empty( $license_data['themes'] ) ) {
     892                $themes_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['themes'] );
     893                update_user_meta( get_current_user_id(), '_themes_available_in_subscriptions', $themes_available_in_subscriptions );
     894            }
     895
     896            if ( ! empty( $license_data['plugins'] ) ) {
     897                $plugins_available_in_subscriptions = $this->prepare_available_in_subscriptions( $license_data['plugins'] );
     898                update_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions', $plugins_available_in_subscriptions );
     899            }
     900
     901            $status['success'] = true;
     902            $status['message'] = __( 'Your purchase has been refreshed successfuly', 'directorist' );
     903
     904            return ['status' => $status];
     905        }
     906
     907        // handle_close_subscriptions_sassion_request
     908        public function handle_close_subscriptions_sassion_request() {
     909
     910            if ( ! $this->is_verified_nonce() ) {
     911                $status            = [];
     912                $status['success'] = false;
     913                $status['message'] = 'Invalid request';
     914
     915                wp_send_json( ['status' => $status] );
     916            }
     917
     918            $hard_logout_state = ( isset( $_POST['hard_logout'] ) ) ? $_POST['hard_logout'] : false;
     919            $status            = $this->close_subscriptions_sassion( ['hard_logout' => $hard_logout_state] );
     920
     921            wp_send_json( $status );
     922        }
     923
     924        // close_subscriptions_sassion
     925        public function close_subscriptions_sassion( array $args = [] ) {
     926            $default = ['hard_logout' => false];
     927            $args    = array_merge( $default, $args );
     928
     929            $status = ['success' => true];
     930            delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
     931
     932            if ( $args['hard_logout'] ) {
     933                delete_user_meta( get_current_user_id(), '_atbdp_subscribed_username' );
     934                delete_user_meta( get_current_user_id(), '_themes_available_in_subscriptions' );
     935                delete_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions' );
     936            }
     937
     938            return $status;
     939        }
     940
     941        // prepare_available_in_subscriptions
     942        public function prepare_available_in_subscriptions( array $products = [] ) {
     943            $available_in_subscriptions = [];
     944
     945            if ( empty( $products ) ) {
     946                return $available_in_subscriptions;
     947            }
     948
     949            foreach ( $products as $product ) {
     950                $product_key                              = $this->get_product_key_from_permalink( $product['permalink'] );
     951                $available_in_subscriptions[$product_key] = $product;
     952            }
     953
     954            return $available_in_subscriptions;
     955        }
     956
     957        // get_product_key_from_permalink
     958        public function get_product_key_from_permalink( string $permalink = '' ) {
     959            $product_key = str_replace( 'http://directorist.com/product/', '', $permalink );
     960            $product_key = str_replace( 'https://directorist.com/product/', '', $product_key );
     961            $product_key = str_replace( '/', '', $product_key );
     962
     963            return $product_key;
     964        }
     965
     966        // handle_license_activation_request
     967        public function handle_license_activation_request() {
     968            $status       = ['success' => true];
     969            $license_item = ( isset( $_POST['license_item'] ) ) ? wp_unslash( $_POST['license_item'] ) : '';
     970            $product_type = ( isset( $_POST['product_type'] ) ) ? wp_unslash( $_POST['product_type'] ) : '';
     971
     972            if ( empty( $license_item ) ) {
     973                $status['success'] = false;
     974                $status['message'] = 'License item is missing';
     975
     976                wp_send_json( ['status' => $status] );
     977            }
     978
     979            if ( empty( $product_type ) ) {
     980                $status['success'] = false;
     981                $status['message'] = 'Product type is required';
     982
     983                wp_send_json( ['status' => $status] );
     984            }
     985
     986            $activation_status = $this->activate_license( $license_item, $product_type );
     987            $status['success'] = $activation_status['success'];
     988
     989            wp_send_json( ['status' => $status, 'activation_status' => $activation_status] );
     990        }
     991
     992        // activate_license
     993        public function activate_license( $license_item, $product_type = '' ) {
     994            $status            = ['success' => true];
     995            $activation_status = self::remote_activate_license( $license_item );
     996
     997            if ( empty( $activation_status['success'] ) ) {
     998                $status['success'] = false;
     999            }
     1000
     1001            $status['response'] = $activation_status['response'];
     1002            $product_type       = self::filter_product_type( $product_type );
     1003
     1004            if ( $status['success'] && ( 'plugin' === $product_type || 'theme' === $product_type ) ) {
     1005                $user_purchased = get_user_meta( get_current_user_id(), '_atbdp_purchased_products', true );
     1006
     1007                if ( empty( $user_purchased ) ) {
     1008                    $user_purchased = [];
     1009                }
     1010
     1011                if ( empty( $user_purchased[$product_type] ) ) {
     1012                    $user_purchased[$product_type] = [];
     1013                }
     1014
     1015                $purchased_items = $user_purchased[$product_type];
     1016
     1017                // Append new product
     1018                $product_key                   = $this->get_product_key_from_permalink( $license_item['permalink'] );
     1019                $purchased_items[$product_key] = $license_item;
     1020
     1021                $user_purchased[$product_type] = $purchased_items;
     1022                update_user_meta( get_current_user_id(), '_atbdp_purchased_products', $user_purchased );
     1023
     1024                $status['purchased_products'] = $user_purchased;
     1025            }
     1026
     1027            return $status;
     1028        }
     1029
     1030        // handle_file_install_request_from_subscriptions
     1031        public function handle_file_install_request_from_subscriptions() {
     1032            $item_key = ( isset( $_POST['item_key'] ) ) ? wp_unslash( $_POST['item_key'] ) : '';
     1033            $type     = ( isset( $_POST['type'] ) ) ? wp_unslash( $_POST['type'] ) : '';
     1034
     1035            if ( ! $this->is_verified_nonce() ) {
     1036                $status            = [];
     1037                $status['success'] = false;
     1038                $status['message'] = 'Invalid request';
     1039
     1040                wp_send_json( ['status' => $status] );
     1041            }
     1042
     1043            $installation_status = $this->install_file_from_subscriptions( ['item_key' => $item_key, 'type' => $type] );
     1044            wp_send_json( $installation_status );
     1045        }
     1046
     1047        // install_file_from_subscriptions
     1048        public function install_file_from_subscriptions( array $args = [] ) {
     1049            $default = ['item_key' => '', 'type' => ''];
     1050            $args    = array_merge( $default, $args );
     1051
     1052            $item_key = $args['item_key'];
     1053            $type     = $args['type'];
     1054
     1055            $status = ['success' => true];
     1056
     1057            if ( empty( $item_key ) ) {
     1058                $status['success'] = false;
     1059                $status['message'] = __( 'Item key is missing', 'directorist' );
     1060
     1061                return ['status' => $status];
     1062            }
     1063
     1064            if ( empty( $type ) ) {
     1065                $status['success'] = false;
     1066                $status['message'] = __( 'Type not specified', 'directorist' );
     1067
     1068                return ['status' => $status];
     1069            }
     1070
     1071            if ( 'plugin' !== $type && 'theme' !== $type ) {
     1072                $status['success'] = false;
     1073                $status['message'] = __( 'Invalid type', 'directorist' );
     1074
     1075                return ['status' => $status];
     1076            }
     1077
     1078            if ( 'theme' === $type ) {
     1079                $available_in_subscriptions = self::get_purchased_theme_list();
     1080            }
     1081
     1082            if ( 'plugin' === $type ) {
     1083                $available_in_subscriptions = self::get_purchased_extension_list();
     1084            }
     1085
     1086            if ( empty( $available_in_subscriptions ) ) {
     1087                $status['success'] = false;
     1088                $status['message'] = __( 'Nothing available in subscriptions', 'directorist' );
     1089
     1090                return ['status' => $status];
     1091            }
     1092
     1093            if ( empty( $available_in_subscriptions[$item_key] ) ) {
     1094                $status['success'] = false;
     1095                $status['message'] = __( 'The item is not available in your subscriptions', 'directorist' );
     1096
     1097                return ['status' => $status];
     1098            }
     1099
     1100            $installing_file = $available_in_subscriptions[$item_key];
     1101
     1102            $activatation_status = $this->activate_license( $installing_file, $type );
     1103            $status['log']       = $activatation_status;
     1104
     1105            if ( ! $activatation_status['success'] ) {
     1106                $status['success'] = false;
     1107                $status['message'] = __( 'The license is not valid, please check you subscription.', 'directorist' );
     1108
     1109                return ['status' => $status];
     1110            }
     1111
     1112            $link          = $installing_file['download_link'];
     1113            $download_args = ['url' => $link];
     1114
     1115            if ( 'plugin' === $type ) {
     1116                $download_status = $this->download_plugin( $download_args );
     1117            }
     1118
     1119            if ( 'theme' === $type ) {
     1120                $download_status = $this->download_theme( $download_args );
     1121            }
     1122
     1123            if ( ! $download_status['success'] ) {
     1124                return $download_status;
     1125            }
     1126
     1127            $status['success'] = true;
     1128            $status['message'] = __( 'Installed Successfully', 'directorist' );
     1129
     1130            return ['status' => $status];
     1131        }
     1132
     1133        // handle_plugin_download_request
     1134        public function handle_file_download_request() {
     1135            $status        = ['success' => true];
     1136
     1137            if ( ! $this->is_verified_nonce() ) {
     1138                $status['success'] = false;
     1139                $status['message'] = 'Invalid request';
     1140
     1141                wp_send_json( ['status' => $status] );
     1142            }
     1143
     1144            $download_item = ( isset( $_POST['download_item'] ) ) ? wp_unslash( $_POST['download_item'] ) : '';
     1145            $type          = ( isset( $_POST['type'] ) ) ? wp_unslash( $_POST['type'] ) : '';
     1146
     1147            if ( empty( $download_item ) ) {
     1148                $status['success'] = false;
     1149                $status['message'] = 'Download item is missing';
     1150
     1151                wp_send_json( ['status' => $status] );
     1152            }
     1153
     1154            if ( empty( $type ) ) {
     1155                $status['success'] = false;
     1156                $status['message'] = 'Type not specified';
     1157
     1158                wp_send_json( ['status' => $status] );
     1159            }
     1160
     1161            if ( 'plugin' !== $type || 'theme' !== $type ) {
     1162                $status['success'] = false;
     1163                $status['message'] = 'Invalid type';
     1164
     1165                wp_send_json( ['status' => $status] );
     1166            }
     1167
     1168            $activate_license = $this->activate_license( $download_item, $type );
     1169
     1170            if ( ! $activate_license['success'] ) {
     1171                $status['success'] = false;
     1172                $status['message'] = __( 'Activation failed', 'directorist' );
     1173                $status['ref']     = $activate_license;
     1174
     1175                wp_send_json( ['status' => $status] );
     1176            }
     1177
     1178            if ( empty( $download_item['download_link'] ) ) {
     1179                $status['success'] = false;
     1180                $status['message'] = 'Download Link not found';
     1181
     1182                wp_send_json( ['status' => $status] );
     1183            }
     1184
     1185            if ( ! is_string( $download_item['download_link'] ) ) {
     1186                $status['success'] = false;
     1187                $status['message'] = 'Download Link not found';
     1188
     1189                wp_send_json( ['status' => $status] );
     1190            }
     1191
     1192            $link          = $download_item['download_link'];
     1193            $download_args = ['url' => $link];
     1194
     1195            if ( 'plugin' === $type ) {
     1196                $download_status = $this->download_plugin( $download_args );
     1197            }
     1198
     1199            if ( 'theme' === $type ) {
     1200                $download_status = $this->download_theme( $download_args );
     1201            }
     1202
     1203            if ( ! $download_status['success'] ) {
     1204                return $download_status;
     1205            }
     1206
     1207            $status['success'] = true;
     1208            $status['message'] = __( 'Donloaded', 'directorist' );
     1209
     1210            wp_send_json( ['status' => $status] );
     1211        }
     1212
     1213        // download_plugin
     1214        public function download_plugin( array $args = [] ) {
     1215            $status = ['success' => false];
     1216
     1217            $default = ['url' => '', 'init_wp_filesystem' => true];
     1218            $args    = array_merge( $default, $args );
     1219
     1220            if ( empty( $args['url'] ) || ! self::is_varified_host( $args['url'] ) ) {
     1221                $status['success'] = false;
     1222                $status['message'] = __( 'Invalid download link', 'directorist' );
     1223
     1224                return $status;
     1225            }
     1226
     1227            global $wp_filesystem;
     1228
     1229            if ( $args['init_wp_filesystem'] ) {
     1230
     1231                if ( ! function_exists( 'WP_Filesystem' ) ) {
     1232                    include ABSPATH . 'wp-admin/includes/file.php';
     1233                }
     1234
     1235                WP_Filesystem();
     1236            }
     1237
     1238            $plugin_path = ABSPATH . 'wp-content/plugins';
     1239            $temp_dest   = "{$plugin_path}/atbdp-temp-dir";
     1240            $file_url    = $args['url'];
     1241            $file_name   = basename( $file_url );
     1242            $tmp_file    = download_url( $file_url );
     1243
     1244            if ( ! is_string( $tmp_file ) ) {
     1245                $status['success']  = false;
     1246                $status['tmp_file'] = $tmp_file;
     1247                $status['file_url'] = $file_url;
     1248                $status['message']  = 'Could not download the file';
     1249
     1250                return $status;
     1251            }
     1252
     1253            // Make Temp Dir
     1254            if ( $wp_filesystem->exists( $temp_dest ) ) {
     1255                $wp_filesystem->delete( $temp_dest, true );
     1256            }
     1257
     1258            $wp_filesystem->mkdir( $temp_dest );
     1259
     1260            if ( ! file_exists( $temp_dest ) ) {
     1261                $status['success'] = false;
     1262                $status['message'] = __( 'Could not create temp directory', 'directorist' );
     1263
     1264                return $status;
     1265            }
     1266
     1267            // Sets file temp destination.
     1268            $file_path = "{$temp_dest}/{$file_name}";
     1269
     1270            set_error_handler( function ( $errno, $errstr, $errfile, $errline ) {
     1271                // error was suppressed with the @-operator
     1272                if ( 0 === error_reporting() ) {
     1273                    return false;
     1274                }
     1275
     1276                throw new ErrorException( $errstr, 0, $errno, $errfile, $errline );
     1277            } );
     1278
     1279            // Copies the file to the final destination and deletes temporary file.
     1280            try {
     1281                copy( $tmp_file, $file_path );
     1282            } catch ( Exception $e ) {
     1283                $status['success'] = false;
     1284                $status['message'] = $e->getMessage();
     1285
     1286                return $status;
     1287            }
     1288
     1289            @unlink( $tmp_file );
     1290            unzip_file( $file_path, $temp_dest );
     1291
     1292            if ( "{$plugin_path}/" !== $file_path || $file_path !== $plugin_path ) {
     1293                @unlink( $file_path );
     1294            }
     1295
     1296            $extracted_file_dir = glob( "{$temp_dest}/*", GLOB_ONLYDIR );
     1297
     1298            foreach ( $extracted_file_dir as $dir_path ) {
     1299                $dir_name  = basename( $dir_path );
     1300                $dest_path = "{$plugin_path}/{$dir_name}";
     1301
     1302                // Delete Previous Files if Exists
     1303                if ( $wp_filesystem->exists( $dest_path ) ) {
     1304                    $wp_filesystem->delete( $dest_path, true );
     1305                }
     1306
     1307            }
     1308
     1309            copy_dir( $temp_dest, $plugin_path );
     1310            $wp_filesystem->delete( $temp_dest, true );
     1311
     1312            $status['success'] = true;
     1313            $status['message'] = __( 'The plugin has been downloaded successfully', 'directorist' );
     1314
     1315            return $status;
     1316        }
     1317
     1318        // download_theme
     1319        public function download_theme( array $args = [] ) {
     1320            $status = ['success' => false];
     1321
     1322            $default = ['url' => '', 'init_wp_filesystem' => true];
     1323            $args    = array_merge( $default, $args );
     1324
     1325            if ( empty( $args['url'] ) || ! self::is_varified_host( $args['url'] ) ) {
     1326                $status['success'] = false;
     1327                $status['message'] = __( 'Invalid download link', 'directorist' );
     1328
     1329                return $status;
     1330            }
     1331
     1332            global $wp_filesystem;
     1333
     1334            if ( $args['init_wp_filesystem'] ) {
     1335
     1336                if ( ! function_exists( 'WP_Filesystem' ) ) {
     1337                    include ABSPATH . 'wp-admin/includes/file.php';
     1338                }
     1339
     1340                WP_Filesystem();
     1341            }
     1342
     1343            $theme_path = ABSPATH . 'wp-content/themes';
     1344            $temp_dest  = "{$theme_path}/atbdp-temp-dir";
     1345            $file_url   = $args['url'];
     1346            $file_name  = basename( $file_url );
     1347            $tmp_file   = download_url( $file_url );
     1348
     1349            if ( ! is_string( $tmp_file ) ) {
     1350                $status['success']  = false;
     1351                $status['tmp_file'] = $tmp_file;
     1352                $status['file_url'] = $file_url;
     1353                $status['message']  = 'Could not download the file';
     1354
     1355                return $status;
     1356            }
     1357
     1358            // Make Temp Dir
     1359            if ( $wp_filesystem->exists( $temp_dest ) ) {
     1360                $wp_filesystem->delete( $temp_dest, true );
     1361            }
     1362
     1363            $wp_filesystem->mkdir( $temp_dest );
     1364
     1365            if ( ! file_exists( $temp_dest ) ) {
     1366                $status['success'] = false;
     1367                $status['message'] = __( 'Could not create temp directory', 'directorist' );
     1368
     1369                return $status;
     1370            }
     1371
     1372            // Sets file temp destination.
     1373            $file_path = "{$temp_dest}/{$file_name}";
     1374
     1375            set_error_handler( function ( $errno, $errstr, $errfile, $errline ) {
     1376                // error was suppressed with the @-operator
     1377                if ( 0 === error_reporting() ) {
     1378                    return false;
     1379                }
     1380
     1381                throw new ErrorException( $errstr, 0, $errno, $errfile, $errline );
     1382            } );
     1383
     1384            // Copies the file to the final destination and deletes temporary file.
     1385            try {
     1386                copy( $tmp_file, $file_path );
     1387            } catch ( Exception $e ) {
     1388                $status['success'] = false;
     1389                $status['message'] = $e->getMessage();
     1390
     1391                return $status;
     1392            }
     1393
     1394            @unlink( $tmp_file );
     1395            unzip_file( $file_path, $temp_dest );
     1396
     1397            if ( "{$theme_path}/" !== $file_path || $file_path !== $theme_path ) {
     1398                @unlink( $file_path );
     1399            }
     1400
     1401            $extracted_file_dir = glob( "{$temp_dest}/*", GLOB_ONLYDIR );
     1402            $dir_path           = $extracted_file_dir[0];
     1403
     1404            $dir_name  = basename( $dir_path );
     1405            $dest_path = "{$theme_path}/{$dir_name}";
     1406            $zip_files = glob( "{$dir_path}/*.zip" );
     1407
     1408            // If has child theme
     1409            if ( ! empty( $zip_files ) ) {
     1410                $new_temp_dest = "{$temp_dest}/_temp_dest";
     1411                $this->install_themes_from_zip_files( $zip_files, $new_temp_dest, $wp_filesystem );
     1412
     1413                copy_dir( $new_temp_dest, $theme_path );
     1414                $wp_filesystem->delete( $temp_dest, true );
     1415
     1416                $status['success'] = false;
     1417                $status['message'] = __( 'The theme has been downloaded successfully', 'directorist' );
     1418            }
     1419
     1420            // Delete Previous Files If Exists
     1421            if ( $wp_filesystem->exists( $dest_path ) ) {
     1422                $wp_filesystem->delete( $dest_path, true );
     1423            }
     1424
     1425            copy_dir( $temp_dest, $theme_path );
     1426            $wp_filesystem->delete( $temp_dest, true );
     1427
     1428            $status['success'] = true;
     1429            $status['message'] = __( 'The theme has been downloaded successfully', 'directorist' );
     1430
     1431            return $status;
     1432        }
     1433
     1434        // install_theme_from_zip
     1435        public function install_themes_from_zip_files( $zip_files, $temp_dest, $wp_filesystem ) {
     1436            $theme_path = ABSPATH . 'wp-content/themes';
     1437
     1438            foreach ( $zip_files as $zip ) {
     1439                $file     = basename( $zip );
     1440                $dir_name = str_replace( '.zip', '', $file );
     1441
     1442                if ( preg_match( '/[-]child[.]zip$/', $file ) ) {
     1443                    $temp_dest_path = "{$temp_dest}/{$dir_name}";
     1444                    $main_dest_path = "{$theme_path}/{$dir_name}";
     1445
     1446                    // Skip if has child
     1447                    if ( $wp_filesystem->exists( $main_dest_path ) ) {
     1448                        continue;
     1449                    }
     1450
     1451                    $wp_filesystem->mkdir( $temp_dest_path );
     1452                    unzip_file( $zip, $temp_dest_path );
     1453                    // @unlink( $zip );
     1454
     1455                    continue;
     1456                }
     1457
     1458                $main_dest_path = "{$theme_path}/{$dir_name}";
     1459
     1460                if ( $wp_filesystem->exists( $main_dest_path ) ) {
     1461                    $wp_filesystem->delete( $main_dest_path, true );
     1462                }
     1463
     1464                unzip_file( $zip, $temp_dest );
     1465                // @unlink( $zip );
     1466            }
     1467
     1468        }
     1469
     1470        // get_customers_purchased
     1471        public function get_customers_purchased( $license_data ) {
     1472            // Activate the licenses
     1473            $activation_url = 'https://directorist.com';
     1474
     1475            // Activate the Extensions
     1476            $purchased_extensions_meta    = [];
     1477            $purchased_extensions         = [];
     1478            $invalid_purchased_extensions = [];
     1479
     1480            if ( ! empty( $license_data['plugins'] ) ) {
     1481
     1482                foreach ( $license_data['plugins'] as $extension ) {
     1483                    $license              = ( ! empty( $response_body['all_access'] ) ) ? $response_body['active_licenses'][0] : $extension['license'];
     1484                    $extension['license'] = $license;
     1485
     1486                    $activation_status = self::remote_activate_license( $extension, 'plugin' );
     1487
     1488                    if ( empty( $activation_status['success'] ) ) {
     1489                        $invalid_purchased_extensions[] = ['extension' => $extension, 'response' => $activation_status['response']];
     1490                        continue;
     1491                    }
     1492
     1493                    $purchased_extensions[] = $extension;
     1494
     1495                    // Store the ref for db
     1496                    $link    = $extension['permalink'];
     1497                    $ext_key = str_replace( 'http://directorist.com/product/', '', $link );
     1498                    $ext_key = str_replace( 'https://directorist.com/product/', '', $ext_key );
     1499                    $ext_key = str_replace( '/', '', $ext_key );
     1500
     1501                    $purchased_extensions_meta[$ext_key] = [
     1502                        'item_id' => $extension['item_id'],
     1503                        'license' => $extension['license'],
     1504                        'license' => $extension['license'],
     1505                        'file'    => $extension['links'],
     1506                    ];
     1507                }
     1508
     1509            }
     1510
     1511            // Activate the Themes
     1512            $purchased_themes_meta    = [];
     1513            $purchased_themes         = [];
     1514            $invalid_purchased_themes = [];
     1515
     1516            if ( ! empty( $license_data['themes'] ) ) {
     1517
     1518                foreach ( $license_data['themes'] as $theme ) {
     1519                    $license          = ( ! empty( $response_body['all_access'] ) ) ? $response_body['active_licenses'][0] : $theme['license'];
     1520                    $theme['license'] = $license;
     1521
     1522                    $activation_status = self::remote_activate_license( $theme );
     1523
     1524                    if ( empty( $activation_status['success'] ) ) {
     1525                        $invalid_purchased_themes[] = $theme;
     1526                        $invalid_purchased_themes[] = ['extension' => $theme, 'response' => $activation_status['response']];
     1527                        continue;
     1528                    }
     1529
     1530                    $purchased_themes[] = $theme;
     1531
     1532                    // Store the ref for db
     1533                    $link      = $theme['permalink'];
     1534                    $theme_key = str_replace( 'http://directorist.com/product/', '', $link );
     1535                    $theme_key = str_replace( 'https://directorist.com/product/', '', $theme_key );
     1536                    $theme_key = str_replace( '/', '', $theme_key );
     1537
     1538                    $purchased_themes_meta[$theme_key] = [
     1539                        'item_id' => $extension['item_id'],
     1540                        'license' => $extension['license'],
     1541                        'file'    => $extension['links'],
     1542                    ];
     1543                }
     1544
     1545            }
     1546
     1547            $customers_purchased = [
     1548                'extensions' => $purchased_extensions_meta,
     1549                'themes'     => $purchased_themes_meta,
     1550            ];
     1551
     1552            update_user_meta( get_current_user_id(), '_atbdp_purchased_products', $customers_purchased );
     1553
     1554            $status['purchased_extensions']         = $purchased_extensions;
     1555            $status['invalid_purchased_extensions'] = $invalid_purchased_extensions;
     1556
     1557            $status['purchased_themes']         = $purchased_themes;
     1558            $status['invalid_purchased_themes'] = $invalid_purchased_themes;
     1559
     1560            $status['customers_purchased'] = $customers_purchased;
     1561
     1562            return $status;
     1563        }
     1564
     1565        // download_purchased_items
     1566        public function download_purchased_items() {
     1567            $status = ['success' => true, 'log' => []];
     1568
     1569            $cart = ( isset( $_POST['customers_purchased'] ) ) ? wp_unslash( $_POST['customers_purchased'] ) : '';
     1570
     1571            if ( empty( $cart ) ) {
     1572                $status['success']                        = false;
     1573                $status['log']['no_purchased_data_found'] = [
     1574                    'type'    => 'error',
     1575                    'message' => 'No purchased data found',
     1576                ];
     1577                wp_send_json( ['status' => $status] );
     1578            }
     1579
     1580            // Download the extensions
     1581            if ( ! function_exists( 'WP_Filesystem' ) ) {
     1582                include ABSPATH . 'wp-admin/includes/file.php';
     1583            }
     1584
     1585            WP_Filesystem();
     1586
     1587            // Download Extenstions
     1588            if ( ! empty( $cart['purchased_extensions'] ) ) {
     1589                foreach ( $cart['purchased_extensions'] as $extension ) {
     1590                    $download_link = $extension['download_link'];
     1591                    if ( empty( $download_link ) ) {
     1592                        continue;
     1593                    }
     1594
     1595                    $this->download_plugin( ['url' => $download_link, 'init_wp_filesystem' => false] );
     1596                }
     1597
     1598            }
     1599
     1600            // Download Themes
     1601            if ( ! empty( $cart['purchased_themes'] ) ) {
     1602                foreach ( $cart['purchased_themes'] as $theme ) {
     1603                    $download_link = $extension['download_link'];
     1604                    if ( empty( $download_link ) ) {
     1605                        continue;
     1606                    }
     1607
     1608                    $this->download_theme( ['url' => $download_link, 'init_wp_filesystem' => false] );
     1609                }
     1610
     1611            }
     1612
     1613            $status['message'] = 'Download has been completed, redirecting...';
     1614
     1615            wp_send_json( ['status' => $status] );
     1616        }
     1617
     1618        /**
     1619         * It Adds menu item
     1620         */
     1621        public function admin_menu() {
     1622            add_submenu_page(
     1623                'edit.php?post_type=at_biz_dir',
     1624                __( 'Get Extensions', 'directorist' ),
     1625                __( 'Themes & Extensions', 'directorist' ),
     1626                'manage_options',
     1627                'atbdp-extension',
     1628                [$this, 'show_extension_view']
     1629            );
     1630        }
     1631
     1632        // get_extensions_overview
     1633        public function get_extensions_overview() {
     1634            // Get Extensions Details
     1635            $plugin_updates       = get_site_transient( 'update_plugins' );
     1636            $outdated_plugins     = $plugin_updates->response;
     1637            $outdated_plugins_key = ( is_array( $outdated_plugins ) ) ? array_keys( $outdated_plugins ) : [];
     1638            $official_extensions  = is_array( $this->extensions ) ? array_keys( $this->extensions ) : [];
     1639
     1640            $all_installed_plugins_list = get_plugins();
     1641            $installed_extensions       = [];
     1642            $total_active_extensions    = 0;
     1643            $total_outdated_extensions  = 0;
     1644
     1645            foreach ( $all_installed_plugins_list as $plugin_base => $plugin_data ) {
     1646
     1647                $folder_base = strtok( $plugin_base, '/' );
     1648
     1649                if ( preg_match( '/^directorist-/', $plugin_base ) && in_array( $folder_base, $official_extensions ) ) {
     1650                    $installed_extensions[$plugin_base] = $plugin_data;
     1651
     1652                    if ( is_plugin_active( $plugin_base ) ) {
     1653                        $total_active_extensions++;
     1654                    }
     1655
     1656                    if ( in_array( $plugin_base, $outdated_plugins_key ) ) {
     1657                        $total_outdated_extensions++;
     1658                    }
     1659
     1660                }
     1661
     1662            }
     1663
     1664            // ---
     1665            $extensions_available_in_subscriptions = $this->get_extensions_available_in_subscriptions( [
     1666                'installed_extensions' => $installed_extensions,
     1667            ] );
     1668
     1669            // ---
     1670            $extensions_promo_list = $this->get_extensions_promo_list( [
     1671                'extensions_available_in_subscriptions' => $extensions_available_in_subscriptions,
     1672                'installed_extensions'                  => $installed_extensions,
     1673            ] );
     1674
     1675            $required_extensions_list = $this->prepare_the_final_requred_extension_list( [
     1676                'installed_extension_list'              => $installed_extensions,
     1677                'extensions_available_in_subscriptions' => $extensions_available_in_subscriptions,
     1678            ] );
     1679
     1680            $total_installed_ext_list             = count( $installed_extensions );
     1681            $total_ext_available_in_subscriptions = count( $extensions_available_in_subscriptions );
     1682            $total_available_extensions           = $total_installed_ext_list + $total_ext_available_in_subscriptions;
     1683
     1684            $overview = [
     1685                'outdated_plugin_list'                  => $outdated_plugins,
     1686                'outdated_plugins_key'                  => $outdated_plugins_key,
     1687                'all_installed_plugins_list'            => $all_installed_plugins_list,
     1688                'installed_extension_list'              => $installed_extensions,
     1689                'total_active_extensions'               => $total_active_extensions,
     1690                'total_outdated_extensions'             => $total_outdated_extensions,
     1691                'extensions_promo_list'                 => $extensions_promo_list,
     1692                'extensions_available_in_subscriptions' => $extensions_available_in_subscriptions,
     1693                'total_available_extensions'            => $total_available_extensions,
     1694                'required_extensions'                   => $required_extensions_list,
     1695            ];
     1696
     1697            return $overview;
     1698        }
     1699
     1700        // get_extensions_available_in_subscriptions
     1701        public function get_extensions_available_in_subscriptions( array $args = [] ) {
     1702            $installed_extensions      = ( ! empty( $args['installed_extensions'] ) ) ? $args['installed_extensions'] : [];
     1703            $installed_extensions_keys = $this->get_sanitized_extensions_keys( $installed_extensions );
     1704
     1705            $extensions_available_in_subscriptions = self::get_purchased_extension_list();
     1706            $extensions_available_in_subscriptions = ( is_array( $extensions_available_in_subscriptions ) ) ? $extensions_available_in_subscriptions : [];
     1707
     1708            if ( ! empty( $extensions_available_in_subscriptions ) && is_array( $extensions_available_in_subscriptions ) ) {
     1709
     1710                foreach ( $extensions_available_in_subscriptions as $base => $args ) {
     1711                    $base_alias       = $this->get_extension_alias_key( $base );
     1712                    $plugin_key       = preg_replace( '/(directorist-)/', '', $base );
     1713                    $plugin_alias_key = preg_replace( '/(directorist-)/', '', $base_alias );
     1714
     1715                    $is_in_installed_extensions       = in_array( $plugin_key, $installed_extensions_keys ) ? true : false;
     1716                    $is_in_installed_extensions_alias = in_array( $plugin_alias_key, $installed_extensions_keys ) ? true : false;
     1717
     1718                    if ( $is_in_installed_extensions || $is_in_installed_extensions_alias ) {
     1719                        unset( $extensions_available_in_subscriptions[$base] );
     1720                    }
     1721
     1722                }
     1723
     1724            }
     1725
     1726            return $extensions_available_in_subscriptions;
     1727        }
     1728
     1729        // get_extensions_promo_list
     1730        public function get_extensions_promo_list( array $args = [] ) {
     1731            $installed_extensions      = ( ! empty( $args['installed_extensions'] ) ) ? $args['installed_extensions'] : [];
     1732            $installed_extensions_keys = $this->get_sanitized_extensions_keys( $installed_extensions );
     1733
     1734            $extensions_available_in_subscriptions      = ( ! empty( $args['extensions_available_in_subscriptions'] ) ) ? $args['extensions_available_in_subscriptions'] : [];
     1735            $extensions_available_in_subscriptions_keys = is_array( $extensions_available_in_subscriptions ) ? array_keys( $extensions_available_in_subscriptions ) : [];
     1736
     1737            // Filter extensions available in subscriptions
     1738            $promo_extensions = $this->get_active_extensions();
     1739
     1740            if ( ! empty( $promo_extensions ) && is_array( $installed_extensions_keys ) ) {
     1741
     1742                foreach ( $promo_extensions as $_extension_base => $_extension_args ) {
     1743                    $extension_base_alias = $this->get_extension_alias_key( $_extension_base );
     1744                    $ext_key              = preg_replace( '/(directorist-)/', '', $_extension_base );
     1745                    $ext_alias_key        = preg_replace( '/(directorist-)/', '', $extension_base_alias );
     1746
     1747                    // Exclude Installed Extensions
     1748                    $in_installed_extensions       = in_array( $ext_key, $installed_extensions_keys ) ? true : false;
     1749                    $in_installed_extensions_alias = in_array( $ext_alias_key, $installed_extensions_keys ) ? true : false;
     1750
     1751                    if ( $in_installed_extensions || $in_installed_extensions_alias ) {
     1752                        unset( $promo_extensions[$_extension_base] );
     1753                    }
     1754
     1755                    // Exclude Subscripted Extensions
     1756                    $is_available_in_subscriptions       = in_array( $_extension_base, $extensions_available_in_subscriptions_keys ) ? true : false;
     1757                    $is_available_in_subscriptions_alias = in_array( $extension_base_alias, $extensions_available_in_subscriptions_keys ) ? true : false;
     1758
     1759                    if ( $is_available_in_subscriptions || $is_available_in_subscriptions_alias ) {
     1760                        unset( $promo_extensions[$_extension_base] );
     1761                    }
     1762
     1763                }
     1764
     1765            }
     1766
     1767            return $promo_extensions;
     1768        }
     1769
     1770        // get_sanitized_extensions_keys
     1771        public function get_sanitized_extensions_keys( array $extensions_list = [] ) {
     1772            $extensions_keys = ( is_array( $extensions_list ) ) ? array_keys( $extensions_list ) : [];
     1773
     1774            if ( ! empty( $extensions_keys ) && is_array( $extensions_keys ) ) {
     1775
     1776                foreach ( $extensions_keys as $index => $key ) {
     1777                    $new_key = preg_replace( '/\/.+/', '', $key );
     1778                    $new_key = preg_replace( '/(directorist-)/', '', $new_key );
     1779
     1780                    $extensions_keys[$index] = $new_key;
     1781                }
     1782
     1783            }
     1784
     1785            return $extensions_keys;
     1786        }
     1787
     1788        // get_themes_overview
     1789        public function get_themes_overview() {
     1790            // Check form theme update
     1791            $current_theme = wp_get_theme();
     1792            get_theme_update_available( $current_theme->stylesheet );
     1793
     1794            $sovware_themes       = ( is_array( $this->themes ) ) ? array_keys( $this->themes ) : [];
     1795            $theme_updates        = get_site_transient( 'update_themes' );
     1796            $outdated_themes      = $theme_updates->response;
     1797            $outdated_themes_keys = ( is_array( $outdated_themes ) ) ? array_keys( $outdated_themes ) : [];
     1798
     1799            $all_themes            = wp_get_themes();
     1800            $active_theme_slug     = get_option( 'stylesheet' );
     1801            $installed_theme_list  = [];
     1802            $total_active_themes   = 0;
     1803            $total_outdated_themes = 0;
     1804
     1805            foreach ( $all_themes as $theme_base => $theme_data ) {
     1806
     1807                if ( in_array( $theme_base, $sovware_themes ) ) {
     1808                    $customizer_link = "customize.php?theme={$theme_data->stylesheet}&return=%2Fwp-admin%2Fthemes.php";
     1809                    $customizer_link = admin_url( $customizer_link );
     1810
     1811                    $installed_theme_list[$theme_base] = [
     1812                        'name'            => $theme_data->name,
     1813                        'version'         => $theme_data->version,
     1814                        'thumbnail'       => $theme_data->get_screenshot(),
     1815                        'customizer_link' => $customizer_link,
     1816                        'has_update'      => ( in_array( $theme_data->stylesheet, $outdated_themes_keys ) ) ? true : false,
     1817                        'stylesheet'      => $theme_data->stylesheet,
     1818                    ];
     1819
     1820                    if ( $active_theme_slug === $theme_base ) {
     1821                        $total_active_themes++;
     1822                    }
     1823
     1824                    if ( in_array( $theme_base, $outdated_themes_keys ) ) {
     1825                        $total_outdated_themes++;
     1826                    }
     1827
     1828                }
     1829
     1830            }
     1831
     1832            $installed_themes_keys = ( is_array( $installed_theme_list ) ) ? array_keys( $installed_theme_list ) : [];
     1833
     1834            // Themes available in subscriptions
     1835            $themes_available_in_subscriptions = self::get_purchased_theme_list();
     1836            $themes_available_in_subscriptions = ( ! empty( $themes_available_in_subscriptions ) && is_array( $themes_available_in_subscriptions ) ) ? $themes_available_in_subscriptions : [];
     1837
     1838            if ( ! empty( $themes_available_in_subscriptions ) ) {
     1839
     1840                foreach ( $themes_available_in_subscriptions as $base => $args ) {
     1841                    $item = $themes_available_in_subscriptions[$base];
     1842
     1843                    // Merge Local Theme Info
     1844                    if ( ! empty( $this->themes[$base] ) ) {
     1845                        $item = array_merge( $this->themes[$base], $item );
     1846                    }
     1847
     1848                    // Merge Local Theme Info
     1849                    if ( in_array( $base, $installed_themes_keys ) ) {
     1850                        $item = array_merge( $installed_theme_list[$base], $item );
     1851                    }
     1852
     1853                    $is_installed         = ( in_array( $base, $installed_themes_keys ) ) ? true : false;
     1854                    $item['is_installed'] = $is_installed;
     1855
     1856                    $themes_available_in_subscriptions[$base] = $item;
     1857                }
     1858
     1859            }
     1860
     1861            // total_available_themes
     1862            $total_available_themes = count( $themes_available_in_subscriptions );
     1863
     1864            // themes_promo_list
     1865            $themes_promo_list = $this->get_themes_promo_list( [
     1866                'installed_theme_list'              => $installed_theme_list,
     1867                'themes_available_in_subscriptions' => $themes_available_in_subscriptions,
     1868            ] );
     1869
     1870            // current_active_theme_info
     1871            $current_active_theme_info = $this->get_current_active_theme_info(
     1872                [
     1873                    'outdated_themes_keys' => $outdated_themes_keys,
     1874                    'installed_theme_list' => $installed_theme_list,
     1875                ]
     1876            );
     1877            $current_active_theme_info['stylesheet'];
     1878
     1879            $themes_available_in_subscriptions_keys = array_keys( $themes_available_in_subscriptions );
     1880
     1881            if ( in_array( $current_active_theme_info['stylesheet'], $themes_available_in_subscriptions_keys ) ) {
     1882                unset( $themes_available_in_subscriptions[$current_active_theme_info['stylesheet']] );
     1883            }
     1884
     1885            $overview = [
     1886                'total_active_themes'               => $total_active_themes,
     1887                'total_outdated_themes'             => $total_outdated_themes,
     1888                'installed_theme_list'              => $installed_theme_list,
     1889                'current_active_theme_info'         => $current_active_theme_info,
     1890                'themes_promo_list'                 => $themes_promo_list,
     1891                'themes_available_in_subscriptions' => $themes_available_in_subscriptions,
     1892                'total_available_themes'            => $total_available_themes,
     1893            ];
     1894
     1895            return $overview;
     1896        }
     1897
     1898        // get_current_active_theme_info
     1899        public function get_current_active_theme_info( array $args = [] ) {
     1900            // Get Current Active Theme Info
     1901            $current_active_theme = wp_get_theme();
     1902            $customizer_link      = "customize.php?theme={$current_active_theme->stylesheet}&return=%2Fwp-admin%2Fthemes.php";
     1903            $customizer_link      = admin_url( $customizer_link );
     1904
     1905            // Check form theme update
     1906            $has_update = isset( $args[ 'installed_theme_list' ][ $current_active_theme->stylesheet ] ) ? $args[ 'installed_theme_list' ][ $current_active_theme->stylesheet ][ 'has_update' ] : '';
     1907
     1908            $active_theme_info = [
     1909                'name'            => $current_active_theme->name,
     1910                'version'         => $current_active_theme->version,
     1911                'thumbnail'       => $current_active_theme->get_screenshot(),
     1912                'customizer_link' => $customizer_link,
     1913                'has_update'      => $has_update,
     1914                'stylesheet'      => $current_active_theme->stylesheet,
     1915            ];
     1916
     1917            return $active_theme_info;
     1918        }
     1919
     1920        // get_themes_promo_list
     1921        public function get_themes_promo_list( array $args = [] ) {
     1922            $installed_theme_list  = ( ! empty( $args['installed_theme_list'] ) ) ? $args['installed_theme_list'] : [];
     1923            $installed_themes_keys = $this->get_sanitized_themes_keys( $installed_theme_list );
     1924
     1925            $themes_available_in_subscriptions      = ( ! empty( $args['themes_available_in_subscriptions'] ) ) ? $args['themes_available_in_subscriptions'] : [];
     1926            $themes_available_in_subscriptions_keys = is_array( $themes_available_in_subscriptions ) ? array_keys( $themes_available_in_subscriptions ) : [];
     1927
     1928            // Filter all active themes
     1929            $themes_promo_list = $this->get_active_themes();
     1930
     1931            if ( ! empty( $themes_promo_list ) ) {
     1932
     1933                foreach ( $themes_promo_list as $_theme_base => $_extension_args ) {
     1934
     1935                    // Exclude Installed Themes
     1936                    if ( in_array( $_theme_base, $installed_themes_keys ) ) {
     1937                        unset( $themes_promo_list[$_theme_base] );
     1938                    }
     1939
     1940                    // Exclude Subscripted Themes
     1941                    if ( in_array( $_theme_base, $themes_available_in_subscriptions_keys ) ) {
     1942                        unset( $themes_promo_list[$_theme_base] );
     1943                    }
     1944
     1945                }
     1946
     1947            }
     1948
     1949            return $themes_promo_list;
     1950        }
     1951
     1952        // get_sanitized_themes_keys
     1953        public function get_sanitized_themes_keys( array $theme_list = [] ) {
     1954            $theme_keys = ( is_array( $theme_list ) ) ? array_keys( $theme_list ) : [];
     1955
     1956            return $theme_keys;
     1957        }
     1958
     1959        // remote_activate_license
     1960        public static function remote_activate_license( $license_item = [] ) {
     1961            $status = ['success' => false];
     1962
     1963            if ( ! is_array( $license_item ) ) {
     1964                $status['message'] = __( 'Nothing to activate', 'directorist' );
     1965
     1966                return $status;
     1967            }
     1968
     1969            if ( isset( $license_item['skip_licencing'] ) && ! empty( $license_item['skip_licencing'] ) ) {
     1970                $status['success'] = true;
     1971
     1972                return $status;
     1973            }
     1974
     1975            $item_id = ( ! empty( $license_item['item_id'] ) ) ? $license_item['item_id'] : 0;
     1976            $license = ( ! empty( $license_item['license'] ) ) ? $license_item['license'] : '';
     1977
     1978            $activation_url = 'https://directorist.com';
     1979            $query_args     = [
     1980                'edd_action' => 'activate_license',
     1981                'url'        => home_url(),
     1982                'item_id'    => $item_id,
     1983                'license'    => $license,
     1984            ];
     1985
     1986            try {
     1987                $response = wp_remote_get( $activation_url, [
     1988                    'timeout'   => 15,
     1989                    'sslverify' => false,
     1990                    'body'      => $query_args,
     1991                ] );
     1992
     1993                $response_status = json_decode( $response['body'], true );
     1994            } catch ( Exception $e ) {
     1995                $status['success']  = false;
     1996                $status['message']  = $e->getMessage();
     1997                $status['response'] = null;
     1998
     1999                return $status;
     2000            }
     2001
     2002            $status['response'] = $response_status;
     2003
     2004            if ( empty( $response_status['success'] ) ) {
     2005                $status['success'] = false;
     2006                $status['message'] = __( 'Activation failed', 'directorist' );
     2007
     2008                return $status;
     2009            }
     2010
     2011            $status['success'] = true;
     2012
     2013            return $status;
     2014        }
     2015
     2016        // remote_authenticate_user
     2017        public static function remote_authenticate_user( $user_credentials = [] ) {
     2018            $status = ['success' => true];
     2019
     2020            $url     = 'https://directorist.com/wp-json/directorist/v1/licencing';
     2021            $headers = [
     2022                'user-agent' => 'Directorist/' . md5( esc_url( home_url() ) ) . ';',
     2023                'Accept'     => 'application/json',
     2024            ];
     2025
     2026            $config = [
     2027                'method'      => 'GET',
     2028                'timeout'     => 30,
     2029                'redirection' => 5,
     2030                'httpversion' => '1.0',
     2031                'headers'     => $headers,
     2032                'cookies'     => [],
     2033                'body'        => $user_credentials, // [ 'user' => '', 'password' => '']
     2034            ];
     2035
     2036            $response_body = [];
     2037
     2038            try {
     2039                $response = wp_remote_get( $url, $config );
     2040
     2041                if ( is_wp_error( $response ) ) {
     2042                    $status['success'] = false;
     2043                    $status['message'] = Directorist\Helper::get_first_wp_error_message( $response );
     2044                } else {
     2045                    $response_body = ( 'string' === gettype( $response['body'] ) ) ? json_decode( $response['body'], true ) : $response['body'];
     2046                }
     2047
     2048            } catch ( Exception $e ) {
     2049                $status['success'] = false;
     2050                $status['message'] = $e->getMessage();
     2051            }
     2052
     2053            if ( is_array( $response_body ) ) {
     2054                $status = array_merge(  $status, $response_body );
     2055            }
     2056
     2057            if ( empty( $response_body['success'] ) ) {
     2058                $status['success'] = false;
     2059            }
     2060
     2061            $status['response'] = $response_body;
     2062
     2063            return $status;
     2064        }
     2065
     2066        // get_file_download_link
     2067        public static function get_file_download_link( $file_item = [], $product_type = 'plugin' ) {
     2068            if ( ! is_array( $file_item ) ) {
     2069                return '';
     2070            }
     2071
     2072            if ( ! isset( $file_item['item_id'] ) ) {
     2073                return '';
     2074            }
     2075
     2076            if ( ! isset( $file_item['license'] ) ) {
     2077                return '';
     2078            }
     2079
     2080            if ( empty( $file_item['item_id'] ) || empty( $file_item['license'] ) ) {
     2081                return '';
     2082            }
     2083
     2084            $activation_url = 'https://directorist.com/wp-json/directorist/v1/get-product-data/';
     2085            $query_args     = [
     2086                'product_type' => $product_type,
     2087                'license'      => $file_item['license'],
     2088                'item_id'      => $file_item['item_id'],
     2089                'get_info'     => 'download_link',
     2090            ];
     2091
     2092            try {
     2093                $response = wp_remote_get( $activation_url, [
     2094                    'timeout'   => 15,
     2095                    'sslverify' => false,
     2096                    'body'      => $query_args,
     2097                ] );
     2098
     2099                $response = json_decode( $response['body'], true );
     2100            } catch ( Exception $e ) {
     2101                return '';
     2102            }
     2103
     2104            $status['response'] = $response;
     2105
     2106            if ( empty( $response['success'] ) && empty( $response['data'] ) ) {
     2107                return '';
     2108            }
     2109
     2110            return $response['data'];
     2111        }
     2112
     2113        // get_purchased_extension_list
     2114        public static function get_purchased_extension_list() {
     2115            $extensions_available_in_subscriptions = get_user_meta( get_current_user_id(), '_plugins_available_in_subscriptions', true );
     2116            $directorist_purchased_extension_list  = apply_filters( 'directorist_purchased_extension_list', $extensions_available_in_subscriptions );
     2117
     2118            if ( is_array( $directorist_purchased_extension_list ) ) {
     2119                return $directorist_purchased_extension_list;
     2120            }
     2121
     2122            return $extensions_available_in_subscriptions;
     2123        }
     2124
     2125        // get_purchased_theme_list
     2126        public static function get_purchased_theme_list() {
     2127            $themes_available_in_subscriptions = get_user_meta( get_current_user_id(), '_themes_available_in_subscriptions', true );
     2128            $directorist_purchased_theme_list  = apply_filters( 'directorist_purchased_theme_list', $themes_available_in_subscriptions );
     2129
     2130            if ( is_array( $directorist_purchased_theme_list ) ) {
     2131                return $directorist_purchased_theme_list;
     2132            }
     2133
     2134            return $themes_available_in_subscriptions;
     2135        }
     2136
     2137        // filter_product_name
     2138        public static function filter_product_type( $product_type = '' ) {
     2139            if ( 'plugins' === $product_type ) {
     2140                $product_type = 'plugin';
     2141            }
     2142
     2143            if ( 'themes' === $product_type ) {
     2144                $product_type = 'theme';
     2145            }
     2146
     2147            return $product_type;
     2148        }
     2149
     2150        /**
     2151         * It Loads Extension view
     2152         */
     2153        public function show_extension_view() {
     2154            // delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
     2155            // delete_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion' );
     2156
     2157            // Check Sassion
     2158            $has_subscriptions_sassion = get_user_meta( get_current_user_id(), '_atbdp_has_subscriptions_sassion', true );
     2159            $is_logged_in              = ( ! empty( $has_subscriptions_sassion ) ) ? true : false;
     2160
     2161            $settings_url = admin_url( 'edit.php?post_type=at_biz_dir&page=atbdp-settings#extension_settings__extensions_general' );
     2162
     2163            $extensions_overview = $this->get_extensions_overview();
     2164            $themes_overview     = $this->get_themes_overview();
     2165
     2166            $hard_logout = apply_filters( 'atbdp_subscriptions_hard_logout', false );
     2167            $hard_logout = ( $hard_logout ) ? 1 : 0;
     2168
     2169            $data = [
     2170                'ATBDP_Extensions'                      => $this,
     2171                'is_logged_in'                          => $is_logged_in,
     2172                'hard_logout'                           => $hard_logout,
     2173
     2174                'total_active_extensions'               => $extensions_overview['total_active_extensions'],
     2175                'total_outdated_extensions'             => $extensions_overview['total_outdated_extensions'],
     2176                'outdated_plugin_list'                  => $extensions_overview['outdated_plugin_list'],
     2177                'installed_extension_list'              => $extensions_overview['installed_extension_list'],
     2178                'extensions_available_in_subscriptions' => $extensions_overview['extensions_available_in_subscriptions'],
     2179                'total_available_extensions'            => $extensions_overview['total_available_extensions'],
     2180                'extensions_promo_list'                 => $extensions_overview['extensions_promo_list'],
     2181                'required_extensions_list'              => $extensions_overview['required_extensions'],
     2182
     2183                'total_active_themes'                   => $themes_overview['total_active_themes'],               // $my_active_themes,
     2184                'total_outdated_themes'                 => $themes_overview['total_outdated_themes'],             // $my_outdated_themes,
     2185                'installed_theme_list'                  => $themes_overview['installed_theme_list'],              // $installed_theme_list,
     2186                'current_active_theme_info'             => $themes_overview['current_active_theme_info'],         // $active_theme,
     2187                'themes_available_in_subscriptions'     => $themes_overview['themes_available_in_subscriptions'], // $themes_available_in_subscriptions,
     2188                'total_available_themes'                => $themes_overview['total_available_themes'],
     2189                'themes_promo_list'                     => $themes_overview['themes_promo_list'],
     2190
     2191                'extension_list'                        => $this->extensions,
     2192                'theme_list'                            => $this->themes,
     2193
     2194                'settings_url'                          => $settings_url,
     2195            ];
     2196
     2197            ATBDP()->load_template( 'admin-templates/theme-extensions/theme-extension', $data );
     2198        }
     2199
     2200        private function is_verified_nonce(){
     2201            $nonce = ! empty( $_POST['nonce'] ) ? wp_unslash( $_POST['nonce'] ) : '';
     2202            return wp_verify_nonce( $nonce, 'atbdp_nonce_action_js' );
     2203        }
     2204
     2205        /**
     2206         * Check the extension is being downloaded from varified source.
     2207         *
     2208         * @param  string $extension_url
     2209         *
     2210         * @return bool
     2211         */
     2212        protected function is_varified_host( $extension_url ) {
     2213            $signed_hostnames = array( 'directorist.com' );
     2214
     2215            return in_array( parse_url( $extension_url, PHP_URL_HOST ), $signed_hostnames, true );
     2216        }
     2217
     2218    }
    22082219
    22092220}
  • directorist/trunk/languages/directorist.pot

    r2731298 r2752034  
    11# Copyright (C) 2022 Directorist – Business Directory & Classified Listings WordPress Plugin
    22# This file is distributed under the same license as the Directorist – Business Directory & Classified Listings WordPress Plugin package.
    33msgid ""
    44msgstr ""
    55"Project-Id-Version: Directorist – Business Directory & Classified Listings WordPress Plugin\n"
    66"MIME-Version: 1.0\n"
    77"Content-Type: text/plain; charset=UTF-8\n"
    88"Content-Transfer-Encoding: 8bit\n"
    99"X-Poedit-Basepath: ..\n"
    1010"X-Poedit-KeywordsList: __;_e;_ex:1,2c;_n:1,2;_n_noop:1,2;_nx:1,2,4c;_nx_noop:1,2,3c;_x:1,2c;esc_attr__;esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c\n"
    1111"X-Poedit-SearchPath-0: .\n"
    1212"X-Poedit-SearchPathExcluded-0: *.js\n"
    1313"X-Poedit-SourceCharset: UTF-8\n"
    1414"Plural-Forms: nplurals=2; plural=(n != 1);\n"
    1515
    1616#: ../config.php:61
    1717msgid "You do not have the right to access this file directly"
    1818msgstr ""
    1919
    2020#: ../directorist-base.php:501, ../directorist-base.php:514
    2121msgid "Cheatin&#8217; huh?"
    2222msgstr ""
    2323
    2424#: ../directorist-base.php:528
    2525msgid "Directorist - Listing Right Sidebar"
    2626msgstr ""
    2727
    2828#: ../directorist-base.php:530
    2929msgid "Add widgets for the right sidebar on single listing page"
    3030msgstr ""
    3131
    3232#: ../directorist-base.php:590, ../includes/classes/class-settings-panel.php:5302
    3333msgid "Uninstall"
    3434msgstr ""
    3535
    3636#: ../directorist-base.php:596
    3737msgid "Uninstall Settings"
    3838msgstr ""
    3939
    4040#: ../directorist-base.php:602, ../directorist-base.php:608
    4141msgid "Listings Import"
    4242msgstr ""
    4343
    4444#: ../includes/class-helper.php:234, ../includes/classes/class-helper.php:300, ../includes/model/SingleListing.php:373, ../templates/dashboard/tab-profile.php:152, ../views/front-end/user-dashboard.php:564
    4545msgid "Facebook"
    4646msgstr ""
    4747
    4848#: ../includes/class-helper.php:235, ../includes/classes/class-helper.php:301, ../includes/model/SingleListing.php:378, ../templates/dashboard/tab-profile.php:162, ../views/front-end/user-dashboard.php:574
    4949msgid "Twitter"
    5050msgstr ""
    5151
    5252#: ../includes/class-helper.php:236, ../includes/classes/class-helper.php:302, ../includes/model/SingleListing.php:383, ../templates/dashboard/tab-profile.php:172, ../views/front-end/user-dashboard.php:585
    5353msgid "LinkedIn"
    5454msgstr ""
    5555
    5656#: ../includes/class-helper.php:237, ../includes/classes/class-helper.php:303
    5757msgid "Pinterest"
    5858msgstr ""
    5959
    6060#: ../includes/class-helper.php:238, ../includes/classes/class-helper.php:304
    6161msgid "Instagram"
    6262msgstr ""
    6363
    6464#: ../includes/class-helper.php:239, ../includes/classes/class-helper.php:305
    6565msgid "Tumblr"
    6666msgstr ""
    6767
    6868#: ../includes/class-helper.php:240, ../includes/classes/class-helper.php:306
    6969msgid "Flickr"
    7070msgstr ""
    7171
    7272#: ../includes/class-helper.php:241, ../includes/classes/class-helper.php:307
    7373msgid "Snapchat"
    7474msgstr ""
    7575
    7676#: ../includes/class-helper.php:242, ../includes/classes/class-helper.php:308
    7777msgid "Reddit"
    7878msgstr ""
    7979
    8080#: ../includes/class-helper.php:243, ../includes/classes/class-helper.php:309, ../templates/dashboard/tab-profile.php:182, ../views/front-end/user-dashboard.php:595
    8181msgid "Youtube"
    8282msgstr ""
    8383
    8484#: ../includes/class-helper.php:244, ../includes/classes/class-helper.php:310
    8585msgid "Vimeo"
    8686msgstr ""
    8787
    8888#: ../includes/class-helper.php:245, ../includes/classes/class-helper.php:311
    8989msgid "Vine"
    9090msgstr ""
    9191
    9292#: ../includes/class-helper.php:246, ../includes/classes/class-helper.php:312
    9393msgid "Github"
    9494msgstr ""
    9595
    9696#: ../includes/class-helper.php:247, ../includes/classes/class-helper.php:313
    9797msgid "Dribbble"
    9898msgstr ""
    9999
    100100#: ../includes/class-helper.php:248, ../includes/classes/class-helper.php:314
    101101msgid "Behance"
    102102msgstr ""
    103103
    104104#: ../includes/class-helper.php:249, ../includes/classes/class-helper.php:315
    105105msgid "SoundCloud"
    106106msgstr ""
    107107
    108108#: ../includes/class-helper.php:250, ../includes/classes/class-helper.php:316
    109109msgid "StackOverFLow"
    110110msgstr ""
    111111
    112112#: ../includes/class-helper.php:286, ../includes/class-helper.php:306
    113113msgid "Skimming"
    114114msgstr ""
    115115
    116116#: ../includes/class-helper.php:291
    117117msgid "Moderate"
    118118msgstr ""
    119119
    120120#: ../includes/class-helper.php:296
    121121msgid "Economy"
    122122msgstr ""
    123123
    124124#: ../includes/class-helper.php:301, ../templates/listing-form/fields/pricing.php:108
    125125msgid "Cheap"
    126126msgstr ""
    127127
    128128#: ../includes/custom-actions.php:23, ../includes/classes/class-settings-panel.php:4776, ../includes/classes/class-setup-wizard.php:445, ../includes/classes/class-setup-wizard.php:502
    129129msgid "Privacy Policy"
    130130msgstr ""
    131131
    132132#: ../includes/custom-actions.php:129, ../includes/classes/class-setup-wizard.php:496, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4568
    133133msgid "Terms and Conditions"
    134134msgstr ""
    135135
    136136#: ../includes/custom-actions.php:191
    137137msgid " Continue"
    138138msgstr ""
    139139
    140140#: ../includes/custom-actions.php:225
    141141msgid "Activate License"
    142142msgstr ""
    143143
    144144#: ../includes/custom-actions.php:232
    145145msgid "Enter your extension license keys here to receive updates for purchased extensions. Click %s to know more about licensing."
    146146msgstr ""
    147147
    148148#: ../includes/helper-functions.php:124
    149149msgid "You need to be logged in to view the content of this page"
    150150msgstr ""
    151151
    152152#: ../includes/helper-functions.php:5863, ../includes/classes/class-helper.php:540
    153153msgid "You need to be logged in to view the content of this page. You can login %s. Don't have an account? %s"
    154154msgstr ""
    155155
    156156#: ../includes/helper-functions.php:5863, ../includes/classes/class-helper.php:540, ../includes/classes/class-settings-panel.php:3981, ../templates/account/registration.php:29, ../templates/account/registration.php:24
    157157msgid "Here"
    158158msgstr ""
    159159
    160160#: ../includes/helper-functions.php:5863, ../views/widget-templates/login-form.php:19, ../views/widgets/login.php:18
    161161msgid "Sign up"
    162162msgstr ""
    163163
    164164#: ../includes/helper-functions.php:5892
    165165msgid "Jan"
    166166msgstr ""
    167167
    168168#: ../includes/helper-functions.php:5893
    169169msgid "Feb"
    170170msgstr ""
    171171
    172172#: ../includes/helper-functions.php:5894
    173173msgid "Mar"
    174174msgstr ""
    175175
    176176#: ../includes/helper-functions.php:5895
    177177msgid "Apr"
    178178msgstr ""
    179179
    180180#: ../includes/helper-functions.php:5896
    181181msgid "May"
    182182msgstr ""
    183183
    184184#: ../includes/helper-functions.php:5897
    185185msgid "Jun"
    186186msgstr ""
    187187
    188188#: ../includes/helper-functions.php:5898
    189189msgid "Jul"
    190190msgstr ""
    191191
    192192#: ../includes/helper-functions.php:5899
    193193msgid "Aug"
    194194msgstr ""
    195195
    196196#: ../includes/helper-functions.php:5900
    197197msgid "Sep"
    198198msgstr ""
    199199
    200200#: ../includes/helper-functions.php:5901
    201201msgid "Oct"
    202202msgstr ""
    203203
    204204#: ../includes/helper-functions.php:5902
    205205msgid "Nov"
    206206msgstr ""
    207207
    208208#: ../includes/helper-functions.php:5903
    209209msgid "Dec"
    210210msgstr ""
    211211
    212212#: ../includes/helper-functions.php:6457, ../includes/classes/class-settings-panel.php:1685, ../includes/classes/class-settings-panel.php:3110
    213213msgid "A to Z (title)"
    214214msgstr ""
    215215
    216216#: ../includes/helper-functions.php:6458, ../includes/classes/class-settings-panel.php:1689, ../includes/classes/class-settings-panel.php:3114
    217217msgid "Z to A (title)"
    218218msgstr ""
    219219
    220220#: ../includes/helper-functions.php:6459, ../includes/classes/class-settings-panel.php:1693, ../includes/classes/class-settings-panel.php:3118
    221221msgid "Latest listings"
    222222msgstr ""
    223223
    224224#: ../includes/helper-functions.php:6460, ../includes/classes/class-settings-panel.php:1697, ../includes/classes/class-settings-panel.php:3122
    225225msgid "Oldest listings"
    226226msgstr ""
    227227
    228228#: ../includes/helper-functions.php:6461, ../includes/classes/class-settings-panel.php:1701, ../includes/classes/class-settings-panel.php:3126
    229229msgid "Popular listings"
    230230msgstr ""
    231231
    232232#: ../includes/helper-functions.php:6462, ../includes/classes/class-settings-panel.php:1705, ../includes/classes/class-settings-panel.php:3130
    233233msgid "Price (low to high)"
    234234msgstr ""
    235235
    236236#: ../includes/helper-functions.php:6463, ../includes/classes/class-settings-panel.php:1709, ../includes/classes/class-settings-panel.php:3134
    237237msgid "Price (high to low)"
    238238msgstr ""
    239239
    240240#: ../includes/helper-functions.php:6464, ../includes/classes/class-settings-panel.php:1713, ../includes/classes/class-settings-panel.php:3138
    241241msgid "Random listings"
    242242msgstr ""
    243243
    244244#: ../includes/helper-functions.php:6609, ../includes/classes/class-settings-panel.php:1754, ../includes/classes/class-settings-panel.php:1773, ../includes/classes/class-settings-panel.php:3057, ../includes/classes/class-settings-panel.php:3583, ../includes/classes/class-settings-panel.php:3671, ../includes/classes/class-widget-categories.php:132, ../includes/classes/class-widget-locations.php:130, ../includes/classes/class-widget-tags.php:126
    245245msgid "List"
    246246msgstr ""
    247247
    248248#: ../includes/helper-functions.php:6612, ../includes/classes/class-settings-panel.php:1750, ../includes/classes/class-settings-panel.php:1769, ../includes/classes/class-settings-panel.php:3053, ../includes/classes/class-settings-panel.php:3579, ../includes/classes/class-settings-panel.php:3667
    249249msgid "Grid"
    250250msgstr ""
    251251
    252252#: ../includes/helper-functions.php:6615, ../includes/classes/class-settings-panel.php:1758, ../includes/classes/class-settings-panel.php:1777, ../includes/classes/class-settings-panel.php:3061, ../includes/classes/class-settings-panel.php:4629, ../includes/classes/class-settings-panel.php:4633, ../includes/classes/class-widget-all-map.php:56, ../includes/classes/class-widget-map.php:51, ../includes/classes/class-widget-map.php:78, ../views/widget-templates/all-map.php:5, ../views/widgets/map-all.php:5
    253253msgid "Map"
    254254msgstr ""
    255255
    256256#: ../includes/helper-functions.php:7001, ../includes/classes/class-script-helper.php:54, ../includes/classes/class-script-helper.php:68, ../includes/model/Listings.php:176, ../includes/model/Listings.php:220
    257257msgid "Select a category"
    258258msgstr ""
    259259
    260260#: ../includes/helper-functions.php:7086
    261261msgid "Select a Sub Category"
    262262msgstr ""
    263263
    264264#: ../includes/helper-functions.php:7087
    265265msgid "Select a Sub Location"
    266266msgstr ""
    267267
    268268#: ../includes/helper-functions.php:7583
    269269msgid "Email already registered. Please login first"
    270270msgstr ""
    271271
    272272#: ../includes/helper-functions.php:7622, ../includes/classes/class-settings-panel.php:4537
    273273msgid "Remove Data on Uninstall?"
    274274msgstr ""
    275275
    276276#: ../includes/helper-functions.php:7623, ../includes/classes/class-settings-panel.php:4538
    277277msgid "Checked it if you would like Directorist to completely remove all of its data when the plugin is deleted."
    278278msgstr ""
    279279
    280280#: ../includes/helper-functions.php:7634
    281281msgid "CSV"
    282282msgstr ""
    283283
    284284#: ../includes/helper-functions.php:7735
    285285msgid "Search Home"
    286286msgstr ""
    287287
    288288#: ../includes/helper-functions.php:7739, ../includes/classes/class-settings-panel.php:4690, ../includes/classes/class-setup-wizard.php:405, ../includes/elementor/search-result.php:15
    289289msgid "Search Result"
    290290msgstr ""
    291291
    292292#: ../includes/helper-functions.php:7743, ../includes/classes/class-setup-wizard.php:325
    293293msgid "Add Listing"
    294294msgstr ""
    295295
    296296#: ../includes/helper-functions.php:7747, ../includes/classes/class-settings-panel.php:4562, ../includes/classes/class-setup-wizard.php:333, ../includes/elementor/all-listing.php:16, ../templates/dashboard/tab-my-listings.php:28
    297297msgid "All Listings"
    298298msgstr ""
    299299
    300300#: ../includes/helper-functions.php:7755, ../includes/classes/class-setup-wizard.php:341, ../includes/elementor/category.php:15
    301301msgid "Single Category"
    302302msgstr ""
    303303
    304304#: ../includes/helper-functions.php:7763, ../includes/classes/class-setup-wizard.php:349, ../includes/elementor/location.php:15
    305305msgid "Single Location"
    306306msgstr ""
    307307
    308308#: ../includes/helper-functions.php:7767, ../includes/classes/class-setup-wizard.php:357, ../includes/elementor/tag.php:15
    309309msgid "Single Tag"
    310310msgstr ""
    311311
    312312#: ../includes/helper-functions.php:7771, ../includes/classes/class-setup-wizard.php:365
    313313msgid "Author Profile"
    314314msgstr ""
    315315
    316316#: ../includes/helper-functions.php:7775, ../includes/classes/class-settings-panel.php:4870, ../includes/classes/class-setup-wizard.php:373, ../includes/elementor/user-dashboard.php:15
    317317msgid "Dashboard"
    318318msgstr ""
    319319
    320320#: ../includes/helper-functions.php:7779, ../includes/classes/class-setup-wizard.php:389, ../includes/elementor/custom-registration.php:15
    321321msgid "Registration"
    322322msgstr ""
    323323
    324324#: ../includes/helper-functions.php:7783, ../includes/classes/class-setup-wizard.php:381, ../includes/elementor/user-login.php:15, ../includes/model/SingleListing.php:1116, ../templates/listing-form/quick-login.php:41
    325325msgid "Login"
    326326msgstr ""
    327327
    328328#: ../includes/helper-functions.php:8237
    329329msgid "Add listing page not selected"
    330330msgstr ""
    331331
    332332#: ../includes/helper-functions.php:8238, ../includes/helper-functions.php:8246, ../includes/helper-functions.php:8254, ../includes/helper-functions.php:8262, ../includes/helper-functions.php:8270, ../includes/helper-functions.php:8278, ../includes/helper-functions.php:8286, ../includes/helper-functions.php:8294, ../includes/helper-functions.php:8302, ../includes/helper-functions.php:8310, ../includes/helper-functions.php:8318, ../includes/helper-functions.php:8326, ../includes/helper-functions.php:8334
    333333msgid "Contains a collection of relevant data that will help you debug your website accurately and more efficiently."
    334334msgstr ""
    335335
    336336#: ../includes/helper-functions.php:8240, ../includes/helper-functions.php:8248, ../includes/helper-functions.php:8256, ../includes/helper-functions.php:8264, ../includes/helper-functions.php:8272, ../includes/helper-functions.php:8280, ../includes/helper-functions.php:8288, ../includes/helper-functions.php:8296, ../includes/helper-functions.php:8304, ../includes/helper-functions.php:8312, ../includes/helper-functions.php:8320, ../includes/helper-functions.php:8328
    337337msgid "Select Page"
    338338msgstr ""
    339339
    340340#: ../includes/helper-functions.php:8245
    341341msgid "Dashboard page not selected"
    342342msgstr ""
    343343
    344344#: ../includes/helper-functions.php:8253
    345345msgid "User Profile page not selected"
    346346msgstr ""
    347347
    348348#: ../includes/helper-functions.php:8261
    349349msgid "Single Category page not selected"
    350350msgstr ""
    351351
    352352#: ../includes/helper-functions.php:8269, ../includes/helper-functions.php:8277
    353353msgid "Single Location page not selected"
    354354msgstr ""
    355355
    356356#: ../includes/helper-functions.php:8285
    357357msgid "Registration page not selected"
    358358msgstr ""
    359359
    360360#: ../includes/helper-functions.php:8293
    361361msgid "Login page not selected"
    362362msgstr ""
    363363
    364364#: ../includes/helper-functions.php:8301
    365365msgid "Search Result page not selected"
    366366msgstr ""
    367367
    368368#: ../includes/helper-functions.php:8309
    369369msgid "Checkout page not selected"
    370370msgstr ""
    371371
    372372#: ../includes/helper-functions.php:8317
    373373msgid "Payment Receipt page not selected"
    374374msgstr ""
    375375
    376376#: ../includes/helper-functions.php:8325
    377377msgid "Transaction Failure page not selected"
    378378msgstr ""
    379379
    380380#: ../includes/helper-functions.php:8333
    381381msgid "Map Api Key is missing"
    382382msgstr ""
    383383
    384384#: ../includes/helper-functions.php:8336
    385385msgid "Give the Api"
    386386msgstr ""
    387387
    388388#: ../includes/helper-functions.php:8341
    389389msgid "SMTP not configured"
    390390msgstr ""
    391391
    392392#: ../includes/helper-functions.php:8342
    393393msgid "SMTP is a TCP/IP protocol responsible for email deliveries. You must configure SMTP to send or receive emails."
    394394msgstr ""
    395395
    396396#: ../includes/helper-functions.php:8429
    397397msgid "Something went wrong!"
    398398msgstr ""
    399399
    400400#: ../includes/helper-functions.php:8430
    401401msgid "Registration failed. Please make sure you filed up all the necessary fields marked with <span style=\"color: red\">*</span>"
    402402msgstr ""
    403403
    404404#: ../includes/helper-functions.php:8431
    405405msgid "Sorry, that email already exists!"
    406406msgstr ""
    407407
    408408#: ../includes/helper-functions.php:8432, ../includes/classes/class-user.php:230
    409409msgid "Username too short. At least 4 characters is required"
    410410msgstr ""
    411411
    412412#: ../includes/helper-functions.php:8433, ../includes/classes/class-user.php:234
    413413msgid "Sorry, that username already exists!"
    414414msgstr ""
    415415
    416416#: ../includes/helper-functions.php:8434, ../includes/classes/class-user.php:244
    417417msgid "Password length must be greater than 5"
    418418msgstr ""
    419419
    420420#: ../includes/helper-functions.php:8435, ../includes/classes/class-user.php:259
    421421msgid "Email is not valid"
    422422msgstr ""
    423423
    424424#: ../includes/helper-functions.php:8436
    425425msgid "Space is not allowed in username"
    426426msgstr ""
    427427
    428428#: ../includes/helper-functions.php:8437
    429429msgid "Please make sure you filed up the user type"
    430430msgstr ""
    431431
    432432#: ../includes/checkout/class-checkout.php:60
    433433msgid "Monetization is not active on this site. if you are an admin, you can enable it from the settings panel."
    434434msgstr ""
    435435
    436436#: ../includes/checkout/class-checkout.php:68
    437437msgid "Sorry, Something went wrong. Listing ID is missing. Please try again."
    438438msgstr ""
    439439
    440440#: ../includes/checkout/class-checkout.php:80, ../includes/checkout/class-checkout.php:176, ../includes/classes/class-custom-post.php:257, ../includes/classes/class-custom-post.php:265, ../includes/classes/class-settings-panel.php:490, ../includes/classes/class-settings-panel.php:2236, ../includes/model/Listings.php:183, ../includes/model/Listings.php:2026, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3318, ../views/front-end/user-dashboard.php:216, ../views/admin-templates/listing-form/expiration-featured-fields.php:57
    441441msgid "Featured"
    442442msgstr ""
    443443
    444444#: ../includes/checkout/class-checkout.php:104
    445445msgid "Sorry, Nothing is available to buy. Please try again."
    446446msgstr ""
    447447
    448448#: ../includes/checkout/class-checkout.php:151
    449449msgid "Sorry! No order id has been provided."
    450450msgstr ""
    451451
    452452#: ../includes/checkout/class-checkout.php:157
    453453msgid "Sorry! order not found."
    454454msgstr ""
    455455
    456456#. translators: %d: interval
    457457#: ../includes/classes/class-abstract-background-process.php:176
    458458msgid "Every %d minutes"
    459459msgstr ""
    460460
    461461#: ../includes/classes/class-add-listing.php:73, ../includes/classes/class-ajax-handler.php:218, ../includes/classes/class-ajax-handler.php:1016, ../includes/classes/class-ajax-handler.php:1224, ../includes/classes/class-settings-panel.php:360, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:236, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:316, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:438
    462462msgid "Something is wrong! Please refresh and retry."
    463463msgstr ""
    464464
    465465#: ../includes/classes/class-add-listing.php:131, ../includes/classes/class-add-listing.php:136, ../includes/classes/class-add-listing.php:141, ../includes/classes/class-add-listing.php:146, ../includes/classes/class-add-listing.php:151, ../includes/classes/class-add-listing.php:157
    466466msgid " field is required!"
    467467msgstr ""
    468468
    469469#: ../includes/classes/class-add-listing.php:667
    470470msgid "Your Submission is Completed! redirecting.."
    471471msgstr ""
    472472
    473473#: ../includes/classes/class-add-listing.php:671
    474474msgid "Sorry! Something Wrong with Your Submission"
    475475msgstr ""
    476476
    477477#: ../includes/classes/class-add-listing.php:677
    478478msgid "Payment Required! redirecting to checkout.."
    479479msgstr ""
    480480
    481481#: ../includes/classes/class-ajax-handler.php:161
    482482msgid "Invalid Nonce"
    483483msgstr ""
    484484
    485485#: ../includes/classes/class-ajax-handler.php:168, ../includes/classes/class-ajax-handler.php:277
    486486msgid "Your are already loggedin"
    487487msgstr ""
    488488
    489489#: ../includes/classes/class-ajax-handler.php:181, ../includes/classes/class-ajax-handler.php:293, ../includes/classes/class-ajax-handler.php:557, ../includes/model/Account.php:43
    490490msgid "Wrong username or password."
    491491msgstr ""
    492492
    493493#: ../includes/classes/class-ajax-handler.php:189, ../includes/classes/class-ajax-handler.php:301, ../includes/classes/class-ajax-handler.php:539, ../includes/classes/class-ajax-handler.php:564
    494494msgid "Login successful, redirecting..."
    495495msgstr ""
    496496
    497497#: ../includes/classes/class-ajax-handler.php:233, ../includes/classes/class-settings-panel.php:4705, ../includes/classes/class-user.php:65
    498498msgid "User"
    499499msgstr ""
    500500
    501501#: ../includes/classes/class-ajax-handler.php:244, ../includes/classes/class-custom-post.php:254, ../includes/classes/class-user.php:63
    502502msgid "Author"
    503503msgstr ""
    504504
    505505#: ../includes/classes/class-ajax-handler.php:255
    506506msgid "Sent successfully"
    507507msgstr ""
    508508
    509509#: ../includes/classes/class-ajax-handler.php:269, ../includes/review/class-comment-form-processor.php:32, ../includes/review/class-comment-form-renderer.php:45
    510510msgid "Invalid request."
    511511msgstr ""
    512512
    513513#: ../includes/classes/class-ajax-handler.php:390
    514514msgid "Slug Changes Successfully."
    515515msgstr ""
    516516
    517517#: ../includes/classes/class-ajax-handler.php:383
    518518msgid "This slug already in use."
    519519msgstr ""
    520520
    521521#: ../includes/classes/class-ajax-handler.php:518
    522522msgid "Congratulations! All old pages have been updated successfully"
    523523msgstr ""
    524524
    525525#: ../includes/classes/class-ajax-handler.php:529
    526526msgid "Something went wrong, please reload the page"
    527527msgstr ""
    528528
    529529#: ../includes/classes/class-ajax-handler.php:584
    530530msgid "Invalid upload request!"
    531531msgstr ""
    532532
    533533#: ../includes/classes/class-ajax-handler.php:588
    534534msgid "Invalid directory type!"
    535535msgstr ""
    536536
    537537#: ../includes/classes/class-ajax-handler.php:734, ../includes/classes/class-ajax-handler.php:761, ../includes/classes/class-ajax-handler.php:765
    538538msgid "Ops! something went wrong. Try again."
    539539msgstr ""
    540540
    541541#: ../includes/classes/class-ajax-handler.php:758
    542542msgid "Profile updated successfully"
    543543msgstr ""
    544544
    545545#: ../includes/classes/class-ajax-handler.php:841, ../includes/classes/class-ajax-handler.php:904, ../includes/review/class-email.php:77, ../includes/review/class-email.php:123
    546546msgid "[{site_name}] New review at \"{listing_title}\""
    547547msgstr ""
    548548
    549549#: ../includes/classes/class-ajax-handler.php:844
    550550msgid "Dear User,<br /><br />A new review at {listing_url}.<br /><br />"
    551551msgstr ""
    552552
    553553#: ../includes/classes/class-ajax-handler.php:907
    554554msgid "Dear Administrator,<br /><br />A new review at {listing_url}.<br /><br />Name: {sender_name}<br />Email: {sender_email}"
    555555msgstr ""
    556556
    557557#: ../includes/classes/class-ajax-handler.php:996, ../includes/rest-api/Version1/class-listings-actions-controller.php:235
    558558msgid "{site_name} Report Abuse via \"{listing_title}\""
    559559msgstr ""
    560560
    561561#: ../includes/classes/class-ajax-handler.php:999, ../includes/rest-api/Version1/class-listings-actions-controller.php:238
    562562msgid "Dear Administrator,<br /><br />This is an email abuse report for a listing at {listing_url}.<br /><br />Name: {sender_name}<br />Email: {sender_email}<br />Message: {message}"
    563563msgstr ""
    564564
    565565#: ../includes/classes/class-ajax-handler.php:1026
    566566msgid "Trying to report invalid listing."
    567567msgstr ""
    568568
    569569#: ../includes/classes/class-ajax-handler.php:1033
    570570msgid "Report message cannot be empty."
    571571msgstr ""
    572572
    573573#: ../includes/classes/class-ajax-handler.php:1041, ../includes/classes/class-ajax-handler.php:1259, ../includes/classes/class-ajax-handler.php:1267
    574574msgid "Sorry! Please try again."
    575575msgstr ""
    576576
    577577#: ../includes/classes/class-ajax-handler.php:1046, ../includes/classes/class-ajax-handler.php:1272
    578578msgid "Your message sent successfully."
    579579msgstr ""
    580580
    581581#: ../includes/classes/class-ajax-handler.php:1176
    582582msgid "{site_name} Contact via {listing_title}"
    583583msgstr ""
    584584
    585585#: ../includes/classes/class-ajax-handler.php:1178
    586586msgid "Dear Administrator,<br /><br />A listing on your website {site_name} received a message.<br /><br />Listing URL: {listing_url}<br /><br />Name: {sender_name}<br />Email: {sender_email}<br />Message: {message}<br />Time: {now}<br /><br />This is just a copy of the original email and was already sent to the listing owner. You don't have to reply this unless necessary."
    587587msgstr ""
    588588
    589589#: ../includes/classes/class-ajax-handler.php:1243, ../includes/classes/class-ajax-handler.php:1250
    590590msgid "Sorry! Something wrong."
    591591msgstr ""
    592592
    593593#: ../includes/classes/class-announcement.php:31, ../includes/classes/class-announcement.php:264, ../includes/classes/class-settings-panel.php:2581, ../includes/model/ListingDashboard.php:399
    594594msgid "Announcements"
    595595msgstr ""
    596596
    597597#: ../includes/classes/class-announcement.php:127, ../includes/classes/class-announcement.php:131, ../includes/classes/class-announcement.php:332, ../includes/classes/class-announcement.php:336
    598598msgid "No announcement found"
    599599msgstr ""
    600600
    601601#: ../includes/classes/class-announcement.php:118, ../includes/classes/class-announcement.php:323
    602602msgid "<i class=\"la la-times\"></i>"
    603603msgstr ""
    604604
    605605#: ../includes/classes/class-custom-post.php:77, ../includes/classes/class-custom-taxonomy.php:282, ../includes/classes/class-custom-taxonomy.php:356, ../includes/classes/class-custom-taxonomy.php:447, ../includes/classes/class-custom-taxonomy.php:495, ../includes/classes/class-custom-taxonomy.php:651, ../includes/classes/class-custom-taxonomy.php:664
    606606msgid "Directory Type"
    607607msgstr ""
    608608
    609609#: ../includes/classes/class-custom-post.php:79, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3573, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3898, ../templates/dashboard/profile-pic.php:42, ../templates/dashboard/profile-pic.php:44, ../templates/search-form/custom-fields/select.php:21, ../views/front-end/user-dashboard.php:419, ../views/front-end/user-dashboard.php:420
    610610msgid "Select"
    611611msgstr ""
    612612
    613613#: ../includes/classes/class-custom-post.php:175
    614614msgctxt "Plural Name of Directory listing"
    615615msgid "Directory listings"
    616616msgstr ""
    617617
    618618#: ../includes/classes/class-custom-post.php:176
    619619msgctxt "Singular Name of Directory listing"
    620620msgid "Directory listing"
    621621msgstr ""
    622622
    623623#: ../includes/classes/class-custom-post.php:177, ../includes/classes/class-custom-post.php:194
    624624msgid "Directory listings"
    625625msgstr ""
    626626
    627627#: ../includes/classes/class-custom-post.php:178
    628628msgid "Directory listing"
    629629msgstr ""
    630630
    631631#: ../includes/classes/class-custom-post.php:179
    632632msgid "Parent Directory listing:"
    633633msgstr ""
    634634
    635635#: ../includes/classes/class-custom-post.php:180
    636636msgid "All listings"
    637637msgstr ""
    638638
    639639#: ../includes/classes/class-custom-post.php:181, ../includes/classes/class-custom-post.php:182
    640640msgid "Add New listing"
    641641msgstr ""
    642642
    643643#: ../includes/classes/class-custom-post.php:183
    644644msgid "New listing"
    645645msgstr ""
    646646
    647647#: ../includes/classes/class-custom-post.php:184
    648648msgid "Edit listing"
    649649msgstr ""
    650650
    651651#: ../includes/classes/class-custom-post.php:185
    652652msgid "Update listing"
    653653msgstr ""
    654654
    655655#: ../includes/classes/class-custom-post.php:186
    656656msgid "View listing"
    657657msgstr ""
    658658
    659659#: ../includes/classes/class-custom-post.php:187
    660660msgid "Search listing"
    661661msgstr ""
    662662
    663663#: ../includes/classes/class-custom-post.php:188
    664664msgid "No listings found"
    665665msgstr ""
    666666
    667667#: ../includes/classes/class-custom-post.php:189
    668668msgid "Not listings found in Trash"
    669669msgstr ""
    670670
    671671#: ../includes/classes/class-custom-post.php:193
    672672msgid "Directory Listing"
    673673msgstr ""
    674674
    675675#: ../includes/classes/class-custom-post.php:248, ../includes/classes/class-settings-panel.php:3626, ../includes/classes/class-settings-panel.php:3714, ../includes/classes/class-settings-panel.php:4066, ../includes/classes/class-widget-categories.php:161, ../includes/classes/class-widget-locations.php:160, ../includes/classes/class-widget-tags.php:136, ../includes/elementor/all-categories.php:93, ../includes/elementor/all-locations.php:93, ../includes/review/class-builder-screen.php:119, ../includes/review/class-comment-form-renderer.php:211, ../includes/system-status/system-info-template.php:477, ../includes/system-status/system-information/system-information-template.php:653, ../templates/single-reviews.php:87, ../templates/payment/payment-receipt.php:100, ../templates/single/section-contact_listings_owner.php:30, ../views/widgets/contact-listing-owner.php:13
    676676msgid "Name"
    677677msgstr ""
    678678
    679679#: ../includes/classes/class-custom-post.php:250
    680680msgid "Directory"
    681681msgstr ""
    682682
    683683#: ../includes/classes/class-custom-post.php:252, ../includes/model/SingleListing.php:1064, ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:670, ../views/widgets/map-single.php:15
    684684msgid "Location"
    685685msgstr ""
    686686
    687687#: ../includes/classes/class-custom-post.php:253, ../includes/classes/class-custom-taxonomy.php:574, ../includes/classes/class-widget-categories.php:107, ../includes/classes/class-widget-categories.php:119
    688688msgid "Categories"
    689689msgstr ""
    690690
    691691#: ../includes/classes/class-custom-post.php:255, ../templates/dashboard/tab-my-listings.php:79
    692692msgid "Status"
    693693msgstr ""
    694694
    695695#: ../includes/classes/class-custom-post.php:267
    696696msgid "Expires on"
    697697msgstr ""
    698698
    699699#: ../includes/classes/class-custom-post.php:268
    700700msgid "Created on"
    701701msgstr ""
    702702
    703703#. translators: 1: Author name
    704704#: ../includes/classes/class-custom-post.php:322
    705705msgctxt "Author filter link"
    706706msgid "Filter by %1$s"
    707707msgstr ""
    708708
    709709#: ../includes/classes/class-custom-post.php:343, ../includes/classes/class-email.php:118, ../includes/model/ListingDashboard.php:155, ../views/front-end/user-dashboard.php:272, ../views/admin-templates/listing-form/expiration-featured-fields.php:45
    710710msgid "Never Expires"
    711711msgstr ""
    712712
    713713#. translators: 1: Creation date. 2: Human diff time
    714714#: ../includes/classes/class-custom-post.php:353
    715715msgid "%1$s (%2$s ago)"
    716716msgstr ""
    717717
    718718#: ../includes/classes/class-custom-post.php:382, ../includes/classes/class-custom-post.php:383
    719719msgid "Enter a title"
    720720msgstr ""
    721721
    722722#. translators: %s: taxonomy term name
    723723#: ../includes/classes/class-custom-taxonomy.php:191, ../includes/classes/class-custom-taxonomy.php:180
    724724msgid "View &#8220;%s&#8221; archive"
    725725msgstr ""
    726726
    727727#: ../includes/classes/class-custom-taxonomy.php:192, ../includes/classes/class-custom-taxonomy.php:181, ../includes/payments/class-order.php:569, ../includes/system-status/custom-url.php:92
    728728msgid "View"
    729729msgstr ""
    730730
    731731#: ../includes/classes/class-custom-taxonomy.php:202, ../includes/classes/class-custom-taxonomy.php:647, ../includes/classes/class-settings-panel.php:3618, ../includes/classes/class-settings-panel.php:3706, ../includes/elementor/all-categories.php:91, ../includes/elementor/all-locations.php:91
    732732msgid "ID"
    733733msgstr ""
    734734
    735735#: ../includes/classes/class-custom-taxonomy.php:303, ../includes/classes/class-custom-taxonomy.php:464
    736736msgid "Category Icon"
    737737msgstr ""
    738738
    739739#: ../includes/classes/class-custom-taxonomy.php:321, ../includes/classes/class-custom-taxonomy.php:378, ../includes/classes/class-custom-taxonomy.php:474, ../includes/classes/class-custom-taxonomy.php:512
    740740msgid "Image"
    741741msgstr ""
    742742
    743743#: ../includes/classes/class-custom-taxonomy.php:334, ../includes/classes/class-custom-taxonomy.php:390, ../includes/classes/class-custom-taxonomy.php:479, ../includes/classes/class-custom-taxonomy.php:517
    744744msgid "Add Image"
    745745msgstr ""
    746746
    747747#: ../includes/classes/class-custom-taxonomy.php:528
    748748msgctxt "Location general name"
    749749msgid "Locations"
    750750msgstr ""
    751751
    752752#: ../includes/classes/class-custom-taxonomy.php:529
    753753msgctxt "Location singular name"
    754754msgid "Location"
    755755msgstr ""
    756756
    757757#: ../includes/classes/class-custom-taxonomy.php:530
    758758msgid "Search Location"
    759759msgstr ""
    760760
    761761#: ../includes/classes/class-custom-taxonomy.php:531, ../includes/classes/class-setup-wizard.php:421, ../includes/classes/class-setup-wizard.php:484
    762762msgid "All Locations"
    763763msgstr ""
    764764
    765765#: ../includes/classes/class-custom-taxonomy.php:532
    766766msgid "Parent Location"
    767767msgstr ""
    768768
    769769#: ../includes/classes/class-custom-taxonomy.php:533
    770770msgid "Parent Location:"
    771771msgstr ""
    772772
    773773#: ../includes/classes/class-custom-taxonomy.php:534
    774774msgid "Edit Location"
    775775msgstr ""
    776776
    777777#: ../includes/classes/class-custom-taxonomy.php:535
    778778msgid "Update Location"
    779779msgstr ""
    780780
    781781#: ../includes/classes/class-custom-taxonomy.php:536
    782782msgid "Add New Location"
    783783msgstr ""
    784784
    785785#: ../includes/classes/class-custom-taxonomy.php:537
    786786msgid "New Location Name"
    787787msgstr ""
    788788
    789789#: ../includes/classes/class-custom-taxonomy.php:538, ../includes/classes/class-widget-locations.php:103, ../includes/classes/class-widget-locations.php:115
    790790msgid "Locations"
    791791msgstr ""
    792792
    793793#: ../includes/classes/class-custom-taxonomy.php:564
    794794msgctxt "Category general name"
    795795msgid "Categories"
    796796msgstr ""
    797797
    798798#: ../includes/classes/class-custom-taxonomy.php:565
    799799msgctxt "Category singular name"
    800800msgid "Category"
    801801msgstr ""
    802802
    803803#: ../includes/classes/class-custom-taxonomy.php:566
    804804msgid "Search category"
    805805msgstr ""
    806806
    807807#: ../includes/classes/class-custom-taxonomy.php:567
    808808msgid "All categories"
    809809msgstr ""
    810810
    811811#: ../includes/classes/class-custom-taxonomy.php:568
    812812msgid "Parent category"
    813813msgstr ""
    814814
    815815#: ../includes/classes/class-custom-taxonomy.php:569
    816816msgid "Parent category:"
    817817msgstr ""
    818818
    819819#: ../includes/classes/class-custom-taxonomy.php:570
    820820msgid "Edit category"
    821821msgstr ""
    822822
    823823#: ../includes/classes/class-custom-taxonomy.php:571
    824824msgid "Update category"
    825825msgstr ""
    826826
    827827#: ../includes/classes/class-custom-taxonomy.php:572
    828828msgid "Add New category"
    829829msgstr ""
    830830
    831831#: ../includes/classes/class-custom-taxonomy.php:573
    832832msgid "New category Name"
    833833msgstr ""
    834834
    835835#: ../includes/classes/class-custom-taxonomy.php:598
    836836msgctxt "Tag general name"
    837837msgid "Tags"
    838838msgstr ""
    839839
    840840#: ../includes/classes/class-custom-taxonomy.php:599
    841841msgctxt "Tag singular name"
    842842msgid "Tag"
    843843msgstr ""
    844844
    845845#: ../includes/classes/class-custom-taxonomy.php:600
    846846msgid "Search tag"
    847847msgstr ""
    848848
    849849#: ../includes/classes/class-custom-taxonomy.php:601, ../includes/classes/class-settings-panel.php:1613, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2593
    850850msgid "All Tags"
    851851msgstr ""
    852852
    853853#: ../includes/classes/class-custom-taxonomy.php:602
    854854msgid "Parent tag"
    855855msgstr ""
    856856
    857857#: ../includes/classes/class-custom-taxonomy.php:603
    858858msgid "Parent tag:"
    859859msgstr ""
    860860
    861861#: ../includes/classes/class-custom-taxonomy.php:604
    862862msgid "Edit tag"
    863863msgstr ""
    864864
    865865#: ../includes/classes/class-custom-taxonomy.php:605
    866866msgid "Update tag"
    867867msgstr ""
    868868
    869869#: ../includes/classes/class-custom-taxonomy.php:606
    870870msgid "Add New tag"
    871871msgstr ""
    872872
    873873#: ../includes/classes/class-custom-taxonomy.php:607
    874874msgid "New tag Name"
    875875msgstr ""
    876876
    877877#: ../includes/classes/class-custom-taxonomy.php:608, ../includes/classes/class-widget-tags.php:43, ../includes/classes/class-widget-tags.php:101, ../includes/classes/class-widget-tags.php:113, ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:648
    878878msgid "Tags"
    879879msgstr ""
    880880
    881881#: ../includes/classes/class-custom-taxonomy.php:649, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2168, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2177, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2191, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2200, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2209, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2218, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2227, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2236, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2245, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2259, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2268, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2277, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2286, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2295, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2304, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2313, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2322, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2331, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2340, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2349, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2358, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2367, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2392, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2454, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3062, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3084, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3116, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3144, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3172, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3200, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3228, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3256, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3284, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3354, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3377, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3424, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3452, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3480, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3508, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3536, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3564, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3587, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3615, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3643, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4276, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4338, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4353
    882882msgid "Icon"
    883883msgstr ""
    884884
    885885#: ../includes/classes/class-custom-taxonomy.php:776
    886886msgid "No Category"
    887887msgstr ""
    888888
    889889#: ../includes/classes/class-email.php:120
    890890msgid "Visit Listing Renewal Page"
    891891msgstr ""
    892892
    893893#: ../includes/classes/class-email.php:127
    894894msgid "View Order/Payment Receipt"
    895895msgstr ""
    896896
    897897#: ../includes/classes/class-email.php:133
    898898msgid "Click Here"
    899899msgstr ""
    900900
    901901#: ../includes/classes/class-email.php:190
    902902msgid ""
    903903"\n"
    904904"Dear Administrator,\n"
    905905"\n"
    906906"The following Listing has been deleted on your website ==SITE_NAME==\n"
    907907"\n"
    908908"Listing Summary:\n"
    909909"ID: ==LISTING_ID==\n"
    910910"Title: ==LISTING_TITLE==\n"
    911911"\n"
    912912"\n"
    913913"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    914914""
    915915msgstr ""
    916916
    917917#: ../includes/classes/class-email.php:212
    918918msgid ""
    919919"\n"
    920920"Dear Administrator,\n"
    921921"\n"
    922922"You have received a new order\n"
    923923"\n"
    924924"This notification was for the order #==ORDER_ID== on the website ==SITE_NAME==.\n"
    925925"You can access the order details directly by clicking on the link below after logging in your back end:\n"
    926926"\n"
    927927"==ORDER_RECEIPT_URL==\n"
    928928"\n"
    929929"Here is the order summery:\n"
    930930"\n"
    931931"==ORDER_DETAILS==\n"
    932932"\n"
    933933"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    934934""
    935935msgstr ""
    936936
    937937#: ../includes/classes/class-email.php:238
    938938msgid ""
    939939"\n"
    940940"Dear Administrator,\n"
    941941"\n"
    942942"Congratulations!\n"
    943943"You have received a payment against the order #==ORDER_ID==. The order is now completed.\n"
    944944"\n"
    945945"You can access the order details directly by clicking on the link below after logging in your back end:\n"
    946946"\n"
    947947"==ORDER_RECEIPT_URL==\n"
    948948"\n"
    949949"Here is the order summery:\n"
    950950"\n"
    951951"==ORDER_DETAILS==\n"
    952952"\n"
    953953"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    954954""
    955955msgstr ""
    956956
    957957#: ../includes/classes/class-email.php:264
    958958msgid ""
    959959"\n"
    960960"Dear Administrator,\n"
    961961"\n"
    962962"A new listing has been submitted on your website [==SITE_NAME==].\n"
    963963"\n"
    964964"Listing Summary:\n"
    965965"ID: ==LISTING_ID==\n"
    966966"Title: ==LISTING_TITLE==\n"
    967967"Link: ==LISTING_LINK==\n"
    968968"You can Edit/Review the listing using the link below:\n"
    969969"==LISTING_EDIT_URL==\n"
    970970"\n"
    971971"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    972972""
    973973msgstr ""
    974974
    975975#: ../includes/classes/class-email.php:288
    976976msgid ""
    977977"\n"
    978978"Dear User,\n"
    979979"\n"
    980980"Please use the following PIN to reset your password\n"
    981981"<div style='margin: 10px 0; text-align: center;'>\n"
    982982"<h2>==PIN==</h2>\n"
    983983"<div>\n"
    984984"\n"
    985985"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    986986""
    987987msgstr ""
    988988
    989989#: ../includes/classes/class-email.php:308
    990990msgid ""
    991991"\n"
    992992"Dear Administrator,\n"
    993993"\n"
    994994"The listing #==LISTING_ID== has been been published on your website [==SITE_NAME==].\n"
    995995"\n"
    996996"Listing Summary:\n"
    997997"ID: ==LISTING_ID==\n"
    998998"Title: ==LISTING_TITLE==\n"
    999999"Link: ==LISTING_LINK==\n"
    10001000"You can Edit/Review the listing using the link below:\n"
    10011001"==LISTING_EDIT_URL==\n"
    10021002"\n"
    10031003"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    10041004""
    10051005msgstr ""
    10061006
    10071007#: ../includes/classes/class-email.php:332
    10081008msgid ""
    10091009"\n"
    10101010"Dear Administrator,\n"
    10111011"\n"
    10121012"The listing #==LISTING_ID== has been been edited on your website [==SITE_NAME==].\n"
    10131013"\n"
    10141014"Listing Summary:\n"
    10151015"ID: ==LISTING_ID==\n"
    10161016"Title: ==LISTING_TITLE==\n"
    10171017"Link: ==LISTING_LINK==\n"
    10181018"You can Edit/Review the listing using the link below:\n"
    10191019"==LISTING_EDIT_URL==\n"
    10201020"\n"
    10211021"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    10221022""
    10231023msgstr ""
    10241024
    10251025#: ../includes/classes/class-email.php:356
    10261026msgid ""
    10271027"\n"
    10281028"Dear Administrator,\n"
    10291029"\n"
    10301030"The listing #==LISTING_ID== has a new review [==SITE_NAME==].\n"
    10311031"\n"
    10321032"Listing Summary:\n"
    10331033"ID: ==LISTING_ID==\n"
    10341034"Title: ==LISTING_TITLE==\n"
    10351035"Link: ==LISTING_LINK==\n"
    10361036"You can see the review using the link below:\n"
    10371037"==LISTING_EDIT_URL==\n"
    10381038"\n"
    10391039"This email is sent automatically for information purpose only. Please do not respond to this.\n"
    10401040""
    10411041msgstr ""
    10421042
    10431043#: ../includes/classes/class-email.php:373
    10441044msgid ""
    10451045"\n"
    10461046"                        Hello Administrator,\n"
    10471047"\n"
    10481048"                        A user wants to become an author, ==USER_DASHBOARD== to review.\n"
    10491049"\n"
    10501050"                        Regards\n"
    10511051"                        "
    10521052msgstr ""
    10531053
    10541054#: ../includes/classes/class-email.php:560
    10551055msgid "[==SITE_NAME==] The Listing #==LISTING_ID== has been published on your website"
    10561056msgstr ""
    10571057
    10581058#: ../includes/classes/class-email.php:849
    10591059msgid "[==SITE_NAME==] A Listing has been deleted [ID#: ==LISTING_ID==] on your website"
    10601060msgstr ""
    10611061
    10621062#: ../includes/classes/class-email.php:859
    10631063msgid "[==SITE_NAME==] New Author Request"
    10641064msgstr ""
    10651065
    10661066#: ../includes/classes/class-email.php:901
    10671067msgid "[==SITE_NAME==] You have a new order #==ORDER_ID== on your website"
    10681068msgstr ""
    10691069
    10701070#: ../includes/classes/class-email.php:942
    10711071msgid "[==SITE_NAME==] Payment Notification : Order #==ORDER_ID== Completed"
    10721072msgstr ""
    10731073
    10741074#: ../includes/classes/class-email.php:983
    10751075msgid "[==SITE_NAME==] A new listing has been submitted on your website"
    10761076msgstr ""
    10771077
    10781078#: ../includes/classes/class-email.php:1019
    10791079msgid "[==SITE_NAME==] Password Reset PIN"
    10801080msgstr ""
    10811081
    10821082#: ../includes/classes/class-email.php:1051
    10831083msgid "[==SITE_NAME==] The Listing #==LISTING_ID== has been edited on your website"
    10841084msgstr ""
    10851085
    10861086#: ../includes/classes/class-email.php:1083, ../includes/classes/class-settings-panel.php:4476
    10871087msgid "Registration Confirmation!"
    10881088msgstr ""
    10891089
    1090 #: ../includes/classes/class-extension.php:383
     1090#: ../includes/classes/class-extension.php:381
    10911091msgid "All plugins are up to date"
    10921092msgstr ""
    10931093
    1094 #: ../includes/classes/class-extension.php:389
     1094#: ../includes/classes/class-extension.php:387
    10951095msgid "The plugin is up to date"
    10961096msgstr ""
    10971097
    1098 #: ../includes/classes/class-extension.php:410
     1098#: ../includes/classes/class-extension.php:408
    10991099msgid "The plugin has been updated successfully"
    11001100msgstr ""
    11011101
    1102 #: ../includes/classes/class-extension.php:406
     1102#: ../includes/classes/class-extension.php:404
    11031103msgid "The plugin could not update"
    11041104msgstr ""
    11051105
    1106 #: ../includes/classes/class-extension.php:441
     1106#: ../includes/classes/class-extension.php:439
    11071107msgid "Some of the plugin could not update"
    11081108msgstr ""
    11091109
    1110 #: ../includes/classes/class-extension.php:446
     1110#: ../includes/classes/class-extension.php:444
    11111111msgid "All the plugins are updated successfully"
    11121112msgstr ""
    11131113
    1114 #: ../includes/classes/class-extension.php:451
     1114#: ../includes/classes/class-extension.php:449
    11151115msgid "No plugins could not update"
    11161116msgstr ""
    11171117
    1118 #: ../includes/classes/class-extension.php:561
     1118#: ../includes/classes/class-extension.php:559
    11191119msgid "Theme's stylesheet is missing"
    11201120msgstr ""
    11211121
    1122 #: ../includes/classes/class-extension.php:585
     1122#: ../includes/classes/class-extension.php:583
    11231123msgid "Please specefy which plugin to activate"
    11241124msgstr ""
    11251125
    1126 #: ../includes/classes/class-extension.php:624
     1126#: ../includes/classes/class-extension.php:622
    11271127msgid "All themes are up to date"
    11281128msgstr ""
    11291129
    1130 #: ../includes/classes/class-extension.php:630
     1130#: ../includes/classes/class-extension.php:628
    11311131msgid "The theme is up to date"
    11321132msgstr ""
    11331133
    1134 #: ../includes/classes/class-extension.php:644
     1134#: ../includes/classes/class-extension.php:642
    11351135msgid "The theme is already upto date"
    11361136msgstr ""
    11371137
    1138 #: ../includes/classes/class-extension.php:661
     1138#: ../includes/classes/class-extension.php:659
    11391139msgid "The theme has been updated successfully"
    11401140msgstr ""
    11411141
    1142 #: ../includes/classes/class-extension.php:657
     1142#: ../includes/classes/class-extension.php:655
    11431143msgid "The theme could not update"
    11441144msgstr ""
    11451145
    1146 #: ../includes/classes/class-extension.php:698
     1146#: ../includes/classes/class-extension.php:696
    11471147msgid "Some of the theme could not update"
    11481148msgstr ""
    11491149
    1150 #: ../includes/classes/class-extension.php:703
     1150#: ../includes/classes/class-extension.php:701
    11511151msgid "All the themes are updated successfully"
    11521152msgstr ""
    11531153
    1154 #: ../includes/classes/class-extension.php:708
     1154#: ../includes/classes/class-extension.php:706
    11551155msgid "No themes could not update"
    11561156msgstr ""
    11571157
    1158 #: ../includes/classes/class-extension.php:781
     1158#: ../includes/classes/class-extension.php:783
    11591159msgid "Something went wrong"
    11601160msgstr ""
    11611161
    1162 #: ../includes/classes/class-extension.php:857
     1162#: ../includes/classes/class-extension.php:859
    11631163msgid "Password is required"
    11641164msgstr ""
    11651165
    1166 #: ../includes/classes/class-extension.php:868
     1166#: ../includes/classes/class-extension.php:870
    11671167msgid "Sassion is destroyed, please sign-in again"
    11681168msgstr ""
    11691169
    1170 #: ../includes/classes/class-extension.php:900
     1170#: ../includes/classes/class-extension.php:902
    11711171msgid "Your purchase has been refreshed successfuly"
    11721172msgstr ""
    11731173
    1174 #: ../includes/classes/class-extension.php:1057
     1174#: ../includes/classes/class-extension.php:1059
    11751175msgid "Item key is missing"
    11761176msgstr ""
    11771177
    1178 #: ../includes/classes/class-extension.php:1064
     1178#: ../includes/classes/class-extension.php:1066
    11791179msgid "Type not specified"
    11801180msgstr ""
    11811181
    1182 #: ../includes/classes/class-extension.php:1071
     1182#: ../includes/classes/class-extension.php:1073
    11831183msgid "Invalid type"
    11841184msgstr ""
    11851185
    1186 #: ../includes/classes/class-extension.php:1086
     1186#: ../includes/classes/class-extension.php:1088
    11871187msgid "Nothing available in subscriptions"
    11881188msgstr ""
    11891189
    1190 #: ../includes/classes/class-extension.php:1093
     1190#: ../includes/classes/class-extension.php:1095
    11911191msgid "The item is not available in your subscriptions"
    11921192msgstr ""
    11931193
    1194 #: ../includes/classes/class-extension.php:1105
     1194#: ../includes/classes/class-extension.php:1107
    11951195msgid "The license is not valid, please check you subscription."
    11961196msgstr ""
    11971197
    1198 #: ../includes/classes/class-extension.php:1126
     1198#: ../includes/classes/class-extension.php:1128
    11991199msgid "Installed Successfully"
    12001200msgstr ""
    12011201
    1202 #: ../includes/classes/class-extension.php:1170, ../includes/classes/class-extension.php:2012
     1202#: ../includes/classes/class-extension.php:1172, ../includes/classes/class-extension.php:2006
    12031203msgid "Activation failed"
    12041204msgstr ""
    12051205
    1206 #: ../includes/classes/class-extension.php:1206
     1206#: ../includes/classes/class-extension.php:1208
    12071207msgid "Donloaded"
    12081208msgstr ""
    12091209
    1210 #: ../includes/classes/class-extension.php:1224, ../includes/classes/class-extension.php:1333
    1211 msgid "Download link not found"
    1212 msgstr ""
    1213 
    1214 #: ../includes/classes/class-extension.php:1264, ../includes/classes/class-extension.php:1373
     1210#: ../includes/classes/class-extension.php:1222, ../includes/classes/class-extension.php:1327
     1211msgid "Invalid download link"
     1212msgstr ""
     1213
     1214#: ../includes/classes/class-extension.php:1262, ../includes/classes/class-extension.php:1367
    12151215msgid "Could not create temp directory"
    12161216msgstr ""
    12171217
    1218 #: ../includes/classes/class-extension.php:1315
     1218#: ../includes/classes/class-extension.php:1313
    12191219msgid "The plugin has been downloaded successfully"
    12201220msgstr ""
    12211221
    1222 #: ../includes/classes/class-extension.php:1423, ../includes/classes/class-extension.php:1435
     1222#: ../includes/classes/class-extension.php:1417, ../includes/classes/class-extension.php:1429
    12231223msgid "The theme has been downloaded successfully"
    12241224msgstr ""
    12251225
    1226 #: ../includes/classes/class-extension.php:1630
     1226#: ../includes/classes/class-extension.php:1624
    12271227msgid "Get Extensions"
    12281228msgstr ""
    12291229
    1230 #: ../includes/classes/class-extension.php:1631
    1231 msgid "<span>Themes & Extensions</span>"
    1232 msgstr ""
    1233 
    1234 #: ../includes/classes/class-extension.php:1970
     1230#: ../includes/classes/class-extension.php:1625
     1231msgid "Themes & Extensions"
     1232msgstr ""
     1233
     1234#: ../includes/classes/class-extension.php:1964
    12351235msgid "Nothing to activate"
    12361236msgstr ""
    12371237
    12381238#: ../includes/classes/class-helper.php:257
    12391239msgid "%s requires minimum PHP 5.4 to function properly. Please upgrade PHP version. The Plugin has been auto-deactivated.. You have PHP version %d"
    12401240msgstr ""
    12411241
    12421242#: ../includes/classes/class-helper.php:419
    12431243msgid "&laquo; Prev"
    12441244msgstr ""
    12451245
    12461246#: ../includes/classes/class-helper.php:420
    12471247msgid "Next &raquo;"
    12481248msgstr ""
    12491249
    12501250#: ../includes/classes/class-helper.php:470, ../includes/classes/class-helper.php:610
    12511251msgid "Category:"
    12521252msgstr ""
    12531253
    12541254#: ../includes/classes/class-helper.php:484, ../includes/classes/class-helper.php:633
    12551255msgid "Location:"
    12561256msgstr ""
    12571257
    12581258#: ../includes/classes/class-helper.php:513, ../includes/model/Listings.php:184
    12591259msgid "Read More"
    12601260msgstr ""
    12611261
    12621262#: ../includes/classes/class-helper.php:540, ../includes/classes/class-settings-panel.php:3960, ../includes/classes/class-settings-panel.php:4051, ../includes/model/Account.php:61, ../includes/model/Account.php:109, ../includes/model/SingleListing.php:1117
    12631263msgid "Sign Up"
    12641264msgstr ""
    12651265
    12661266#: ../includes/classes/class-helper.php:571
    12671267msgid "You need to be an author to add a listing."
    12681268msgstr ""
    12691269
    12701270#: ../includes/classes/class-listing.php:97
    12711271msgid "Filter by directory "
    12721272msgstr ""
    12731273
    12741274#: ../includes/classes/class-metabox.php:135
    12751275msgid "Listing Information"
    12761276msgstr ""
    12771277
    12781278#: ../includes/classes/class-metabox.php:168, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4522, ../views/front-end/user-dashboard.php:275, ../views/admin-templates/listing-form/expiration-featured-fields.php:10
    12791279msgid "Expiration"
    12801280msgstr ""
    12811281
    12821282#: ../includes/classes/class-metabox.php:169, ../views/admin-templates/listing-form/expiration-featured-fields.php:11
    12831283msgid "Date & Time"
    12841284msgstr ""
    12851285
    12861286#: ../includes/classes/class-metabox.php:216, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4980
    12871287msgid "Listing Type"
    12881288msgstr ""
    12891289
    12901290#: ../includes/classes/class-metabox.php:218
    12911291msgid "Select Listing Type"
    12921292msgstr ""
    12931293
    12941294#: ../includes/classes/class-script-helper.php:55, ../includes/classes/class-script-helper.php:69, ../includes/model/Listings.php:177, ../includes/model/Listings.php:221
    12951295msgid "Select a location"
    12961296msgstr ""
    12971297
    12981298#: ../includes/classes/class-script-helper.php:63, ../includes/model/SearchForm.php:344
    12991299msgid " Miles"
    13001300msgstr ""
    13011301
    13021302#: ../includes/classes/class-script-helper.php:61, ../includes/model/SearchForm.php:341
    13031303msgid " Kilometers"
    13041304msgstr ""
    13051305
    13061306#: ../includes/classes/class-script-helper.php:70, ../templates/search-form/fields/tag.php:43, ../views/custom-fields.php:105
    13071307msgid "Show More"
    13081308msgstr ""
    13091309
    13101310#: ../includes/classes/class-script-helper.php:71
    13111311msgid "Show Less"
    13121312msgstr ""
    13131313
    13141314#: ../includes/classes/class-script-helper.php:72, ../includes/model/ListingAuthor.php:187
    13151315msgid "Added to favorite"
    13161316msgstr ""
    13171317
    13181318#: ../includes/classes/class-script-helper.php:73, ../includes/model/ListingAuthor.php:188
    13191319msgid "Please login first"
    13201320msgstr ""
    13211321
    13221322#: ../includes/classes/class-script-helper.php:100, ../includes/classes/class-script-helper.php:206
    13231323msgid "Are you sure"
    13241324msgstr ""
    13251325
    13261326#: ../includes/classes/class-script-helper.php:101, ../includes/classes/class-script-helper.php:207
    13271327msgid "Do you really want to remove this Social Link!"
    13281328msgstr ""
    13291329
    13301330#: ../includes/classes/class-script-helper.php:102, ../includes/classes/class-script-helper.php:159, ../includes/classes/class-script-helper.php:164, ../includes/classes/class-script-helper.php:209
    13311331msgid "Yes, Delete it!"
    13321332msgstr ""
    13331333
    13341334#: ../includes/classes/class-script-helper.php:103, ../includes/classes/class-script-helper.php:210
    13351335msgid "Deleted!"
    13361336msgstr ""
    13371337
    13381338#: ../includes/classes/class-script-helper.php:104
    13391339msgid "Select an icon"
    13401340msgstr ""
    13411341
    13421342#: ../includes/classes/class-script-helper.php:105
    13431343msgid "Select or Upload Slider Image"
    13441344msgstr ""
    13451345
    13461346#: ../includes/classes/class-script-helper.php:106
    13471347msgid "Select Category Image"
    13481348msgstr ""
    13491349
    13501350#: ../includes/classes/class-script-helper.php:107, ../includes/classes/class-script-helper.php:169
    13511351msgid "Use this Image"
    13521352msgstr ""
    13531353
    13541354#: ../includes/classes/class-script-helper.php:108
    13551355msgid "Select Preview Image"
    13561356msgstr ""
    13571357
    13581358#: ../includes/classes/class-script-helper.php:109
    13591359msgid "Insert Preview Image"
    13601360msgstr ""
    13611361
    13621362#: ../includes/classes/class-script-helper.php:134
    13631363msgid "Your review has been received. It requires admin approval to publish."
    13641364msgstr ""
    13651365
    13661366#: ../includes/classes/class-script-helper.php:145
    13671367msgid "Sorry, you need to login first."
    13681368msgstr ""
    13691369
    13701370#: ../includes/classes/class-script-helper.php:147
    13711371msgid "WARNING!"
    13721372msgstr ""
    13731373
    13741374#: ../includes/classes/class-script-helper.php:148
    13751375msgid "SUCCESS!"
    13761376msgstr ""
    13771377
    13781378#: ../includes/classes/class-script-helper.php:149
    13791379msgid "You can not add more than one review. Refresh the page to edit or delete your review!,"
    13801380msgstr ""
    13811381
    13821382#: ../includes/classes/class-script-helper.php:150
    13831383msgid "Sorry! your review already in process."
    13841384msgstr ""
    13851385
    13861386#: ../includes/classes/class-script-helper.php:151
    13871387msgid "Reviews Saved Successfully!"
    13881388msgstr ""
    13891389
    13901390#: ../includes/classes/class-script-helper.php:153
    13911391msgid "Something went wrong. Check the form and try again!!!"
    13921392msgstr ""
    13931393
    13941394#: ../includes/classes/class-script-helper.php:154
    13951395msgid "Reviews Loaded!"
    13961396msgstr ""
    13971397
    13981398#: ../includes/classes/class-script-helper.php:155
    13991399msgid "NO MORE REVIEWS AVAILABLE!,"
    14001400msgstr ""
    14011401
    14021402#: ../includes/classes/class-script-helper.php:156
    14031403msgid "You do not have any review to delete. Refresh the page to submit new review!!!,"
    14041404msgstr ""
    14051405
    14061406#: ../includes/classes/class-script-helper.php:157, ../includes/classes/class-script-helper.php:162, ../views/admin-templates/post-types-manager/all-listing-types.php:269, ../views/admin-templates/post-types-manager/all-listing-types.php:310
    14071407msgid "Are you sure?"
    14081408msgstr ""
    14091409
    14101410#: ../includes/classes/class-script-helper.php:158
    14111411msgid "Do you really want to remove this review!"
    14121412msgstr ""
    14131413
    14141414#: ../includes/classes/class-script-helper.php:160, ../views/admin-templates/post-types-manager/all-listing-types.php:273
    14151415msgid "Cancel"
    14161416msgstr ""
    14171417
    14181418#: ../includes/classes/class-script-helper.php:161
    14191419msgid "Something went wrong!, Try again"
    14201420msgstr ""
    14211421
    14221422#: ../includes/classes/class-script-helper.php:163
    14231423msgid "Do you really want to delete this item?!"
    14241424msgstr ""
    14251425
    14261426#: ../includes/classes/class-script-helper.php:165
    14271427msgid "Deleted!!"
    14281428msgstr ""
    14291429
    14301430#: ../includes/classes/class-script-helper.php:166
    14311431msgid "ERROR!!"
    14321432msgstr ""
    14331433
    14341434#: ../includes/classes/class-script-helper.php:167
    14351435msgid "Something went wrong!!!, Try again"
    14361436msgstr ""
    14371437
    14381438#: ../includes/classes/class-script-helper.php:168
    14391439msgid "Select or Upload a profile picture"
    14401440msgstr ""
    14411441
    14421442#: ../includes/classes/class-script-helper.php:170, ../templates/payment/checkout.php:144
    14431443msgid "Pay Now"
    14441444msgstr ""
    14451445
    14461446#: ../includes/classes/class-script-helper.php:171, ../templates/payment/checkout.php:144
    14471447msgid "Complete Submission"
    14481448msgstr ""
    14491449
    14501450#: ../includes/classes/class-script-helper.php:172
    14511451msgid "Sending the message, please wait..."
    14521452msgstr ""
    14531453
    14541454#: ../includes/classes/class-script-helper.php:208
    14551455msgid "Do you really want to remove this FAQ!"
    14561456msgstr ""
    14571457
    14581458#: ../includes/classes/class-script-helper.php:212
    14591459msgid "You can only use %s"
    14601460msgstr ""
    14611461
    14621462#: ../includes/classes/class-script-helper.php:227
    14631463msgid "Listing gallery has invalid files"
    14641464msgstr ""
    14651465
    14661466#: ../includes/classes/class-script-helper.php:234
    14671467msgid "Sorry! You have crossed the maximum image limit"
    14681468msgstr ""
    14691469
    14701470#: ../includes/classes/class-seo.php:830
    14711471msgid "%s"
    14721472msgstr ""
    14731473
    14741474#: ../includes/classes/class-seo.php:831
    14751475msgid " %s %s "
    14761476msgstr ""
    14771477
    14781478#: ../includes/classes/class-seo.php:832
    14791479msgid "%s %s"
    14801480msgstr ""
    14811481
    14821482#: ../includes/classes/class-settings-panel.php:29
    14831483msgid "Checkout Awesome Extensions"
    14841484msgstr ""
    14851485
    14861486#: ../includes/classes/class-settings-panel.php:59
    14871487msgid "Loads unminified .css, .js files"
    14881488msgstr ""
    14891489
    14901490#: ../includes/classes/class-settings-panel.php:77
    14911491msgid "Listing Slug with Directory Type"
    14921492msgstr ""
    14931493
    14941494#: ../includes/classes/class-settings-panel.php:108
    14951495msgid "Start Building Directory"
    14961496msgstr ""
    14971497
    14981498#: ../includes/classes/class-settings-panel.php:197
    14991499msgid "Import Listings"
    15001500msgstr ""
    15011501
    15021502#: ../includes/classes/class-settings-panel.php:198
    15031503msgid "Run Importer"
    15041504msgstr ""
    15051505
    15061506#: ../includes/classes/class-settings-panel.php:203
    15071507msgid "Export Listings"
    15081508msgstr ""
    15091509
    15101510#: ../includes/classes/class-settings-panel.php:204, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3905
    15111511msgid "Export"
    15121512msgstr ""
    15131513
    15141514#: ../includes/classes/class-settings-panel.php:205
    15151515msgid "listings-export-data"
    15161516msgstr ""
    15171517
    15181518#: ../includes/classes/class-settings-panel.php:249
    15191519msgid "Country Restriction"
    15201520msgstr ""
    15211521
    15221522#: ../includes/classes/class-settings-panel.php:262
    15231523msgid "Force Default Location"
    15241524msgstr ""
    15251525
    15261526#: ../includes/classes/class-settings-panel.php:264
    15271527msgid ""
    15281528"Enable this option to force the default latitude and longitude to create a default location on all listings map view.\n"
    15291529"                Otherwise default location works only on the add listing form map."
    15301530msgstr ""
    15311531
    15321532#: ../includes/classes/class-settings-panel.php:280
    15331533msgid "Select Countries"
    15341534msgstr ""
    15351535
    15361536#: ../includes/classes/class-settings-panel.php:295
    15371537msgid "Show Submission Confirmation"
    15381538msgstr ""
    15391539
    15401540#: ../includes/classes/class-settings-panel.php:301
    15411541msgid "Pending Confirmation Message"
    15421542msgstr ""
    15431543
    15441544#: ../includes/classes/class-settings-panel.php:302, ../includes/model/ListingDashboard.php:469, ../includes/model/SingleListing.php:763, ../views/front-end/user-dashboard.php:30
    15451545msgid "Thank you for your submission. Your listing is being reviewed and it may take up to 24 hours to complete the review."
    15461546msgstr ""
    15471547
    15481548#: ../includes/classes/class-settings-panel.php:313
    15491549msgid "Publish Confirmation Message"
    15501550msgstr ""
    15511551
    15521552#: ../includes/classes/class-settings-panel.php:314, ../includes/model/ListingDashboard.php:470, ../includes/model/SingleListing.php:764, ../views/front-end/user-dashboard.php:31
    15531553msgid "Congratulations! Your listing has been approved/published. Now it is publicly available."
    15541554msgstr ""
    15551555
    15561556#: ../includes/classes/class-settings-panel.php:325
    15571557msgid "Lazy load category and location fields"
    15581558msgstr ""
    15591559
    15601560#: ../includes/classes/class-settings-panel.php:369, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:245, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:330, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:452
    15611561msgid "You are not allowed to access this resource"
    15621562msgstr ""
    15631563
    15641564#: ../includes/classes/class-settings-panel.php:382
    15651565msgid "No changes made"
    15661566msgstr ""
    15671567
    15681568#: ../includes/classes/class-settings-panel.php:411
    15691569msgid "Nothing to save"
    15701570msgstr ""
    15711571
    15721572#: ../includes/classes/class-settings-panel.php:432
    15731573msgid "Saving Successful"
    15741574msgstr ""
    15751575
    15761576#: ../includes/classes/class-settings-panel.php:447
    15771577msgid "Open Now %s"
    15781578msgstr ""
    15791579
    15801580#: ../includes/classes/class-settings-panel.php:460, ../includes/gateways/class-offline-gateway.php:74
    15811581msgid "You can make your payment directly to our bank account using this gateway. Please use your ORDER ID as a reference when making the payment. We will complete your order as soon as your deposit is cleared in our bank."
    15821582msgstr ""
    15831583
    15841584#: ../includes/classes/class-settings-panel.php:466, ../includes/classes/class-setup-wizard.php:554, ../includes/gateways/class-gateway.php:143
    15851585msgid "Enable Monetization Feature"
    15861586msgstr ""
    15871587
    15881588#: ../includes/classes/class-settings-panel.php:469, ../includes/gateways/class-gateway.php:144
    15891589msgid "Choose whether you want to monetize your site or not. Monetization features will let you accept payment from your users if they submit listing based on different criteria. Default is NO."
    15901590msgstr ""
    15911591
    15921592#: ../includes/classes/class-settings-panel.php:474, ../includes/classes/class-setup-wizard.php:562, ../includes/gateways/class-gateway.php:116, ../includes/gateways/class-gateway.php:164
    15931593msgid "Monetize by Featured Listing"
    15941594msgstr ""
    15951595
    15961596#: ../includes/classes/class-settings-panel.php:477, ../includes/gateways/class-gateway.php:165
    15971597msgid "You can enabled this option to collect payment from your user for making their listing featured."
    15981598msgstr ""
    15991599
    16001600#: ../includes/classes/class-settings-panel.php:488, ../includes/classes/class-settings-panel.php:1809, ../includes/classes/class-settings-panel.php:3149, ../includes/classes/class-widget-author-info.php:35, ../includes/classes/class-widget-login-form.php:61, ../includes/elementor/all-listing.php:191, ../includes/elementor/category.php:92, ../includes/elementor/location.php:91, ../includes/elementor/search-listing.php:175, ../includes/elementor/search-listing.php:202, ../includes/elementor/search-result.php:36, ../includes/elementor/search-result.php:105, ../includes/elementor/tag.php:91, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:544, ../views/widget-templates/login-form.php:4, ../views/widget-templates/submit.php:2, ../views/widgets/login.php:3, ../views/widgets/submit-listing.php:2, ../views/admin-templates/post-types-manager/all-listing-types.php:100
    16011601msgid "Title"
    16021602msgstr ""
    16031603
    16041604#: ../includes/classes/class-settings-panel.php:489
    16051605msgid "You can set the title for featured listing to show on the ORDER PAGE"
    16061606msgstr ""
    16071607
    16081608#: ../includes/classes/class-settings-panel.php:500, ../includes/classes/class-settings-panel.php:524, ../includes/gateways/class-gateway.php:178
    16091609msgid "Price in "
    16101610msgstr ""
    16111611
    16121612#: ../includes/classes/class-settings-panel.php:503, ../includes/classes/class-settings-panel.php:528, ../includes/gateways/class-gateway.php:179
    16131613msgid "Set the price you want to charge a user if he/she wants to upgrade his/her listing to featured listing. Note: you can change the currency settings under the gateway settings"
    16141614msgstr ""
    16151615
    16161616#: ../includes/classes/class-settings-panel.php:513, ../includes/classes/class-settings-panel.php:4077, ../includes/gateways/class-gateway.php:171, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:580, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1580, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1636, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1687, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1743, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1794, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1845, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1891, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1954, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2017, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2079, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2136, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4305
    16171617msgid "Description"
    16181618msgstr ""
    16191619
    16201620#: ../includes/classes/class-settings-panel.php:520, ../includes/gateways/class-gateway.php:173
    16211621msgid "(Top of the search result and listings pages for a number days and it requires an additional payment.)"
    16221622msgstr ""
    16231623
    16241624#: ../includes/classes/class-settings-panel.php:538
    16251625msgid "Featured Duration in Days"
    16261626msgstr ""
    16271627
    16281628#: ../includes/classes/class-settings-panel.php:551, ../includes/gateways/class-gateway.php:198
    16291629msgid "Monetize your website by selling listing plans using %s extension."
    16301630msgstr ""
    16311631
    16321632#: ../includes/classes/class-settings-panel.php:556, ../includes/gateways/class-gateway.php:237
    16331633msgid "Need more gateways?"
    16341634msgstr ""
    16351635
    16361636#: ../includes/classes/class-settings-panel.php:557, ../includes/gateways/class-gateway.php:238
    16371637msgid "You can use different payment gateways to process payment including PayPal. %s"
    16381638msgstr ""
    16391639
    16401640#: ../includes/classes/class-settings-panel.php:561, ../includes/gateways/class-gateway.php:244
    16411641msgid "Enable Test Mode"
    16421642msgstr ""
    16431643
    16441644#: ../includes/classes/class-settings-panel.php:564, ../includes/gateways/class-gateway.php:245
    16451645msgid "If you enable Test Mode, then no real transaction will occur. If you want to test the payment system of your website then you can set this option enabled. NOTE: Your payment gateway must support test mode eg. they should provide you a sandbox account to test. Otherwise, use only offline gateway to test."
    16461646msgstr ""
    16471647
    16481648#: ../includes/classes/class-settings-panel.php:568, ../includes/gateways/class-gateway.php:251
    16491649msgid "Active Gateways"
    16501650msgstr ""
    16511651
    16521652#: ../includes/classes/class-settings-panel.php:574, ../includes/classes/class-settings-panel.php:587, ../includes/gateways/class-gateway.php:256, ../includes/gateways/class-gateway.php:273
    16531653msgid "Bank Transfer (Offline Gateway)"
    16541654msgstr ""
    16551655
    16561656#: ../includes/classes/class-settings-panel.php:577, ../includes/gateways/class-gateway.php:252
    16571657msgid "Check the gateway(s) you would like to use to collect payment from your users. A user will be use any of the active gateways during the checkout process "
    16581658msgstr ""
    16591659
    16601660#: ../includes/classes/class-settings-panel.php:581, ../includes/gateways/class-gateway.php:268
    16611661msgid "Default Gateway"
    16621662msgstr ""
    16631663
    16641664#: ../includes/classes/class-settings-panel.php:590, ../includes/gateways/class-gateway.php:269
    16651665msgid "Select the default gateway you would like to show as a selected gateway on the checkout page"
    16661666msgstr ""
    16671667
    16681668#: ../includes/classes/class-settings-panel.php:595, ../includes/classes/class-settings-panel.php:3529, ../includes/gateways/class-gateway.php:287
    16691669msgid "Note About This Currency Settings:"
    16701670msgstr ""
    16711671
    16721672#: ../includes/classes/class-settings-panel.php:596, ../includes/gateways/class-gateway.php:288
    16731673msgid "This currency settings lets you customize how you would like to accept payment from your user/customer and how to display pricing on the order form/history."
    16741674msgstr ""
    16751675
    16761676#: ../includes/classes/class-settings-panel.php:601, ../includes/classes/class-settings-panel.php:3534, ../includes/gateways/class-gateway.php:294
    16771677msgid "Currency Name"
    16781678msgstr ""
    16791679
    16801680#: ../includes/classes/class-settings-panel.php:602
    16811681msgid "USD"
    16821682msgstr ""
    16831683
    16841684#: ../includes/classes/class-settings-panel.php:603, ../includes/classes/class-settings-panel.php:3535, ../includes/gateways/class-gateway.php:295
    16851685msgid "Enter the Name of the currency eg. USD or GBP etc."
    16861686msgstr ""
    16871687
    16881688#: ../includes/classes/class-settings-panel.php:608, ../includes/classes/class-settings-panel.php:3540, ../includes/gateways/class-gateway.php:303
    16891689msgid "Thousand Separator"
    16901690msgstr ""
    16911691
    16921692#: ../includes/classes/class-settings-panel.php:609
    16931693msgid ","
    16941694msgstr ""
    16951695
    16961696#: ../includes/classes/class-settings-panel.php:610, ../includes/classes/class-settings-panel.php:3541, ../includes/gateways/class-gateway.php:304
    16971697msgid "Enter the currency thousand separator. Eg. , or . etc."
    16981698msgstr ""
    16991699
    17001700#: ../includes/classes/class-settings-panel.php:615, ../includes/classes/class-settings-panel.php:3551, ../includes/gateways/class-gateway.php:311
    17011701msgid "Decimal Separator"
    17021702msgstr ""
    17031703
    17041704#: ../includes/classes/class-settings-panel.php:616
    17051705msgid "."
    17061706msgstr ""
    17071707
    17081708#: ../includes/classes/class-settings-panel.php:617, ../includes/classes/class-settings-panel.php:3552, ../includes/gateways/class-gateway.php:312
    17091709msgid "Enter the currency decimal separator. Eg. \".\" or \",\". Default is \".\""
    17101710msgstr ""
    17111711
    17121712#: ../includes/classes/class-settings-panel.php:621, ../includes/classes/class-settings-panel.php:3556, ../includes/gateways/class-gateway.php:318
    17131713msgid "Currency Position"
    17141714msgstr ""
    17151715
    17161716#: ../includes/classes/class-settings-panel.php:627, ../includes/classes/class-settings-panel.php:3563, ../includes/gateways/class-gateway.php:326
    17171717msgid "$5 - Before"
    17181718msgstr ""
    17191719
    17201720#: ../includes/classes/class-settings-panel.php:631, ../includes/classes/class-settings-panel.php:3567, ../includes/gateways/class-gateway.php:330
    17211721msgid "After - 5$"
    17221722msgstr ""
    17231723
    17241724#: ../includes/classes/class-settings-panel.php:634, ../includes/classes/class-settings-panel.php:3559, ../includes/gateways/class-gateway.php:319
    17251725msgid "Select where you would like to show the currency symbol. Default is before. Eg. $5"
    17261726msgstr ""
    17271727
    17281728#: ../includes/classes/class-settings-panel.php:640, ../includes/gateways/class-offline-gateway.php:81
    17291729msgid "Note About Bank Transfer Gateway:"
    17301730msgstr ""
    17311731
    17321732#: ../includes/classes/class-settings-panel.php:641, ../includes/gateways/class-offline-gateway.php:82
    17331733msgid "You should remember that this payment gateway needs some manual action to complete an order. After getting notification of order using this offline payment gateway, you should check your bank if the money is deposited to your account. Then you should change the order status manually from the \"Order History\" submenu."
    17341734msgstr ""
    17351735
    17361736#: ../includes/classes/class-settings-panel.php:646, ../includes/gateways/class-offline-gateway.php:89
    17371737msgid "Gateway Title"
    17381738msgstr ""
    17391739
    17401740#: ../includes/classes/class-settings-panel.php:647
    17411741msgid "Bank Transfer"
    17421742msgstr ""
    17431743
    17441744#: ../includes/classes/class-settings-panel.php:648, ../includes/gateways/class-offline-gateway.php:90
    17451745msgid "Enter the title of this gateway that should be displayed to the user on the front end."
    17461746msgstr ""
    17471747
    17481748#: ../includes/classes/class-settings-panel.php:653, ../includes/gateways/class-offline-gateway.php:97
    17491749msgid "Gateway Description"
    17501750msgstr ""
    17511751
    17521752#: ../includes/classes/class-settings-panel.php:655, ../includes/gateways/class-offline-gateway.php:98
    17531753msgid "Enter some description for your user to transfer funds to your account."
    17541754msgstr ""
    17551755
    17561756#: ../includes/classes/class-settings-panel.php:660, ../includes/gateways/class-offline-gateway.php:104
    17571757msgid "Bank Information"
    17581758msgstr ""
    17591759
    17601760#: ../includes/classes/class-settings-panel.php:662, ../includes/gateways/class-offline-gateway.php:105
    17611761msgid "Enter your bank information below so that use can make payment directly to your bank account."
    17621762msgstr ""
    17631763
    17641764#: ../includes/classes/class-settings-panel.php:668
    17651765msgid "Need more Features?"
    17661766msgstr ""
    17671767
    17681768#: ../includes/classes/class-settings-panel.php:669
    17691769msgid "You can add new features and expand the functionality of the plugin even more by using extensions. %s"
    17701770msgstr ""
    17711771
    17721772#: ../includes/classes/class-settings-panel.php:673
    17731773msgid "To"
    17741774msgstr ""
    17751775
    17761776#: ../includes/classes/class-settings-panel.php:679
    17771777msgid "All User"
    17781778msgstr ""
    17791779
    17801780#: ../includes/classes/class-settings-panel.php:683
    17811781msgid "Selected User"
    17821782msgstr ""
    17831783
    17841784#: ../includes/classes/class-settings-panel.php:689, ../includes/system-status/send-mail.php:75, ../includes/system-status/send-mail.php:76
    17851785msgid "Subject"
    17861786msgstr ""
    17871787
    17881788#: ../includes/classes/class-settings-panel.php:695
    17891789msgid "Send a copy to email"
    17901790msgstr ""
    17911791
    17921792#: ../includes/classes/class-settings-panel.php:701
    17931793msgid "Button Type"
    17941794msgstr ""
    17951795
    17961796#: ../includes/classes/class-settings-panel.php:708
    17971797msgid "Solid Primary"
    17981798msgstr ""
    17991799
    18001800#: ../includes/classes/class-settings-panel.php:712
    18011801msgid "Solid Secondary"
    18021802msgstr ""
    18031803
    18041804#: ../includes/classes/class-settings-panel.php:716
    18051805msgid "Solid Danger"
    18061806msgstr ""
    18071807
    18081808#: ../includes/classes/class-settings-panel.php:720
    18091809msgid "Solid Success"
    18101810msgstr ""
    18111811
    18121812#: ../includes/classes/class-settings-panel.php:724
    18131813msgid "Solid Lighter"
    18141814msgstr ""
    18151815
    18161816#: ../includes/classes/class-settings-panel.php:728
    18171817msgid "Primary Outline"
    18181818msgstr ""
    18191819
    18201820#: ../includes/classes/class-settings-panel.php:732
    18211821msgid "Primary Outline Light"
    18221822msgstr ""
    18231823
    18241824#: ../includes/classes/class-settings-panel.php:736
    18251825msgid "Danger Outline"
    18261826msgstr ""
    18271827
    18281828#: ../includes/classes/class-settings-panel.php:743, ../includes/classes/class-settings-panel.php:821, ../includes/classes/class-settings-panel.php:899, ../includes/classes/class-settings-panel.php:977, ../includes/classes/class-settings-panel.php:1055, ../includes/classes/class-settings-panel.php:1289
    18291829msgid "Button Example"
    18301830msgstr ""
    18311831
    18321832#: ../includes/classes/class-settings-panel.php:754, ../includes/classes/class-settings-panel.php:832, ../includes/classes/class-settings-panel.php:910, ../includes/classes/class-settings-panel.php:988, ../includes/classes/class-settings-panel.php:999, ../includes/classes/class-settings-panel.php:1066, ../includes/classes/class-settings-panel.php:1300
    18331833msgid "Text Color"
    18341834msgstr ""
    18351835
    18361836#: ../includes/classes/class-settings-panel.php:765, ../includes/classes/class-settings-panel.php:843, ../includes/classes/class-settings-panel.php:921, ../includes/classes/class-settings-panel.php:1077, ../includes/classes/class-settings-panel.php:1311
    18371837msgid "Text Hover Color"
    18381838msgstr ""
    18391839
    18401840#: ../includes/classes/class-settings-panel.php:776, ../includes/classes/class-settings-panel.php:854, ../includes/classes/class-settings-panel.php:932, ../includes/classes/class-settings-panel.php:1010, ../includes/classes/class-settings-panel.php:1088, ../includes/classes/class-settings-panel.php:1322, ../includes/classes/class-settings-panel.php:1413
    18411841msgid "Background Color"
    18421842msgstr ""
    18431843
    18441844#: ../includes/classes/class-settings-panel.php:787, ../includes/classes/class-settings-panel.php:865, ../includes/classes/class-settings-panel.php:943, ../includes/classes/class-settings-panel.php:1021, ../includes/classes/class-settings-panel.php:1099, ../includes/classes/class-settings-panel.php:1333
    18451845msgid "Background Hover Color"
    18461846msgstr ""
    18471847
    18481848#: ../includes/classes/class-settings-panel.php:798, ../includes/classes/class-settings-panel.php:876, ../includes/classes/class-settings-panel.php:954, ../includes/classes/class-settings-panel.php:1032, ../includes/classes/class-settings-panel.php:1110, ../includes/classes/class-settings-panel.php:1344, ../includes/classes/class-settings-panel.php:1419
    18491849msgid "Border Color"
    18501850msgstr ""
    18511851
    18521852#: ../includes/classes/class-settings-panel.php:809, ../includes/classes/class-settings-panel.php:887, ../includes/classes/class-settings-panel.php:965, ../includes/classes/class-settings-panel.php:1043, ../includes/classes/class-settings-panel.php:1121, ../includes/classes/class-settings-panel.php:1355
    18531853msgid "Border Hover Color"
    18541854msgstr ""
    18551855
    18561856#: ../includes/classes/class-settings-panel.php:1133
    18571857msgid "Button Example Outline"
    18581858msgstr ""
    18591859
    18601860#: ../includes/classes/class-settings-panel.php:1144
    18611861msgid "Text Color Outline"
    18621862msgstr ""
    18631863
    18641864#: ../includes/classes/class-settings-panel.php:1155
    18651865msgid "Text Hover Color Outline"
    18661866msgstr ""
    18671867
    18681868#: ../includes/classes/class-settings-panel.php:1166
    18691869msgid "Background Color Outline"
    18701870msgstr ""
    18711871
    18721872#: ../includes/classes/class-settings-panel.php:1177
    18731873msgid "Background Hover Color Outline"
    18741874msgstr ""
    18751875
    18761876#: ../includes/classes/class-settings-panel.php:1188
    18771877msgid "Border Color Outline"
    18781878msgstr ""
    18791879
    18801880#: ../includes/classes/class-settings-panel.php:1199
    18811881msgid "Border Hover Color Outline"
    18821882msgstr ""
    18831883
    18841884#: ../includes/classes/class-settings-panel.php:1211
    18851885msgid "Button Example Outline Light"
    18861886msgstr ""
    18871887
    18881888#: ../includes/classes/class-settings-panel.php:1222
    18891889msgid "Text Color Outline Light"
    18901890msgstr ""
    18911891
    18921892#: ../includes/classes/class-settings-panel.php:1233
    18931893msgid "Text Hover Color Outline Light"
    18941894msgstr ""
    18951895
    18961896#: ../includes/classes/class-settings-panel.php:1244
    18971897msgid "Background Color Outline Light"
    18981898msgstr ""
    18991899
    19001900#: ../includes/classes/class-settings-panel.php:1255
    19011901msgid "Background Hover Color Outline Light"
    19021902msgstr ""
    19031903
    19041904#: ../includes/classes/class-settings-panel.php:1266
    19051905msgid "Border Color Outline Light"
    19061906msgstr ""
    19071907
    19081908#: ../includes/classes/class-settings-panel.php:1277
    19091909msgid "Border Hover Color Outline Light"
    19101910msgstr ""
    19111911
    19121912#: ../includes/classes/class-settings-panel.php:1370
    19131913msgid "Open Background Color"
    19141914msgstr ""
    19151915
    19161916#: ../includes/classes/class-settings-panel.php:1377
    19171917msgid "Closed Background Color"
    19181918msgstr ""
    19191919
    19201920#: ../includes/classes/class-settings-panel.php:1383
    19211921msgid "Featured Background Color"
    19221922msgstr ""
    19231923
    19241924#: ../includes/classes/class-settings-panel.php:1389
    19251925msgid "Popular Background Color"
    19261926msgstr ""
    19271927
    19281928#: ../includes/classes/class-settings-panel.php:1395
    19291929msgid "New Background Color"
    19301930msgstr ""
    19311931
    19321932#: ../includes/classes/class-settings-panel.php:1401
    19331933msgid "Marker Shape Color"
    19341934msgstr ""
    19351935
    19361936#: ../includes/classes/class-settings-panel.php:1407
    19371937msgid "Marker Icon Color"
    19381938msgstr ""
    19391939
    19401940#: ../includes/classes/class-settings-panel.php:1424
    19411941msgid "Icon Library"
    19421942msgstr ""
    19431943
    19441944#: ../includes/classes/class-settings-panel.php:1429
    19451945msgid "Font Awesome"
    19461946msgstr ""
    19471947
    19481948#: ../includes/classes/class-settings-panel.php:1433
    19491949msgid "Line Awesome"
    19501950msgstr ""
    19511951
    19521952#: ../includes/classes/class-settings-panel.php:1439
    19531953msgid "Can User Renew Listing?"
    19541954msgstr ""
    19551955
    19561956#: ../includes/classes/class-settings-panel.php:1442
    19571957msgid "Here YES means users can renew their listings."
    19581958msgstr ""
    19591959
    19601960#: ../includes/classes/class-settings-panel.php:1445
    19611961msgid "When to send expire notice"
    19621962msgstr ""
    19631963
    19641964#: ../includes/classes/class-settings-panel.php:1447, ../includes/classes/class-settings-panel.php:1472
    19651965msgid "Select the days before a listing expires to send an expiration reminder email"
    19661966msgstr ""
    19671967
    19681968#: ../includes/classes/class-settings-panel.php:1455
    19691969msgid "When to send renewal reminder"
    19701970msgstr ""
    19711971
    19721972#: ../includes/classes/class-settings-panel.php:1457
    19731973msgid "Select the days after a listing expires to send a renewal reminder email"
    19741974msgstr ""
    19751975
    19761976#: ../includes/classes/class-settings-panel.php:1465
    19771977msgid "Delete/Trash Expired Listings"
    19781978msgstr ""
    19791979
    19801980#: ../includes/classes/class-settings-panel.php:1470
    19811981msgid "Delete/Trash Expired Listings After (days) of Expiration"
    19821982msgstr ""
    19831983
    19841984#: ../includes/classes/class-settings-panel.php:1486
    19851985msgid "Delete or Trash Expired Listings"
    19861986msgstr ""
    19871987
    19881988#: ../includes/classes/class-settings-panel.php:1488
    19891989msgid "Choose the Default actions after a listing reaches its deletion threshold."
    19901990msgstr ""
    19911991
    19921992#: ../includes/classes/class-settings-panel.php:1493
    19931993msgid "Delete Permanently"
    19941994msgstr ""
    19951995
    19961996#: ../includes/classes/class-settings-panel.php:1497
    19971997msgid "Move to Trash"
    19981998msgstr ""
    19991999
    20002000#: ../includes/classes/class-settings-panel.php:1508
    20012001msgid "Paginate Author Listings"
    20022002msgstr ""
    20032003
    20042004#: ../includes/classes/class-settings-panel.php:1513, ../includes/classes/class-settings-panel.php:2183
    20052005msgid "Author Email"
    20062006msgstr ""
    20072007
    20082008#: ../includes/classes/class-settings-panel.php:1519
    20092009msgid "Display"
    20102010msgstr ""
    20112011
    20122012#: ../includes/classes/class-settings-panel.php:1523
    20132013msgid "Display only for Logged in Users"
    20142014msgstr ""
    20152015
    20162016#: ../includes/classes/class-settings-panel.php:1528
    20172017msgid "Hide"
    20182018msgstr ""
    20192019
    20202020#: ../includes/classes/class-settings-panel.php:1533
    20212021msgid "Show Category Filter on Author Page"
    20222022msgstr ""
    20232023
    20242024#: ../includes/classes/class-settings-panel.php:1538
    20252025msgid "Enable Cache"
    20262026msgstr ""
    20272027
    20282028#: ../includes/classes/class-settings-panel.php:1543
    20292029msgid "Reset Cache"
    20302030msgstr ""
    20312031
    20322032#: ../includes/classes/class-settings-panel.php:1554, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4723
    20332033msgid "Guest Listing Submission"
    20342034msgstr ""
    20352035
    20362036#: ../includes/classes/class-settings-panel.php:1561, ../includes/classes/class-settings-panel.php:2905
    20372037msgid "Display Header"
    20382038msgstr ""
    20392039
    20402040#: ../includes/classes/class-settings-panel.php:1567
    20412041msgid "Header Title"
    20422042msgstr ""
    20432043
    20442044#: ../includes/classes/class-settings-panel.php:1568, ../includes/elementor/category.php:37, ../includes/model/Listings.php:154
    20452045msgid "Items Found"
    20462046msgstr ""
    20472047
    20482048#: ../includes/classes/class-settings-panel.php:1578
    20492049msgid "Instant Search"
    20502050msgstr ""
    20512051
    20522052#: ../includes/classes/class-settings-panel.php:1583, ../includes/classes/class-settings-panel.php:2910
    20532053msgid "Display Filters Button"
    20542054msgstr ""
    20552055
    20562056#: ../includes/classes/class-settings-panel.php:1594
    20572057msgid "Display Filters Icon"
    20582058msgstr ""
    20592059
    20602060#: ../includes/classes/class-settings-panel.php:1599, ../includes/classes/class-settings-panel.php:2921
    20612061msgid "Filters Button Text"
    20622062msgstr ""
    20632063
    20642064#: ../includes/classes/class-settings-panel.php:1600, ../includes/classes/class-settings-panel.php:2922, ../includes/model/Listings.php:178, ../includes/model/Listings.php:214, ../includes/model/Listings.php:215
    20652065msgid "Filters"
    20662066msgstr ""
    20672067
    20682068#: ../includes/classes/class-settings-panel.php:1603, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2590
    20692069msgid "Tags Filter Source"
    20702070msgstr ""
    20712071
    20722072#: ../includes/classes/class-settings-panel.php:1609, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2597
    20732073msgid "Category Based Tags"
    20742074msgstr ""
    20752075
    20762076#: ../includes/classes/class-settings-panel.php:1618, ../includes/classes/class-settings-panel.php:2808, ../includes/classes/class-settings-panel.php:2952, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2958
    20772077msgid "Default Radius Distance"
    20782078msgstr ""
    20792079
    20802080#: ../includes/classes/class-settings-panel.php:1624
    20812081msgid "Filter Buttons"
    20822082msgstr ""
    20832083
    20842084#: ../includes/classes/class-settings-panel.php:1633, ../includes/classes/class-settings-panel.php:2799, ../includes/classes/class-settings-panel.php:2982
    20852085msgid "Reset"
    20862086msgstr ""
    20872087
    20882088#: ../includes/classes/class-settings-panel.php:1637, ../includes/classes/class-settings-panel.php:2803, ../includes/classes/class-settings-panel.php:2986
    20892089msgid "Apply"
    20902090msgstr ""
    20912091
    20922092#: ../includes/classes/class-settings-panel.php:1643, ../includes/classes/class-settings-panel.php:2992
    20932093msgid "Reset Filters Button text"
    20942094msgstr ""
    20952095
    20962096#: ../includes/classes/class-settings-panel.php:1644, ../includes/classes/class-settings-panel.php:2846, ../includes/classes/class-settings-panel.php:2993, ../includes/elementor/search-listing.php:128, ../includes/model/SearchForm.php:111, ../includes/model/SearchForm.php:120, ../includes/model/SearchForm.php:134, ../includes/model/SearchForm.php:208
    20972097msgid "Reset Filters"
    20982098msgstr ""
    20992099
    21002100#: ../includes/classes/class-settings-panel.php:1648, ../includes/classes/class-settings-panel.php:3003
    21012101msgid "Apply Filters Button text"
    21022102msgstr ""
    21032103
    21042104#: ../includes/classes/class-settings-panel.php:1649, ../includes/classes/class-settings-panel.php:2857, ../includes/classes/class-settings-panel.php:3004, ../includes/elementor/search-listing.php:142, ../includes/model/SearchForm.php:112, ../includes/model/SearchForm.php:121, ../includes/model/SearchForm.php:135, ../includes/model/SearchForm.php:209
    21052105msgid "Apply Filters"
    21062106msgstr ""
    21072107
    21082108#: ../includes/classes/class-settings-panel.php:1655, ../includes/classes/class-settings-panel.php:3067
    21092109msgid "Display \"Sort By\" Dropdown"
    21102110msgstr ""
    21112111
    21122112#: ../includes/classes/class-settings-panel.php:1660, ../includes/classes/class-settings-panel.php:3078
    21132113msgid "\"Sort By\" Text"
    21142114msgstr ""
    21152115
    21162116#: ../includes/classes/class-settings-panel.php:1661, ../includes/classes/class-settings-panel.php:3079, ../includes/classes/class-settings-panel.php:3166, ../includes/classes/class-widget-categories.php:167, ../includes/classes/class-widget-locations.php:166, ../includes/classes/class-widget-tags.php:142, ../includes/model/Listings.php:171, ../includes/model/Listings.php:226
    21172117msgid "Sort By"
    21182118msgstr ""
    21192119
    21202120#: ../includes/classes/class-settings-panel.php:1670, ../includes/classes/class-settings-panel.php:3089
    21212121msgid "\"Sort By\" Dropdown"
    21222122msgstr ""
    21232123
    21242124#: ../includes/classes/class-settings-panel.php:1719, ../includes/classes/class-settings-panel.php:3015
    21252125msgid "Display \"View As\" Dropdown"
    21262126msgstr ""
    21272127
    21282128#: ../includes/classes/class-settings-panel.php:1724, ../includes/classes/class-settings-panel.php:3026
    21292129msgid "\"View As\" Text"
    21302130msgstr ""
    21312131
    21322132#: ../includes/classes/class-settings-panel.php:1731, ../includes/classes/class-settings-panel.php:3027, ../includes/elementor/all-categories.php:65, ../includes/elementor/all-listing.php:87, ../includes/elementor/all-locations.php:65, ../includes/elementor/category.php:43, ../includes/elementor/location.php:43, ../includes/elementor/search-result.php:50, ../includes/elementor/tag.php:43, ../includes/model/Listings.php:162, ../includes/model/Listings.php:224
    21332133msgid "View As"
    21342134msgstr ""
    21352135
    21362136#: ../includes/classes/class-settings-panel.php:1734
    21372137msgid "\"View As\" Dropdown"
    21382138msgstr ""
    21392139
    21402140#: ../includes/classes/class-settings-panel.php:1763, ../includes/classes/class-settings-panel.php:3573, ../includes/classes/class-settings-panel.php:3661
    21412141msgid "Default View"
    21422142msgstr ""
    21432143
    21442144#: ../includes/classes/class-settings-panel.php:1782, ../includes/elementor/all-categories.php:67, ../includes/elementor/all-listing.php:89, ../includes/elementor/all-locations.php:67, ../includes/elementor/category.php:45, ../includes/elementor/location.php:45, ../includes/elementor/search-result.php:52, ../includes/elementor/tag.php:45
    21452145msgid "Grid View"
    21462146msgstr ""
    21472147
    21482148#: ../includes/classes/class-settings-panel.php:1788
    21492149msgid "Masonry"
    21502150msgstr ""
    21512151
    21522152#: ../includes/classes/class-settings-panel.php:1792
    21532153msgid "Normal"
    21542154msgstr ""
    21552155
    21562156#: ../includes/classes/class-settings-panel.php:1797, ../includes/classes/class-settings-panel.php:2612, ../includes/classes/class-settings-panel.php:3181
    21572157msgid "Number of Columns"
    21582158msgstr ""
    21592159
    21602160#: ../includes/classes/class-settings-panel.php:1803
    21612161msgid "Listings Order By"
    21622162msgstr ""
    21632163
    21642164#: ../includes/classes/class-settings-panel.php:1813, ../includes/classes/class-settings-panel.php:3153, ../includes/elementor/all-listing.php:192, ../includes/elementor/category.php:93, ../includes/elementor/location.php:92, ../includes/elementor/search-result.php:106, ../includes/elementor/tag.php:92, ../includes/payments/class-order.php:282, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3494, ../templates/payment/payment-receipt.php:47
    21652165msgid "Date"
    21662166msgstr ""
    21672167
    21682168#: ../includes/classes/class-settings-panel.php:1817, ../includes/classes/class-settings-panel.php:3157, ../includes/classes/class-setup-wizard.php:570, ../includes/elementor/all-listing.php:193, ../includes/elementor/category.php:94, ../includes/elementor/location.php:93, ../includes/elementor/search-result.php:107, ../includes/elementor/tag.php:93, ../views/admin-templates/listing-form/add-listing.php:70
    21692169msgid "Price"
    21702170msgstr ""
    21712171
    21722172#: ../includes/classes/class-settings-panel.php:1821, ../includes/classes/class-settings-panel.php:3161
    21732173msgid "Random"
    21742174msgstr ""
    21752175
    21762176#: ../includes/classes/class-settings-panel.php:1826
    21772177msgid "Listings Sort By"
    21782178msgstr ""
    21792179
    21802180#: ../includes/classes/class-settings-panel.php:1832, ../includes/classes/class-settings-panel.php:3172, ../includes/classes/class-settings-panel.php:3641, ../includes/classes/class-settings-panel.php:3729, ../includes/classes/class-widget-categories.php:169, ../includes/classes/class-widget-locations.php:168, ../includes/classes/class-widget-tags.php:144
    21812181msgid "Ascending"
    21822182msgstr ""
    21832183
    21842184#: ../includes/classes/class-settings-panel.php:1836, ../includes/classes/class-settings-panel.php:3176, ../includes/classes/class-settings-panel.php:3645, ../includes/classes/class-settings-panel.php:3733, ../includes/classes/class-widget-categories.php:170, ../includes/classes/class-widget-locations.php:169, ../includes/classes/class-widget-tags.php:145
    21852185msgid "Descending"
    21862186msgstr ""
    21872187
    21882188#: ../includes/classes/class-settings-panel.php:1841
    21892189msgid "Preview Image Quality"
    21902190msgstr ""
    21912191
    21922192#: ../includes/classes/class-settings-panel.php:1847
    21932193msgid "Medium"
    21942194msgstr ""
    21952195
    21962196#: ../includes/classes/class-settings-panel.php:1851
    21972197msgid "Large"
    21982198msgstr ""
    21992199
    22002200#: ../includes/classes/class-settings-panel.php:1855
    22012201msgid "Full"
    22022202msgstr ""
    22032203
    22042204#: ../includes/classes/class-settings-panel.php:1860
    22052205msgid "Image Size"
    22062206msgstr ""
    22072207
    22082208#: ../includes/classes/class-settings-panel.php:1867
    22092209msgid "Original"
    22102210msgstr ""
    22112211
    22122212#: ../includes/classes/class-settings-panel.php:1871, ../includes/classes/class-settings-panel.php:2094
    22132213msgid "Fill with Container"
    22142214msgstr ""
    22152215
    22162216#: ../includes/classes/class-settings-panel.php:1875, ../includes/classes/class-settings-panel.php:2098
    22172217msgid "Fit with Container"
    22182218msgstr ""
    22192219
    22202220#: ../includes/classes/class-settings-panel.php:1880
    22212221msgid "Container Width"
    22222222msgstr ""
    22232223
    22242224#: ../includes/classes/class-settings-panel.php:1889
    22252225msgid "Container Height"
    22262226msgstr ""
    22272227
    22282228#: ../includes/classes/class-settings-panel.php:1898
    22292229msgid "Container Size By"
    22302230msgstr ""
    22312231
    22322232#: ../includes/classes/class-settings-panel.php:1905
    22332233msgid "Pixel"
    22342234msgstr ""
    22352235
    22362236#: ../includes/classes/class-settings-panel.php:1909
    22372237msgid "Ratio"
    22382238msgstr ""
    22392239
    22402240#: ../includes/classes/class-settings-panel.php:1914
    22412241msgid "Background"
    22422242msgstr ""
    22432243
    22442244#: ../includes/classes/class-settings-panel.php:1921, ../includes/classes/class-settings-panel.php:2115
    22452245msgid "Blur"
    22462246msgstr ""
    22472247
    22482248#: ../includes/classes/class-settings-panel.php:1925, ../includes/classes/class-settings-panel.php:2119
    22492249msgid "Custom Color"
    22502250msgstr ""
    22512251
    22522252#: ../includes/classes/class-settings-panel.php:1931
    22532253msgid "Select Color"
    22542254msgstr ""
    22552255
    22562256#: ../includes/classes/class-settings-panel.php:1941
    22572257msgid "Select Listing Preview Image"
    22582258msgstr ""
    22592259
    22602260#: ../includes/classes/class-settings-panel.php:1948
    22612261msgid "Display Each Grid Info on Single Line"
    22622262msgstr ""
    22632263
    22642264#: ../includes/classes/class-settings-panel.php:1949
    22652265msgid "Here Yes means display all the informations (i.e. title, tagline, excerpt etc.) of grid view on single line"
    22662266msgstr ""
    22672267
    22682268#: ../includes/classes/class-settings-panel.php:1954, ../templates/dashboard/tab-profile.php:113, ../views/front-end/user-dashboard.php:529
    22692269msgid "Address"
    22702270msgstr ""
    22712271
    22722272#: ../includes/classes/class-settings-panel.php:1957
    22732273msgid "Choose which address you want to show on listings page"
    22742274msgstr ""
    22752275
    22762276#: ../includes/classes/class-settings-panel.php:1961
    22772277msgid "Display From Location"
    22782278msgstr ""
    22792279
    22802280#: ../includes/classes/class-settings-panel.php:1965
    22812281msgid "Display From Contact Information"
    22822282msgstr ""
    22832283
    22842284#: ../includes/classes/class-settings-panel.php:1971
    22852285msgid "Publish Date Format"
    22862286msgstr ""
    22872287
    22882288#: ../includes/classes/class-settings-panel.php:1977
    22892289msgid "Number of Days Ago"
    22902290msgstr ""
    22912291
    22922292#: ../includes/classes/class-settings-panel.php:1981
    22932293msgid "Standard Date Format"
    22942294msgstr ""
    22952295
    22962296#: ../includes/classes/class-settings-panel.php:1992, ../includes/classes/class-settings-panel.php:2528
    22972297msgid "Listings Per Page"
    22982298msgstr ""
    22992299
    23002300#: ../includes/classes/class-settings-panel.php:2007
    23012301msgid "Restrict Single Listings for Logged in User Only"
    23022302msgstr ""
    23032303
    23042304#: ../includes/classes/class-settings-panel.php:2011
    23052305msgid "Template"
    23062306msgstr ""
    23072307
    23082308#: ../includes/classes/class-settings-panel.php:2023
    23092309msgid "Theme Template (Page)"
    23102310msgstr ""
    23112311
    23122312#: ../includes/classes/class-settings-panel.php:2027
    23132313msgid "Theme Template (Post)"
    23142314msgstr ""
    23152315
    23162316#: ../includes/classes/class-settings-panel.php:2031
    23172317msgid "Directorist Template"
    23182318msgstr ""
    23192319
    23202320#: ../includes/classes/class-settings-panel.php:2037
    23212321msgid "Listing Slug"
    23222322msgstr ""
    23232323
    23242324#: ../includes/classes/class-settings-panel.php:2047
    23252325msgid "Redirect after Editing a Listing"
    23262326msgstr ""
    23272327
    23282328#: ../includes/classes/class-settings-panel.php:2050
    23292329msgid "Select where user will be redirected after editing a listing on the frontend."
    23302330msgstr ""
    23312331
    23322332#: ../includes/classes/class-settings-panel.php:2060
    23332333msgid "Frontend of the Listing"
    23342334msgstr ""
    23352335
    23362336#: ../includes/classes/class-settings-panel.php:2064, ../includes/classes/class-settings-panel.php:4886
    23372337msgid "User Dashboard"
    23382338msgstr ""
    23392339
    23402340#: ../includes/classes/class-settings-panel.php:2071
    23412341msgid "Show Slider Image"
    23422342msgstr ""
    23432343
    23442344#: ../includes/classes/class-settings-panel.php:2073
    23452345msgid "Hide/show slider image from single listing page."
    23462346msgstr ""
    23472347
    23482348#: ../includes/classes/class-settings-panel.php:2082
    23492349msgid "Slider Image Size"
    23502350msgstr ""
    23512351
    23522352#: ../includes/classes/class-settings-panel.php:2103
    23532353msgid "Slider Background Type"
    23542354msgstr ""
    23552355
    23562356#: ../includes/classes/class-settings-panel.php:2125
    23572357msgid "Slider Background Color"
    23582358msgstr ""
    23592359
    23602360#: ../includes/classes/class-settings-panel.php:2136
    23612361msgid "Image Width"
    23622362msgstr ""
    23632363
    23642364#: ../includes/classes/class-settings-panel.php:2150
    23652365msgid "Image Height"
    23662366msgstr ""
    23672367
    23682368#: ../includes/classes/class-settings-panel.php:2166, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2182
    23692369msgid "Address Linked with Map"
    23702370msgstr ""
    23712371
    23722372#: ../includes/classes/class-settings-panel.php:2176
    23732373msgid "Email Send to"
    23742374msgstr ""
    23752375
    23762376#: ../includes/classes/class-settings-panel.php:2179
    23772377msgid "Email recipient for receiving email from Contact Listing Owner Form."
    23782378msgstr ""
    23792379
    23802380#: ../includes/classes/class-settings-panel.php:2187
    23812381msgid "Listing's Email"
    23822382msgstr ""
    23832383
    23842384#: ../includes/classes/class-settings-panel.php:2192
    23852385msgid "Related Listings Based on"
    23862386msgstr ""
    23872387
    23882388#: ../includes/classes/class-settings-panel.php:2195
    23892389msgid "Display related listings based on category and/or tag."
    23902390msgstr ""
    23912391
    23922392#: ../includes/classes/class-settings-panel.php:2199
    23932393msgid "Category or Tag"
    23942394msgstr ""
    23952395
    23962396#: ../includes/classes/class-settings-panel.php:2203
    23972397msgid "Category and Tag"
    23982398msgstr ""
    23992399
    24002400#: ../includes/classes/class-settings-panel.php:2210
    24012401msgid "Fix Repeated Thumbnail of Single Listing"
    24022402msgstr ""
    24032403
    24042404#: ../includes/classes/class-settings-panel.php:2222
    24052405msgid "New Badge Text"
    24062406msgstr ""
    24072407
    24082408#: ../includes/classes/class-settings-panel.php:2223, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3325, ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:1597
    24092409msgid "New"
    24102410msgstr ""
    24112411
    24122412#: ../includes/classes/class-settings-panel.php:2226
    24132413msgid "New Badge Duration in Days"
    24142414msgstr ""
    24152415
    24162416#: ../includes/classes/class-settings-panel.php:2235
    24172417msgid "Featured Badge Text"
    24182418msgstr ""
    24192419
    24202420#: ../includes/classes/class-settings-panel.php:2240
    24212421msgid "Popular Badge Text"
    24222422msgstr ""
    24232423
    24242424#: ../includes/classes/class-settings-panel.php:2241, ../includes/model/Listings.php:182, ../includes/model/Listings.php:2038, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3332, ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:1604
    24252425msgid "Popular"
    24262426msgstr ""
    24272427
    24282428#: ../includes/classes/class-settings-panel.php:2244
    24292429msgid "Popular Based on"
    24302430msgstr ""
    24312431
    24322432#: ../includes/classes/class-settings-panel.php:2250, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:800, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3346
    24332433msgid "View Count"
    24342434msgstr ""
    24352435
    24362436#: ../includes/classes/class-settings-panel.php:2254
    24372437msgid "Average Rating"
    24382438msgstr ""
    24392439
    24402440#: ../includes/classes/class-settings-panel.php:2258
    24412441msgid "Both"
    24422442msgstr ""
    24432443
    24442444#: ../includes/classes/class-settings-panel.php:2264
    24452445msgid "Threshold in Views Count"
    24462446msgstr ""
    24472447
    24482448#: ../includes/classes/class-settings-panel.php:2269
    24492449msgid "Count Logged-in User View"
    24502450msgstr ""
    24512451
    24522452#: ../includes/classes/class-settings-panel.php:2273
    24532453msgid "Threshold in Average Ratings (equal or grater than)"
    24542454msgstr ""
    24552455
    24562456#: ../includes/classes/class-settings-panel.php:2385, ../includes/classes/class-setup-wizard.php:543
    24572457msgid "Select Map"
    24582458msgstr ""
    24592459
    24602460#: ../includes/classes/class-settings-panel.php:2391
    24612461msgid "Google Map"
    24622462msgstr ""
    24632463
    24642464#: ../includes/classes/class-settings-panel.php:2395
    24652465msgid "OpenStreetMap"
    24662466msgstr ""
    24672467
    24682468#: ../includes/classes/class-settings-panel.php:2401, ../includes/classes/class-setup-wizard.php:550
    24692469msgid "Google Map API key"
    24702470msgstr ""
    24712471
    24722472#: ../includes/classes/class-settings-panel.php:2402
    24732473msgid "Please replace it by your own API. It's required to use Google Map. You can find detailed information %s."
    24742474msgstr ""
    24752475
    24762476#: ../includes/classes/class-settings-panel.php:2413
    24772477msgid "Default Latitude"
    24782478msgstr ""
    24792479
    24802480#: ../includes/classes/class-settings-panel.php:2414, ../includes/classes/class-settings-panel.php:2420
    24812481msgid "You can find it %s"
    24822482msgstr ""
    24832483
    24842484#: ../includes/classes/class-settings-panel.php:2419
    24852485msgid "Default Longitude"
    24862486msgstr ""
    24872487
    24882488#: ../includes/classes/class-settings-panel.php:2424
    24892489msgid "Zoom Level for Single Listing"
    24902490msgstr ""
    24912491
    24922492#: ../includes/classes/class-settings-panel.php:2425
    24932493msgid "Here 0 means 100% zoom-out. 22 means 100% zoom-in. Minimum Zoom Allowed = 1. Max Zoom Allowed = 22."
    24942494msgstr ""
    24952495
    24962496#: ../includes/classes/class-settings-panel.php:2433
    24972497msgid "Zoom Level for Map View"
    24982498msgstr ""
    24992499
    25002500#: ../includes/classes/class-settings-panel.php:2434
    25012501msgid "Here 0 means 100% zoom-out. 18 means 100% zoom-in. Minimum Zoom Allowed = 1. Max Zoom Allowed = 22."
    25022502msgstr ""
    25032503
    25042504#: ../includes/classes/class-settings-panel.php:2442, ../includes/elementor/all-listing.php:98, ../includes/elementor/category.php:54, ../includes/elementor/location.php:54, ../includes/elementor/search-result.php:61, ../includes/elementor/tag.php:54
    25052505msgid "Map Height"
    25062506msgstr ""
    25072507
    25082508#: ../includes/classes/class-settings-panel.php:2443
    25092509msgid "In pixel."
    25102510msgstr ""
    25112511
    25122512#: ../includes/classes/class-settings-panel.php:2452
    25132513msgid "Display Map Info Window"
    25142514msgstr ""
    25152515
    25162516#: ../includes/classes/class-settings-panel.php:2457
    25172517msgid "Display Preview Image"
    25182518msgstr ""
    25192519
    25202520#: ../includes/classes/class-settings-panel.php:2468
    25212521msgid "Display Title"
    25222522msgstr ""
    25232523
    25242524#: ../includes/classes/class-settings-panel.php:2479
    25252525msgid "Display Address"
    25262526msgstr ""
    25272527
    25282528#: ../includes/classes/class-settings-panel.php:2490
    25292529msgid "Display Get Direction"
    25302530msgstr ""
    25312531
    25322532#: ../includes/classes/class-settings-panel.php:2502
    25332533msgid "Display My Listing Tab"
    25342534msgstr ""
    25352535
    25362536#: ../includes/classes/class-settings-panel.php:2507
    25372537msgid "\"My Listing\" Tab Label"
    25382538msgstr ""
    25392539
    25402540#: ../includes/classes/class-settings-panel.php:2508, ../includes/model/ListingDashboard.php:359, ../views/front-end/user-dashboard.php:21
    25412541msgid "My Listing"
    25422542msgstr ""
    25432543
    25442544#: ../includes/classes/class-settings-panel.php:2518
    25452545msgid "Listings Pagination"
    25462546msgstr ""
    25472547
    25482548#: ../includes/classes/class-settings-panel.php:2543
    25492549msgid "Display My Profile Tab"
    25502550msgstr ""
    25512551
    25522552#: ../includes/classes/class-settings-panel.php:2548
    25532553msgid "\"My Profile\" Tab Label"
    25542554msgstr ""
    25552555
    25562556#: ../includes/classes/class-settings-panel.php:2549, ../includes/model/ListingDashboard.php:373, ../templates/dashboard/tab-profile.php:31, ../views/front-end/user-dashboard.php:23, ../views/front-end/user-dashboard.php:450
    25572557msgid "My Profile"
    25582558msgstr ""
    25592559
    25602560#: ../includes/classes/class-settings-panel.php:2559
    25612561msgid "Display Favourite Listings Tab"
    25622562msgstr ""
    25632563
    25642564#: ../includes/classes/class-settings-panel.php:2564
    25652565msgid "\"Favourite Listings\" Tab Label"
    25662566msgstr ""
    25672567
    25682568#: ../includes/classes/class-settings-panel.php:2565, ../includes/model/ListingDashboard.php:381, ../views/front-end/user-dashboard.php:25
    25692569msgid "Favorite Listings"
    25702570msgstr ""
    25712571
    25722572#: ../includes/classes/class-settings-panel.php:2575
    25732573msgid "Display Announcements Tab"
    25742574msgstr ""
    25752575
    25762576#: ../includes/classes/class-settings-panel.php:2580
    25772577msgid "\"Announcement\" Tab Label"
    25782578msgstr ""
    25792579
    25802580#: ../includes/classes/class-settings-panel.php:2591
    25812581msgid "Display Submit Listing Button"
    25822582msgstr ""
    25832583
    25842584#: ../includes/classes/class-settings-panel.php:2596
    25852585msgid "Display \"Become An Author\" button"
    25862586msgstr ""
    25872587
    25882588#: ../includes/classes/class-settings-panel.php:2601
    25892589msgid "\"Become An Author\" button Label"
    25902590msgstr ""
    25912591
    25922592#: ../includes/classes/class-settings-panel.php:2602, ../includes/model/ListingDashboard.php:29
    25932593msgid "Become An Author"
    25942594msgstr ""
    25952595
    25962596#: ../includes/classes/class-settings-panel.php:2621
    25972597msgid "Display Alphabet Sorting"
    25982598msgstr ""
    25992599
    26002600#: ../includes/classes/class-settings-panel.php:2626
    26012601msgid "Display Image"
    26022602msgstr ""
    26032603
    26042604#: ../includes/classes/class-settings-panel.php:2631, ../templates/dashboard/tab-profile.php:45
    26052605msgid "Display Name"
    26062606msgstr ""
    26072607
    26082608#: ../includes/classes/class-settings-panel.php:2636
    26092609msgid "Display Roles"
    26102610msgstr ""
    26112611
    26122612#: ../includes/classes/class-settings-panel.php:2640
    26132613msgid "Select Role"
    26142614msgstr ""
    26152615
    26162616#: ../includes/classes/class-settings-panel.php:2653
    26172617msgid "Display Contact Info"
    26182618msgstr ""
    26192619
    26202620#: ../includes/classes/class-settings-panel.php:2658
    26212621msgid "Display Description"
    26222622msgstr ""
    26232623
    26242624#: ../includes/classes/class-settings-panel.php:2662
    26252625msgid "Description Word Limit"
    26262626msgstr ""
    26272627
    26282628#: ../includes/classes/class-settings-panel.php:2677
    26292629msgid "Display Social Info"
    26302630msgstr ""
    26312631
    26322632#: ../includes/classes/class-settings-panel.php:2682
    26332633msgid "Display All Listings Button"
    26342634msgstr ""
    26352635
    26362636#: ../includes/classes/class-settings-panel.php:2687
    26372637msgid "All Listings Button text"
    26382638msgstr ""
    26392639
    26402640#: ../includes/classes/class-settings-panel.php:2688
    26412641msgid "View All Listings"
    26422642msgstr ""
    26432643
    26442644#: ../includes/classes/class-settings-panel.php:2698
    26452645msgid "Paginate All Authors "
    26462646msgstr ""
    26472647
    26482648#: ../includes/classes/class-settings-panel.php:2702
    26492649msgid "Authors Per Page"
    26502650msgstr ""
    26512651
    26522652#: ../includes/classes/class-settings-panel.php:2712
    26532653msgid "Search Bar Title"
    26542654msgstr ""
    26552655
    26562656#: ../includes/classes/class-settings-panel.php:2713, ../includes/elementor/search-listing.php:73, ../includes/model/SearchForm.php:155
    26572657msgid "Search here"
    26582658msgstr ""
    26592659
    26602660#: ../includes/classes/class-settings-panel.php:2717
    26612661msgid "Search Bar Sub-title"
    26622662msgstr ""
    26632663
    26642664#: ../includes/classes/class-settings-panel.php:2718, ../includes/elementor/search-listing.php:80, ../includes/model/SearchForm.php:156
    26652665msgid "Find the best match of your interest"
    26662666msgstr ""
    26672667
    26682668#: ../includes/classes/class-settings-panel.php:2722
    26692669msgid "Search Bar Border"
    26702670msgstr ""
    26712671
    26722672#: ../includes/classes/class-settings-panel.php:2728
    26732673msgid "Display More Filters"
    26742674msgstr ""
    26752675
    26762676#: ../includes/classes/class-settings-panel.php:2733
    26772677msgid "Display More Filters Icon"
    26782678msgstr ""
    26792679
    26802680#: ../includes/classes/class-settings-panel.php:2744
    26812681msgid "Display Search Button"
    26822682msgstr ""
    26832683
    26842684#: ../includes/classes/class-settings-panel.php:2749
    26852685msgid "Display Search Button Icon"
    26862686msgstr ""
    26872687
    26882688#: ../includes/classes/class-settings-panel.php:2759, ../includes/classes/class-settings-panel.php:2931
    26892689msgid "Open Filter Fields"
    26902690msgstr ""
    26912691
    26922692#: ../includes/classes/class-settings-panel.php:2771, ../includes/classes/class-settings-panel.php:2943, ../includes/elementor/search-listing.php:150
    26932693msgid "Overlapping"
    26942694msgstr ""
    26952695
    26962696#: ../includes/classes/class-settings-panel.php:2775, ../includes/classes/class-settings-panel.php:2947, ../includes/elementor/search-listing.php:151
    26972697msgid "Sliding"
    26982698msgstr ""
    26992699
    27002700#: ../includes/classes/class-settings-panel.php:2779, ../includes/elementor/search-listing.php:152
    27012701msgid "Always Open"
    27022702msgstr ""
    27032703
    27042704#: ../includes/classes/class-settings-panel.php:2785, ../includes/classes/class-settings-panel.php:2967
    27052705msgid "Filters Button"
    27062706msgstr ""
    27072707
    27082708#: ../includes/classes/class-settings-panel.php:2823
    27092709msgid "Search Button Text"
    27102710msgstr ""
    27112711
    27122712#: ../includes/classes/class-settings-panel.php:2824, ../includes/classes/class-settings-panel.php:4678, ../includes/classes/class-setup-wizard.php:397, ../includes/elementor/search-listing.php:102, ../includes/model/SearchForm.php:99
    27132713msgid "Search Listing"
    27142714msgstr ""
    27152715
    27162716#: ../includes/classes/class-settings-panel.php:2834
    27172717msgid "More Filters Button Text"
    27182718msgstr ""
    27192719
    27202720#: ../includes/classes/class-settings-panel.php:2835, ../includes/elementor/search-listing.php:114, ../includes/model/SearchForm.php:101
    27212721msgid "More Filters"
    27222722msgstr ""
    27232723
    27242724#: ../includes/classes/class-settings-panel.php:2845
    27252725msgid "Reset Filters Button Text"
    27262726msgstr ""
    27272727
    27282728#: ../includes/classes/class-settings-panel.php:2856
    27292729msgid "Apply Filters Button Text"
    27302730msgstr ""
    27312731
    27322732#: ../includes/classes/class-settings-panel.php:2867
    27332733msgid "Display Popular Categories"
    27342734msgstr ""
    27352735
    27362736#: ../includes/classes/class-settings-panel.php:2873
    27372737msgid "Popular Categories Title"
    27382738msgstr ""
    27392739
    27402740#: ../includes/classes/class-settings-panel.php:2874, ../includes/model/SearchForm.php:200, ../includes/model/SearchForm.php:500
    27412741msgid "Browse by popular categories"
    27422742msgstr ""
    27432743
    27442744#: ../includes/classes/class-settings-panel.php:2883
    27452745msgid "Number of Popular Categories"
    27462746msgstr ""
    27472747
    27482748#: ../includes/classes/class-settings-panel.php:2897
    27492749msgid "Search Page Background"
    27502750msgstr ""
    27512751
    27522752#: ../includes/classes/class-settings-panel.php:3037
    27532753msgid "View As\" Dropdown"
    27542754msgstr ""
    27552755
    27562756#: ../includes/classes/class-settings-panel.php:3143, ../includes/classes/class-widget-categories.php:157, ../includes/classes/class-widget-locations.php:156, ../includes/classes/class-widget-tags.php:132
    27572757msgid "Order By"
    27582758msgstr ""
    27592759
    27602760#: ../includes/classes/class-settings-panel.php:3190
    27612761msgid "Paginate Search Result"
    27622762msgstr ""
    27632763
    27642764#: ../includes/classes/class-settings-panel.php:3194
    27652765msgid "Search Results Per Page"
    27662766msgstr ""
    27672767
    27682768#: ../includes/classes/class-settings-panel.php:3202, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2965
    27692769msgid "Radius Search Unit"
    27702770msgstr ""
    27712771
    27722772#: ../includes/classes/class-settings-panel.php:3208
    27732773msgid "Miles"
    27742774msgstr ""
    27752775
    27762776#: ../includes/classes/class-settings-panel.php:3212
    27772777msgid "Kilometers"
    27782778msgstr ""
    27792779
    27802780#: ../includes/classes/class-settings-panel.php:3219, ../includes/classes/class-settings-panel.php:4657
    27812781msgid "Upgrade/Regenerate Pages"
    27822782msgstr ""
    27832783
    27842784#: ../includes/classes/class-settings-panel.php:3224
    27852785msgid "Add Listing Page"
    27862786msgstr ""
    27872787
    27882788#: ../includes/classes/class-settings-panel.php:3226, ../includes/classes/class-settings-panel.php:3234, ../includes/classes/class-settings-panel.php:3242, ../includes/classes/class-settings-panel.php:3250, ../includes/classes/class-settings-panel.php:3258, ../includes/classes/class-settings-panel.php:3266, ../includes/classes/class-settings-panel.php:3274, ../includes/classes/class-settings-panel.php:3282, ../includes/classes/class-settings-panel.php:3290, ../includes/classes/class-settings-panel.php:3298, ../includes/classes/class-settings-panel.php:3306, ../includes/classes/class-settings-panel.php:3314, ../includes/classes/class-settings-panel.php:3322, ../includes/classes/class-settings-panel.php:3330, ../includes/classes/class-settings-panel.php:3338, ../includes/classes/class-settings-panel.php:3346
    27892789msgid "Following shortcode must be in the selected page %s"
    27902790msgstr ""
    27912791
    27922792#: ../includes/classes/class-settings-panel.php:3232
    27932793msgid "All Listings Page"
    27942794msgstr ""
    27952795
    27962796#: ../includes/classes/class-settings-panel.php:3240
    27972797msgid "Dashboard Page"
    27982798msgstr ""
    27992799
    28002800#: ../includes/classes/class-settings-panel.php:3248
    28012801msgid "User Profile Page"
    28022802msgstr ""
    28032803
    28042804#: ../includes/classes/class-settings-panel.php:3256
    28052805msgid "All Categories Page"
    28062806msgstr ""
    28072807
    28082808#: ../includes/classes/class-settings-panel.php:3264
    28092809msgid "Single Category Page"
    28102810msgstr ""
    28112811
    28122812#: ../includes/classes/class-settings-panel.php:3272
    28132813msgid "All Locations Page"
    28142814msgstr ""
    28152815
    28162816#: ../includes/classes/class-settings-panel.php:3280
    28172817msgid "Single Location Page"
    28182818msgstr ""
    28192819
    28202820#: ../includes/classes/class-settings-panel.php:3288
    28212821msgid "Single Tag Page"
    28222822msgstr ""
    28232823
    28242824#: ../includes/classes/class-settings-panel.php:3296
    28252825msgid "Registration Page"
    28262826msgstr ""
    28272827
    28282828#: ../includes/classes/class-settings-panel.php:3304
    28292829msgid "Login Page"
    28302830msgstr ""
    28312831
    28322832#: ../includes/classes/class-settings-panel.php:3312
    28332833msgid "Listing Search Page"
    28342834msgstr ""
    28352835
    28362836#: ../includes/classes/class-settings-panel.php:3320
    28372837msgid "Listing Search Result Page"
    28382838msgstr ""
    28392839
    28402840#: ../includes/classes/class-settings-panel.php:3328
    28412841msgid "Checkout Page"
    28422842msgstr ""
    28432843
    28442844#: ../includes/classes/class-settings-panel.php:3336
    28452845msgid "Payment/Order Receipt Page"
    28462846msgstr ""
    28472847
    28482848#: ../includes/classes/class-settings-panel.php:3344
    28492849msgid "Transaction Failure Page"
    28502850msgstr ""
    28512851
    28522852#: ../includes/classes/class-settings-panel.php:3352
    28532853msgid "Privacy Policy Page"
    28542854msgstr ""
    28552855
    28562856#: ../includes/classes/class-settings-panel.php:3359
    28572857msgid "Terms & Conditions Page"
    28582858msgstr ""
    28592859
    28602860#: ../includes/classes/class-settings-panel.php:3368
    28612861msgid "Enable SEO"
    28622862msgstr ""
    28632863
    28642864#: ../includes/classes/class-settings-panel.php:3373
    28652865msgid "Add Listing Page Meta Title"
    28662866msgstr ""
    28672867
    28682868#: ../includes/classes/class-settings-panel.php:3374, ../includes/classes/class-settings-panel.php:3385, ../includes/classes/class-settings-panel.php:3396, ../includes/classes/class-settings-panel.php:3407, ../includes/classes/class-settings-panel.php:3418, ../includes/classes/class-settings-panel.php:3441, ../includes/classes/class-settings-panel.php:3464, ../includes/classes/class-settings-panel.php:3475, ../includes/classes/class-settings-panel.php:3486, ../includes/classes/class-settings-panel.php:3512
    28692869msgid "Default the title of the page set as frontpage."
    28702870msgstr ""
    28712871
    28722872#: ../includes/classes/class-settings-panel.php:3379
    28732873msgid "Add Listing Page Meta Description"
    28742874msgstr ""
    28752875
    28762876#: ../includes/classes/class-settings-panel.php:3384
    28772877msgid "All Listing Page Meta Title"
    28782878msgstr ""
    28792879
    28802880#: ../includes/classes/class-settings-panel.php:3390
    28812881msgid "All Listing Page Meta Description"
    28822882msgstr ""
    28832883
    28842884#: ../includes/classes/class-settings-panel.php:3395
    28852885msgid "User Dashboard Page Meta Title"
    28862886msgstr ""
    28872887
    28882888#: ../includes/classes/class-settings-panel.php:3401
    28892889msgid "Dashboard Page Meta Description"
    28902890msgstr ""
    28912891
    28922892#: ../includes/classes/class-settings-panel.php:3406
    28932893msgid "Author Page Meta Title"
    28942894msgstr ""
    28952895
    28962896#: ../includes/classes/class-settings-panel.php:3412
    28972897msgid "Author Page Meta Description"
    28982898msgstr ""
    28992899
    29002900#: ../includes/classes/class-settings-panel.php:3417
    29012901msgid "Category Page Meta Title"
    29022902msgstr ""
    29032903
    29042904#: ../includes/classes/class-settings-panel.php:3423
    29052905msgid "Category Page Meta Description"
    29062906msgstr ""
    29072907
    29082908#: ../includes/classes/class-settings-panel.php:3428
    29092909msgid "Single Category Page Meta Title"
    29102910msgstr ""
    29112911
    29122912#: ../includes/classes/class-settings-panel.php:3429
    29132913msgid "Default the title of the category."
    29142914msgstr ""
    29152915
    29162916#: ../includes/classes/class-settings-panel.php:3434
    29172917msgid "Single Category Page Meta Description"
    29182918msgstr ""
    29192919
    29202920#: ../includes/classes/class-settings-panel.php:3435
    29212921msgid "Leave it blank to set category's description as meta description of this page"
    29222922msgstr ""
    29232923
    29242924#: ../includes/classes/class-settings-panel.php:3440
    29252925msgid "All Locations Page Meta Title"
    29262926msgstr ""
    29272927
    29282928#: ../includes/classes/class-settings-panel.php:3446
    29292929msgid "All Locations Page Meta Description"
    29302930msgstr ""
    29312931
    29322932#: ../includes/classes/class-settings-panel.php:3451
    29332933msgid "Single Location Page Meta Title"
    29342934msgstr ""
    29352935
    29362936#: ../includes/classes/class-settings-panel.php:3452
    29372937msgid "Default the title of the location."
    29382938msgstr ""
    29392939
    29402940#: ../includes/classes/class-settings-panel.php:3457
    29412941msgid "Single Locations Page Meta Description"
    29422942msgstr ""
    29432943
    29442944#: ../includes/classes/class-settings-panel.php:3458
    29452945msgid "Leave it blank to set location's description as meta description of this page"
    29462946msgstr ""
    29472947
    29482948#: ../includes/classes/class-settings-panel.php:3463
    29492949msgid "Registration Page Meta Title"
    29502950msgstr ""
    29512951
    29522952#: ../includes/classes/class-settings-panel.php:3469
    29532953msgid "Registration Page Meta Description"
    29542954msgstr ""
    29552955
    29562956#: ../includes/classes/class-settings-panel.php:3474
    29572957msgid "Login Page Meta Title"
    29582958msgstr ""
    29592959
    29602960#: ../includes/classes/class-settings-panel.php:3480
    29612961msgid "Login Page Meta Description"
    29622962msgstr ""
    29632963
    29642964#: ../includes/classes/class-settings-panel.php:3485
    29652965msgid "Search Home Page Meta Title"
    29662966msgstr ""
    29672967
    29682968#: ../includes/classes/class-settings-panel.php:3491
    29692969msgid "Search Home Page Meta Description"
    29702970msgstr ""
    29712971
    29722972#: ../includes/classes/class-settings-panel.php:3495
    29732973msgid "Search Result Page Meta Title"
    29742974msgstr ""
    29752975
    29762976#: ../includes/classes/class-settings-panel.php:3501
    29772977msgid "From User Search"
    29782978msgstr ""
    29792979
    29802980#: ../includes/classes/class-settings-panel.php:3505
    29812981msgid "Custom"
    29822982msgstr ""
    29832983
    29842984#: ../includes/classes/class-settings-panel.php:3511
    29852985msgid "Custom Meta Title"
    29862986msgstr ""
    29872987
    29882988#: ../includes/classes/class-settings-panel.php:3523
    29892989msgid "Search Result Page Meta Description"
    29902990msgstr ""
    29912991
    29922992#: ../includes/classes/class-settings-panel.php:3530
    29932993msgid "This currency settings lets you customize how you would like to display price amount in your website. However, you can accept currency in a different currency. Therefore, for accepting currency in a different currency, Go to Gateway Settings Tab."
    29942994msgstr ""
    29952995
    29962996#: ../includes/classes/class-settings-panel.php:3545
    29972997msgid "Allow Decimal"
    29982998msgstr ""
    29992999
    30003000#: ../includes/classes/class-settings-panel.php:3588, ../includes/classes/class-settings-panel.php:3676
    30013001msgid "Number of  Columns"
    30023002msgstr ""
    30033003
    30043004#: ../includes/classes/class-settings-panel.php:3589
    30053005msgid "Set how many columns to display on categories page."
    30063006msgstr ""
    30073007
    30083008#: ../includes/classes/class-settings-panel.php:3597
    30093009msgid "Sub-category Depth"
    30103010msgstr ""
    30113011
    30123012#: ../includes/classes/class-settings-panel.php:3598
    30133013msgid "Set how many sub-categories to display."
    30143014msgstr ""
    30153015
    30163016#: ../includes/classes/class-settings-panel.php:3612
    30173017msgid "Categories Order By"
    30183018msgstr ""
    30193019
    30203020#: ../includes/classes/class-settings-panel.php:3622, ../includes/classes/class-settings-panel.php:3710, ../includes/classes/class-widget-categories.php:160, ../includes/classes/class-widget-locations.php:159, ../includes/classes/class-widget-tags.php:135, ../includes/elementor/all-categories.php:92, ../includes/elementor/all-locations.php:92
    30213021msgid "Count"
    30223022msgstr ""
    30233023
    30243024#: ../includes/classes/class-settings-panel.php:3630, ../includes/classes/class-settings-panel.php:3718, ../includes/classes/class-widget-categories.php:162, ../includes/classes/class-widget-locations.php:161, ../includes/classes/class-widget-tags.php:137, ../includes/elementor/all-categories.php:94, ../includes/elementor/all-locations.php:94, ../views/admin-templates/post-types-manager/all-listing-types.php:101
    30253025msgid "Slug"
    30263026msgstr ""
    30273027
    30283028#: ../includes/classes/class-settings-panel.php:3635
    30293029msgid "Categories Sort By"
    30303030msgstr ""
    30313031
    30323032#: ../includes/classes/class-settings-panel.php:3650, ../includes/classes/class-settings-panel.php:3738
    30333033msgid "Display Listing Count"
    30343034msgstr ""
    30353035
    30363036#: ../includes/classes/class-settings-panel.php:3655
    30373037msgid "Hide Empty Categories"
    30383038msgstr ""
    30393039
    30403040#: ../includes/classes/class-settings-panel.php:3677
    30413041msgid "Set how many columns to display on locations page."
    30423042msgstr ""
    30433043
    30443044#: ../includes/classes/class-settings-panel.php:3685
    30453045msgid "Sub-location Depth"
    30463046msgstr ""
    30473047
    30483048#: ../includes/classes/class-settings-panel.php:3686
    30493049msgid "Set how many sub-locations to display."
    30503050msgstr ""
    30513051
    30523052#: ../includes/classes/class-settings-panel.php:3700
    30533053msgid "Locations Order By"
    30543054msgstr ""
    30553055
    30563056#: ../includes/classes/class-settings-panel.php:3723
    30573057msgid "Locations Sort By"
    30583058msgstr ""
    30593059
    30603060#: ../includes/classes/class-settings-panel.php:3743
    30613061msgid "Hide Empty Locations"
    30623062msgstr ""
    30633063
    30643064#: ../includes/classes/class-settings-panel.php:3749
    30653065msgid "New User Registration"
    30663066msgstr ""
    30673067
    30683068#: ../includes/classes/class-settings-panel.php:3755, ../includes/classes/class-settings-panel.php:3765, ../includes/classes/class-settings-panel.php:3787, ../includes/classes/class-settings-panel.php:3797, ../includes/classes/class-settings-panel.php:3824, ../includes/classes/class-settings-panel.php:3851, ../includes/classes/class-settings-panel.php:3878, ../includes/classes/class-settings-panel.php:3905, ../includes/classes/class-settings-panel.php:3932, ../includes/classes/class-settings-panel.php:4003, ../includes/classes/class-settings-panel.php:4008, ../includes/classes/class-settings-panel.php:4018, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:562, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:609, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:657, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:693, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:817, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:858, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:895, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:964, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1021, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1120, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1159, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1200, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1244, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1288, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1329, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1370, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1411, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1503, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1544, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1567, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1618, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1674, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1725, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1781, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1832, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1883, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1929, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1992, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2054, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2115, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2387, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2427, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2449, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2476, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2512, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2533, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2554, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2585, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2645, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2665, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2685, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2705, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2725, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2745, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2765, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2785, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2806, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2827, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2848, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2869, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2885, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2901, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2917, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2942, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2953, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4034, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4052, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4078, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4271
    30693069msgid "Label"
    30703070msgstr ""
    30713071
    30723072#: ../includes/classes/class-settings-panel.php:3756, ../includes/classes/class-settings-panel.php:4720, ../includes/classes/class-settings-panel.php:4818, ../includes/model/Account.php:92
    30733073msgid "Username"
    30743074msgstr ""
    30753075
    30763076#: ../includes/classes/class-settings-panel.php:3759, ../includes/classes/class-settings-panel.php:3791, ../includes/classes/class-settings-panel.php:3818, ../includes/classes/class-settings-panel.php:3845, ../includes/classes/class-settings-panel.php:3872, ../includes/classes/class-settings-panel.php:3899, ../includes/classes/class-settings-panel.php:3926, ../includes/classes/class-settings-panel.php:3953, ../includes/classes/class-settings-panel.php:3963, ../includes/classes/class-settings-panel.php:4012, ../includes/classes/class-settings-panel.php:4033, ../includes/classes/class-settings-panel.php:4060, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4024, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4042, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4257
    30773077msgid "Enable"
    30783078msgstr ""
    30793079
    30803080#: ../includes/classes/class-settings-panel.php:3766, ../includes/classes/class-settings-panel.php:4009, ../includes/classes/class-settings-panel.php:4727, ../includes/classes/class-settings-panel.php:4825, ../includes/model/Account.php:49, ../includes/model/Account.php:93
    30813081msgid "Password"
    30823082msgstr ""
    30833083
    30843084#: ../includes/classes/class-settings-panel.php:3775, ../includes/classes/class-settings-panel.php:3807, ../includes/classes/class-settings-panel.php:3834, ../includes/classes/class-settings-panel.php:3861, ../includes/classes/class-settings-panel.php:3888, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:572, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:667, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:827, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:868, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:937, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:989, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1051, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1091, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1130, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1169, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1210, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1254, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1298, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1339, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1380, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1416, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1451, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1513, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1585, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1641, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1692, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1748, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1799, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1850, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1896, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1959, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2022, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2084, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2141, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2507, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2528, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2549, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2655, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2675, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2695, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2715, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2735, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2755, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2775, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2795, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2816, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2837, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2858, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2874, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2890, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2906, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2922, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4029, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4047
    30853085msgid "Required"
    30863086msgstr ""
    30873087
    30883088#: ../includes/classes/class-settings-panel.php:3788, ../includes/classes/class-settings-panel.php:4734, ../includes/classes/class-settings-panel.php:4911, ../includes/model/Account.php:96, ../includes/review/class-builder-screen.php:109, ../includes/review/class-comment-form-renderer.php:224, ../templates/single-reviews.php:101, ../templates/single/section-contact_listings_owner.php:34, ../views/widgets/contact-listing-owner.php:17, ../views/admin-templates/listing-form/contact-info.php:203
    30893089msgid "Email"
    30903090msgstr ""
    30913091
    30923092#: ../includes/classes/class-settings-panel.php:3798, ../includes/classes/class-settings-panel.php:4741, ../includes/model/Account.php:98, ../includes/review/class-builder-screen.php:134, ../includes/review/class-comment-form-renderer.php:238, ../templates/single-reviews.php:116, ../templates/dashboard/tab-profile.php:105, ../views/front-end/user-dashboard.php:521, ../views/admin-templates/listing-form/contact-info.php:212
    30933093msgid "Website"
    30943094msgstr ""
    30953095
    30963096#: ../includes/classes/class-settings-panel.php:3825, ../includes/classes/class-settings-panel.php:4748, ../includes/model/Account.php:101, ../templates/dashboard/tab-profile.php:65, ../views/front-end/user-dashboard.php:481
    30973097msgid "First Name"
    30983098msgstr ""
    30993099
    31003100#: ../includes/classes/class-settings-panel.php:3852, ../includes/classes/class-settings-panel.php:4755, ../includes/model/Account.php:104, ../templates/dashboard/tab-profile.php:73, ../views/front-end/user-dashboard.php:489
    31013101msgid "Last Name"
    31023102msgstr ""
    31033103
    31043104#: ../includes/classes/class-settings-panel.php:3879, ../includes/model/Account.php:107
    31053105msgid "About/bio"
    31063106msgstr ""
    31073107
    31083108#: ../includes/classes/class-settings-panel.php:3906, ../includes/model/Account.php:118
    31093109msgid "I agree to the"
    31103110msgstr ""
    31113111
    31123112#: ../includes/classes/class-settings-panel.php:3916, ../includes/classes/class-settings-panel.php:3943, ../includes/classes/class-settings-panel.php:3980, ../includes/classes/class-settings-panel.php:4050
    31133113msgid "Linking Text"
    31143114msgstr ""
    31153115
    31163116#: ../includes/classes/class-settings-panel.php:3917, ../includes/model/Account.php:119
    31173117msgid "Privacy & Policy"
    31183118msgstr ""
    31193119
    31203120#: ../includes/classes/class-settings-panel.php:3933, ../includes/model/Account.php:114
    31213121msgid "I agree with all"
    31223122msgstr ""
    31233123
    31243124#: ../includes/classes/class-settings-panel.php:3944, ../includes/model/Account.php:115
    31253125msgid "terms & conditions"
    31263126msgstr ""
    31273127
    31283128#: ../includes/classes/class-settings-panel.php:3959, ../includes/classes/class-settings-panel.php:3969, ../includes/classes/class-settings-panel.php:4029, ../includes/classes/class-settings-panel.php:4039, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3410
    31293129msgid "Text"
    31303130msgstr ""
    31313131
    31323132#: ../includes/classes/class-settings-panel.php:3970, ../includes/model/Account.php:111
    31333133msgid "Already have an account? Please login"
    31343134msgstr ""
    31353135
    31363136#: ../includes/classes/class-settings-panel.php:3990
    31373137msgid "Auto Login after Registration"
    31383138msgstr ""
    31393139
    31403140#: ../includes/classes/class-settings-panel.php:3995
    31413141msgid "Redirection after Registration"
    31423142msgstr ""
    31433143
    31443144#: ../includes/classes/class-settings-panel.php:4004, ../includes/model/Account.php:48
    31453145msgid "Username or Email Address"
    31463146msgstr ""
    31473147
    31483148#: ../includes/classes/class-settings-panel.php:4019, ../includes/model/Account.php:51
    31493149msgid "Remember Me"
    31503150msgstr ""
    31513151
    31523152#: ../includes/classes/class-settings-panel.php:4030, ../includes/model/Account.php:52
    31533153msgid "Log In"
    31543154msgstr ""
    31553155
    31563156#: ../includes/classes/class-settings-panel.php:4040, ../includes/model/Account.php:59
    31573157msgid "Don't have an account?"
    31583158msgstr ""
    31593159
    31603160#: ../includes/classes/class-settings-panel.php:4067, ../includes/classes/class-settings-panel.php:4853, ../includes/model/Account.php:54
    31613161msgid "Recover Password"
    31623162msgstr ""
    31633163
    31643164#: ../includes/classes/class-settings-panel.php:4078, ../includes/model/Account.php:55
    31653165msgid "Lost your password? Please enter your email address. You will receive a link to create a new password via email."
    31663166msgstr ""
    31673167
    31683168#: ../includes/classes/class-settings-panel.php:4088, ../includes/review/class-builder-screen.php:107
    31693169msgid "Email Label"
    31703170msgstr ""
    31713171
    31723172#: ../includes/classes/class-settings-panel.php:4089
    31733173msgid "E-mail"
    31743174msgstr ""
    31753175
    31763176#: ../includes/classes/class-settings-panel.php:4099
    31773177msgid "Username or Email Placeholder"
    31783178msgstr ""
    31793179
    31803180#: ../includes/classes/class-settings-panel.php:4100, ../includes/model/Account.php:57
    31813181msgid "eg. mail@example.com"
    31823182msgstr ""
    31833183
    31843184#: ../includes/classes/class-settings-panel.php:4110
    31853185msgid "Button Text"
    31863186msgstr ""
    31873187
    31883188#: ../includes/classes/class-settings-panel.php:4111, ../includes/model/Account.php:58
    31893189msgid "Get New Password"
    31903190msgstr ""
    31913191
    31923192#: ../includes/classes/class-settings-panel.php:4120
    31933193msgid "Redirection after Login"
    31943194msgstr ""
    31953195
    31963196#: ../includes/classes/class-settings-panel.php:4127
    31973197msgid "Disable all Email Notifications"
    31983198msgstr ""
    31993199
    32003200#: ../includes/classes/class-settings-panel.php:4133
    32013201msgid "Email's \"From Name\""
    32023202msgstr ""
    32033203
    32043204#: ../includes/classes/class-settings-panel.php:4134
    32053205msgid "The name should be used as From Name in the email generated by the plugin."
    32063206msgstr ""
    32073207
    32083208#: ../includes/classes/class-settings-panel.php:4145
    32093209msgid "Email's \"From Email\""
    32103210msgstr ""
    32113211
    32123212#: ../includes/classes/class-settings-panel.php:4146
    32133213msgid "The email should be used as From Email in the email generated by the plugin."
    32143214msgstr ""
    32153215
    32163216#: ../includes/classes/class-settings-panel.php:4157
    32173217msgid "Admin Email Address(es)"
    32183218msgstr ""
    32193219
    32203220#: ../includes/classes/class-settings-panel.php:4158
    32213221msgid "Enter the one or more admin email addresses (comma separated) to send notification. Eg. admin1@example.com, admin2@example.com etc"
    32223222msgstr ""
    32233223
    32243224#: ../includes/classes/class-settings-panel.php:4168
    32253225msgid "Notify the Admin when Any of the Selected Event Happens"
    32263226msgstr ""
    32273227
    32283228#: ../includes/classes/class-settings-panel.php:4172
    32293229msgid "Select the situation when you would like to send an email to the Admin"
    32303230msgstr ""
    32313231
    32323232#: ../includes/classes/class-settings-panel.php:4181
    32333233msgid "Notify the Listing Owner when Any of the Selected Event Happens"
    32343234msgstr ""
    32353235
    32363236#: ../includes/classes/class-settings-panel.php:4185
    32373237msgid "Select the situation when you would like to send an email to the Listing"
    32383238msgstr ""
    32393239
    32403240#: ../includes/classes/class-settings-panel.php:4195
    32413241msgid "Email Header"
    32423242msgstr ""
    32433243
    32443244#: ../includes/classes/class-settings-panel.php:4201
    32453245msgid "Email Header Color"
    32463246msgstr ""
    32473247
    32483248#: ../includes/classes/class-settings-panel.php:4212, ../includes/classes/class-settings-panel.php:4232, ../includes/classes/class-settings-panel.php:4250, ../includes/classes/class-settings-panel.php:4268, ../includes/classes/class-settings-panel.php:4286, ../includes/classes/class-settings-panel.php:4304, ../includes/classes/class-settings-panel.php:4323, ../includes/classes/class-settings-panel.php:4344, ../includes/classes/class-settings-panel.php:4363, ../includes/classes/class-settings-panel.php:4391, ../includes/classes/class-settings-panel.php:4422, ../includes/classes/class-settings-panel.php:4450, ../includes/classes/class-settings-panel.php:4474
    32493249msgid "Email Subject"
    32503250msgstr ""
    32513251
    32523252#: ../includes/classes/class-settings-panel.php:4213
    32533253msgid "Edit the subject for sending to the user when a listing is submitted/received."
    32543254msgstr ""
    32553255
    32563256#: ../includes/classes/class-settings-panel.php:4214
    32573257msgid "[==SITE_NAME==] : Listing \"==LISTING_TITLE==\" Received"
    32583258msgstr ""
    32593259
    32603260#: ../includes/classes/class-settings-panel.php:4218, ../includes/classes/class-settings-panel.php:4238, ../includes/classes/class-settings-panel.php:4256, ../includes/classes/class-settings-panel.php:4274, ../includes/classes/class-settings-panel.php:4292, ../includes/classes/class-settings-panel.php:4310, ../includes/classes/class-settings-panel.php:4329, ../includes/classes/class-settings-panel.php:4350, ../includes/classes/class-settings-panel.php:4369, ../includes/classes/class-settings-panel.php:4397, ../includes/classes/class-settings-panel.php:4428, ../includes/classes/class-settings-panel.php:4456, ../includes/classes/class-settings-panel.php:4480
    32613261msgid "Email Body"
    32623262msgstr ""
    32633263
    32643264#: ../includes/classes/class-settings-panel.php:4219
    32653265msgid "Edit the email template for sending to the user when a listing is submitted/received. HTML content is allowed too."
    32663266msgstr ""
    32673267
    32683268#: ../includes/classes/class-settings-panel.php:4220
    32693269msgid ""
    32703270"\n"
    32713271"                    Dear ==NAME==,\n"
    32723272"\n"
    32733273"                    This email is to notify you that your listing '==LISTING_TITLE==' has been received and it is under review now.\n"
    32743274"                    It may take up to 24 hours to complete the review.\n"
    32753275"\n"
    32763276"                    Thanks,\n"
    32773277"                    The Administrator of ==SITE_NAME==\n"
    32783278"                    "
    32793279msgstr ""
    32803280
    32813281#: ../includes/classes/class-settings-panel.php:4233
    32823282msgid "Edit the subject for sending to the user when a listing is approved/published."
    32833283msgstr ""
    32843284
    32853285#: ../includes/classes/class-settings-panel.php:4234
    32863286msgid "[==SITE_NAME==] : Listing \"==LISTING_TITLE==\" published"
    32873287msgstr ""
    32883288
    32893289#: ../includes/classes/class-settings-panel.php:4239
    32903290msgid "Edit the email template for sending to the user when a listing is approved/published. HTML content is allowed too."
    32913291msgstr ""
    32923292
    32933293#: ../includes/classes/class-settings-panel.php:4240
    32943294msgid ""
    32953295"\n"
    32963296"                    Dear ==NAME==,\n"
    32973297"                    Congratulations! Your listing '==LISTING_TITLE==' has been approved/published. Now it is publicly available at ==LISTING_URL==\n"
    32983298"\n"
    32993299"                    Thanks,\n"
    33003300"                    The Administrator of ==SITE_NAME==\n"
    33013301"                    "
    33023302msgstr ""
    33033303
    33043304#: ../includes/classes/class-settings-panel.php:4251
    33053305msgid "Edit the subject for sending to the user when a listing is edited."
    33063306msgstr ""
    33073307
    33083308#: ../includes/classes/class-settings-panel.php:4252
    33093309msgid "[==SITE_NAME==] : Listing \"==LISTING_TITLE==\" Edited"
    33103310msgstr ""
    33113311
    33123312#: ../includes/classes/class-settings-panel.php:4257
    33133313msgid "Edit the email template for sending to the user when a listing is edited. HTML content is allowed too."
    33143314msgstr ""
    33153315
    33163316#: ../includes/classes/class-settings-panel.php:4258
    33173317msgid ""
    33183318"\n"
    33193319"                    Dear ==NAME==,\n"
    33203320"                    Congratulations! Your listing '==LISTING_TITLE==' has been edited. It is publicly available at ==LISTING_URL==\n"
    33213321"\n"
    33223322"                    Thanks,\n"
    33233323"                    The Administrator of ==SITE_NAME==\n"
    33243324"                    "
    33253325msgstr ""
    33263326
    33273327#: ../includes/classes/class-settings-panel.php:4269
    33283328msgid "Edit the subject for sending to the user when a listing is ABOUT TO EXPIRE."
    33293329msgstr ""
    33303330
    33313331#: ../includes/classes/class-settings-panel.php:4270
    33323332msgid "[==SITE_NAME==] : Your Listing \"==LISTING_TITLE==\" is about to expire."
    33333333msgstr ""
    33343334
    33353335#: ../includes/classes/class-settings-panel.php:4275
    33363336msgid "Edit the email template for sending to the user when a listing is ABOUT TO EXPIRE. HTML content is allowed too."
    33373337msgstr ""
    33383338
    33393339#: ../includes/classes/class-settings-panel.php:4276
    33403340msgid ""
    33413341"\n"
    33423342"                    Dear ==NAME==,\n"
    33433343"                    Your listing '==LISTING_TITLE==' is about to expire. It will expire on ==EXPIRATION_DATE==. You can renew it at ==RENEWAL_LINK==\n"
    33443344"\n"
    33453345"                    Thanks,\n"
    33463346"                    The Administrator of ==SITE_NAME==\n"
    33473347"                    "
    33483348msgstr ""
    33493349
    33503350#: ../includes/classes/class-settings-panel.php:4287
    33513351msgid "Edit the subject for sending to the user when a Listing HAS EXPIRED."
    33523352msgstr ""
    33533353
    33543354#: ../includes/classes/class-settings-panel.php:4288
    33553355msgid "[==SITE_NAME==] : Your Listing '==LISTING_TITLE==' has expired."
    33563356msgstr ""
    33573357
    33583358#: ../includes/classes/class-settings-panel.php:4293
    33593359msgid "Edit the email template for sending to the user when a Listing HAS EXPIRED. HTML content is allowed too."
    33603360msgstr ""
    33613361
    33623362#: ../includes/classes/class-settings-panel.php:4294
    33633363msgid ""
    33643364"\n"
    33653365"                    Dear ==NAME==,\n"
    33663366"                    Your listing '==LISTING_TITLE==' has expired on ==EXPIRATION_DATE==. You can renew it at ==RENEWAL_LINK==\n"
    33673367"\n"
    33683368"                    Thanks,\n"
    33693369"                    The Administrator of ==SITE_NAME==\n"
    33703370"                    "
    33713371msgstr ""
    33723372
    33733373#: ../includes/classes/class-settings-panel.php:4305
    33743374msgid "Edit the subject for sending to the user to renew his/her listings."
    33753375msgstr ""
    33763376
    33773377#: ../includes/classes/class-settings-panel.php:4306
    33783378msgid "[==SITE_NAME==] : A Reminder to Renew your listing \"==LISTING_TITLE==\""
    33793379msgstr ""
    33803380
    33813381#: ../includes/classes/class-settings-panel.php:4311
    33823382msgid "Edit the email template for sending to the user to renew his/her listings. HTML content is allowed too."
    33833383msgstr ""
    33843384
    33853385#: ../includes/classes/class-settings-panel.php:4312
    33863386msgid ""
    33873387"\n"
    33883388"                    Dear ==NAME==,\n"
    33893389"\n"
    33903390"                    We have noticed that you might have forgot to renew your listing '==LISTING_TITLE==' at ==SITE_LINK==. We would like to remind you that it expired on ==EXPIRATION_DATE==. But please don't worry.  You can still renew it by clicking this link: ==RENEWAL_LINK==.\n"
    33913391"\n"
    33923392"                    Thanks,\n"
    33933393"                    The Administrator of ==SITE_NAME==\n"
    33943394"                    "
    33953395msgstr ""
    33963396
    33973397#: ../includes/classes/class-settings-panel.php:4324
    33983398msgid "Edit the subject for sending to the user his/her listings has renewed successfully."
    33993399msgstr ""
    34003400
    34013401#: ../includes/classes/class-settings-panel.php:4325
    34023402msgid "[==SITE_NAME==] : Your Listing \"==LISTING_TITLE==\" Has Renewed"
    34033403msgstr ""
    34043404
    34053405#: ../includes/classes/class-settings-panel.php:4330
    34063406msgid "Edit the email template for sending to the user his/her listings has renewed successfully. HTML content is allowed too."
    34073407msgstr ""
    34083408
    34093409#: ../includes/classes/class-settings-panel.php:4331
    34103410msgid ""
    34113411"\n"
    34123412"                    Dear ==NAME==,\n"
    34133413"\n"
    34143414"                    Congratulations!\n"
    34153415"                    Your listing '==LISTING_LINK==' with the ID #==LISTING_ID== has been renewed successfully at ==SITE_LINK==.\n"
    34163416"                    Your listing is now publicly viewable at ==LISTING_URL==\n"
    34173417"\n"
    34183418"                    Thanks,\n"
    34193419"                    The Administrator of ==SITE_NAME==\n"
    34203420"                    "
    34213421msgstr ""
    34223422
    34233423#: ../includes/classes/class-settings-panel.php:4345
    34243424msgid "Edit the subject for sending to the user when his/her listings has deleted successfully."
    34253425msgstr ""
    34263426
    34273427#: ../includes/classes/class-settings-panel.php:4346
    34283428msgid "[==SITE_NAME==] : Your Listing \"==LISTING_TITLE==\" Has Been Deleted"
    34293429msgstr ""
    34303430
    34313431#: ../includes/classes/class-settings-panel.php:4351
    34323432msgid "Edit the email template for sending to the user when his/her listings has deleted successfully. HTML content is allowed too."
    34333433msgstr ""
    34343434
    34353435#: ../includes/classes/class-settings-panel.php:4352
    34363436msgid ""
    34373437"\n"
    34383438"                    Dear ==NAME==,\n"
    34393439"\n"
    34403440"                    Your listing '==LISTING_LINK==' with the ID #==LISTING_ID== has been deleted successfully at ==SITE_LINK==.\n"
    34413441"\n"
    34423442"                    Thanks,\n"
    34433443"                    The Administrator of ==SITE_NAME==\n"
    34443444"                    "
    34453445msgstr ""
    34463446
    34473447#: ../includes/classes/class-settings-panel.php:4364
    34483448msgid "Edit the subject for sending to the user when an order is created."
    34493449msgstr ""
    34503450
    34513451#: ../includes/classes/class-settings-panel.php:4365, ../includes/classes/class-settings-panel.php:4393
    34523452msgid "[==SITE_NAME==] : Your Order (#==ORDER_ID==) Received."
    34533453msgstr ""
    34543454
    34553455#: ../includes/classes/class-settings-panel.php:4370
    34563456msgid "Edit the email template for sending to the user when an order is created."
    34573457msgstr ""
    34583458
    34593459#: ../includes/classes/class-settings-panel.php:4371
    34603460msgid ""
    34613461"\n"
    34623462"                    Dear ==NAME==,\n"
    34633463"\n"
    34643464"                    Thank you very much for your order.\n"
    34653465"                    This email is to notify you that your order (#==ORDER_ID==) has been received. You can check your order details and progress by clicking the link below.\n"
    34663466"\n"
    34673467"                    Order Details Page: ==ORDER_RECEIPT_URL==\n"
    34683468"\n"
    34693469"                    Your order summery:\n"
    34703470"                    ==ORDER_DETAILS==\n"
    34713471"\n"
    34723472"\n"
    34733473"                    NB. You need to be logged in your account to access the order details page.\n"
    34743474"\n"
    34753475"                    Thanks,\n"
    34763476"                    The Administrator of ==SITE_NAME==\n"
    34773477"                    "
    34783478msgstr ""
    34793479
    34803480#: ../includes/classes/class-settings-panel.php:4392
    34813481msgid "Edit the subject for sending to the user when an order is created using offline payment like bank transfer."
    34823482msgstr ""
    34833483
    34843484#: ../includes/classes/class-settings-panel.php:4398
    34853485msgid "Edit the email template for sending to the user when an order is created using offline payment like bank transfer."
    34863486msgstr ""
    34873487
    34883488#: ../includes/classes/class-settings-panel.php:4399
    34893489msgid ""
    34903490"\n"
    34913491"                    Dear ==NAME==,\n"
    34923492"\n"
    34933493"                    Thank you very much for your order.\n"
    34943494"                    This email is to notify you that your order (#==ORDER_ID==) has been received.\n"
    34953495"\n"
    34963496"                    %s\n"
    34973497"\n"
    34983498"                    You can check your order details and progress by clicking the link below.\n"
    34993499"                    Order Details Page: ==ORDER_RECEIPT_URL==\n"
    35003500"\n"
    35013501"                    Your order summery:\n"
    35023502"                    ==ORDER_DETAILS==\n"
    35033503"\n"
    35043504"\n"
    35053505"                    NB. You need to be logged in your account to access the order details page.\n"
    35063506"\n"
    35073507"                    Thanks,\n"
    35083508"                    The Administrator of ==SITE_NAME==\n"
    35093509"                    "
    35103510msgstr ""
    35113511
    35123512#: ../includes/classes/class-settings-panel.php:4423
    35133513msgid "Edit the subject for sending to the user when an order is completed"
    35143514msgstr ""
    35153515
    35163516#: ../includes/classes/class-settings-panel.php:4424
    35173517msgid "[==SITE_NAME==] : Congratulation! Your Order #==ORDER_ID== Completed."
    35183518msgstr ""
    35193519
    35203520#: ../includes/classes/class-settings-panel.php:4429
    35213521msgid "Edit the email template for sending to the user when an order is completed."
    35223522msgstr ""
    35233523
    35243524#: ../includes/classes/class-settings-panel.php:4430
    35253525msgid ""
    35263526"\n"
    35273527"                    Dear ==NAME==,\n"
    35283528"\n"
    35293529"                    Congratulation! This email is to notify you that your order #==ORDER_ID== has been completed.\n"
    35303530"\n"
    35313531"                    You can check your order details by clicking the link below.\n"
    35323532"                    Order Details Page: ==ORDER_RECEIPT_URL==\n"
    35333533"\n"
    35343534"                    Your order summery:\n"
    35353535"                    ==ORDER_DETAILS==\n"
    35363536"\n"
    35373537"\n"
    35383538"                    NB. You need to be logged in your account to access the order details page.\n"
    35393539"\n"
    35403540"                    Thanks,\n"
    35413541"                    The Administrator of ==SITE_NAME==\n"
    35423542"                    "
    35433543msgstr ""
    35443544
    35453545#: ../includes/classes/class-settings-panel.php:4451, ../includes/classes/class-settings-panel.php:4475
    35463546msgid "Edit the subject for sending to the user when listing contact message send."
    35473547msgstr ""
    35483548
    35493549#: ../includes/classes/class-settings-panel.php:4452
    35503550msgid "==SITE_NAME== Contact via ==LISTING_TITLE=="
    35513551msgstr ""
    35523552
    35533553#: ../includes/classes/class-settings-panel.php:4457
    35543554msgid "Edit the email template for sending to the user when when listing contact message send"
    35553555msgstr ""
    35563556
    35573557#: ../includes/classes/class-settings-panel.php:4458
    35583558msgid ""
    35593559"\n"
    35603560"                    Dear ==NAME==,\n"
    35613561"\n"
    35623562"                    You have received a message from your listing at ==LISTING_URL==.\n"
    35633563"\n"
    35643564"                    Name: ==SENDER_NAME==\n"
    35653565"                    Email: ==SENDER_EMAIL==\n"
    35663566"                    Message: ==MESSAGE==\n"
    35673567"                    Time: ==NOW==\n"
    35683568"\n"
    35693569"                    Thanks,\n"
    35703570"                    The Administrator of ==SITE_NAME==\n"
    35713571"                    "
    35723572msgstr ""
    35733573
    35743574#: ../includes/classes/class-settings-panel.php:4481
    35753575msgid "Note: Use ==USER_PASSWORD== to show a temporary password when password field is disable from registration page"
    35763576msgstr ""
    35773577
    35783578#: ../includes/classes/class-settings-panel.php:4482
    35793579msgid ""
    35803580"\n"
    35813581"                    Hi ==USERNAME==,\n"
    35823582"\n"
    35833583"                    Thanks for creating an account on <b>==SITE_NAME==</b>. Your username is <b>==USERNAME==</b>. You can access your account area to view listings, change your password, and more at: ==DASHBOARD_LINK==\n"
    35843584"\n"
    35853585"                    We look forward to seeing you soon"
    35863586msgstr ""
    35873587
    35883588#: ../includes/classes/class-settings-panel.php:4492
    35893589msgid "Maximum Width (px)"
    35903590msgstr ""
    35913591
    35923592#: ../includes/classes/class-settings-panel.php:4497, ../includes/classes/class-settings-panel.php:4517
    35933593msgid "Top"
    35943594msgstr ""
    35953595
    35963596#: ../includes/classes/class-settings-panel.php:4502, ../includes/classes/class-settings-panel.php:4522
    35973597msgid "Bottom"
    35983598msgstr ""
    35993599
    36003600#: ../includes/classes/class-settings-panel.php:4507, ../includes/classes/class-settings-panel.php:4527, ../includes/elementor/search-listing.php:50, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3400
    36013601msgid "Left"
    36023602msgstr ""
    36033603
    36043604#: ../includes/classes/class-settings-panel.php:4512, ../includes/classes/class-settings-panel.php:4532
    36053605msgid "right"
    36063606msgstr ""
    36073607
    36083608#: ../includes/classes/class-settings-panel.php:4545, ../templates/dashboard/tab-my-listings.php:68, ../views/admin-templates/post-types-manager/all-listing-types.php:102
    36093609msgid "Listings"
    36103610msgstr ""
    36113611
    36123612#: ../includes/classes/class-settings-panel.php:4549, ../includes/classes/class-settings-panel.php:4930, ../includes/elementor/add-listing.php:36, ../includes/elementor/all-categories.php:45, ../includes/elementor/all-listing.php:63, ../includes/elementor/all-locations.php:45, ../includes/elementor/author-profile.php:25, ../includes/elementor/category.php:25, ../includes/elementor/checkout.php:25, ../includes/elementor/custom-registration.php:25, ../includes/elementor/location.php:25, ../includes/elementor/payment-receipt.php:26, ../includes/elementor/search-listing.php:36, ../includes/elementor/search-result.php:25, ../includes/elementor/tag.php:25, ../includes/elementor/transaction-failure.php:26, ../includes/elementor/user-dashboard.php:25, ../includes/elementor/user-login.php:25
    36133613msgid "General"
    36143614msgstr ""
    36153615
    36163616#: ../includes/classes/class-settings-panel.php:4573
    36173617msgid "Single Listings"
    36183618msgstr ""
    36193619
    36203620#: ../includes/classes/class-settings-panel.php:4584
    36213621msgid "Location & Category"
    36223622msgstr ""
    36233623
    36243624#: ../includes/classes/class-settings-panel.php:4588
    36253625msgid "Categories Page Settings"
    36263626msgstr ""
    36273627
    36283628#: ../includes/classes/class-settings-panel.php:4594
    36293629msgid "Locations Page Settings"
    36303630msgstr ""
    36313631
    36323632#: ../includes/classes/class-settings-panel.php:4617
    36333633msgid "Listing Currency"
    36343634msgstr ""
    36353635
    36363636#: ../includes/classes/class-settings-panel.php:4640
    36373637msgid "Map Info Window Settings"
    36383638msgstr ""
    36393639
    36403640#: ../includes/classes/class-settings-panel.php:4653
    36413641msgid "Page Setup"
    36423642msgstr ""
    36433643
    36443644#: ../includes/classes/class-settings-panel.php:4664
    36453645msgid "Page, Links & View Settings"
    36463646msgstr ""
    36473647
    36483648#: ../includes/classes/class-settings-panel.php:4674, ../includes/classes/class-widget-search.php:76
    36493649msgid "Search"
    36503650msgstr ""
    36513651
    36523652#: ../includes/classes/class-settings-panel.php:4709
    36533653msgid "Registration Form"
    36543654msgstr ""
    36553655
    36563656#: ../includes/classes/class-settings-panel.php:4762
    36573657msgid "About/Bio"
    36583658msgstr ""
    36593659
    36603660#: ../includes/classes/class-settings-panel.php:4769
    36613661msgid "User Type Registration"
    36623662msgstr ""
    36633663
    36643664#: ../includes/classes/class-settings-panel.php:4783
    36653665msgid "Terms Conditions"
    36663666msgstr ""
    36673667
    36683668#: ../includes/classes/class-settings-panel.php:4791
    36693669msgid "Sign Up Button"
    36703670msgstr ""
    36713671
    36723672#: ../includes/classes/class-settings-panel.php:4798
    36733673msgid "Login Message"
    36743674msgstr ""
    36753675
    36763676#: ../includes/classes/class-settings-panel.php:4805
    36773677msgid ""
    36783678msgstr ""
    36793679
    36803680#: ../includes/classes/class-settings-panel.php:4814, ../includes/classes/class-widget-login-form.php:57
    36813681msgid "Login Form"
    36823682msgstr ""
    36833683
    36843684#: ../includes/classes/class-settings-panel.php:4832
    36853685msgid "Remember Login Information"
    36863686msgstr ""
    36873687
    36883688#: ../includes/classes/class-settings-panel.php:4839
    36893689msgid "Login Button"
    36903690msgstr ""
    36913691
    36923692#: ../includes/classes/class-settings-panel.php:4846
    36933693msgid "Sign Up Message"
    36943694msgstr ""
    36953695
    36963696#: ../includes/classes/class-settings-panel.php:4879
    36973697msgid "Author Dashboard"
    36983698msgstr ""
    36993699
    37003700#: ../includes/classes/class-settings-panel.php:4895, ../includes/classes/class-settings-panel.php:4899, ../includes/classes/class-setup-wizard.php:429, ../includes/classes/class-setup-wizard.php:490
    37013701msgid "All Authors"
    37023702msgstr ""
    37033703
    37043704#: ../includes/classes/class-settings-panel.php:4915
    37053705msgid "Email General"
    37063706msgstr ""
    37073707
    37083708#: ../includes/classes/class-settings-panel.php:4926
    37093709msgid "Email Templates"
    37103710msgstr ""
    37113711
    37123712#: ../includes/classes/class-settings-panel.php:4937
    37133713msgid "For New Listing"
    37143714msgstr ""
    37153715
    37163716#: ../includes/classes/class-settings-panel.php:4944
    37173717msgid "For Approved/Published Listings"
    37183718msgstr ""
    37193719
    37203720#: ../includes/classes/class-settings-panel.php:4951
    37213721msgid "For Edited Listings"
    37223722msgstr ""
    37233723
    37243724#: ../includes/classes/class-settings-panel.php:4958
    37253725msgid "For About To Expire Listings"
    37263726msgstr ""
    37273727
    37283728#: ../includes/classes/class-settings-panel.php:4965
    37293729msgid "For Expired Listings"
    37303730msgstr ""
    37313731
    37323732#: ../includes/classes/class-settings-panel.php:4972
    37333733msgid "For Renewal Listings (Remind To Renew)"
    37343734msgstr ""
    37353735
    37363736#: ../includes/classes/class-settings-panel.php:4979
    37373737msgid "For Renewed Listings (After Renewed)"
    37383738msgstr ""
    37393739
    37403740#: ../includes/classes/class-settings-panel.php:4986
    37413741msgid "For Deleted/Trashed Listings"
    37423742msgstr ""
    37433743
    37443744#: ../includes/classes/class-settings-panel.php:4993
    37453745msgid "For New Order (Created)"
    37463746msgstr ""
    37473747
    37483748#: ../includes/classes/class-settings-panel.php:5000
    37493749msgid "For New Order (Created Using Offline Bank Transfer)"
    37503750msgstr ""
    37513751
    37523752#: ../includes/classes/class-settings-panel.php:5007
    37533753msgid "For Completed Order"
    37543754msgstr ""
    37553755
    37563756#: ../includes/classes/class-settings-panel.php:5014
    37573757msgid "For Listing Contact Email"
    37583758msgstr ""
    37593759
    37603760#: ../includes/classes/class-settings-panel.php:5021
    37613761msgid "Registration Confirmation"
    37623762msgstr ""
    37633763
    37643764#: ../includes/classes/class-settings-panel.php:5033, ../includes/gateways/class-gateway.php:86
    37653765msgid "Monetization"
    37663766msgstr ""
    37673767
    37683768#: ../includes/classes/class-settings-panel.php:5037
    37693769msgid "General Settings"
    37703770msgstr ""
    37713771
    37723772#: ../includes/classes/class-settings-panel.php:5041, ../includes/gateways/class-gateway.php:103
    37733773msgid "Monetization Settings"
    37743774msgstr ""
    37753775
    37763776#: ../includes/classes/class-settings-panel.php:5046, ../includes/gateways/class-gateway.php:122
    37773777msgid "Monetize by Listing Plans"
    37783778msgstr ""
    37793779
    37803780#: ../includes/classes/class-settings-panel.php:5053
    37813781msgid "Featured Listing"
    37823782msgstr ""
    37833783
    37843784#: ../includes/classes/class-settings-panel.php:5068, ../includes/gateways/class-gateway.php:212
    37853785msgid "Gateways Settings"
    37863786msgstr ""
    37873787
    37883788#: ../includes/classes/class-settings-panel.php:5087
    37893789msgid "Offline Gateways Settings"
    37903790msgstr ""
    37913791
    37923792#: ../includes/classes/class-settings-panel.php:5104
    37933793msgid "Personalization"
    37943794msgstr ""
    37953795
    37963796#: ../includes/classes/class-settings-panel.php:5108
    37973797msgid "Single Listing Template"
    37983798msgstr ""
    37993799
    38003800#: ../includes/classes/class-settings-panel.php:5136, ../includes/elementor/search-listing.php:169
    38013801msgid "Color"
    38023802msgstr ""
    38033803
    38043804#: ../includes/classes/class-settings-panel.php:5140
    38053805msgid "Button Color"
    38063806msgstr ""
    38073807
    38083808#: ../includes/classes/class-settings-panel.php:5147
    38093809msgid "Badge Color"
    38103810msgstr ""
    38113811
    38123812#: ../includes/classes/class-settings-panel.php:5158
    38133813msgid "All Listings Map Marker"
    38143814msgstr ""
    38153815
    38163816#: ../includes/classes/class-settings-panel.php:5166
    38173817msgid "Primary Color"
    38183818msgstr ""
    38193819
    38203820#: ../includes/classes/class-settings-panel.php:5175
    38213821msgid "Badge"
    38223822msgstr ""
    38233823
    38243824#: ../includes/classes/class-settings-panel.php:5179
    38253825msgid "Badge Management"
    38263826msgstr ""
    38273827
    38283828#: ../includes/classes/class-settings-panel.php:5186
    38293829msgid "Popular Badge"
    38303830msgstr ""
    38313831
    38323832#: ../includes/classes/class-settings-panel.php:5193
    38333833msgid "Featured Badge"
    38343834msgstr ""
    38353835
    38363836#: ../includes/classes/class-settings-panel.php:5206, ../views/admin-templates/extension.php:69, ../views/admin-templates/theme-extensions/all-themes-extensions.php:6
    38373837msgid "Extensions"
    38383838msgstr ""
    38393839
    38403840#: ../includes/classes/class-settings-panel.php:5210
    38413841msgid "Extensions General"
    38423842msgstr ""
    38433843
    38443844#: ../includes/classes/class-settings-panel.php:5224, ../includes/classes/class-tools.php:389, ../includes/classes/class-tools.php:390
    38453845msgid "Tools"
    38463846msgstr ""
    38473847
    38483848#: ../includes/classes/class-settings-panel.php:5228
    38493849msgid "Announcement"
    38503850msgstr ""
    38513851
    38523852#: ../includes/classes/class-settings-panel.php:5240
    38533853msgid "Listings Import/Export"
    38543854msgstr ""
    38553855
    38563856#: ../includes/classes/class-settings-panel.php:5252
    38573857msgid "Settings Import/Export"
    38583858msgstr ""
    38593859
    38603860#: ../includes/classes/class-settings-panel.php:5256
    38613861msgid "Import/Export"
    38623862msgstr ""
    38633863
    38643864#: ../includes/classes/class-settings-panel.php:5260
    38653865msgid "Restore Default"
    38663866msgstr ""
    38673867
    38683868#: ../includes/classes/class-settings-panel.php:5270, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4234
    38693869msgid "Advanced"
    38703870msgstr ""
    38713871
    38723872#: ../includes/classes/class-settings-panel.php:5274
    38733873msgid "Title & Meta (SEO)"
    38743874msgstr ""
    38753875
    38763876#: ../includes/classes/class-settings-panel.php:5286
    38773877msgid "Miscellaneous"
    38783878msgstr ""
    38793879
    38803880#: ../includes/classes/class-settings-panel.php:5290
    38813881msgid "Caching"
    38823882msgstr ""
    38833883
    38843884#: ../includes/classes/class-settings-panel.php:5296
    38853885msgid "Debugging"
    38863886msgstr ""
    38873887
    38883888#: ../includes/classes/class-settings-panel.php:5407, ../templates/all-authors.php:25, ../templates/archive/directory-type-nav.php:26, ../views/admin-templates/post-types-manager/all-listing-types.php:90
    38893889msgid "All"
    38903890msgstr ""
    38913891
    38923892#: ../includes/classes/class-settings-panel.php:5454
    38933893msgid "Order Created"
    38943894msgstr ""
    38953895
    38963896#: ../includes/classes/class-settings-panel.php:5458
    38973897msgid "Order Completed"
    38983898msgstr ""
    38993899
    39003900#: ../includes/classes/class-settings-panel.php:5462
    39013901msgid "New Listing Submitted"
    39023902msgstr ""
    39033903
    39043904#: ../includes/classes/class-settings-panel.php:5466
    39053905msgid "Listing Approved/Published"
    39063906msgstr ""
    39073907
    39083908#: ../includes/classes/class-settings-panel.php:5470
    39093909msgid "Listing Edited"
    39103910msgstr ""
    39113911
    39123912#: ../includes/classes/class-settings-panel.php:5474
    39133913msgid "Payment Received"
    39143914msgstr ""
    39153915
    39163916#: ../includes/classes/class-settings-panel.php:5478
    39173917msgid "Listing Deleted"
    39183918msgstr ""
    39193919
    39203920#: ../includes/classes/class-settings-panel.php:5482
    39213921msgid "Listing Contact Form"
    39223922msgstr ""
    39233923
    39243924#: ../includes/classes/class-settings-panel.php:5486
    39253925msgid "Listing Review"
    39263926msgstr ""
    39273927
    39283928#: ../includes/classes/class-settings-panel.php:5546
    39293929msgid "Listing nearly Expired"
    39303930msgstr ""
    39313931
    39323932#: ../includes/classes/class-settings-panel.php:5550
    39333933msgid "Listing Expired"
    39343934msgstr ""
    39353935
    39363936#: ../includes/classes/class-settings-panel.php:5554
    39373937msgid "Remind to renew"
    39383938msgstr ""
    39393939
    39403940#: ../includes/classes/class-setup-wizard.php:47
    39413941msgid "<strong>Welcome to Directorist</strong> &#8211; You&lsquo;re almost ready to start your directory!"
    39423942msgstr ""
    39433943
    39443944#: ../includes/classes/class-setup-wizard.php:49
    39453945msgid "Run the Setup Wizard"
    39463946msgstr ""
    39473947
    39483948#: ../includes/classes/class-setup-wizard.php:50
    39493949msgid "Skip setup"
    39503950msgstr ""
    39513951
    39523952#: ../includes/classes/class-setup-wizard.php:59, ../includes/classes/class-updater-notice.php:32
    39533953msgid "Action failed. Please refresh the page and retry."
    39543954msgstr ""
    39553955
    39563956#: ../includes/classes/class-setup-wizard.php:117, ../includes/classes/class-tools.php:120
    39573957msgid "No data found"
    39583958msgstr ""
    39593959
    39603960#: ../includes/classes/class-setup-wizard.php:292
    39613961msgid "Introduction"
    39623962msgstr ""
    39633963
    39643964#: ../includes/classes/class-setup-wizard.php:296
    39653965msgid "Step One"
    39663966msgstr ""
    39673967
    39683968#: ../includes/classes/class-setup-wizard.php:301
    39693969msgid "Step Two"
    39703970msgstr ""
    39713971
    39723972#: ../includes/classes/class-setup-wizard.php:306
    39733973msgid "Step Three"
    39743974msgstr ""
    39753975
    39763976#: ../includes/classes/class-setup-wizard.php:311
    39773977msgid "Step Four"
    39783978msgstr ""
    39793979
    39803980#: ../includes/classes/class-setup-wizard.php:319
    39813981msgid "Recommended Pages"
    39823982msgstr ""
    39833983
    39843984#: ../includes/classes/class-setup-wizard.php:413, ../includes/classes/class-setup-wizard.php:478
    39853985msgid "All Categories"
    39863986msgstr ""
    39873987
    39883988#: ../includes/classes/class-setup-wizard.php:437
    39893989msgid "Terms & Conditions"
    39903990msgstr ""
    39913991
    39923992#: ../includes/classes/class-setup-wizard.php:455, ../includes/classes/class-setup-wizard.php:581, ../includes/classes/class-setup-wizard.php:701
    39933993msgid "Skip this step"
    39943994msgstr ""
    39953995
    39963996#: ../includes/classes/class-setup-wizard.php:457, ../includes/classes/class-setup-wizard.php:583, ../includes/classes/class-setup-wizard.php:703, ../templates/listing-form/quick-login.php:45, ../templates/single/top-actions.php:28, ../views/admin-templates/import-export/body-templates/step-one.php:79, ../views/admin-templates/import-export/body-templates/step-one.php:79
    39973997msgid "Continue"
    39983998msgstr ""
    39993999
    40004000#: ../includes/classes/class-setup-wizard.php:537
    40014001msgid "Fill out the form to get maps and monetization feature to work right away"
    40024002msgstr ""
    40034003
    40044004#: ../includes/classes/class-setup-wizard.php:545
    40054005msgid "Openstreet"
    40064006msgstr ""
    40074007
    40084008#: ../includes/classes/class-setup-wizard.php:546
    40094009msgid "Google"
    40104010msgstr ""
    40114011
    40124012#: ../includes/classes/class-setup-wizard.php:551
    40134013msgid "* API Key is required for Google Map to work properly"
    40144014msgstr ""
    40154015
    40164016#: ../includes/classes/class-setup-wizard.php:654
    40174017msgid "Import Dummy Data"
    40184018msgstr ""
    40194019
    40204020#: ../includes/classes/class-setup-wizard.php:661
    40214021msgid "Number of Listings to import"
    40224022msgstr ""
    40234023
    40244024#: ../includes/classes/class-setup-wizard.php:673
    40254025msgid "Import images"
    40264026msgstr ""
    40274027
    40284028#: ../includes/classes/class-setup-wizard.php:682, ../views/admin-templates/import-export/body-templates/step-two.php:99
    40294029msgid "Importing"
    40304030msgstr ""
    40314031
    40324032#: ../includes/classes/class-setup-wizard.php:684, ../views/admin-templates/import-export/body-templates/step-two.php:101
    40334033msgid "Your listing are now being imported..."
    40344034msgstr ""
    40354035
    40364036#: ../includes/classes/class-setup-wizard.php:688, ../views/admin-templates/import-export/body-templates/step-two.php:105
    40374037msgid "Please don't reload the page"
    40384038msgstr ""
    40394039
    40404040#: ../includes/classes/class-setup-wizard.php:728
    40414041msgid "Great, your directory is ready!"
    40424042msgstr ""
    40434043
    40444044#: ../includes/classes/class-setup-wizard.php:730
    40454045msgid "Visit Directorist Dashboard"
    40464046msgstr ""
    40474047
    40484048#: ../includes/classes/class-setup-wizard.php:731
    40494049msgid "Create your First Listing"
    40504050msgstr ""
    40514051
    40524052#: ../includes/classes/class-setup-wizard.php:736, ../includes/classes/class-setup-wizard.php:881
    40534053msgid "Return to the WordPress Dashboard"
    40544054msgstr ""
    40554055
    40564056#: ../includes/classes/class-setup-wizard.php:756
    40574057msgid "Welcome to the world of Directorist!"
    40584058msgstr ""
    40594059
    40604060#: ../includes/classes/class-setup-wizard.php:757
    40614061msgid "Thank you for choosing Directorist to amp your business directory. This quick setup wizard will help you <strong>configure the basic settings and get you started in no longer than 3 minutes.</strong>"
    40624062msgstr ""
    40634063
    40644064#: ../includes/classes/class-setup-wizard.php:758
    40654065msgid "If you don't want to run the setup wizard now, you can skip and return to the WordPress dashboard. You can always come back and run the wizard at your convenience."
    40664066msgstr ""
    40674067
    40684068#: ../includes/classes/class-setup-wizard.php:762
    40694069msgid "Not right now"
    40704070msgstr ""
    40714071
    40724072#: ../includes/classes/class-setup-wizard.php:763
    40734073msgid "Let's Go!"
    40744074msgstr ""
    40754075
    40764076#: ../includes/classes/class-setup-wizard.php:805
    40774077msgid "Directorist &rsaquo; Setup Wizard"
    40784078msgstr ""
    40794079
    40804080#: ../includes/classes/class-template-hooks.php:73
    40814081msgid "This page is currently selected as the Single Listing Page for '%s' Listing Type"
    40824082msgstr ""
    40834083
    40844084#: ../includes/classes/class-tools.php:92
    40854085msgid "Invalid request!"
    40864086msgstr ""
    40874087
    40884088#: ../includes/classes/class-tools.php:351
    40894089msgid "Publish Date"
    40904090msgstr ""
    40914091
    40924092#: ../includes/classes/class-tools.php:352
    40934093msgid "Listing Status"
    40944094msgstr ""
    40954095
    40964096#: ../includes/classes/class-tools.php:481
    40974097msgid "Upload CSV File"
    40984098msgstr ""
    40994099
    41004100#: ../includes/classes/class-tools.php:489
    41014101msgid "Column Mapping"
    41024102msgstr ""
    41034103
    41044104#: ../includes/classes/class-tools.php:497, ../views/admin-templates/post-types-manager/all-listing-types.php:61, ../views/admin-templates/post-types-manager/all-listing-types.php:203, ../views/admin-templates/post-types-manager/all-listing-types.php:221
    41054105msgid "Import"
    41064106msgstr ""
    41074107
    41084108#: ../includes/classes/class-tools.php:503
    41094109msgid "Done"
    41104110msgstr ""
    41114111
    41124112#: ../includes/classes/class-updater-notice.php:36
    41134113msgid "You don&#8217;t have permission to do this."
    41144114msgstr ""
    41154115
    41164116#: ../includes/classes/class-updater-notice.php:104, ../includes/classes/class-updater-notice.php:130
    41174117msgid "Directorist data update"
    41184118msgstr ""
    41194119
    41204120#: ../includes/classes/class-updater-notice.php:104
    41214121msgid "We need to update your directory database to the latest version."
    41224122msgstr ""
    41234123
    41244124#: ../includes/classes/class-updater-notice.php:108
    41254125msgid "Run the updater"
    41264126msgstr ""
    41274127
    41284128#: ../includes/classes/class-updater-notice.php:114
    41294129msgid "It is strongly recommended that you backup your database before proceeding. Are you sure you wish to run the updater now?"
    41304130msgstr ""
    41314131
    41324132#: ../includes/classes/class-updater-notice.php:130
    41334133msgid "Your database is being updated in the background."
    41344134msgstr ""
    41354135
    41364136#: ../includes/classes/class-updater-notice.php:132
    41374137msgid "Taking a while? Click here to run it now."
    41384138msgstr ""
    41394139
    41404140#: ../includes/classes/class-updater-notice.php:145
    41414141msgid "Dismiss"
    41424142msgstr ""
    41434143
    41444144#: ../includes/classes/class-updater-notice.php:147
    41454145msgid "Directorist data update complete. Thank you for updating to the latest version!"
    41464146msgstr ""
    41474147
    41484148#: ../includes/classes/class-upgrade.php:53
    41494149msgid "<p class=\"directorist__notice_new\"><span>Congratulations!</span> You are now using the latest version of Directorist with some cool <a href=\"%s\" target=\"blank\">new features</a>. If you are using any of our premium theme or extension, please update them from this <a href=\"%s\">page</a> </p>"
    41504150msgstr ""
    41514151
    41524152#: ../includes/classes/class-upgrade.php:55
    41534153msgid "<p class=\"directorist__notice_new_action\"><a href=\"%s\" class=\"directorist__notice_new__btn\">Continue using Directorist 7.0 </a><a target=\"blank\" href=\"%s\"> Roll back to v6.5.8</a></p>"
    41544154msgstr ""
    41554155
    41564156#: ../includes/classes/class-user.php:85
    41574157msgid "User Type"
    41584158msgstr ""
    41594159
    41604160#: ../includes/classes/class-user.php:226
    41614161msgid "Required form field is missing. Please fill all required fields."
    41624162msgstr ""
    41634163
    41644164#: ../includes/classes/class-user.php:237
    41654165msgid "Sorry, space is not allowed in username!"
    41664166msgstr ""
    41674167
    41684168#: ../includes/classes/class-user.php:240
    41694169msgid "Sorry, the username you entered is not valid"
    41704170msgstr ""
    41714171
    41724172#: ../includes/classes/class-user.php:248
    41734173msgid "Privacy field is required"
    41744174msgstr ""
    41754175
    41764176#: ../includes/classes/class-user.php:251, ../includes/classes/class-user.php:255
    41774177msgid "Terms and Condition field is required"
    41784178msgstr ""
    41794179
    41804180#: ../includes/classes/class-user.php:262
    41814181msgid "Email Already in use"
    41824182msgstr ""
    41834183
    41844184#: ../includes/classes/class-user.php:266
    41854185msgid "First Name must be letters or combination of letters and number"
    41864186msgstr ""
    41874187
    41884188#: ../includes/classes/class-user.php:271
    41894189msgid "Last Name must be letters or combination of letters and number"
    41904190msgstr ""
    41914191
    41924192#: ../includes/classes/class-user.php:277
    41934193msgid "Website is not a valid URL"
    41944194msgstr ""
    41954195
    41964196#: ../includes/classes/class-user.php:529
    41974197msgid "Password should be matched and more than five character"
    41984198msgstr ""
    41994199
    42004200#: ../includes/classes/class-user.php:539
    42014201msgid "Oops! Something wrong."
    42024202msgstr ""
    42034203
    42044204#: ../includes/classes/class-user.php:535
    42054205msgid "Congratulations! Your profile updated successfully"
    42064206msgstr ""
    42074207
    42084208#: ../includes/classes/class-widget-all-map.php:19
    42094209msgid "You can show all listings map by this widget"
    42104210msgstr ""
    42114211
    42124212#: ../includes/classes/class-widget-all-map.php:23
    42134213msgid "Directorist - Map"
    42144214msgstr ""
    42154215
    42164216#: ../includes/classes/class-widget-all-map.php:61, ../includes/classes/class-widget-author-info.php:57, ../includes/classes/class-widget-categories.php:123, ../includes/classes/class-widget-contact-form.php:74, ../includes/classes/class-widget-featured.php:73, ../includes/classes/class-widget-locations.php:119, ../includes/classes/class-widget-map.php:82, ../includes/classes/class-widget-popular.php:60, ../includes/classes/class-widget-similar-listings.php:62, ../includes/classes/class-widget-submit.php:62, ../includes/classes/class-widget-tags.php:117, ../includes/classes/class-widget-video.php:69
    42174217msgid "Title:"
    42184218msgstr ""
    42194219
    42204220#: ../includes/classes/class-widget-all-map.php:68, ../includes/classes/class-widget-map.php:89
    42214221msgid "Map zoom level:"
    42224222msgstr ""
    42234223
    42244224#: ../includes/classes/class-widget-all-map.php:76, ../includes/classes/class-widget-categories.php:198, ../includes/classes/class-widget-featured.php:88, ../includes/classes/class-widget-locations.php:197, ../includes/classes/class-widget-login-form.php:69, ../includes/classes/class-widget-popular.php:75, ../includes/classes/class-widget-submit.php:70
    42254225msgid "Display only on single listing"
    42264226msgstr ""
    42274227
    42284228#: ../includes/classes/class-widget-author-info.php:15
    42294229msgid "You can show author info by this widget"
    42304230msgstr ""
    42314231
    42324232#: ../includes/classes/class-widget-author-info.php:19
    42334233msgid "Directorist - Author Info"
    42344234msgstr ""
    42354235
    42364236#: ../includes/classes/class-widget-author-info.php:54, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2422, ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:702
    42374237msgid "Author Info"
    42384238msgstr ""
    42394239
    42404240#: ../includes/classes/class-widget-categories.php:19
    42414241msgid "You can show Categories by this widget"
    42424242msgstr ""
    42434243
    42444244#: ../includes/classes/class-widget-categories.php:23
    42454245msgid "Directorist - Categories"
    42464246msgstr ""
    42474247
    42484248#: ../includes/classes/class-widget-categories.php:41
    42494249msgid "Directorist Categories"
    42504250msgstr ""
    42514251
    42524252#: ../includes/classes/class-widget-categories.php:130, ../includes/classes/class-widget-locations.php:128, ../includes/classes/class-widget-tags.php:124
    42534253msgid "View as"
    42544254msgstr ""
    42554255
    42564256#: ../includes/classes/class-widget-categories.php:133, ../includes/classes/class-widget-locations.php:131, ../includes/classes/class-widget-tags.php:127
    42574257msgid "Dropdown"
    42584258msgstr ""
    42594259
    42604260#: ../includes/classes/class-widget-categories.php:137, ../includes/classes/class-widget-categories.php:140, ../includes/classes/class-widget-locations.php:136, ../includes/classes/class-widget-locations.php:139
    42614261msgid "Select Parent"
    42624262msgstr ""
    42634263
    42644264#: ../includes/classes/class-widget-categories.php:159, ../includes/classes/class-widget-locations.php:158, ../includes/classes/class-widget-tags.php:134
    42654265msgid "Id"
    42664266msgstr ""
    42674267
    42684268#: ../includes/classes/class-widget-categories.php:175, ../includes/classes/class-widget-locations.php:174, ../includes/classes/class-widget-tags.php:150, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:920
    42694269msgid "Maximum Number"
    42704270msgstr ""
    42714271
    42724272#: ../includes/classes/class-widget-categories.php:183
    42734273msgid "Show all the top-level categories only"
    42744274msgstr ""
    42754275
    42764276#: ../includes/classes/class-widget-categories.php:188
    42774277msgid "Hide empty categories"
    42784278msgstr ""
    42794279
    42804280#: ../includes/classes/class-widget-categories.php:193, ../includes/classes/class-widget-locations.php:192, ../includes/classes/class-widget-tags.php:163
    42814281msgid "Display listing counts"
    42824282msgstr ""
    42834283
    42844284#: ../includes/classes/class-widget-contact-form.php:18
    42854285msgid "You can show a form to contact the listing owners by this widget"
    42864286msgstr ""
    42874287
    42884288#: ../includes/classes/class-widget-contact-form.php:23
    42894289msgid "Directorist - Contact Listing Owner"
    42904290msgstr ""
    42914291
    42924292#: ../includes/classes/class-widget-contact-form.php:50
    42934293msgid "Contact Listing Owner"
    42944294msgstr ""
    42954295
    42964296#: ../includes/classes/class-widget-contact-form.php:71
    42974297msgid "Contact the listing owner"
    42984298msgstr ""
    42994299
    43004300#: ../includes/classes/class-widget-featured.php:16
    43014301msgid "You can show featured listings by this widget"
    43024302msgstr ""
    43034303
    43044304#: ../includes/classes/class-widget-featured.php:20
    43054305msgid "Directorist - Featured Listings"
    43064306msgstr ""
    43074307
    43084308#: ../includes/classes/class-widget-featured.php:39, ../includes/classes/class-widget-featured.php:69, ../views/widget-templates/featured-listings.php:2
    43094309msgid "Featured Listings"
    43104310msgstr ""
    43114311
    43124312#: ../includes/classes/class-widget-featured.php:80, ../includes/classes/class-widget-popular.php:67, ../includes/classes/class-widget-similar-listings.php:69
    43134313msgid "Number of Listings:"
    43144314msgstr ""
    43154315
    43164316#: ../includes/classes/class-widget-locations.php:19
    43174317msgid "You can show Locations by this widget"
    43184318msgstr ""
    43194319
    43204320#: ../includes/classes/class-widget-locations.php:23
    43214321msgid "Directorist - Locations"
    43224322msgstr ""
    43234323
    43244324#: ../includes/classes/class-widget-locations.php:41
    43254325msgid "Directorist Locations"
    43264326msgstr ""
    43274327
    43284328#: ../includes/classes/class-widget-locations.php:182
    43294329msgid "Show all the top level locations only"
    43304330msgstr ""
    43314331
    43324332#: ../includes/classes/class-widget-locations.php:187
    43334333msgid "Hide empty locations"
    43344334msgstr ""
    43354335
    43364336#: ../includes/classes/class-widget-login-form.php:15
    43374337msgid "You can show login form for logged out users by this widget"
    43384338msgstr ""
    43394339
    43404340#: ../includes/classes/class-widget-login-form.php:19
    43414341msgid "Directorist - Login Form"
    43424342msgstr ""
    43434343
    43444344#: ../includes/classes/class-widget-map.php:19
    43454345msgid "You can show single listing map by this widget"
    43464346msgstr ""
    43474347
    43484348#: ../includes/classes/class-widget-map.php:23
    43494349msgid "Directorist - Map (Single Listing)"
    43504350msgstr ""
    43514351
    43524352#: ../includes/classes/class-widget-map.php:45, ../includes/model/SingleListing.php:1033, ../views/admin-templates/listing-form/add-listing.php:7
    43534353msgid "No Title"
    43544354msgstr ""
    43554355
    43564356#: ../includes/classes/class-widget-map.php:49
    43574357msgid "View On Google Maps"
    43584358msgstr ""
    43594359
    43604360#: ../includes/classes/class-widget-popular.php:16
    43614361msgid "You can show popular listing by this widget"
    43624362msgstr ""
    43634363
    43644364#: ../includes/classes/class-widget-popular.php:20
    43654365msgid "Directorist - Popular Listings"
    43664366msgstr ""
    43674367
    43684368#: ../includes/classes/class-widget-popular.php:55, ../views/widget-templates/popular-listings.php:3, ../views/widgets/popular-listings.php:3
    43694369msgid "Popular Listings"
    43704370msgstr ""
    43714371
    43724372#: ../includes/classes/class-widget-search.php:19
    43734373msgid "You can show search listing form by this widget"
    43744374msgstr ""
    43754375
    43764376#: ../includes/classes/class-widget-search.php:23
    43774377msgid "Directorist - Search Listings"
    43784378msgstr ""
    43794379
    43804380#: ../includes/classes/class-widget-search.php:40, ../views/search-widget-form.php:7
    43814381msgid "Advance Search"
    43824382msgstr ""
    43834383
    43844384#: ../includes/classes/class-widget-similar-listings.php:16
    43854385msgid "You can show similar listing by this widget"
    43864386msgstr ""
    43874387
    43884388#: ../includes/classes/class-widget-similar-listings.php:20
    43894389msgid "Directorist - Similar Listings"
    43904390msgstr ""
    43914391
    43924392#: ../includes/classes/class-widget-similar-listings.php:38, ../includes/classes/class-widget-similar-listings.php:58, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4632
    43934393msgid "Similar Listings"
    43944394msgstr ""
    43954395
    43964396#: ../includes/classes/class-widget-submit.php:15
    43974397msgid "You can show submit listing button by this widget"
    43984398msgstr ""
    43994399
    44004400#: ../includes/classes/class-widget-submit.php:19
    44014401msgid "Directorist - Submit Listing"
    44024402msgstr ""
    44034403
    44044404#: ../includes/classes/class-widget-submit.php:58
    44054405msgid "Submit a Listing"
    44064406msgstr ""
    44074407
    44084408#: ../includes/classes/class-widget-tags.php:19
    44094409msgid "You can show listing tags by this widget"
    44104410msgstr ""
    44114411
    44124412#: ../includes/classes/class-widget-tags.php:23
    44134413msgid "Directorist - Tags"
    44144414msgstr ""
    44154415
    44164416#: ../includes/classes/class-widget-tags.php:158
    44174417msgid "Hide empty tags"
    44184418msgstr ""
    44194419
    44204420#: ../includes/classes/class-widget-tags.php:168
    44214421msgid "Display single listing tags"
    44224422msgstr ""
    44234423
    44244424#: ../includes/classes/class-widget-video.php:18
    44254425msgid "You can show listing video by this widget"
    44264426msgstr ""
    44274427
    44284428#: ../includes/classes/class-widget-video.php:22
    44294429msgid "Directorist - Video"
    44304430msgstr ""
    44314431
    44324432#: ../includes/classes/class-widget-video.php:48, ../includes/classes/class-widget-video.php:66
    44334433msgid "Listing Video"
    44344434msgstr ""
    44354435
    44364436#: ../includes/elementor/add-listing.php:16, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4548
    44374437msgid "Add Listing Form"
    44384438msgstr ""
    44394439
    44404440#: ../includes/elementor/add-listing.php:41
    44414441msgid "This widget works only in Add Listing page. It has no additional elementor settings."
    44424442msgstr ""
    44434443
    44444444#: ../includes/elementor/add-listing.php:47, ../includes/elementor/all-categories.php:50, ../includes/elementor/all-listing.php:135, ../includes/elementor/all-locations.php:50, ../includes/elementor/search-listing.php:86
    44454445msgid "Directory Types"
    44464446msgstr ""
    44474447
    44484448#: ../includes/elementor/all-categories.php:16
    44494449msgid "Listing Categories"
    44504450msgstr ""
    44514451
    44524452#: ../includes/elementor/all-categories.php:58, ../includes/elementor/all-listing.php:143, ../includes/elementor/all-locations.php:58, ../includes/elementor/search-listing.php:94
    44534453msgid "Default Directory Types"
    44544454msgstr ""
    44554455
    44564456#: ../includes/elementor/all-categories.php:68, ../includes/elementor/all-listing.php:90, ../includes/elementor/all-locations.php:68, ../includes/elementor/category.php:46, ../includes/elementor/location.php:46, ../includes/elementor/search-result.php:53, ../includes/elementor/tag.php:46
    44574457msgid "List View"
    44584458msgstr ""
    44594459
    44604460#: ../includes/elementor/all-categories.php:75
    44614461msgid "Categories Per Row"
    44624462msgstr ""
    44634463
    44644464#: ../includes/elementor/all-categories.php:77, ../includes/elementor/all-listing.php:112, ../includes/elementor/all-locations.php:77
    44654465msgid "2 Items / Row"
    44664466msgstr ""
    44674467
    44684468#: ../includes/elementor/all-categories.php:78, ../includes/elementor/all-listing.php:111, ../includes/elementor/all-locations.php:78, ../includes/elementor/category.php:65, ../includes/elementor/location.php:65, ../includes/elementor/search-result.php:72, ../includes/elementor/tag.php:65
    44694469msgid "3 Items / Row"
    44704470msgstr ""
    44714471
    44724472#: ../includes/elementor/all-categories.php:79, ../includes/elementor/all-listing.php:110, ../includes/elementor/all-locations.php:79, ../includes/elementor/category.php:66, ../includes/elementor/location.php:66, ../includes/elementor/search-result.php:73, ../includes/elementor/tag.php:66
    44734473msgid "4 Items / Row"
    44744474msgstr ""
    44754475
    44764476#: ../includes/elementor/all-categories.php:80, ../includes/elementor/all-locations.php:80, ../includes/elementor/category.php:67, ../includes/elementor/location.php:67, ../includes/elementor/search-result.php:74, ../includes/elementor/tag.php:67
    44774477msgid "5 Items / Row"
    44784478msgstr ""
    44794479
    44804480#: ../includes/elementor/all-categories.php:81, ../includes/elementor/all-listing.php:109, ../includes/elementor/all-locations.php:81
    44814481msgid "6 Items / Row"
    44824482msgstr ""
    44834483
    44844484#: ../includes/elementor/all-categories.php:89, ../includes/elementor/all-listing.php:189, ../includes/elementor/all-locations.php:89, ../includes/elementor/category.php:90, ../includes/elementor/location.php:89, ../includes/elementor/search-result.php:103, ../includes/elementor/tag.php:89
    44854485msgid "Order by"
    44864486msgstr ""
    44874487
    44884488#: ../includes/elementor/all-categories.php:101, ../includes/elementor/all-listing.php:150
    44894489msgid "Specify Categories"
    44904490msgstr ""
    44914491
    44924492#: ../includes/elementor/all-categories.php:109
    44934493msgid "Categories Order"
    44944494msgstr ""
    44954495
    44964496#: ../includes/elementor/all-categories.php:111, ../includes/elementor/all-listing.php:202, ../includes/elementor/all-locations.php:111, ../includes/elementor/category.php:103, ../includes/elementor/location.php:102, ../includes/elementor/search-result.php:116, ../includes/elementor/tag.php:102
    44974497msgid " ASC"
    44984498msgstr ""
    44994499
    45004500#: ../includes/elementor/all-categories.php:112, ../includes/elementor/all-listing.php:203, ../includes/elementor/all-locations.php:112, ../includes/elementor/category.php:104, ../includes/elementor/location.php:103, ../includes/elementor/search-result.php:117, ../includes/elementor/tag.php:103
    45014501msgid " DESC"
    45024502msgstr ""
    45034503
    45044504#: ../includes/elementor/all-categories.php:119, ../includes/elementor/category.php:75
    45054505msgid "Number of Categories to Show"
    45064506msgstr ""
    45074507
    45084508#: ../includes/elementor/all-categories.php:128, ../includes/elementor/all-listing.php:183, ../includes/elementor/all-locations.php:128, ../includes/elementor/author-profile.php:30, ../includes/elementor/category.php:111, ../includes/elementor/location.php:110, ../includes/elementor/search-result.php:124, ../includes/elementor/tag.php:110
    45094509msgid "Only For Logged In User?"
    45104510msgstr ""
    45114511
    45124512#: ../includes/elementor/all-listing.php:68, ../includes/elementor/category.php:30, ../includes/elementor/location.php:30, ../includes/elementor/search-result.php:30, ../includes/elementor/tag.php:30
    45134513msgid "Show Header?"
    45144514msgstr ""
    45154515
    45164516#: ../includes/elementor/all-listing.php:74
    45174517msgid "Total Listings Found Title"
    45184518msgstr ""
    45194519
    45204520#: ../includes/elementor/all-listing.php:75
    45214521msgid "Listings Found"
    45224522msgstr ""
    45234523
    45244524#: ../includes/elementor/all-listing.php:80
    45254525msgid "Show Filter Button?"
    45264526msgstr ""
    45274527
    45284528#: ../includes/elementor/all-listing.php:91, ../includes/elementor/category.php:47, ../includes/elementor/location.php:47, ../includes/elementor/search-result.php:54, ../includes/elementor/tag.php:47
    45294529msgid "Map View"
    45304530msgstr ""
    45314531
    45324532#: ../includes/elementor/all-listing.php:107
    45334533msgid "Listings Per Row"
    45344534msgstr ""
    45354535
    45364536#: ../includes/elementor/all-listing.php:120
    45374537msgid "Number of Listings to Show"
    45384538msgstr ""
    45394539
    45404540#: ../includes/elementor/all-listing.php:129
    45414541msgid "Show Preview Image?"
    45424542msgstr ""
    45434543
    45444544#: ../includes/elementor/all-listing.php:157
    45454545msgid "Specify Tags"
    45464546msgstr ""
    45474547
    45484548#: ../includes/elementor/all-listing.php:164, ../includes/elementor/all-locations.php:101
    45494549msgid "Specify Locations"
    45504550msgstr ""
    45514551
    45524552#: ../includes/elementor/all-listing.php:171
    45534553msgid "Show Featured Only?"
    45544554msgstr ""
    45554555
    45564556#: ../includes/elementor/all-listing.php:177
    45574557msgid "Show Popular Only?"
    45584558msgstr ""
    45594559
    45604560#: ../includes/elementor/all-listing.php:200, ../includes/elementor/all-locations.php:109, ../includes/elementor/category.php:101, ../includes/elementor/location.php:100, ../includes/elementor/search-result.php:114, ../includes/elementor/tag.php:100
    45614561msgid "Listings Order"
    45624562msgstr ""
    45634563
    45644564#: ../includes/elementor/all-listing.php:210, ../includes/elementor/category.php:84, ../includes/elementor/location.php:83, ../includes/elementor/search-result.php:130, ../includes/elementor/tag.php:83
    45654565msgid "Show Pagination?"
    45664566msgstr ""
    45674567
    45684568#: ../includes/elementor/all-locations.php:16
    45694569msgid "Listing Locations"
    45704570msgstr ""
    45714571
    45724572#: ../includes/elementor/all-locations.php:75, ../includes/elementor/location.php:63, ../includes/elementor/search-result.php:70, ../includes/elementor/tag.php:63
    45734573msgid "Locations Per Row"
    45744574msgstr ""
    45754575
    45764576#: ../includes/elementor/all-locations.php:119
    45774577msgid "Number of Locations to Show"
    45784578msgstr ""
    45794579
    45804580#: ../includes/elementor/author-profile.php:15
    45814581msgid "User Profile"
    45824582msgstr ""
    45834583
    45844584#: ../includes/elementor/base.php:27
    45854585msgid "This widget works only in Single Listing page. It has no additional elementor settings."
    45864586msgstr ""
    45874587
    45884588#: ../includes/elementor/base.php:28
    45894589msgid "This widget works only in Checkout page. It has no additional elementor settings."
    45904590msgstr ""
    45914591
    45924592#: ../includes/elementor/base.php:29
    45934593msgid "This widget works only in Payment Receipt page. It has no additional elementor settings."
    45944594msgstr ""
    45954595
    45964596#: ../includes/elementor/base.php:30
    45974597msgid "This widget works only in Transaction Failure page. It has no additional elementor settings."
    45984598msgstr ""
    45994599
    46004600#: ../includes/elementor/category.php:36
    46014601msgid "Listing Found Title"
    46024602msgstr ""
    46034603
    46044604#: ../includes/elementor/category.php:63
    46054605msgid "Category Per Row"
    46064606msgstr ""
    46074607
    46084608#: ../includes/elementor/checkout.php:15
    46094609msgid "Cart/Checkout"
    46104610msgstr ""
    46114611
    46124612#: ../includes/elementor/custom-registration.php:30
    46134613msgid "This widget works only in Registration page. It has no additional elementor settings."
    46144614msgstr ""
    46154615
    46164616#: ../includes/elementor/init.php:36, ../includes/gutenberg/init.php:116
    46174617msgid "Directorist"
    46184618msgstr ""
    46194619
    46204620#: ../includes/elementor/location.php:36, ../includes/elementor/tag.php:36
    46214621msgid "All Listing Title"
    46224622msgstr ""
    46234623
    46244624#: ../includes/elementor/location.php:37, ../includes/elementor/tag.php:37
    46254625msgid "Total Listings Found:"
    46264626msgstr ""
    46274627
    46284628#: ../includes/elementor/location.php:74, ../includes/elementor/tag.php:74
    46294629msgid "Number of locations to Show"
    46304630msgstr ""
    46314631
    46324632#: ../includes/elementor/payment-receipt.php:15
    46334633msgid "Payment Receipt"
    46344634msgstr ""
    46354635
    46364636#: ../includes/elementor/search-listing.php:16, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4687
    46374637msgid "Search Form"
    46384638msgstr ""
    46394639
    46404640#: ../includes/elementor/search-listing.php:41
    46414641msgid "Add Element Title & Subtitle?"
    46424642msgstr ""
    46434643
    46444644#: ../includes/elementor/search-listing.php:47
    46454645msgid "Title/Subtitle Alignment"
    46464646msgstr ""
    46474647
    46484648#: ../includes/elementor/search-listing.php:54, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3399
    46494649msgid "Center"
    46504650msgstr ""
    46514651
    46524652#: ../includes/elementor/search-listing.php:58, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3398
    46534653msgid "Right"
    46544654msgstr ""
    46554655
    46564656#: ../includes/elementor/search-listing.php:72
    46574657msgid "Search Form Title"
    46584658msgstr ""
    46594659
    46604660#: ../includes/elementor/search-listing.php:79
    46614661msgid "Search Form Subtitle"
    46624662msgstr ""
    46634663
    46644664#: ../includes/elementor/search-listing.php:101
    46654665msgid "Search Button Label"
    46664666msgstr ""
    46674667
    46684668#: ../includes/elementor/search-listing.php:107
    46694669msgid "Show More Search Field?"
    46704670msgstr ""
    46714671
    46724672#: ../includes/elementor/search-listing.php:113
    46734673msgid "More Search Field Button Label"
    46744674msgstr ""
    46754675
    46764676#: ../includes/elementor/search-listing.php:120
    46774677msgid "Show More Field Reset Button?"
    46784678msgstr ""
    46794679
    46804680#: ../includes/elementor/search-listing.php:127
    46814681msgid "More Field Reset Button Label"
    46824682msgstr ""
    46834683
    46844684#: ../includes/elementor/search-listing.php:134
    46854685msgid "Show More Field Search Button?"
    46864686msgstr ""
    46874687
    46884688#: ../includes/elementor/search-listing.php:141
    46894689msgid "More Field Search Button Label"
    46904690msgstr ""
    46914691
    46924692#: ../includes/elementor/search-listing.php:148
    46934693msgid "More Filter By"
    46944694msgstr ""
    46954695
    46964696#: ../includes/elementor/search-listing.php:159
    46974697msgid "Show only for logged in user?"
    46984698msgstr ""
    46994699
    47004700#: ../includes/elementor/search-listing.php:183, ../includes/elementor/search-listing.php:209, ../includes/elementor/search-result.php:43
    47014701msgid "Subtitle"
    47024702msgstr ""
    47034703
    47044704#: ../includes/elementor/search-listing.php:195
    47054705msgid "Typography"
    47064706msgstr ""
    47074707
    47084708#: ../includes/elementor/search-result.php:82
    47094709msgid "Number of Listing to Show:"
    47104710msgstr ""
    47114711
    47124712#: ../includes/elementor/search-result.php:91
    47134713msgid "Only Featured"
    47144714msgstr ""
    47154715
    47164716#: ../includes/elementor/search-result.php:97
    47174717msgid "Only Popular"
    47184718msgstr ""
    47194719
    47204720#: ../includes/elementor/tag.php:116
    47214721msgid "Redirect Page Link"
    47224722msgstr ""
    47234723
    47244724#: ../includes/elementor/transaction-failure.php:15
    47254725msgid "Transaction Failure"
    47264726msgstr ""
    47274727
    47284728#: ../includes/elementor/user-dashboard.php:30
    47294729msgid "This widget works only in Dashboard page. It has no additional elementor settings."
    47304730msgstr ""
    47314731
    47324732#: ../includes/elementor/user-login.php:30
    47334733msgid "This widget works only in Login page. It has no additional elementor settings."
    47344734msgstr ""
    47354735
    47364736#: ../includes/gateways/class-gateway.php:35
    47374737msgid "Checkout Other Payment Gateways & Extensions"
    47384738msgstr ""
    47394739
    47404740#: ../includes/gateways/class-gateway.php:109
    47414741msgid "Monetization General Settings"
    47424742msgstr ""
    47434743
    47444744#: ../includes/gateways/class-gateway.php:110
    47454745msgid "You can Customize Monetization settings here. After switching any option, Do not forget to save the changes."
    47464746msgstr ""
    47474747
    47484748#: ../includes/gateways/class-gateway.php:117
    47494749msgid "You can Customize featured listing related settings here"
    47504750msgstr ""
    47514751
    47524752#: ../includes/gateways/class-gateway.php:172
    47534753msgid "You can set some description for your user for upgrading to featured listing."
    47544754msgstr ""
    47554755
    47564756#: ../includes/gateways/class-gateway.php:218
    47574757msgid "Gateway General Settings"
    47584758msgstr ""
    47594759
    47604760#: ../includes/gateways/class-gateway.php:219
    47614761msgid "You can Customize Gateway-related settings here. You can enable or disable any gateways here. Here, YES means Enabled, and NO means disabled. After switching any option, Do not forget to save the changes."
    47624762msgstr ""
    47634763
    47644764#: ../includes/gateways/class-offline-gateway.php:41
    47654765msgid "Offline Gateway"
    47664766msgstr ""
    47674767
    47684768#: ../includes/gateways/class-offline-gateway.php:47
    47694769msgid "Offline Gateway Settings"
    47704770msgstr ""
    47714771
    47724772#: ../includes/gateways/class-offline-gateway.php:48
    47734773msgid "You can customize all the settings related to your offline gateway. After switching any option, Do not forget to save the changes."
    47744774msgstr ""
    47754775
    47764776#: ../includes/gutenberg/init.php:169
    47774777msgid "Current block is %s and it is empty! Maybe the block is used incorrectly or there is something wrong."
    47784778msgstr ""
    47794779
    47804780#: ../includes/model/Account.php:32
    47814781msgid "Login page is not for logged-in user. <a href=\"%s\">Go to Dashboard</a>"
    47824782msgstr ""
    47834783
    47844784#: ../includes/model/Account.php:42
    47854785msgid "Sending user info, please wait..."
    47864786msgstr ""
    47874787
    47884788#: ../includes/model/Account.php:56
    47894789msgid "E-mail:"
    47904790msgstr ""
    47914791
    47924792#: ../includes/model/Account.php:132
    47934793msgid "Registration page is only for unregistered user. <a href=\"%s\">Go to Dashboard</a>"
    47944794msgstr ""
    47954795
    47964796#: ../includes/model/Account.php:113
    47974797msgid "here"
    47984798msgstr ""
    47994799
    48004800#: ../includes/model/ListingAuthor.php:273, ../templates/single/section-author_info.php:44, ../views/widgets/author-info.php:31
    48014801msgid "Member since %s ago"
    48024802msgstr ""
    48034803
    48044804#: ../includes/model/ListingAuthor.php:279
    48054805msgctxt "author review count"
    48064806msgid "<span>%s</span> Review"
    48074807msgid_plural "<span>%s</span> Reviews"
    48084808msgstr[0] ""
    48094809msgstr[1] ""
    48104810
    48114811#: ../includes/model/ListingAuthor.php:285
    48124812msgctxt "author review count"
    48134813msgid "<span>%s</span> Listing"
    48144814msgid_plural "<span>%s</span> Listings"
    48154815msgstr[0] ""
    48164816msgstr[1] ""
    48174817
    48184818#: ../includes/model/ListingDashboard.php:156, ../templates/dashboard/tab-my-listings.php:40
    48194819msgid "Expired"
    48204820msgstr ""
    48214821
    48224822#: ../includes/model/ListingDashboard.php:235, ../views/front-end/user-dashboard.php:644
    48234823msgid "Untitled"
    48244824msgstr ""
    48254825
    48264826#: ../includes/model/ListingDashboard.php:365, ../views/front-end/user-dashboard.php:105
    48274827msgid "%s (%s)"
    48284828msgstr ""
    48294829
    48304830#: ../includes/model/ListingDashboard.php:570, ../views/front-end/user-dashboard.php:312, ../views/front-end/user-dashboard.php:303
    48314831msgid "Renew"
    48324832msgstr ""
    48334833
    48344834#: ../includes/model/ListingDashboard.php:580, ../views/front-end/user-dashboard.php:326
    48354835msgid "Promote"
    48364836msgstr ""
    48374837
    48384838#: ../includes/model/ListingDashboard.php:589
    48394839msgid "Delete Listing"
    48404840msgstr ""
    48414841
    48424842#: ../includes/model/ListingForm.php:180, ../views/custom-fields.php:57, ../views/admin-templates/listing-form/add-listing-custom-field.php:83, ../views/admin-templates/listing-form/add-listing.php:249
    48434843msgid "Select an Option"
    48444844msgstr ""
    48454845
    48464846#: ../includes/model/ListingForm.php:315
    48474847msgid "No Title "
    48484848msgstr ""
    48494849
    48504850#: ../includes/model/ListingForm.php:470
    48514851msgid "I agree to the %Privacy & Policy%"
    48524852msgstr ""
    48534853
    48544854#: ../includes/model/ListingForm.php:477
    48554855msgid "I agree with all %terms & conditions%"
    48564856msgstr ""
    48574857
    48584858#: ../includes/model/ListingForm.php:490, ../includes/model/ListingForm.php:510, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4012, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4019
    48594859msgid "Save & Preview"
    48604860msgstr ""
    48614861
    48624862#: ../includes/model/ListingForm.php:487
    48634863msgid "Preview Changes"
    48644864msgstr ""
    48654865
    48664866#: ../includes/model/ListingForm.php:502, ../includes/model/SingleListing.php:864, ../includes/model/SingleListing.php:1112, ../includes/review/class-builder-screen.php:114
    48674867msgid "Your Email"
    48684868msgstr ""
    48694869
    48704870#: ../includes/model/ListingForm.php:817, ../views/admin-templates/listing-form/contact-info.php:371, ../views/admin-templates/listing-form/contact-info.php:452
    48714871msgid "You can drag the marker to your desired place to place a marker"
    48724872msgstr ""
    48734873
    48744874#: ../includes/model/ListingForm.php:818, ../views/admin-templates/listing-form/contact-info.php:431
    48754875msgid "Geocode was not successful for the following reason: "
    48764876msgstr ""
    48774877
    48784878#: ../includes/model/ListingForm.php:880
    48794879msgid "Notice: Your given directory type is not valid. Please use a valid directory type"
    48804880msgstr ""
    48814881
    48824882#: ../includes/model/ListingForm.php:877
    48834883msgid "There's something unexpected happen. Please contact site admin."
    48844884msgstr ""
    48854885
    48864886#: ../includes/model/ListingForm.php:875
    48874887msgid "Please add a directory type first %s"
    48884888msgstr ""
    48894889
    48904890#: ../includes/model/Listings.php:429
    48914891msgctxt "Listing grid review text"
    48924892msgid "Review"
    48934893msgid_plural "Reviews"
    48944894msgstr[0] ""
    48954895msgstr[1] ""
    48964896
    48974897#: ../includes/model/Listings.php:1107
    48984898msgid "No listing found."
    48994899msgstr ""
    49004900
    49014901#: ../includes/model/Listings.php:1540
    49024902msgid "Posted %s ago"
    49034903msgstr ""
    49044904
    49054905#: ../includes/model/Listings.php:1599
    49064906msgctxt "search result header"
    49074907msgid "%s result"
    49084908msgid_plural "%s results"
    49094909msgstr[0] ""
    49104910msgstr[1] ""
    49114911
    49124912#: ../includes/model/Listings.php:1596
    49134913msgctxt "search result header"
    49144914msgid "%s result in %s"
    49154915msgid_plural "%s results in %s"
    49164916msgstr[0] ""
    49174917msgstr[1] ""
    49184918
    49194919#: ../includes/model/Listings.php:1593
    49204920msgctxt "search result header"
    49214921msgid "%s result for %s"
    49224922msgid_plural "%s results for %s"
    49234923msgstr[0] ""
    49244924msgstr[1] ""
    49254925
    49264926#: ../includes/model/Listings.php:1590
    49274927msgctxt "search result header"
    49284928msgid "%s result for %s in %s"
    49294929msgid_plural "%s results for %s in %s"
    49304930msgstr[0] ""
    49314931msgstr[1] ""
    49324932
    49334933#: ../includes/model/ListingTaxonomy.php:336, ../templates/taxonomies/categories-grid.php:60, ../templates/taxonomies/categories-list.php:35, ../templates/taxonomies/locations-grid.php:48, ../templates/taxonomies/locations-list.php:37
    49344934msgid "<p>No Results found!</p>"
    49354935msgstr ""
    49364936
    49374937#: ../includes/model/SearchForm.php:103
    49384938msgid "What are you looking for?"
    49394939msgstr ""
    49404940
    49414941#: ../includes/model/SearchForm.php:199, ../templates/listing-form/fields/pricing.php:59, ../views/admin-templates/listing-form/add-listing.php:79
    49424942msgid "Or"
    49434943msgstr ""
    49444944
    49454945#: ../includes/model/SearchForm.php:626
    49464946msgid "Select Ratings"
    49474947msgstr ""
    49484948
    49494949#: ../includes/model/SearchForm.php:631
    49504950msgid "5 Star"
    49514951msgstr ""
    49524952
    49534953#: ../includes/model/SearchForm.php:636
    49544954msgid "4 Star & Up"
    49554955msgstr ""
    49564956
    49574957#: ../includes/model/SearchForm.php:641
    49584958msgid "3 Star & Up"
    49594959msgstr ""
    49604960
    49614961#: ../includes/model/SearchForm.php:646
    49624962msgid "2 Star & Up"
    49634963msgstr ""
    49644964
    49654965#: ../includes/model/SearchForm.php:651
    49664966msgid "1 Star & Up"
    49674967msgstr ""
    49684968
    49694969#: ../includes/model/SingleListing.php:842, ../includes/model/SingleListing.php:1107
    49704970msgctxt "Number of reviews"
    49714971msgid "Review"
    49724972msgid_plural "Reviews"
    49734973msgstr[0] ""
    49744974msgstr[1] ""
    49754975
    49764976#: ../includes/model/SingleListing.php:868, ../includes/model/SingleListing.php:1113
    49774977msgid "example@gmail.com"
    49784978msgstr ""
    49794979
    49804980#: ../includes/model/SingleListing.php:1046, ../templates/archive/fields/google-map.php:69, ../templates/archive/fields/openstreet-map.php:70
    49814981msgid "Get Direction"
    49824982msgstr ""
    49834983
    49844984#: ../includes/payments/class-order.php:51
    49854985msgid "No Order ID Provided"
    49864986msgstr ""
    49874987
    49884988#: ../includes/payments/class-order.php:72
    49894989msgid "Item(s)"
    49904990msgstr ""
    49914991
    49924992#: ../includes/payments/class-order.php:73, ../templates/payment/checkout.php:37, ../templates/payment/payment-receipt.php:101
    49934993msgid "Price [%s]"
    49944994msgstr ""
    49954995
    49964996#: ../includes/payments/class-order.php:90, ../templates/payment/checkout.php:109
    49974997msgid "Total amount [%s]"
    49984998msgstr ""
    49994999
    50005000#: ../includes/payments/class-order.php:116
    50015001msgctxt "Post Type General Name"
    50025002msgid "Order History"
    50035003msgstr ""
    50045004
    50055005#: ../includes/payments/class-order.php:117
    50065006msgctxt "Post Type Singular Name"
    50075007msgid "Order"
    50085008msgstr ""
    50095009
    50105010#: ../includes/payments/class-order.php:118, ../includes/payments/class-order.php:120
    50115011msgid "Order History"
    50125012msgstr ""
    50135013
    50145014#: ../includes/payments/class-order.php:119
    50155015msgid "Order"
    50165016msgstr ""
    50175017
    50185018#: ../includes/payments/class-order.php:121
    50195019msgid "Add New Order"
    50205020msgstr ""
    50215021
    50225022#: ../includes/payments/class-order.php:122, ../templates/listing-form/fields/social_info.php:31
    50235023msgid "Add New"
    50245024msgstr ""
    50255025
    50265026#: ../includes/payments/class-order.php:123
    50275027msgid "New Order"
    50285028msgstr ""
    50295029
    50305030#: ../includes/payments/class-order.php:124
    50315031msgid "Edit Order"
    50325032msgstr ""
    50335033
    50345034#: ../includes/payments/class-order.php:125
    50355035msgid "Update Order"
    50365036msgstr ""
    50375037
    50385038#: ../includes/payments/class-order.php:126
    50395039msgid "View Order"
    50405040msgstr ""
    50415041
    50425042#: ../includes/payments/class-order.php:127
    50435043msgid "Search Order"
    50445044msgstr ""
    50455045
    50465046#: ../includes/payments/class-order.php:128
    50475047msgid "No orders found"
    50485048msgstr ""
    50495049
    50505050#: ../includes/payments/class-order.php:129
    50515051msgid "No orders found in Trash"
    50525052msgstr ""
    50535053
    50545054#: ../includes/payments/class-order.php:134
    50555055msgid "This order post type will keep track of user's order and payment status"
    50565056msgstr ""
    50575057
    50585058#: ../includes/payments/class-order.php:228
    50595059msgid "All orders"
    50605060msgstr ""
    50615061
    50625062#: ../includes/payments/class-order.php:276
    50635063msgid "Order ID"
    50645064msgstr ""
    50655065
    50665066#: ../includes/payments/class-order.php:277, ../templates/payment/checkout.php:35
    50675067msgid "Details"
    50685068msgstr ""
    50695069
    50705070#: ../includes/payments/class-order.php:278
    50715071msgid "Amount"
    50725072msgstr ""
    50735073
    50745074#: ../includes/payments/class-order.php:279
    50755075msgid "Payment Type"
    50765076msgstr ""
    50775077
    50785078#: ../includes/payments/class-order.php:280, ../templates/payment/payment-receipt.php:84
    50795079msgid "Transaction ID"
    50805080msgstr ""
    50815081
    50825082#: ../includes/payments/class-order.php:281
    50835083msgid "Customer"
    50845084msgstr ""
    50855085
    50865086#: ../includes/payments/class-order.php:283
    50875087msgid "Order Status"
    50885088msgstr ""
    50895089
    50905090#: ../includes/payments/class-order.php:337
    50915091msgid "Free Submission"
    50925092msgstr ""
    50935093
    50945094#: ../includes/payments/class-order.php:435
    50955095msgid "Error updating post."
    50965096msgstr ""
    50975097
    50985098#: ../includes/payments/functions.php:51
    50995099msgid "Created"
    51005100msgstr ""
    51015101
    51025102#: ../includes/payments/functions.php:52, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3926, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3942, ../templates/dashboard/tab-my-listings.php:36
    51035103msgid "Pending"
    51045104msgstr ""
    51055105
    51065106#: ../includes/payments/functions.php:53
    51075107msgid "Completed"
    51085108msgstr ""
    51095109
    51105110#: ../includes/payments/functions.php:54
    51115111msgid "Failed"
    51125112msgstr ""
    51135113
    51145114#: ../includes/payments/functions.php:55
    51155115msgid "Cancelled"
    51165116msgstr ""
    51175117
    51185118#: ../includes/payments/functions.php:56
    51195119msgid "Refunded"
    51205120msgstr ""
    51215121
    51225122#: ../includes/payments/functions.php:74
    51235123msgid "Set Status to Created"
    51245124msgstr ""
    51255125
    51265126#: ../includes/payments/functions.php:75
    51275127msgid "Set Status to Pending"
    51285128msgstr ""
    51295129
    51305130#: ../includes/payments/functions.php:76
    51315131msgid "Set Status to Completed"
    51325132msgstr ""
    51335133
    51345134#: ../includes/payments/functions.php:77
    51355135msgid "Set Status to Failed"
    51365136msgstr ""
    51375137
    51385138#: ../includes/payments/functions.php:78
    51395139msgid "Set Status to Cancelled"
    51405140msgstr ""
    51415141
    51425142#: ../includes/payments/functions.php:79
    51435143msgid "Set Status to Refunded"
    51445144msgstr ""
    51455145
    51465146#: ../includes/payments/functions.php:757
    51475147msgid "Invalid"
    51485148msgstr ""
    51495149
    51505150#. translators: %s: image URL
    51515151#: ../includes/rest-api/functions.php:101
    51525152msgid "Invalid URL %s."
    51535153msgstr ""
    51545154
    51555155#. translators: %s: image URL
    51565156#: ../includes/rest-api/functions.php:123
    51575157msgid "Error getting remote image %s."
    51585158msgstr ""
    51595159
    51605160#. translators: %s: error message
    51615161#: ../includes/rest-api/functions.php:125
    51625162msgid "Error: %s"
    51635163msgstr ""
    51645164
    51655165#. translators: %s: error message
    51665166#: ../includes/rest-api/functions.php:144
    51675167msgid "Invalid image: %s"
    51685168msgstr ""
    51695169
    51705170#: ../includes/review/class-admin.php:53, ../includes/review/class-settings-screen.php:24, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2405
    51715171msgid "Review"
    51725172msgstr ""
    51735173
    51745174#: ../includes/review/class-admin.php:66, ../includes/review/class-admin.php:80, ../includes/review/class-admin.php:81
    51755175msgid "Reviews"
    51765176msgstr ""
    51775177
    51785178#: ../includes/review/class-admin.php:135
    51795179msgid "Review Data"
    51805180msgstr ""
    51815181
    51825182#: ../includes/review/class-admin.php:161, ../includes/review/class-markup.php:20, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3311
    51835183msgid "Rating"
    51845184msgstr ""
    51855185
    51865186#: ../includes/review/class-builder-screen.php:31
    51875187msgid "Review Form"
    51885188msgstr ""
    51895189
    51905190#: ../includes/review/class-builder-screen.php:52
    51915191msgid "Regular Fields"
    51925192msgstr ""
    51935193
    51945194#: ../includes/review/class-builder-screen.php:92
    51955195msgid "Show Cookies Consent"
    51965196msgstr ""
    51975197
    51985198#: ../includes/review/class-builder-screen.php:97
    51995199msgid "Comment Label"
    52005200msgstr ""
    52015201
    52025202#: ../includes/review/class-builder-screen.php:99
    52035203msgid "Comment"
    52045204msgstr ""
    52055205
    52065206#: ../includes/review/class-builder-screen.php:102
    52075207msgid "Comment Placeholder"
    52085208msgstr ""
    52095209
    52105210#: ../includes/review/class-builder-screen.php:104
    52115211msgid "Leave a review"
    52125212msgstr ""
    52135213
    52145214#: ../includes/review/class-builder-screen.php:112
    52155215msgid "Email Placeholder"
    52165216msgstr ""
    52175217
    52185218#: ../includes/review/class-builder-screen.php:117
    52195219msgid "Name Label"
    52205220msgstr ""
    52215221
    52225222#: ../includes/review/class-builder-screen.php:122
    52235223msgid "Name Placeholder"
    52245224msgstr ""
    52255225
    52265226#: ../includes/review/class-builder-screen.php:124
    52275227msgid "Your Name"
    52285228msgstr ""
    52295229
    52305230#: ../includes/review/class-builder-screen.php:127
    52315231msgid "Show Website Field?"
    52325232msgstr ""
    52335233
    52345234#: ../includes/review/class-builder-screen.php:132
    52355235msgid "Website Label"
    52365236msgstr ""
    52375237
    52385238#: ../includes/review/class-builder-screen.php:147
    52395239msgid "Website Placeholder"
    52405240msgstr ""
    52415241
    52425242#: ../includes/review/class-builder-screen.php:149
    52435243msgid "Website url"
    52445244msgstr ""
    52455245
    52465246#: ../includes/review/class-comment-form-processor.php:36, ../includes/review/class-comment-form-renderer.php:49
    52475247msgid "Review is disabled."
    52485248msgstr ""
    52495249
    52505250#: ../includes/review/class-comment-form-processor.php:40, ../includes/review/class-comment-form-processor.php:49, ../includes/review/class-comment-form-renderer.php:53, ../includes/review/class-comment-form-renderer.php:62, ../includes/rest-api/Version1/class-listings-actions-controller.php:101
    52515251msgid "Invalid listing id."
    52525252msgstr ""
    52535253
    52545254#: ../includes/review/class-comment-form-processor.php:45, ../includes/review/class-comment-form-renderer.php:58, ../includes/rest-api/Version1/class-users-controller.php:486
    52555255msgid "Invalid resource id."
    52565256msgstr ""
    52575257
    52585258#: ../includes/review/class-comment-form-processor.php:53, ../includes/review/class-comment-form-renderer.php:66, ../includes/review/class-comment-form-renderer.php:143, ../includes/review/class-review-walker.php:96, ../includes/review/directorist-review-functions.php:129
    52595259msgid "review"
    52605260msgstr ""
    52615261
    52625262#: ../includes/review/class-comment-form-processor.php:53, ../includes/review/class-comment-form-renderer.php:66, ../includes/review/class-comment-form-renderer.php:139, ../includes/review/class-review-walker.php:98, ../includes/review/directorist-review-functions.php:129
    52635263msgid "comment"
    52645264msgstr ""
    52655265
    52665266#: ../includes/review/class-comment-form-processor.php:57, ../includes/review/class-comment-form-renderer.php:70
    52675267msgid "Please login to update your %s."
    52685268msgstr ""
    52695269
    52705270#: ../includes/review/class-comment-form-processor.php:63, ../includes/review/class-comment-form-renderer.php:76
    52715271msgid "You are not allowed to edit this %s."
    52725272msgstr ""
    52735273
    52745274#: ../includes/review/class-comment-form-processor.php:69
    52755275msgid "Please share review rating."
    52765276msgstr ""
    52775277
    52785278#: ../includes/review/class-comment-form-processor.php:77, ../includes/review/init.php:77
    52795279msgid "To submit your reply, please add your comment."
    52805280msgstr ""
    52815281
    52825282#: ../includes/review/class-comment-form-processor.php:75, ../includes/review/init.php:79
    52835283msgid "To submit your review, please describe your rating."
    52845284msgstr ""
    52855285
    52865286#: ../includes/review/class-comment-form-processor.php:96
    52875287msgid "Something went wrong, try again."
    52885288msgstr ""
    52895289
    52905290#: ../includes/review/class-comment-form-renderer.php:97
    52915291msgid "Update Comment"
    52925292msgstr ""
    52935293
    52945294#: ../includes/review/class-comment-form-renderer.php:100
    52955295msgid "Update Review"
    52965296msgstr ""
    52975297
    52985298#: ../includes/review/class-comment-form-renderer.php:127
    52995299msgid "Cancel Editing"
    53005300msgstr ""
    53015301
    53025302#: ../includes/review/class-comment-form-renderer.php:150, ../includes/review/class-comment-form-renderer.php:290, ../templates/single-reviews.php:134
    53035303msgctxt "noun"
    53045304msgid "Comment"
    53055305msgstr ""
    53065306
    53075307#: ../includes/review/class-comment-form-renderer.php:154
    53085308msgid "Leave your update %s"
    53095309msgstr ""
    53105310
    53115311#: ../includes/review/class-comment-form-renderer.php:259
    53125312msgid "Save my name, email, and website in this browser for the next time I comment."
    53135313msgstr ""
    53145314
    53155315#. translators: %s: Asterisk symbol (*).
    53165316#: ../includes/review/class-comment-form-renderer.php:271
    53175317msgid "Required fields are marked %s"
    53185318msgstr ""
    53195319
    53205320#. translators: %s: Login URL.
    53215321#: ../includes/review/class-comment-form-renderer.php:298
    53225322msgid "You must be <a href=\"%s\">logged in</a> to post a comment."
    53235323msgstr ""
    53245324
    53255325#. translators: 1: Edit user link, 2: Accessibility text, 3: User name, 4: Logout URL.
    53265326#: ../includes/review/class-comment-form-renderer.php:307
    53275327msgid "<a href=\"%1$s\" aria-label=\"%2$s\">Logged in as %3$s</a>. <a href=\"%4$s\">Log out?</a>"
    53285328msgstr ""
    53295329
    53305330#. translators: %s: User name.
    53315331#: ../includes/review/class-comment-form-renderer.php:310
    53325332msgid "Logged in as %s. Edit your profile."
    53335333msgstr ""
    53345334
    53355335#: ../includes/review/class-comment-form-renderer.php:320
    53365336msgid "Your email address will not be published."
    53375337msgstr ""
    53385338
    53395339#: ../includes/review/class-comment-form-renderer.php:332
    53405340msgid "Leave a Reply"
    53415341msgstr ""
    53425342
    53435343#. translators: %s: Author of the comment being replied to.
    53445344#: ../includes/review/class-comment-form-renderer.php:334
    53455345msgid "Leave a Reply to %s"
    53465346msgstr ""
    53475347
    53485348#: ../includes/review/class-comment-form-renderer.php:339
    53495349msgid "Cancel reply"
    53505350msgstr ""
    53515351
    53525352#: ../includes/review/class-comment-form-renderer.php:340
    53535353msgid "Post Comment"
    53545354msgstr ""
    53555355
    53565356#: ../includes/review/class-comment.php:71
    53575357msgid "<strong>Error</strong>: Review is disabled."
    53585358msgstr ""
    53595359
    53605360#: ../includes/review/class-comment.php:76
    53615361msgid "<strong>Error</strong>: You must login to share review."
    53625362msgstr ""
    53635363
    53645364#: ../includes/review/class-comment.php:92
    53655365msgid "<strong>Error</strong>: Please share review rating."
    53665366msgstr ""
    53675367
    53685368#: ../includes/review/class-comment.php:99
    53695369msgid "<strong>Error</strong>: You are not allowed to share review on your own listing."
    53705370msgstr ""
    53715371
    53725372#: ../includes/review/class-comment.php:104
    53735373msgid "<strong>Error</strong>: You already shared a review."
    53745374msgstr ""
    53755375
    53765376#: ../includes/review/class-email.php:80
    53775377msgid "Dear User,<br /><br />A new review at {listing_url}.<br /><br />Name: {sender_name}<br />Email: {sender_email}<br />Review: {message}"
    53785378msgstr ""
    53795379
    53805380#: ../includes/review/class-email.php:126
    53815381msgid "Dear Admin,<br /><br />A new review at {listing_url}.<br /><br />Name: {sender_name}<br />Email: {sender_email}<br />Review: {message}"
    53825382msgstr ""
    53835383
    53845384#: ../includes/review/class-markup.php:22
    53855385msgid "Rate..."
    53865386msgstr ""
    53875387
    53885388#: ../includes/review/class-markup.php:23
    53895389msgid "Very poor"
    53905390msgstr ""
    53915391
    53925392#: ../includes/review/class-markup.php:24
    53935393msgid "Not that bad"
    53945394msgstr ""
    53955395
    53965396#: ../includes/review/class-markup.php:25
    53975397msgid "Average"
    53985398msgstr ""
    53995399
    54005400#: ../includes/review/class-markup.php:26
    54015401msgid "Good"
    54025402msgstr ""
    54035403
    54045404#: ../includes/review/class-markup.php:27
    54055405msgid "Perfect"
    54065406msgstr ""
    54075407
    54085408#: ../includes/review/class-review-walker.php:92
    54095409msgid "Your %1$s is awaiting moderation. This is a preview; your comment will be visible after it has been approved."
    54105410msgstr ""
    54115411
    54125412#: ../includes/review/class-review-walker.php:90
    54135413msgid "Your %1$s is awaiting moderation."
    54145414msgstr ""
    54155415
    54165416#. translators: 1: is the reply icon
    54175417#: ../includes/review/class-review-walker.php:116
    54185418msgid "%1$s Reply"
    54195419msgstr ""
    54205420
    54215421#: ../includes/review/class-review-walker.php:168
    54225422msgid "%s Edit"
    54235423msgstr ""
    54245424
    54255425#: ../includes/review/class-settings-screen.php:41
    54265426msgid "Enable Review"
    54275427msgstr ""
    54285428
    54295429#: ../includes/review/class-settings-screen.php:42
    54305430msgid "Allow your customers, users, or listing owners to share their review or comment on listings."
    54315431msgstr ""
    54325432
    54335433#: ../includes/review/class-settings-screen.php:47
    54345434msgid "Allow Owner Review"
    54355435msgstr ""
    54365436
    54375437#: ../includes/review/class-settings-screen.php:48
    54385438msgid "You are allowing listing owners to post review on his/her own listings."
    54395439msgstr ""
    54405440
    54415441#: ../includes/review/class-settings-screen.php:63
    54425442msgid "Allow Guest Review"
    54435443msgstr ""
    54445444
    54455445#: ../includes/review/class-settings-screen.php:64
    54465446msgid "Guest reviews are not published immediately even when the setting is enabled."
    54475447msgstr ""
    54485448
    54495449#: ../includes/review/class-settings-screen.php:79
    54505450msgid "Approve Immediately?"
    54515451msgstr ""
    54525452
    54535453#: ../includes/review/class-settings-screen.php:80
    54545454msgid "Are you sure you do not need any review or comment moderation?"
    54555455msgstr ""
    54565456
    54575457#: ../includes/review/class-settings-screen.php:95
    54585458msgid "Enable Reply"
    54595459msgstr ""
    54605460
    54615461#: ../includes/review/class-settings-screen.php:96
    54625462msgid "Allow users to reply to review or reply to another reply."
    54635463msgstr ""
    54645464
    54655465#: ../includes/review/class-settings-screen.php:172
    54665466msgid "Number of Reviews"
    54675467msgstr ""
    54685468
    54695469#: ../includes/review/class-settings-screen.php:173
    54705470msgid "Number of reviews to show per page. More than 10 is not recommended due to impact on loading speed."
    54715471msgstr ""
    54725472
    54735473#: ../includes/review/directorist-review-functions.php:101, ../templates/dashboard/listing-row.php:55, ../templates/single/top-actions.php:33, ../views/front-end/user-dashboard.php:334, ../views/admin-templates/post-types-manager/all-listing-types.php:148
    54745474msgid "Edit"
    54755475msgstr ""
    54765476
    54775477#: ../includes/review/directorist-review-functions.php:102
    54785478msgid "Edit %s"
    54795479msgstr ""
    54805480
    54815481#: ../includes/system-status/class-system-status.php:28, ../includes/system-status/class-system-status.php:28, ../includes/system-status/class-system-status.php:39
    54825482msgid "Help & Support"
    54835483msgstr ""
    54845484
    54855485#: ../includes/system-status/custom-url.php:25
    54865486msgid "Secret URL has been created."
    54875487msgstr ""
    54885488
    54895489#: ../includes/system-status/custom-url.php:36
    54905490msgid "Secret URL has been revoked."
    54915491msgstr ""
    54925492
    54935493#: ../includes/system-status/custom-url.php:80, ../includes/system-status/template.php:23
    54945494msgid "Remote Viewing"
    54955495msgstr ""
    54965496
    54975497#: ../includes/system-status/custom-url.php:86
    54985498msgid "Create a secret URL to show system information with others. If you face any technical problem to your site then you can share this URL with support agent for faster debugging."
    54995499msgstr ""
    55005500
    55015501#: ../includes/system-status/custom-url.php:87
    55025502msgid "This secret URL expires after 72 hours, but you can revoke it anytime."
    55035503msgstr ""
    55045504
    55055505#: ../includes/system-status/custom-url.php:97
    55065506msgid "Create URL"
    55075507msgstr ""
    55085508
    55095509#: ../includes/system-status/custom-url.php:98
    55105510msgid "Revoke URL"
    55115511msgstr ""
    55125512
    55135513#: ../includes/system-status/send-mail.php:60, ../views/admin-templates/post-types-manager/all-listing-types.php:33, ../views/admin-templates/settings-manager/settings.php:30
    55145514msgid "Support"
    55155515msgstr ""
    55165516
    55175517#: ../includes/system-status/send-mail.php:67
    55185518msgid "Sender Email Address"
    55195519msgstr ""
    55205520
    55215521#: ../includes/system-status/send-mail.php:68, ../includes/system-status/send-mail.php:72, ../templates/listing-form/quick-login.php:29
    55225522msgid "user@email.com"
    55235523msgstr ""
    55245524
    55255525#: ../includes/system-status/send-mail.php:71
    55265526msgid "Receiver Email Address"
    55275527msgstr ""
    55285528
    55295529#: ../includes/system-status/send-mail.php:79
    55305530msgid "Additional Message"
    55315531msgstr ""
    55325532
    55335533#: ../includes/system-status/send-mail.php:83
    55345534msgid "Remote Viewing Url"
    55355535msgstr ""
    55365536
    55375537#: ../includes/system-status/send-mail.php:89
    55385538msgid "Send Mail"
    55395539msgstr ""
    55405540
    55415541#: ../includes/system-status/system-info-template.php:17
    55425542msgid "WordPress environment"
    55435543msgstr ""
    55445544
    55455545#: ../includes/system-status/system-info-template.php:22, ../includes/system-status/system-information/system-information-template.php:64
    55465546msgid "Home URL"
    55475547msgstr ""
    55485548
    55495549#: ../includes/system-status/system-info-template.php:23, ../includes/system-status/system-information/system-information-template.php:66
    55505550msgid "The homepage URL of your site."
    55515551msgstr ""
    55525552
    55535553#: ../includes/system-status/system-info-template.php:27, ../includes/system-status/system-information/system-information-template.php:74
    55545554msgid "Site URL"
    55555555msgstr ""
    55565556
    55575557#: ../includes/system-status/system-info-template.php:28, ../includes/system-status/system-information/system-information-template.php:76
    55585558msgid "The root URL of your site."
    55595559msgstr ""
    55605560
    55615561#: ../includes/system-status/system-info-template.php:32, ../includes/system-status/system-information/system-information-template.php:84
    55625562msgid "Directorist version"
    55635563msgstr ""
    55645564
    55655565#: ../includes/system-status/system-info-template.php:33, ../includes/system-status/system-information/system-information-template.php:86
    55665566msgid "The version of GeoDirectory installed on your site."
    55675567msgstr ""
    55685568
    55695569#: ../includes/system-status/system-info-template.php:37, ../includes/system-status/system-information/system-information-template.php:94
    55705570msgid "WP version"
    55715571msgstr ""
    55725572
    55735573#: ../includes/system-status/system-info-template.php:38, ../includes/system-status/system-information/system-information-template.php:96
    55745574msgid "The version of WordPress installed on your site."
    55755575msgstr ""
    55765576
    55775577#: ../includes/system-status/system-info-template.php:42
    55785578msgid "WP multisite"
    55795579msgstr ""
    55805580
    55815581#: ../includes/system-status/system-info-template.php:43, ../includes/system-status/system-information/system-information-template.php:106
    55825582msgid "Whether or not you have WordPress Multisite enabled."
    55835583msgstr ""
    55845584
    55855585#: ../includes/system-status/system-info-template.php:47
    55865586msgid "WP memory limit"
    55875587msgstr ""
    55885588
    55895589#: ../includes/system-status/system-info-template.php:48, ../includes/system-status/system-information/system-information-template.php:116
    55905590msgid "The maximum amount of memory (RAM) that your site can use at one time."
    55915591msgstr ""
    55925592
    55935593#: ../includes/system-status/system-info-template.php:51, ../includes/system-status/system-information/system-information-template.php:123
    55945594msgid "%1$s - We recommend setting memory to at least 64MB. See: %2$s"
    55955595msgstr ""
    55965596
    55975597#: ../includes/system-status/system-info-template.php:51, ../includes/system-status/system-information/system-information-template.php:123
    55985598msgid "Increasing memory allocated to PHP"
    55995599msgstr ""
    56005600
    56015601#: ../includes/system-status/system-info-template.php:58, ../includes/system-status/system-information/system-information-template.php:130
    56025602msgid "WP debug mode"
    56035603msgstr ""
    56045604
    56055605#: ../includes/system-status/system-info-template.php:59, ../includes/system-status/system-information/system-information-template.php:132
    56065606msgid "Displays whether or not WordPress is in Debug Mode."
    56075607msgstr ""
    56085608
    56095609#: ../includes/system-status/system-info-template.php:69, ../includes/system-status/system-information/system-information-template.php:144
    56105610msgid "WP cron"
    56115611msgstr ""
    56125612
    56135613#: ../includes/system-status/system-info-template.php:70, ../includes/system-status/system-information/system-information-template.php:146
    56145614msgid "Displays whether or not WP Cron Jobs are enabled."
    56155615msgstr ""
    56165616
    56175617#: ../includes/system-status/system-info-template.php:80, ../includes/system-status/system-information/system-information-template.php:170
    56185618msgid "Language"
    56195619msgstr ""
    56205620
    56215621#: ../includes/system-status/system-info-template.php:81, ../includes/system-status/system-information/system-information-template.php:172
    56225622msgid "The current language used by WordPress. Default = English"
    56235623msgstr ""
    56245624
    56255625#: ../includes/system-status/system-info-template.php:90, ../includes/system-status/system-information/system-information-template.php:26
    56265626msgid "PHP"
    56275627msgstr ""
    56285628
    56295629#: ../includes/system-status/system-info-template.php:106, ../includes/system-status/system-information/system-information-template.php:202
    56305630msgid "Server environment"
    56315631msgstr ""
    56325632
    56335633#: ../includes/system-status/system-info-template.php:111
    56345634msgid "Server info"
    56355635msgstr ""
    56365636
    56375637#: ../includes/system-status/system-info-template.php:112, ../includes/system-status/system-information/system-information-template.php:204
    56385638msgid "Information about the web server that is currently hosting your site."
    56395639msgstr ""
    56405640
    56415641#: ../includes/system-status/system-info-template.php:125, ../includes/system-status/system-information/system-information-template.php:221
    56425642msgid "MySQL version"
    56435643msgstr ""
    56445644
    56455645#: ../includes/system-status/system-info-template.php:126, ../includes/system-status/system-information/system-information-template.php:223
    56465646msgid "The version of MySQL installed on your hosting server."
    56475647msgstr ""
    56485648
    56495649#: ../includes/system-status/system-info-template.php:130, ../includes/system-status/system-information/system-information-template.php:231
    56505650msgid "%1$s - We recommend a minimum MySQL version of 5.6. See: %2$s"
    56515651msgstr ""
    56525652
    56535653#: ../includes/system-status/system-info-template.php:130, ../includes/system-status/system-information/system-information-template.php:231
    56545654msgid "WordPress requirements"
    56555655msgstr ""
    56565656
    56575657#: ../includes/system-status/system-info-template.php:139, ../includes/system-status/system-information/system-information-template.php:240
    56585658msgid "Max upload size"
    56595659msgstr ""
    56605660
    56615661#: ../includes/system-status/system-info-template.php:140, ../includes/system-status/system-information/system-information-template.php:242
    56625662msgid "The largest filesize that can be uploaded to your WordPress installation."
    56635663msgstr ""
    56645664
    56655665#: ../includes/system-status/system-info-template.php:144, ../includes/system-status/system-information/system-information-template.php:250
    56665666msgid "Default timezone is UTC"
    56675667msgstr ""
    56685668
    56695669#: ../includes/system-status/system-info-template.php:145, ../includes/system-status/system-information/system-information-template.php:252
    56705670msgid "The default timezone for your server."
    56715671msgstr ""
    56725672
    56735673#: ../includes/system-status/system-info-template.php:148, ../includes/system-status/system-information/system-information-template.php:260
    56745674msgid "Default timezone is %s - it should be UTC"
    56755675msgstr ""
    56765676
    56775677#: ../includes/system-status/system-info-template.php:155, ../includes/system-status/system-information/system-information-template.php:267
    56785678msgid "fsockopen/cURL"
    56795679msgstr ""
    56805680
    56815681#: ../includes/system-status/system-info-template.php:156, ../includes/system-status/system-information/system-information-template.php:269, ../includes/system-status/system-information/system-information-template.php:285
    56825682msgid "Payment gateways can use cURL to communicate with remote servers to authorize payments, other plugins may also use it when communicating with remote services."
    56835683msgstr ""
    56845684
    56855685#: ../includes/system-status/system-info-template.php:161, ../includes/system-status/system-information/system-information-template.php:278
    56865686msgid "Your server does not have fsockopen or cURL enabled - PayPal IPN and other scripts which communicate with other servers will not work. Contact your hosting provider."
    56875687msgstr ""
    56885688
    56895689#: ../includes/system-status/system-info-template.php:166, ../includes/system-status/system-information/system-information-template.php:283
    56905690msgid "SoapClient"
    56915691msgstr ""
    56925692
    56935693#: ../includes/system-status/system-info-template.php:167
    56945694msgid "Some webservices like shipping use SOAP to get information from remote servers, for example, live shipping quotes from FedEx require SOAP to be installed."
    56955695msgstr ""
    56965696
    56975697#: ../includes/system-status/system-info-template.php:172, ../includes/system-status/system-information/system-information-template.php:294
    56985698msgid "Your server does not have the %s class enabled - some gateway plugins which use SOAP may not work as expected."
    56995699msgstr ""
    57005700
    57015701#: ../includes/system-status/system-info-template.php:177, ../includes/system-status/system-information/system-information-template.php:298
    57025702msgid "DOMDocument"
    57035703msgstr ""
    57045704
    57055705#: ../includes/system-status/system-info-template.php:178, ../includes/system-status/system-information/system-information-template.php:300
    57065706msgid "HTML/Multipart emails use DOMDocument to generate inline CSS in templates."
    57075707msgstr ""
    57085708
    57095709#: ../includes/system-status/system-info-template.php:183, ../includes/system-status/system-information/system-information-template.php:310
    57105710msgid "Your server does not have the %s class enabled - HTML/Multipart emails, and also some extensions, will not work without DOMDocument."
    57115711msgstr ""
    57125712
    57135713#: ../includes/system-status/system-info-template.php:188, ../includes/system-status/system-information/system-information-template.php:315
    57145714msgid "GZip"
    57155715msgstr ""
    57165716
    57175717#: ../includes/system-status/system-info-template.php:189, ../includes/system-status/system-information/system-information-template.php:317
    57185718msgid "GZip (gzopen) is used to open the GEOIP database from MaxMind."
    57195719msgstr ""
    57205720
    57215721#: ../includes/system-status/system-info-template.php:194, ../includes/system-status/system-information/system-information-template.php:326
    57225722msgid "Your server does not support the %s function - this is required to use the GeoIP database from MaxMind."
    57235723msgstr ""
    57245724
    57255725#: ../includes/system-status/system-info-template.php:199, ../includes/system-status/system-information/system-information-template.php:331
    57265726msgid "Multibyte string"
    57275727msgstr ""
    57285728
    57295729#: ../includes/system-status/system-info-template.php:200, ../includes/system-status/system-information/system-information-template.php:333
    57305730msgid "Multibyte String (mbstring) is used to convert character encoding, like for emails or converting characters to lowercase."
    57315731msgstr ""
    57325732
    57335733#: ../includes/system-status/system-info-template.php:205, ../includes/system-status/system-information/system-information-template.php:343
    57345734msgid "Your server does not support the %s functions - this is required for better character encoding. Some fallbacks will be used instead for it."
    57355735msgstr ""
    57365736
    57375737#: ../includes/system-status/system-info-template.php:210, ../includes/system-status/system-information/system-information-template.php:348
    57385738msgid "Remote post"
    57395739msgstr ""
    57405740
    57415741#: ../includes/system-status/system-info-template.php:211, ../includes/system-status/system-information/system-information-template.php:350
    57425742msgid "PayPal uses this method of communicating when sending back transaction information."
    57435743msgstr ""
    57445744
    57455745#: ../includes/system-status/system-info-template.php:216, ../includes/system-status/system-info-template.php:227, ../includes/system-status/system-information/system-information-template.php:360, ../includes/system-status/system-information/system-information-template.php:377
    57465746msgid "%s failed. Contact your hosting provider."
    57475747msgstr ""
    57485748
    57495749#: ../includes/system-status/system-info-template.php:221, ../includes/system-status/system-information/system-information-template.php:365
    57505750msgid "Remote get"
    57515751msgstr ""
    57525752
    57535753#: ../includes/system-status/system-info-template.php:222
    57545754msgid "GeoDirectory plugins may use this method of communication when checking for plugin updates."
    57555755msgstr ""
    57565756
    57575757#: ../includes/system-status/system-info-template.php:258
    57585758msgid "User platform"
    57595759msgstr ""
    57605760
    57615761#: ../includes/system-status/system-info-template.php:263, ../includes/system-status/system-information/system-information-template.php:390
    57625762msgid "Platform"
    57635763msgstr ""
    57645764
    57655765#: ../includes/system-status/system-info-template.php:268, ../includes/system-status/system-information/system-information-template.php:399
    57665766msgid "Browser name"
    57675767msgstr ""
    57685768
    57695769#: ../includes/system-status/system-info-template.php:273, ../includes/system-status/system-information/system-information-template.php:410
    57705770msgid "Browser version"
    57715771msgstr ""
    57725772
    57735773#: ../includes/system-status/system-info-template.php:278, ../includes/system-status/system-information/system-information-template.php:419
    57745774msgid "User agent"
    57755775msgstr ""
    57765776
    57775777#: ../includes/system-status/system-info-template.php:288, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4565, ../includes/system-status/system-information/system-information-template.php:35, ../views/admin-templates/settings-manager/settings.php:12
    57785778msgid "Settings"
    57795779msgstr ""
    57805780
    57815781#: ../includes/system-status/system-info-template.php:311, ../includes/system-status/system-information/system-information-template.php:38
    57825782msgid "Database"
    57835783msgstr ""
    57845784
    57855785#: ../includes/system-status/system-info-template.php:316, ../includes/system-status/system-information/system-information-template.php:461
    57865786msgid "Database prefix"
    57875787msgstr ""
    57885788
    57895789#: ../includes/system-status/system-info-template.php:320, ../includes/system-status/system-information/system-information-template.php:469
    57905790msgid "%1$s - We recommend using a prefix with less than 20 characters."
    57915791msgstr ""
    57925792
    57935793#: ../includes/system-status/system-info-template.php:328, ../includes/system-status/system-information/system-information-template.php:476
    57945794msgid "Total Database Size"
    57955795msgstr ""
    57965796
    57975797#: ../includes/system-status/system-info-template.php:334, ../includes/system-status/system-information/system-information-template.php:487
    57985798msgid "Database Data Size"
    57995799msgstr ""
    58005800
    58015801#: ../includes/system-status/system-info-template.php:340, ../includes/system-status/system-information/system-information-template.php:496
    58025802msgid "Database Index Size"
    58035803msgstr ""
    58045804
    58055805#: ../includes/system-status/system-info-template.php:353, ../includes/system-status/system-info-template.php:364, ../includes/system-status/system-information/system-information-template.php:516, ../includes/system-status/system-information/system-information-template.php:529
    58065806msgid "Data: %.2fMB + Index: %.2fMB"
    58075807msgstr ""
    58085808
    58095809#: ../includes/system-status/system-info-template.php:351, ../includes/system-status/system-information/system-information-template.php:514
    58105810msgid "Table does not exist"
    58115811msgstr ""
    58125812
    58135813#: ../includes/system-status/system-info-template.php:374, ../includes/system-status/system-information/system-information-template.php:41
    58145814msgid "Post Type Counts"
    58155815msgstr ""
    58165816
    58175817#: ../includes/system-status/system-info-template.php:395, ../includes/system-status/system-information/system-information-template.php:44
    58185818msgid "Security"
    58195819msgstr ""
    58205820
    58215821#: ../includes/system-status/system-info-template.php:400, ../includes/system-status/system-information/system-information-template.php:564
    58225822msgid "Secure connection (HTTPS)"
    58235823msgstr ""
    58245824
    58255825#: ../includes/system-status/system-info-template.php:401, ../includes/system-status/system-information/system-information-template.php:566
    58265826msgid "Is the connection to your site secure?"
    58275827msgstr ""
    58285828
    58295829#: ../includes/system-status/system-info-template.php:406, ../includes/system-status/system-information/system-information-template.php:575
    58305830msgid "HTTPS is not enabled on your site."
    58315831msgstr ""
    58325832
    58335833#: ../includes/system-status/system-info-template.php:411, ../includes/system-status/system-information/system-information-template.php:580
    58345834msgid "Hide errors from visitors"
    58355835msgstr ""
    58365836
    58375837#: ../includes/system-status/system-info-template.php:412, ../includes/system-status/system-information/system-information-template.php:582
    58385838msgid "Error messages can contain sensitive information about your site environment. These should be hidden from untrusted visitors."
    58395839msgstr ""
    58405840
    58415841#: ../includes/system-status/system-info-template.php:417, ../includes/system-status/system-information/system-information-template.php:591
    58425842msgid "Error messages should not be shown to visitors."
    58435843msgstr ""
    58445844
    58455845#: ../includes/system-status/system-info-template.php:427
    58465846msgid "Active plugins"
    58475847msgstr ""
    58485848
    58495849#: ../includes/system-status/system-info-template.php:439, ../includes/system-status/system-information/system-information-template.php:611
    58505850msgid "Visit plugin homepage"
    58515851msgstr ""
    58525852
    58535853#. translators: %s: plugin latest version
    58545854#. translators: %s: theme latest version
    58555855#. translators: %s: parant theme latest version
    58565856#. translators: %s: plugin latest version
    58575857#. translators: %s: theme latest version
    58585858#. translators: %s: parant theme latest version
    58595859#: ../includes/system-status/system-info-template.php:446, ../includes/system-status/system-info-template.php:488, ../includes/system-status/system-info-template.php:519, ../includes/system-status/system-information/system-information-template.php:618, ../includes/system-status/system-information/system-information-template.php:675, ../includes/system-status/system-information/system-information-template.php:730
    58605860msgid "%s is available"
    58615861msgstr ""
    58625862
    58635863#: ../includes/system-status/system-info-template.php:450, ../includes/system-status/system-information/system-information-template.php:622
    58645864msgid "Network enabled"
    58655865msgstr ""
    58665866
    58675867#. translators: %s: plugin author
    58685868#. translators: %s: plugin author
    58695869#: ../includes/system-status/system-info-template.php:458, ../includes/system-status/system-information/system-information-template.php:635
    58705870msgid "by %s"
    58715871msgstr ""
    58725872
    58735873#: ../includes/system-status/system-info-template.php:472, ../includes/system-status/system-information/system-information-template.php:50
    58745874msgid "Theme"
    58755875msgstr ""
    58765876
    58775877#: ../includes/system-status/system-info-template.php:478, ../includes/system-status/system-information/system-information-template.php:655
    58785878msgid "The name of the current active theme."
    58795879msgstr ""
    58805880
    58815881#: ../includes/system-status/system-info-template.php:482, ../includes/system-status/system-information/system-information-template.php:663
    58825882msgid "Version"
    58835883msgstr ""
    58845884
    58855885#: ../includes/system-status/system-info-template.php:483, ../includes/system-status/system-information/system-information-template.php:665
    58865886msgid "The installed version of the current active theme."
    58875887msgstr ""
    58885888
    58895889#: ../includes/system-status/system-info-template.php:493, ../includes/system-status/system-information/system-information-template.php:681
    58905890msgid "Author URL"
    58915891msgstr ""
    58925892
    58935893#: ../includes/system-status/system-info-template.php:494, ../includes/system-status/system-information/system-information-template.php:683
    58945894msgid "The theme developers URL."
    58955895msgstr ""
    58965896
    58975897#: ../includes/system-status/system-info-template.php:498, ../includes/system-status/system-information/system-information-template.php:691
    58985898msgid "Child theme"
    58995899msgstr ""
    59005900
    59015901#: ../includes/system-status/system-info-template.php:499, ../includes/system-status/system-information/system-information-template.php:693
    59025902msgid "Displays whether or not the current theme is a child theme."
    59035903msgstr ""
    59045904
    59055905#: ../includes/system-status/system-info-template.php:501, ../includes/system-status/system-information/system-information-template.php:700
    59065906msgid "If you are modifying Directorist on a parent theme that you did not build personally we recommend using a child theme. See: <a href=\"%s\" target=\"_blank\">How to create a child theme</a>"
    59075907msgstr ""
    59085908
    59095909#: ../includes/system-status/system-info-template.php:508, ../includes/system-status/system-information/system-information-template.php:708
    59105910msgid "Parent theme name"
    59115911msgstr ""
    59125912
    59135913#: ../includes/system-status/system-info-template.php:509, ../includes/system-status/system-information/system-information-template.php:710
    59145914msgid "The name of the parent theme."
    59155915msgstr ""
    59165916
    59175917#: ../includes/system-status/system-info-template.php:513, ../includes/system-status/system-information/system-information-template.php:718
    59185918msgid "Parent theme version"
    59195919msgstr ""
    59205920
    59215921#: ../includes/system-status/system-info-template.php:514, ../includes/system-status/system-information/system-information-template.php:720
    59225922msgid "The installed version of the parent theme."
    59235923msgstr ""
    59245924
    59255925#: ../includes/system-status/system-info-template.php:524, ../includes/system-status/system-information/system-information-template.php:736
    59265926msgid "Parent theme author URL"
    59275927msgstr ""
    59285928
    59295929#: ../includes/system-status/system-info-template.php:525, ../includes/system-status/system-information/system-information-template.php:738
    59305930msgid "The parent theme developers URL."
    59315931msgstr ""
    59325932
    59335933#: ../includes/system-status/system-info-template.php:535, ../includes/system-status/system-information/system-information-template.php:53
    59345934msgid "Templates"
    59355935msgstr ""
    59365936
    59375937#: ../includes/system-status/system-info-template.php:535
    59385938msgid "This section shows any files that are overriding the default GeoDirectory template pages."
    59395939msgstr ""
    59405940
    59415941#: ../includes/system-status/system-info-template.php:572, ../includes/system-status/system-info-template.php:542, ../includes/system-status/system-information/system-information-template.php:797, ../includes/system-status/system-information/system-information-template.php:759
    59425942msgid "Overrides"
    59435943msgstr ""
    59445944
    59455945#: ../includes/system-status/system-info-template.php:552, ../includes/system-status/system-information/system-information-template.php:777
    59465946msgid "%1$s version %2$s is out of date. The core version is %3$s"
    59475947msgstr ""
    59485948
    59495949#: ../includes/system-status/system-info-template.php:582
    59505950msgid "Outdated templates"
    59515951msgstr ""
    59525952
    59535953#: ../includes/system-status/template.php:9
    59545954msgid "System Status"
    59555955msgstr ""
    59565956
    59575957#: ../includes/system-status/template.php:17, ../includes/system-status/system-information/system-information-template.php:16
    59585958msgid "System Information"
    59595959msgstr ""
    59605960
    59615961#: ../includes/system-status/template.php:20, ../includes/system-status/warning.php:8
    59625962msgid "Warning "
    59635963msgstr ""
    59645964
    59655965#: ../includes/system-status/template.php:26
    59665966msgid "Contact Support"
    59675967msgstr ""
    59685968
    59695969#: ../includes/system-status/warning.php:34
    59705970msgid "No warning found!"
    59715971msgstr ""
    59725972
    59735973#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:151
    59745974msgid "Assign to"
    59755975msgstr ""
    59765976
    59775977#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:155
    59785978msgid "Form"
    59795979msgstr ""
    59805980
    59815981#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:159, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1008, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3363, ../views/front-end/user-dashboard.php:637
    59825982msgid "Category"
    59835983msgstr ""
    59845984
    59855985#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:172, ../templates/search-form/fields/category.php:15
    59865986msgid "Select Category"
    59875987msgstr ""
    59885988
    59895989#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:267
    59905990msgid "Migration Successful"
    59915991msgstr ""
    59925992
    59935993#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:267
    59945994msgid "Migration Failed"
    59955995msgstr ""
    59965996
    59975997#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:354
    59985998msgid "File is missing"
    59995999msgstr ""
    60006000
    60016001#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:365, ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:170
    60026002msgid "The data is invalid"
    60036003msgstr ""
    60046004
    60056005#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:466, ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:77
    60066006msgid "Name is missing"
    60076007msgstr ""
    60086008
    60096009#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:529
    60106010msgid "Key"
    60116011msgstr ""
    60126012
    60136013#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:539, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2159, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2497
    60146014msgid "Preset Fields"
    60156015msgstr ""
    60166016
    60176017#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:540, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2160, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2376, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2498, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2933
    60186018msgid "Click on a field to use it"
    60196019msgstr ""
    60206020
    60216021#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:567, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:614, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:662, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:822, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:863, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:932, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:969, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1046, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1125, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1164, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1205, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1249, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1293, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1334, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1375, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1508, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1575, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1631, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1682, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1733, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1789, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1840, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2518, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2539, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2560, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2650, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2670, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2690, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2710, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2730, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2750, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2770, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2790, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2811, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2832, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2853
    60226022msgid "Placeholder"
    60236023msgstr ""
    60246024
    60256025#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:590
    60266026msgid "Textarea"
    60276027msgstr ""
    60286028
    60296029#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:594
    60306030msgid "WP Editor"
    60316031msgstr ""
    60326032
    60336033#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:631, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:672, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:778, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:832, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:873, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:942, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:999, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1056, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1096, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1135, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1215, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1259, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1303, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1344, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1385, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1421, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1477, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1518, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1590, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1646, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1697, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1753, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1804, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1855, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1901, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1964, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2027, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2089, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2146
    60346034msgid "Only For Admin Use"
    60356035msgstr ""
    60366036
    60376037#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:639, ../views/admin-templates/listing-form/add-listing.php:43
    60386038msgid "Tagline"
    60396039msgstr ""
    60406040
    60416041#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:680, ../views/admin-templates/listing-form/add-listing.php:61
    60426042msgid "Pricing"
    60436043msgstr ""
    60446044
    60456045#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:698, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:717
    60466046msgid "Select Pricing Type"
    60476047msgstr ""
    60486048
    60496049#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:730
    60506050msgid "Price Range Placeholder"
    60516051msgstr ""
    60526052
    60536053#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:735
    60546054msgid "Price Unit Field Type"
    60556055msgstr ""
    60566056
    60576057#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:752
    60586058msgid "Price Unit Field label"
    60596059msgstr ""
    60606060
    60616061#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:765
    60626062msgid "Price Unit Field Placeholder"
    60636063msgstr ""
    60646064
    60656065#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:785
    60666066msgid "Price Unit"
    60676067msgstr ""
    60686068
    60696069#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:790, ../templates/listing-form/fields/pricing.php:15, ../views/admin-templates/listing-form/add-listing.php:24
    60706070msgid "Price Range"
    60716071msgstr ""
    60726072
    60736073#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:841, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3013
    60746074msgid "Excerpt"
    60756075msgstr ""
    60766076
    60776077#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:901, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:975, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1027
    60786078msgid "Selection Type"
    60796079msgstr ""
    60806080
    60816081#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:904, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:978, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1030
    60826082msgid "Single Selection"
    60836083msgstr ""
    60846084
    60856085#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:908, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:982, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1034
    60866086msgid "Multi Selection"
    60876087msgstr ""
    60886088
    60896089#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:915, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:994, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1041
    60906090msgid "Allow New"
    60916091msgstr ""
    60926092
    60936093#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1086
    60946094msgid "Enter Coordinates Label"
    60956095msgstr ""
    60966096
    60976097#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1087
    60986098msgid "Or Enter Coordinates (latitude and longitude) Manually"
    60996099msgstr ""
    61006100
    61016101#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1126, ../views/admin-templates/listing-form/contact-info.php:15
    61026102msgid "Listing address eg. New York, USA"
    61036103msgstr ""
    61046104
    61056105#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1220, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1264
    61066106msgid "Link with WhatsApp"
    61076107msgstr ""
    61086108
    61096109#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1456
    61106110msgid "Select Files Label"
    61116111msgstr ""
    61126112
    61136113#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1461
    61146114msgid "Max Image Limit"
    61156115msgstr ""
    61166116
    61176117#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1466
    61186118msgid "Max Upload Size Per Image in MB"
    61196119msgstr ""
    61206120
    61216121#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1467
    61226122msgid "Here 0 means unlimited."
    61236123msgstr ""
    61246124
    61256125#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1472
    61266126msgid "Total Upload Size in MB"
    61276127msgstr ""
    61286128
    61296129#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1553
    61306130msgid "Custom Fields"
    61316131msgstr ""
    61326132
    61336133#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1554
    61346134msgid "Click on a field type you want to create. Need help?"
    61356135msgstr ""
    61366136
    61376137#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1626
    61386138msgid "Rows"
    61396139msgstr ""
    61406140
    61416141#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1738
    61426142msgid "Open in new tab"
    61436143msgstr ""
    61446144
    61456145#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1937, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2000, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2062
    61466146msgid "Options"
    61476147msgstr ""
    61486148
    61496149#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1938, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2001, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2063
    61506150msgid "Add Option"
    61516151msgstr ""
    61526152
    61536153#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1942, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2005, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2067
    61546154msgid "Option Value"
    61556155msgstr ""
    61566156
    61576157#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:1947, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2010, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2072
    61586158msgid "Option Label"
    61596159msgstr ""
    61606160
    61616161#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2106
    61626162msgid "File Upload"
    61636163msgstr ""
    61646164
    61656165#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2123
    61666166msgid "Select a file type"
    61676167msgstr ""
    61686168
    61696169#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2124
    61706170msgid "By selecting a file type you are going to allow your users to upload only that or those type(s) of file."
    61716171msgstr ""
    61726172
    61736173#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2130
    61746174msgid "File Size"
    61756175msgstr ""
    61766176
    61776177#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2131
    61786178msgid "Set maximum file size to upload"
    61796179msgstr ""
    61806180
    61816181#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2250
    61826182msgid "Use rel=\"nofollow\" in Website Link"
    61836183msgstr ""
    61846184
    61856185#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2375, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2932
    61866186msgid "Other Fields"
    61876187msgstr ""
    61886188
    61896189#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2381
    61906190msgid "Custom Content"
    61916191msgstr ""
    61926192
    61936193#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2397
    61946194msgid "Content"
    61956195msgstr ""
    61966196
    61976197#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2399
    61986198msgid "You can use any text or shortcode"
    61996199msgstr ""
    62006200
    62016201#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2410, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2432, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2459, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2481, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4083
    62026202msgid "Custom block ID"
    62036203msgstr ""
    62046204
    62056205#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2415, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2437, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2464, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2486, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4088
    62066206msgid "Custom block Classes"
    62076207msgstr ""
    62086208
    62096209#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2444
    62106210msgid "Contact Listings Owner Form"
    62116211msgstr ""
    62126212
    62136213#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2471, ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:738
    62146214msgid "Related Listings"
    62156215msgstr ""
    62166216
    62176217#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2503
    62186218msgid "Search Bar"
    62196219msgstr ""
    62206220
    62216221#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2565
    62226222msgid "Location Source"
    62236223msgstr ""
    62246224
    62256225#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2568
    62266226msgid "Display from Listing Location"
    62276227msgstr ""
    62286228
    62296229#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2572
    62306230msgid "Display from Map API"
    62316231msgstr ""
    62326232
    62336233#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2610
    62346234msgid "Price Range Min Placeholder"
    62356235msgstr ""
    62366236
    62376237#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2615
    62386238msgid "Price Range Max Placeholder"
    62396239msgstr ""
    62406240
    62416241#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2948
    62426242msgid "Radius Search"
    62436243msgstr ""
    62446244
    62456245#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2974
    62466246msgid "Radius Search Based on"
    62476247msgstr ""
    62486248
    62496249#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:2990, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4286
    62506250msgid "Listing Title"
    62516251msgstr ""
    62526252
    62536253#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3000, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4288
    62546254msgid "Listing Title Settings"
    62556255msgstr ""
    62566256
    62576257#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3004, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4297
    62586258msgid "Show Tagline"
    62596259msgstr ""
    62606260
    62616261#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3023
    62626262msgid "Excerpt Settings"
    62636263msgstr ""
    62646264
    62656265#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3027
    62666266msgid "Words Limit"
    62676267msgstr ""
    62686268
    62696269#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3034
    62706270msgid "Show Readmore"
    62716271msgstr ""
    62726272
    62736273#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3039
    62746274msgid "Read More Text"
    62756275msgstr ""
    62766276
    62776277#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3048, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4430
    62786278msgid "Listings Location"
    62796279msgstr ""
    62806280
    62816281#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3058
    62826282msgid "Listings Location Settings"
    62836283msgstr ""
    62846284
    62856285#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3067, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3121, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3149, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3177, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3205, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3233, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3261, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3289, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3429, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3457, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3485, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3513, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3541, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3592, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3620, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3648
    62866286msgid "Show Label"
    62876287msgstr ""
    62886288
    62896289#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3076, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3080
    62906290msgid "Posted Date"
    62916291msgstr ""
    62926292
    62936293#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3089
    62946294msgid "Date Type"
    62956295msgstr ""
    62966296
    62976297#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3102
    62986298msgid "Listings Website"
    62996299msgstr ""
    63006300
    63016301#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3112
    63026302msgid "Listings Website Settings"
    63036303msgstr ""
    63046304
    63056305#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3130
    63066306msgid "Listings Zip"
    63076307msgstr ""
    63086308
    63096309#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3140
    63106310msgid "Listings Zip Settings"
    63116311msgstr ""
    63126312
    63136313#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3158
    63146314msgid "Listings Email"
    63156315msgstr ""
    63166316
    63176317#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3168
    63186318msgid "Listings Email Settings"
    63196319msgstr ""
    63206320
    63216321#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3186
    63226322msgid "Listings Fax"
    63236323msgstr ""
    63246324
    63256325#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3196
    63266326msgid "Listings Fax Settings"
    63276327msgstr ""
    63286328
    63296329#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3214
    63306330msgid "Listings Phone"
    63316331msgstr ""
    63326332
    63336333#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3224
    63346334msgid "Listings Phone Settings"
    63356335msgstr ""
    63366336
    63376337#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3242
    63386338msgid "Listings Phone 2"
    63396339msgstr ""
    63406340
    63416341#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3252
    63426342msgid "Listings Phone 2 Settings"
    63436343msgstr ""
    63446344
    63456345#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3270
    63466346msgid "Listings Address"
    63476347msgstr ""
    63486348
    63496349#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3280
    63506350msgid "Listings Address Settings"
    63516351msgstr ""
    63526352
    63536353#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3298, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4378
    63546354msgid "Listings Price"
    63556355msgstr ""
    63566356
    63576357#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3339, ../templates/single/fields/bookmark.php:11
    63586358msgid "Favorite"
    63596359msgstr ""
    63606360
    63616361#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3350
    63626362msgid "View Count Settings"
    63636363msgstr ""
    63646364
    63656365#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3373
    63666366msgid "Category Settings"
    63676367msgstr ""
    63686368
    63696369#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3386
    63706370msgid "User Avatar"
    63716371msgstr ""
    63726372
    63736373#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3391
    63746374msgid "User Avatar Settings"
    63756375msgstr ""
    63766376
    63776377#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3395
    63786378msgid "Align"
    63796379msgstr ""
    63806380
    63816381#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3420
    63826382msgid "Text Settings"
    63836383msgstr ""
    63846384
    63856385#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3438
    63866386msgid "Number"
    63876387msgstr ""
    63886388
    63896389#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3466
    63906390msgid "URL"
    63916391msgstr ""
    63926392
    63936393#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3476
    63946394msgid "URL Settings"
    63956395msgstr ""
    63966396
    63976397#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3504
    63986398msgid "Date Settings"
    63996399msgstr ""
    64006400
    64016401#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3522
    64026402msgid "Time"
    64036403msgstr ""
    64046404
    64056405#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3532
    64066406msgid "Time Settings"
    64076407msgstr ""
    64086408
    64096409#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3550
    64106410msgid "Color Picker"
    64116411msgstr ""
    64126412
    64136413#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3560
    64146414msgid "Color Picker Settings"
    64156415msgstr ""
    64166416
    64176417#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3583
    64186418msgid "Select Settings"
    64196419msgstr ""
    64206420
    64216421#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3601
    64226422msgid "Checkbox"
    64236423msgstr ""
    64246424
    64256425#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3629
    64266426msgid "Radio"
    64276427msgstr ""
    64286428
    64296429#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3639
    64306430msgid "Radio Settings"
    64316431msgstr ""
    64326432
    64336433#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3671, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3787, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4444
    64346434msgid "Top Right"
    64356435msgstr ""
    64366436
    64376437#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3736, ../templates/single/section-author_info.php:36
    64386438msgid "Avatar"
    64396439msgstr ""
    64406440
    64416441#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3796, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3843
    64426442msgid "Body Top"
    64436443msgstr ""
    64446444
    64456445#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3802, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3849
    64466446msgid "Body Right"
    64476447msgstr ""
    64486448
    64496449#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3808, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3855
    64506450msgid "Body Bottom"
    64516451msgstr ""
    64526452
    64536453#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3892
    64546454msgid "fa fa-home"
    64556455msgstr ""
    64566456
    64576457#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3911
    64586458msgid "Default expiration in days"
    64596459msgstr ""
    64606460
    64616461#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3921
    64626462msgid "New Listing Default Status"
    64636463msgstr ""
    64646464
    64656465#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3930, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3946
    64666466msgid "Publish"
    64676467msgstr ""
    64686468
    64696469#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3937
    64706470msgid "Edited Listing Default Status"
    64716471msgstr ""
    64726472
    64736473#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3953
    64746474msgid "Global Listing Type"
    64756475msgstr ""
    64766476
    64776477#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3963, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4062
    64786478msgid "Add Section"
    64796479msgstr ""
    64806480
    64816481#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:3964
    64826482msgid "You can not add in this section"
    64836483msgstr ""
    64846484
    64856485#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4005
    64866486msgid "Enable Listing Preview"
    64876487msgstr ""
    64886488
    64896489#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4010, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4017
    64906490msgid "Submit Button Label"
    64916491msgstr ""
    64926492
    64936493#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4036, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4054
    64946494msgid "Place the linking text between two <code>%</code> mark. Ex: %link% "
    64956495msgstr ""
    64966496
    64976497#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4073
    64986498msgid "Block/Section Icon"
    64996499msgstr ""
    65006500
    65016501#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4093
    65026502msgid "Shortcode"
    65036503msgstr ""
    65046504
    65056505#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4094
    65066506msgid "Click the wizerd button to generate the shortcode."
    65076507msgstr ""
    65086508
    65096509#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4131
    65106510msgid "Custom Single Listing Page"
    65116511msgstr ""
    65126512
    65136513#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4136
    65146514msgid "Single listing page"
    65156515msgstr ""
    65166516
    65176517#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4152
    65186518msgid "Generate shortcodes"
    65196519msgstr ""
    65206520
    65216521#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4153
    65226522msgid "Generate single listing shortcodes"
    65236523msgstr ""
    65246524
    65256525#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4187
    65266526msgid "Similar listings logics"
    65276527msgstr ""
    65286528
    65296529#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4189
    65306530msgid "Must match category and tag"
    65316531msgstr ""
    65326532
    65336533#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4190
    65346534msgid "Must match category or tag"
    65356535msgstr ""
    65366536
    65376537#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4196
    65386538msgid "Listing from same author"
    65396539msgstr ""
    65406540
    65416541#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4203
    65426542msgid "Number of listings to show"
    65436543msgstr ""
    65446544
    65456545#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4210
    65466546msgid "Number of columns"
    65476547msgstr ""
    65486548
    65496549#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4228
    65506550msgid "Basic"
    65516551msgstr ""
    65526552
    65536553#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4251
    65546554msgid "Back"
    65556555msgstr ""
    65566556
    65576557#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4253
    65586558msgid "Back Button Settings"
    65596559msgstr ""
    65606560
    65616561#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4265
    65626562msgid "Section Title"
    65636563msgstr ""
    65646564
    65656565#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4267
    65666566msgid "Section Title Options"
    65676567msgstr ""
    65686568
    65696569#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4292
    65706570msgid "Show Title"
    65716571msgstr ""
    65726572
    65736573#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4307
    65746574msgid "Description Settings"
    65756575msgstr ""
    65766576
    65776577#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4311
    65786578msgid "Show Description"
    65796579msgstr ""
    65806580
    65816581#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4326
    65826582msgid "Bookmark"
    65836583msgstr ""
    65846584
    65856585#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4331, ../templates/single/fields/share.php:11
    65866586msgid "Share"
    65876587msgstr ""
    65886588
    65896589#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4334
    65906590msgid "Share Settings"
    65916591msgstr ""
    65926592
    65936593#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4346, ../templates/single/fields/report.php:11
    65946594msgid "Report"
    65956595msgstr ""
    65966596
    65976597#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4349
    65986598msgid "Report Settings"
    65996599msgstr ""
    66006600
    66016601#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4362
    66026602msgid "Listings Slider"
    66036603msgstr ""
    66046604
    66056605#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4366
    66066606msgid "Listings Slider Settings"
    66076607msgstr ""
    66086608
    66096609#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4370
    66106610msgid "Enable Footer Thumbnail"
    66116611msgstr ""
    66126612
    66136613#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4383
    66146614msgid "Badges"
    66156615msgstr ""
    66166616
    66176617#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4390
    66186618msgid "Display New Badge"
    66196619msgstr ""
    66206620
    66216621#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4395
    66226622msgid "Display Popular Badge"
    66236623msgstr ""
    66246624
    66256625#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4400
    66266626msgid "Display Featured Badge"
    66276627msgstr ""
    66286628
    66296629#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4409
    66306630msgid "Listings Reviews"
    66316631msgstr ""
    66326632
    66336633#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4414
    66346634msgid "Listings Ratings"
    66356635msgstr ""
    66366636
    66376637#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4419
    66386638msgid "Listings Category"
    66396639msgstr ""
    66406640
    66416641#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4450
    66426642msgid "Thumbnail"
    66436643msgstr ""
    66446644
    66456645#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4456
    66466646msgid "Quick info"
    66476647msgstr ""
    66486648
    66496649#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4469, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4487
    66506650msgid "With Preview Image"
    66516651msgstr ""
    66526652
    66536653#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4475, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4493
    66546654msgid "Without Preview Image"
    66556655msgstr ""
    66566656
    66576657#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4509
    66586658msgid "Directory icon"
    66596659msgstr ""
    66606660
    66616661#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4514
    66626662msgid "Default listing status"
    66636663msgstr ""
    66646664
    66656665#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4523
    66666666msgid "Default time to expire a listing."
    66676667msgstr ""
    66686668
    66696669#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4530
    66706670msgid "Default Preview"
    66716671msgstr ""
    66726672
    66736673#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4531
    66746674msgid "This image will be used when listing preview image is not present. Leave empty to hide the preview image completely."
    66756675msgstr ""
    66766676
    66776677#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4538
    66786678msgid "Export The Config File"
    66796679msgstr ""
    66806680
    66816681#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4539
    66826682msgid "Export all the form, layout and settings"
    66836683msgstr ""
    66846684
    66856685#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4552
    66866686msgid "Form Fields"
    66876687msgstr ""
    66886688
    66896689#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4556
    66906690msgid "Select or create fields for the add listing form"
    66916691msgstr ""
    66926692
    66936693#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4557, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4621, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4662, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4676, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4693
    66946694msgid "Need help?"
    66956695msgstr ""
    66966696
    66976697#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4577
    66986698msgid "Privacy and Policy"
    66996699msgstr ""
    67006700
    67016701#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4586
    67026702msgid "Submission Settings"
    67036703msgstr ""
    67046704
    67056705#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4599
    67066706msgid "Single Page Layout"
    67076707msgstr ""
    67086708
    67096709#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4603, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4607
    67106710msgid "Listing Header"
    67116711msgstr ""
    67126712
    67136713#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4616, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4620
    67146714msgid "Contents"
    67156715msgstr ""
    67166716
    67176717#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4629
    67186718msgid "Other Settings"
    67196719msgstr ""
    67206720
    67216721#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4652
    67226722msgid "All Listing Layout"
    67236723msgstr ""
    67246724
    67256725#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4656
    67266726msgid "All Listing Grid Layout"
    67276727msgstr ""
    67286728
    67296729#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4660
    67306730msgid "Create and customize the listing card for grid view"
    67316731msgstr ""
    67326732
    67336733#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4662, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4676
    67346734msgid "Read the documentation or open a ticket in our helpdesk."
    67356735msgstr ""
    67366736
    67376737#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4670
    67386738msgid "All Listing List Layout"
    67396739msgstr ""
    67406740
    67416741#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4674
    67426742msgid "Create and customize the listing card for listing view"
    67436743msgstr ""
    67446744
    67456745#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4692
    67466746msgid "Customize the search form for this listing type"
    67476747msgstr ""
    67486748
    67496749#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4711
    67506750msgid "Guest Email Label"
    67516751msgstr ""
    67526752
    67536753#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4717
    67546754msgid "Guest Email Placeholder"
    67556755msgstr ""
    67566756
    67576757#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4724
    67586758msgid "Need Help?"
    67596759msgstr ""
    67606760
    67616761#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4781, ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4785
    67626762msgid "Directory Builder"
    67636763msgstr ""
    67646764
    67656765#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4966
    67666766msgid "Failed to delete the listing type"
    67676767msgstr ""
    67686768
    67696769#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4959
    67706770msgid "Successfully Deleted the listing type"
    67716771msgstr ""
    67726772
    67736773#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4977
    67746774msgctxt "taxonomy general name"
    67756775msgid "Listing Type"
    67766776msgstr ""
    67776777
    67786778#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4978
    67796779msgctxt "taxonomy singular name"
    67806780msgid "Listing Type"
    67816781msgstr ""
    67826782
    67836783#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:4979
    67846784msgid "Search Listing Type"
    67856785msgstr ""
    67866786
    67876787#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:5032
    67886788msgid "All types"
    67896789msgstr ""
    67906790
    67916791#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:5036
    67926792msgid "Image types"
    67936793msgstr ""
    67946794
    67956795#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:5040
    67966796msgid "Audio types"
    67976797msgstr ""
    67986798
    67996799#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:5044
    68006800msgid "Video types"
    68016801msgstr ""
    68026802
    68036803#: ../includes/modules/multi-directory-setup/class-multi-directory-manager.php:5048
    68046804msgid "Document types"
    68056805msgstr ""
    68066806
    68076807#: ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:659
    68086808msgid "Features"
    68096809msgstr ""
    68106810
    68116811#: ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:681
    68126812msgid "Contact Information"
    68136813msgstr ""
    68146814
    68156815#: ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:692
    68166816msgid "Video"
    68176817msgstr ""
    68186818
    68196819#: ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:713
    68206820msgid "Contact Listings Owner"
    68216821msgstr ""
    68226822
    68236823#: ../includes/modules/multi-directory-setup/class-multi-directory-migration.php:1590
    68246824msgid "Fetured"
    68256825msgstr ""
    68266826
    68276827#: ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:87, ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:107, ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:238
    68286828msgid "The name already exists"
    68296829msgstr ""
    68306830
    68316831#: ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:125
    68326832msgid "The directory has been created successfully"
    68336833msgstr ""
    68346834
    68356835#: ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:200
    68366836msgid "Invalid term ID"
    68376837msgstr ""
    68386838
    68396839#: ../includes/modules/multi-directory-setup/trait-multi-directory-helper.php:262
    68406840msgid "The directory has been updated successfully"
    68416841msgstr ""
    68426842
    68436843#. translators: %s: items limit
    68446844#: ../includes/rest-api/Version1/class-abstract-controller.php:200
    68456845msgid "Unable to accept more than %s items for this request."
    68466846msgstr ""
    68476847
    68486848#: ../includes/rest-api/Version1/class-abstract-controller.php:349, ../includes/rest-api/Version1/class-abstract-controller.php:367, ../includes/rest-api/Version1/class-abstract-controller.php:390, ../includes/rest-api/Version1/class-abstract-controller.php:433
    68496849msgid "An invalid setting value was passed."
    68506850msgstr ""
    68516851
    68526852#: ../includes/rest-api/Version1/class-abstract-controller.php:493
    68536853msgid "List of created resources."
    68546854msgstr ""
    68556855
    68566856#: ../includes/rest-api/Version1/class-abstract-controller.php:501
    68576857msgid "List of updated resources."
    68586858msgstr ""
    68596859
    68606860#: ../includes/rest-api/Version1/class-abstract-controller.php:509
    68616861msgid "List of delete resources."
    68626862msgstr ""
    68636863
    68646864#: ../includes/rest-api/Version1/class-abstract-posts-controller.php:137, ../includes/rest-api/Version1/class-abstract-terms-controller.php:129, ../includes/rest-api/Version1/class-listing-reviews-controller.php:79, ../includes/rest-api/Version1/class-users-controller.php:120
    68656865msgid "Sorry, you cannot list resources."
    68666866msgstr ""
    68676867
    68686868#: ../includes/rest-api/Version1/class-abstract-posts-controller.php:151, ../includes/rest-api/Version1/class-abstract-terms-controller.php:148, ../includes/rest-api/Version1/class-users-controller.php:139
    68696869msgid "Sorry, you are not allowed to create resources."
    68706870msgstr ""
    68716871
    68726872#: ../includes/rest-api/Version1/class-abstract-posts-controller.php:167, ../includes/rest-api/Version1/class-abstract-terms-controller.php:167, ../includes/rest-api/Version1/class-listing-reviews-controller.php:96, ../includes/rest-api/Version1/class-users-controller.php:158
    68736873msgid "Sorry, you cannot view this resource."
    68746874msgstr ""
    68756875
    68766876#: ../includes/rest-api/Version1/class-abstract-posts-controller.php:183, ../includes/rest-api/Version1/class-abstract-terms-controller.php:186, ../includes/rest-api/Version1/class-users-controller.php:177
    68776877msgid "Sorry, you are not allowed to edit this resource."
    68786878msgstr ""
    68796879
    68806880#: ../includes/rest-api/Version1/class-abstract-posts-controller.php:199, ../includes/rest-api/Version1/class-abstract-terms-controller.php:205, ../includes/rest-api/Version1/class-users-controller.php:196, ../includes/rest-api/Version1/class-users-favorites-controller.php:106
    68816881msgid "Sorry, you are not allowed to delete this resource."
    68826882msgstr ""
    68836883
    68846884#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:65
    68856885msgid "Name for the resource."
    68866886msgstr ""
    68876887
    68886888#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:81, ../includes/rest-api/Version1/class-builder-controller.php:54, ../includes/rest-api/Version1/class-builder-controller.php:163, ../includes/rest-api/Version1/class-categories-controller.php:114, ../includes/rest-api/Version1/class-directories-controller.php:105, ../includes/rest-api/Version1/class-listing-reviews-controller.php:54, ../includes/rest-api/Version1/class-listing-reviews-controller.php:390, ../includes/rest-api/Version1/class-listings-controller.php:67, ../includes/rest-api/Version1/class-listings-controller.php:916, ../includes/rest-api/Version1/class-locations-controller.php:111, ../includes/rest-api/Version1/class-tags-controller.php:84, ../includes/rest-api/Version1/class-users-controller.php:68, ../includes/rest-api/Version1/class-users-controller.php:692
    68896889msgid "Unique identifier for the resource."
    68906890msgstr ""
    68916891
    68926892#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:107, ../includes/rest-api/Version1/class-builder-controller.php:80, ../includes/rest-api/Version1/class-users-controller.php:94
    68936893msgid "Required to be true, as resource does not support trashing."
    68946894msgstr ""
    68956895
    68966896#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:222
    68976897msgid "Taxonomy does not exist."
    68986898msgstr ""
    68996899
    69006900#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:231, ../includes/rest-api/Version1/class-users-account-controller.php:123, ../includes/rest-api/Version1/class-users-account-controller.php:163, ../includes/rest-api/Version1/class-users-controller.php:216, ../includes/rest-api/Version1/class-users-favorites-controller.php:126
    69016901msgid "Resource does not exist."
    69026902msgstr ""
    69036903
    69046904#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:412, ../includes/rest-api/Version1/class-abstract-terms-controller.php:506
    69056905msgid "Can not set resource parent, taxonomy is not hierarchical."
    69066906msgstr ""
    69076907
    69086908#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:555
    69096909msgid "Resource does not support trashing."
    69106910msgstr ""
    69116911
    69126912#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:565, ../includes/rest-api/Version1/class-users-controller.php:506
    69136913msgid "The resource cannot be deleted."
    69146914msgstr ""
    69156915
    69166916#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:702, ../includes/rest-api/Version1/class-listing-reviews-controller.php:494, ../includes/rest-api/Version1/class-listings-controller.php:1351, ../includes/rest-api/Version1/class-users-controller.php:887
    69176917msgid "Ensure result set excludes specific IDs."
    69186918msgstr ""
    69196919
    69206920#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:711
    69216921msgid "Limit result set to specific ids."
    69226922msgstr ""
    69236923
    69246924#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:720
    69256925msgid "Offset the result set by a specific number of items. Applies to hierarchical taxonomies only."
    69266926msgstr ""
    69276927
    69286928#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:726, ../includes/rest-api/Version1/class-listing-reviews-controller.php:514, ../includes/rest-api/Version1/class-listings-controller.php:1370, ../includes/rest-api/Version1/class-users-controller.php:912
    69296929msgid "Order sort attribute ascending or descending."
    69306930msgstr ""
    69316931
    69326932#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:737
    69336933msgid "Sort collection by resource attribute."
    69346934msgstr ""
    69356935
    69366936#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:753
    69376937msgid "Whether to hide resources not assigned to any listings."
    69386938msgstr ""
    69396939
    69406940#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:759
    69416941msgid "Limit result set to resources assigned to a specific parent. Applies to hierarchical taxonomies only."
    69426942msgstr ""
    69436943
    69446944#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:765
    69456945msgid "Limit result set to resources assigned to a specific listing."
    69466946msgstr ""
    69476947
    69486948#: ../includes/rest-api/Version1/class-abstract-terms-controller.php:771
    69496949msgid "Limit result set to resources with a specific slug."
    69506950msgstr ""
    69516951
    69526952#: ../includes/rest-api/Version1/class-builder-controller.php:169, ../includes/rest-api/Version1/class-categories-controller.php:120, ../includes/rest-api/Version1/class-directories-controller.php:111, ../includes/rest-api/Version1/class-listings-controller.php:1164
    69536953msgid "Category name."
    69546954msgstr ""
    69556955
    69566956#: ../includes/rest-api/Version1/class-builder-controller.php:177, ../includes/rest-api/Version1/class-categories-controller.php:128, ../includes/rest-api/Version1/class-directories-controller.php:119, ../includes/rest-api/Version1/class-locations-controller.php:125, ../includes/rest-api/Version1/class-tags-controller.php:98
    69576957msgid "An alphanumeric identifier for the resource unique to its type."
    69586958msgstr ""
    69596959
    69606960#: ../includes/rest-api/Version1/class-builder-controller.php:185, ../includes/rest-api/Version1/class-directories-controller.php:127
    69616961msgid "Preview image url."
    69626962msgstr ""
    69636963
    69646964#: ../includes/rest-api/Version1/class-builder-controller.php:190, ../includes/rest-api/Version1/class-categories-controller.php:201, ../includes/rest-api/Version1/class-directories-controller.php:132
    69656965msgid "Icon class."
    69666966msgstr ""
    69676967
    69686968#: ../includes/rest-api/Version1/class-builder-controller.php:198, ../includes/rest-api/Version1/class-categories-controller.php:220, ../includes/rest-api/Version1/class-directories-controller.php:140, ../includes/rest-api/Version1/class-locations-controller.php:209, ../includes/rest-api/Version1/class-tags-controller.php:114
    69696969msgid "Number of published listings for the resource."
    69706970msgstr ""
    69716971
    69726972#: ../includes/rest-api/Version1/class-builder-controller.php:204, ../includes/rest-api/Version1/class-directories-controller.php:146
    69736973msgid "Default directory status."
    69746974msgstr ""
    69756975
    69766976#: ../includes/rest-api/Version1/class-builder-controller.php:210, ../includes/rest-api/Version1/class-directories-controller.php:152
    69776977msgid "Newly created listing status under this directory."
    69786978msgstr ""
    69796979
    69806980#: ../includes/rest-api/Version1/class-builder-controller.php:220, ../includes/rest-api/Version1/class-directories-controller.php:162
    69816981msgid "Edited listing status under this directory."
    69826982msgstr ""
    69836983
    69846984#: ../includes/rest-api/Version1/class-builder-controller.php:230, ../includes/rest-api/Version1/class-directories-controller.php:172
    69856985msgid "Validity days for listings under this directory."
    69866986msgstr ""
    69876987
    69886988#: ../includes/rest-api/Version1/class-builder-controller.php:235, ../includes/rest-api/Version1/class-directories-controller.php:177
    69896989msgid "The date the directory was created, in the site's timezone."
    69906990msgstr ""
    69916991
    69926992#: ../includes/rest-api/Version1/class-categories-controller.php:136, ../includes/rest-api/Version1/class-locations-controller.php:133
    69936993msgid "The ID for the parent of the resource."
    69946994msgstr ""
    69956995
    69966996#: ../includes/rest-api/Version1/class-categories-controller.php:141, ../includes/rest-api/Version1/class-locations-controller.php:138, ../includes/rest-api/Version1/class-tags-controller.php:106
    69976997msgid "HTML description of the resource."
    69986998msgstr ""
    69996999
    70007000#: ../includes/rest-api/Version1/class-categories-controller.php:149, ../includes/rest-api/Version1/class-locations-controller.php:146
    70017001msgid "Image data."
    70027002msgstr ""
    70037003
    70047004#: ../includes/rest-api/Version1/class-categories-controller.php:154, ../includes/rest-api/Version1/class-listings-controller.php:1246, ../includes/rest-api/Version1/class-locations-controller.php:151, ../includes/rest-api/Version1/class-users-controller.php:776
    70057005msgid "Image ID."
    70067006msgstr ""
    70077007
    70087008#: ../includes/rest-api/Version1/class-categories-controller.php:159, ../includes/rest-api/Version1/class-listings-controller.php:1251, ../includes/rest-api/Version1/class-locations-controller.php:156, ../includes/rest-api/Version1/class-users-controller.php:781
    70097009msgid "The date the image was created, in the site's timezone."
    70107010msgstr ""
    70117011
    70127012#: ../includes/rest-api/Version1/class-categories-controller.php:165, ../includes/rest-api/Version1/class-listings-controller.php:1257, ../includes/rest-api/Version1/class-locations-controller.php:162, ../includes/rest-api/Version1/class-users-controller.php:787
    70137013msgid "The date the image was created, as GMT."
    70147014msgstr ""
    70157015
    70167016#: ../includes/rest-api/Version1/class-categories-controller.php:171, ../includes/rest-api/Version1/class-listings-controller.php:1263, ../includes/rest-api/Version1/class-locations-controller.php:168, ../includes/rest-api/Version1/class-users-controller.php:793
    70177017msgid "The date the image was last modified, in the site's timezone."
    70187018msgstr ""
    70197019
    70207020#: ../includes/rest-api/Version1/class-categories-controller.php:177, ../includes/rest-api/Version1/class-listings-controller.php:1269, ../includes/rest-api/Version1/class-locations-controller.php:174, ../includes/rest-api/Version1/class-users-controller.php:799
    70217021msgid "The date the image was last modified, as GMT."
    70227022msgstr ""
    70237023
    70247024#: ../includes/rest-api/Version1/class-categories-controller.php:183, ../includes/rest-api/Version1/class-listings-controller.php:1275, ../includes/rest-api/Version1/class-locations-controller.php:180, ../includes/rest-api/Version1/class-users-controller.php:805
    70257025msgid "Image URL."
    70267026msgstr ""
    70277027
    70287028#: ../includes/rest-api/Version1/class-categories-controller.php:189, ../includes/rest-api/Version1/class-listings-controller.php:1281, ../includes/rest-api/Version1/class-locations-controller.php:186
    70297029msgid "Image name."
    70307030msgstr ""
    70317031
    70327032#: ../includes/rest-api/Version1/class-categories-controller.php:194, ../includes/rest-api/Version1/class-listings-controller.php:1286, ../includes/rest-api/Version1/class-locations-controller.php:191
    70337033msgid "Image alternative text."
    70347034msgstr ""
    70357035
    70367036#: ../includes/rest-api/Version1/class-categories-controller.php:209, ../includes/rest-api/Version1/class-locations-controller.php:198
    70377037msgid "Directory type ids for this resource."
    70387038msgstr ""
    70397039
    70407040#: ../includes/rest-api/Version1/class-categories-controller.php:253, ../includes/rest-api/Version1/class-locations-controller.php:237
    70417041msgid "Multi directory is disabled."
    70427042msgstr ""
    70437043
    70447044#: ../includes/rest-api/Version1/class-categories-controller.php:269, ../includes/rest-api/Version1/class-locations-controller.php:253
    70457045msgid "Directory do not exist."
    70467046msgstr ""
    70477047
    70487048#: ../includes/rest-api/Version1/class-categories-controller.php:280, ../includes/rest-api/Version1/class-locations-controller.php:264
    70497049msgid "Invalid directory id."
    70507050msgstr ""
    70517051
    70527052#: ../includes/rest-api/Version1/class-categories-controller.php:338, ../includes/rest-api/Version1/class-locations-controller.php:322
    70537053msgid "Limit result set to specific directory type ids."
    70547054msgstr ""
    70557055
    70567056#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:396
    70577057msgid "The date the review was created, in the site's timezone."
    70587058msgstr ""
    70597059
    70607060#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:402
    70617061msgid "The date the review was created, as GMT."
    70627062msgstr ""
    70637063
    70647064#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:408
    70657065msgid "Unique identifier for the listing that the review belongs to."
    70667066msgstr ""
    70677067
    70687068#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:413
    70697069msgid "Status of the review."
    70707070msgstr ""
    70717071
    70727072#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:420
    70737073msgid "Reviewer name."
    70747074msgstr ""
    70757075
    70767076#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:425
    70777077msgid "Reviewer email."
    70787078msgstr ""
    70797079
    70807080#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:431
    70817081msgid "The content of the review."
    70827082msgstr ""
    70837083
    70847084#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:439
    70857085msgid "Review rating (0 to 5)."
    70867086msgstr ""
    70877087
    70887088#. translators: %d: avatar image size in pixels
    70897089#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:453
    70907090msgid "Avatar URL with image size of %d pixels."
    70917091msgstr ""
    70927092
    70937093#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:460
    70947094msgid "Avatar URLs for the object reviewer."
    70957095msgstr ""
    70967096
    70977097#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:484
    70987098msgid "Limit response to resources published after a given ISO8601 compliant date."
    70997099msgstr ""
    71007100
    71017101#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:489
    71027102msgid "Limit response to reviews published before a given ISO8601 compliant date."
    71037103msgstr ""
    71047104
    71057105#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:502, ../includes/rest-api/Version1/class-listings-controller.php:1357, ../includes/rest-api/Version1/class-users-controller.php:896
    71067106msgid "Limit result set to specific IDs."
    71077107msgstr ""
    71087108
    71097109#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:510, ../includes/rest-api/Version1/class-listings-controller.php:1363, ../includes/rest-api/Version1/class-users-controller.php:905
    71107110msgid "Offset the result set by a specific number of items."
    71117111msgstr ""
    71127112
    71137113#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:523, ../includes/rest-api/Version1/class-listings-controller.php:1377, ../includes/rest-api/Version1/class-users-controller.php:920
    71147114msgid "Sort collection by object attribute."
    71157115msgstr ""
    71167116
    71177117#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:535
    71187118msgid "Limit result set to reviews assigned to specific user IDs."
    71197119msgstr ""
    71207120
    71217121#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:542
    71227122msgid "Ensure result set excludes reviews assigned to specific user IDs."
    71237123msgstr ""
    71247124
    71257125#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:550
    71267126msgid "Limit result set to that from a specific author email."
    71277127msgstr ""
    71287128
    71297129#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:556
    71307130msgid "Limit result set to reviews assigned to specific listing IDs."
    71317131msgstr ""
    71327132
    71337133#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:564
    71347134msgid "Limit result set to reviews assigned a specific status."
    71357135msgstr ""
    71367136
    71377137#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:596
    71387138msgid "Invalid review ID."
    71397139msgstr ""
    71407140
    71417141#: ../includes/rest-api/Version1/class-listing-reviews-controller.php:611, ../includes/rest-api/Version1/class-users-favorites-controller.php:153, ../includes/rest-api/Version1/class-users-favorites-controller.php:200
    71427142msgid "Invalid listing ID."
    71437143msgstr ""
    71447144
    71457145#: ../includes/rest-api/Version1/class-listings-actions-controller.php:45
    71467146msgid "Action identifier."
    71477147msgstr ""
    71487148
    71497149#: ../includes/rest-api/Version1/class-listings-actions-controller.php:70
    71507150msgid "Sorry, you are not allowed to execute action."
    71517151msgstr ""
    71527152
    71537153#: ../includes/rest-api/Version1/class-listings-actions-controller.php:85
    71547154msgid "Not authorized to execute this action."
    71557155msgstr ""
    71567156
    71577157#: ../includes/rest-api/Version1/class-listings-actions-controller.php:108
    71587158msgid "Message is required to report."
    71597159msgstr ""
    71607160
    71617161#: ../includes/rest-api/Version1/class-listings-actions-controller.php:116
    71627162msgid "name, email and message are required."
    71637163msgstr ""
    71647164
    71657165#: ../includes/rest-api/Version1/class-listings-actions-controller.php:182
    71667166msgid "Action name."
    71677167msgstr ""
    71687168
    71697169#: ../includes/rest-api/Version1/class-listings-actions-controller.php:187
    71707170msgid "Action initiator name."
    71717171msgstr ""
    71727172
    71737173#: ../includes/rest-api/Version1/class-listings-actions-controller.php:192
    71747174msgid "Action email."
    71757175msgstr ""
    71767176
    71777177#: ../includes/rest-api/Version1/class-listings-actions-controller.php:198
    71787178msgid "Action message."
    71797179msgstr ""
    71807180
    71817181#: ../includes/rest-api/Version1/class-listings-controller.php:494
    71827182msgid "Invalid ID."
    71837183msgstr ""
    71847184
    71857185#: ../includes/rest-api/Version1/class-listings-controller.php:922
    71867186msgid "Listing name."
    71877187msgstr ""
    71887188
    71897189#: ../includes/rest-api/Version1/class-listings-controller.php:927
    71907190msgid "Listing slug."
    71917191msgstr ""
    71927192
    71937193#: ../includes/rest-api/Version1/class-listings-controller.php:932
    71947194msgid "Listing URL."
    71957195msgstr ""
    71967196
    71977197#: ../includes/rest-api/Version1/class-listings-controller.php:939
    71987198msgid "The date the listing was created, in the site's timezone."
    71997199msgstr ""
    72007200
    72017201#: ../includes/rest-api/Version1/class-listings-controller.php:945
    72027202msgid "The date the listing was created, as GMT."
    72037203msgstr ""
    72047204
    72057205#: ../includes/rest-api/Version1/class-listings-controller.php:951
    72067206msgid "The date the listing was last modified, in the site's timezone."
    72077207msgstr ""
    72087208
    72097209#: ../includes/rest-api/Version1/class-listings-controller.php:957
    72107210msgid "The date the listing was last modified, as GMT."
    72117211msgstr ""
    72127212
    72137213#: ../includes/rest-api/Version1/class-listings-controller.php:963
    72147214msgid "Listing description."
    72157215msgstr ""
    72167216
    72177217#: ../includes/rest-api/Version1/class-listings-controller.php:968
    72187218msgid "Listing short description."
    72197219msgstr ""
    72207220
    72217221#: ../includes/rest-api/Version1/class-listings-controller.php:973
    72227222msgid "Zip code."
    72237223msgstr ""
    72247224
    72257225#: ../includes/rest-api/Version1/class-listings-controller.php:978
    72267226msgid "Phone number 1."
    72277227msgstr ""
    72287228
    72297229#: ../includes/rest-api/Version1/class-listings-controller.php:983
    72307230msgid "Phone number 2."
    72317231msgstr ""
    72327232
    72337233#: ../includes/rest-api/Version1/class-listings-controller.php:988
    72347234msgid "Fax number."
    72357235msgstr ""
    72367236
    72377237#: ../includes/rest-api/Version1/class-listings-controller.php:993
    72387238msgid "Email address."
    72397239msgstr ""
    72407240
    72417241#: ../includes/rest-api/Version1/class-listings-controller.php:999
    72427242msgid "Website url."
    72437243msgstr ""
    72447244
    72457245#: ../includes/rest-api/Version1/class-listings-controller.php:1004
    72467246msgid "List of social media links."
    72477247msgstr ""
    72487248
    72497249#: ../includes/rest-api/Version1/class-listings-controller.php:1011
    72507250msgid "Social media name"
    72517251msgstr ""
    72527252
    72537253#: ../includes/rest-api/Version1/class-listings-controller.php:1016
    72547254msgid "Social media url."
    72557255msgstr ""
    72567256
    72577257#: ../includes/rest-api/Version1/class-listings-controller.php:1024
    72587258msgid "Visitors view count."
    72597259msgstr ""
    72607260
    72617261#: ../includes/rest-api/Version1/class-listings-controller.php:1030
    72627262msgid "Map visibility status status."
    72637263msgstr ""
    72647264
    72657265#: ../includes/rest-api/Version1/class-listings-controller.php:1036
    72667266msgid "Listing address."
    72677267msgstr ""
    72687268
    72697269#: ../includes/rest-api/Version1/class-listings-controller.php:1041
    72707270msgid "Address location latitude."
    72717271msgstr ""
    72727272
    72737273#: ../includes/rest-api/Version1/class-listings-controller.php:1046
    72747274msgid "Address location longitude."
    72757275msgstr ""
    72767276
    72777277#: ../includes/rest-api/Version1/class-listings-controller.php:1051
    72787278msgid "Pricing type."
    72797279msgstr ""
    72807280
    72817281#: ../includes/rest-api/Version1/class-listings-controller.php:1057
    72827282msgid "Listing price."
    72837283msgstr ""
    72847284
    72857285#: ../includes/rest-api/Version1/class-listings-controller.php:1062
    72867286msgid "Listing price range."
    72877287msgstr ""
    72887288
    72897289#: ../includes/rest-api/Version1/class-listings-controller.php:1068
    72907290msgid "Listing owner contact form visibility status."
    72917291msgstr ""
    72927292
    72937293#: ../includes/rest-api/Version1/class-listings-controller.php:1074
    72947294msgid "Video url."
    72957295msgstr ""
    72967296
    72977297#: ../includes/rest-api/Version1/class-listings-controller.php:1079
    72987298msgid "Tagline."
    72997299msgstr ""
    73007300
    73017301#: ../includes/rest-api/Version1/class-listings-controller.php:1084
    73027302msgid "Multi directory type id."
    73037303msgstr ""
    73047304
    73057305#: ../includes/rest-api/Version1/class-listings-controller.php:1089
    73067306msgid "Expiration date."
    73077307msgstr ""
    73087308
    73097309#: ../includes/rest-api/Version1/class-listings-controller.php:1094
    73107310msgid "Never expired status."
    73117311msgstr ""
    73127312
    73137313#: ../includes/rest-api/Version1/class-listings-controller.php:1100
    73147314msgid "Featured listing."
    73157315msgstr ""
    73167316
    73177317#: ../includes/rest-api/Version1/class-listings-controller.php:1106
    73187318msgid "New listing."
    73197319msgstr ""
    73207320
    73217321#: ../includes/rest-api/Version1/class-listings-controller.php:1113
    73227322msgid "Popular listing."
    73237323msgstr ""
    73247324
    73257325#: ../includes/rest-api/Version1/class-listings-controller.php:1120
    73267326msgid "Listing status."
    73277327msgstr ""
    73287328
    73297329#: ../includes/rest-api/Version1/class-listings-controller.php:1125
    73307330msgid "Allow reviews."
    73317331msgstr ""
    73327332
    73337333#: ../includes/rest-api/Version1/class-listings-controller.php:1131
    73347334msgid "Reviews average rating."
    73357335msgstr ""
    73367336
    73377337#: ../includes/rest-api/Version1/class-listings-controller.php:1137
    73387338msgid "Amount of reviews that the listing have."
    73397339msgstr ""
    73407340
    73417341#: ../includes/rest-api/Version1/class-listings-controller.php:1143
    73427342msgid "List of related listings IDs."
    73437343msgstr ""
    73447344
    73457345#: ../includes/rest-api/Version1/class-listings-controller.php:1152
    73467346msgid "List of categories."
    73477347msgstr ""
    73487348
    73497349#: ../includes/rest-api/Version1/class-listings-controller.php:1159
    73507350msgid "Category ID."
    73517351msgstr ""
    73527352
    73537353#: ../includes/rest-api/Version1/class-listings-controller.php:1170
    73547354msgid "Category slug."
    73557355msgstr ""
    73567356
    73577357#: ../includes/rest-api/Version1/class-listings-controller.php:1176
    73587358msgid "Category icon."
    73597359msgstr ""
    73607360
    73617361#: ../includes/rest-api/Version1/class-listings-controller.php:1185
    73627362msgid "List of tags."
    73637363msgstr ""
    73647364
    73657365#: ../includes/rest-api/Version1/class-listings-controller.php:1192
    73667366msgid "Tag ID."
    73677367msgstr ""
    73687368
    73697369#: ../includes/rest-api/Version1/class-listings-controller.php:1197, ../includes/rest-api/Version1/class-tags-controller.php:90
    73707370msgid "Tag name."
    73717371msgstr ""
    73727372
    73737373#: ../includes/rest-api/Version1/class-listings-controller.php:1203
    73747374msgid "Tag slug."
    73757375msgstr ""
    73767376
    73777377#: ../includes/rest-api/Version1/class-listings-controller.php:1212
    73787378msgid "List of locations."
    73797379msgstr ""
    73807380
    73817381#: ../includes/rest-api/Version1/class-listings-controller.php:1219
    73827382msgid "Location ID."
    73837383msgstr ""
    73847384
    73857385#: ../includes/rest-api/Version1/class-listings-controller.php:1224, ../includes/rest-api/Version1/class-locations-controller.php:117
    73867386msgid "Location name."
    73877387msgstr ""
    73887388
    73897389#: ../includes/rest-api/Version1/class-listings-controller.php:1230
    73907390msgid "Location slug."
    73917391msgstr ""
    73927392
    73937393#: ../includes/rest-api/Version1/class-listings-controller.php:1239
    73947394msgid "List of images."
    73957395msgstr ""
    73967396
    73977397#: ../includes/rest-api/Version1/class-listings-controller.php:1291
    73987398msgid "Image position. 0 means that the image is featured."
    73997399msgstr ""
    74007400
    74017401#: ../includes/rest-api/Version1/class-listings-controller.php:1299
    74027402msgid "Menu order, used to custom sort listings."
    74037403msgstr ""
    74047404
    74057405#: ../includes/rest-api/Version1/class-listings-controller.php:1304
    74067406msgid "Listing author id."
    74077407msgstr ""
    74087408
    74097409#: ../includes/rest-api/Version1/class-listings-controller.php:1309
    74107410msgid "Meta data."
    74117411msgstr ""
    74127412
    74137413#: ../includes/rest-api/Version1/class-listings-controller.php:1316
    74147414msgid "Meta ID."
    74157415msgstr ""
    74167416
    74177417#: ../includes/rest-api/Version1/class-listings-controller.php:1322
    74187418msgid "Meta key."
    74197419msgstr ""
    74207420
    74217421#: ../includes/rest-api/Version1/class-listings-controller.php:1327
    74227422msgid "Meta value."
    74237423msgstr ""
    74247424
    74257425#: ../includes/rest-api/Version1/class-listings-controller.php:1384
    74267426msgid "Limit result set to listings with a specific slug."
    74277427msgstr ""
    74287428
    74297429#: ../includes/rest-api/Version1/class-listings-controller.php:1390
    74307430msgid "Limit result set to listings assigned a specific status."
    74317431msgstr ""
    74327432
    74337433#: ../includes/rest-api/Version1/class-listings-controller.php:1397
    74347434msgid "Limit result set to featured listings."
    74357435msgstr ""
    74367436
    74377437#: ../includes/rest-api/Version1/class-listings-controller.php:1402
    74387438msgid "Limit result set to listings assigned a specific category ID."
    74397439msgstr ""
    74407440
    74417441#: ../includes/rest-api/Version1/class-listings-controller.php:1408
    74427442msgid "Limit result set to listings assigned a specific tag ID."
    74437443msgstr ""
    74447444
    74457445#: ../includes/rest-api/Version1/class-listings-controller.php:1414
    74467446msgid "Limit result set to listings assigned a specific location ID."
    74477447msgstr ""
    74487448
    74497449#: ../includes/rest-api/Version1/class-listings-controller.php:1420
    74507450msgid "Limit result set to listings based on a minimum price."
    74517451msgstr ""
    74527452
    74537453#: ../includes/rest-api/Version1/class-listings-controller.php:1425
    74547454msgid "Limit result set to listings based on maximum price."
    74557455msgstr ""
    74567456
    74577457#: ../includes/rest-api/Version1/class-listings-controller.php:1430
    74587458msgid "Limit result set to listings based on price range."
    74597459msgstr ""
    74607460
    74617461#: ../includes/rest-api/Version1/class-listings-controller.php:1436
    74627462msgid "Limit result set to specified rating."
    74637463msgstr ""
    74647464
    74657465#: ../includes/rest-api/Version1/class-listings-controller.php:1441
    74667466msgid "Limit result set to listings based on radius search."
    74677467msgstr ""
    74687468
    74697469#: ../includes/rest-api/Version1/class-listings-controller.php:1460
    74707470msgid "Limit result set to listings to sepecific directory type."
    74717471msgstr ""
    74727472
    74737473#: ../includes/rest-api/Version1/class-listings-controller.php:1466
    74747474msgid "Limit result set to listings specific to author ID."
    74757475msgstr ""
    74767476
    74777477#: ../includes/rest-api/Version1/class-users-account-controller.php:42, ../includes/rest-api/Version1/class-users-account-controller.php:57, ../includes/rest-api/Version1/class-users-account-controller.php:77
    74787478msgid "User email address."
    74797479msgstr ""
    74807480
    74817481#: ../includes/rest-api/Version1/class-users-account-controller.php:62, ../includes/rest-api/Version1/class-users-account-controller.php:88
    74827482msgid "Password rest pin."
    74837483msgstr ""
    74847484
    74857485#: ../includes/rest-api/Version1/class-users-account-controller.php:83, ../includes/rest-api/Version1/class-users-account-controller.php:113
    74867486msgid "User new password."
    74877487msgstr ""
    74887488
    74897489#: ../includes/rest-api/Version1/class-users-account-controller.php:102, ../includes/rest-api/Version1/class-users-favorites-controller.php:56
    74907490msgid "User id."
    74917491msgstr ""
    74927492
    74937493#: ../includes/rest-api/Version1/class-users-account-controller.php:107
    74947494msgid "User old password."
    74957495msgstr ""
    74967496
    74977497#: ../includes/rest-api/Version1/class-users-account-controller.php:174
    74987498msgid "Password reset code has been sent to given email."
    74997499msgstr ""
    75007500
    75017501#: ../includes/rest-api/Version1/class-users-account-controller.php:188
    75027502msgid "Given password reset pin has expired."
    75037503msgstr ""
    75047504
    75057505#: ../includes/rest-api/Version1/class-users-account-controller.php:192, ../includes/rest-api/Version1/class-users-account-controller.php:215
    75067506msgid "Invalid password rest pin."
    75077507msgstr ""
    75087508
    75097509#: ../includes/rest-api/Version1/class-users-account-controller.php:197
    75107510msgid "Password reset pin has been verified."
    75117511msgstr ""
    75127512
    75137513#: ../includes/rest-api/Version1/class-users-account-controller.php:211
    75147514msgid "Your password reset pin has expired."
    75157515msgstr ""
    75167516
    75177517#: ../includes/rest-api/Version1/class-users-account-controller.php:226
    75187518msgid "Password has been reset successfully."
    75197519msgstr ""
    75207520
    75217521#: ../includes/rest-api/Version1/class-users-account-controller.php:239
    75227522msgid "Invalid old password."
    75237523msgstr ""
    75247524
    75257525#: ../includes/rest-api/Version1/class-users-account-controller.php:247
    75267526msgid "Password has been changed successfully."
    75277527msgstr ""
    75287528
    75297529#: ../includes/rest-api/Version1/class-users-controller.php:48
    75307530msgid "New user email address."
    75317531msgstr ""
    75327532
    75337533#: ../includes/rest-api/Version1/class-users-controller.php:52
    75347534msgid "New user username."
    75357535msgstr ""
    75367536
    75377537#: ../includes/rest-api/Version1/class-users-controller.php:57
    75387538msgid "New user password."
    75397539msgstr ""
    75407540
    75417541#: ../includes/rest-api/Version1/class-users-controller.php:99
    75427542msgid "ID to reassign posts to."
    75437543msgstr ""
    75447544
    75457545#: ../includes/rest-api/Version1/class-users-controller.php:324
    75467546msgid "Cannot create existing resource."
    75477547msgstr ""
    75487548
    75497549#: ../includes/rest-api/Version1/class-users-controller.php:328
    75507550msgid "A resource is already registered."
    75517551msgstr ""
    75527552
    75537553#: ../includes/rest-api/Version1/class-users-controller.php:393, ../includes/rest-api/Version1/class-users-controller.php:413
    75547554msgid "Invalid resource ID."
    75557555msgstr ""
    75567556
    75577557#: ../includes/rest-api/Version1/class-users-controller.php:417
    75587558msgid "Email address is invalid."
    75597559msgstr ""
    75607560
    75617561#: ../includes/rest-api/Version1/class-users-controller.php:421
    75627562msgid "Username isn't editable."
    75637563msgstr ""
    75647564
    75657565#. translators: %s: force=true
    75667566#: ../includes/rest-api/Version1/class-users-controller.php:479
    75677567msgid "Users do not support trashing. Set '%s' to delete."
    75687568msgstr ""
    75697569
    75707570#: ../includes/rest-api/Version1/class-users-controller.php:491
    75717571msgid "Invalid resource id for reassignment."
    75727572msgstr ""
    75737573
    75747574#: ../includes/rest-api/Version1/class-users-controller.php:698
    75757575msgid "The date the user was created, as GMT."
    75767576msgstr ""
    75777577
    75787578#: ../includes/rest-api/Version1/class-users-controller.php:705
    75797579msgid "The display name for the user."
    75807580msgstr ""
    75817581
    75827582#: ../includes/rest-api/Version1/class-users-controller.php:710
    75837583msgid "User login name."
    75847584msgstr ""
    75857585
    75867586#: ../includes/rest-api/Version1/class-users-controller.php:718
    75877587msgid "The nickname for the user."
    75887588msgstr ""
    75897589
    75907590#: ../includes/rest-api/Version1/class-users-controller.php:723
    75917591msgid "User first name."
    75927592msgstr ""
    75937593
    75947594#: ../includes/rest-api/Version1/class-users-controller.php:731
    75957595msgid "User last name."
    75967596msgstr ""
    75977597
    75987598#: ../includes/rest-api/Version1/class-users-controller.php:739
    75997599msgid "Description of the user."
    76007600msgstr ""
    76017601
    76027602#: ../includes/rest-api/Version1/class-users-controller.php:744
    76037603msgid "The email address for the user."
    76047604msgstr ""
    76057605
    76067606#: ../includes/rest-api/Version1/class-users-controller.php:750
    76077607msgid "The website url for the user."
    76087608msgstr ""
    76097609
    76107610#: ../includes/rest-api/Version1/class-users-controller.php:756
    76117611msgid "User password."
    76127612msgstr ""
    76137613
    76147614#: ../includes/rest-api/Version1/class-users-controller.php:761
    76157615msgid "Address of the user."
    76167616msgstr ""
    76177617
    76187618#: ../includes/rest-api/Version1/class-users-controller.php:766
    76197619msgid "Phone number of the user."
    76207620msgstr ""
    76217621
    76227622#: ../includes/rest-api/Version1/class-users-controller.php:771
    76237623msgid "User avater image data."
    76247624msgstr ""
    76257625
    76267626#: ../includes/rest-api/Version1/class-users-controller.php:813
    76277627msgid "User social links."
    76287628msgstr ""
    76297629
    76307630#: ../includes/rest-api/Version1/class-users-controller.php:818
    76317631msgid "Facebook profile link."
    76327632msgstr ""
    76337633
    76347634#: ../includes/rest-api/Version1/class-users-controller.php:824
    76357635msgid "Twitter profile link."
    76367636msgstr ""
    76377637
    76387638#: ../includes/rest-api/Version1/class-users-controller.php:830
    76397639msgid "LinkedIn profile link."
    76407640msgstr ""
    76417641
    76427642#: ../includes/rest-api/Version1/class-users-controller.php:836
    76437643msgid "Youtube profile link."
    76447644msgstr ""
    76457645
    76467646#: ../includes/rest-api/Version1/class-users-controller.php:844
    76477647msgid "User favorite listing ids."
    76487648msgstr ""
    76497649
    76507650#: ../includes/rest-api/Version1/class-users-controller.php:853
    76517651msgid "Quantity of listings created by the user."
    76527652msgstr ""
    76537653
    76547654#: ../includes/rest-api/Version1/class-users-controller.php:927
    76557655msgid "Limit result set to resources with a specific email."
    76567656msgstr ""
    76577657
    76587658#: ../includes/rest-api/Version1/class-users-controller.php:933
    76597659msgid "Limit result set to resources with a specific role."
    76607660msgstr ""
    76617661
    76627662#: ../includes/rest-api/Version1/class-users-favorites-controller.php:43
    76637663msgid "Directory listing id."
    76647664msgstr ""
    76657665
    76667666#: ../includes/rest-api/Version1/class-users-favorites-controller.php:60
    76677667msgid "Listing id."
    76687668msgstr ""
    76697669
    76707670#: ../includes/rest-api/Version1/class-users-favorites-controller.php:87
    76717671msgid "Sorry, you are not allowed to favorite resources."
    76727672msgstr ""
    76737673
    76747674#: ../includes/rest-api/Version1/class-users-favorites-controller.php:146, ../includes/rest-api/Version1/class-users-favorites-controller.php:193
    76757675msgid "Invalid user ID."
    76767676msgstr ""
    76777677
    76787678#: ../includes/rest-api/Version1/class-users-favorites-controller.php:265
    76797679msgid "User favorite listing id."
    76807680msgstr ""
    76817681
    76827682#: ../includes/system-status/system-information/system-information-template.php:23
    76837683msgid "Wordpress Environment"
    76847684msgstr ""
    76857685
    76867686#: ../includes/system-status/system-information/system-information-template.php:29
    76877687msgid "Server Environment"
    76887688msgstr ""
    76897689
    76907690#: ../includes/system-status/system-information/system-information-template.php:32
    76917691msgid "User Platform"
    76927692msgstr ""
    76937693
    76947694#: ../includes/system-status/system-information/system-information-template.php:47
    76957695msgid "Active Plugins"
    76967696msgstr ""
    76977697
    76987698#: ../includes/system-status/system-information/system-information-template.php:104
    76997699msgid "WP Multisite"
    77007700msgstr ""
    77017701
    77027702#: ../includes/system-status/system-information/system-information-template.php:114
    77037703msgid "WP Memory Limit"
    77047704msgstr ""
    77057705
    77067706#: ../includes/system-status/system-information/system-information-template.php:160
    77077707msgid "New User Default Role"
    77087708msgstr ""
    77097709
    77107710#: ../includes/system-status/system-information/system-information-template.php:162
    77117711msgid "The default role of new user."
    77127712msgstr ""
    77137713
    77147714#: ../includes/system-status/system-information/system-information-template.php:367
    77157715msgid "Directorist plugin may use this method of communication when checking for plugin updates."
    77167716msgstr ""
    77177717
    77187718#: ../includes/system-status/system-information/system-information-template.php:761
    77197719msgid "This section shows any files that are overriding the default Directorist template pages."
    77207720msgstr ""
    77217721
    77227722#: ../templates/all-authors.php:147
    77237723msgid "No authors found"
    77247724msgstr ""
    77257725
    77267726#: ../templates/dashboard-contents.php:20, ../views/front-end/user-dashboard.php:88
    77277727msgid "My Dashboard"
    77287728msgstr ""
    77297729
    77307730#: ../templates/single-reviews.php:30, ../templates/single-reviews.php:50
    77317731msgid "%s review"
    77327732msgid_plural "%s reviews"
    77337733msgstr[0] ""
    77347734msgstr[1] ""
    77357735
    77367736#: ../templates/single-reviews.php:35
    77377737msgid "Login to Write Your Review"
    77387738msgstr ""
    77397739
    77407740#: ../templates/single-reviews.php:33, ../templates/single-reviews.php:158
    77417741msgid "Write Your Review"
    77427742msgstr ""
    77437743
    77447744#: ../templates/single-reviews.php:40
    77457745msgid "There are no reviews yet."
    77467746msgstr ""
    77477747
    77487748#: ../templates/single-reviews.php:92
    77497749msgid "Enter your name"
    77507750msgstr ""
    77517751
    77527752#: ../templates/single-reviews.php:106
    77537753msgid "Enter your email"
    77547754msgstr ""
    77557755
    77567756#: ../templates/single-reviews.php:119
    77577757msgid "Enter your website"
    77587758msgstr ""
    77597759
    77607760#: ../templates/single-reviews.php:136
    77617761msgid "Share your experience and help others make better choices"
    77627762msgstr ""
    77637763
    77647764#: ../templates/single-reviews.php:156
    77657765msgid "Cancel Reply"
    77667766msgstr ""
    77677767
    77687768#: ../templates/single-reviews.php:163
    77697769msgid "Submit Review"
    77707770msgstr ""
    77717771
    77727772#: ../templates/account/login.php:108
    77737773msgid "<p>%s</p>"
    77747774msgstr ""
    77757775
    77767776#: ../templates/account/login.php:167
    77777777msgid "Oops something went wrong updating your account."
    77787778msgstr ""
    77797779
    77807780#: ../templates/account/login.php:140
    77817781msgid " Password Reset Request"
    77827782msgstr ""
    77837783
    77847784#: ../templates/account/login.php:144
    77857785msgid "Someone has requested a password reset for the following account:"
    77867786msgstr ""
    77877787
    77887788#: ../templates/account/login.php:146
    77897789msgid "Site Name: %s"
    77907790msgstr ""
    77917791
    77927792#: ../templates/account/login.php:148
    77937793msgid "User: %s"
    77947794msgstr ""
    77957795
    77967796#: ../templates/account/login.php:149
    77977797msgid "If this was a mistake, just ignore this email and nothing will happen."
    77987798msgstr ""
    77997799
    78007800#: ../templates/account/login.php:150
    78017801msgid "To reset your password, visit the following address:"
    78027802msgstr ""
    78037803
    78047804#: ../templates/account/login.php:164
    78057805msgid "Password updated! But something went wrong sending email."
    78067806msgstr ""
    78077807
    78087808#: ../templates/account/login.php:162
    78097809msgid "A password reset email has been sent to the email address on file for your account, but may take several minutes to show up in your inbox."
    78107810msgstr ""
    78117811
    78127812#: ../templates/account/login.php:133
    78137813msgid "There is no user registered with that email address."
    78147814msgstr ""
    78157815
    78167816#: ../templates/account/login.php:131
    78177817msgid "Invalid e-mail address."
    78187818msgstr ""
    78197819
    78207820#: ../templates/account/login.php:129
    78217821msgid "Enter an e-mail address.."
    78227822msgstr ""
    78237823
    78247824#: ../templates/account/login.php:172
    78257825msgid "ERROR:"
    78267826msgstr ""
    78277827
    78287828#: ../templates/account/login.php:41
    78297829msgid "Password not matched!"
    78307830msgstr ""
    78317831
    78327832#: ../templates/account/login.php:39
    78337833msgid "Fields are required!"
    78347834msgstr ""
    78357835
    78367836#: ../templates/account/login.php:32
    78377837msgid "Password changed successfully!"
    78387838msgstr ""
    78397839
    78407840#: ../templates/account/login.php:34
    78417841msgid " Login"
    78427842msgstr ""
    78437843
    78447844#: ../templates/account/login.php:75
    78457845msgid "Sorry! The link is invalid."
    78467846msgstr ""
    78477847
    78487848#: ../templates/account/login.php:50
    78497849msgid "Enter a new password below."
    78507850msgstr ""
    78517851
    78527852#: ../templates/account/login.php:52
    78537853msgid "New password"
    78547854msgstr ""
    78557855
    78567856#: ../templates/account/login.php:57
    78577857msgid "Re-enter new password"
    78587858msgstr ""
    78597859
    78607860#: ../templates/account/login.php:69, ../templates/account/login.php:69
    78617861msgid "Save"
    78627862msgstr ""
    78637863
    78647864#: ../templates/account/registration.php:28
    78657865msgid " Registration completed. Please check your email for confirmation."
    78667866msgstr ""
    78677867
    78687868#: ../templates/account/registration.php:29
    78697869msgid "Or click %s to login."
    78707870msgstr ""
    78717871
    78727872#: ../templates/account/registration.php:23
    78737873msgid " Go to your inbox or spam/junk and get your password."
    78747874msgstr ""
    78757875
    78767876#: ../templates/account/registration.php:24
    78777877msgid "Click %s to login."
    78787878msgstr ""
    78797879
    78807880#: ../templates/account/registration.php:101
    78817881msgid "I am an author"
    78827882msgstr ""
    78837883
    78847884#: ../templates/account/registration.php:106
    78857885msgid "I am a user"
    78867886msgstr ""
    78877887
    78887888#: ../templates/account/registration.php:133
    78897889msgid "Password will be e-mailed to you."
    78907890msgstr ""
    78917891
    78927892#: ../templates/archive/grid-view.php:45, ../templates/archive/list-view.php:39
    78937893msgid "No listings found."
    78947894msgstr ""
    78957895
    78967896#: ../templates/author/about.php:21
    78977897msgid "About"
    78987898msgstr ""
    78997899
    79007900#: ../templates/author/about.php:26
    79017901msgid "Nothing to show!"
    79027902msgstr ""
    79037903
    79047904#: ../templates/author/about.php:37
    79057905msgid "Contact Info"
    79067906msgstr ""
    79077907
    79087908#: ../templates/author/listings.php:16
    79097909msgid "Author Listings"
    79107910msgstr ""
    79117911
    79127912#: ../templates/author/listings.php:26
    79137913msgid "Filter by category"
    79147914msgstr ""
    79157915
    79167916#: ../templates/dashboard/listing-row.php:93
    79177917msgid "No items found"
    79187918msgstr ""
    79197919
    79207920#: ../templates/dashboard/listing-row.php:59
    79217921msgid "More"
    79227922msgstr ""
    79237923
    79247924#: ../templates/dashboard/nav-buttons.php:14, ../views/front-end/user-dashboard.php:134
    79257925msgid "Submit Listing"
    79267926msgstr ""
    79277927
    79287928#: ../templates/dashboard/nav-buttons.php:24
    79297929msgid "Are you sure you want to become an author?"
    79307930msgstr ""
    79317931
    79327932#: ../templates/dashboard/nav-buttons.php:24
    79337933msgid "(It is subject to approval by the admin)"
    79347934msgstr ""
    79357935
    79367936#: ../templates/dashboard/nav-buttons.php:33, ../views/front-end/user-dashboard.php:137
    79377937msgid "Log Out"
    79387938msgstr ""
    79397939
    79407940#: ../templates/dashboard/notice.php:12, ../views/front-end/user-dashboard.php:55
    79417941msgid "Link appears to be invalid."
    79427942msgstr ""
    79437943
    79447944#: ../templates/dashboard/notice.php:16, ../views/front-end/user-dashboard.php:61
    79457945msgid "Renewed successfully."
    79467946msgstr ""
    79477947
    79487948#: ../templates/dashboard/profile-pic.php:46, ../views/front-end/user-dashboard.php:421
    79497949msgid "Change"
    79507950msgstr ""
    79517951
    79527952#: ../templates/dashboard/profile-pic.php:48, ../views/front-end/user-dashboard.php:424
    79537953msgid "Max limit for total file size is __DT__"
    79547954msgstr ""
    79557955
    79567956#: ../templates/dashboard/profile-pic.php:50, ../views/front-end/user-dashboard.php:427
    79577957msgid "Min __DT__ file is required"
    79587958msgstr ""
    79597959
    79607960#: ../templates/dashboard/profile-pic.php:52, ../views/front-end/user-dashboard.php:430
    79617961msgid "Max limit for total file is __DT__"
    79627962msgstr ""
    79637963
    79647964#: ../templates/dashboard/profile-pic.php:54, ../views/front-end/user-dashboard.php:434
    79657965msgid "Maximum allowed file size is __DT__"
    79667966msgstr ""
    79677967
    79687968#: ../templates/dashboard/profile-pic.php:58, ../templates/listing-form/fields/image_upload.php:62, ../templates/listing-form/fields/image_upload.php:67, ../views/front-end/user-dashboard.php:440
    79697969msgid "Minimum __DT__ file is required"
    79707970msgstr ""
    79717971
    79727972#: ../templates/dashboard/restrict-access.php:14
    79737973msgid "You need to be logged in to view the content of this page. You can login <a href='%s'>Here</a>. Don't have an account? <a href='%s'>Sign Up</a>"
    79747974msgstr ""
    79757975
    79767976#: ../templates/dashboard/tab-announcement.php:42
    79777977msgid "No announcements found"
    79787978msgstr ""
    79797979
    79807980#: ../templates/dashboard/tab-fav-listings.php:54, ../views/front-end/user-dashboard.php:712
    79817981msgid "Nothing found!"
    79827982msgstr ""
    79837983
    79847984#: ../templates/dashboard/tab-my-listings.php:32
    79857985msgid "Published"
    79867986msgstr ""
    79877987
    79887988#: ../templates/dashboard/tab-my-listings.php:52
    79897989msgid "Search listings"
    79907990msgstr ""
    79917991
    79927992#: ../templates/dashboard/tab-my-listings.php:73
    79937993msgid "Type"
    79947994msgstr ""
    79957995
    79967996#: ../templates/dashboard/tab-my-listings.php:77
    79977997msgid "Expiration Date"
    79987998msgstr ""
    79997999
    80008000#: ../templates/dashboard/tab-profile.php:47
    80018001msgid "Enter your display name"
    80028002msgstr ""
    80038003
    80048004#: ../templates/dashboard/tab-profile.php:53, ../views/front-end/user-dashboard.php:470
    80058005msgid "User Name"
    80068006msgstr ""
    80078007
    80088008#: ../templates/dashboard/tab-profile.php:55, ../views/front-end/user-dashboard.php:473
    80098009msgid "(username can not be changed)"
    80108010msgstr ""
    80118011
    80128012#: ../templates/dashboard/tab-profile.php:85, ../views/front-end/user-dashboard.php:500
    80138013msgid "Email (required)"
    80148014msgstr ""
    80158015
    80168016#: ../templates/dashboard/tab-profile.php:93
    80178017msgid "Phone"
    80188018msgstr ""
    80198019
    80208020#: ../templates/dashboard/tab-profile.php:95, ../views/front-end/user-dashboard.php:513
    80218021msgid "Enter your phone number"
    80228022msgstr ""
    80238023
    80248024#: ../templates/dashboard/tab-profile.php:125, ../views/front-end/user-dashboard.php:541
    80258025msgid "New Password"
    80268026msgstr ""
    80278027
    80288028#: ../templates/dashboard/tab-profile.php:127, ../views/front-end/user-dashboard.php:546
    80298029msgid "Enter a new password"
    80308030msgstr ""
    80318031
    80328032#: ../templates/dashboard/tab-profile.php:132, ../views/front-end/user-dashboard.php:551
    80338033msgid "Confirm New Password"
    80348034msgstr ""
    80358035
    80368036#: ../templates/dashboard/tab-profile.php:134, ../views/front-end/user-dashboard.php:556
    80378037msgid "Confirm your new password"
    80388038msgstr ""
    80398039
    80408040#: ../templates/dashboard/tab-profile.php:139, ../views/front-end/user-dashboard.php:605
    80418041msgid "About Author"
    80428042msgstr ""
    80438043
    80448044#: ../templates/dashboard/tab-profile.php:148
    80458045msgid "Social Profiles"
    80468046msgstr ""
    80478047
    80488048#: ../templates/dashboard/tab-profile.php:154, ../views/front-end/user-dashboard.php:569
    80498049msgid "Enter your facebook url"
    80508050msgstr ""
    80518051
    80528052#: ../templates/dashboard/tab-profile.php:156, ../templates/dashboard/tab-profile.php:166, ../templates/dashboard/tab-profile.php:176, ../templates/dashboard/tab-profile.php:186, ../views/front-end/user-dashboard.php:565, ../views/front-end/user-dashboard.php:575, ../views/front-end/user-dashboard.php:586, ../views/front-end/user-dashboard.php:596
    80538053msgid "Leave it empty to hide"
    80548054msgstr ""
    80558055
    80568056#: ../templates/dashboard/tab-profile.php:164, ../views/front-end/user-dashboard.php:579
    80578057msgid "Enter your twitter url"
    80588058msgstr ""
    80598059
    80608060#: ../templates/dashboard/tab-profile.php:174, ../views/front-end/user-dashboard.php:590
    80618061msgid "Enter linkedIn url"
    80628062msgstr ""
    80638063
    80648064#: ../templates/dashboard/tab-profile.php:184, ../views/front-end/user-dashboard.php:600
    80658065msgid "Enter youtube url"
    80668066msgstr ""
    80678067
    80688068#: ../templates/dashboard/tab-profile.php:192, ../views/front-end/user-dashboard.php:617
    80698069msgid "Save Changes"
    80708070msgstr ""
    80718071
    80728072#: ../templates/listing-form/quick-login.php:17
    80738073msgid "Quick Login"
    80748074msgstr ""
    80758075
    80768076#: ../templates/listing-form/restrict-access.php:11
    80778077msgid "You do not have permission to edit this listing"
    80788078msgstr ""
    80798079
    80808080#: ../templates/listing-form/social-item.php:21, ../views/social.php:17
    80818081msgid "eg. http://example.com"
    80828082msgstr ""
    80838083
    80848084#: ../templates/listing-form/social-item.php:24, ../views/social.php:21
    80858085msgid "Remove this item"
    80868086msgstr ""
    80878087
    80888088#: ../templates/payment/checkout.php:21
    80898089msgid "Your order details are given below. Please review it and click on Proceed to Payment to complete this order."
    80908090msgstr ""
    80918091
    80928092#: ../templates/payment/checkout.php:96, ../templates/payment/payment-receipt.php:129
    80938093msgid "Subtotal"
    80948094msgstr ""
    80958095
    80968096#: ../templates/payment/checkout.php:122
    80978097msgid "Choose a payment method"
    80988098msgstr ""
    80998099
    81008100#: ../templates/payment/checkout.php:158
    81018101msgid "Not Now"
    81028102msgstr ""
    81038103
    81048104#: ../templates/payment/payment-receipt.php:9
    81058105msgid "Thank you for your order!"
    81068106msgstr ""
    81078107
    81088108#: ../templates/payment/payment-receipt.php:21
    81098109msgid "Here is your order summary:"
    81108110msgstr ""
    81118111
    81128112#: ../templates/payment/payment-receipt.php:26
    81138113msgid "ORDER"
    81148114msgstr ""
    81158115
    81168116#: ../templates/payment/payment-receipt.php:31
    81178117msgid "Total Amount"
    81188118msgstr ""
    81198119
    81208120#: ../templates/payment/payment-receipt.php:59
    81218121msgid "Payment Method"
    81228122msgstr ""
    81238123
    81248124#: ../templates/payment/payment-receipt.php:64
    81258125msgid "Free Listing"
    81268126msgstr ""
    81278127
    81288128#: ../templates/payment/payment-receipt.php:74
    81298129msgid "Payment Status"
    81308130msgstr ""
    81318131
    81328132#: ../templates/payment/payment-receipt.php:95
    81338133msgid "Ordered Item(s)"
    81348134msgstr ""
    81358135
    81368136#: ../templates/payment/payment-receipt.php:135
    81378137msgid "Discount"
    81388138msgstr ""
    81398139
    81408140#: ../templates/payment/payment-receipt.php:142
    81418141msgid "Total amount"
    81428142msgstr ""
    81438143
    81448144#: ../templates/payment/payment-receipt.php:155
    81458145msgid "View your listings"
    81468146msgstr ""
    81478147
    81488148#: ../templates/payment/transaction-failure.php:2
    81498149msgid "Your Transaction was not successful. Please contact support"
    81508150msgstr ""
    81518151
    81528152#: ../templates/single/section-author_info.php:107, ../views/widgets/author-info.php:115
    81538153msgid "View Profile"
    81548154msgstr ""
    81558155
    81568156#: ../templates/single/section-contact_listings_owner.php:38, ../templates/single/fields/report.php:45
    81578157msgid "Message..."
    81588158msgstr ""
    81598159
    81608160#: ../templates/single/section-contact_listings_owner.php:46, ../templates/single/fields/report.php:57, ../views/widgets/contact-listing-owner.php:44
    81618161msgid "Submit"
    81628162msgstr ""
    81638163
    81648164#: ../templates/single/top-actions.php:40, ../templates/single/top-actions.php:21
    81658165msgid "Go Back"
    81668166msgstr ""
    81678167
    81688168#: ../templates/taxonomies/categories-grid.php:47
    81698169msgid "listings"
    81708170msgstr ""
    81718171
    81728172#: ../templates/taxonomies/categories-grid.php:47
    81738173msgid "listing"
    81748174msgstr ""
    81758175
    81768176#: ../templates/archive/fields/category.php:40
    81778177msgid "Uncategorized"
    81788178msgstr ""
    81798179
    81808180#: ../templates/archive/fields/user_avatar.php:15
    81818181msgid "Author Image"
    81828182msgstr ""
    81838183
    81848184#: ../templates/listing-form/custom-fields/checkbox.php:28, ../templates/listing-form/custom-fields/radio.php:28
    81858185msgid "See More"
    81868186msgstr ""
    81878187
    81888188#: ../templates/listing-form/custom-fields/file.php:41, ../views/file-uploader.php:29
    81898189msgid "Allowed Files"
    81908190msgstr ""
    81918191
    81928192#: ../templates/listing-form/custom-fields/file.php:60, ../views/file-uploader.php:46
    81938193msgid "Allowed files"
    81948194msgstr ""
    81958195
    81968196#: ../templates/listing-form/custom-fields/file.php:61, ../views/file-uploader.php:47
    81978197msgid "File size error : You tried to upload a file over %s"
    81988198msgstr ""
    81998199
    82008200#: ../templates/listing-form/custom-fields/file.php:62, ../views/file-uploader.php:48
    82018201msgid "File type error. Allowed file types: %s"
    82028202msgstr ""
    82038203
    82048204#: ../templates/listing-form/custom-fields/file.php:63, ../views/file-uploader.php:49
    82058205msgid "You have reached your upload limit of %s files."
    82068206msgstr ""
    82078207
    82088208#: ../templates/listing-form/custom-fields/file.php:64, ../views/file-uploader.php:50
    82098209msgid "You may only upload %s files with this package, please try again."
    82108210msgstr ""
    82118211
    82128212#: ../templates/listing-form/custom-fields/file.php:65, ../views/file-uploader.php:51
    82138213msgid "Remove"
    82148214msgstr ""
    82158215
    82168216#: ../templates/listing-form/custom-fields/file.php:66, ../views/file-uploader.php:52
    82178217msgid "Set"
    82188218msgstr ""
    82198219
    82208220#: ../templates/listing-form/custom-fields/file.php:139, ../views/file-uploader.php:119
    82218221msgid "Drop files here <small>or</small>"
    82228222msgstr ""
    82238223
    82248224#: ../templates/listing-form/custom-fields/file.php:141, ../views/file-uploader.php:121
    82258225msgid "Select Files"
    82268226msgstr ""
    82278227
    82288228#: ../templates/listing-form/custom-fields/file.php:142, ../views/file-uploader.php:122
    82298229msgid "Allowed file types:"
    82308230msgstr ""
    82318231
    82328232#: ../templates/listing-form/custom-fields/file.php:146, ../templates/listing-form/custom-fields/file.php:151, ../views/file-uploader.php:126, ../views/file-uploader.php:131
    82338233msgid "You can upload"
    82348234msgstr ""
    82358235
    82368236#: ../templates/listing-form/custom-fields/file.php:146, ../views/file-uploader.php:126
    82378237msgid "file"
    82388238msgstr ""
    82398239
    82408240#: ../templates/listing-form/custom-fields/file.php:151, ../views/file-uploader.php:131
    82418241msgid "files"
    82428242msgstr ""
    82438243
    82448244#: ../templates/listing-form/fields/image_upload.php:54
    82458245msgid "Drop Here"
    82468246msgstr ""
    82478247
    82488248#: ../templates/listing-form/fields/image_upload.php:55
    82498249msgid "Preview"
    82508250msgstr ""
    82518251
    82528252#: ../templates/listing-form/fields/image_upload.php:56
    82538253msgid "Drag & Drop"
    82548254msgstr ""
    82558255
    82568256#: ../templates/listing-form/fields/image_upload.php:57
    82578257msgid "or"
    82588258msgstr ""
    82598259
    82608260#: ../templates/listing-form/fields/image_upload.php:59
    82618261msgid "Add More"
    82628262msgstr ""
    82638263
    82648264#: ../templates/listing-form/fields/image_upload.php:60
    82658265msgid "Maximum limit for a file is  __DT__"
    82668266msgstr ""
    82678267
    82688268#: ../templates/listing-form/fields/image_upload.php:61
    82698269msgid "Maximum limit for total file size is __DT__"
    82708270msgstr ""
    82718271
    82728272#: ../templates/listing-form/fields/image_upload.php:63
    82738273msgid "Maximum limit for total file is __DT__"
    82748274msgstr ""
    82758275
    82768276#: ../templates/listing-form/fields/image_upload.php:64
    82778277msgid "Maximum allowed size per file is __DT__"
    82788278msgstr ""
    82798279
    82808280#: ../templates/listing-form/fields/image_upload.php:65
    82818281msgid "Maximum total allowed file size is __DT__"
    82828282msgstr ""
    82838283
    82848284#: ../templates/listing-form/fields/image_upload.php:69
    82858285msgid "Unlimited images with this plan!"
    82868286msgstr ""
    82878287
    82888288#: ../templates/listing-form/fields/image_upload.php:69
    82898289msgid "Maximum __DT__ files are allowed"
    82908290msgstr ""
    82918291
    82928292#: ../templates/listing-form/fields/image_upload.php:69
    82938293msgid "Maximum __DT__ file is allowed"
    82948294msgstr ""
    82958295
    82968296#: ../templates/listing-form/fields/map.php:32, ../views/admin-templates/listing-form/contact-info.php:93
    82978297msgid "Delete Marker"
    82988298msgstr ""
    82998299
    83008300#: ../templates/listing-form/fields/map.php:41, ../views/admin-templates/listing-form/contact-info.php:100
    83018301msgid "You can drag pinpoint to place the correct address manually."
    83028302msgstr ""
    83038303
    83048304#: ../templates/listing-form/fields/map.php:58, ../views/admin-templates/listing-form/contact-info.php:115
    83058305msgid "Latitude"
    83068306msgstr ""
    83078307
    83088308#: ../templates/listing-form/fields/map.php:59, ../views/admin-templates/listing-form/contact-info.php:119
    83098309msgid "Enter Latitude eg. 24.89904"
    83108310msgstr ""
    83118311
    83128312#: ../templates/listing-form/fields/map.php:63, ../views/admin-templates/listing-form/contact-info.php:124
    83138313msgid "Longitude"
    83148314msgstr ""
    83158315
    83168316#: ../templates/listing-form/fields/map.php:64, ../views/admin-templates/listing-form/contact-info.php:128
    83178317msgid "Enter Longitude eg. 91.87198"
    83188318msgstr ""
    83198319
    83208320#: ../templates/listing-form/fields/map.php:68, ../views/admin-templates/listing-form/contact-info.php:135
    83218321msgid "Generate on Map"
    83228322msgstr ""
    83238323
    83248324#: ../templates/listing-form/fields/map.php:75
    83258325msgid " Hide Map"
    83268326msgstr ""
    83278327
    83288328#: ../templates/listing-form/fields/pricing.php:14, ../views/admin-templates/listing-form/add-listing.php:19
    83298329msgid "Price of this listing. Eg. 100"
    83308330msgstr ""
    83318331
    83328332#: ../templates/listing-form/fields/pricing.php:102
    83338333msgid "Ultra High"
    83348334msgstr ""
    83358335
    83368336#: ../templates/listing-form/fields/pricing.php:104, ../views/admin-templates/listing-form/add-listing.php:107
    83378337msgid "Expensive "
    83388338msgstr ""
    83398339
    83408340#: ../templates/listing-form/fields/pricing.php:106, ../views/admin-templates/listing-form/add-listing.php:110
    83418341msgid "Moderate "
    83428342msgstr ""
    83438343
    83448344#: ../templates/search-form/fields/location.php:20
    83458345msgid "Select Location"
    83468346msgstr ""
    83478347
    83488348#: ../templates/search-form/fields/review.php:16
    83498349msgctxt "Rating search select placeholder"
    83508350msgid "Select %s"
    83518351msgstr ""
    83528352
    83538353#: ../templates/single/fields/report.php:33
    83548354msgid "Report Abuse"
    83558355msgstr ""
    83568356
    83578357#: ../templates/single/fields/report.php:43
    83588358msgid "Your Complain"
    83598359msgstr ""
    83608360
    83618361#: ../templates/single/fields/reviews.php:16
    83628362msgctxt "Review count single template"
    83638363msgid "%s Review"
    83648364msgid_plural "%s Reviews"
    83658365msgstr[0] ""
    83668366msgstr[1] ""
    83678367
    83688368#: ../views/admin-templates/extension.php:6, ../views/admin-templates/theme-extensions/all-themes-extensions.php:28
    83698369msgid "Themes"
    83708370msgstr ""
    83718371
    83728372#: ../views/admin-templates/extension.php:16
    83738373msgid " Directoria "
    83748374msgstr ""
    83758375
    83768376#: ../views/admin-templates/extension.php:20, ../views/admin-templates/extension.php:39, ../views/admin-templates/extension.php:60
    83778377msgid "View demo"
    83788378msgstr ""
    83798379
    83808380#: ../views/admin-templates/extension.php:22, ../views/admin-templates/extension.php:41, ../views/admin-templates/extension.php:62, ../views/admin-templates/extension.php:89, ../views/admin-templates/extension.php:112, ../views/admin-templates/extension.php:135, ../views/admin-templates/extension.php:155, ../views/admin-templates/extension.php:175, ../views/admin-templates/extension.php:195, ../views/admin-templates/extension.php:215, ../views/admin-templates/extension.php:235, ../views/admin-templates/extension.php:254, ../views/admin-templates/extension.php:274, ../views/admin-templates/extension.php:294, ../views/admin-templates/extension.php:314, ../views/admin-templates/extension.php:333, ../views/admin-templates/extension.php:352, ../views/admin-templates/extension.php:371, ../views/admin-templates/extension.php:392, ../views/admin-templates/extension.php:413, ../views/admin-templates/extension.php:433, ../views/admin-templates/extension.php:453, ../views/admin-templates/extension.php:474, ../views/admin-templates/theme-extensions/all-themes-extensions.php:18, ../views/admin-templates/theme-extensions/all-themes-extensions.php:40
    83818381msgid "Get It Now"
    83828382msgstr ""
    83838383
    83848384#: ../views/admin-templates/extension.php:35
    83858385msgid " dList "
    83868386msgstr ""
    83878387
    83888388#: ../views/admin-templates/extension.php:54
    83898389msgid " dService "
    83908390msgstr ""
    83918391
    83928392#: ../views/admin-templates/extension.php:84
    83938393msgid " Coupon "
    83948394msgstr ""
    83958395
    83968396#: ../views/admin-templates/extension.php:85
    83978397msgid "Create & offer unlimited coupon to increase your revenue."
    83988398msgstr ""
    83998399
    84008400#: ../views/admin-templates/extension.php:107
    84018401msgid " Ads Manager "
    84028402msgstr ""
    84038403
    84048404#: ../views/admin-templates/extension.php:108
    84058405msgid "Create & sell unlimited ads to monetize your directory."
    84068406msgstr ""
    84078407
    84088408#: ../views/admin-templates/extension.php:130
    84098409msgid " Pricing Plans "
    84108410msgstr ""
    84118411
    84128412#: ../views/admin-templates/extension.php:131
    84138413msgid "Create & sell unlimited pricing plans to monetize your directory."
    84148414msgstr ""
    84158415
    84168416#: ../views/admin-templates/extension.php:150
    84178417msgid " WooCommerce Pricing Plans "
    84188418msgstr ""
    84198419
    84208420#: ../views/admin-templates/extension.php:151
    84218421msgid "Create & sell unlimited pricing plans to monetize your directory using WooCommerce."
    84228422msgstr ""
    84238423
    84248424#: ../views/admin-templates/extension.php:170
    84258425msgid " Stripe Payment Gateway "
    84268426msgstr ""
    84278427
    84288428#: ../views/admin-templates/extension.php:171
    84298429msgid "You can accept payment via Stripe using this payment gateway extension."
    84308430msgstr ""
    84318431
    84328432#: ../views/admin-templates/extension.php:190
    84338433msgid " PayPal Standard Payment Gateway "
    84348434msgstr ""
    84358435
    84368436#: ../views/admin-templates/extension.php:191
    84378437msgid "You can accept payment via PayPal using this payment gateway extension."
    84388438msgstr ""
    84398439
    84408440#: ../views/admin-templates/extension.php:210
    84418441msgid " Claim Listing "
    84428442msgstr ""
    84438443
    84448444#: ../views/admin-templates/extension.php:211
    84458445msgid "Monetize your directory allowing business owners to claim their listing using this extension."
    84468446msgstr ""
    84478447
    84488448#: ../views/admin-templates/extension.php:230
    84498449msgid " Live Chat "
    84508450msgstr ""
    84518451
    84528452#: ../views/admin-templates/extension.php:231
    84538453msgid "It allows the visitors to contact business owners immediately and easily."
    84548454msgstr ""
    84558455
    84568456#: ../views/admin-templates/extension.php:249
    84578457msgid " Business Hours "
    84588458msgstr ""
    84598459
    84608460#: ../views/admin-templates/extension.php:250
    84618461msgid "You can show Business hours / opening hours of a listing by this extension."
    84628462msgstr ""
    84638463
    84648464#: ../views/admin-templates/extension.php:269
    84658465msgid " Mark as Sold "
    84668466msgstr ""
    84678467
    84688468#: ../views/admin-templates/extension.php:270
    84698469msgid "It allows listing authors to show visitors if a particular item is sold or not."
    84708470msgstr ""
    84718471
    84728472#: ../views/admin-templates/extension.php:289
    84738473msgid " Compare Listing "
    84748474msgstr ""
    84758475
    84768476#: ../views/admin-templates/extension.php:290
    84778477msgid "Use compare listings to view listings side by side and compare its features."
    84788478msgstr ""
    84798479
    84808480#: ../views/admin-templates/extension.php:309
    84818481msgid " Rank Featured Listings "
    84828482msgstr ""
    84838483
    84848484#: ../views/admin-templates/extension.php:310
    84858485msgid "Rank Featured Listings is used to rank your featured listing items on your directory website."
    84868486msgstr ""
    84878487
    84888488#: ../views/admin-templates/extension.php:328
    84898489msgid " Post Your Need "
    84908490msgstr ""
    84918491
    84928492#: ../views/admin-templates/extension.php:329
    84938493msgid "Add new feature for your users where they can post for any kind of need or service that they want."
    84948494msgstr ""
    84958495
    84968496#: ../views/admin-templates/extension.php:347
    84978497msgid " Listings With Map "
    84988498msgstr ""
    84998499
    85008500#: ../views/admin-templates/extension.php:348
    85018501msgid "It adds new layout view that is listings and map side by side with advanced search/filters."
    85028502msgstr ""
    85038503
    85048504#: ../views/admin-templates/extension.php:366
    85058505msgid " Directorist Social Login "
    85068506msgstr ""
    85078507
    85088508#: ../views/admin-templates/extension.php:367
    85098509msgid "It lets your visitors register and login to your site using their social profiles (Facebook and Google)."
    85108510msgstr ""
    85118511
    85128512#: ../views/admin-templates/extension.php:387
    85138513msgid " Google reCAPTCHA "
    85148514msgstr ""
    85158515
    85168516#: ../views/admin-templates/extension.php:388
    85178517msgid "Protect your directory from spam entries with Google reCAPTCHA."
    85188518msgstr ""
    85198519
    85208520#: ../views/admin-templates/extension.php:407
    85218521msgid " Listings Slider and Carousel "
    85228522msgstr ""
    85238523
    85248524#: ../views/admin-templates/extension.php:408
    85258525msgid "Display listings slider anywhere on your website using this extension."
    85268526msgstr ""
    85278527
    85288528#: ../views/admin-templates/extension.php:428
    85298529msgid " Image Gallery "
    85308530msgstr ""
    85318531
    85328532#: ../views/admin-templates/extension.php:429
    85338533msgid "Display listing images gallery on single listing page using this extension."
    85348534msgstr ""
    85358535
    85368536#: ../views/admin-templates/extension.php:448
    85378537msgid " Listing FAQs "
    85388538msgstr ""
    85398539
    85408540#: ../views/admin-templates/extension.php:449
    85418541msgid "You can easily display listing's Frequently Asked Questions on each listing by using this extension."
    85428542msgstr ""
    85438543
    85448544#: ../views/admin-templates/extension.php:469
    85458545msgid " Booking ( Reservation & Appointment ) "
    85468546msgstr ""
    85478547
    85488548#: ../views/admin-templates/extension.php:470
    85498549msgid "Add a reservation/booking system on your directory using this extension."
    85508550msgstr ""
    85518551
    85528552#: ../views/custom-templates/directorist-single-listing.php:3
    85538553msgid "Directorist Single Listing Template"
    85548554msgstr ""
    85558555
    85568556#: ../views/front-end/user-dashboard.php:67
    85578557msgid "Please select a plan for %s to continue."
    85588558msgstr ""
    85598559
    85608560#: ../views/front-end/user-dashboard.php:349
    85618561msgid "Looks like you have not created any listing yet!"
    85628562msgstr ""
    85638563
    85648564#: ../views/front-end/user-dashboard.php:235
    85658565msgid "Untitled!"
    85668566msgstr ""
    85678567
    85688568#: ../views/front-end/user-dashboard.php:278
    85698569msgid "<span class=\"%s\">%s</span> "
    85708570msgstr ""
    85718571
    85728572#: ../views/front-end/user-dashboard.php:337, ../views/admin-templates/post-types-manager/all-listing-types.php:171, ../views/admin-templates/post-types-manager/all-listing-types.php:277
    85738573msgid "Delete"
    85748574msgstr ""
    85758575
    85768576#: ../views/front-end/user-dashboard.php:461
    85778577msgid "Full Name"
    85788578msgstr ""
    85798579
    85808580#: ../views/front-end/user-dashboard.php:465
    85818581msgid "Enter your full name"
    85828582msgstr ""
    85838583
    85848584#: ../views/front-end/user-dashboard.php:509
    85858585msgid "Cell Number"
    85868586msgstr ""
    85878587
    85888588#: ../views/front-end/user-dashboard.php:636
    85898589msgid "Listing Name"
    85908590msgstr ""
    85918591
    85928592#: ../views/front-end/user-dashboard.php:638
    85938593msgid "Unfavourite"
    85948594msgstr ""
    85958595
    85968596#: ../views/widget-templates/login-form.php:15, ../views/widgets/login.php:14
    85978597msgid " Invalid username or password!"
    85988598msgstr ""
    85998599
    86008600#: ../views/widget-templates/login-form.php:19, ../views/widgets/login.php:18
    86018601msgid "<p>Don't have an account? %s</p>"
    86028602msgstr ""
    86038603
    86048604#: ../views/widget-templates/submit.php:12, ../views/widgets/submit-listing.php:12
    86058605msgid "Submit New Listing"
    86068606msgstr ""
    86078607
    86088608#: ../views/widgets/contact-listing-owner.php:22
    86098609msgid "Message"
    86108610msgstr ""
    86118611
    86128612#: ../views/admin-templates/import-export/data-table.php:15
    86138613msgid "Column name"
    86148614msgstr ""
    86158615
    86168616#: ../views/admin-templates/import-export/data-table.php:16
    86178617msgid "Map to field"
    86188618msgstr ""
    86198619
    86208620#: ../views/admin-templates/import-export/data-table.php:29
    86218621msgid "Sample:"
    86228622msgstr ""
    86238623
    86248624#: ../views/admin-templates/import-export/data-table.php:35
    86258625msgid "Do not import"
    86268626msgstr ""
    86278627
    86288628#: ../views/admin-templates/listing-form/add-listing.php:16
    86298629msgid "Your Listing's motto or tag-line"
    86308630msgstr ""
    86318631
    86328632#: ../views/admin-templates/listing-form/add-listing.php:20
    86338633msgid "Select Price Range"
    86348634msgstr ""
    86358635
    86368636#: ../views/admin-templates/listing-form/add-listing.php:21
    86378637msgid "Short Description or Excerpt"
    86388638msgstr ""
    86398639
    86408640#: ../views/admin-templates/listing-form/add-listing.php:73
    86418641msgid "%s [%s]"
    86428642msgstr ""
    86438643
    86448644#: ../views/admin-templates/listing-form/add-listing.php:88
    86458645msgid "(Optional - Uncheck to hide pricing for this listing)"
    86468646msgstr ""
    86478647
    86488648#: ../views/admin-templates/listing-form/add-listing.php:104
    86498649msgid "Ultra High "
    86508650msgstr ""
    86518651
    86528652#: ../views/admin-templates/listing-form/add-listing.php:113
    86538653msgid "Cheap "
    86548654msgstr ""
    86558655
    86568656#: ../views/admin-templates/listing-form/add-listing.php:122
    86578657msgid "Views Count"
    86588658msgstr ""
    86598659
    86608660#: ../views/admin-templates/listing-form/add-listing.php:133
    86618661msgid "Short Description/Excerpt"
    86628662msgstr ""
    86638663
    86648664#: ../views/admin-templates/listing-form/contact-info.php:19, ../views/admin-templates/listing-form/contact-info.php:173
    86658665msgid "Phone Number"
    86668666msgstr ""
    86678667
    86688668#: ../views/admin-templates/listing-form/contact-info.php:20
    86698669msgid "Phone Number 2"
    86708670msgstr ""
    86718671
    86728672#: ../views/admin-templates/listing-form/contact-info.php:21, ../views/admin-templates/listing-form/contact-info.php:194
    86738673msgid "Fax"
    86748674msgstr ""
    86758675
    86768676#: ../views/admin-templates/listing-form/contact-info.php:23
    86778677msgid "Enter Email"
    86788678msgstr ""
    86798679
    86808680#: ../views/admin-templates/listing-form/contact-info.php:25
    86818681msgid "Listing Website eg. http://example.com"
    86828682msgstr ""
    86838683
    86848684#: ../views/admin-templates/listing-form/contact-info.php:27
    86858685msgid "Enter Zip/Post Code"
    86868686msgstr ""
    86878687
    86888688#: ../views/admin-templates/listing-form/contact-info.php:32, ../views/admin-templates/listing-form/contact-info.php:65
    86898689msgid "Check it to hide Contact Information for this listing"
    86908690msgstr ""
    86918691
    86928692#: ../views/admin-templates/listing-form/contact-info.php:52
    86938693msgid "Check it to hide listing contact owner form"
    86948694msgstr ""
    86958695
    86968696#: ../views/admin-templates/listing-form/contact-info.php:78
    86978697msgid "Google Address"
    86988698msgstr ""
    86998699
    87008700#: ../views/admin-templates/listing-form/contact-info.php:106
    87018701msgid "Or Enter Coordinates (latitude and longitude) Manually."
    87028702msgstr ""
    87038703
    87048704#: ../views/admin-templates/listing-form/contact-info.php:143
    87058705msgid "Hide Map"
    87068706msgstr ""
    87078707
    87088708#: ../views/admin-templates/listing-form/contact-info.php:162
    87098709msgid "Zip/Post Code"
    87108710msgstr ""
    87118711
    87128712#: ../views/admin-templates/listing-form/contact-info.php:184
    87138713msgid "Phone Number Two"
    87148714msgstr ""
    87158715
    87168716#: ../views/admin-templates/listing-form/contact-info.php:250
    87178717msgid "Enter Information about Business/Opening Hours"
    87188718msgstr ""
    87198719
    87208720#: ../views/admin-templates/listing-form/expiration-featured-fields.php:56
    87218721msgid "Mark as"
    87228722msgstr ""
    87238723
    87248724#: ../views/admin-templates/listing-form/image_upload.php:45, ../views/admin-templates/listing-form/media-upload.php:34
    87258725msgid "Upload Preview Image"
    87268726msgstr ""
    87278727
    87288728#: ../views/admin-templates/listing-form/image_upload.php:68, ../views/admin-templates/listing-form/media-upload.php:57
    87298729msgid "No Image Found"
    87308730msgstr ""
    87318731
    87328732#: ../views/admin-templates/listing-form/image_upload.php:69, ../views/admin-templates/listing-form/media-upload.php:58
    87338733msgid "No Images"
    87348734msgstr ""
    87358735
    87368736#: ../views/admin-templates/listing-form/image_upload.php:61, ../views/admin-templates/listing-form/media-upload.php:50
    87378737msgid "Listing Image"
    87388738msgstr ""
    87398739
    87408740#: ../views/admin-templates/listing-form/image_upload.php:63, ../views/admin-templates/listing-form/media-upload.php:52
    87418741msgid "Remove it"
    87428742msgstr ""
    87438743
    87448744#: ../views/admin-templates/listing-form/image_upload.php:80, ../views/admin-templates/listing-form/media-upload.php:69
    87458745msgid "Upload Slider Images"
    87468746msgstr ""
    87478747
    87488748#: ../views/admin-templates/listing-form/image_upload.php:84, ../views/admin-templates/listing-form/media-upload.php:73
    87498749msgid "Remove Images"
    87508750msgstr ""
    87518751
    87528752#: ../views/admin-templates/listing-form/image_upload.php:84, ../views/admin-templates/listing-form/media-upload.php:73
    87538753msgid "Remove Image"
    87548754msgstr ""
    87558755
    87568756#: ../views/admin-templates/post-types-manager/all-listing-types.php:27, ../views/admin-templates/settings-manager/settings.php:24
    87578757msgid "Documentation"
    87588758msgstr ""
    87598759
    87608760#: ../views/admin-templates/post-types-manager/all-listing-types.php:39
    87618761msgid "Feedback"
    87628762msgstr ""
    87638763
    87648764#: ../views/admin-templates/post-types-manager/all-listing-types.php:46
    87658765msgid "All Directory Types"
    87668766msgstr ""
    87678767
    87688768#: ../views/admin-templates/post-types-manager/all-listing-types.php:53
    87698769msgid "Create New Directory Type"
    87708770msgstr ""
    87718771
    87728772#: ../views/admin-templates/post-types-manager/all-listing-types.php:71, ../views/admin-templates/post-types-manager/all-listing-types.php:297
    87738773msgid "Migrate"
    87748774msgstr ""
    87758775
    87768776#: ../views/admin-templates/post-types-manager/all-listing-types.php:103
    87778777msgid "Created Date"
    87788778msgstr ""
    87798779
    87808780#: ../views/admin-templates/post-types-manager/all-listing-types.php:104
    87818781msgid "Action"
    87828782msgstr ""
    87838783
    87848784#: ../views/admin-templates/post-types-manager/all-listing-types.php:122
    87858785msgid "Default"
    87868786msgstr ""
    87878787
    87888788#: ../views/admin-templates/post-types-manager/all-listing-types.php:163
    87898789msgid "Make It Default"
    87908790msgstr ""
    87918791
    87928792#: ../views/admin-templates/post-types-manager/all-listing-types.php:216
    87938793msgid "Select File"
    87948794msgstr ""
    87958795
    87968796#: ../views/admin-templates/post-types-manager/all-listing-types.php:227
    87978797msgid "<b>Note:</b> You can use an existed directory ID to update it the importing file"
    87988798msgstr ""
    87998799
    88008800#: ../views/admin-templates/post-types-manager/all-listing-types.php:243
    88018801msgid "The directory has been imported successfuly, redirecting..."
    88028802msgstr ""
    88038803
    88048804#: ../views/admin-templates/post-types-manager/all-listing-types.php:257
    88058805msgid "Delete Derectory"
    88068806msgstr ""
    88078807
    88088808#: ../views/admin-templates/post-types-manager/all-listing-types.php:315
    88098809msgid "No"
    88108810msgstr ""
    88118811
    88128812#: ../views/admin-templates/post-types-manager/all-listing-types.php:319
    88138813msgid "Yes"
    88148814msgstr ""
    88158815
    88168816#: ../views/admin-templates/post-types-manager/edit-listing-type.php:13
    88178817msgid "Add/Edit Listing Types"
    88188818msgstr ""
    88198819
    88208820#: ../views/admin-templates/theme-extensions/all-themes-extensions.php:17, ../views/admin-templates/theme-extensions/all-themes-extensions.php:39
    88218821msgid "View Details"
    88228822msgstr ""
    88238823
    88248824#: ../views/admin-templates/import-export/body-templates/step-done.php:18
    88258825msgid "Import Completed!"
    88268826msgstr ""
    88278827
    88288828#: ../views/admin-templates/import-export/body-templates/step-done.php:19
    88298829msgid "listings imported"
    88308830msgstr ""
    88318831
    88328832#: ../views/admin-templates/import-export/body-templates/step-done.php:22
    88338833msgid "were skipped."
    88348834msgstr ""
    88358835
    88368836#: ../views/admin-templates/import-export/body-templates/step-done.php:29
    88378837msgid "View listings"
    88388838msgstr ""
    88398839
    88408840#: ../views/admin-templates/import-export/body-templates/step-one.php:17
    88418841msgid "Select CSV File"
    88428842msgstr ""
    88438843
    88448844#: ../views/admin-templates/import-export/body-templates/step-one.php:19
    88458845msgid "This tool allows you to import listing data to your directory from a CSV file."
    88468846msgstr ""
    88478847
    88488848#: ../views/admin-templates/import-export/body-templates/step-one.php:20
    88498849msgid "We strongly recommend reading our CSV import "
    88508850msgstr ""
    88518851
    88528852#: ../views/admin-templates/import-export/body-templates/step-one.php:21
    88538853msgid "documentation"
    88548854msgstr ""
    88558855
    88568856#: ../views/admin-templates/import-export/body-templates/step-one.php:22
    88578857msgid " first to help you do things in the right way."
    88588858msgstr ""
    88598859
    88608860#: ../views/admin-templates/import-export/body-templates/step-one.php:29
    88618861msgid "Choose a CSV file from your computer:"
    88628862msgstr ""
    88638863
    88648864#: ../views/admin-templates/import-export/body-templates/step-one.php:44
    88658865msgid "Upload CSV"
    88668866msgstr ""
    88678867
    88688868#: ../views/admin-templates/import-export/body-templates/step-one.php:44
    88698869msgid "No file chosen"
    88708870msgstr ""
    88718871
    88728872#. translators: %s: maximum upload size
    88738873#: ../views/admin-templates/import-export/body-templates/step-one.php:49
    88748874msgid "Maximum size: %s"
    88758875msgstr ""
    88768876
    88778877#: ../views/admin-templates/import-export/body-templates/step-one.php:36
    88788878msgid "Before you can upload your import file, you will need to fix the following error:"
    88798879msgstr ""
    88808880
    88818881#: ../views/admin-templates/import-export/body-templates/step-one.php:64
    88828882msgid "Update existing listings"
    88838883msgstr ""
    88848884
    88858885#: ../views/admin-templates/import-export/body-templates/step-one.php:68
    88868886msgid "Existing listings that match by ID will be updated. listings that do not exist will be skipped."
    88878887msgstr ""
    88888888
    88898889#: ../views/admin-templates/import-export/body-templates/step-one.php:72
    88908890msgid "CSV Delimiter"
    88918891msgstr ""
    88928892
    88938893#: ../views/admin-templates/import-export/body-templates/step-two.php:48
    88948894msgid "Map CSV fields to listings"
    88958895msgstr ""
    88968896
    88978897#: ../views/admin-templates/import-export/body-templates/step-two.php:49
    88988898msgid "Select Directorist fields to map it against your CSV file fields, leave it as \"Do not import\" to skip certain fields."
    88998899msgstr ""
    89008900
    89018901#: ../views/admin-templates/import-export/body-templates/step-two.php:46
    89028902msgid "Importing listings"
    89038903msgstr ""
    89048904
    89058905#: ../views/admin-templates/import-export/body-templates/step-two.php:55
    89068906msgid "Total %s items selected "
    89078907msgstr ""
    89088908
    89098909#: ../views/admin-templates/import-export/body-templates/step-two.php:64
    89108910msgid "Select Directory"
    89118911msgstr ""
    89128912
    89138913#: ../views/admin-templates/import-export/body-templates/step-two.php:80, ../views/admin-templates/import-export/body-templates/step-two.php:80
    89148914msgid "Run the importer"
    89158915msgstr ""
    89168916
    89178917#: ../views/admin-templates/import-export/header-templates/header.php:5
    89188918msgid "Download a sample CSV"
    89198919msgstr ""
    89208920
    89218921#: ../views/admin-templates/theme-extensions/my-themes-extensions/extensions-tab.php:169, ../views/admin-templates/theme-extensions/my-themes-extensions/extensions-tab.php:269, ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:110
    89228922msgid "Install"
    89238923msgstr ""
    89248924
    89258925#: ../views/admin-templates/theme-extensions/my-themes-extensions/extensions-tab.php:279
    89268926msgid "Get Now"
    89278927msgstr ""
    89288928
    89298929#: ../views/admin-templates/theme-extensions/my-themes-extensions/extensions-tab.php:265, ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:101
    89308930msgid "Activate"
    89318931msgstr ""
    89328932
    89338933#: ../views/admin-templates/theme-extensions/my-themes-extensions/my-themes-extensions.php:34
    89348934msgid "Refresh Purchase"
    89358935msgstr ""
    89368936
    89378937#: ../views/admin-templates/theme-extensions/my-themes-extensions/my-themes-extensions.php:40
    89388938msgid "Logout"
    89398939msgstr ""
    89408940
    89418941#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:2, ../views/admin-templates/theme-extensions/statistics/statistics.php:26
    89428942msgid "Active Theme"
    89438943msgstr ""
    89448944
    89458945#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:16
    89468946msgid "Customize"
    89478947msgstr ""
    89488948
    89498949#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:23
    89508950msgid "Update available"
    89518951msgstr ""
    89528952
    89538953#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:24
    89548954msgid "Update"
    89558955msgstr ""
    89568956
    89578957#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:74
    89588958msgid "Update Now"
    89598959msgstr ""
    89608960
    89618961#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:87
    89628962msgid "Available in your subscription"
    89638963msgstr ""
    89648964
    89658965#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:114
    89668966msgid "Demo"
    89678967msgstr ""
    89688968
    89698969#: ../views/admin-templates/theme-extensions/my-themes-extensions/themes-tab.php:105
    89708970msgid "Live Preview"
    89718971msgstr ""
    89728972
    89738973#: ../views/admin-templates/theme-extensions/statistics/statistics.php:10
    89748974msgid "Active Extensions"
    89758975msgstr ""
    89768976
    89778977#: ../views/admin-templates/theme-extensions/statistics/statistics.php:18
    89788978msgid "Available Extensions"
    89798979msgstr ""
    89808980
    89818981#: ../views/admin-templates/theme-extensions/statistics/statistics.php:34
    89828982msgid "Available Theme"
    89838983msgstr ""
    89848984
    89858985#: ../views/admin-templates/theme-extensions/statistics/statistics.php:49
    89868986msgid "Extensions updates Available"
    89878987msgstr ""
    89888988
    89898989#: ../views/admin-templates/theme-extensions/statistics/statistics.php:55, ../views/admin-templates/theme-extensions/statistics/statistics.php:70
    89908990msgid "All up to date"
    89918991msgstr ""
    89928992
    89938993#: ../views/admin-templates/theme-extensions/statistics/statistics.php:53, ../views/admin-templates/theme-extensions/statistics/statistics.php:68
    89948994msgid "Update All"
    89958995msgstr ""
    89968996
    89978997#: ../views/admin-templates/theme-extensions/statistics/statistics.php:65
    89988998msgid "Theme updates Available"
    89998999msgstr ""
  • directorist/trunk/readme.txt

    r2731298 r2752034  
    11=== Directorist - WordPress Business Directory Plugin with Classified Ads Listings ===
    22Contributors: wpwax
    33Donate link: https://directorist.com/extensions/
    44Tags: member directory, listing, classifieds, directory plugin, business directory
    55Requires at least: 4.6
    66Tested up to: 6.0
    77Requires PHP: 7.0
    8 Stable tag: 7.2.2
     8Stable tag: 7.2.3
    99License: GPLv3
    1010License URI: https://www.gnu.org/licenses/gpl-3.0.html
    1111
    1212The Best WordPress Directory Plugin to Create Business Directory, Job Listings, Classified Ads, Booking Directory, Local Directory, Service Directory
    1313
    1414== Description ==
    1515
    1616[Try Admin Demo](https://userdemo.wpwax.com/directorist/) | [Demos](https://directorist.com/demos/) | [Docs](https://directorist.com/documentation/directorist/) | [Themes](https://directorist.com/themes/) | [Extensions](https://directorist.com/extensions/) | [Roadmap](https://directorist.com/roadmap/)
    1717
    1818Want to build an online directory of business listings similar to Yelp, Yellow-Pages, or Tripadvisor on your WordPress site? If the answer is YES, you have come to the right place. Directorist Business Directory Plugin simplifies the process of creating powerful business directories or classified websites of any kind.
    1919
    2020[youtube https://www.youtube.com/watch?v=28gUzfsGmuk]
    2121
    2222The possibilities of a directory site are endless. You can use it as an income stream, a community service, a platform for others to keep their businesses running, to elevate existing business, and whatnot. Thousands have already started their journey, what’s stopping you? Try it, you will love it.
    2323
    2424🎉 Use [OneListing](https://directorist.com/product/onelisting/) FREE multi-purpose directory theme for a quick start.
    2525
    2626== THE ONLY WORDPRESS BUSINESS DIRECTORY PLUGIN YOU NEED ==
    2727
    2828Meet our powerful Directorist Business Directory plugin, highly optimized that can scale to millions of listings ensuring the most dynamic experience of managing online directory business. Using Directorist, you can create lists of directories based on the location, category, and other interests without writing a single line of code.
    2929
    3030🔥🔥🔥 **Directorist Mobile App for Android & iOS** 🔥🔥🔥
    3131
    3232If you want to make your directory website better accessible, highly interactive, and turn your visitors into paying customers, the Directorist mobile app is the one to take you to the rescue!
    3333
    3434📱 [Launch Your Mobile App Now](https://directorist.com/mobile-app/)
    3535
    3636== TYPES OF WEBSITES YOU CAN BUILD ==
    3737
    3838Using Directorist Business Directory plugin you can create classifieds websites and listing directories like a local business directory, car directory, booking directory, land selling directory, classified ads, team directory, job portal, directory portal, staff directory, medical directory, doctor directory, address book, review sites, restaurant directory, real estate, and many more!
    3939
    4040👉 Join Our FB Community : [Directorist Community](https://www.facebook.com/groups/directorist)
    4141👉 Official Facebook Page : [Like and Follow on Facebook](https://www.facebook.com/directorist)
    4242👉 Official Twitter handle : [Follow on Twitter](https://twitter.com/wpdirectorist)
    4343👉 Official YouTube Channel : [Follow on YouTube](https://www.youtube.com/c/wpWax)
    4444👉 Official Support : [Contact](https://directorist.com/dashboard/)
    4545
    4646Directorist Business Directory & Classified Listings is one of the leading and fast-growing business directory plugins in WordPress. It is fully compatible with popular WordPress themes that allow you to transform your existing website into a personalized business directory with tons of advanced features and functionalities.
    4747
    4848[youtube https://www.youtube.com/watch?v=iPZFpAqS7Ok]
    4949
    5050== Here’s What Users Say about Directorist - WordPress Business Directory Plugin with Classified Ads Listings ==
    5151
    5252>👨 __Simply the BEST directory plugin__
    5353
    5454>10 stars – no joke.
    5555>I tried several plugins, including paid ones on that canyon costing over 60 bucks, they did not satisfy at all. Directorist is super customizable, the devs are really helpful and the prices or their extensions are very reasonable. Would recommend it to anyone who is looking for a directory plugin. Even without paid upgrades, it’s a true beast!
    5656- By @collin43
    5757
    5858>💁 __Perfect for our project!__
    5959
    6060>This free plugin does what Classifieds premium themes don’t. It is very well thought out and personalized. I needed support and had a service note 10.
    6161- By @barenco
    6262
    6363>👨 __Amazing Plugin and Excellent Support__
    6464
    6565>The best ad plugin I have used. The simplicity and fluidity of use allow you to improve the user experience. Excellent support, I had a lot of questions and a lot of problems but the support was always by my side.
    6666- By @wadi2a
    6767
    6868== DIRECTORIST REVIEW BY EXPERTS ==
    6969
    7070[youtube https://www.youtube.com/watch?v=XnC9Lyw9w2k]
    7171[youtube https://www.youtube.com/watch?v=QTjmwhekF7s]
    7272
    7373== WHY SHOULD YOU USE DIRECTORIST - THE BUSINESS DIRECTORY PLUGIN? ==
    7474
    7575👉 **Multi Directory:** Boost your business directory possibilities by creating multiple directory types within the same directory. Add different sets of functionalities for each directory type and start managing them on the same website.
    7676
    7777👉 **Custom Form and Layout Builder:** Directorist form and layout builder allows you to build custom add listing and search form using drag and drop technology. Besides, you will also be able to design your “All listing” card and "Single Listing" page layout using the builder. Just drag and drop the items you want to show and give the directory a personalized appearance.
    7878
    7979👉 **Listing CSV Import/Export with Custom Field:** The new Directorist allows you to import listings with custom fields from the CSV file for no cost. Listing import and migrating to Directorist from another directory plugin is more effective now. Moreover, CSV export has also been added therefore domain switching, exporting to local is no longer a big deal!
    8080
    8181👉 **Beginner Friendly:** Thoughtfully designed user interface lets users operate the plugin with zero coding skills and get the most compelling user experience. This beginner-friendly plugin provides you a simple setup wizard to get you started.
    8282
    8383👉 **Monetize and Earn:** Expand your business with our amazing monetization features that allow you to create an additional income stream and generate unlimited revenue flow.
    8484
    8585👉 **Highly Extensible and Customizable:** Enhance the functionalities of your directory site with robust extensions and customize using the most popular page builder— Elementor.
    8686
    8787👉 **Booking System*:** Develop a service or event-oriented booking directory with scheduling functionality to hoist the possibilities of your directory business. e.g. Restaurant Reservation, Saloon Booking, Doctor appointments, Lawyers & Consultancy Firm).
    8888
    8989👉 **Live Chat*:** Integrate a private messaging system on your directory listing website that allows users to have a real-time private conversation with business owners.
    9090
    9191👉 **Gutenberg Blocks:** Directorist offers 16 blocks/widgets for the Gutenberg editor, which is the default visual interface for editing WordPress posts and pages. Now, using Gutenberg, you can create and edit Directorist template pages like the add listing, all listing, search home, all locations, all categories, and many others.
    9292
    9393Let’s take a look at some of the core features that make this WordPress directory plugin exclusive from others available in the market:
    9494
    9595== CORE DIRECTORIST FEATURES AT A GLANCE ==
    9696
    9797* Compatible with all themes including popular ones such as Avada, Divi, Astra, and OceanWP.
    9898* CSV Import/Export (listing, category, location, tag, media, etc.).
    9999* Highly optimized and rocket-fast performance to ensure scalability.
    100100* 25+ Elementor Page Builder widgets.
    101101* Gutenberg support and 16 Gutenberg blocks.
    102102* Advanced search filters to narrow down and yield accurate search results and with the addition of custom fields filter, elevate the search experience to a greater level.
    103103* Front-end and Back-end listing submission.
    104104* Front-end user dashboard to manage listings.
    105105* Open Street Map and Google Map Integration.
    106106* Unlimited custom fields to accommodate custom requirements on the listing form.
    107107* 100% responsive and modern-day design.
    108108* WooCommerce multi-vendor plugin compatible [Exclusive].
    109109* Built-in SEO optimization system as well as Yoast SEO compatibility.
    110110* Personalize the directory using a wide range of shortcodes.
    111111* GDPR compliant.
    112112* Ajax-powered listing and review submission.
    113113* Listing owner contact form.
    114114* Bulk or individual user announcement
    115115* Listing image slider.
    116116* Listing and Review submission without login (Guest Submission).
    117117* Listing reviews and ratings.
    118118* Display business hours, FAQs, image gallery, carousel & slider, Google reCAPTCHA for a listing using paid extensions.
    119119* Custom sidebar for single listing page.
    120120* Custom user Registration and Login.
    121121* New, Popular, Featured, and Open/Close badges.
    122122* Create an Unlimited listing based on location and category.
    123123* List and grid view for categories, locations, and listings pages.
    124124* Translate to any language effortlessly using Loco Translate plugin.
    125125* Sustainable for long-term use.
    126126* Updated regularly for flawless operation.
    127127* And many more!
    128128
    129129== Scale to Millions of Listings and Blazing Fast Experience ==
    130130
    131131There is no doubt that a fast-loading web page is crucial for a better user experience and search engine. Keeping that into account **Directorist Business Directory** plugin is built with industry-standard practices to provide you with a lightning-fast loading experience. It is a highly optimized plugin that can scale to millions of listings ensuring low memory consumption and efficient query execution.
    132132
    133133== Beautiful Modern Design and 100% Responsive ==
    134134
    135135Integrate Directorist Business Directory & Classified Listings with your existing theme and turn it into a personalized business directory or classifieds website using a wide range of functionalities. Directorist boasts modern-day designs with 3 types of view that include — grid, list, and map view. Integrate with popular themes like Astra, Avada, Divi, etc., and start your Business Directory right away with trending designs.
    136136
    137137== Easy Translation, RTL & Built-in SEO Solution ==
    138138
    139139Translate your business directory or classifieds website to any language effortlessly using the Loco Translate plugin that provides in-browser editing of the translation files and get your directory listing website optimized for SEO.
    140140
    141141👉 **Multilingual Facility:** Directory listing websites created by Directorist Business Directory are 100% translatable and can be translated into multiple languages.
    142142
    143143👉 **Built-in SEO:** Directorist Business Directory plugin lets you set custom meta titles and descriptions on every directory page. It is also compatible with the Yoast SEO plugin.
    144144
    145145👉 **RTL (Right to Left):** Directorist Business Directory plugin is fully compatible with RTL languages like Arabic, Aramaic, Hebrew, etc.
    146146
    147147== Powerful Ajax Powered Instant Search and Advanced Filters ==
    148148
    149149The Directorist Business Directory & Classified Listings advanced filter lets your users search listings based on numerous criteria like custom fields, tags, price range, etc. along with default text field, category, and location fields to elevate the search experience to a greater level.
    150150
    151151* Filtering using numerous fields to yield accurate results.
    152152* Geolocation and nearby listings.
    153153* Radius search based on address and zip.
    154154* Use custom fields as search filters.
    155155* Search widgets with 14 different filters.
    156156* Highly customizable filters for each type.
    157157
    158158== CSV Import/Export ==
    159159
    160160Get a compelling user-friendly system that simplifies the migration process by letting you import thousands of listings from a CSV file. Directorist Business Directory CSV Tool is painstakingly developed to corroborate a smoother migration process.
    161161
    162162* Complete migration to Directorist Business Directory in just a few clicks.
    163163* Import thousands of listings or more in no time.
    164164* Map any field types to Directory listing fields.
    165165
    166166== Unlimited Custom Fields ==
    167167
    168168Add unlimited custom fields to accommodate custom requirements on the listing form also, you can use custom fields as search filters to get the best search results. You can add fields like select, file, URL, radio, checkbox, and many more
    169169
    170170* Create unlimited custom fields for the listing form.
    171171* Create custom fields by choosing from 11 different field types.
    172172* Search using custom fields for accurate search results.
    173173
    174174== Extensive Monetization Facility ==
    175175
    176176Directorist Business Directory & Classified Listings allows you to monetize your business directory website in various ways. Let’s take a look at them:
    177177
    178178👉 **Featured Listing:** Earn money by featuring each of the listings of your site users according to their purchase. In this process, you make listings featured and promote them that are displayed at the top of the listing page.
    179179👉 **Paid Listing*:** Get paid for each listing your users submit! You can create unlimited pricing plans by providing different sets of values to get paid by listing the submissions. To make it happen requires a cost-effective premium extension.
    180180👉 **Claim Listing*:** Make money by allowing business owners to claim their listing and get verified.
    181181👉 **Pay Per Submit*:** Earn by charging users to create a listing on your site.
    182182>*Requires Additional Purchase
    183183
    184184== Frontend Listing Submission and Listing Management ==
    185185
    186186Directorist Business Directory & Classified Listings allows users to submit and manage listings from the front end of the site without having to log in to the admin panel. Directorist provides a smart frontend Dashboard system for users to manage their listings, change plans, change passwords etc. without accessing the admin panel.
    187187
    188188* Add listings using the frontend listing form.
    189189* Renew/Change plan from the frontend.
    190190* Intuitive user dashboard for managing the listings.
    191191* Maintain business without accessing the admin panel
    192192
    193193== Multiple Mapping Source ==
    194194
    195195Location or address search is an important aspect of a business directory and classified ads site. Directorist Business Directory provides a flexible mapping source offering Google Maps and OpenStreetMap to help users to find their desired service.
    196196
    197197👉 **Google Maps:** Use the most popular and versatile mapping platform for free with limited quota provided by Google.
    198198👉 **OpenStreetMap:** A free easy-to-use mapping platform to display location and use map features without the need for Map API.
    199199
    200200== Robust Payment Gateways ==
    201201
    202202More options for getting paid means more ways to earn revenue. By default, **Directorist Business Directory** allows you to use an offline payment method for free. You can set up a bank transfer method as an offline payment gateway using the free version.
    203203
    204204If you want to scale up your payment gateway using an online payment method, and you can use [PayPal](https://directorist.com/product/directorist-paypal/) , [Stripe](https://directorist.com/product/directorist-stripe/) or [Authorize.Net](https://directorist.com/product/directorist-authorize-net/) by purchasing cost-effective extensions. In addition to this, using this WordPress directory plugin taxes and recurring options can be added into your online payment system respectively.
    205205
    206206== Easy to Use and Highly Customizable ==
    207207
    208208Make a powerful and beautiful business directory or classifieds website with the most user-friendly business directory plugin. Anyone can turn his/his website into a powerful and professional directory website with this plugin without having any programming skill.
    209209
    210210* Design your directory site using 25+ Elementor widgets.
    211211* Personalize using a wide range of shortcodes and parameters.
    212212* Numerous widgets can be added:
    213213    * Author info
    214214    * Search listing
    215215    * Popular listing
    216216    * Featured listing
    217217    * Similar listing
    218218    * Map
    219219    * And many more
    220220* Site owner can customize the email templates as it’s needed and many more.
    221221
    222222== Developer Friendly ==
    223223
    224224🎉 **Templating:** Directorist offers a robust templating system that allows you to override all the Directorist default template files without amending any of the plugin codes.
    225225
    226226WordPress developers can extend the plugin functionalities infinitely using available hooks and filters.
    227227
    228228== Constructed with Clean Code ==
    229229
    230230We prioritize quality over quantity and the whole system is constructed with clean codes.
    231231
    232232== Action and Filter Hooks ==
    233233
    234234Directorist Business Directory provides a vast array of action and filter hooks so that the developers can customize the plugin according to their needs.
    235235
    236236== Easy Review Management ==
    237237
    238238Directorist Business Directory provides a smart way to manage reviews for all the listings. As a site owner, you can allow or disallow a listing submitter to review his own listing. You will also get an option for instance review approval or keeping it pending if reviewers give reviews.
    239239
    240240== Incredible Support ==
    241241
    242242Our dedicated support team always loves to get queries from our users and they are quite good at serving our users’ purposes. As we care user’s needs, like the previous days, as always, our users will get premium support in the coming days.
    243243
    244244== Build by a Dynamic Team & Backed by a Wonderful Company ==
    245245
    246246We aim to provide you with the best professional business directory plugin. Our team is full of dedicated developers, designers, support engineers and marketers who spent countless hours to make this plugin the most convenient to its users. We’re constantly working to improve the plugin by adding new features and fixing the bugs in the best possible way.
    247247
    248248Getting Started with the **Directorist Business Directory** is only a matter of a few clicks. Check out the [detailed guide through our documentation](https://directorist.com/documentation/) on our official website in order to operate the plugin in the best possible way.
    249249
    250250== Extensions ==
    251251
    252252Directorist Business Directory offers cost-effective premium [Extensions](https://directorist.com/extensions/) to extend the functionalities of your directory listing website.
    253253
    254254👉 **[Pricing Plans](https://directorist.com/product/directorist-pricing-plans/)** - This feature extension allows you to create unlimited pricing plans with no time. In addition to this you can add different sets of features including private plans for specific users that can keep hidden from the rest of users. You also can set up recurring payments to your system which enhances your pricing plans on your directory listing website.
    255255
    256256👉 **[WooCommerce Pricing Plans](https://directorist.com/product/directorist-woocommerce-pricing-plans/)** - This extension enables you to use all the payment gateway supported by WooCommerce itself. It is also integrated with WooCommerce Subscriptions which offers recurring payment system, making room for users to use a free plan, auto expiration system and the money generation from subscription signup fee, all these things you can do with no bother to hike up your online business exactly very close to the hearts of your customers.
    257257
    258258👉 **[PayPal Payment Gateway](https://directorist.com/product/directorist-paypal/)** - Get paid through the PayPal payment gateway on your directory listing website.
    259259
    260260👉 **[Stripe Payment Gateway](https://directorist.com/product/directorist-stripe/)** - Scale up your payment gateway by using Stripe Payment Gateway extension. This extension is used to accept payment through Credit Cards. David Cards, Visa Card, MasterCard, Apple Pay, Google Pay, AliPay, and many more. This 3D secured extension supports 135 currencies all through the world.
    261261
    262262👉 **[Authorize.Net Payment Gateway](https://directorist.com/product/directorist-authorize-net/)** - Directorist Authorize Payment Gateway is a secured payment solution that accepts a great number of payment options for Directorist Pricing Plan like Visa, MasterCard, Discover, AmEx, JCB, PayPal, and more.
    263263
    264264👉 **[Booking(Reservation & Appointment)](https://directorist.com/product/directorist-booking/)** - Set up a system for booking online shows, consultations, seminar, wedding invitations, training classes, restaurant, saloon reservations, doctor appointment, lawyer, consultancy firm, and so on.
    265265
    266266👉 **[Claim Listing](https://directorist.com/product/directorist-claim-listing/)** - This add-on allows business owners to visit your site and pay to get the ownership of their specific listing just like Foursquare and Yelp with a few clicks.
    267267
    268268👉 **[Post Your Need](https://directorist.com/product/directorist-post-your-need/)** - You can hardly find this unique feature extension in any other directory listing plugins. It supports business owners to communicate with consumers and solve their problems on a personal level.
    269269
    270270👉 **[Listing With Map](https://directorist.com/product/directorist-listings-with-map/)** - If you want to add a new layout that will show your listings with the map side by side bearing advanced filtering options, this feature extension would be the best bet for you. In this case, when you filter the listings, the search results will be updated without even loading the page.
    271271
    272272👉 **[Live Chat](https://directorist.com/product/directorist-live-chat/)** - Integrate private messaging system on your directory listing website and make your business more credible by ensuring customer satisfaction.
    273273
    274274👉 **[Image Gallery](https://directorist.com/product/directorist-image-gallery/)** - This feature extension allows you to add unlimited images for your gallery on your directory listing website. You can use a lightbox with an image cropping facility on your website.
    275275
    276276👉 **[Mark as Sold](https://directorist.com/product/directorist-mark-as-sold/)** - This allows the listing authors an opportunity to let their visitors know if a particular item is sold or not on their directory listing website.
    277277
    278278👉 **[Google ReCAPTCHA](https://directorist.com/product/google-recaptcha/)** - If you want to protect your directory listing website from fake/spam user registration, this feature extension is the right choice to ensure spam protection. This will stop all the auto-generated bots from submitting by setting up a Google reCAPTCHA challenge while registering users.
    279279
    280280👉 **[Listing Slider & Carousel](https://directorist.com/product/directorist-listings-slider-carousel/)** - Display your listings with beautiful sliders and carousels. This highly customizable tool will allow you to display sliders and carousel on any pages, posts, and even in widgets. There are 18 shortcode attributes for sliders and 28 shortcode attributes for Carousel.
    281281
    282282👉 **[Business Hours](https://directorist.com/product/directorist-business-hours/)** - This feature extension is used to inform the customers when the business is open and when to close. It shows the opening and closing duration of your business hours. You can customize the timezone with a badge system.
    283283
    284284👉 **[Listing FAQs](https://directorist.com/product/directorist-listing-faqs/)** - Set up an **FAQ** section on your directory listing website to satisfy your visitors and convert them into your loyal customers.
    285285
    286286👉 **[Social Login](https://directorist.com/product/directorist-social-login/)** - Allow you users to register and login to your directory listing website using their social media channels. In this process, the registration process becomes faster and handy without waiting for the validation process.
    287287
    288288👉 **[Rank Featured Listings](https://directorist.com/product/directorist-rank-featured-listings/)** - To rank your featured listing items on your directory website. Sometimes you may need to rank all your featured listings if it happens on a larger scale. Using this extension, you will get complete and the most affordable solution out there you needed.
    289289
    290290👉 **[Compare Listings](https://directorist.com/product/directorist-compare-listings/)** - Allows visitors to add a set of listings in a list and compare its features by viewing in a comparison table.
    291291
    292292👉 **[Oxygen Builder Integration](https://directorist.com/product/directorist-oxygen-integration/)** - It combines all the functionalities needed to create a complete WordPress directory website using Oxygen Builder.
    293293
    294294👉 **[BuddyBoss Integration](https://directorist.com/product/directorist-buddyboss-integration/)** - It is used to integrate the giant Directorist with the popular BuddyBoss plugin. It combines all the functionalities needed to create a complete community based WordPress directory website using Directorist plugin and BuddyBoss platform.
    295295
    296296👉 **[BuddyPress Integration](https://directorist.com/product/directorist-buddypress-integration/)** - Directorist - BuddyPress Integration is a premium extension which makes Direcorist and BuddyPress work as a single integrated app, allowing you to build a hybrid listings directory and social network together.
    297297
    298298👉 **[Multi Directory Linking](https://directorist.com/product/directorist-directory-linking/)** - If you are running multi-directories on your directory website, Multi-directory Linking will be an awesome extension that will allow your users to connect to other types of directories.
    299299
    300300👉 **[Mailchimp Integration](https://directorist.com/product/directorist-mailchimp-integration/)** - Directorist Mailchimp Integration Connects Directorist with Mailchimp. It helps you to make your directory business grow faster and smarter with more leads.
    301301
    302302🔥 **[GamiPress Integration](https://directorist.com/product/directorist-gamipress-integration/)** - Directorist GamiPress Integration allows you to coalesce the famous plugin, GamiPress with Directorist activity events based on the points gained and features to make your directory website even more magnetic and interactive.
    303303
    304304🔥 **[WPML Integration](https://directorist.com/product/directorist-wpml-integration/)** - Directorist WPML Integration allows you to create multilingual directory with few steps.
    305305
    306306🔥 **[Connections to Directorist Migrator](https://wordpress.org/plugins/connections-to-directorist-migrator/)** - Directorist offers a user-friendly tool to simplify the migration process by letting you import thousands of Connections listings data to Directorist without the need to import/export CSV.
    307307
    308308== Themes ==
    309309
    310310Directorist Business Directory offers free and cost-effective premium [Directorist Themes](https://directorist.com/theme/) to extend the look & functionalities of your directory listing website.
    311311
     312🔥 **[dHotels](https://directorist.com/product/dhotels/)** - dHotels is mapped out with the aim to allow you to create a hotel directory website exactly the same way you have in your imagination.This hotel theme for WordPress is 100 % mobile responsive. Meaning, it fits any screen from mobile phones to desktops.
     313
    312314🔥 **[dClassified](https://directorist.com/product/dclassified/)** - dClassified is a theme that is specially rigged up to create classified listing websites with aplomb. The theme is clean and simple yet one of the most powerful Classified WordPress themes with a string of useful features that you need to build your classified website.
    313315
    314316🔥 **[OneListing Pro](https://directorist.com/product/onelisting-pro/)** - If you are trying to create a directory website but are worried to give it the look the way you are portraying in your mind, OneListing Pro is the go-to theme for you. No matter which type of directory website you are going to build, OneListing Pro is designed in a way that can align with any design you can fantasize about.
    315317
    316318👉 **[dCar](https://directorist.com/product/dcar/)** - dCar theme is hammered out to construct a car directory that fits any screen, from the largest desktop screens, over any tablet size, down to the smallest smartphones. It’s a theme that showers you to create a car directory with selling and renting features.
    317319
    318320👉 **[dPlace](https://directorist.com/product/dplace/)** - dPlace theme is tailored to meet all the nitty gritties to build attractive mobile responsive travel agency directory websites. As a full-fledged theme, it will allow you to create travel & tour directories with booking and reservation features.
    319321
    320322👉 **[dRestaurant](https://directorist.com/product/drestaurant/)** - Are you looking for the best restaurant directory theme that brings you more business? Then, nothing can beat dRestaurant, as it is the most powerful theme that checks all your visual needs with the concept of scalability in mind.
    321323
    322324👉 **[dRealestate](https://directorist.com/product/drealestate/)** - dRealestate is tailored to meet all the bells and whistles to make your real estate directory as attractive and as lucrative as possible. The theme is completely mobile responsive and compatible with popular page builders including widgets that allows you to give your real estate directory website any look you can imagine under the sun.
    323325
    324326👉 **[dDoctors](https://directorist.com/product/ddoctors/)** - A hospital directory website is where you need to show which types or categories of specialist doctors are available, whether they are bookable, what exactly the visit fee is etc. You can do so at ease with the dDoctor theme implementing an out-of-this-world design that fits the medical niche like never before.
    325327
    326328👉 **[dLawyers](https://directorist.com/product/dlawyers/)** - dLawyers is a beautiful WordPress directory theme for legal, legal adviser companies, legal offices, court consultants, lawyers, counsel bureau, attorney agencies, and other law-related businesses.
    327329
    328330👉 **[dList](https://directorist.com/product/dlist/)** - dList is a listing directory WordPress theme that provides immense opportunities to build any kind of directory or listing site. You may design pages on the front-end and watch them instantly come to life.
    329331
    330332👉 **[dService](https://directorist.com/product/dservice/)** - dService is a kind of listing Directory WordPress theme that brings business owners and customers on the same platform.
    331333
    332334👉 **[Directoria](https://directorist.com/product/directoria/)** - Directoria is an astonishing directory and listing WordPress theme that is designed and developed to provide the fastest page loading speed without knowing a single line of code.
    333335
    334336== 🔔🔔🔔 Coming soon... ==
    335337
    336338* Digital Marketplace
    337339* Advanced Review System
    338340* dEvent (Theme)
    339341* dJobs (Theme)
    340 * dHotels (Theme)
    341342
    342343Apart from purchasing above mentioned individual extensions or themes, you can get all of the **Directorist Business Directory** extensions and themes in membership as a bonus at a discounted price from the [Directorist Membership](https://directorist.com/pricing/) plan.
    343344
    344345If you face any issues with managing this awesome business directory plugin in person, feel free to reach out! Our dedicated support team is always ready to help you in the best possible ways.
    345346
    346347
    347348== Contribute to Directorist - The Best Business Directory Plugin ==
    348349
    349350If you want to contribute to the project, you’re most welcome to make it happen. The full source code is available on [GitHub](https://github.com/aazztech/directorist). If you find anything improbable, feel free to shoot a bug report.
    350351
    351352
    352353== Privacy Policy ==
    353354Directorist – Business Directory Plugin uses Appsero SDK to collect some telemetry data upon user's confirmation. This helps us to troubleshoot problems faster & make product improvements.
    354355
    355356Integrating Appsero SDK **DOES NOT IMMEDIATELY** start gathering data, **without confirmation from users in any case.**
    356357
    357358== Installation ==
    358359
    3593601. Unzip the downloaded zip file and upload the plugin folder into the `wp-content/plugins/` directory. Alternatively, upload from Plugins >> Add New >> Upload Plugin.
    3603612. Activate the plugin from the Plugins page.
    361362
    362363= Usage =
    363364[Click here](https://directorist.com/documentation/directorist/) for the Documentation.
    364365
    365366== Frequently Asked Questions ==
    366367
    367368= Is Directorist - WordPress Business Directory Plugin with Classified Ads Listings freemium in type? =
    368369Directorist is a free business directory plugin that offers a number of paid extensions to extend the functionalities of your directory listing website.
    369370
    370371= How to make a listing featured? =
    371372You can make a listing featured according to the respective pricing plans.
    372373
    373374= Is there any widget facility with Directorist Business Directory plugin? =
    374375Absolutely, you will get 35+ custom widgets using this awesome plugin.
    375376
    376377= Is Directorist - WordPress Business Directory Plugin with Classified Ads Listings compatible with any themes out there in the market? =
    377378Yes, Directorist is built in such a way that it works smoothly with all the major themes in the market.
    378379
    379380= Can I translate the Directorist - WordPress Business Directory Plugin with Classified Ads Listings to my language and make it multi-lingual? =
    380381Yes, you can use the Loco Translate plugin or Poedit tool to translate your directory into your language. You can also make it multi-lingual using the gTranslate or Polylang plugin. For more information and guidelines refer to the blog post [here](https://directorist.com/blog/how-to-make-directorist-multi-lingual).
    381382
    382383= What types of directories can I build? =
    383384Directorist is a complete directory solution and in combination with its advanced extensions, you can build directories of any kind. For example:
    384385
    385386* Booking directory
    386387* Classifieds directory
    387388* Service-based directory
    388389* Hotel directory
    389390* Local directory
    390391* Restaurant directory
    391392* Professional directory
    392393* Car directory
    393394* Member directory
    394395* Real-estate directory and many more
    395396
    396397== Changelog ==
    397398
     3997.2.3 – Jul 05, 2022
     400
     401* Improve - Plugin security
     402
    3984037.2.2 – May 25, 2022
    399404
    400 * Add - WordPress 6.0 compatibility
    401405* Add - WPML extension compatibility
    402406* Add - Auto field mapping on CSV importer
    403407* Fix - Instant searching issue with selected listing ids in shortcode
    404408* Improve - Search form templating
    405409
    4064107.2.1 – May 9, 2022
    407411
    408412* Add - Listing search based on zip code radius
    409413* Add - New option to restrict frontend user registration
    410414* Fix - Listing search issue with special character
    411415* Fix - Single taxonomy shows the wrong result if the directory_type parameter exist in the URL
    412416* Fix - Issues in pricing template of Add Listing form
    413417* Fix - Translation issues in the search form
    414418* Fix - Missing shortcode attributes in search control when switching category
    415419* Fix - Directory type creation issue with special character in the title
    416420* Fix - Select2 does not work after re-initialization
    417421* Fix - Select2 category field is not working when the search widget used in the sidebar
    418422* Fix - Pagination issue with instant search (when disabled view as a dropdown)
    419423* Fix - Console error in listing's archive pages
    420424* Fix - Update all Themes button is not working on the membership page
    421425* Fix - Single taxonomy searching issue with instant search
    422426* Fix - Multiple listing submitted on clicking Listing Submit button too frequently
    423427* Fix - Listings column issue with Elementor’s widgets
    424428
    4254297.2.0 – Mar 30, 2022
    426430
    427431* Add - Instant search in all listings page
    428432* Add - directorist_listing_reported action hook
    429433* Add - directorist_listing_imported action hook
    430434* Add - directorist_loaded action hook
    431435* Fix - Style issues
    432436* Fix - Console errors
    433437* Fix - Data update notice missing when directorist_db_version is null
    434438* Fix - File path reading issue in some specific server configuration
    435439* Fix - Review email issue
    436440* Fix  - Listing importing issues with preview image
    437441* Improve - Codebase
    438442* Tweak - User favorites
    439443
    4404447.1.2 – Feb 17, 2022
    441445
    442446* Fix - Fatal error when review disabled
    443447
    4444487.1.1 – Feb 16, 2022
    445449
    446450* Add - Load category custom field when selecting search form categories
    447451* Add - 'section_data' as the second parameter of 'directorist_single_section_has_contents' filter hook
    448452* Fix - User not able to select address if there's no map added on the add listing form
    449453* Fix - Wrong listings in Author Profile page where usernames with a space
    450454* Fix - Wrong directory type assign if search form used with listing form
    451455* Fix - Search Form category loading issue with select2 lazy load
    452456* Fix - Migration confirmation notice on fresh Installation
    453457* Fix - Some minor issues with the review system
    454458* Fix - Google map info window issue
    455459* Fix - Style & responsive issues
    456460* Fix - Error in System Info page
    457461* Improve - Resource loading and performance
    458462* Tweak - External links from settings & builder open in new tab
    459463
    4604647.1.0 – Jan 19, 2022
    461465
    462466* New - Reply in review or other replies
    463467* New - Optional website field for guest review
    464468* Improve - Inplace review and reply editing
    465469* Improve - Guest review without auto account register
    466470* Improve - Review section design
    467471* Improve - Faster review query
    468472* Improve - Faster rating search
    469473
    4704747.0.8 – Dec 29, 2021
    471475
    472476* New - Hide search form fields by shortcode parameter
    473477* New - Option to create All Authors page shortcode from setup wizard
    474478* Fix - Listing image uploader validation issue in add listing form
    475479* Fix - Theme updating issues from subscriptions management page
    476480* Fix - Single category and location page compatibility issues with Polylang plugin
    477481* Fix - Admin add listing form issue (add custom event listener on directory type change )
    478482* Fix - Style issues
    479483* Improve - Colour picker field in settings panel
    480484* Improve - Default directory type query (directorist_get_default_directory())
    481485* Remove - Unofficial extensions form membership page
    482486
    4834877.0.7 – Dec 8, 2021
    484488
    485489* New - Nav icon in related listings carousel
    486490* New - Option to allow users to apply map's default location on listings map view
    487491* New - Search form categories lazy loading.
    488492* Improve - Search form loading performance.
    489493* Improve - Directory type slug editing experience
    490494* Improve - Overall query performance.
    491495* Fix - Style issues
    492496* Fix - Rest API endpoint
    493497* Fix - OG meta conflict with Yoast SEO plugin
    494498* Fix - Author listings columns synced with all listings template
    495499* Fix - Rewrite roles conflict with Polylang plugin
    496500* Fix - Listing importer create new directory type
    497501* Fix - Add listing form parameter
    498502* Fix - display_preview_image parameter issue of all listings shortcode
    499503* Fix - Overlapped advanced filter height issue
    500504* Tweak - Default redirection after login and registration
    501505
    5025067.0.6.3 – Nov 22, 2021
    503507
    504508* Fix - Listing review issues
    505509* Fix - All listing page dropdown toggle issue
    506510* Fix - Dummy data importing issue
    507511* Fix - File upload issues
    508512* Fix - Contact listing owner form issues
    509513* Fix - Search address field autocomplete issue
    510514* Fix - Yoast SEO meta key issue
    511515* Fix - Address saving issue when search form use in listing form
    512516* Improve - Security
    513517
    514518
    5155197.0.6.2 – Nov 15, 2021
    516520
    517521* Fix - Security issues
    518522
    5195237.0.6.1 – Nov 14, 2021
    520524
    521525* Fix - Security issues
    522526
    5235277.0.6 – Nov 11, 2021
    524528
    525529* New - Public Rest API to read and write directory data
    526530* New - Notification event API
    527531* New - WhatsApp option in listing phone
    528532* New -[directorist_all_authors] shortcode to show all directory authors (https://directorist.com/documentation/directorist/shortcodes/all-authors/)
    529533* Fix - File upload in add listing form
    530534* Fix - Reset button when multiple form use in a page
    531535* Improve - Style in listing form, single listing and archive page
    532536* Tweak - Profile edit form of User Dashboard page
    533537* Tested - With WordPress 5.8.2
    534538
    5355397.0.5.6 – Oct 25, 2021
    536540
    537541* Fix - Search form issues when the form is used twice
    538542* Fix - Report listing couldn’t track the logged-in user
    539543* Fix - Modify browser title for the non-directorist page
    540544* Fix - Couldn’t find a field if the field has no label in the submission form
    541545* Fix - Extensions template override
    542546* Fix - Selecting all listing page as site homepage and navigate directory type redirect to blog page
    543547* Fix - Issue with listing content ( remove get_the_content and add directorist_the_content )
    544548* Fix - Add listing geo suggestion when search form is used on the same page
    545549* Fix - Google and OpenStreetMap issues with some cache and optimiser plugin
    546550* Fix - Unfavourite listing issue on the user dashboard
    547551* Fix - Field key required message on add listing form builder
    548552
    549553
    5505547.0.5.5 – Sep 20, 2021
    551555
    552556* Fix - Product endpoint loading issue
    553557
    5545587.0.5.4 – Sep 13, 2021
    555559
    556560* Fix - Search widget compatibility issue with directory builder
    557561* Fix - HTML 5 validation issue in add listing form (location, category, tag)
    558562* Fix - Single Listing custom page
    559563* Fix - Select custom field issue in search listing form
    560564* Fix - Elementor’s deprecated method
    561565* Fix - PHP notice in some pages
    562566* Fix - BuddyBoss theme menu compatibility issue
    563567* Fix - Duplicate HTML ID issue
    564568* Fix - Select2 issue on add listing page
    565569* Fix - tagDiv page builder single template override issue
    566570* Fix - Listing type nav responsive issue
    567571* Fix - Category, Location, and Tag importing issues
    568572* Fix - Console error when image uploader has invalid data
    569573* Fix - Icon issue in all listings page for logged out user
    570574* Fix - Extra padding in add listing OpenStreetMap geo suggestions
    571575* Fix - Extra padding in single listing map info window
    572576* Fix - Extra padding on uploader file in add listing form
    573577* Fix - Custom field’s “See More” link
    574578* Fix - Review placeholder issue in the search form
    575579* Tweak - Single listing social share open in a new tab
    576580* Tweak - Profile update notification hide automatically after few seconds
    577581* Improve - WP Query
    578582* Improve - Member subscription page
    579583* Improve - Extensions compatibility
    580584* Improve - Google map view
    581585* Update - Appsero client lib
    582586* Remove - Builder data sanitization option
    583587
    5845887.0.5.3 – Aug 12, 2021
    585589
    586590* new - Autofill in user registration form
    587591* new - Missing FontAwesome and LineAwesome icons
    588592* new - New hooks
    589593* Fix - Listing permalink issues
    590594* Fix - Spacing issue
    591595* Fix - Responsive issues with popular themes
    592596* Fix - Select2 issue
    593597* Improve - HTML markup
    594598* Improve - Listing importer
    595599* Improve - Error handing in subscription management page
    596600* Improve - Compatibility with BuddyPress and BuddyBoss
    597601
    5986027.0.5.2 – Aug 2, 2021
    599603
    600604* Fix - Compatibility issue with WP v5.8
    601605* Fix - Alignment issue in subscription management page
    602606* Fix - Listings grid responsive issue
    603607* Fix - Single listing shortcode module
    604608* Fix - Performance issue (reduced MySQL queries)
    605609* Fix - Listing updating issue from admin listing form, (if directory default expire set to NaN)
    606610* Fix - Listing search returns no result on admin dashboard
    607611* Fix - Edited review creates new review
    608612* Fix - Listing gets published when saving as draft from backend
    609613* Fix - PHP notice on 404 page
    610614* Fix - Builder saving issue (environment specific)
    611615* Fix - Invalid key declaration in settings panel
    612616* Fix - Add to favourite is not working on related listings section
    613617* Fix - Wrong html end tag in several template files
    614618* Fix - Single category, location & tag page not working when term name/slug is not in English
    615619* Fix - Single listing permalink issue in widgets area
    616620* Fix - Permalink issue in all listing directory type nav
    617621* Fix - Update - Appsero client lib
    618622e issues
    619623* Improve - Select field in settings panel and builder
    620624
    6216257.0.5.1 – JUL 14, 2021
    622626
    623627* Fix – Empty placeholder warning issues in add listing form
    624628
    6256297.0.5 – JUL 14, 2021
    626630
    627631* New – Custom shortcode/HTML support in single listing
    628632* New - Single listing shortcode template
    629633* New - Text alignment & atyle option in Elementor search form widget
    630634* New - 16 Gutenberg blocks
    631635* New - Option to edit directory type slug
    632636* New - Unmimified assets
    633637* Fix - Placeholder issue in add listing form
    634638* Fix - Update - Appsero client lib
    635639e issues
    636640* Fix - SEO issues
    637641* Fix - Map info window issue of OpenStreetMap
    638642* Fix - Radius field issue on search form
    639643* Fix - Zoom and markup preload issue fixed in google map view
    640644* Fix - Closing tag issue in custom field template
    641645* Fix - Search forms default button issues
    642646* Fix - Deprecated notice from Elementor plugin
    643647* Fix - Contact Listing Owner Form issue
    644648* Fix - Custom fields assigned with category in listing form
    645649* Fix - Single listing slider’s thumbnail issue
    646650* Fix - Settings panel quotation issue
    647651* Fix - Expired listing notification issue
    648652* Fix - Listing URL issue at email templates
    649653* Fix - Review form issue for listing author
    650654* Improve - Filter hook ( ‘atbdp_email_templates_settings_sections’ to ‘directorist_login_form_templates_settings_sections’ )
    651655* Improve - GET method replaced by REQUEST method on search query
    652656
    653657= 7.0.4.1 - May 24, 2021 =
    654658
    655659* Fix - Fatal error form membership management page
    656660* Fix - Author listing pagination is not working
    657661* Fix - Settings Color issue
    658662* Fix - Edit listing redirect url issue with checkout
    659663* Fix - Multiple times file upload custom field issue in add listing
    660664* Fix - No result found searching from checkbox
    661665* Fix - Title and description editing issue
    662666* Fix - Quick login issue
    663667* Fix - Listings disappearing from listings page
    664668* Fix - Settings panel slashing issue
    665669* Fix - Settings panel slashing issue
    666670* Fix - Custom fields issue in search form
    667671* Fix - Number field autoplay
    668672* Fix - Asset loading issue with page builders
    669673* Add - Buttons (renew and promote) in user dashboard
    670674* Add - Filter hook to range slider and dashboard query arguments
    671675* Tweak - Options panel
    672676* Improve - Form Builder
    673677* Improve - Dummy CSV file
    674678* Remove - Legacy template support
    675679
    676680= 7.0.4 - Apr 28, 2021 =
    677681
    678682* New - Pretty url in author profile page
    679683* New - Missing setting
    680684* Fix - Custom field in search (checkbox, radio & select)
    681685* Fix - Custom field loading issue with mostly used categories
    682686* Fix - Author page responsive issue
    683687* Fix - Expired listings issue
    684688* Fix - Tagline issue in listings page
    685689* Fix - Builder issues
    686690* Fix - Translation issues
    687691* Fix - Columns validation issue of taxonomies page
    688692* Fix - Custom file upload field issue
    689693* Fix - Youtube missing issue on author page
    690694* Fix - Dashboard vertical scroll issue
    691695* Fix - Default expiration issues
    692696* Fix - Tag field in search form
    693697* Fix - Dynamic placeholder issue in select2 type fields
    694698* Fix - Location suggestion from map API
    695699* Fix - Category icon update issue
    696700* Fix - Contact Listing Owner widget
    697701* Fix - implode() deprecated notice
    698702* Fix - Rewrite rule issue with directory slug
    699703* Fix - Slider issues in single listing
    700704* Fix - Line breaking in author's bio section
    701705* Fix - Issue in logged_in_user_only
    702706* Fix - Subscription management issues
    703707* Fix - Listing filtering issue with category in Elementor
    704708* Fix - Advance filter sliding issues
    705709* Fix - Default preview image issue in single directory
    706710* Improve - Default icon of custom fields in card builder
    707711* Improve - Yoast compatibility
    708712* Improve - Review alert
    709713* Improve - Google map
    710714* Improve - Search form Update - Appsero client lib
    711715e
    712716* Remove - Extra language file
    713717* Improve - Settings cleanup
    714718
    715719= 7.0.3.3 - Mar 31, 2021 =
    716720
    717721* New - New parameter to show/hide popular category in search form
    718722* Fix - Search listing issue
    719723* Fix - Builder issues
    720724* Fix - Update - Appsero client lib
    721725e issues
    722726* Fix - Compatibility issue with Event Calendar plugin
    723727* Fix - PHP error with Yoast plugin
    724728* Fix - Single Listing page address linking issue
    725729* Fix - Tagline issue
    726730* Fix - Dashboard thumbnail issue
    727731* Fix - Map widget (single)
    728732* Fix - Translation issues
    729733* Fix - Google map issue when address field not in use
    730734* Fix - Fit image with container in single listing
    731735* Fix - Decimal issue in custom field number
    732736* Fix - Radius search field in search
    733737* Fix - Announcement issues
    734738* Improve - Listing Export
    735739
    736740= 7.0.3.2 - Mar 19, 2021 =
    737741
    738742* Fix - Single listing review, author, similar listings section disappearing issue
    739743* Fix - Compatibility issues with some themes eg. Divi
    740744* Fix - Builder widget's issues
    741745* Fix - Responsive issue
    742746* Fix - Login issue in subscription management
    743747* Fix - Popular category issue
    744748* Fix - Theme header Update - Appsero client lib
    745749e modifying issue
    746750* Fix - Fixed locations widget count issue
    747751* Fix - New location creation
    748752* Fix - Builder saving issue
    749753* Fix - Custom field in search form
    750754* Fix - Update - Appsero client lib
    751755e compatibility with Elementor
    752756* Add - Tolltip dependency
    753757* Add - excluded custom taxonomy links (native) from YOAST sitemap
    754758* Improve - Search form fields
    755759
    756760= 7.0.3.1 - Mar 13, 2021 =
    757761
    758762* Fix - Category and location displaying issue
    759763* Fix - Preset fields not show in listings page
    760764* Fix - PHP error in single listing
    761765* Improve - Terms link
    762766
    763767= 7.0.3 - Mar 12, 2021 =
    764768
    765769* Fix - Login issue
    766770* Fix - Old custom field displaying issue
    767771* Fix - Custom field checkbox saving issue
    768772* Fix - Map latitude and longitude saving issue
    769773* Fix - Translate issues
    770774* Fix - Review deleting issue
    771775* Fix - Add listing form validation issue
    772776* Fix - New category creating issue in add listing form
    773777* Fix - map_zoom_level parameter issue
    774778* Fix - Listings bulk edit
    775779* Fix - Membership management page
    776780* Fix- Custom Fields(Checkbox , Radio) avoiding the unnecessary scroll for more item.
    777781* Improve - Builder issues
    778782* Improve - Migration
    779783* Improve - Elementor's widgets
    780784
    781785= 7.0.2 - Mar 07, 2021 =
    782786
    783787* Fix - Drag and drop section disappearance issue
    784788* Fix - Preview image issue
    785789* Fix - Renewal listing disappearance issue
    786790* Fix - Featured listing issue form admin listing form
    787791* Fix - Custom fields issue
    788792* Fix - Update - Appsero client lib
    789793e issues
    790794* Fix - Listing exporter's issue
    791795* Fix - All categories bug
    792796* Fix - New listing default status issue
    793797* Fix - Login issue
    794798* Fix- Search form issue with popular categories
    795799* Improve - Migration
    796800* Improve - Builder performance
    797801
    798802= 7.0.1 - Mar 03, 2021 =
    799803
    800804* New - Option to remove dynamic directory slug
    801805* Fix - All category and location page issues
    802806* Fix - Responsive issues
    803807* Fix - Widgets issues
    804808* Fix - Membership page issues
    805809* Fix - Custom fields migration issues
    806810* Fix - Add listing form validation issue
    807811
    808812= 7.0 - Mar 01, 2021 =
    809813
    810814* New - Multi directory
    811815* New - Custom form and layout builder
    812816* New - New settings panel
    813817* New - Templating
    814818* New - Listing CSV Export/Import with custom field
    815819* New - Legacy template support
    816820* New - Asset loading on demand
    817821* New - Different dashboard and signup options for users and listing owners
    818822* New - Same author listings in similar listings
    819823* New - PHP compatibility (7.0 to 8.0)
    820824
    821825= 6.5.8 - Feb 17, 2021 =
    822826
    823827* Add - Admin debugger
    824828* Add - Compatibility with PHP 8
    825829* Fix - Edited listing status issue
    826830* Fix - Fix title issue in Astra theme
    827831* Fix - Image limit issue in add listing
    828832* Fix - Translation issues
    829833* Fix - Fix duplicate notice in announcement
    830834* Fix - Listings order by 'rand' when cache enabled
    831835* Fix - Category icon issue
    832836* Fix - Location permalink issue
    833837* Fix - Add listing form restriction
    834838
    835839= 6.5.7 - Dec 21, 2020 =
    836840
    837841* Add - Rank Math plugin compatibility
    838842* Add - Guest submission login modal for existing users
    839843* Add - All listing short code parameter "map_zoom_level"
    840844* Add - Option to restrict single listings for logged in user only
    841845* Add - WP 5.6 compatibility
    842846* Fix - Search result sort by feature
    843847* Fix - Listing bookmark issue
    844848* Improve - Contact listing owner confirmation message
    845849
    846850= 6.5.6 - Nov 27, 2020 =
    847851
    848852* Add - A form to send bulk announcement to directory user
    849853* Add - Featured listing auto fallback to normal
    850854* Add - Option to show Thank You notification after submitting a listing
    851855* Add - Country restriction in google map auto suggestion
    852856* Add - Featured listing auto fallback to general
    853857* Improve - Checkout system
    854858* Improve - User Dashboard Page
    855859* Improve - Payment Receipt Page
    856860* Fix - Undefined variable in all listings map view
    857861* Fix - Translation issue
    858862* Fix - Google map marker issue in admin add listing form
    859863* Fix - Title issue in single term pages
    860864* Tweak - Category icon in all listings page
    861865* Tweak - Order email notification
    862866
    863867= 6.5.5 - Oct 20, 2020 =
    864868
    865869* Fix - Fatal error of all location and category pages
    866870* Fix - Deprecated notice
    867871* Fix - Map issue
    868872* Remove - Hook used in Business Hours extension
    869873
    870874= 6.5.4 - Oct 19, 2020 =
    871875
    872876* Add - Allow listing owners to create location
    873877* Add - Maximum location creation/selection limit
    874878* Add - Option to redirect to referrer page after login
    875879* Add - Option to disable SEO
    876880* Improve - Polylang support
    877881* Improve - Validation of map's latitude and longitude
    878882* Fix - Single listing social media icon issue
    879883* Fix - Orderby rand parameter is not working if cache is enabled
    880884* Fix - Tag creation issue with settings
    881885* Fix - Filtering issue with pagination
    882886* Fix - Update - Appsero client lib
    883887e issues
    884888
    885889= 6.5.3 - Oct 8, 2020 =
    886890
    887891* Add - Auto login after registration
    888892* Add - Custom redirection after registration
    889893* Add - Polylang plugin compatibility
    890894* Tweak - Browser compatibility
    891895* Tweak - Font Awesome version updated
    892896* Fix - Badge issue of related listings
    893897* Fix - Custom map marker placement issue
    894898* Fix - Conflict with JNews theme
    895899* Fix - Registration validation error
    896900* Fix - Changed preview submit button text
    897901* Fix - Email issue in review
    898902* Fix - Disable price issue in single listing
    899903* Fix - Tags filter source issue
    900904* Fix - Open filter fields issue in listings page
    901905
    902906= 6.5.2 - Aug 11, 2020 =
    903907
    904908* Add - WordPress 5.5 compatibility
    905909* Add - Open Graph SEO meta for custom pages
    906910* Add - Image validation and sanitization of add listing form
    907911* Fix - Grid View's price disappearing issue 
    908912* Fix - Update - Appsero client lib
    909913e issues when preview image disabled
    910914* Improve - Cleaned up admin menus
    911915
    912916= 6.5.1 - Aug 1, 2020 =
    913917
    914918* Fix - Previously renewed listings disappearing issue
    915919* Fix - Page deleting issue of Setup Wizard
    916920* Add - New options to have more control over caching
    917921* Remove - 'Favourite' text from single listing page
    918922* Improve - Font in Setup Wizard
    919923
    920924= 6.5.0 - Jul 28, 2020 =
    921925
    922926* Add - CSV Bulk Importer (listing, category, location, tag, media etc.)
    923927* Add - Object Caching
    924928* Add - Elementor Page Builder widgets
    925929* Add - Setup Wizard with dummy data importer
    926930* Add - A few more options to control listing review
    927931* Add - Default latitude and longitude of listings map view
    928932* Fix - Email conflict with Contact Form 7
    929933* Fix - Review issue of related listings
    930934* Fix - Multi-author's listing issue of author profile page
    931935* Fix - Listings sorting issue of single tag and category page
    932936* Fix - Listings count issue of user dashboard page
    933937* Fix - Add listing form issue with Post Your Need extension
    934938* Fix - Listing renewal link issue
    935939* Fix - Listing tag widget's issue
    936940* Fix - Update - Appsero client lib
    937941e issues
    938942* Improve - Database Query
    939943* Improve - Page loading time
    940944* Improve - Listings thumbnail
    941945* Improve - Spacing
    942946
    943947= 6.4.3 - Jun 23, 2020 =
    944948
    945949* Fix - Cluster Icon issue of Google Map
    946950* Fix - Duplicate canonical issue with Yoast SEO Premium plugin
    947951* Fix - Review submitting issue with emoji
    948952* Fix - Conflict with Deep theme
    949953* Fix - Translation issues
    950954* Fix - Update - Appsero client lib
    951955e issues
    952956* Remove - White space
    953957* Improve - Expired listings of User Dashboard page
    954958
    955959= 6.4.2 - Jun 12, 2020 =
    956960
    957961* Fix - Listing status
    958962* Fix - Duplicate canonical issue
    959963* Fix - Saving issue of payment receipt shortcode
    960964* Fix - Validation issue of review submission
    961965* Fix - Review pagination
    962966* Fix - Update - Appsero client lib
    963967e issues
    964968* Remove - Redirection of add listing page when error happens
    965969* Improve - "Search Listings" widget
    966970* Improve - Yoast SEO plugin compatibility
    967971* Improve - Translation
    968972
    969973= 6.4.1 - May 17, 2020 =
    970974
    971975* Add - Option to set per image limit in add listing form
    972976* Fix - Listing count issue of category archive
    973977* Fix - Page regenerating issue
    974978* Fix - Image delete when listing is deleted
    975979* Fix - Order date issue in payment receipt
    976980* Fix - Post status and preview issue
    977981* Fix - Email's "From Email" settings
    978982* Fix - "Only Admin Use" issue of Custom field
    979983* Fix - Pending listing status issue
    980984* Fix - Update - Appsero client lib
    981985e issue in RTL
    982986* Improve - Post Type Capability
    983987* Change - "Pay & Submit" buttom text to "Continue"
    984988
    985989= 6.4.0 - Apr 29, 2020 =
    986990
    987991* Add - Option to show location and tag in single listing
    988992* Add - Popular WooCommerce Multivendor plugins (Dokan, WC Vendors, WC Marketplace, WCFM, YITH WooCommerce Multivendor) support
    989993* Improve - User profile image uploader
    990994* Fix - Custom field and category relationship issue
    991995* Fix - Duplicate listing submitting issue
    992996* Fix - WooCommerce empty cart issue
    993997* Fix - WooCommerce product sorting issue
    994998* Fix - Issue in scheduling task
    995999* Fix - Renewal link issue
    9961000* Fix - Listing publishing issue
    9971001* Fix - Repetitive tag, location and category issues in listing form and listing search
    9981002* Fix - Related listing issue
    9991003* Fix - Listing preview issue of admin add listing form
    10001004* Fix - Image placeholder issue in add listing form
    10011005* Fix - Review delete issue
    10021006* Fix - Review image issue
    10031007* Fix - PHP notice
    10041008* Fix - Update - Appsero client lib
    10051009e issue
    10061010
    10071011= 6.3.4 - Apr 9, 2020 =
    10081012
    10091013* Fix - Redius serarch issue in mobile view
    10101014* Fix - Update - Appsero client lib
    10111015e issues
    10121016* Improve - Data type sanitization
    10131017* Improve - Code
    10141018
    10151019= 6.3.3 - Apr 6, 2020 =
    10161020
    10171021* Add - Option to set custom redirection after login
    10181022* Add - Options to customize email header
    10191023* Fix - Errors in PHP v7.4.1
    10201024* Fix - Listing status
    10211025* Fix - Minor issue on single listing's map
    10221026* Fix - Update - Appsero client lib
    10231027e issues
    10241028* Fix - Conflict of radius search
    10251029* Fix - Mail sending issue of Contact owner form
    10261030* Fix - Category and location not saving issue on add listing form
    10271031* Fix - Edited listing email issue
    10281032* Fix - Listing status when checkout not continued
    10291033* Fix - Review disable issue on author profile page
    10301034* Fix - 'Go Back' link on single listing page
    10311035* Fix - Broken link in listing thumbnail on map view
    10321036* Fix - search location placeholder issue
    10331037* Fix - Randomly filtering issue on single location page
    10341038* Fix - Table name prefixing issue during uninstall
    10351039* Fix - Advanced filter issues
    10361040* Fix - Disable single listing view settings is not applying on map's info window
    10371041* Improve - Advanced filter reset in search result page
    10381042* Improve - Card Update - Appsero client lib
    10391043e in User Dashboard page
    10401044* Remove - Repeated JS codes
    10411045* Remove - Login form markup
    10421046* Remove - Unnecessary settings
    10431047* Remove - Bootstrap tooltip
    10441048
    10451049= 6.3.2 - Mar 4, 2020 =
    10461050
    10471051* Fix - Add Listing form redirection issue
    10481052* Fix - Issues of PHP older version
    10491053* Fix - Price formatting issue
    10501054* Fix - Update - Appsero client lib
    10511055e settings
    10521056* Fix - Typos
    10531057* Fix - Tag and Category issues of add listing form
    10541058* Add - Options to customize single listing slider
    10551059* Fix - Current location issue
    10561060* Fix - Tagline saving issue of add listing form
    10571061* Fix - Get Direction link issue of Google Map's info window
    10581062* Improve - Logged-in user identification
    10591063* Improve - Date format of payment receipt
    10601064* Improve - RTL
    10611065
    10621066= 6.3.1 - Feb 15, 2020 =
    10631067
    10641068* Fix - Saving issue of Settings panel
    10651069* Fix - Review and listing email issue
    10661070* Fix - Formatting issue of listing description
    10671071* Fix - Filtering order history by order status
    10681072* Fix - Design issues
    10691073* Add - Options to customize single listing slider
    10701074
    10711075= 6.3.0 - Feb 10, 2020 =
    10721076
    10731077* Add - Guest Listing Submission (listing submission without login)
    10741078* Add - Option to use custom template for single listing
    10751079* Add - Custom Media uploader on Add Listing form
    10761080* Add - Ajax pagination in listing reviews
    10771081* Add - A few new hooks
    10781082* Add - Option to change terms & conditions label
    10791083* Add - Option to add Privacy Policy on add listing and registration form
    10801084* Add - Option to set maximum image upload limit and size
    10811085* Add - Author listing's filter customization option
    10821086* Add - Space validation of username in registration form
    10831087* Add - Supports for user roles of WooCommerce plugin's "Customer" & "Shop Manager"
    10841088* Improve - Author's website address linking
    10851089* Improve - Listing submission without reloading page
    10861090* Improve - Listing phone number 2 clickable
    10871091* Improve - Login and Registration pages
    10881092* Improve - User registration process
    10891093* Improve - Listing slider
    10901094* Improve - Listings preview image cropping
    10911095* Improve - Follow website's default date format for custom field and review
    10921096* Improve - Firefox browser compatibility
    10931097* Fix - Prevent displaying expired listings in related listing slider/carousel
    10941098* Fix - Author name tooltip issue in listings pages
    10951099* Fix - Custom rewrite for listing slug
    10961100* Fix - Capability issue of listing submission from admin dashboard
    10971101* Fix - Rating issue of author profile page
    10981102* Fix - Undefined function error
    10991103* Fix - Translation issues
    11001104* Fix - Zoom issue of OpenStreetMap map
    11011105* Fix - Ordering issue of Location widget
    11021106* Fix - Update - Appsero client lib
    11031107e issues
    11041108* Fix - Typos
    11051109
    11061110
    11071111
    11081112= 6.2.2 - Dec 17, 2019 =
    11091113
    11101114* Add - Option to remove directorist's data on uninstall
    11111115* Add - Using description of category and location as Meta Description
    11121116* Add - HTML Email template
    11131117* Add - Options to remove Author listing's filter
    11141118* Improve - Password recovery/reset system
    11151119* Tweak - Change map widget's default zoom level
    11161120* Tweak - Review's author image issue
    11171121* Fix - Translation issue
    11181122* Fix - OpenStreetMap issue
    11191123* Fix - Featured image issue on single listing's header
    11201124* Fix - Listing Status when user skips payment for featuring a listing
    11211125* Fix - Listing form field validation errors
    11221126* Fix - Update - Appsero client lib
    11231127e issues
    11241128
    11251129= 6.2.1 - Nov 23, 2019 =
    11261130
    11271131* Fix - OpenStreetMap map issue of 'no listing found'
    11281132* Fix - Tag issue of search
    11291133* Fix - Map icon issue
    11301134* Fix - Radius search issue
    11311135* Fix - Category widget dropdown issue
    11321136* Fix - Location widget dropdown issue
    11331137* Fix - Listing renewal issue
    11341138* Fix - Tag issue of listing form
    11351139* Fix - Listing's status conflict with monetization
    11361140* Improve - Function naming
    11371141* Improve - Tags field
    11381142* Improve - Option to submit review without login
    11391143* Improve - Made OpenStreetMap map's marker draggable
    11401144* Improve - User login authentication process
    11411145
    11421146= 6.2.0 - Nov 05, 2019 =
    11431147
    11441148* Add - Option to select Kilometers or Miles for Radius Search
    11451149* Add - Option of default Radius Distance
    11461150* Fix - Login error message issue
    11471151* Fix - Listing publish before checking out
    11481152* Fix - Decimal issue of listing form
    11491153* Fix - Radius search of search result
    11501154* Fix - OpenStreetMap map issue
    11511155* Fix - View Count issue of user's listing adding form
    11521156* Fix - OpenStreetMap map conflict with Rank Math SEO Plugin
    11531157* Fix - Pagination issue
    11541158* Fix - Design issues
    11551159* Fix - Form fields settings issue
    11561160* Improve - Header title of Search Result page
    11571161
    11581162= 6.1.0 - Oct 24, 2019 =
    11591163
    11601164* Add - Category icon in OpenStreetMap
    11611165* Improve - Google Map
    11621166* Improve - OpenStreetMap map
    11631167* Fix - Translation issue
    11641168* Fix - Custom field with category issue
    11651169* Fix - Required issues of search fields
    11661170* Fix - Add to Favourite functionality of author page
    11671171* Fix - Decimals issue of listing's price
    11681172* Fix - Radius search conflicts with rating filter
    11691173* Fix - Current location issue of OpenStreetMap
    11701174* Fix - Autosuggestion issue
    11711175
    11721176= 6.0.2 - Oct 17, 2019 =
    11731177
    11741178* Fix - Google map issue
    11751179* Fix - OpenStreetMap direction issue
    11761180* Improve - Social Media icon of single listing page
    11771181* Improve - Google map info window
    11781182
    11791183= 6.0.1 - Oct 16, 2019 =
    11801184
    11811185* Fix - Price range placeholder issue
    11821186* Fix - Password label issue of Registration form
    11831187* Fix - Author image linking issue
    11841188* Fix - Translation issue
    11851189* Fix - Text color issue of Update - Appsero client lib
    11861190e Settings
    11871191* Improve - Single listing slider (If there is one slider image, it won't show slider thumbnail)
    11881192
    11891193
    11901194
    11911195= 6.0.0 - Oct 14, 2019 =
    11921196
    11931197* Add - Update - Appsero client lib
    11941198e Settings
    11951199* Add - Radius search
    11961200* Add - Listing Bookmark/Mark as Favourite on listings page
    11971201* Add - Address finder in location search field
    11981202* Add - Custom Map Marker
    11991203* Add - Category icon in Map Marker
    12001204* Add - Auto suggestions in location search field (if choose to display from Map API)
    12011205* Add - Option to remove single listing's address link
    12021206* Add - Option to show published date on listings page
    12031207* Add - Option to add listing's email and website url on listings page
    12041208* Add - Option to customize Map info window of single listing page
    12051209* Fix - OpeNStreetMap/Google map zooming issue
    12061210* Fix - Published date issue on listings page
    12071211* Fix - 'Remember Me' of login form
    12081212* Fix - Map info window of single listing page
    12091213* Fix - Header title issue of search result page
    12101214* Fix - Extra space issue of excerpt field
    12111215* Fix - Currency Symbol issue
    12121216* Fix - Translation issues
    12131217* Fix - Update - Appsero client lib
    12141218e issues
    12151219* Improve - Settings Panel
    12161220* Improve - Social Media icons of single listing page
    12171221* Improve - Listings page header title
    12181222* Improve - User Role
    12191223* Remove - 'Google+' from social media links
    12201224
    12211225= 5.9.2 - Sep 10, 2019 =
    12221226
    12231227* Add - Control listings map view's zoom level
    12241228* Add - Extended search form
    12251229* Add - Option to remove filter icon
    12261230* Fix - Google Map issue
    12271231* Fix - Price formatting issue
    12281232* Fix - Email notification of review
    12291233* Improve - Login form's functionality
    12301234* Improve - Listing default status functionality
    12311235* Tweak - Add listing form
    12321236
    12331237= 5.9.1 - Aug 31, 2019 =
    12341238
    12351239* Fix - Locations page issue
    12361240* Fix - Placeholder issue of listing form
    12371241* Tweak - Display search box's categories alphabetically
    12381242* Improve - Compatibility with Directorist Pricing Plans
    12391243
    12401244= 5.9.0 - Aug 29, 2019 =
    12411245
    12421246* Add - Option to show/hide Price Range from Form Fields
    12431247* Add - Option to customize logic of Related Listings
    12441248* Add - Control content of Map Info Window
    12451249* Add - Parent-child relation in category and location dropdowns
    12461250* Extend - Payment Currencies
    12471251* Fix - Conflict of login failed notification with WooCommerce
    12481252* Fix - Advanced Search/Filter's labels
    12491253* Fix - Rating's apostrophe(/) issue
    12501254* Fix - Philippine peso currency issue
    12511255* Fix - 'Show More' link issue of Advanced Search/Filter
    12521256* Fix - Listing status after renewal
    12531257* Fix - Search by Ratings issue
    12541258* Fix - Alphabetically ordering issue of Listings locations
    12551259* Fix - Update - Appsero client lib
    12561260ing issues
    12571261* Tweak - The email address to send from
    12581262* Improve - Compatibility with Directorist WooCommerce Pricing Plans
    12591263* Improve - Code (white spacing, deprecated function etc.)
    12601264
    12611265= 5.8.0 - Aug 20, 2019 =
    12621266
    12631267* Add - Review approval option
    12641268* Improve - Search fields label
    12651269* Improve - Responsiveness of single listing slider
    12661270* Improve - Made listing address clickable that opens on Google Map
    12671271* Tweak - OpenStreetMap
    12681272* Fix - Custom fields issue on Listings Search and Result pages
    12691273* Fix - Price format of payment system
    12701274* Fix - Update - Appsero client lib
    12711275ing issues
    12721276* Revert - "Not Now" button of checkout page
    12731277
    12741278= 5.7.0 - Aug 17, 2019 =
    12751279
    12761280* Add - RTL support
    12771281* Fix - Short by popular listing in Search Results, Single Category and Single Location pages
    12781282* Tweak - Recovery password email notification
    12791283
    12801284= 5.6.3 - Aug 15, 2019 =
    12811285
    12821286* Fix - Translation issue
    12831287* Fix - Sort by Popular Listings
    12841288* Fix - Popular Listings widget
    12851289* Fix - Email sender name for recovery password
    12861290* Remove - "Not Now" button from checkout page
    12871291* Remove - Registration form title
    12881292
    12891293= 5.6.2 - Aug 14, 2019 =
    12901294
    12911295* Fix - Translation issue
    12921296* Fix - Listings count
    12931297* Fix - Update - Appsero client lib
    12941298ing issues
    12951299* Fix - Preview image issue
    12961300
    12971301= 5.6.1 - Aug 07, 2019 =
    12981302
    12991303* Add - Listing view count control
    13001304* Fix - Review updating issue
    13011305* Fix - Preview/post image conflict of single listing
    13021306* Tweak - Display search box's categories alphabetically
    13031307
    13041308= 5.6.0 - Aug 06, 2019 =
    13051309
    13061310* Fix - Email notification for edited listing
    13071311* Fix - Conflict with Event Calender plugin
    13081312* Fix - OpenStreetMap issue
    13091313* Fix - Repeating email notification issue
    13101314* Fix - Assigning tag capability of frontend user
    13111315* Fix - Location Saving issue of frontend user
    13121316* Fix - New user notification email
    13131317* Fix - Update - Appsero client lib
    13141318ing issues
    13151319* Add -  orderby='rand' to display listings randomly ([directorist_all_listing orderby='rand'])
    13161320* Add - Options to change the labels of User Dashboard tabs
    13171321* Add - New shortcode to display author information on single listing page
    13181322* Add - Searchability of location and category search fields
    13191323* Tweak - Option to choose email recipient for receiving email from Contact Listing Owner Form
    13201324
    13211325= 5.5.3 - Jul 25, 2019 =
    13221326
    13231327* Fix - Category issue of single listing page
    13241328
    13251329= 5.5.2 - Jul 24, 2019 =
    13261330
    13271331* Fix - Listing search issue
    13281332* Fix - Listing submit with more than four categories
    13291333* Fix - SEO issue
    13301334* Add - Connected WordPress user bio with the plugin's user bio
    13311335* Add - Alt attribute to category and location images
    13321336* Add - Option to hide Back Link
    13331337* Improve - Update - Appsero client lib
    13341338ing on several places
    13351339
    13361340= 5.5.1 - Jul 18, 2019 =
    13371341
    13381342* Add - Fax number and another phone number fields in add listing form
    13391343* Fix - Preview image issue
    13401344* Fix - Category icons issue
    13411345* Fix - Custom Fields issue
    13421346* Improve - Update - Appsero client lib
    13431347ing on several places
    13441348
    13451349= 5.5.0 - Jul 17, 2019 =
    13461350
    13471351* Add - Multiple Locations and Categories for users
    13481352* Add - Private/logged in user only content/directory
    13491353* Add - Forward/redirect any pages
    13501354* Add - Option to make Search fields required
    13511355* Add - Admin Email Notification when someone submits a review
    13521356* Fix - Custom Fields issue of Add Listing form
    13531357* Fix - Minor issue of Image & Video section
    13541358* Fix - Full width issue with Directoria theme
    13551359* Fix - Line break & paragraph issues of single listing
    13561360* Fix - Twitter issue
    13571361* Fix - SEO issues
    13581362
    13591363= 5.4.4 - Aug 05, 2019 =
    13601364
    13611365* Fix - Email notification for edited listing
    13621366* Fix - Conflict with Event Calender plugin
    13631367* Fix - OpenStreetMap issue
    13641368* Fix - Repeating email notification issue
    13651369* Fix - Assigning tag capability of frontend user
    13661370* Fix - Location Saving issue of frontend user
    13671371* Fix - New user notification email
    13681372* Fix - Update - Appsero client lib
    13691373ing issues
    13701374* Add -  orderby='rand' to display listings randomly ([directorist_all_listing orderby='rand'])
    13711375* Add - Options to change the labels of User Dashboard tabs
    13721376* Add - New shortcode to display author information on single listing page
    13731377* Add - Searchability of location and category search fields
    13741378* Tweak - Option to choose email recipient for receiving email from Contact Listing Owner Form
    13751379
    13761380
    13771381= 5.4.3 - Jul 10, 2019 =
    13781382
    13791383* Fix - "Sort By" issue on search result page
    13801384* Fix - Minor issue of Add listing page
    13811385* Improve - Responsiveness
    13821386* Improve - Translation
    13831387* Improve - Single listing page's code
    13841388* Tweak - Phone number clickable
    13851389* Tweak - Report Abuse popup
    13861390* Extend - Added more hooks to make the plugin more customizable
    13871391
    13881392
    13891393= 5.4.2 - Jul 09, 2019 =
    13901394
    13911395* Add - Listing form fields placeholder text changing option
    13921396* Add - Added option in Custom fields to display only for admin or for all
    13931397* Fix - Registration form
    13941398* Fix - Report Abuse issue
    13951399* Improve - Listing's edit button
    13961400* Improve - Looks of file upload
    13971401
    13981402= 5.4.1 - Jul 07, 2019 =
    13991403
    14001404* Fix - Login and registration links issue
    14011405* Fix - SEO issues of single category, location and tag pages
    14021406* Fix - Twitter sharing issue
    14031407* Fix - Minor issue of Custom Fields file Uploading type
    14041408* Tweak - View as & Sort by button text change option
    14051409* Improve - Settings Panel
    14061410
    14071411= 5.4.0 - Jul 02, 2019 =
    14081412
    14091413* Add - Settings Search Box on top of the Settings Panel to find out settings quickly & easily
    14101414* Add - File type (audio, video, image, pdf, document and so on..) in Custom Fields
    14111415* Add - OpenStreetMap map's marker move
    14121416* Add - Control the link of Login and Registration
    14131417* Tweak - Info window of Map
    14141418* Tweak - Listing columns to work more effectively
    14151419* Fix - Pagination issue on single tag page
    14161420* Fix - Line Awesome icon css issue
    14171421* Fix - Featured widget
    14181422* Fix - Shortcodes of Single Listing page
    14191423
    14201424= 5.3.0 - Jun 24, 2019 =
    14211425
    14221426* Add - Line Awesome support
    14231427* Add - Pagination on user dashboard
    14241428* Add - Number type in Custom Fields
    14251429* Add - Back link on single listing's page
    14261430* Add - Related listings slider title
    14271431* Fix - Search by custom fields issue
    14281432* Extend - Category icons
    14291433* Improve - Pagination
    14301434
    14311435= 5.2.0 - Jun 15, 2019 =
    14321436
    14331437* Add - Option to display default search results randomly
    14341438* Fix - Registration form's password field issue
    14351439* Fix - Pagination issue of listings list view
    14361440* Fix - Translation issues
    14371441* Fix - Conflict with WooCommerce Membership and Social Warfare plugins
    14381442* Tweak - Listing default preview image of User Dashboard
    14391443* Improve - Listings page's code
    14401444
    14411445= 5.1.0 - Jun 13, 2019 =
    14421446
    14431447* Add - Registration and Login form customization options
    14441448* Add - Excerpt word limit and Read More link
    14451449* Add - Control listings columns of author page
    14461450* Add - Option to remove preview, category and location images
    14471451* Fix - Business Hours extension compatibility with related listings
    14481452* Fix - Pagination issues
    14491453* Tweak - Listings renew button
    14501454
    14511455= 5.0.8 - Jun 07, 2019 =
    14521456
    14531457* Fix - Display custom fields issue in search/filter
    14541458* Remove - Temporary removed the feature of searching listing by Custom Fields value
    14551459
    14561460= 5.0.7 - Jun 02, 2019 =
    14571461
    14581462* Add - Option to disable Directorist's Bootstrap JavaScript file to avoid conflict with theme's Bootstrap JavaScript
    14591463* Fix - OpenStreetMap issue
    14601464* Fix - Category and Location issues in search
    14611465* Tweak - Increased "Listing Per Page" limit
    14621466
    14631467= 5.0.6 - Jun 01, 2019 =
    14641468
    14651469* Add - Map view of OpenStreetMap on listings page
    14661470* Add - Search listing by Custom Fields value
    14671471* Fix - Translation issue
    14681472* Fix - Extra 'n' generation on few themes
    14691473* Fix - Update - Appsero client lib
    14701474e issue of custom field's checkbox
    14711475* Fix - Display Edit Listing button only for logged-in listing author
    14721476* Fix - Automatically listing publish when payment status changed to Completed of Offline Payment Gateway
    14731477
    14741478= 5.0.5 - May 26, 2019 =
    14751479
    14761480* Add - Controlling single listing page using shortcodes
    14771481* Add - Registration confirmation email customization
    14781482* Fix - Category custom fields and short description issue
    14791483* Fix - Color field in advanced search/filter
    14801484* Fix - Translation issues
    14811485* Fix - Title and subtitle issues on search
    14821486* Fix - Review badge issue
    14831487* Fix - Update - Appsero client lib
    14841488e issues
    14851489* Fix - Listing form's Social field responsive issue
    14861490* Fix - Removed extra 'Z' from edit listing button
    14871491* Tweak - Location field of listing form
    14881492* Tweak - Changed listing's default review from 1 to 5
    14891493
    14901494= 5.0.4 - May 10, 2019 =
    14911495
    14921496* Fix - Listings header issue
    14931497
    14941498= 5.0.3 - May 09, 2019 =
    14951499
    14961500* Add - Redirection to home page after logging out from User Dashboard
    14971501* Fix - Capitalization issues
    14981502* Fix - Various Update - Appsero client lib
    14991503e issues
    15001504* Fix - Registration confirmation massage
    15011505* Fix - Page title of single location and category pages
    15021506* Improve - Listings header
    15031507* Improve - Terms & Conditions area of add listing form
    15041508* Remove - Validations from Setting panel
    15051509* Remove - Google+ from User Dashboard
    15061510
    15071511= 5.0.2 - May 01, 2019 =
    15081512
    15091513* Add - New parameters for Shortcodes
    15101514* Add - Recover/forget Password option on login page
    15111515* Add - Option to hide/show author email
    15121516* Fix - Advanced search/filter responsiveness and rating issues
    15131517* Fix - Clickable preview image on user dashboard
    15141518* Fix - Sort by Popular Listings
    15151519* Fix - Update - Appsero client lib
    15161520e issues
    15171521* Tweak - Improved Settings panel
    15181522
    15191523= 5.0.1 - April 25, 2019 =
    15201524
    15211525* Fix - OpenStreetMap issue
    15221526* Fix - Advanced search/filter issues
    15231527* Fix - Listing pagination on single Category and Location pages
    15241528* Fix - Translation issue of advanced search/filter
    15251529* Fix - Listing expiration
    15261530* Add - Preview image on user's favourite listings list
    15271531* Add - New parameters for Directorist Shortcode's
    15281532* Tweak - Search Result page meta title
    15291533
    15301534= 5.0.0 - April 20, 2019 =
    15311535
    15321536* Add - Advanced Search (search by Custom Fields, Price, Price Range, Ratings, Tags, Website, Email, Phone, Address, Zip/Post Code etc.)
    15331537* Add - Advanced Filters on Listings and Search Result pages
    15341538* Add - Listings Map View
    15351539* Add - OpenStreetMap Map
    15361540* Add - Option to upload category and location background image
    15371541* Add - Advanced Search widget
    15381542* Add - Listings Map View widget
    15391543* Add - Option to change Add Listing form's labels
    15401544* Add - Option to change 'Select a category' and 'Select a location' placeholder text of Search Form
    15411545* Add - 25 more action and filter hooks to make Directorist more customizable
    15421546* Tweak - Header area of Listings and Search Result pages
    15431547* Tweak - Form fields label capitalization
    15441548* Tweak - Moved 'Upgrade/Regenerate Pages' button to Directory Settings >> Pages, Links & Views
    15451549* Tweak - Hide 'Order History' sub-menu if monetization disabled
    15461550* Tweak - Changed Location icon
    15471551* Fix - Listing expiration
    15481552* Fix - Image uploading issue of Add Listing form
    15491553* Fix - Update - Appsero client lib
    15501554e issues
    15511555* Fix - Listing pricing
    15521556* Fix - Map issue on single listing
    15531557* Fix - Translate issue
    15541558* Remove - Top Admin Bar for Subscriber/User
    15551559* Remove - Upgrade database option
    15561560* Remove - Google+ from listing sharing
    15571561
    15581562= 4.7.6 - April 3, 2019 =
    15591563* Add - Option to upload category image
    15601564* Fix - Login url after successful registration
    15611565* Fix - Translation issue in single listing
    15621566* Fix - Listing count in All Locations page, All Categories page, Location widget and Category widget
    15631567* Tweak - Custom field paragraphing support
    15641568
    15651569= 4.7.6 - April 3, 2019 =
    15661570* Add - Option to disable single listing view
    15671571* Add - Single Tag Page
    15681572* Add - Dynamic alt attribute for img tag
    15691573* Fix - Translate issues
    15701574* Fix - Wp admin bar
    15711575* Fix - Popular listing issue
    15721576* Tweak - Option to display single listing tags on Tag Widget
    15731577
    15741578= 4.7.5 - March 28, 2019 =
    15751579* Extend - Added another option for making listing popular based on average ratings
    15761580* Extend - Added new settings page to control user dashboard called "User Dashboard Setting" under Directory Settings >> Listing Settings
    15771581* Fix - Minor CSS issues
    15781582* Fix - Image upload issue
    15791583* Fix - Popup's text translate issue
    15801584* Fix - Listing share issue on social medias
    15811585* Fix - Listing expiration and renewal issue
    15821586* Tweak - Option to restrict selecting multi-location
    15831587
    15841588= 4.7.4 - March 20, 2019 =
    15851589* Fix - User Login page
    15861590* Fix - Google map autocomplete issue
    15871591* Fix - Form fields hide/show issue
    15881592* Extend - Zip/Post Code field on add listing form
    15891593* Extend - Added another 149 Category icons
    15901594
    15911595= 4.7.3 - March 14, 2019 =
    15921596* Fix - Payment issue
    15931597* Fix - Conflict of category permalink
    15941598
    15951599= 4.7.2 - March 12, 2019 =
    15961600* Tweak - Listing form validation without page load
    15971601* Tweak - Rearranged 'Form Fields' settings
    15981602* Tweak - Open Website link of Contact Information on a new tab
    15991603* Fix - Currency Decimal
    16001604* Fix - Two minor issues of Custom fields
    16011605* Fix - Ajax output on listing review section
    16021606* Fix - Tag and location saving issue of frontend add listing form
    16031607* Fix - Minor CSS issues
    16041608
    16051609= 4.7.1 - March 5, 2019 =
    16061610* Fix - Compatibility with Yoast Plugin
    16071611* Fix - Title issue of single listing page
    16081612* Tweak - Made Contact Information's email clickable to open in mail client
    16091613
    16101614= 4.7.0 - March 4, 2019 =
    16111615* Fix - Compatibility with Polylang Plugin
    16121616* Fix - Pagination issue of Locations page
    16131617* Add - Option to set custom meta title and description on Directorist pages for better SEO performance
    16141618* Add - Featured listing widget
    16151619* Add - Option to disable decimal in Currency Setting
    16161620* Add - Option to change section title of single listing page
    16171621* Add - Option to change Search Listing button text
    16181622* Tweak - Infinite run of related listings slider
    16191623
    16201624= 4.6.0 - FEBRUARY 26, 2019 =
    16211625* Fix - Responsive issue
    16221626* Fix - Hide/show issue on listings grid
    16231627* Fix - Listing tagline issue
    16241628* Fix - Expired listings
    16251629* Add - Single Category Page
    16261630* Add - Single Location Page
    16271631* Add - Option to set default location on Google Map
    16281632* Add - Option to set default Preview Image
    16291633* Add - Contact Listing Owner form on single listing page
    16301634* Tweak - Category & location permalink change
    16311635* Tweak - Custom field's URL type
    16321636
    16331637= 4.5.1 - FEBRUARY 16, 2019 =
    16341638* Fix - Sub-category & sub-location URL issue
    16351639* Fix - Listings page columns issue
    16361640* Fix - Show multi-category on similar and popular listing widget
    16371641* Fix - Preview image issue on popular listing widget
    16381642* Fix - Add listing form's minor CSS issues
    16391643
    16401644= 4.5.0 - FEBRUARY 14, 2019 =
    16411645* Add - Option to make listing form fields required
    16421646* Add - Option to select how to display the Grids (Masonry/Normal)
    16431647* Add - Option to display each info of Grids on one line
    16441648* Add - Time field type in Custom Field
    16451649* Tweak - Improved category and location search fields
    16461650
    16471651= 4.4.0 - FEBRUARY 11, 2019 =
    16481652* Add - Show/hide option for header area of listings page
    16491653* Add - Header title & sub-title changing options
    16501654* Add - 'Sort by' filter on search result page
    16511655* Add – Two new parameters ‘featured_only’ and ‘popular_only’ in [directorist_all_listing] shortcode to display featured and popular listings anywhere
    16521656
    16531657= 4.3.1 - FEBRUARY 9, 2019 =
    16541658Fix – Custom Fields issue
    16551659Fix – Search result
    16561660Fix – Some design related issues
    16571661Fix – Category in listings
    16581662
    16591663= 4.3.0 - FEBRUARY 7, 2019 =
    16601664* Add - Multiple Categories support
    16611665* Add - Search result columns control
    16621666* Tweak - Grid design
    16631667* Tweak - Related listing design
    16641668* Improved - All the columns
    16651669* Fix - Text editor issue
    16661670* Fix - Minor Pagination issue
    16671671
    16681672= 4.2.0 - FEBRUARY 3, 2019 =
    16691673* Add - Control listings columns
    16701674* Fix - Shorting in all listing
    16711675* Fix - Review Display/Hide option on single listing page
    16721676* Fix - Add listing page edit issue
    16731677
    16741678= 4.1.0 - JANUARY 27, 2019 =
    16751679* Fix - Listing review
    16761680* Fix - Custom Field issue
    16771681* Fix - Show/hide related issues
    16781682* Fix - Location related minor issue
    16791683* Fix - Admin redirection after login
    16801684* Add - Show/hide option for preview image
    16811685* Add - Option to add rel='nofollow' in listing's website link
    16821686* Tweak - Settings panel
    16831687
    16841688= 4.0.3 - JANUARY 21, 2019 =
    16851689* Fix - Custom Field issue
    16861690* Tweak - Made preview image clickable
    16871691* Tweak - Improved Login Form design
    16881692* Fix - CSS issues of add listing form
    16891693
    16901694= 4.0.2 - JANUARY 20, 2019 =
    16911695* Fix - Admin redirection after login
    16921696
    16931697= 4.0.1 - JANUARY 20, 2019 =
    16941698* Fix - Preview image issue for old users
    16951699* Tweak - Clean up code
    16961700
    16971701= 4.0.0 - JANUARY 19, 2019 =
    16981702* Add - Completely changed the design to get rid of all the limitation the old design had and make it more attractive, professional and adaptive.
    16991703* Add - Custom Field
    17001704* Add - Single listing Slider
    17011705* Add - Listing approval system
    17021706* Add - Option to add listing video on single listing page and widget
    17031707* Add - Author Profile page for visitors
    17041708* Add - Categories page and widget
    17051709* Add - Locations page and widget
    17061710* Add - Add to Favorites, Report Abuse and Share buttons
    17071711* Add - List & Gird view features for All Listings, Location and Category page
    17081712* Add - Login form shortcode and widget
    17091713* Add - Terms & Conditions feature on frontend Add Listing form
    17101714* Add - Order by & Sort by features
    17111715* Add - Image Cropping feature
    17121716* Add - A button to regenerate Directorist pages
    17131717* Add - New and Popular badges
    17141718* Add - Edit button on single listing
    17151719* Add - Documentation Menu
    17161720* Add - Author Information widget
    17171721* Add - Submit Listing widget
    17181722* Add - Contact Listing Owner widget
    17191723* Add - Map widget
    17201724* Add - Listing Search widget
    17211725* Add - Tags widget
    17221726* Add - Similar Listings widget
    17231727* Add - About author field and Social Media links
    17241728* Add - Parameters for All listings shortcode
    17251729* Add - Display/hide option for Search fields
    17261730* Remove - Export & Import feature
    17271731* Remove -  Default sidebar from single listing page
    17281732* Tweak - Prefixed all the shortcodes by 'directorist_'
    17291733* Tweak - Option to change/assign author from Bulk Editor
    17301734* Tweak - Let admin to create category without icon
    17311735* Tweak - Show/hide connector "Or"  from Search Home page
    17321736* Tweak - Business Hour extension compatibility
    17331737* Tweek - Improved the Add Listing form
    17341738* Tweak - Offline Gateway's Bank Information
    17351739* Tweak - Rearranged Settings panel
    17361740* Tweak - Preview image
    17371741* Tweak - Category selection system for a listing
    17381742* Tweak - Updated term relationship for search page
    17391743* Tweak - Featured badge
    17401744* Fix - Error notification for Sign Up form
    17411745* Fix - Email notifications
    17421746* Fix - Frontend user profile
    17431747* Fix - Design relating all issues
    17441748* Fix - Poplular listings
    17451749* Fix - Validate the frontend listing submission form
    17461750
    17471751= 3.3.0 - DECEMBER 1, 2018 =
    17481752* Feature - Options to choose redirection after editing a listing on the frontend
    17491753* Fixed - Edit page redirection
    17501754
    17511755= 3.2.2 - NOVEMBER 12, 2018 =
    17521756* Fixed - Business Hours extension compatibility
    17531757
    17541758= 3.2.1 - OCTOBER 31, 2018 =
    17551759* Fix - Website link displaying issue
    17561760
    17571761= 3.2.0 - OCTOBER 14, 2018 =
    17581762* Feature - Import and export
    17591763* Tweak - Removed settings related to Popular Listings and Submit Listing from Settings page
    17601764* Tweak - Added Popular Listings and Submit Listing as widget
    17611765* Tweak - Displayed all categories and locations in the listing search result page instead of displaying top level one
    17621766* Fix - Contact information toggle
    17631767* Fix - Currency symbol
    17641768* Fix - Several minor issues
    17651769
    17661770= 3.1.5 =
    17671771* Fixed: Editor could not manage listing from the back end
    17681772* Fixed: Pricing was not showing after saving in editing form as well as in the front end
    17691773
    17701774= 3.1.4 =
    17711775* Added Language .pot file for easy translation to any language
    17721776
    17731777= 3.1.3 =
    17741778* Fixed some minor issues and made the plugin compatible with stripe payment gateway
    17751779
    17761780= 3.1.2 =
    17771781* Highlight: Made the plugin compatible with new PayPal Payment Gateway Extension & Fix some minor issues.
    17781782* Fixed: New order email was not sent to a user if online payment was used like PayPal.
    17791783* Fixed: Markup issue on the checkout form.
    17801784* Improved: Made URL to Payment Receipt Page (==ORDER_RECEIPT_URL==) and Renewal Page(==RENEWAL_LINK==) linkable in Email Templates.
    17811785* Improved: Added currency symbol to the price in Email Template.
    17821786* Added: New URL rewrite rules for PayPal IPN handler.
    17831787* Added: New functions to ATBDP_Permalink Class.
    17841788* Improved: Now new URLs added by the plugin does not need a permalink resaving. Flashing rewrite rules will happen automatically if needed.
    17851789* And some other minor improvement.
    17861790
    17871791= 3.1.1 =
    17881792* Fixed Some minor issues and Refactored some codes
    17891793* Fix: Non featured listings were showing as featured.
    17901794* Fix: Promote button was showing for already featured item
    17911795* Fix: a PHP notice was shown if there was no phone number assigned to a listing
    17921796* Fix: Dynamic category icon was not showing under popular listing widget
    17931797* Fix: link to the archive page of the popular listings category
    17941798* Fix: Location on the search page result page and related listings show proper location taxonomy instead of the address value.
    17951799* Improve: Refactor some reusable codes to a function to avoid repetition & improve performance
    17961800* Fix: a bug in the search result page related to post count
    17971801* Improve: Removed some unnecessary old codes related to fetching reviews on search, all listings & dashboard script
    17981802* Feature: Added Quick-tags feature on the editor on add listing page (front-end)
    17991803
    18001804= 3.1.0 =
    18011805* Added Monetization option using featured listing
    18021806* Added Featured listing option
    18031807* Added listing expiration features
    18041808* Added listing renewal feature
    18051809* Added a feature for listing auto deletion/trash after the expiration
    18061810* Added email notification features for both user and admin
    18071811* Added customizable email templates
    18081812* Added different events selection option to choose when to send email notifications
    18091813* Fixed Issue: Shortcodes and Auto Embed was not working on the listing content
    18101814* Improvement: Single listing will not use full available space if no widget is not used in the listing sidebar
    18111815* Added option to choose a default action after listing expire
    18121816* Added option to choose default new listing status
    18131817* Added an option to choose default edited listing status
    18141818* Added an option to enable/disable pagination on the ‘All listings’ page
    18151819* Added two new shortcodes for checkout page and payment receipt page
    18161820* Added an Option to Enable/Disable Google Map Globally for all listings
    18171821* Added option to hide google map on any specific menu
    18181822* Added an Option to Enable/Disable Social Sharing
    18191823* Added an Option to Enable/Disable login form inside ‘Submit Your Item’ widget
    18201824* Added an Option to Enable/Disable Contact Information on a Listing
    18211825* Added an ability to display a price for a listing.
    18221826* Added an Option to Enable/Disable Listing Price on a Listing
    18231827* Add an option to enable/disable pagination on the search result page
    18241828* Added a currency setting for displaying price
    18251829* Added a currency setting for accepting payments
    18261830* Added Extra information about a listing on the user dashboard
    18271831* Added a new Update - Appsero client lib
    18281832e of featured listings and they appear on top of other listings on search result page and all listings page
    18291833* Change Location value of a listing on all listings and search result page to location category with a link to their respective archive
    18301834* Made a few missing strings translatable
    18311835* Added New Columns on listings list page in the backend
    18321836
    18331837= 3.0.0 =
    18341838* Completely redesigned Settings Panel.
    18351839* A huge improvement made in the design compatibility of the plugin with other themes. Now the plugin is super compatible with most of the themes.
    18361840* Made the plugin more extendable by a developer using plugins hook
    18371841* Removed black background image from search home page and now made the search page more compatible with any theme
    18381842* Added a lot of new options to the settings panel. It means the plugin is now more customizable.
    18391843* Removed a lot of CSS and made the plugin faster and lightweight
    18401844* Added option to add or remove bootstrap CSS. Good option if you have a theme with Bootstrap.
    18411845* Added option to add or remove bootstrap js. Good option if your theme has bootstrap JS because double js won’t conflict.
    18421846* Added option to set custom slug for your listing base
    18431847* Added option to set custom slug for your listing category base
    18441848* Added option to set custom slug for your listing location base
    18451849* Added option to set custom slug for your listing tags base
    18461850* Added Map zoom level
    18471851* Added new options to edit text for ‘no result found text’
    18481852* Added option to enable or disable owner review on his own listing
    18491853* Added auto directorist custom page generator to speed up site creation
    18501854* Added dedicated option to control all extensions
    18511855* Made the settings panel options, sections, menus everything extendable via hooks (for developer)
    18521856* Added Import and export option for plugin settings
    18531857* And much more
    18541858
    18551859= 2.0.0 =
    18561860* Added related listing features
    18571861* Added popular listing features
    18581862* Added Rating & Reviews features
    18591863* Fixed some css issues
    18601864
    18611865= 1.1.1 =
    18621866* Fixed a css issue
    18631867
    18641868= 1.1.0 =
    18651869* Added new shortcode [all_listing] to show all listings on any page
    18661870* Added option to show or hide popular category on search page
    18671871* Made some missing texts translatable
    18681872= 1.0.0 =
    18691873Initial release
Note: See TracChangeset for help on using the changeset viewer.