Plugin Directory

Changeset 2865082


Ignore:
Timestamp:
02/14/2023 12:30:45 PM (3 years ago)
Author:
leadgenerated
Message:
  • Removed vulnerability in the plugin
  • Sanitized and verfied the data
  • Fixed Thrive Forms integration security issues
Location:
lead-generated
Files:
31 added
1 deleted
21 edited

Legend:

Unmodified
Added
Removed
  • lead-generated/trunk/admin/class-wsl-admin.php

    r2293509 r2865082  
    3333            <?php
    3434                // This prints out all hidden setting fields
    35                 settings_fields( 'wsl_options_group' );
     35                settings_fields( 'lgcrm_options_group' );
    3636                do_settings_sections( 'wsl-setting-admin' );
    3737                submit_button();
     
    4545    {       
    4646        register_setting(
    47             'wsl_options_group', // Option group
     47            'lgcrm_options_group', // Option group
    4848            $this->option_name, // Option name
    4949            array( $this, 'sanitize' ) // Sanitize
     
    5151
    5252        add_settings_section(
    53             'wsl_section', // ID
     53            'lgcrm_section', // ID
    5454            '', // Title
    5555            array( $this, 'print_section_info' ), // Callback
     
    6262            array( $this, 'api_key_callback' ), // Callback
    6363            'wsl-setting-admin', // Page
    64             'wsl_section' // Section           
     64            'lgcrm_section' // Section           
    6565        );
    6666       
     
    7070            array( $this, 'sent_to_crm_callback' ), // Callback
    7171            'wsl-setting-admin', // Page
    72             'wsl_section' // Section           
     72            'lgcrm_section' // Section           
    7373        );
    7474       
     
    7878            array( $this, 'sent_to_company_callback' ), // Callback
    7979            'wsl-setting-admin', // Page
    80             'wsl_section' // Section           
     80            'lgcrm_section' // Section           
    8181        );
    8282    }
     
    112112    public function sent_to_crm_callback(){
    113113        echo '<label>';
    114         echo '<input '. checked(wsl_get_setting('send_to_crm'), 1, false).' type="checkbox" id="send_to_crm" name="wsl_settings[send_to_crm]" class="regular-text" value="1" />';
     114        echo '<input '. checked(lgcrm_get_setting('send_to_crm'), 1, false).' type="checkbox" id="send_to_crm" name="wsl_settings[send_to_crm]" class="regular-text" value="1" />';
    115115        echo 'Enable sending to CRM';
    116116        echo '</label>';
     
    121121        $api_obj = new Wsl_Api();
    122122        $company = $api_obj->get_companies();
    123         $meta = wsl_get_settings();
    124         include_once WSL_ADMIN_DIR.'/partials/send_to_company_field.php';
     123        $meta = lgcrm_get_settings();
     124        include_once LGCRM_ADMIN_DIR.'/partials/send_to_company_field.php';
    125125    }
    126126   
  • lead-generated/trunk/admin/editor-panel.php

    r2126032 r2865082  
    11<?php
    22
    3 $meta = wsl_get_cf7_post_settings($post->id);
     3$meta = lgcrm_get_cf7_post_settings($post->id);
    44$api_obj = new Wsl_Api();
    55$companies = $api_obj->get_companies();
     
    3030            </th>
    3131            <td>
    32                 <?php include_once WSL_ADMIN_DIR.'/partials/send_to_company_field.php'; ?>
     32                <?php include_once LGCRM_ADMIN_DIR.'/partials/send_to_company_field.php'; ?>
    3333            </td>
    3434        </tr>
  • lead-generated/trunk/includes/class-wsl-api.php

    r2600478 r2865082  
    2222            return $this->api_key;
    2323        }else{
    24             $settings = wsl_get_settings();
     24            $settings = lgcrm_get_settings();
    2525            if(isset($settings['api_key']) && $settings['api_key'] != ''){
    2626                return $settings['api_key'];
     
    4444        // print_r($response);
    4545        // echo '</pre>';die();
    46         //wsl_update_setting('send_to_company',$data->source_id);
    47         //$prev_setting = wsl_get_settings();
     46        //lgcrm_update_setting('send_to_company',$data->source_id);
     47        //$prev_setting = lgcrm_get_settings();
    4848        // echo $prev_setting['send_to_company'];
    4949        if($response->type == 'duplicate' && $response->site_data->site_url){
     
    6060            update_option('wsl_settings', $settings);
    6161        }elseif($response->type == 'success'){
    62             wsl_update_setting("send_to_company",$response->data->id);
     62            lgcrm_update_setting("send_to_company",$response->data->id);
    6363        }
    6464        return $response;
  • lead-generated/trunk/includes/class-wsl-beaver-api.php

    r2770022 r2865082  
    11<?php
    22
    3 class Wsl_Beaver_Api extends Wsl_Base{
     3class Wsl_Beaver_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    138138            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    139139            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     140            'plugin_name' => "beaver",
    140141        );
    141142    }
     
    232233    public function process_result($result){
    233234        $data = $result;
    234         $send_to_company = wsl_get_setting('send_to_company');
     235        $send_to_company = lgcrm_get_setting('send_to_company');
    235236        if($send_to_company && $send_to_company != 0){
    236237            //All good
    237238        }else{
    238239            if(isset($data->source_id)){
    239                 wsl_update_setting('send_to_company',$data->source_id);
     240                lgcrm_update_setting('send_to_company',$data->source_id);
    240241            }
    241242        }
  • lead-generated/trunk/includes/class-wsl-caldera-api.php

    r2429077 r2865082  
    11<?php
    22
    3 class Wsl_CalderaForms_Api extends Wsl_Base{
     3class Wsl_CalderaForms_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    146146            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    147147            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     148            'plugin_name' => "caldera",
    148149        );
    149150    }
     
    240241    public function process_result($result){
    241242        $data = $result;
    242         $send_to_company = wsl_get_setting('send_to_company');
     243        $send_to_company = lgcrm_get_setting('send_to_company');
    243244        if($send_to_company && $send_to_company != 0){
    244245            //All good
    245246        }else{
    246247            if(isset($data->source_id)){
    247                 wsl_update_setting('send_to_company',$data->source_id);
     248                lgcrm_update_setting('send_to_company',$data->source_id);
    248249            }
    249250        }
  • lead-generated/trunk/includes/class-wsl-cf7-api.php

    r2328159 r2865082  
    11<?php
    22
    3 class Wsl_Cf7_Api extends Wsl_Base{
     3class Wsl_Cf7_Api extends Lg_Crm{
    44   
    55   
     
    9797    public function get_source_data(){
    9898       
    99         $company_id = wsl_get_cf7_post_setting('send_to_company', $this->cf7->id());
     99        $company_id = lgcrm_get_cf7_post_setting('send_to_company', $this->cf7->id());
    100100        if(!$company_id){
    101             $company_id = wsl_get_setting('send_to_company');
     101            $company_id = lgcrm_get_setting('send_to_company');
    102102        }
    103103        return array(
     
    132132            'remote_ip' => $this->submission->get_meta( 'remote_ip' ),
    133133            'wp_user_id' => $this->submission->get_meta( 'current_user_id' ),
    134             'user_agent' => $this->submission->get_meta('user_agent')
     134            'user_agent' => $this->submission->get_meta('user_agent'),
     135            'plugin_name' => "contact_f7",
    135136        );
    136137    }
     
    294295    public function process_result($result){
    295296        $data = $result;
    296         $send_to_company = wsl_get_setting('send_to_company');
     297        $send_to_company = lgcrm_get_setting('send_to_company');
    297298        if($send_to_company && $send_to_company != 0){
    298299            //All good
    299300        }else{
    300301            if(isset($data->source_id)){
    301                 wsl_update_setting('send_to_company',$data->source_id);
     302                lgcrm_update_setting('send_to_company',$data->source_id);
    302303            }
    303304        }
  • lead-generated/trunk/includes/class-wsl-divi-api.php

    r2415131 r2865082  
    11<?php
    22
    3 class Wsl_Divi_Api extends Wsl_Base{
     3class Wsl_Divi_Api extends Lg_Crm{
    44
    55    public $cf7;
     
    113113   
    114114    public function get_source_data(){
    115         $company_id = wsl_get_setting('send_to_company');
     115        $company_id = lgcrm_get_setting('send_to_company');
    116116        return array(
    117117                   'id' => $company_id,
     
    161161            'post_url' => home_url( $wp->request ),
    162162            'remote_ip' => $_SERVER['REMOTE_ADDR'],
     163            'plugin_name' => "divi",
    163164        );
    164165    }
     
    254255    public function process_result($result){
    255256        $data = $result;
    256         $send_to_company = wsl_get_setting('send_to_company');
     257        $send_to_company = lgcrm_get_setting('send_to_company');
    257258        if($send_to_company && $send_to_company != 0){
    258259            //All good
    259260        }else{
    260261            if(isset($data->source_id)){
    261                 wsl_update_setting('send_to_company',$data->source_id);
     262                lgcrm_update_setting('send_to_company',$data->source_id);
    262263            }
    263264        }
  • lead-generated/trunk/includes/class-wsl-elementor-api.php

    r2299017 r2865082  
    11<?php
    22
    3 class Wsl_Elementor_Api extends Wsl_Base{
     3class Wsl_Elementor_Api extends Lg_Crm{
    44
    55    public $cf7;
     
    119119   
    120120    public function get_source_data(){
    121         $company_id = wsl_get_setting('send_to_company');
     121        $company_id = lgcrm_get_setting('send_to_company');
    122122        return array(
    123123                   'id' => $company_id,
     
    141141            //'unit_tag' => $this->submission->get_meta( 'unit_tag' ),
    142142            'remote_ip' => $_SERVER['REMOTE_ADDR'],
     143            'plugin_name' => "elementor",
    143144            //'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
    144145            //'user_agent' => $this->submission->get_meta('user_agent')
     
    238239    public function process_result($result){
    239240        $data = $result;
    240         $send_to_company = wsl_get_setting('send_to_company');
     241        $send_to_company = lgcrm_get_setting('send_to_company');
    241242        if($send_to_company && $send_to_company != 0){
    242243            //All good
    243244        }else{
    244245            if(isset($data->source_id)){
    245                 wsl_update_setting('send_to_company',$data->source_id);
     246                lgcrm_update_setting('send_to_company',$data->source_id);
    246247            }
    247248        }
  • lead-generated/trunk/includes/class-wsl-formidable-api.php

    r2463360 r2865082  
    11<?php
    22
    3 class Wsl_formidable_Api extends Wsl_Base{
     3class Wsl_formidable_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    166166            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    167167            'wp_user_id' => '',
     168            'plugin_name' => "formaidable",
    168169        );
    169170    }
     
    260261    public function process_result($result){
    261262        $data = $result;
    262         $send_to_company = wsl_get_setting('send_to_company');
     263        $send_to_company = lgcrm_get_setting('send_to_company');
    263264        if($send_to_company && $send_to_company != 0){
    264265            //All good
    265266        }else{
    266267            if(isset($data->source_id)){
    267                 wsl_update_setting('send_to_company',$data->source_id);
     268                lgcrm_update_setting('send_to_company',$data->source_id);
    268269            }
    269270        }
  • lead-generated/trunk/includes/class-wsl-gravity-api.php

    r2776454 r2865082  
    11<?php
    22
    3 class Wsl_Gravity_Api extends Wsl_Base{
     3class Wsl_Gravity_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    134134       
    135135
    136         $company_id = wsl_get_setting('send_to_company');
     136        $company_id = lgcrm_get_setting('send_to_company');
    137137        return array(
    138138                   'id' => $company_id,
     
    156156            //'unit_tag' => $this->submission->get_meta( 'unit_tag' ),
    157157            'remote_ip' => $_SERVER['REMOTE_ADDR'],
     158            'plugin_name' => "gravity",
    158159            //'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
    159160            //'user_agent' => $this->submission->get_meta('user_agent')
     
    238239    public function process_result($result){
    239240        $data = $result;
    240         $send_to_company = wsl_get_setting('send_to_company');
     241        $send_to_company = lgcrm_get_setting('send_to_company');
    241242        if($send_to_company && $send_to_company != 0){
    242243            //All good
    243244        }else{
    244245            if(isset($data->source_id)){
    245                 wsl_update_setting('send_to_company',$data->source_id);
     246                lgcrm_update_setting('send_to_company',$data->source_id);
    246247            }
    247248        }
  • lead-generated/trunk/includes/class-wsl-ninja-api.php

    r2299017 r2865082  
    11<?php
    22
    3 class Wsl_Ninja_Api extends Wsl_Base{
     3class Wsl_Ninja_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    104104       
    105105
    106         $company_id = wsl_get_setting('send_to_company');
     106        $company_id = lgcrm_get_setting('send_to_company');
    107107        return array(
    108108                   'id' => $company_id,
     
    127127            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    128128            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     129            'plugin_name' => "ninja",
    129130            //'user_agent' => $this->submission->get_meta('user_agent')
    130131        );
     
    225226    public function process_result($result){
    226227        $data = $result;
    227         $send_to_company = wsl_get_setting('send_to_company');
     228        $send_to_company = lgcrm_get_setting('send_to_company');
    228229        if($send_to_company && $send_to_company != 0){
    229230            //All good
    230231        }else{
    231232            if(isset($data->source_id)){
    232                 wsl_update_setting('send_to_company',$data->source_id);
     233                lgcrm_update_setting('send_to_company',$data->source_id);
    233234            }
    234235        }
  • lead-generated/trunk/includes/class-wsl-smartforms-api.php

    r2422103 r2865082  
    11<?php
    22
    3 class Wsl_SmartForms_Api extends Wsl_Base{
     3class Wsl_SmartForms_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    234234            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    235235            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     236            'plugin_name' => "smartforms",
    236237        );
    237238    }
     
    328329    public function process_result($result){
    329330        $data = $result;
    330         $send_to_company = wsl_get_setting('send_to_company');
     331        $send_to_company = lgcrm_get_setting('send_to_company');
    331332        if($send_to_company && $send_to_company != 0){
    332333            //All good
    333334        }else{
    334335            if(isset($data->source_id)){
    335                 wsl_update_setting('send_to_company',$data->source_id);
     336                lgcrm_update_setting('send_to_company',$data->source_id);
    336337            }
    337338        }
  • lead-generated/trunk/includes/class-wsl-thriveform-api.php

    r2440393 r2865082  
    11<?php
    22
    3 class Wsl_thriveform_Api extends Wsl_Base{
     3class Wsl_thriveform_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    112112        $fields = array();
    113113        $count = 0;
    114         $label = unserialize( base64_decode( $submission["tve_labels"] ) );
    115114        $form_settings = array();
    116115        $fields_for_sub = array();
     
    124123           
    125124                $fields_for_sub[] = array(
    126                     "name"      => strtolower($label[$key]),
     125                    "name"      => strtolower($key),
    127126                    "value"     => $value,
    128127                    "id"        => $count++,
    129128                    "type"      => $key,
    130                     "label"     => $label[$key]
     129                    "label"     => $key
    131130                );
    132131            }
     
    149148            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    150149            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     150            'plugin_name' => "thriveform",
    151151        );
    152152    }
     
    243243    public function process_result($result){
    244244        $data = $result;
    245         $send_to_company = wsl_get_setting('send_to_company');
     245        $send_to_company = lgcrm_get_setting('send_to_company');
    246246        if($send_to_company && $send_to_company != 0){
    247247            //All good
    248248        }else{
    249249            if(isset($data->source_id)){
    250                 wsl_update_setting('send_to_company',$data->source_id);
     250                lgcrm_update_setting('send_to_company',$data->source_id);
    251251            }
    252252        }
     
    259259        $fields = array();
    260260        $count = 0;
    261         $label = unserialize( base64_decode( $fields_data["tve_labels"] ));
    262261
    263262        foreach($fields_data as $key=>$value){
     
    269268           
    270269                $fields[] = array(
    271                     "name"      => strtolower($label[$key]),
     270                    "name"      => strtolower($key),
    272271                    "value"     => $value,
    273272                    "id"        => $count++,
    274273                    "type"      => $key,
    275                     "label"     => $label[$key]
     274                    "label"     => $key
    276275                );
    277276            }
  • lead-generated/trunk/includes/class-wsl-typeform-api.php

    r2770022 r2865082  
    11<?php
    22
    3 class Wsl_Typeform_Api extends Wsl_Base{
     3class Wsl_Typeform_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    144144            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    145145            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     146            'plugin_name' => "typeform",
    146147        );
    147148    }
     
    238239    public function process_result($result){
    239240        $data = $result;
    240         $send_to_company = wsl_get_setting('send_to_company');
     241        $send_to_company = lgcrm_get_setting('send_to_company');
    241242        if($send_to_company && $send_to_company != 0){
    242243            //All good
    243244        }else{
    244245            if(isset($data->source_id)){
    245                 wsl_update_setting('send_to_company',$data->source_id);
     246                lgcrm_update_setting('send_to_company',$data->source_id);
    246247            }
    247248        }
  • lead-generated/trunk/includes/class-wsl-wpbrizy-api.php

    r2422103 r2865082  
    11<?php
    22
    3 class Wsl_Brizy_Api extends Wsl_Base{
     3class Wsl_Brizy_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    165165            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    166166            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     167            'plugin_name' => "brizy",
    167168        );
    168169    }
     
    259260    public function process_result($result){
    260261        $data = $result;
    261         $send_to_company = wsl_get_setting('send_to_company');
     262        $send_to_company = lgcrm_get_setting('send_to_company');
    262263        if($send_to_company && $send_to_company != 0){
    263264            //All good
    264265        }else{
    265266            if(isset($data->source_id)){
    266                 wsl_update_setting('send_to_company',$data->source_id);
     267                lgcrm_update_setting('send_to_company',$data->source_id);
    267268            }
    268269        }
  • lead-generated/trunk/includes/class-wsl-wpf-api.php

    r2760339 r2865082  
    11<?php
    22
    3 class Wsl_Wpf_Api extends Wsl_Base{
     3class Wsl_Wpf_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    104104       
    105105
    106         $company_id = wsl_get_setting('send_to_company');
     106        $company_id = lgcrm_get_setting('send_to_company');
    107107        return array(
    108108                   'id' => $company_id,
     
    127127            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    128128            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     129            'plugin_name' => "wp_forms",
    129130            //'user_agent' => $this->submission->get_meta('user_agent')
    130131        );
     
    225226    public function process_result($result){
    226227        $data = $result;
    227         $send_to_company = wsl_get_setting('send_to_company');
     228        $send_to_company = lgcrm_get_setting('send_to_company');
    228229        if($send_to_company && $send_to_company != 0){
    229230            //All good
    230231        }else{
    231232            if(isset($data->source_id)){
    232                 wsl_update_setting('send_to_company',$data->source_id);
     233                lgcrm_update_setting('send_to_company',$data->source_id);
    233234            }
    234235        }
  • lead-generated/trunk/includes/class-wsl-wpff-api.php

    r2770022 r2865082  
    11<?php
    22
    3 class Wsl_Wpff_Api extends Wsl_Base{
     3class Wsl_Wpff_Api extends Lg_Crm{
    44       
    55    public $cf7;
     
    100100   
    101101    public function get_source_data(){
    102         $company_id = wsl_get_setting('send_to_company');
     102        $company_id = lgcrm_get_setting('send_to_company');
    103103        return array(
    104104                   'id' => $company_id,
     
    150150            'remote_ip' => $_SERVER['REMOTE_ADDR'],
    151151            'wp_user_id' => $this->submission['settings']['notifications'][1]['sender_address'],
     152            'plugin_name' => "fluent_forms",
    152153        );
    153154    }
     
    244245    public function process_result($result){
    245246        $data = $result;
    246         $send_to_company = wsl_get_setting('send_to_company');
     247        $send_to_company = lgcrm_get_setting('send_to_company');
    247248        if($send_to_company && $send_to_company != 0){
    248249            //All good
    249250        }else{
    250251            if(isset($data->source_id)){
    251                 wsl_update_setting('send_to_company',$data->source_id);
     252                lgcrm_update_setting('send_to_company',$data->source_id);
    252253            }
    253254        }
  • lead-generated/trunk/includes/helpers.php

    r2600478 r2865082  
    11<?php
    2 function is_send_to_crm(){
    3     return wsl_get_setting('send_to_crm');
     2function lgcrm_is_send_to_crm(){
     3    return lgcrm_get_setting('send_to_crm');
    44}
    55
    6 function wsl_get_default_cf7_post_settings(){
    7     $wsl_settings = wsl_get_settings();
     6function lgcrm_get_default_cf7_post_settings(){
     7    $wsl_settings = lgcrm_get_settings();
    88    if(is_array($wsl_settings)){
    99        return $wsl_settings;
     
    1616}
    1717
    18 function wsl_get_cf7_post_settings($post_id){
     18function lgcrm_get_cf7_post_settings($post_id){
    1919    $meta = get_post_meta($post_id,'_wsl_settings',TRUE);
    2020    //var_dump($meta);
    2121    if(!is_array($meta)){
    22         return wsl_get_default_cf7_post_settings();
     22        return lgcrm_get_default_cf7_post_settings();
    2323    }
    24     return array_merge(wsl_get_default_cf7_post_settings(),$meta);
     24    return array_merge(lgcrm_get_default_cf7_post_settings(),$meta);
    2525}
    2626
    27 function wsl_get_cf7_post_setting($name,$post_id){
    28     $meta = wsl_get_cf7_post_settings($post_id);
     27function lgcrm_get_cf7_post_setting($name,$post_id){
     28    $meta = lgcrm_get_cf7_post_settings($post_id);
    2929    if(isset($meta[$name])){
    3030        return $meta[$name];
     
    3434}
    3535
    36 function wsl_get_default_settings(){
     36function lgcrm_get_default_settings(){
    3737    $default = array(
    3838        'api_key' => '',
     
    4343}
    4444
    45 function wsl_get_settings(){
    46     $settings = get_option('wsl_settings',wsl_get_default_settings());
     45function lgcrm_get_settings(){
     46    $settings = get_option('wsl_settings',lgcrm_get_default_settings());
    4747    return $settings;
    4848}
    4949
    50 function wsl_update_setting($name,$value){
    51     $settings = get_option('wsl_settings',wsl_get_default_settings());
     50function lgcrm_update_setting($name,$value){
     51    $settings = get_option('wsl_settings',lgcrm_get_default_settings());
    5252    $settings[$name] = $value;
    5353    update_option('wsl_settings', $settings);
    5454}
    5555
    56 function wsl_get_setting($name){
    57     $settings = get_option('wsl_settings',wsl_get_default_settings());
     56function lgcrm_get_setting($name){
     57    $settings = get_option('wsl_settings',lgcrm_get_default_settings());
    5858    return isset($settings[$name])?$settings[$name] : false;
    5959}
    6060
    61 function wsl_check_default_company_exists($companies){
     61function lgcrm_check_default_company_exists($companies){
    6262    $company_websites = array_column(array_map('get_object_vars', $companies), 'website','id');
    6363    $id = array_search(site_url(), $company_websites);
     
    6969}
    7070
    71 function typeform_script() {
     71function lgcrm_typeform_script() {
    7272    wp_register_script( "my_custom_script", plugin_dir_url( __FILE__ ).'assets/custom.js', array('jquery'), NULL, TRUE );
    7373    wp_localize_script( 'my_custom_script', 'localize', array( 'ajaxurl' => admin_url( 'admin-ajax.php' )));
     
    7676    wp_enqueue_script( 'my_custom_script' );
    7777}
    78 add_action( 'wp_enqueue_scripts', 'typeform_script' );
     78add_action( 'wp_enqueue_scripts', 'lgcrm_typeform_script' );
    7979
    80 function typeform_api($response_id){
     80function lgcrm_typeform_api($response_id){
    8181
    82     $get_settings = wsl_get_settings();
     82    $get_settings = lgcrm_get_settings();
    8383    $token = $get_settings["typeform_api_key"];
    8484
     
    100100}
    101101
     102function lgcrm_sanitize_data($data){
     103    if(is_array($data)){
     104        foreach($data as $key=>$rec){
     105            if(!is_array($rec)){
     106                $data[$key] = sanitize_text_field($rec);
     107            }else{
     108                $data[$key] = $rec;
     109            }
     110        }
     111        return $data;
     112    }else{
     113        return sanitize_text_field($data);
     114    }
     115   
     116
     117}
     118
  • lead-generated/trunk/includes/wsl-base.php

    r2328157 r2865082  
    11<?php
    22
    3 class Wsl_Base{
     3class Lg_Crm{
    44
    55    public $api_url = 'https://app.leadgenerated.com/public/api/lead/create';
  • lead-generated/trunk/lead-generated.php

    r2776454 r2865082  
    55 * Plugin URI: https://www.leadgenerated.com/
    66 * Description: Save the leads to Lead Generated system generated by various form plugins. We currently support CF7, Ninja Forms, WP Forms, Gravity Forms and Elementor Builder.
    7  * Version: 1.23
     7 * Version: 1.25
    88 * Author: Lead Generated
    99 * Author URI: https://profiles.wordpress.org/leadgenerated/
     
    2727*/
    2828
    29 define( 'WSL_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
    30 define( 'WSL_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
    31 define( 'WSL_INCLUDES_DIR', plugin_dir_path( __FILE__ ).'/includes' );
    32 define( 'WSL_ADMIN_DIR', plugin_dir_path( __FILE__ ).'/admin' );
    33 
    34 require_once WSL_INCLUDES_DIR . '/helpers.php';
    35 require_once WSL_INCLUDES_DIR . '/wsl-base.php';
    36 require_once WSL_INCLUDES_DIR . '/class-wsl-api.php';
    37 require_once WSL_INCLUDES_DIR . '/class-wsl-cf7-api.php';
    38 require_once WSL_INCLUDES_DIR . '/class-wsl-wpf-api.php';
    39 require_once WSL_INCLUDES_DIR . '/class-wsl-ninja-api.php';
    40 require_once WSL_INCLUDES_DIR . '/class-wsl-gravity-api.php';
    41 require_once WSL_INCLUDES_DIR . '/class-wsl-elementor-api.php';
    42 require_once WSL_INCLUDES_DIR . '/class-wsl-divi-api.php';
    43 require_once WSL_INCLUDES_DIR . '/class-wsl-wpff-api.php';
    44 require_once WSL_INCLUDES_DIR . '/class-wsl-typeform-api.php';
    45 require_once WSL_INCLUDES_DIR . '/class-wsl-beaver-api.php';
    46 require_once WSL_INCLUDES_DIR . '/class-wsl-wpbrizy-api.php';
    47 require_once WSL_INCLUDES_DIR . '/class-wsl-smartforms-api.php';
    48 require_once WSL_INCLUDES_DIR . '/class-wsl-caldera-api.php';
    49 require_once WSL_INCLUDES_DIR . '/class-wsl-thriveform-api.php';
    50 require_once WSL_INCLUDES_DIR . '/class-wsl-formidable-api.php';
    51 require_once WSL_INCLUDES_DIR . '/class-wsl-ug-gutenberg-form-api.php';
     29define( 'LGCRM_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
     30define( 'LGCRM_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
     31define( 'LGCRM_INCLUDES_DIR', plugin_dir_path( __FILE__ ).'/includes' );
     32define( 'LGCRM_ADMIN_DIR', plugin_dir_path( __FILE__ ).'/admin' );
     33
     34require_once LGCRM_INCLUDES_DIR . '/helpers.php';
     35require_once LGCRM_INCLUDES_DIR . '/wsl-base.php';
     36require_once LGCRM_INCLUDES_DIR . '/class-wsl-api.php';
     37require_once LGCRM_INCLUDES_DIR . '/class-wsl-cf7-api.php';
     38require_once LGCRM_INCLUDES_DIR . '/class-wsl-wpf-api.php';
     39require_once LGCRM_INCLUDES_DIR . '/class-wsl-ninja-api.php';
     40require_once LGCRM_INCLUDES_DIR . '/class-wsl-gravity-api.php';
     41require_once LGCRM_INCLUDES_DIR . '/class-wsl-elementor-api.php';
     42require_once LGCRM_INCLUDES_DIR . '/class-wsl-divi-api.php';
     43require_once LGCRM_INCLUDES_DIR . '/class-wsl-wpff-api.php';
     44require_once LGCRM_INCLUDES_DIR . '/class-wsl-typeform-api.php';
     45require_once LGCRM_INCLUDES_DIR . '/class-wsl-beaver-api.php';
     46require_once LGCRM_INCLUDES_DIR . '/class-wsl-wpbrizy-api.php';
     47require_once LGCRM_INCLUDES_DIR . '/class-wsl-smartforms-api.php';
     48require_once LGCRM_INCLUDES_DIR . '/class-wsl-caldera-api.php';
     49require_once LGCRM_INCLUDES_DIR . '/class-wsl-thriveform-api.php';
     50require_once LGCRM_INCLUDES_DIR . '/class-wsl-formidable-api.php';
     51require_once LGCRM_INCLUDES_DIR . '/class-lgcrm-ug-gutenberg-form-api.php';
    5252
    5353if(is_admin()){
    54     require_once WSL_ADMIN_DIR . '/class-wsl-admin.php';
     54    require_once LGCRM_ADMIN_DIR . '/class-wsl-admin.php';
    5555    $admin_obj = new Wsl_Admin();
    5656}
     
    5858
    5959// define the wpcf7_submit callback
    60 function wsl_wpcf7_submit( $instance, $result ) {
    61     if(!is_send_to_crm()){
     60function lgcrm_wpcf7_submit( $instance, $result ) {
     61    if(!lgcrm_is_send_to_crm()){
    6262        return false;
    6363    }
     
    6868    $submission = WPCF7_Submission::get_instance();
    6969   
    70     $send_to_crm = wsl_get_cf7_post_setting('send_to_crm',$instance->id());
     70    $send_to_crm = lgcrm_get_cf7_post_setting('send_to_crm',$instance->id());
    7171    if($send_to_crm != 1){
    7272        return false;
     
    7979}
    8080//Contact Form 7 submit hook
    81 add_action( 'wpcf7_submit', 'wsl_wpcf7_submit', 10, 2 );
     81add_action( 'wpcf7_submit', 'lgcrm_wpcf7_submit', 10, 2 );
    8282         
    8383// add the action
    8484//add_action( 'wpcf7_mail_sent', 'your_wpcf7_mail_sent_function' );
    8585
    86 add_filter( 'wpcf7_editor_panels', 'wsl_add_panel' );
    87 
    88 function wsl_add_panel($panels){
     86add_filter( 'wpcf7_editor_panels', 'lgcrm_add_panel' );
     87
     88function lgcrm_add_panel($panels){
    8989    $panels['leads-panel'] = array(
    9090        'title' => 'Lead Settings',
    91         'callback' => 'wsl_leads_panel_callback'
     91        'callback' => 'lgcrm_leads_panel_callback'
    9292    );
    9393    return $panels;
    9494}
    9595
    96 function wsl_leads_panel_callback($post){
    97     include_once WSL_PLUGIN_DIR.'/admin/editor-panel.php';
    98 }
    99 
    100 add_action( 'wpcf7_after_save', 'cf7_success_page_save_contact_form' );
    101 
    102 function cf7_success_page_save_contact_form( $contact_form ) {
     96function lgcrm_leads_panel_callback($post){
     97    include_once LGCRM_PLUGIN_DIR.'/admin/editor-panel.php';
     98}
     99
     100add_action( 'wpcf7_after_save', 'lgcrm_success_page_save_contact_form' );
     101
     102function lgcrm_success_page_save_contact_form( $contact_form ) {
    103103    $contact_form_id = $contact_form->id();
    104104
     
    117117}
    118118
    119 function wsl_ninja_forms_after_submission( $form_data ){
    120     if(!is_send_to_crm()){
     119function lgcrm_ninja_forms_after_submission( $form_data ){
     120    if(!lgcrm_is_send_to_crm()){
    121121        return false;
    122122    }
     
    125125    $laravel_api->call();
    126126}
    127 add_action( 'ninja_forms_after_submission', 'wsl_ninja_forms_after_submission' );
    128 
    129 function wsl_wpf_process_entry_save( $fields, $entry, $form_id, $form_data ) {
    130     if(!is_send_to_crm()){
     127add_action( 'ninja_forms_after_submission', 'lgcrm_ninja_forms_after_submission' );
     128
     129function lgcrm_wpf_process_entry_save( $fields, $entry, $form_id, $form_data ) {
     130    if(!lgcrm_is_send_to_crm()){
    131131        return false;
    132132    }
     
    136136    $laravel_api->call();
    137137}
    138 add_filter( 'wpforms_process_entry_save', 'wsl_wpf_process_entry_save', 10, 4 );
    139 
    140 function wsl_gravityform_submission( $entry, $form) { //Gravity forms
    141     if(!is_send_to_crm()){
     138add_filter( 'wpforms_process_entry_save', 'lgcrm_wpf_process_entry_save', 10, 4 );
     139
     140function lgcrm_gravityform_submission( $entry, $form) { //Gravity forms
     141    if(!lgcrm_is_send_to_crm()){
    142142        return false;
    143143    }
     
    148148 
    149149}
    150 add_action( 'gform_after_submission', 'wsl_gravityform_submission', 10, 2 ); //Gravity forms
    151 
    152 add_action( 'elementor_pro/forms/new_record', 'wsl_elementor_pro', 10, 2);
    153 
    154 function wsl_elementor_pro($record, $handler ){
    155     if(!is_send_to_crm()){
     150add_action( 'gform_after_submission', 'lgcrm_gravityform_submission', 10, 2 ); //Gravity forms
     151
     152add_action( 'elementor_pro/forms/new_record', 'lgcrm_elementor_pro', 10, 2);
     153
     154function lgcrm_elementor_pro($record, $handler ){
     155    if(!lgcrm_is_send_to_crm()){
    156156        return false;
    157157    }
     
    164164}
    165165
    166 add_action( 'et_pb_contact_form_submit', 'wsl_divi' );
    167 
    168 function wsl_divi(){
    169     if(!is_send_to_crm()){
     166add_action( 'et_pb_contact_form_submit', 'lgcrm_divi' );
     167
     168function lgcrm_divi(){
     169    if(!lgcrm_is_send_to_crm()){
    170170        return false;
    171171    }
    172172    reset($_POST);
    173     $key = key($_POST);
     173    $form_data = lgcrm_sanitize_data($_POST);
     174    $key = key($form_data);
    174175    $counter = substr($key, -1);
    175     $laravel_api = new Wsl_Divi_Api($_POST["et_pb_contact_email_fields_".$counter]);
    176     $laravel_api->set_submission_instance($_POST["et_pb_contact_email_fields_".$counter]);
    177     $laravel_api->call();
    178 }
    179 
    180 add_action('fluentform_submission_inserted', 'wsl_fluentforms', 20, 3);
    181 
    182 function wsl_fluentforms($entryId, $formData, $form)
     176    $laravel_api = new Wsl_Divi_Api($form_data["et_pb_contact_email_fields_".$counter]);
     177    $laravel_api->set_submission_instance($form_data["et_pb_contact_email_fields_".$counter]);
     178    $laravel_api->call();
     179}
     180
     181add_action('fluentform_submission_inserted', 'lgcrm_fluentforms', 20, 3);
     182
     183function lgcrm_fluentforms($entryId, $formData, $form)
    183184{
    184     if(!is_send_to_crm()){
     185    if(!lgcrm_is_send_to_crm()){
    185186        return false;
    186187    }
     
    190191}
    191192
    192 add_action("wp_ajax_nopriv_wsl_typeform", "wsl_typeform");
    193 add_action("wp_ajax_wsl_typeform", "wsl_typeform");
    194 
    195 function wsl_typeform() {
    196     if(!is_send_to_crm()){
    197         return false;
    198     }
    199     $fields = typeform_api($_POST['response_id']);
     193add_action("wp_ajax_nopriv_wsl_typeform", "lgcrm_typeform");
     194add_action("wp_ajax_wsl_typeform", "lgcrm_typeform");
     195
     196function lgcrm_typeform() {
     197    if(!lgcrm_is_send_to_crm()){
     198        return false;
     199    }
     200    $fields = lgcrm_sanitize_data(lgcrm_typeform_api($_POST['response_id']));
    200201   
    201202    $laravel_api = new Wsl_Typeform_Api($fields);
     
    204205}
    205206
    206 add_action( 'wp_ajax_fl_builder_email', 'wsl_beaver' );
    207 add_action("wp_ajax_nopriv_fl_builder_email", "wsl_beaver");
    208 
    209 function wsl_beaver(){
    210     if(!is_send_to_crm()){
    211         return false;
    212     }
    213     $laravel_api = new Wsl_Beaver_Api($_POST);
    214     $laravel_api->set_submission_instance($_POST);
    215     $laravel_api->call();
    216 }
    217 
    218 add_action('wp_ajax_brizy_submit_form', 'wsl_brizy');
    219 add_action("wp_ajax_nopriv_brizy_submit_form", "wsl_brizy");
    220 
    221 function wsl_brizy(){
    222     if(!is_send_to_crm()){
    223         return false;
    224     }
    225     $fields_data = $_POST["data"];
     207add_action( 'wp_ajax_fl_builder_email', 'lgcrm_beaver' );
     208add_action("wp_ajax_nopriv_fl_builder_email", "lgcrm_beaver");
     209
     210function lgcrm_beaver(){
     211    if(!lgcrm_is_send_to_crm()){
     212        return false;
     213    }
     214    $form_data = lgcrm_sanitize_data($_POST);
     215    $laravel_api = new Wsl_Beaver_Api($form_data);
     216    $laravel_api->set_submission_instance($form_data);
     217    $laravel_api->call();
     218}
     219
     220add_action('wp_ajax_brizy_submit_form', 'lgcrm_brizy');
     221add_action("wp_ajax_nopriv_brizy_submit_form", "lgcrm_brizy");
     222
     223function lgcrm_brizy(){
     224    if(!lgcrm_is_send_to_crm()){
     225        return false;
     226    }
     227    $form = lgcrm_sanitize_data($_POST);
     228    $fields_data = $form["data"];
    226229
    227230    $laravel_api = new Wsl_Brizy_Api($fields_data);
     
    230233}
    231234
    232 add_action( 'wp_ajax_rednao_smart_forms_save_form_values','wsl_smart_forms');
    233 add_action( 'wp_ajax_nopriv_rednao_smart_forms_save_form_values','wsl_smart_forms');
    234 
    235 function wsl_smart_forms($data){
    236     if(!is_send_to_crm()){
    237         return false;
    238     }
    239     $fields_data = $_POST;
     235add_action( 'wp_ajax_rednao_smart_forms_save_form_values','lgcrm_smart_forms');
     236add_action( 'wp_ajax_nopriv_rednao_smart_forms_save_form_values','lgcrm_smart_forms');
     237
     238function lgcrm_smart_forms($data){
     239    if(!lgcrm_is_send_to_crm()){
     240        return false;
     241    }
     242    $fields_data = lgcrm_sanitize_data($_POST);
    240243
    241244    $laravel_api = new Wsl_SmartForms_Api($fields_data);
     
    244247}
    245248
    246 add_action('caldera_forms_submit_complete', 'wsl_caldera_forms', 50, 3);
    247 
    248 function wsl_caldera_forms($form, $referrer, $process_id)
     249add_action('caldera_forms_submit_complete', 'lgcrm_caldera_forms', 50, 3);
     250
     251function lgcrm_caldera_forms($form, $referrer, $process_id)
    249252{
    250     if(!is_send_to_crm()){
     253    if(!lgcrm_is_send_to_crm()){
    251254        return false;
    252255    }
    253256    $fields_data = $form["fields"];
    254     $formData = $_REQUEST;
     257    $formData = lgcrm_sanitize_data($_REQUEST);
    255258   
    256259    $laravel_api = new Wsl_CalderaForms_Api($fields_data, $formData);
     
    259262}
    260263
    261 add_action( 'wp_ajax_tve_api_form_submit', 'wsl_thrive_form' );
    262 add_action( 'wp_ajax_nopriv_tve_api_form_submit', 'wsl_thrive_form' );
    263 
    264 function wsl_thrive_form(){
    265     if(!is_send_to_crm()){
     264add_action( 'wp_ajax_tve_api_form_submit', 'lgcrm_thrive_form' );
     265add_action( 'wp_ajax_nopriv_tve_api_form_submit', 'lgcrm_thrive_form' );
     266
     267function lgcrm_thrive_form(){
     268    if(!lgcrm_is_send_to_crm()){
    266269        return false;
    267270    }
     
    273276}
    274277
    275 add_action('frm_after_create_entry', 'wsl_fomidable', 30, 2);
    276 
    277 function wsl_fomidable($entry_id, $form_id){
     278add_action('frm_after_create_entry', 'lgcrm_fomidable', 30, 2);
     279
     280function lgcrm_fomidable($entry_id, $form_id){
    278281    $laravel_api = new Wsl_formidable_Api($entry_id, $form_id);
    279282    $laravel_api->set_submission_instance($entry_id, $form_id);
    280283    $laravel_api->call();
    281284}
     285
     286add_action( 'wp_ajax_uagb_process_forms', 'lgcrm_gutenberg_forms' );
     287add_action( 'wp_ajax_nopriv_uagb_process_forms', 'lgcrm_gutenberg_forms' );
     288
     289function lgcrm_gutenberg_forms(){
     290    if(!lgcrm_is_send_to_crm()){
     291        return false;
     292    }
     293    $fields_data = lgcrm_sanitize_data($_POST);
     294
     295    $laravel_api = new Lgcrm_Gutenberg_Api($fields_data);
     296    $laravel_api->set_submission_instance($fields_data);
     297    $laravel_api->call();
     298}
  • lead-generated/trunk/readme.txt

    r2776454 r2865082  
    33Tags: cf7, contact-form, leads, crm, management
    44Requires at least: 5.0
    5 Tested up to: 6.0.1
    6 Stable tag: 1.23
     5Tested up to: 6.1.1
     6Stable tag: 1.25
    77Requires PHP: 5.2.4
    88License: GPLv2 or later
     
    105105= 1.23 =
    106106* Fixed gravity form field name mapping in case of label missing
     107
     108= 1.25 =
     109* Removed vulnerability in the plugin
     110* Sanitized and verfied the data
     111* Fixed Thrive Forms integration security issues
Note: See TracChangeset for help on using the changeset viewer.