From 853229c1ffae749c3738fcd468eb1a47058c7253 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lucas=20Garc=C3=ADa?= <lucas@codeccoop.org>
Date: Fri, 19 Jan 2024 14:06:41 +0100
Subject: [PATCH] feat: rename plugin

---
 includes/attachments.php                 | 22 ++++----
 includes/fields-population.php           |  8 +--
 includes/fields/iban/Addon.php           |  6 +--
 includes/fields/iban/Field.php           |  2 +-
 includes/fields/iban/index.php           |  8 +--
 includes/options-page.php                | 64 ++++++++++++------------
 includes/submissions.php                 | 26 +++++-----
 includes/webhooks.php                    | 26 +++++-----
 wpct-crm-forms.php => wpct-erp-forms.php |  5 +-
 9 files changed, 83 insertions(+), 84 deletions(-)
 rename wpct-crm-forms.php => wpct-erp-forms.php (85%)

diff --git a/includes/attachments.php b/includes/attachments.php
index 7541f33..2371e89 100644
--- a/includes/attachments.php
+++ b/includes/attachments.php
@@ -3,12 +3,12 @@
 /**
  * Store uploads on a custom folder under a custom endpoint
  */
-add_filter('gform_upload_path', 'wpct_crm_forms_upload_path', 90, 2);
-function wpct_crm_forms_upload_path($path_info, $form_id)
+add_filter('gform_upload_path', 'wpct_erp_forms_upload_path', 90, 2);
+function wpct_erp_forms_upload_path($path_info, $form_id)
 {
     $upload_dir = wp_upload_dir();
-    $base_path = apply_filters('wpct_crm_forms_upload_path', $upload_dir['basedir'] . '/crm-forms');
-    if (!($base_path && is_string($base_path))) throw new Exception('WPCT CRM Forms: Invalid upload path');
+    $base_path = apply_filters('wpct_erp_forms_upload_path', $upload_dir['basedir'] . '/erp-forms');
+    if (!($base_path && is_string($base_path))) throw new Exception('WPCT ERP Forms: Invalid upload path');
     $base_path = preg_replace('/\/$/', '', $base_path);
 
     $path = $base_path . '/' . implode('/', [$form_id, date('Y'), date('m')]);
@@ -16,7 +16,7 @@ function wpct_crm_forms_upload_path($path_info, $form_id)
     $path_info['path'] = $path;
 
     $url = get_site_url() . '/index.php?';
-    $url .= 'crm-forms-attachment=' . urlencode(str_replace($base_path, '', $path) . '/');
+    $url .= 'erp-forms-attachment=' . urlencode(str_replace($base_path, '', $path) . '/');
     $path_info['url'] = $url;
 
     return $path_info;
@@ -25,16 +25,16 @@ function wpct_crm_forms_upload_path($path_info, $form_id)
 /*
  * Attachments delivery handler
  */
-add_action('init', 'wpct_crm_forms_download_file');
-function wpct_crm_forms_download_file()
+add_action('init', 'wpct_erp_forms_download_file');
+function wpct_erp_forms_download_file()
 {
-    if (!isset($_GET['crm-forms-attachment'])) return;
+    if (!isset($_GET['erp-forms-attachment'])) return;
 
     $upload_dir = wp_upload_dir();
-    $base_path = apply_filters('wpct_crm_forms_upload_path', $upload_dir['basedir'] . '/crm-forms');
-    if (!($base_path && is_string($base_path))) throw new Exception('WPCT CRM Forms: Invalid upload path');
+    $base_path = apply_filters('wpct_erp_forms_upload_path', $upload_dir['basedir'] . '/erp-forms');
+    if (!($base_path && is_string($base_path))) throw new Exception('WPCT ERP Forms: Invalid upload path');
     $base_path = preg_replace('/\/$/', '', $base_path);
-    $path = $base_path . urldecode($_GET['crm-forms-attachment']);
+    $path = $base_path . urldecode($_GET['erp-forms-attachment']);
 
     if (!(is_user_logged_in() && file_exists($path))) {
         global $wp_query;
diff --git a/includes/fields-population.php b/includes/fields-population.php
index ebd329d..bee51fe 100644
--- a/includes/fields-population.php
+++ b/includes/fields-population.php
@@ -8,11 +8,11 @@
 /*     return wpct_forms_ce_option_getter('wpct_forms_ce_general', 'coord_id'); */
 /* } */
 
-add_filter('gform_field_value_current_lang', 'wpct_crm_forms_populate_current_lang');
-function wpct_crm_forms_populate_current_lang($value)
+add_filter('gform_field_value_current_lang', 'wpct_erp_forms_populate_current_lang');
+function wpct_erp_forms_populate_current_lang($value)
 {
     if ($value) {
-        $locale = wpct_crm_forms_format_current_lang($value);
+        $locale = wpct_erp_forms_format_current_lang($value);
     } else {
         $language = apply_filters('wpml_post_language_details', null);
 
@@ -26,7 +26,7 @@ function wpct_crm_forms_populate_current_lang($value)
     return $locale;
 }
 
-function wpct_crm_forms_format_current_lang($code)
+function wpct_erp_forms_format_current_lang($code)
 {
     $languages = apply_filters('wpml_active_languages', null);
     if ($languages && !is_wp_error($languages) && isset($languages[$code])) {
diff --git a/includes/fields/iban/Addon.php b/includes/fields/iban/Addon.php
index 41823e1..885ce0b 100644
--- a/includes/fields/iban/Addon.php
+++ b/includes/fields/iban/Addon.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace WPCT_CRM_FORMS\IBAN_Field;
+namespace WPCT_ERP_FORMS\IBAN_Field;
 
 use GFForms;
 use GFAddOn;
@@ -10,8 +10,8 @@ GFForms::include_addon_framework();
 
 class Addon extends GFAddOn
 {
-    protected $_version = WPCT_CRM_FORMS_IBAN_FIELD;
-    protected $_slug = 'wpct-crm-forms-iban-field';
+    protected $_version = WPCT_ERP_FORMS_IBAN_FIELD;
+    protected $_slug = 'wpct-erp-forms-iban-field';
     protected $_title = 'Gravity Forms IBAN validated text field';
     protected $_short_title = 'IBAN field';
 
diff --git a/includes/fields/iban/Field.php b/includes/fields/iban/Field.php
index 2346279..2685c87 100644
--- a/includes/fields/iban/Field.php
+++ b/includes/fields/iban/Field.php
@@ -1,6 +1,6 @@
 <?php
 
-namespace WPCT_CRM_FORMS\IBAN_Field;
+namespace WPCT_ERP_FORMS\IBAN_Field;
 
 use Exception;
 use GF_Field;
diff --git a/includes/fields/iban/index.php b/includes/fields/iban/index.php
index e948e62..f4bcf9d 100644
--- a/includes/fields/iban/index.php
+++ b/includes/fields/iban/index.php
@@ -4,14 +4,14 @@ if (!defined('ABSPATH')) {
     exit;
 }
 
-define('WPCT_CRM_FORMS_IBAN_FIELD', '1.0');
-add_action('gform_loaded', 'wpct_crm_forms_load_iban_field', 5);
-function wpct_crm_forms_load_iban_field()
+define('wpct_erp_FORMS_IBAN_FIELD', '1.0');
+add_action('gform_loaded', 'wpct_erp_forms_load_iban_field', 5);
+function wpct_erp_forms_load_iban_field()
 {
     if (!method_exists('GFForms', 'include_addon_framework')) return;
     require_once 'Addon.php';
     require_once 'Field.php';
 
 
-    GFAddOn::register(\WPCT_CRM_FORMS\IBAN_Field\Addon::class);
+    GFAddOn::register(\wpct_erp_FORMS\IBAN_Field\Addon::class);
 }
diff --git a/includes/options-page.php b/includes/options-page.php
index 5665b6d..a74816a 100644
--- a/includes/options-page.php
+++ b/includes/options-page.php
@@ -3,28 +3,28 @@
 /**
  * Define menu page.
  */
-add_action('admin_menu', 'wpct_crm_forms_add_admin_menu');
-function wpct_crm_forms_add_admin_menu()
+add_action('admin_menu', 'wpct_erp_forms_add_admin_menu');
+function wpct_erp_forms_add_admin_menu()
 {
     add_options_page(
-        'WPCT CRM Forms',
-        'WPCT CRM Forms',
+        'WPCT ERP Forms',
+        'WPCT ERP Forms',
         'manage_options',
-        'wpct_crm_forms',
-        'wpct_crm_forms_render'
+        'wpct_erp_forms',
+        'wpct_erp_forms_render'
     );
 }
 
 /**
  * Paint the settings page
  */
-function wpct_crm_forms_render()
+function wpct_erp_forms_render()
 {
     echo '<div class="wrap">';
-    echo '<h1>WPCT CE Forms</h1>';
+    echo '<h1>WPCT ERP Forms</h1>';
     echo '<form action="options.php" method="post">';
-    settings_fields('wpct_crm_forms');
-    do_settings_sections('wpct_crm_forms');
+    settings_fields('wpct_erp_forms');
+    do_settings_sections('wpct_erp_forms');
     submit_button();
     echo '</form>';
     echo '</div>';
@@ -33,15 +33,15 @@ function wpct_crm_forms_render()
 /**
  * Define settings.
  */
-add_action('admin_init', 'wpct_crm_forms_init_settings', 50);
-function wpct_crm_forms_init_settings()
+add_action('admin_init', 'wpct_erp_forms_init_settings', 50);
+function wpct_erp_forms_init_settings()
 {
     register_setting(
-        'wpct_crm_forms',
-        'wpct_crm_forms_general',
+        'wpct_erp_forms',
+        'wpct_erp_forms_general',
         array(
             'type' => 'array',
-            'description' => __('Configuració global dels formularis', 'wpct-crm-forms'),
+            'description' => __('Configuració global dels formularis', 'wpct-erp-forms'),
             'show_in_rest' => false,
             'default' => array(
                 'coord_id' => 0,
@@ -52,42 +52,42 @@ function wpct_crm_forms_init_settings()
 
     // Secció general
     add_settings_section(
-        'wpct_crm_forms_general_section',
-        __('Global', 'wpct-crm-forms'),
-        'wpct_crm_forms_general_section_render',
-        'wpct_crm_forms'
+        'wpct_erp_forms_general_section',
+        __('Global', 'wpct-erp-forms'),
+        'wpct_erp_forms_general_section_render',
+        'wpct_erp_forms'
     );
     add_settings_field(
         'notification_receiver',
-        __('Error notification receiver', 'wpct-crm-forms'),
-        fn () => wpct_crm_forms_option_render('notification_receiver'),
-        'wpct_crm_forms',
-        'wpct_crm_forms_general_section'
+        __('Error notification receiver', 'wpct-erp-forms'),
+        fn () => wpct_erp_forms_option_render('notification_receiver'),
+        'wpct_erp_forms',
+        'wpct_erp_forms_general_section'
     );
     add_settings_field(
         'coord_id',
-        __('ID de la coordinadora', 'wpct-crm-forms'),
-        fn () => wpct_crm_forms_option_render('coord_id'),
-        'wpct_crm_forms',
-        'wpct_crm_forms_general_section'
+        __('ID de la coordinadora', 'wpct-erp-forms'),
+        fn () => wpct_erp_forms_option_render('coord_id'),
+        'wpct_erp_forms',
+        'wpct_erp_forms_general_section'
     );
 }
 
-function wpct_crm_forms_option_getter($group, $option)
+function wpct_erp_forms_option_getter($group, $option)
 {
     $options = get_option($group) ? get_option($group) : [];
     return key_exists($option, $options) ? $options[$option] : '';
 }
 
-function wpct_crm_forms_option_render($option)
+function wpct_erp_forms_option_render($option)
 {
-    echo '<input type="text" name="wpct_crm_forms_general[' . $option . ']" value="' . wpct_crm_forms_option_getter('wpct_crm_forms_general', $option) . '">';
+    echo '<input type="text" name="wpct_erp_forms_general[' . $option . ']" value="' . wpct_erp_forms_option_getter('wpct_erp_forms_general', $option) . '">';
 }
 
 /**
  * Callbacks for the settings sections
  */
-function wpct_crm_forms_general_section_render()
+function wpct_erp_forms_general_section_render()
 {
-    echo __('General settings', 'wpct-crm-forms');
+    echo __('General settings', 'wpct-erp-forms');
 }
diff --git a/includes/submissions.php b/includes/submissions.php
index 61e7b72..5e9c5ac 100644
--- a/includes/submissions.php
+++ b/includes/submissions.php
@@ -3,7 +3,7 @@
 /**
  * Gent gform entry and form objects and parse it to a form values array
  */
-function wpct_crm_forms_parse_form_entry($entry, $form)
+function wpct_erp_forms_parse_form_entry($entry, $form)
 {
     $form_vals = [
         'entry_id' => $entry['id']
@@ -37,7 +37,7 @@ function wpct_crm_forms_parse_form_entry($entry, $form)
                 foreach ($inputs as $input) {
                     $value = rgar($entry, (string) $input['id']);
                     if ($input_name && $value) {
-                        $value = wpct_crm_forms_format_value($value, $field, $input);
+                        $value = wpct_erp_forms_format_value($value, $field, $input);
                         if ($value !== null) $values[] = $value;
                     }
                 }
@@ -48,7 +48,7 @@ function wpct_crm_forms_parse_form_entry($entry, $form)
             // simple fields
             if ($input_name) {
                 $raw_value = rgar($entry, (string) $field->id);
-                $form_vals[$input_name] = wpct_crm_forms_format_value($raw_value, $field);
+                $form_vals[$input_name] = wpct_erp_forms_format_value($raw_value, $field);
             }
         }
     }
@@ -56,7 +56,7 @@ function wpct_crm_forms_parse_form_entry($entry, $form)
     return $form_vals;
 }
 
-function wpct_crm_forms_format_value($value, $field, $input = null)
+function wpct_erp_forms_format_value($value, $field, $input = null)
 {
     try {
         if ($field->type === 'fileupload' && $value && is_string($value)) {
@@ -72,10 +72,10 @@ function wpct_crm_forms_format_value($value, $field, $input = null)
     return $value;
 }
 
-function wpct_crm_forms_add_cord_id($form_values)
+function wpct_erp_forms_add_cord_id($form_values)
 {
     if (!isset($form_values['company_id']) || !$form_values['company_id']) {
-        $form_values['company_id'] = wpct_crm_forms_option_getter('wpct_crm_forms_general', 'coord_id');
+        $form_values['company_id'] = wpct_erp_forms_option_getter('wpct_erp_forms_general', 'coord_id');
     }
 
     return $form_values;
@@ -84,7 +84,7 @@ function wpct_crm_forms_add_cord_id($form_values)
 /**
  * Remove empty fields from form submission
  */
-function wpct_crm_forms_cleanup_empties($form_vals)
+function wpct_erp_forms_cleanup_empties($form_vals)
 {
     foreach ($form_vals as $key => $val) {
         if (empty($val)) {
@@ -99,7 +99,7 @@ function wpct_crm_forms_cleanup_empties($form_vals)
 /**
  * Transform form submission array into a payload data structure
  */
-function wpct_crm_forms_get_submission_payload($form_vals)
+function wpct_erp_forms_get_submission_payload($form_vals)
 {
     $payload = [
         'name' => $form_vals['source_xml_id'] . ' submission: ' . $form_vals['entry_id'],
@@ -128,10 +128,10 @@ function wpct_crm_forms_get_submission_payload($form_vals)
 /**
  * Pipe form submission transformations to get the submission post payload
  */
-add_filter('wpct_crm_forms_prepare_submission', 'wpct_crm_forms_prepare_submission', 10, 2);
-function wpct_crm_forms_prepare_submission($form_vals)
+add_filter('wpct_erp_forms_prepare_submission', 'wpct_erp_forms_prepare_submission', 10, 2);
+function wpct_erp_forms_prepare_submission($form_vals)
 {
-    $form_vals = wpct_crm_forms_add_cord_id($form_vals);
-    $form_vals = wpct_crm_forms_cleanup_empties($form_vals);
-    return wpct_crm_forms_get_submission_payload($form_vals);
+    $form_vals = wpct_erp_forms_add_cord_id($form_vals);
+    $form_vals = wpct_erp_forms_cleanup_empties($form_vals);
+    return wpct_erp_forms_get_submission_payload($form_vals);
 }
diff --git a/includes/webhooks.php b/includes/webhooks.php
index e8800d7..620128a 100644
--- a/includes/webhooks.php
+++ b/includes/webhooks.php
@@ -1,19 +1,19 @@
 <?php
-add_action('gform_after_submission', 'wpct_crm_forms_api_submissions', 10, 2);
-function wpct_crm_forms_api_submissions($entry, $form)
+add_action('gform_after_submission', 'wpct_erp_forms_api_submissions', 10, 2);
+function wpct_erp_forms_api_submissions($entry, $form)
 {
-	$form_vals = wpct_crm_forms_parse_form_entry($entry, $form);
+    $form_vals = wpct_erp_forms_parse_form_entry($entry, $form);
 
-	// Exit submission if form isn't bound to Odoo
-	if (!isset($form_vals['source_xml_id'])) return;
+    // Exit submission if form isn't bound to Odoo
+    if (!isset($form_vals['source_xml_id'])) return;
 
-	$submission_payload = apply_filters('wpct_crm_forms_prepare_submission', $form_vals);
+    $submission_payload = apply_filters('wpct_erp_forms_prepare_submission', $form_vals);
 
-	$response = wpct_oc_post_odoo('/api/private/crm-lead', $submission_payload);
-	if (!$response) {
-		$to = wpct_crm_forms_option_getter('wpct_crm_forms_general', 'notification_receiver');
-		$subject = 'Odoo subscription request submission error: Form(' . $form['id'] . ') Entry (' . $entry['id'] . ')';
-		$body = 'Submission subscription request for entry: ' . $entry['id'] . ' failed.<br/>Form id: ' . $form['id'] . "<br/>Form title: " . $form['title'];
-		wp_mail($to, $subject, $body);
-	}
+    $response = wpct_oc_post_odoo('/api/private/crm-lead', $submission_payload);
+    if (!$response) {
+        $to = wpct_erp_forms_option_getter('wpct_erp_forms_general', 'notification_receiver');
+        $subject = 'Odoo subscription request submission error: Form(' . $form['id'] . ') Entry (' . $entry['id'] . ')';
+        $body = 'Submission subscription request for entry: ' . $entry['id'] . ' failed.<br/>Form id: ' . $form['id'] . "<br/>Form title: " . $form['title'];
+        wp_mail($to, $subject, $body);
+    }
 }
diff --git a/wpct-crm-forms.php b/wpct-erp-forms.php
similarity index 85%
rename from wpct-crm-forms.php
rename to wpct-erp-forms.php
index 9dbeefa..0c71526 100755
--- a/wpct-crm-forms.php
+++ b/wpct-erp-forms.php
@@ -6,11 +6,11 @@
  * Description:     Plugin to wire gravity forms submissions with Odoo CRM Leads module
  * Author:          Còdec Cooperativa
  * Author URI:      https://www.codeccoop.org
- * Text Domain:     wpct-crm-forms
+ * Text Domain:     wpct-erp-forms
  * Domain Path:     /languages
  * Version:         1.0.3
  *
- * @package         WPCT_CRM_Forms
+ * @package         WPCT_ERP_Forms
  */
 
 /* Options Page */
@@ -29,7 +29,6 @@ require_once "includes/fields/iban/index.php";
 
 /* Dependencies */
 add_filter('wpct_dependencies_check', function ($dependencies) {
-    $dependencies['Gravity Forms'] = '<a href="https://www.gravityforms.com/">Gravity Forms</a>';
     $dependencies['Wpct Odoo Connect'] = '<a href="https://git.coopdevs.org/coopdevs/website/wp/wp-plugins/wpct-odoo-connect">Wpct Odoo Connect</a>';
     return $dependencies;
 });
-- 
GitLab