mirror of
https://github.com/kikobar/hikashoppayment-triplea.git
synced 2025-04-19 20:05:56 +00:00
Compare commits
6 commits
v1.0.0-alp
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
cc04fbaeff | ||
|
754bbe913f | ||
|
cb65f161e0 | ||
|
35ad4c8f01 | ||
|
22ae8137ac | ||
|
c2213d53ca |
38
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
38
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
---
|
||||||
|
name: Bug report
|
||||||
|
about: Create a report to help us improve
|
||||||
|
title: ''
|
||||||
|
labels: ''
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Describe the bug**
|
||||||
|
A clear and concise description of what the bug is.
|
||||||
|
|
||||||
|
**To Reproduce**
|
||||||
|
Steps to reproduce the behavior:
|
||||||
|
1. Go to '...'
|
||||||
|
2. Click on '....'
|
||||||
|
3. Scroll down to '....'
|
||||||
|
4. See error
|
||||||
|
|
||||||
|
**Expected behavior**
|
||||||
|
A clear and concise description of what you expected to happen.
|
||||||
|
|
||||||
|
**Screenshots**
|
||||||
|
If applicable, add screenshots to help explain your problem.
|
||||||
|
|
||||||
|
**Desktop (please complete the following information):**
|
||||||
|
- OS: [e.g. iOS]
|
||||||
|
- Browser [e.g. chrome, safari]
|
||||||
|
- Version [e.g. 22]
|
||||||
|
|
||||||
|
**Smartphone (please complete the following information):**
|
||||||
|
- Device: [e.g. iPhone6]
|
||||||
|
- OS: [e.g. iOS8.1]
|
||||||
|
- Browser [e.g. stock browser, safari]
|
||||||
|
- Version [e.g. 22]
|
||||||
|
|
||||||
|
**Additional context**
|
||||||
|
Add any other context about the problem here.
|
20
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
20
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
name: Feature request
|
||||||
|
about: Suggest an idea for this project
|
||||||
|
title: ''
|
||||||
|
labels: ''
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Is your feature request related to a problem? Please describe.**
|
||||||
|
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||||
|
|
||||||
|
**Describe the solution you'd like**
|
||||||
|
A clear and concise description of what you want to happen.
|
||||||
|
|
||||||
|
**Describe alternatives you've considered**
|
||||||
|
A clear and concise description of any alternative solutions or features you've considered.
|
||||||
|
|
||||||
|
**Additional context**
|
||||||
|
Add any other context or screenshots about the feature request here.
|
128
CODE_OF_CONDUCT.md
Normal file
128
CODE_OF_CONDUCT.md
Normal file
|
@ -0,0 +1,128 @@
|
||||||
|
# Contributor Covenant Code of Conduct
|
||||||
|
|
||||||
|
## Our Pledge
|
||||||
|
|
||||||
|
We as members, contributors, and leaders pledge to make participation in our
|
||||||
|
community a harassment-free experience for everyone, regardless of age, body
|
||||||
|
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||||
|
identity and expression, level of experience, education, socio-economic status,
|
||||||
|
nationality, personal appearance, race, religion, or sexual identity
|
||||||
|
and orientation.
|
||||||
|
|
||||||
|
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||||
|
diverse, inclusive, and healthy community.
|
||||||
|
|
||||||
|
## Our Standards
|
||||||
|
|
||||||
|
Examples of behavior that contributes to a positive environment for our
|
||||||
|
community include:
|
||||||
|
|
||||||
|
* Demonstrating empathy and kindness toward other people
|
||||||
|
* Being respectful of differing opinions, viewpoints, and experiences
|
||||||
|
* Giving and gracefully accepting constructive feedback
|
||||||
|
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||||
|
and learning from the experience
|
||||||
|
* Focusing on what is best not just for us as individuals, but for the
|
||||||
|
overall community
|
||||||
|
|
||||||
|
Examples of unacceptable behavior include:
|
||||||
|
|
||||||
|
* The use of sexualized language or imagery, and sexual attention or
|
||||||
|
advances of any kind
|
||||||
|
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||||
|
* Public or private harassment
|
||||||
|
* Publishing others' private information, such as a physical or email
|
||||||
|
address, without their explicit permission
|
||||||
|
* Other conduct which could reasonably be considered inappropriate in a
|
||||||
|
professional setting
|
||||||
|
|
||||||
|
## Enforcement Responsibilities
|
||||||
|
|
||||||
|
Community leaders are responsible for clarifying and enforcing our standards of
|
||||||
|
acceptable behavior and will take appropriate and fair corrective action in
|
||||||
|
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||||
|
or harmful.
|
||||||
|
|
||||||
|
Community leaders have the right and responsibility to remove, edit, or reject
|
||||||
|
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||||
|
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||||
|
decisions when appropriate.
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
This Code of Conduct applies within all community spaces, and also applies when
|
||||||
|
an individual is officially representing the community in public spaces.
|
||||||
|
Examples of representing our community include using an official e-mail address,
|
||||||
|
posting via an official social media account, or acting as an appointed
|
||||||
|
representative at an online or offline event.
|
||||||
|
|
||||||
|
## Enforcement
|
||||||
|
|
||||||
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||||
|
reported to the community leaders responsible for enforcement at
|
||||||
|
info@smt-acc.com.
|
||||||
|
All complaints will be reviewed and investigated promptly and fairly.
|
||||||
|
|
||||||
|
All community leaders are obligated to respect the privacy and security of the
|
||||||
|
reporter of any incident.
|
||||||
|
|
||||||
|
## Enforcement Guidelines
|
||||||
|
|
||||||
|
Community leaders will follow these Community Impact Guidelines in determining
|
||||||
|
the consequences for any action they deem in violation of this Code of Conduct:
|
||||||
|
|
||||||
|
### 1. Correction
|
||||||
|
|
||||||
|
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||||
|
unprofessional or unwelcome in the community.
|
||||||
|
|
||||||
|
**Consequence**: A private, written warning from community leaders, providing
|
||||||
|
clarity around the nature of the violation and an explanation of why the
|
||||||
|
behavior was inappropriate. A public apology may be requested.
|
||||||
|
|
||||||
|
### 2. Warning
|
||||||
|
|
||||||
|
**Community Impact**: A violation through a single incident or series
|
||||||
|
of actions.
|
||||||
|
|
||||||
|
**Consequence**: A warning with consequences for continued behavior. No
|
||||||
|
interaction with the people involved, including unsolicited interaction with
|
||||||
|
those enforcing the Code of Conduct, for a specified period of time. This
|
||||||
|
includes avoiding interactions in community spaces as well as external channels
|
||||||
|
like social media. Violating these terms may lead to a temporary or
|
||||||
|
permanent ban.
|
||||||
|
|
||||||
|
### 3. Temporary Ban
|
||||||
|
|
||||||
|
**Community Impact**: A serious violation of community standards, including
|
||||||
|
sustained inappropriate behavior.
|
||||||
|
|
||||||
|
**Consequence**: A temporary ban from any sort of interaction or public
|
||||||
|
communication with the community for a specified period of time. No public or
|
||||||
|
private interaction with the people involved, including unsolicited interaction
|
||||||
|
with those enforcing the Code of Conduct, is allowed during this period.
|
||||||
|
Violating these terms may lead to a permanent ban.
|
||||||
|
|
||||||
|
### 4. Permanent Ban
|
||||||
|
|
||||||
|
**Community Impact**: Demonstrating a pattern of violation of community
|
||||||
|
standards, including sustained inappropriate behavior, harassment of an
|
||||||
|
individual, or aggression toward or disparagement of classes of individuals.
|
||||||
|
|
||||||
|
**Consequence**: A permanent ban from any sort of public interaction within
|
||||||
|
the community.
|
||||||
|
|
||||||
|
## Attribution
|
||||||
|
|
||||||
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||||
|
version 2.0, available at
|
||||||
|
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||||
|
|
||||||
|
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||||
|
enforcement ladder](https://github.com/mozilla/diversity).
|
||||||
|
|
||||||
|
[homepage]: https://www.contributor-covenant.org
|
||||||
|
|
||||||
|
For answers to common questions about this code of conduct, see the FAQ at
|
||||||
|
https://www.contributor-covenant.org/faq. Translations are available at
|
||||||
|
https://www.contributor-covenant.org/translations.
|
|
@ -57,6 +57,7 @@ patent must be licensed for everyone's free use or not licensed at all.
|
||||||
modification follow.
|
modification follow.
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
GNU GENERAL PUBLIC LICENSE
|
||||||
|
|
||||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||||
|
|
||||||
0. This License applies to any program or other work which contains
|
0. This License applies to any program or other work which contains
|
||||||
|
@ -337,4 +338,3 @@ proprietary programs. If your program is a subroutine library, you may
|
||||||
consider it more useful to permit linking proprietary applications with the
|
consider it more useful to permit linking proprietary applications with the
|
||||||
library. If this is what you want to do, use the GNU Lesser General
|
library. If this is what you want to do, use the GNU Lesser General
|
||||||
Public License instead of this License.
|
Public License instead of this License.
|
||||||
|
|
23
README.md
23
README.md
|
@ -3,17 +3,38 @@
|
||||||
TripleA payment plugin for HikaShop (open source e-commerce solution for Joomla).
|
TripleA payment plugin for HikaShop (open source e-commerce solution for Joomla).
|
||||||
|
|
||||||
## Initial development
|
## Initial development
|
||||||
|
|
||||||
Smart Accounts ( https://www.smt-acc.com )
|
Smart Accounts ( https://www.smt-acc.com )
|
||||||
|
|
||||||
## Maintainer and fixes
|
## Maintainer and fixes
|
||||||
|
|
||||||
Smart Accounts ( https://www.smt-acc.com )
|
Smart Accounts ( https://www.smt-acc.com )
|
||||||
|
|
||||||
## More details
|
## More details
|
||||||
**This version of the code is work-in-progress and should not be use in any production site.**
|
|
||||||
|
**This version of the code is released for testing. Use carefully on production sites.**
|
||||||
At this stage the plugin is able to accept payments, but cannot receive payment notifications or process refunds.
|
At this stage the plugin is able to accept payments, but cannot receive payment notifications or process refunds.
|
||||||
|
|
||||||
The TripleA Cryptocurrency Payments API is documented here:
|
The TripleA Cryptocurrency Payments API is documented here:
|
||||||
( https://doc.triple-a.io/ )
|
( https://doc.triple-a.io/ )
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
hikashoppayment-triplea - TripleA payment plugin for HikaShop.
|
||||||
|
Copyright (C) 2021 Enrique Barcelli.
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License along
|
||||||
|
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
GNU/GPL v2 ( http://www.gnu.org/licenses/gpl-2.0.html )
|
GNU/GPL v2 ( http://www.gnu.org/licenses/gpl-2.0.html )
|
||||||
|
|
15
SECURITY.md
Normal file
15
SECURITY.md
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
# Security Policy
|
||||||
|
|
||||||
|
## Supported Versions
|
||||||
|
|
||||||
|
| Version | Supported |
|
||||||
|
| ------- | --------- |
|
||||||
|
| 1.1.x | :heavy_check_mark: |
|
||||||
|
| 1.0.x | :x: |
|
||||||
|
|
||||||
|
## Reporting
|
||||||
|
|
||||||
|
We take Security seriously, so if you have discovered a security risk report it by email to info@smt-acc.com. Our team will assess and handle it accordingly. Please don't disclose security risks publicly until they have been handled by our team.
|
||||||
|
|
||||||
|
Your email will be acknowledged within 24 hours, and you will receive a more detailed email response about the actions to be taken to handle your report within 1 week.
|
||||||
|
|
|
@ -26,6 +26,23 @@ class plgHikashoppaymentTriplea extends hikashopPaymentPlugin{
|
||||||
function onAfterOrderConfirm(&$order,&$methods,$method_id){
|
function onAfterOrderConfirm(&$order,&$methods,$method_id){
|
||||||
parent::onAfterOrderConfirm($order, $methods, $method_id);
|
parent::onAfterOrderConfirm($order, $methods, $method_id);
|
||||||
|
|
||||||
|
$tacart = array();
|
||||||
|
foreach($order->cart->products as $v) {
|
||||||
|
$temp = array();
|
||||||
|
$temp['sku'] = $v->product_id;
|
||||||
|
$temp['label'] = $v->order_product_name;
|
||||||
|
$temp['quantity'] = (float)$v->order_product_quantity;
|
||||||
|
$temp['amount'] = ((float)$v->order_product_price+(float)$v->order_product_tax)*$temp['quantity'];
|
||||||
|
$tacart[] = $temp;
|
||||||
|
};
|
||||||
|
$tacart = array(
|
||||||
|
"items"=>$tacart,
|
||||||
|
"shipping_cost"=>$order->order_shipping_price, //includes tax
|
||||||
|
"shipping_discount"=>$order->order_discount_price, //includes tax
|
||||||
|
"tax_cost"=>0); //tax included above
|
||||||
|
$tacart = json_encode($tacart);
|
||||||
|
// var_dump($tacart); //debug only
|
||||||
|
|
||||||
$payment_url = $this->payment_params->url.'/payment';
|
$payment_url = $this->payment_params->url.'/payment';
|
||||||
|
|
||||||
$curl = curl_init();
|
$curl = curl_init();
|
||||||
|
@ -44,6 +61,7 @@ class plgHikashoppaymentTriplea extends hikashopPaymentPlugin{
|
||||||
"merchant_key": "'.$this->payment_params->merchant_key.'",
|
"merchant_key": "'.$this->payment_params->merchant_key.'",
|
||||||
"order_currency": "'.$this->currency->currency_code.'",
|
"order_currency": "'.$this->currency->currency_code.'",
|
||||||
"order_amount": '.$order->order_full_price.',
|
"order_amount": '.$order->order_full_price.',
|
||||||
|
"cart": '.$tacart.',
|
||||||
"payer_id": "'.(string)$order->order_user_id.'",
|
"payer_id": "'.(string)$order->order_user_id.'",
|
||||||
"payer_name": "'.$order->cart->billing_address->address_firstname.' '.$order->cart->billing_address->address_lastname.'",
|
"payer_name": "'.$order->cart->billing_address->address_firstname.' '.$order->cart->billing_address->address_lastname.'",
|
||||||
"payer_email": "'.$this->user->user_email.'",
|
"payer_email": "'.$this->user->user_email.'",
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<extension type="plugin" version="2.5" method="upgrade" group="hikashoppayment">
|
<extension type="plugin" version="2.5" method="upgrade" group="hikashoppayment">
|
||||||
<name>Hikashop TripleA Payment Plugin</name>
|
<name>Hikashop TripleA Payment Plugin</name>
|
||||||
<creationDate>10 July 2021</creationDate>
|
<creationDate>31 July 2021</creationDate>
|
||||||
<version>1.0.0</version>
|
<version>1.1.1</version>
|
||||||
<author>Enrique Barcelli</author>
|
<author>Enrique Barcelli</author>
|
||||||
<authorEmail>e.barcelli@gmail.com</authorEmail>
|
<authorEmail>e.barcelli@gmail.com</authorEmail>
|
||||||
<authorUrl>http://www.smt-acc.com</authorUrl>
|
<authorUrl>http://www.smt-acc.com</authorUrl>
|
||||||
|
@ -11,7 +11,6 @@
|
||||||
<description>This plugin enables you to setup your TripleA payment system</description>
|
<description>This plugin enables you to setup your TripleA payment system</description>
|
||||||
<files>
|
<files>
|
||||||
<filename plugin="triplea">triplea.php</filename>
|
<filename plugin="triplea">triplea.php</filename>
|
||||||
<filename>triplea_end.php</filename>
|
|
||||||
</files>
|
</files>
|
||||||
<params addpath="/components/com_hikashop/params">
|
<params addpath="/components/com_hikashop/params">
|
||||||
<param name="pluginoptions" type="pluginoptions" default="plugin" label="hikashop" description="HikaShop options" />
|
<param name="pluginoptions" type="pluginoptions" default="plugin" label="hikashop" description="HikaShop options" />
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
<?php
|
|
||||||
defined('_JEXEC') or die('Restricted access');
|
|
||||||
?><div class="hikashop_triplea_end" id="hikashop_triplea_end">
|
|
||||||
<form id="hikashop_triplea_form" name="hikashop_triplea_form" action="<?php echo $this->payment_params->url;?>" method="post">
|
|
||||||
<div id="hikashop_triplea_end_image" class="hikashop_triplea_end_image">
|
|
||||||
<input id="hikashop_triplea_button" type="submit" class="btn btn-primary" value="<?php echo JText::_('PAY_NOW');?>" name="" alt="<?php echo JText::_('PAY_NOW');?>" />
|
|
||||||
</div>
|
|
||||||
<?php
|
|
||||||
foreach( $this->vars as $name => $value ) {
|
|
||||||
echo '<input type="hidden" name="'.$name.'" value="'.htmlspecialchars((string)$value).'" />';
|
|
||||||
}
|
|
||||||
$doc = JFactory::getDocument();
|
|
||||||
$doc->addScriptDeclaration("window.hikashop.ready( function() {document.getElementById('hikashop_triplea_form').submit();});");
|
|
||||||
JRequest::setVar('noform',1);
|
|
||||||
?>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
Loading…
Reference in a new issue