Plugin Directory

Changeset 3301753


Ignore:
Timestamp:
05/27/2025 07:51:32 PM (10 months ago)
Author:
softphp
Message:

Updated to version 3.0.3.9: updated readme, plugin files, and created new tag.

Location:
joocart
Files:
20 edited
16 copied

Legend:

Unmodified
Added
Removed
  • joocart/tags/3.0.3.9/admin/index.php

    r3295891 r3301753  
    88if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
    99// Version
    10 if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.8'); }
     10if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.9'); }
    1111
    1212// Configuration
  • joocart/tags/3.0.3.9/admin/joocart_admin.php

    r3295891 r3301753  
    1313add_action('admin_menu','joocart_menu_options_add_page');
    1414require_once(dirname(__FILE__).'/joocart_install.php');
     15require_once(dirname(__FILE__).'/joocart_admin_functions.php');
    1516function joocart_dashboard_widget_function(){
    1617    echo "<a href=\"options-general.php?page=joocart_options_page\">" . esc_html__('JooCart Options', 'joocart') . "</a> |
     
    141142    register_setting('joocart_options_page',"joocart_dont_show_menus", array('sanitize_callback' =>  'sanitize_text_field'));
    142143    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    143     register_setting('joocart_options_page',"joocart_dont_show_login", array('sanitize_callback' =>  'sanitize_text_field'));
    144     // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    145     register_setting('joocart_options_page',"joocart_dont_include_jquery_library", array('sanitize_callback' =>  'sanitize_text_field'));
     144    register_setting('joocart_options_page',"joocart_dont_show_admin_login", array('sanitize_callback' =>  'sanitize_text_field'));
     145    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
     146    register_setting('joocart_options_page',"joocart_dont_include_jquery", array('sanitize_callback' =>  'sanitize_text_field'));
    146147    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    147148    register_setting('joocart_options_page',"joocart_disable_bootstrap_tooltip", array('sanitize_callback' =>  'sanitize_text_field'));
    148149    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    149     register_setting('joocart_options_page',"joocart_use_jquery_dollar_variable", array('sanitize_callback' =>  'sanitize_text_field'));
     150    register_setting('joocart_options_page',"joocart_use_jquery_dollar", array('sanitize_callback' =>  'sanitize_text_field'));
    150151    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    151152    register_setting('joocart_options_page',"joocart_dont_show_left_right_column", array('sanitize_callback' =>  'sanitize_text_field'));
     
    153154    register_setting('joocart_options_page',"joocart_enable_wp_widget_title", array('sanitize_callback' =>  'sanitize_text_field'));
    154155    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    155     register_setting('joocart_options_page',"joocart_redirect_to_main_http_server", array('sanitize_callback' =>  'sanitize_text_field')); 
    156     // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    157     register_setting('joocart_options_page',"joocart_change_lang_to_wp_default", array('sanitize_callback' =>  'sanitize_text_field'));
     156    register_setting('joocart_options_page',"joocart_redirect_http_server", array('sanitize_callback' =>  'sanitize_text_field')); 
     157    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
     158    register_setting('joocart_options_page',"joocart_change_lang_to_default", array('sanitize_callback' =>  'sanitize_text_field'));
    158159    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    159160    register_setting('joocart_options_page',"joocart_use_wordpress_db", array('sanitize_callback' =>  'sanitize_text_field'));
     
    195196    register_setting('joocart_options_page',"joocart_custom_css_oc", array('sanitize_callback' =>  'sanitize_text_field'));
    196197    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    197     register_setting('joocart_options_page',"joocart_select_seo_type_for_prod_cat", array('sanitize_callback' =>  'sanitize_text_field'));
     198    register_setting('joocart_options_page',"joocart_select_seo_for_prod_cat", array('sanitize_callback' =>  'sanitize_text_field'));
    198199    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    199200    register_setting('joocart_options_page',"joocart_use_dynamic_checkout_urls", array('sanitize_callback' =>  'sanitize_text_field'));
     
    211212    $joocart_dont_show_footer=get_option("joocart_dont_show_footer");
    212213    $joocart_dont_show_menus=get_option("joocart_dont_show_menus");
    213     $joocart_dont_show_login=get_option("joocart_dont_show_login");
    214     $joocart_dont_include_jquery_library=get_option("joocart_dont_include_jquery_library");
     214    $joocart_dont_show_admin_login=get_option("joocart_dont_show_admin_login");
     215    $joocart_dont_include_jquery=get_option("joocart_dont_include_jquery");
    215216    $joocart_disable_bootstrap_tooltip=get_option("joocart_disable_bootstrap_tooltip");
    216     $joocart_use_jquery_dollar_variable=get_option("joocart_use_jquery_dollar_variable");
     217    $joocart_use_jquery_dollar=get_option("joocart_use_jquery_dollar");
    217218    $joocart_dont_show_left_right_column=get_option("joocart_dont_show_left_right_column");
    218219    $joocart_enable_wp_widget_title=get_option("joocart_enable_wp_widget_title");
    219220    // $joocart_main_http_server=get_option("joocart_main_http_server");
    220     $joocart_redirect_http_server=get_option("joocart_redirect_to_main_http_server");
    221     $joocart_change_lang_to_wp_default=get_option("joocart_change_lang_to_wp_default");
     221    $joocart_redirect_http_server=get_option("joocart_redirect_http_server");
     222    $joocart_change_lang_to_default=get_option("joocart_change_lang_to_default");
    222223    $joocart_use_wordpress_db=get_option("joocart_use_wordpress_db");
    223224    $joocart_db_user_name=get_option("joocart_db_user_name");
     
    239240    $joocart_use_gradient_color=get_option("joocart_use_gradient_color");
    240241    $joocart_custom_css_oc=get_option("joocart_custom_css_oc");
    241     $joocart_select_seo_type_for_prod_cat=get_option("joocart_select_seo_type_for_prod_cat");
     242    $joocart_select_seo_for_prod_cat=get_option("joocart_select_seo_for_prod_cat");
    242243    $joocart_use_dynamic_checkout_urls=get_option("joocart_use_dynamic_checkout_urls");
    243244   
    244245    if(function_exists("get_editable_roles"))
    245     $wordpress_rules=get_editable_roles();
     246    $joocart_wp_rules=get_editable_roles();
    246247    else
    247     $wordpress_rules=array();
     248    $joocart_wp_rules=array();
    248249   
    249     $wordpress_user_groups=array();
    250     foreach($wordpress_rules as $key=>$value){
    251         $wordpress_user_groups[$key]["wordpress_user_group_id"]=$key;
    252         $wordpress_user_groups[$key]["name"]=$value["name"];
     250    $joocart_wp_user_groups=array();
     251    foreach($joocart_wp_rules as $key=>$value){
     252        $joocart_wp_user_groups[$key]["wordpress_user_group_id"]=$key;
     253        $joocart_wp_user_groups[$key]["name"]=$value["name"];
    253254       
    254255    }
     
    325326            <td>
    326327            <select id="joocart_who_can_access_admin" name="joocart_who_can_access_admin">
    327                 <?php foreach ($wordpress_user_groups as $wordpress_user_group) { ?>               
    328                 <option <?php if(isset($joocart_who_can_access_admin) && $joocart_who_can_access_admin==$wordpress_user_group['wordpress_user_group_id']) { echo 'selected="selected"'; }?> value="<?php echo esc_html($wordpress_user_group['wordpress_user_group_id']); ?>"><?php echo esc_html($wordpress_user_group['name']); ?></option>
     328                <?php foreach ($joocart_wp_user_groups as $joocart_wp_user_group) { ?>               
     329                <option <?php if(isset($joocart_who_can_access_admin) && $joocart_who_can_access_admin==$joocart_wp_user_group['wordpress_user_group_id']) { echo 'selected="selected"'; }?> value="<?php echo esc_html($joocart_wp_user_group['wordpress_user_group_id']); ?>"><?php echo esc_html($joocart_wp_user_group['name']); ?></option>
    329330                <?php } ?>
    330331            </select>
     
    363364        </tr>
    364365        <tr style="display:none;" title="<?php esc_html_e('Single Admin Login for JooCart and WordPress,If you set it to Yes,then you don\'t need to login in JooCart admin panel after you logged in WordPress.', 'joocart'); ?>">
    365             <th scope="row"><label for="joocart_dont_show_login"><?php esc_html_e('Single Admin Login', 'joocart'); ?></label></th>
    366             <td>
    367             <input id="joocart_dont_show_login0" name="joocart_dont_show_login" value="1" <?php if(isset($joocart_dont_show_login) && $joocart_dont_show_login=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_login0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    368             <input id="joocart_dont_show_login1" name="joocart_dont_show_login" value="0" <?php if(empty($joocart_dont_show_login) || $joocart_dont_show_login==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_login1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     366            <th scope="row"><label for="joocart_dont_show_admin_login"><?php esc_html_e('Single Admin Login', 'joocart'); ?></label></th>
     367            <td>
     368            <input id="joocart_dont_show_admin_login0" name="joocart_dont_show_admin_login" value="1" <?php if(isset($joocart_dont_show_admin_login) && $joocart_dont_show_admin_login=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_admin_login0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     369            <input id="joocart_dont_show_admin_login1" name="joocart_dont_show_admin_login" value="0" <?php if(empty($joocart_dont_show_admin_login) || $joocart_dont_show_admin_login==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_admin_login1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    369370            </td>
    370371        </tr>       
    371372        <tr style="display:none;" title="<?php esc_html_e('If you alreay enabled javascript library of jQuery and Bootstrap for your site,then you can change it as required,othewise don\'t change it.', 'joocart'); ?>">
    372             <th scope="row"><label for="joocart_dont_include_jquery_library"><?php esc_html_e('Include javascript library', 'joocart'); ?></label></th>
    373             <td>
    374             <select id="joocart_dont_include_jquery_library" name="joocart_dont_include_jquery_library">
    375                 <option value="0" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('All', 'joocart'); ?></option>
    376                 <option value="1" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Bootstrap only', 'joocart'); ?></option>
    377                 <option value="2" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('jQuery only', 'joocart'); ?></option>
    378                 <option value="3" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('None', 'joocart'); ?></option>
     373            <th scope="row"><label for="joocart_dont_include_jquery"><?php esc_html_e('Include javascript library', 'joocart'); ?></label></th>
     374            <td>
     375            <select id="joocart_dont_include_jquery" name="joocart_dont_include_jquery">
     376                <option value="0" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('All', 'joocart'); ?></option>
     377                <option value="1" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Bootstrap only', 'joocart'); ?></option>
     378                <option value="2" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('jQuery only', 'joocart'); ?></option>
     379                <option value="3" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('None', 'joocart'); ?></option>
    379380            </select>           
    380381            </td>
     
    392393        </tr>
    393394        <tr style="display:none;" title="<?php esc_html_e('If you want to use third party extensions which uses $ as a jQuery variable or function name in custom js files,then set it to Yes.', 'joocart'); ?>">
    394             <th scope="row"><label for="joocart_use_jquery_dollar_variable"><?php esc_html_e('Use $ as a jQuery variable', 'joocart'); ?></label></th>
    395             <td>
    396             <input id="joocart_use_jquery_dollar_variable0" name="joocart_use_jquery_dollar_variable" value="1" checked="checked" type="radio"><label for="joocart_use_jquery_dollar_variable0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    397             <input id="joocart_use_jquery_dollar_variable1" name="joocart_use_jquery_dollar_variable" value="0" <?php if(isset($joocart_use_jquery_dollar_variable) && $joocart_use_jquery_dollar_variable==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_use_jquery_dollar_variable1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     395            <th scope="row"><label for="joocart_use_jquery_dollar"><?php esc_html_e('Use $ as a jQuery variable', 'joocart'); ?></label></th>
     396            <td>
     397            <input id="joocart_use_jquery_dollar0" name="joocart_use_jquery_dollar" value="1" checked="checked" type="radio"><label for="joocart_use_jquery_dollar0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     398            <input id="joocart_use_jquery_dollar1" name="joocart_use_jquery_dollar" value="0" <?php if(isset($joocart_use_jquery_dollar) && $joocart_use_jquery_dollar==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_use_jquery_dollar1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    398399            </td>
    399400        </tr>
     
    417418        </tr> -->
    418419        <tr style="display:none;" title="<?php esc_html_e('If you want to redirect all JooCart multistore sites to Main Site,then set it to Yes.', 'joocart'); ?>">
    419             <th scope="row"><label for="joocart_redirect_to_main_http_server"><?php esc_html_e('Redirect to Main Site', 'joocart'); ?></label></th>
    420             <td>
    421             <input id="joocart_redirect_to_main_http_server0" name="joocart_redirect_to_main_http_server" value="1" <?php if(isset($joocart_redirect_http_server) && $joocart_redirect_http_server=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_to_main_http_server0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    422             <input id="joocart_redirect_to_main_http_server1" name="joocart_redirect_to_main_http_server" value="0" <?php if(empty($joocart_redirect_http_server) || $joocart_redirect_http_server==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_to_main_http_server1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     420            <th scope="row"><label for="joocart_redirect_http_server"><?php esc_html_e('Redirect to Main Site', 'joocart'); ?></label></th>
     421            <td>
     422            <input id="joocart_redirect_http_server0" name="joocart_redirect_http_server" value="1" <?php if(isset($joocart_redirect_http_server) && $joocart_redirect_http_server=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_http_server0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     423            <input id="joocart_redirect_http_server1" name="joocart_redirect_http_server" value="0" <?php if(empty($joocart_redirect_http_server) || $joocart_redirect_http_server==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_http_server1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    423424            </td>
    424425        </tr>
    425426        <tr style="display:none;" title="<?php esc_html_e('If you set it to Yes,then JooCart language will be set according to WordPress default language automatically.If you have single WordPress language and mulitple JooCart languages,then set it to No,otherwise set it to Yes', 'joocart'); ?>">
    426             <th scope="row"><label for="joocart_change_lang_to_wp_default"><?php esc_html_e('Change Language to WP Default', 'joocart'); ?></label></th>
    427             <td>
    428             <input id="joocart_change_lang_to_wp_default0" name="joocart_change_lang_to_wp_default" value="1" checked="checked" type="radio"><label for="joocart_change_lang_to_wp_default0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    429             <input id="joocart_change_lang_to_wp_default1" name="joocart_change_lang_to_wp_default" value="0" <?php if(isset($joocart_change_lang_to_wp_default) && $joocart_change_lang_to_wp_default==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_change_lang_to_wp_default1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     427            <th scope="row"><label for="joocart_change_lang_to_default"><?php esc_html_e('Change Language to WP Default', 'joocart'); ?></label></th>
     428            <td>
     429            <input id="joocart_change_lang_to_default0" name="joocart_change_lang_to_default" value="1" checked="checked" type="radio"><label for="joocart_change_lang_to_default0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     430            <input id="joocart_change_lang_to_default1" name="joocart_change_lang_to_default" value="0" <?php if(isset($joocart_change_lang_to_default) && $joocart_change_lang_to_default==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_change_lang_to_default1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    430431            </td>
    431432        </tr>
     
    527528        </tr>
    528529        <tr style="display:none;" title="<?php esc_html_e('Select SEO URL type for products and categories.', 'joocart'); ?>">
    529             <th scope="row"><label for="joocart_select_seo_type_for_prod_cat"><?php esc_html_e('SEO URL type for products and categories', 'joocart'); ?></label></th>
    530             <td>
    531             <select id="joocart_select_seo_type_for_prod_cat" name="joocart_select_seo_type_for_prod_cat">
    532                 <option value="0" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('Default SEO URL', 'joocart'); ?></option>
    533                 <option value="1" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Short versions of the links', 'joocart'); ?></option>
    534                 <option value="2" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('Long versions of the links', 'joocart'); ?></option>
    535                 <option value="3" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('Short links for products and long links for categories', 'joocart'); ?></option>
     530            <th scope="row"><label for="joocart_select_seo_for_prod_cat"><?php esc_html_e('SEO URL type for products and categories', 'joocart'); ?></label></th>
     531            <td>
     532            <select id="joocart_select_seo_for_prod_cat" name="joocart_select_seo_for_prod_cat">
     533                <option value="0" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('Default SEO URL', 'joocart'); ?></option>
     534                <option value="1" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Short versions of the links', 'joocart'); ?></option>
     535                <option value="2" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('Long versions of the links', 'joocart'); ?></option>
     536                <option value="3" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('Short links for products and long links for categories', 'joocart'); ?></option>
    536537            </select>           
    537538            </td>
  • joocart/tags/3.0.3.9/admin/joocart_admin_functions.php

    r3295891 r3301753  
    389389    }
    390390    public static function setJooCartConfigFile(){
    391         $shop_page_id="";
    392         $joocart_use_wordpress_buttons="";
     391        $joocart_shop_page_id="";
     392        $joocart_use_wordpress_button="";
    393393        $joocart_dont_show_header="";
    394394        $joocart_dont_show_footer="";
     
    405405        $joocart_use_wordpress_db="1";
    406406        $joocart_show_logo_header="";
    407         $joocart_oc_template_without_wordpress="";
     407        $joocart_use_oc_template="";
    408408        $joocart_use_custom_color="";
    409409        $joocart_default_txt_color="";
     
    420420        $joocart_use_dynamic_checkout_urls="";
    421421        if(joocart_get_option('joocart_shop_page_id')!=""){
    422             $shop_page_id=joocart_get_option('joocart_shop_page_id');
     422            $joocart_shop_page_id=joocart_get_option('joocart_shop_page_id');
    423423        }
    424424        if(joocart_get_option('joocart_dont_show_menus')!=""){
     
    436436            joocart_define_oc('JOOCART_OPENCART_DIR', JOOCART_PLUGIN_DIR);
    437437        }       
    438         if($shop_page_id!=""){
    439             joocart_define_oc('JOOCART_SHOP_PAGE_ID', $shop_page_id);
     438        if($joocart_shop_page_id!=""){
     439            joocart_define_oc('JOOCART_SHOP_PAGE_ID', $joocart_shop_page_id);
    440440        } else {
    441441            joocart_define_oc('JOOCART_SHOP_PAGE_ID', "0");
     
    457457            }
    458458        }
    459         if($joocart_use_wordpress_buttons!=""){
    460             joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTONS', $joocart_use_wordpress_buttons);
    461         } else {
    462             joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTONS', "0");
     459        if($joocart_use_wordpress_button!=""){
     460            joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTON', $joocart_use_wordpress_button);
     461        } else {
     462            joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTON', "0");
    463463        }
    464464       
     
    523523        }
    524524       
    525         if($joocart_oc_template_without_wordpress!=""){
    526             joocart_define_oc('JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS', $joocart_oc_template_without_wordpress);
    527         } else {
    528             joocart_define_oc('JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS', "0");
     525        if($joocart_use_oc_template!=""){
     526            joocart_define_oc('JOOCART_USE_OC_TEMPLATE', $joocart_use_oc_template);
     527        } else {
     528            joocart_define_oc('JOOCART_USE_OC_TEMPLATE', "0");
    529529        }
    530530       
     
    627627            $joocart_main_http_server = str_replace($joocart_default_relative_url, "", $joocart_opencart_url);
    628628        }
    629        
    630629       
    631630        joocart_define_oc('JOOCART_RELATIVE_URL', $joocart_relative_url);
  • joocart/tags/3.0.3.9/admin/joocart_install.php

    r3295891 r3301753  
    1313    $joocart_content="<!-- JooCart Code. Please do not remove this line,otherwise JooCart shopping cart will not work properly. -->[joocart_main_content]<!-- JooCart Code End. -->";
    1414    add_option("joocart_shop_page_id",'','','yes');
    15     add_option("joocart_order_id",'','','yes');
     15    add_option("joocart_upgrade_download_id",'','','yes');
    1616    add_option("joocart_order_email",'','','yes');
    1717    // add_option("joocart_site_url",'','','yes');
    1818    add_option("joocart_opencart_dir_path",'','','yes');
    19     // add_option("joocart_opencart_dir_url",'','','yes');
     19    add_option("joocart_opencart_dir_url",'','','yes');
    2020    add_option("joocart_who_can_access_admin",'','','yes');
    2121    add_option("joocart_use_wordpress_button",'','','yes');
     
    2323    add_option("joocart_dont_show_footer",'','','yes');
    2424    add_option("joocart_dont_show_menus",'','','yes');
    25     add_option("joocart_dont_show_login",'','','yes');
    26     add_option("joocart_dont_include_jquery_library",'','','yes');
    27     add_option("joocart_use_jquery_dollar_variable",'','','yes');
     25    add_option("joocart_dont_show_admin_login",'','','yes');
     26    add_option("joocart_dont_include_jquery",'','','yes');
     27    add_option("joocart_disable_bootstrap_tooltip",'','','yes');
     28    add_option("joocart_use_jquery_dollar",'','','yes');
    2829    add_option("joocart_dont_show_left_right_column",'','','yes');
    2930    add_option("joocart_enable_wp_widget_title",'','','yes');
    30     add_option("joocart_main_http_server",'','','yes');
    31     add_option("joocart_redirect_to_main_http_server",'','','yes');
    32     add_option("joocart_change_lang_to_wp_default",'','','yes');
     31    // add_option("joocart_main_http_server",'','','yes');
     32    add_option("joocart_redirect_http_server",'','','yes');
     33    add_option("joocart_change_lang_to_default",'','','yes');
    3334    add_option("joocart_use_wordpress_db",'','','yes');
    3435    add_option("joocart_db_user_name",'','','yes');
     
    4041    add_option("joocart_default_txt_color",'','','yes');   
    4142    add_option("joocart_default_link_color",'','','yes');
     43    add_option("joocart_default_link_hover_color",'','','yes');
    4244    add_option("joocart_default_button_box_color",'','','yes');
    4345    add_option("joocart_default_button_hover_color",'','','yes');
    4446    add_option("joocart_default_button_txt_color",'','','yes');
     47    add_option("joocart_default_menu_link_color",'','','yes');
     48    add_option("joocart_default_menu_link_hover_color",'','','yes');
    4549    add_option("joocart_use_gradient_color",'','','yes');
     50    add_option("joocart_custom_css_oc",'','','yes');
     51    add_option("joocart_select_seo_for_prod_cat",'','','yes');
     52    add_option("joocart_use_dynamic_checkout_urls",'','','yes');
    4653
    4754    $id=get_option("joocart_shop_page_id");
  • joocart/tags/3.0.3.9/config.php

    r3295891 r3301753  
    99JooCartAdminBase::setJooCartConfigFile();
    1010global $joocart_replace_output_array;
    11 if(defined("JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS") && (JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS == "1" || JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS == "2" || JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS == "4")) {
     11if(defined("JOOCART_USE_OC_TEMPLATE") && (JOOCART_USE_OC_TEMPLATE == "1" || JOOCART_USE_OC_TEMPLATE == "2" || JOOCART_USE_OC_TEMPLATE == "4")) {
    1212global $joocart_replace_output_array1;
    1313$joocart_replace_output_array1=array(
     
    6969            '$.'=>'jQuery.',
    7070            '$('=>'jQuery(',
    71             'class="button"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="button"':'class="button-oc"',
    72             'class=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"button\"':'class=\"button-oc\"',
    73             'id="button"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'id="button"':'id="button-oc"',
    74             'id=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'id=\"button\"':'id=\"button-oc\"',
    75             'class="btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="button':'class="btn btn-primary btn-primary-oc',
    76             'class=\"btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"button':'class=\"btn btn-primary btn-primary-oc',
    77             'class="btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="button':'class="btn btn-default btn-default-oc',
    78             'class=\"btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"button':'class=\"btn btn-default btn-default-oc',
    79             'class="btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-warning':'class="btn btn-warning btn-warning-oc',
    80             'class=\"btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-warning':'class=\"btn btn-warning btn-warning-oc',
    81             'class="btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-danger':'class="btn btn-danger btn-danger-oc',
    82             'class=\"btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-danger':'class=\"btn btn-danger btn-danger-oc',
    83             'class="btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-success':'class="btn btn-success btn-success-oc',
    84             'class=\"btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-success':'class=\"btn btn-success btn-success-oc',
    85             'class="btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-info':'class="btn btn-info btn-info-oc',
    86             'class=\"btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-info':'class=\"btn btn-info btn-info-oc',
     71            'class="button"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="button"':'class="button-oc"',
     72            'class=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"button\"':'class=\"button-oc\"',
     73            'id="button"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'id="button"':'id="button-oc"',
     74            'id=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'id=\"button\"':'id=\"button-oc\"',
     75            'class="btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="button':'class="btn btn-primary btn-primary-oc',
     76            'class=\"btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"button':'class=\"btn btn-primary btn-primary-oc',
     77            'class="btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="button':'class="btn btn-default btn-default-oc',
     78            'class=\"btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"button':'class=\"btn btn-default btn-default-oc',
     79            'class="btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-warning':'class="btn btn-warning btn-warning-oc',
     80            'class=\"btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-warning':'class=\"btn btn-warning btn-warning-oc',
     81            'class="btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-danger':'class="btn btn-danger btn-danger-oc',
     82            'class=\"btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-danger':'class=\"btn btn-danger btn-danger-oc',
     83            'class="btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-success':'class="btn btn-success btn-success-oc',
     84            'class=\"btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-success':'class=\"btn btn-success btn-success-oc',
     85            'class="btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-info':'class="btn btn-info btn-info-oc',
     86            'class=\"btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-info':'class=\"btn btn-info btn-info-oc',
    8787            'data-toggle="tooltip"' => (JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "1" || JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "3")?'':'data-toggle="tooltip"',
    8888            'data-toggle=\"tooltip\"' => (JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "1" || JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "3")?'':'data-toggle=\"tooltip\"',
  • joocart/tags/3.0.3.9/index.php

    r3295891 r3301753  
    88if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
    99// Version
    10 if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.8'); }
     10if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.9'); }
    1111
    1212// Configuration
  • joocart/tags/3.0.3.9/joocart.php

    r3295891 r3301753  
    33 * Plugin Name:         JooCart
    44 * Description:         JooCart – A WordPress eCommerce plugin. Power of OpenCart inside WordPress.
    5  * Version:             3.0.3.8
     5 * Version:             3.0.3.9
    66 * Requires at least:   3.5
    77 * Tested up to:        6.8
  • joocart/tags/3.0.3.9/joocart_main.php

    r3295891 r3301753  
    159159    // get current post information
    160160    global $post;
     161    // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- 'route' is used for routing, not form processing
     162    $joocart_route = isset($_REQUEST['route']) ? sanitize_text_field(wp_unslash($_REQUEST['route'])) : '';
    161163    if(isset($post) && has_shortcode($post->post_content, 'joocart_main_content') || get_option("joocart_shop_page_id")==get_query_var('page_id') || $post_name==get_query_var('name') || (isset($joocart_route) && strstr($joocart_route,"/") && !get_query_var('page_id'))){
    162164        if(!defined('JOOCART_IN_MAIN_PAGE'))
  • joocart/tags/3.0.3.9/readme.txt

    r3295891 r3301753  
    11=== JooCart ===
    22Contributors: softPHP 
    3 Tags: ecommerce, shopping cart, joocart 
     3Tags: ecommerce, opencart, shopping cart, wordpress store extension, multi seller and multivendor
    44Requires at least: 3.5 
    55Tested up to: 6.8 
    66Requires PHP: 7.2 
    7 Stable tag: 3.0.3.8 
     7Stable tag: 3.0.3.9 
    88License: GPL v2 or later 
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html 
    1010
    11 JooCart – A lightweight OpenCart integration for WordPress.
     11== Description == 
     12**Turn your WordPress into a full-featured online store with JooCart!** 
     13Experience the power of OpenCart directly inside WordPress — fast, flexible, and Pro-ready.
    1214
    13 == Description == 
    1415JooCart – a powerful WordPress eCommerce plugin. Experience the power of OpenCart within WordPress. 
    1516
    16 **Enhance your WordPress e-commerce experience with [JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)!** Get access to premium features: 
     17**Enhance your WordPress e-commerce experience with [JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)!** 
     18🛒 **Live Demo**: [https://demo.soft-php.com/joocart-wp/](https://demo.soft-php.com/joocart-wp/)
    1719
    18 - Seamless WordPress Integration: Unified front-end and back-end login. 
    19 - Custom WordPress Widgets: Categories, Shopping Cart, Information & more. 
    20 - Multilingual Support: Works flawlessly with WordPress language settings. 
    21 - Flexible OpenCart Extensions: Use OpenCart add-ons as WordPress widgets. 
    22 - SEO-Optimized: Integrated with WordPress SEO URLs for better visibility. 
    23 - Smart Navigation: Link products, categories, and information seamlessly. 
    24 - Shortcode Support: Easily add products to posts with a simple shortcode. 
    25 - Admin Access Control: Restrict panel access based on user roles. 
    26 - Flexible Layout Options: Show/hide OpenCart columns, header, footer, and WordPress widgets. 
    27 - Customizable Design: Modify button, menu, and template colors to match your brand. 
    28 - Connect with Existing OpenCart: Easily integrate JooCart Pro with your existing OpenCart setup. 
    29 - Frequent Updates & Dedicated Support: Stay ahead with regular improvements. 
    30 - And Many More! 
     20### 💡 General Features:
     21– Compatible with OpenCart 3.0.3.x versions
     22– Easy installation through the WordPress Plugins menu 
     23– Compatible with most WordPress templates 
     24– Manage OpenCart configuration and users directly from the WordPress admin panel 
     25– OpenCart interface displays natively within WordPress content 
     26– Unlimited categories, products, and manufacturers 
     27– Multi-language support for international customers 
     28– Product reviews and ratings 
     29– Over 20 Payment Gateways Supported 
     30– 8+ Shipping Methods Supported 
     31– Reward point system to increase customer loyalty 
     32– RMA (Return Merchandise Authorization) system 
     33– Grid/List product listing options 
     34– Gift voucher system 
     35– Credit system for easier payments 
     36– Reorder system for quick repeat orders 
     37– Wishlist system to boost sales 
     38– Affiliate system for commission-based sales 
     39– Banner Manager for showcasing promotions 
     40– Guest Checkout for a faster shopping experience 
     41– Sales Reports for tracking store performance 
     42– Order editing system for easy adjustments 
     43– Ability to ban customers by IP for added security 
     44– Google Base availability tag for product feeds 
     45
     46**JooCart Pro Features**: 
     47– Seamless WordPress Integration: Unified front-end and back-end login 
     48– Custom WordPress Widgets: Categories, Shopping Cart, Information & more 
     49– Multilingual Support: Works flawlessly with WordPress language settings 
     50– Flexible OpenCart Extensions: Use OpenCart add-ons as WordPress widgets 
     51– SEO-Optimized: Integrated with WordPress SEO URLs for better visibility 
     52– Smart Navigation: Link products, categories, and information seamlessly 
     53– Shortcode Support: Easily add products to posts with a simple shortcode 
     54– Admin Access Control: Restrict panel access based on user roles 
     55– Flexible Layout Options: Show/hide OpenCart columns, header, footer, and WordPress widgets 
     56– Customizable Design: Modify button, menu, and template colors to match your brand 
     57– Connect with Existing OpenCart: Easily integrate JooCart Pro with your existing OpenCart setup 
     58– Frequent Updates & Dedicated Support: Stay ahead with regular improvements 
     59– And Many More!
     60
     61== Why Choose JooCart Pro? == 
     62Whether you're a small shop or a large marketplace, JooCart Pro gives you everything you need:
     63– 🔐 Full WordPress + OpenCart user sync 
     64– 🧩 Access to premium OpenCart extensions inside WordPress 
     65– 🛍️ Enhanced product & cart modules with shortcode support 
     66– 🔄 Real-time updates & expert support 
     67– 📈 SEO tools & analytics integration 
     68– 🎯 Optimized performance for high-traffic stores 
     69
     70🎁 [See JooCart Pro in action](https://demo.soft-php.com/joocart-wp/) 
     71🚀 [Upgrade to JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)
     72
     73💼 Need Multivendor Support? Check out [JooCart Multivendor](https://www.soft-php.com/joocart-multivendor.html) 
     74🧩 Extend JooCart even more: [JooCart Extensions](https://www.soft-php.com/shop-products/joocart-extensions.html) 
     75🛒 Plus, use standard OpenCart extension from the [OpenCart Marketplace](https://www.opencart.com)!
    3176
    3277== Installation == 
    33 1. Upload the `joocart` folder to the `/wp-content/plugins/` directory. 
    34 2. Activate the plugin through the ‘Plugins’ menu in WordPress. 
    35 3. Configure settings from JooCart’s admin panel. 
     781. Upload the `joocart` folder to the `/wp-content/plugins/` directory 
     792. Activate the plugin through the ‘Plugins’ menu in WordPress 
     803. Configure settings from JooCart’s admin panel 
    3681
    3782== Upgrade Notice == 
    38 = 3.0.3.8
    39 * Initial release. No upgrade issues expected. 
     83= 3.0.3.9
     84* Bug fix release. No database upgrade needed. 
    4085
    4186== Screenshots == 
    42 1. Screenshot of the admin panel. 
    43 2. Screenshot of the front-end store page. 
     871. Screenshot of the admin panel 
     882. Screenshot of the front-end store page 
    4489
    4590== Changelog == 
    46 = 3.0.3.8 = 
    47 * Initial release of JooCart. 
    48 * Integrated OpenCart functionality inside WordPress. 
     91= 3.0.3.9 = 
     92* bug fix for 3.0.3.8 
     93* compatible with opencart 3.0.3.x
     94* code improvement
    4995
    5096== Frequently Asked Questions == 
    5197= Is JooCart compatible with WooCommerce? = 
    52 No, JooCart is a separate eCommerce solution based on OpenCart. 
     98No, JooCart is a separate eCommerce solution based on OpenCart 
    5399
    54100= Where can I get support? = 
     
    56102
    57103= Is there a Pro version available? = 
    58 Yes! Upgrade to **[JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)** for additional features like WordPress integration, SEO-optimized navigation, shortcode support, and much more. 
     104Yes! Upgrade to **[JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)** for additional features like WordPress integration, SEO-optimized navigation, shortcode support, and much more 
     105
     106== Love JooCart? == 
     107⭐ If JooCart helped your business, please consider leaving a review on the WordPress plugin page!
  • joocart/tags/3.0.3.9/system/joocart_admin.ocmod.xml

    r3295891 r3301753  
    210210            <add position="replace" offset="4"><![CDATA[
    211211        if(defined("ABSPATH")) {
    212             if (($this->ssl && $secure) || (defined("OC_SSL_SECURE") && $secure) || (strstr(HTTP_SERVER,"https://") && $secure)) {
     212            if (($this->ssl && $secure) || (defined("JOOCART_OC_SSL_SECURE") && $secure) || (strstr(HTTP_SERVER,"https://") && $secure)) {
    213213                $url = $this->ssl;
    214214            } else {
  • joocart/tags/3.0.3.9/system/joocart_admin_common.ocmod.xml

    r3295891 r3301753  
    3131            <add position="before"><![CDATA[
    3232        if(defined("ABSPATH") && $data['text_version'] != "")
    33         $data['text_version'] = 'JooCart Version 3.0.3.8 - OpenCart ' . sprintf($this->language->get('text_version'), VERSION);
     33        $data['text_version'] = 'JooCart Version 3.0.3.9 - OpenCart ' . sprintf($this->language->get('text_version'), VERSION);
    3434        $data["oc_theme_admin_only"] = false;
    3535            ]]></add>
     
    152152            <search><![CDATA[// Theme]]></search>
    153153            <add position="before"><![CDATA[
    154         if($this->config->get('config_secure') && !defined("OC_SSL_SECURE"))
    155         define('OC_SSL_SECURE', $this->config->get('config_secure'));
     154        if($this->config->get('config_secure') && !defined("JOOCART_OC_SSL_SECURE"))
     155        define('JOOCART_OC_SSL_SECURE', $this->config->get('config_secure'));
    156156        if(!defined('JOOCART_RELATIVE_URL'))
    157157        define('JOOCART_RELATIVE_URL', '');
  • joocart/tags/3.0.3.9/system/joocart_frontend_common.ocmod.xml

    r3295891 r3301753  
    555555        if (defined("ABSPATH")) {
    556556            // Start JooCart Changes
    557             if($this->config->get('config_secure') && !defined("OC_SSL_SECURE"))
    558             define('OC_SSL_SECURE', $this->config->get('config_secure'));
     557            if($this->config->get('config_secure') && !defined("JOOCART_OC_SSL_SECURE"))
     558            define('JOOCART_OC_SSL_SECURE', $this->config->get('config_secure'));
    559559            global $joocart_application_config_mode;
    560560           
  • joocart/tags/3.0.3.9/uninstall.php

    r3295891 r3301753  
    2222    delete_option("joocart_dont_show_footer");
    2323    delete_option("joocart_dont_show_menus");
    24     delete_option("joocart_dont_show_login");
    25     delete_option("joocart_dont_include_jquery_library");
    26     delete_option("joocart_use_jquery_dollar_variable");
     24    delete_option("joocart_dont_show_admin_login");
     25    delete_option("joocart_dont_include_jquery");
     26    delete_option("joocart_use_jquery_dollar");
    2727    delete_option("joocart_dont_show_left_right_column");
    2828    delete_option("joocart_enable_wp_widget_title");
    2929    delete_option("joocart_main_http_server");
    30     delete_option("joocart_redirect_to_main_http_server");
     30    delete_option("joocart_redirect_http_server");
    3131    delete_option("joocart_use_wordpress_db");
    3232    delete_option("joocart_db_user_name");
  • joocart/trunk/admin/index.php

    r3295891 r3301753  
    88if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
    99// Version
    10 if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.8'); }
     10if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.9'); }
    1111
    1212// Configuration
  • joocart/trunk/admin/joocart_admin.php

    r3295891 r3301753  
    1313add_action('admin_menu','joocart_menu_options_add_page');
    1414require_once(dirname(__FILE__).'/joocart_install.php');
     15require_once(dirname(__FILE__).'/joocart_admin_functions.php');
    1516function joocart_dashboard_widget_function(){
    1617    echo "<a href=\"options-general.php?page=joocart_options_page\">" . esc_html__('JooCart Options', 'joocart') . "</a> |
     
    141142    register_setting('joocart_options_page',"joocart_dont_show_menus", array('sanitize_callback' =>  'sanitize_text_field'));
    142143    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    143     register_setting('joocart_options_page',"joocart_dont_show_login", array('sanitize_callback' =>  'sanitize_text_field'));
    144     // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    145     register_setting('joocart_options_page',"joocart_dont_include_jquery_library", array('sanitize_callback' =>  'sanitize_text_field'));
     144    register_setting('joocart_options_page',"joocart_dont_show_admin_login", array('sanitize_callback' =>  'sanitize_text_field'));
     145    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
     146    register_setting('joocart_options_page',"joocart_dont_include_jquery", array('sanitize_callback' =>  'sanitize_text_field'));
    146147    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    147148    register_setting('joocart_options_page',"joocart_disable_bootstrap_tooltip", array('sanitize_callback' =>  'sanitize_text_field'));
    148149    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    149     register_setting('joocart_options_page',"joocart_use_jquery_dollar_variable", array('sanitize_callback' =>  'sanitize_text_field'));
     150    register_setting('joocart_options_page',"joocart_use_jquery_dollar", array('sanitize_callback' =>  'sanitize_text_field'));
    150151    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    151152    register_setting('joocart_options_page',"joocart_dont_show_left_right_column", array('sanitize_callback' =>  'sanitize_text_field'));
     
    153154    register_setting('joocart_options_page',"joocart_enable_wp_widget_title", array('sanitize_callback' =>  'sanitize_text_field'));
    154155    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    155     register_setting('joocart_options_page',"joocart_redirect_to_main_http_server", array('sanitize_callback' =>  'sanitize_text_field')); 
    156     // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    157     register_setting('joocart_options_page',"joocart_change_lang_to_wp_default", array('sanitize_callback' =>  'sanitize_text_field'));
     156    register_setting('joocart_options_page',"joocart_redirect_http_server", array('sanitize_callback' =>  'sanitize_text_field')); 
     157    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
     158    register_setting('joocart_options_page',"joocart_change_lang_to_default", array('sanitize_callback' =>  'sanitize_text_field'));
    158159    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    159160    register_setting('joocart_options_page',"joocart_use_wordpress_db", array('sanitize_callback' =>  'sanitize_text_field'));
     
    195196    register_setting('joocart_options_page',"joocart_custom_css_oc", array('sanitize_callback' =>  'sanitize_text_field'));
    196197    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    197     register_setting('joocart_options_page',"joocart_select_seo_type_for_prod_cat", array('sanitize_callback' =>  'sanitize_text_field'));
     198    register_setting('joocart_options_page',"joocart_select_seo_for_prod_cat", array('sanitize_callback' =>  'sanitize_text_field'));
    198199    // phpcs:ignore PluginCheck.CodeAnalysis.SettingSanitization.register_settingDynamic -- All settings use valid static sanitization callbacks
    199200    register_setting('joocart_options_page',"joocart_use_dynamic_checkout_urls", array('sanitize_callback' =>  'sanitize_text_field'));
     
    211212    $joocart_dont_show_footer=get_option("joocart_dont_show_footer");
    212213    $joocart_dont_show_menus=get_option("joocart_dont_show_menus");
    213     $joocart_dont_show_login=get_option("joocart_dont_show_login");
    214     $joocart_dont_include_jquery_library=get_option("joocart_dont_include_jquery_library");
     214    $joocart_dont_show_admin_login=get_option("joocart_dont_show_admin_login");
     215    $joocart_dont_include_jquery=get_option("joocart_dont_include_jquery");
    215216    $joocart_disable_bootstrap_tooltip=get_option("joocart_disable_bootstrap_tooltip");
    216     $joocart_use_jquery_dollar_variable=get_option("joocart_use_jquery_dollar_variable");
     217    $joocart_use_jquery_dollar=get_option("joocart_use_jquery_dollar");
    217218    $joocart_dont_show_left_right_column=get_option("joocart_dont_show_left_right_column");
    218219    $joocart_enable_wp_widget_title=get_option("joocart_enable_wp_widget_title");
    219220    // $joocart_main_http_server=get_option("joocart_main_http_server");
    220     $joocart_redirect_http_server=get_option("joocart_redirect_to_main_http_server");
    221     $joocart_change_lang_to_wp_default=get_option("joocart_change_lang_to_wp_default");
     221    $joocart_redirect_http_server=get_option("joocart_redirect_http_server");
     222    $joocart_change_lang_to_default=get_option("joocart_change_lang_to_default");
    222223    $joocart_use_wordpress_db=get_option("joocart_use_wordpress_db");
    223224    $joocart_db_user_name=get_option("joocart_db_user_name");
     
    239240    $joocart_use_gradient_color=get_option("joocart_use_gradient_color");
    240241    $joocart_custom_css_oc=get_option("joocart_custom_css_oc");
    241     $joocart_select_seo_type_for_prod_cat=get_option("joocart_select_seo_type_for_prod_cat");
     242    $joocart_select_seo_for_prod_cat=get_option("joocart_select_seo_for_prod_cat");
    242243    $joocart_use_dynamic_checkout_urls=get_option("joocart_use_dynamic_checkout_urls");
    243244   
    244245    if(function_exists("get_editable_roles"))
    245     $wordpress_rules=get_editable_roles();
     246    $joocart_wp_rules=get_editable_roles();
    246247    else
    247     $wordpress_rules=array();
     248    $joocart_wp_rules=array();
    248249   
    249     $wordpress_user_groups=array();
    250     foreach($wordpress_rules as $key=>$value){
    251         $wordpress_user_groups[$key]["wordpress_user_group_id"]=$key;
    252         $wordpress_user_groups[$key]["name"]=$value["name"];
     250    $joocart_wp_user_groups=array();
     251    foreach($joocart_wp_rules as $key=>$value){
     252        $joocart_wp_user_groups[$key]["wordpress_user_group_id"]=$key;
     253        $joocart_wp_user_groups[$key]["name"]=$value["name"];
    253254       
    254255    }
     
    325326            <td>
    326327            <select id="joocart_who_can_access_admin" name="joocart_who_can_access_admin">
    327                 <?php foreach ($wordpress_user_groups as $wordpress_user_group) { ?>               
    328                 <option <?php if(isset($joocart_who_can_access_admin) && $joocart_who_can_access_admin==$wordpress_user_group['wordpress_user_group_id']) { echo 'selected="selected"'; }?> value="<?php echo esc_html($wordpress_user_group['wordpress_user_group_id']); ?>"><?php echo esc_html($wordpress_user_group['name']); ?></option>
     328                <?php foreach ($joocart_wp_user_groups as $joocart_wp_user_group) { ?>               
     329                <option <?php if(isset($joocart_who_can_access_admin) && $joocart_who_can_access_admin==$joocart_wp_user_group['wordpress_user_group_id']) { echo 'selected="selected"'; }?> value="<?php echo esc_html($joocart_wp_user_group['wordpress_user_group_id']); ?>"><?php echo esc_html($joocart_wp_user_group['name']); ?></option>
    329330                <?php } ?>
    330331            </select>
     
    363364        </tr>
    364365        <tr style="display:none;" title="<?php esc_html_e('Single Admin Login for JooCart and WordPress,If you set it to Yes,then you don\'t need to login in JooCart admin panel after you logged in WordPress.', 'joocart'); ?>">
    365             <th scope="row"><label for="joocart_dont_show_login"><?php esc_html_e('Single Admin Login', 'joocart'); ?></label></th>
    366             <td>
    367             <input id="joocart_dont_show_login0" name="joocart_dont_show_login" value="1" <?php if(isset($joocart_dont_show_login) && $joocart_dont_show_login=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_login0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    368             <input id="joocart_dont_show_login1" name="joocart_dont_show_login" value="0" <?php if(empty($joocart_dont_show_login) || $joocart_dont_show_login==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_login1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     366            <th scope="row"><label for="joocart_dont_show_admin_login"><?php esc_html_e('Single Admin Login', 'joocart'); ?></label></th>
     367            <td>
     368            <input id="joocart_dont_show_admin_login0" name="joocart_dont_show_admin_login" value="1" <?php if(isset($joocart_dont_show_admin_login) && $joocart_dont_show_admin_login=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_admin_login0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     369            <input id="joocart_dont_show_admin_login1" name="joocart_dont_show_admin_login" value="0" <?php if(empty($joocart_dont_show_admin_login) || $joocart_dont_show_admin_login==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_dont_show_admin_login1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    369370            </td>
    370371        </tr>       
    371372        <tr style="display:none;" title="<?php esc_html_e('If you alreay enabled javascript library of jQuery and Bootstrap for your site,then you can change it as required,othewise don\'t change it.', 'joocart'); ?>">
    372             <th scope="row"><label for="joocart_dont_include_jquery_library"><?php esc_html_e('Include javascript library', 'joocart'); ?></label></th>
    373             <td>
    374             <select id="joocart_dont_include_jquery_library" name="joocart_dont_include_jquery_library">
    375                 <option value="0" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('All', 'joocart'); ?></option>
    376                 <option value="1" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Bootstrap only', 'joocart'); ?></option>
    377                 <option value="2" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('jQuery only', 'joocart'); ?></option>
    378                 <option value="3" <?php if(isset($joocart_dont_include_jquery_library) && $joocart_dont_include_jquery_library=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('None', 'joocart'); ?></option>
     373            <th scope="row"><label for="joocart_dont_include_jquery"><?php esc_html_e('Include javascript library', 'joocart'); ?></label></th>
     374            <td>
     375            <select id="joocart_dont_include_jquery" name="joocart_dont_include_jquery">
     376                <option value="0" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('All', 'joocart'); ?></option>
     377                <option value="1" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Bootstrap only', 'joocart'); ?></option>
     378                <option value="2" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('jQuery only', 'joocart'); ?></option>
     379                <option value="3" <?php if(isset($joocart_dont_include_jquery) && $joocart_dont_include_jquery=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('None', 'joocart'); ?></option>
    379380            </select>           
    380381            </td>
     
    392393        </tr>
    393394        <tr style="display:none;" title="<?php esc_html_e('If you want to use third party extensions which uses $ as a jQuery variable or function name in custom js files,then set it to Yes.', 'joocart'); ?>">
    394             <th scope="row"><label for="joocart_use_jquery_dollar_variable"><?php esc_html_e('Use $ as a jQuery variable', 'joocart'); ?></label></th>
    395             <td>
    396             <input id="joocart_use_jquery_dollar_variable0" name="joocart_use_jquery_dollar_variable" value="1" checked="checked" type="radio"><label for="joocart_use_jquery_dollar_variable0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    397             <input id="joocart_use_jquery_dollar_variable1" name="joocart_use_jquery_dollar_variable" value="0" <?php if(isset($joocart_use_jquery_dollar_variable) && $joocart_use_jquery_dollar_variable==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_use_jquery_dollar_variable1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     395            <th scope="row"><label for="joocart_use_jquery_dollar"><?php esc_html_e('Use $ as a jQuery variable', 'joocart'); ?></label></th>
     396            <td>
     397            <input id="joocart_use_jquery_dollar0" name="joocart_use_jquery_dollar" value="1" checked="checked" type="radio"><label for="joocart_use_jquery_dollar0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     398            <input id="joocart_use_jquery_dollar1" name="joocart_use_jquery_dollar" value="0" <?php if(isset($joocart_use_jquery_dollar) && $joocart_use_jquery_dollar==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_use_jquery_dollar1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    398399            </td>
    399400        </tr>
     
    417418        </tr> -->
    418419        <tr style="display:none;" title="<?php esc_html_e('If you want to redirect all JooCart multistore sites to Main Site,then set it to Yes.', 'joocart'); ?>">
    419             <th scope="row"><label for="joocart_redirect_to_main_http_server"><?php esc_html_e('Redirect to Main Site', 'joocart'); ?></label></th>
    420             <td>
    421             <input id="joocart_redirect_to_main_http_server0" name="joocart_redirect_to_main_http_server" value="1" <?php if(isset($joocart_redirect_http_server) && $joocart_redirect_http_server=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_to_main_http_server0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    422             <input id="joocart_redirect_to_main_http_server1" name="joocart_redirect_to_main_http_server" value="0" <?php if(empty($joocart_redirect_http_server) || $joocart_redirect_http_server==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_to_main_http_server1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     420            <th scope="row"><label for="joocart_redirect_http_server"><?php esc_html_e('Redirect to Main Site', 'joocart'); ?></label></th>
     421            <td>
     422            <input id="joocart_redirect_http_server0" name="joocart_redirect_http_server" value="1" <?php if(isset($joocart_redirect_http_server) && $joocart_redirect_http_server=="1") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_http_server0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     423            <input id="joocart_redirect_http_server1" name="joocart_redirect_http_server" value="0" <?php if(empty($joocart_redirect_http_server) || $joocart_redirect_http_server==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_redirect_http_server1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    423424            </td>
    424425        </tr>
    425426        <tr style="display:none;" title="<?php esc_html_e('If you set it to Yes,then JooCart language will be set according to WordPress default language automatically.If you have single WordPress language and mulitple JooCart languages,then set it to No,otherwise set it to Yes', 'joocart'); ?>">
    426             <th scope="row"><label for="joocart_change_lang_to_wp_default"><?php esc_html_e('Change Language to WP Default', 'joocart'); ?></label></th>
    427             <td>
    428             <input id="joocart_change_lang_to_wp_default0" name="joocart_change_lang_to_wp_default" value="1" checked="checked" type="radio"><label for="joocart_change_lang_to_wp_default0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
    429             <input id="joocart_change_lang_to_wp_default1" name="joocart_change_lang_to_wp_default" value="0" <?php if(isset($joocart_change_lang_to_wp_default) && $joocart_change_lang_to_wp_default==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_change_lang_to_wp_default1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
     427            <th scope="row"><label for="joocart_change_lang_to_default"><?php esc_html_e('Change Language to WP Default', 'joocart'); ?></label></th>
     428            <td>
     429            <input id="joocart_change_lang_to_default0" name="joocart_change_lang_to_default" value="1" checked="checked" type="radio"><label for="joocart_change_lang_to_default0">&nbsp;<?php esc_html_e('Yes', 'joocart'); ?></label>
     430            <input id="joocart_change_lang_to_default1" name="joocart_change_lang_to_default" value="0" <?php if(isset($joocart_change_lang_to_default) && $joocart_change_lang_to_default==="0") { echo 'checked="checked"'; }?> type="radio"><label for="joocart_change_lang_to_default1">&nbsp;<?php esc_html_e('No', 'joocart'); ?></label>
    430431            </td>
    431432        </tr>
     
    527528        </tr>
    528529        <tr style="display:none;" title="<?php esc_html_e('Select SEO URL type for products and categories.', 'joocart'); ?>">
    529             <th scope="row"><label for="joocart_select_seo_type_for_prod_cat"><?php esc_html_e('SEO URL type for products and categories', 'joocart'); ?></label></th>
    530             <td>
    531             <select id="joocart_select_seo_type_for_prod_cat" name="joocart_select_seo_type_for_prod_cat">
    532                 <option value="0" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('Default SEO URL', 'joocart'); ?></option>
    533                 <option value="1" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Short versions of the links', 'joocart'); ?></option>
    534                 <option value="2" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('Long versions of the links', 'joocart'); ?></option>
    535                 <option value="3" <?php if(isset($joocart_select_seo_type_for_prod_cat) && $joocart_select_seo_type_for_prod_cat=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('Short links for products and long links for categories', 'joocart'); ?></option>
     530            <th scope="row"><label for="joocart_select_seo_for_prod_cat"><?php esc_html_e('SEO URL type for products and categories', 'joocart'); ?></label></th>
     531            <td>
     532            <select id="joocart_select_seo_for_prod_cat" name="joocart_select_seo_for_prod_cat">
     533                <option value="0" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat==="0") { echo 'selected="selected"'; }?>><?php esc_html_e('Default SEO URL', 'joocart'); ?></option>
     534                <option value="1" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat=="1") { echo 'selected="selected"'; }?>><?php esc_html_e('Short versions of the links', 'joocart'); ?></option>
     535                <option value="2" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat=="2") { echo 'selected="selected"'; }?>><?php esc_html_e('Long versions of the links', 'joocart'); ?></option>
     536                <option value="3" <?php if(isset($joocart_select_seo_for_prod_cat) && $joocart_select_seo_for_prod_cat=="3") { echo 'selected="selected"'; }?>><?php esc_html_e('Short links for products and long links for categories', 'joocart'); ?></option>
    536537            </select>           
    537538            </td>
  • joocart/trunk/admin/joocart_admin_functions.php

    r3295891 r3301753  
    389389    }
    390390    public static function setJooCartConfigFile(){
    391         $shop_page_id="";
    392         $joocart_use_wordpress_buttons="";
     391        $joocart_shop_page_id="";
     392        $joocart_use_wordpress_button="";
    393393        $joocart_dont_show_header="";
    394394        $joocart_dont_show_footer="";
     
    405405        $joocart_use_wordpress_db="1";
    406406        $joocart_show_logo_header="";
    407         $joocart_oc_template_without_wordpress="";
     407        $joocart_use_oc_template="";
    408408        $joocart_use_custom_color="";
    409409        $joocart_default_txt_color="";
     
    420420        $joocart_use_dynamic_checkout_urls="";
    421421        if(joocart_get_option('joocart_shop_page_id')!=""){
    422             $shop_page_id=joocart_get_option('joocart_shop_page_id');
     422            $joocart_shop_page_id=joocart_get_option('joocart_shop_page_id');
    423423        }
    424424        if(joocart_get_option('joocart_dont_show_menus')!=""){
     
    436436            joocart_define_oc('JOOCART_OPENCART_DIR', JOOCART_PLUGIN_DIR);
    437437        }       
    438         if($shop_page_id!=""){
    439             joocart_define_oc('JOOCART_SHOP_PAGE_ID', $shop_page_id);
     438        if($joocart_shop_page_id!=""){
     439            joocart_define_oc('JOOCART_SHOP_PAGE_ID', $joocart_shop_page_id);
    440440        } else {
    441441            joocart_define_oc('JOOCART_SHOP_PAGE_ID', "0");
     
    457457            }
    458458        }
    459         if($joocart_use_wordpress_buttons!=""){
    460             joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTONS', $joocart_use_wordpress_buttons);
    461         } else {
    462             joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTONS', "0");
     459        if($joocart_use_wordpress_button!=""){
     460            joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTON', $joocart_use_wordpress_button);
     461        } else {
     462            joocart_define_oc('JOOCART_USE_WORDPRESS_BUTTON', "0");
    463463        }
    464464       
     
    523523        }
    524524       
    525         if($joocart_oc_template_without_wordpress!=""){
    526             joocart_define_oc('JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS', $joocart_oc_template_without_wordpress);
    527         } else {
    528             joocart_define_oc('JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS', "0");
     525        if($joocart_use_oc_template!=""){
     526            joocart_define_oc('JOOCART_USE_OC_TEMPLATE', $joocart_use_oc_template);
     527        } else {
     528            joocart_define_oc('JOOCART_USE_OC_TEMPLATE', "0");
    529529        }
    530530       
     
    627627            $joocart_main_http_server = str_replace($joocart_default_relative_url, "", $joocart_opencart_url);
    628628        }
    629        
    630629       
    631630        joocart_define_oc('JOOCART_RELATIVE_URL', $joocart_relative_url);
  • joocart/trunk/admin/joocart_install.php

    r3295891 r3301753  
    1313    $joocart_content="<!-- JooCart Code. Please do not remove this line,otherwise JooCart shopping cart will not work properly. -->[joocart_main_content]<!-- JooCart Code End. -->";
    1414    add_option("joocart_shop_page_id",'','','yes');
    15     add_option("joocart_order_id",'','','yes');
     15    add_option("joocart_upgrade_download_id",'','','yes');
    1616    add_option("joocart_order_email",'','','yes');
    1717    // add_option("joocart_site_url",'','','yes');
    1818    add_option("joocart_opencart_dir_path",'','','yes');
    19     // add_option("joocart_opencart_dir_url",'','','yes');
     19    add_option("joocart_opencart_dir_url",'','','yes');
    2020    add_option("joocart_who_can_access_admin",'','','yes');
    2121    add_option("joocart_use_wordpress_button",'','','yes');
     
    2323    add_option("joocart_dont_show_footer",'','','yes');
    2424    add_option("joocart_dont_show_menus",'','','yes');
    25     add_option("joocart_dont_show_login",'','','yes');
    26     add_option("joocart_dont_include_jquery_library",'','','yes');
    27     add_option("joocart_use_jquery_dollar_variable",'','','yes');
     25    add_option("joocart_dont_show_admin_login",'','','yes');
     26    add_option("joocart_dont_include_jquery",'','','yes');
     27    add_option("joocart_disable_bootstrap_tooltip",'','','yes');
     28    add_option("joocart_use_jquery_dollar",'','','yes');
    2829    add_option("joocart_dont_show_left_right_column",'','','yes');
    2930    add_option("joocart_enable_wp_widget_title",'','','yes');
    30     add_option("joocart_main_http_server",'','','yes');
    31     add_option("joocart_redirect_to_main_http_server",'','','yes');
    32     add_option("joocart_change_lang_to_wp_default",'','','yes');
     31    // add_option("joocart_main_http_server",'','','yes');
     32    add_option("joocart_redirect_http_server",'','','yes');
     33    add_option("joocart_change_lang_to_default",'','','yes');
    3334    add_option("joocart_use_wordpress_db",'','','yes');
    3435    add_option("joocart_db_user_name",'','','yes');
     
    4041    add_option("joocart_default_txt_color",'','','yes');   
    4142    add_option("joocart_default_link_color",'','','yes');
     43    add_option("joocart_default_link_hover_color",'','','yes');
    4244    add_option("joocart_default_button_box_color",'','','yes');
    4345    add_option("joocart_default_button_hover_color",'','','yes');
    4446    add_option("joocart_default_button_txt_color",'','','yes');
     47    add_option("joocart_default_menu_link_color",'','','yes');
     48    add_option("joocart_default_menu_link_hover_color",'','','yes');
    4549    add_option("joocart_use_gradient_color",'','','yes');
     50    add_option("joocart_custom_css_oc",'','','yes');
     51    add_option("joocart_select_seo_for_prod_cat",'','','yes');
     52    add_option("joocart_use_dynamic_checkout_urls",'','','yes');
    4653
    4754    $id=get_option("joocart_shop_page_id");
  • joocart/trunk/config.php

    r3295891 r3301753  
    99JooCartAdminBase::setJooCartConfigFile();
    1010global $joocart_replace_output_array;
    11 if(defined("JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS") && (JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS == "1" || JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS == "2" || JOOCART_OC_TEMPLATE_WITHOUT_WORDPRESS == "4")) {
     11if(defined("JOOCART_USE_OC_TEMPLATE") && (JOOCART_USE_OC_TEMPLATE == "1" || JOOCART_USE_OC_TEMPLATE == "2" || JOOCART_USE_OC_TEMPLATE == "4")) {
    1212global $joocart_replace_output_array1;
    1313$joocart_replace_output_array1=array(
     
    6969            '$.'=>'jQuery.',
    7070            '$('=>'jQuery(',
    71             'class="button"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="button"':'class="button-oc"',
    72             'class=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"button\"':'class=\"button-oc\"',
    73             'id="button"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'id="button"':'id="button-oc"',
    74             'id=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'id=\"button\"':'id=\"button-oc\"',
    75             'class="btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="button':'class="btn btn-primary btn-primary-oc',
    76             'class=\"btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"button':'class=\"btn btn-primary btn-primary-oc',
    77             'class="btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="button':'class="btn btn-default btn-default-oc',
    78             'class=\"btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"button':'class=\"btn btn-default btn-default-oc',
    79             'class="btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-warning':'class="btn btn-warning btn-warning-oc',
    80             'class=\"btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-warning':'class=\"btn btn-warning btn-warning-oc',
    81             'class="btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-danger':'class="btn btn-danger btn-danger-oc',
    82             'class=\"btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-danger':'class=\"btn btn-danger btn-danger-oc',
    83             'class="btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-success':'class="btn btn-success btn-success-oc',
    84             'class=\"btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-success':'class=\"btn btn-success btn-success-oc',
    85             'class="btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class="btn btn-info':'class="btn btn-info btn-info-oc',
    86             'class=\"btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTONS=="1")?'class=\"btn btn-info':'class=\"btn btn-info btn-info-oc',
     71            'class="button"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="button"':'class="button-oc"',
     72            'class=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"button\"':'class=\"button-oc\"',
     73            'id="button"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'id="button"':'id="button-oc"',
     74            'id=\"button\"'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'id=\"button\"':'id=\"button-oc\"',
     75            'class="btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="button':'class="btn btn-primary btn-primary-oc',
     76            'class=\"btn btn-primary'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"button':'class=\"btn btn-primary btn-primary-oc',
     77            'class="btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="button':'class="btn btn-default btn-default-oc',
     78            'class=\"btn btn-default'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"button':'class=\"btn btn-default btn-default-oc',
     79            'class="btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-warning':'class="btn btn-warning btn-warning-oc',
     80            'class=\"btn btn-warning'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-warning':'class=\"btn btn-warning btn-warning-oc',
     81            'class="btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-danger':'class="btn btn-danger btn-danger-oc',
     82            'class=\"btn btn-danger'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-danger':'class=\"btn btn-danger btn-danger-oc',
     83            'class="btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-success':'class="btn btn-success btn-success-oc',
     84            'class=\"btn btn-success'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-success':'class=\"btn btn-success btn-success-oc',
     85            'class="btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class="btn btn-info':'class="btn btn-info btn-info-oc',
     86            'class=\"btn btn-info'=>(JOOCART_USE_WORDPRESS_BUTTON=="1")?'class=\"btn btn-info':'class=\"btn btn-info btn-info-oc',
    8787            'data-toggle="tooltip"' => (JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "1" || JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "3")?'':'data-toggle="tooltip"',
    8888            'data-toggle=\"tooltip\"' => (JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "1" || JOOCART_DISABLE_BOOTSTRAP_TOOLTIP == "3")?'':'data-toggle=\"tooltip\"',
  • joocart/trunk/index.php

    r3295891 r3301753  
    88if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
    99// Version
    10 if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.8'); }
     10if (!defined('JOOCART_OC_VERSION')) { define('JOOCART_OC_VERSION', '3.0.3.9'); }
    1111
    1212// Configuration
  • joocart/trunk/joocart.php

    r3295891 r3301753  
    33 * Plugin Name:         JooCart
    44 * Description:         JooCart – A WordPress eCommerce plugin. Power of OpenCart inside WordPress.
    5  * Version:             3.0.3.8
     5 * Version:             3.0.3.9
    66 * Requires at least:   3.5
    77 * Tested up to:        6.8
  • joocart/trunk/joocart_main.php

    r3295891 r3301753  
    159159    // get current post information
    160160    global $post;
     161    // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- 'route' is used for routing, not form processing
     162    $joocart_route = isset($_REQUEST['route']) ? sanitize_text_field(wp_unslash($_REQUEST['route'])) : '';
    161163    if(isset($post) && has_shortcode($post->post_content, 'joocart_main_content') || get_option("joocart_shop_page_id")==get_query_var('page_id') || $post_name==get_query_var('name') || (isset($joocart_route) && strstr($joocart_route,"/") && !get_query_var('page_id'))){
    162164        if(!defined('JOOCART_IN_MAIN_PAGE'))
  • joocart/trunk/readme.txt

    r3295891 r3301753  
    11=== JooCart ===
    22Contributors: softPHP 
    3 Tags: ecommerce, shopping cart, joocart 
     3Tags: ecommerce, opencart, shopping cart, wordpress store extension, multi seller and multivendor
    44Requires at least: 3.5 
    55Tested up to: 6.8 
    66Requires PHP: 7.2 
    7 Stable tag: 3.0.3.8 
     7Stable tag: 3.0.3.9 
    88License: GPL v2 or later 
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html 
    1010
    11 JooCart – A lightweight OpenCart integration for WordPress.
     11== Description == 
     12**Turn your WordPress into a full-featured online store with JooCart!** 
     13Experience the power of OpenCart directly inside WordPress — fast, flexible, and Pro-ready.
    1214
    13 == Description == 
    1415JooCart – a powerful WordPress eCommerce plugin. Experience the power of OpenCart within WordPress. 
    1516
    16 **Enhance your WordPress e-commerce experience with [JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)!** Get access to premium features: 
     17**Enhance your WordPress e-commerce experience with [JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)!** 
     18🛒 **Live Demo**: [https://demo.soft-php.com/joocart-wp/](https://demo.soft-php.com/joocart-wp/)
    1719
    18 - Seamless WordPress Integration: Unified front-end and back-end login. 
    19 - Custom WordPress Widgets: Categories, Shopping Cart, Information & more. 
    20 - Multilingual Support: Works flawlessly with WordPress language settings. 
    21 - Flexible OpenCart Extensions: Use OpenCart add-ons as WordPress widgets. 
    22 - SEO-Optimized: Integrated with WordPress SEO URLs for better visibility. 
    23 - Smart Navigation: Link products, categories, and information seamlessly. 
    24 - Shortcode Support: Easily add products to posts with a simple shortcode. 
    25 - Admin Access Control: Restrict panel access based on user roles. 
    26 - Flexible Layout Options: Show/hide OpenCart columns, header, footer, and WordPress widgets. 
    27 - Customizable Design: Modify button, menu, and template colors to match your brand. 
    28 - Connect with Existing OpenCart: Easily integrate JooCart Pro with your existing OpenCart setup. 
    29 - Frequent Updates & Dedicated Support: Stay ahead with regular improvements. 
    30 - And Many More! 
     20### 💡 General Features:
     21– Compatible with OpenCart 3.0.3.x versions
     22– Easy installation through the WordPress Plugins menu 
     23– Compatible with most WordPress templates 
     24– Manage OpenCart configuration and users directly from the WordPress admin panel 
     25– OpenCart interface displays natively within WordPress content 
     26– Unlimited categories, products, and manufacturers 
     27– Multi-language support for international customers 
     28– Product reviews and ratings 
     29– Over 20 Payment Gateways Supported 
     30– 8+ Shipping Methods Supported 
     31– Reward point system to increase customer loyalty 
     32– RMA (Return Merchandise Authorization) system 
     33– Grid/List product listing options 
     34– Gift voucher system 
     35– Credit system for easier payments 
     36– Reorder system for quick repeat orders 
     37– Wishlist system to boost sales 
     38– Affiliate system for commission-based sales 
     39– Banner Manager for showcasing promotions 
     40– Guest Checkout for a faster shopping experience 
     41– Sales Reports for tracking store performance 
     42– Order editing system for easy adjustments 
     43– Ability to ban customers by IP for added security 
     44– Google Base availability tag for product feeds 
     45
     46**JooCart Pro Features**: 
     47– Seamless WordPress Integration: Unified front-end and back-end login 
     48– Custom WordPress Widgets: Categories, Shopping Cart, Information & more 
     49– Multilingual Support: Works flawlessly with WordPress language settings 
     50– Flexible OpenCart Extensions: Use OpenCart add-ons as WordPress widgets 
     51– SEO-Optimized: Integrated with WordPress SEO URLs for better visibility 
     52– Smart Navigation: Link products, categories, and information seamlessly 
     53– Shortcode Support: Easily add products to posts with a simple shortcode 
     54– Admin Access Control: Restrict panel access based on user roles 
     55– Flexible Layout Options: Show/hide OpenCart columns, header, footer, and WordPress widgets 
     56– Customizable Design: Modify button, menu, and template colors to match your brand 
     57– Connect with Existing OpenCart: Easily integrate JooCart Pro with your existing OpenCart setup 
     58– Frequent Updates & Dedicated Support: Stay ahead with regular improvements 
     59– And Many More!
     60
     61== Why Choose JooCart Pro? == 
     62Whether you're a small shop or a large marketplace, JooCart Pro gives you everything you need:
     63– 🔐 Full WordPress + OpenCart user sync 
     64– 🧩 Access to premium OpenCart extensions inside WordPress 
     65– 🛍️ Enhanced product & cart modules with shortcode support 
     66– 🔄 Real-time updates & expert support 
     67– 📈 SEO tools & analytics integration 
     68– 🎯 Optimized performance for high-traffic stores 
     69
     70🎁 [See JooCart Pro in action](https://demo.soft-php.com/joocart-wp/) 
     71🚀 [Upgrade to JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)
     72
     73💼 Need Multivendor Support? Check out [JooCart Multivendor](https://www.soft-php.com/joocart-multivendor.html) 
     74🧩 Extend JooCart even more: [JooCart Extensions](https://www.soft-php.com/shop-products/joocart-extensions.html) 
     75🛒 Plus, use standard OpenCart extension from the [OpenCart Marketplace](https://www.opencart.com)!
    3176
    3277== Installation == 
    33 1. Upload the `joocart` folder to the `/wp-content/plugins/` directory. 
    34 2. Activate the plugin through the ‘Plugins’ menu in WordPress. 
    35 3. Configure settings from JooCart’s admin panel. 
     781. Upload the `joocart` folder to the `/wp-content/plugins/` directory 
     792. Activate the plugin through the ‘Plugins’ menu in WordPress 
     803. Configure settings from JooCart’s admin panel 
    3681
    3782== Upgrade Notice == 
    38 = 3.0.3.8
    39 * Initial release. No upgrade issues expected. 
     83= 3.0.3.9
     84* Bug fix release. No database upgrade needed. 
    4085
    4186== Screenshots == 
    42 1. Screenshot of the admin panel. 
    43 2. Screenshot of the front-end store page. 
     871. Screenshot of the admin panel 
     882. Screenshot of the front-end store page 
    4489
    4590== Changelog == 
    46 = 3.0.3.8 = 
    47 * Initial release of JooCart. 
    48 * Integrated OpenCart functionality inside WordPress. 
     91= 3.0.3.9 = 
     92* bug fix for 3.0.3.8 
     93* compatible with opencart 3.0.3.x
     94* code improvement
    4995
    5096== Frequently Asked Questions == 
    5197= Is JooCart compatible with WooCommerce? = 
    52 No, JooCart is a separate eCommerce solution based on OpenCart. 
     98No, JooCart is a separate eCommerce solution based on OpenCart 
    5399
    54100= Where can I get support? = 
     
    56102
    57103= Is there a Pro version available? = 
    58 Yes! Upgrade to **[JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)** for additional features like WordPress integration, SEO-optimized navigation, shortcode support, and much more. 
     104Yes! Upgrade to **[JooCart Pro](https://www.soft-php.com/joocart-wordpress-shopping-cart.html)** for additional features like WordPress integration, SEO-optimized navigation, shortcode support, and much more 
     105
     106== Love JooCart? == 
     107⭐ If JooCart helped your business, please consider leaving a review on the WordPress plugin page!
  • joocart/trunk/system/joocart_admin.ocmod.xml

    r3295891 r3301753  
    210210            <add position="replace" offset="4"><![CDATA[
    211211        if(defined("ABSPATH")) {
    212             if (($this->ssl && $secure) || (defined("OC_SSL_SECURE") && $secure) || (strstr(HTTP_SERVER,"https://") && $secure)) {
     212            if (($this->ssl && $secure) || (defined("JOOCART_OC_SSL_SECURE") && $secure) || (strstr(HTTP_SERVER,"https://") && $secure)) {
    213213                $url = $this->ssl;
    214214            } else {
  • joocart/trunk/system/joocart_admin_common.ocmod.xml

    r3295891 r3301753  
    3131            <add position="before"><![CDATA[
    3232        if(defined("ABSPATH") && $data['text_version'] != "")
    33         $data['text_version'] = 'JooCart Version 3.0.3.8 - OpenCart ' . sprintf($this->language->get('text_version'), VERSION);
     33        $data['text_version'] = 'JooCart Version 3.0.3.9 - OpenCart ' . sprintf($this->language->get('text_version'), VERSION);
    3434        $data["oc_theme_admin_only"] = false;
    3535            ]]></add>
     
    152152            <search><![CDATA[// Theme]]></search>
    153153            <add position="before"><![CDATA[
    154         if($this->config->get('config_secure') && !defined("OC_SSL_SECURE"))
    155         define('OC_SSL_SECURE', $this->config->get('config_secure'));
     154        if($this->config->get('config_secure') && !defined("JOOCART_OC_SSL_SECURE"))
     155        define('JOOCART_OC_SSL_SECURE', $this->config->get('config_secure'));
    156156        if(!defined('JOOCART_RELATIVE_URL'))
    157157        define('JOOCART_RELATIVE_URL', '');
  • joocart/trunk/system/joocart_frontend_common.ocmod.xml

    r3295891 r3301753  
    555555        if (defined("ABSPATH")) {
    556556            // Start JooCart Changes
    557             if($this->config->get('config_secure') && !defined("OC_SSL_SECURE"))
    558             define('OC_SSL_SECURE', $this->config->get('config_secure'));
     557            if($this->config->get('config_secure') && !defined("JOOCART_OC_SSL_SECURE"))
     558            define('JOOCART_OC_SSL_SECURE', $this->config->get('config_secure'));
    559559            global $joocart_application_config_mode;
    560560           
  • joocart/trunk/uninstall.php

    r3295891 r3301753  
    2222    delete_option("joocart_dont_show_footer");
    2323    delete_option("joocart_dont_show_menus");
    24     delete_option("joocart_dont_show_login");
    25     delete_option("joocart_dont_include_jquery_library");
    26     delete_option("joocart_use_jquery_dollar_variable");
     24    delete_option("joocart_dont_show_admin_login");
     25    delete_option("joocart_dont_include_jquery");
     26    delete_option("joocart_use_jquery_dollar");
    2727    delete_option("joocart_dont_show_left_right_column");
    2828    delete_option("joocart_enable_wp_widget_title");
    2929    delete_option("joocart_main_http_server");
    30     delete_option("joocart_redirect_to_main_http_server");
     30    delete_option("joocart_redirect_http_server");
    3131    delete_option("joocart_use_wordpress_db");
    3232    delete_option("joocart_db_user_name");
Note: See TracChangeset for help on using the changeset viewer.