Skip to content

Commit

Permalink
* ⬆️ Adapt the plugin to the last WooCommerce plugin version
Browse files Browse the repository at this point in the history
* 🐛 Fix redirection mode
* ♻️  Global refresh of the code
  • Loading branch information
holajsh authored and Jérôme Schell committed Jan 24, 2025
1 parent 70dccac commit 621b4a0
Show file tree
Hide file tree
Showing 130 changed files with 16,699 additions and 1,177 deletions.
1 change: 0 additions & 1 deletion .gitignore

This file was deleted.

2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.2.4
1.3.0
44 changes: 44 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# WooCommerce PayXpert Payment Module

GNU GENERAL PUBLIC LICENSE
Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA

Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

---

## Preamble

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too.

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification follow.

---

## Terms and Conditions

### 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

... (Truncated for brevity, include the full text in the actual document) ...

---

For the complete text of the GNU General Public License v2.0, visit: [https://www.gnu.org/licenses/old-licenses/gpl-2.0.html](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
89 changes: 60 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,40 +1,71 @@
# WooCommerce PayXpert Payment Module
### Version for WooCommerce 3.7 to 4.8

The author of this plugin can NEVER be held responsible for this software.
There is no warranty what so ever. You accept this by using this software.
### Compatible with WooCommerce 4.8 to 9.3

## Changelog
* 1.2.5 - Added flexible field for Seamless Checkout version and integrity hash
* 1.2.4 - Removed "billing state" from required parameters
* 1.2.3 - Proper parse of checkout form string
* 1.2.2 - Fixed bad encoding
* 1.2.1 - Added order.type required parameter
* 1.2.0 - Added Seamless Checkout, WeChat Pay, Alipay method
* 1.1.4 - Removed direct access to properties, fixed iframe, refund features
* 1.1.3 - Updated Connect2Pay client, removed deprecated functions
* 1.1.2 - Enforce no-cancel policy for failed transactions
* 1.1.1 - Pay button text as a setting
* 1.1.0 - Iframe option
* 1.0.1 - Get order parameters with methods
* 1.0.0 - Released iframe branch
> **Disclaimer:**
> The author of this plugin cannot be held responsible for any issues arising from the use of this software. There is no warranty of any kind. By using this plugin, you agree to these terms.
> License: GPL-2.0-or-later
> License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
## Installation
1. Install the plugin like you always install plugins, either by uploading it via FTP or by using the "Add Plugin" function of WordPress.

2. Go to the main directory of the plugin and run:
---

```
php composer.phar install
## **Changelog**

```
### Updates, Fixes, and Features
- **1.3.0**: Removed iframe support, added fully functional seamless integration.
- **1.2.9**: Introduced multi-language support (English, Spanish, French).
- **1.2.8**: Revamped settings page and added account validation.
- **1.2.7**: Added support for WooCommerce High-Performance Order Storage (HPOS).
- **1.2.6**: Preinstalled stable PayXpert API library.
- **1.2.5**: Added flexible fields for Seamless Checkout version and integrity hash.
- **1.2.4**: Removed "billing state" from required parameters.
- **1.2.3**: Improved checkout form string parsing.
- **1.2.2**: Resolved encoding issues.
- **1.2.1**: Added `order.type` as a required parameter.
- **1.2.0**: Introduced Seamless Checkout, WeChat Pay, and AliPay payment methods.
- **1.1.x**: Various updates, including Pay button customization and deprecated function removals.
- **1.0.0**: Initial release with iframe branch.

3. Activate the plugin at the plugin administration page
---

4. Go the that WooCommerce Settings, click on Checkout, you will see a new Checkout Options: PayXpert
## **Installation Instructions**

5. Click on the PayXpert Checkout Options, enable the gateway and fill the information provided by PayXpert
1. **Upload the Plugin:**
- Use the WordPress "Add Plugin" feature in the admin panel, or upload the plugin via FTP to the `/wp-content/plugins/` directory.


## Support
Please visit the PayXpert website (http://www.payxpert.com) for our support contact details.
2. **Activate the Plugin:**
- Navigate to the Plugins page in your WordPress admin area and activate the "PayXpert Payment Module."

3. **Configure Payment Gateway:**
- Go to **WooCommerce > Settings > Payments**, and select "PayXpert" from the list of payment gateways.
- Enable the gateway and enter the credentials provided by PayXpert:
- **Originator ID**
- **Password**

4. **Save Settings:**
- Once all details are entered, click **Save Changes** to enable the PayXpert gateway.

> **Tip:** Ensure your WooCommerce environment meets the plugin’s prerequisites for optimal functionality.
For a complete step-by-step guide, visit the [PayXpert Plugin Documentation](https://payxpert-docs.atlassian.net/wiki/x/AQDxLQ).

---

## **Features**

- **Seamless Integration:** Provides a fully integrated checkout experience directly on your site.
- **Multi-Language Support:** Fully translated into English, Spanish, and French.
- **High-Performance Order Storage (HPOS):** Enhanced WooCommerce performance for large-scale stores.
- **Flexible Payment Options:** Supports card payments, WeChat Pay, and AliPay.
- **Secure Transactions:** Preconfigured with PayXpert's stable API library for secure and reliable payment processing.

---

## **Support**

For support or assistance, visit the [PayXpert website](http://www.payxpert.com) and refer to the contact details provided.

> **Note:** For faster support, include details of your WooCommerce version, plugin version, and any relevant error logs when reaching out.
---
221 changes: 221 additions & 0 deletions assets/css/admin-styles.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,221 @@
/* General Styling */
.enhanced-plugin-settings-wrap {
font-family: Arial, sans-serif;
padding: 20px;
background-color: #f9f9f9;
max-width: 800px;
margin: 20px auto;
border: 1px solid #ddd;
border-radius: 8px;
}

/* Top Links */
.top-links {
text-align: right;
margin-bottom: 20px;
}

.top-links a {
color: #0073aa;
text-decoration: none;
font-weight: bold;
}

.top-links a:hover {
text-decoration: underline;
}

/* Blocks */
.block {
background: #fff;
border: 1px solid #ddd;
border-radius: 8px;
margin-bottom: 20px;
padding: 20px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.block.disabled {
opacity: 0.6;
pointer-events: none;
}

.block h2 {
margin-top: 0;
font-size: 1.5em;
color: #333;
}

.block p {
font-size: 0.9em;
color: #555;
}

/* Header Section */
.header {
text-align: center;
margin-bottom: 20px;
}

.header img {
max-width: 150px;
margin-bottom: 10px;
}

.header h1 {
font-size: 1.8em;
color: #333;
}

.header p {
color: #666;
}

/* Form Elements */
.form-group {
margin-bottom: 15px;
}

.form-group label {
font-weight: bold;
display: block;
margin-bottom: 5px;
}

.form-group input[type="text"],
.form-group input[type="password"],
.form-group input[type="email"],
.form-group input[type="url"],
.form-group select {
width: 100%;
padding: 8px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 1em;
}

.form-group input[type="checkbox"] {
margin-right: 8px;
}

.form-group .tooltip {
display: inline-block;
/* background: #0073aa; */
color: #fff;
font-size: 0.8em;
padding: 0px 5px;
border-radius: 3px;
cursor: pointer;
position: absolute;
}

.form-group .tooltip img {
height: 14px;
border: 1px solid #3f2b2b;
border-radius: 15px;
}

.form-group .tooltip:hover {
/*background: #005a8c;*/
}

/* Buttons */
button,
.button-primary,
.button-secondary {
padding: 10px 20px;
font-size: 1em;
border-radius: 4px;
border: none;
cursor: pointer;
}

.button-primary {
background-color: #0073aa;
color: #fff;
border: 1px solid #0073aa;
}

.button-primary:hover {
background-color: #005a8c;
}

.button-secondary {
background-color: #f1f1f1;
color: #333;
border: 1px solid #ddd;
}

.button-secondary:hover {
background-color: #e2e2e2;
}

/* Lists */
ul {
list-style: none;
padding: 0;
margin: 0;
}

ul li {
margin-bottom: 8px;
color: #555;
}

/* Hover Effects */
.block:hover {
box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
}

.alert {
padding: 10px;
border-radius: 4px;
margin-top: 25px;
font-size: 18px;
width: fit-content;
display: block;
}

.alert-success {
background-color: #d4edda;
color: #155724;
border: 1px solid #c3e6cb;
}

.alert-error {
background-color: #f8d7da;
color: #721c24;
border: 1px solid #f5c6cb;
}

.tooltip {
position: relative;
display: inline-block;
cursor: pointer;
color: #007bff;
/* Optional: Customize color */
font-weight: bold;
}

.tooltip .tooltiptext {
visibility: hidden;
width: 250px;
background-color: #555;
color: #fff;
text-align: center;
border-radius: 5px;
padding: 10px;
position: absolute;
z-index: 1;
bottom: 125%;
/* Position the tooltip above the icon */
left: 50%;
transform: translateX(-50%);
opacity: 0;
transition: opacity 0.3s;
}

.tooltip:hover .tooltiptext {
visibility: visible;
opacity: 1;
}
Empty file modified assets/img/alipay.png
100755 → 100644
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 621b4a0

Please sign in to comment.