Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NEW PayPlug Payment Module #74

Merged
merged 1 commit into from
Dec 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions htdocs/payplugdolicloud/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Generated binaries
/build/*.zip
/bin/*.zip
/bin
# Doxygen generated documentation
/build/doxygen/doxygen_warnings.log
/doc/code/doxygen
# Composer managed dependencies
/vendor
/dev/bin
# PHPdocumentor generated files
/build/phpdoc
/doc/code/phpdoc
# Sphinx generated files
/doc/user/build
/.settings/
/.buildpath
/.project
# Other
*.back
/.editorconfig
/.gitattributes
9 changes: 9 additions & 0 deletions htdocs/payplugdolicloud/.tx/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[main]
host = https://www.transifex.com
lang_map = uz: uz_UZ

[mymodule.mymodule]
file_filter = langs/<lang>/mymodule.lang
source_file = langs/en_US/mymodule.lang
source_lang = en_US
type = MOZILLAPROPERTIES
621 changes: 621 additions & 0 deletions htdocs/payplugdolicloud/COPYING

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions htdocs/payplugdolicloud/ChangeLog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# CHANGELOG MODULE PAYPLUGDOLICLOUD FOR [DOLIBARR ERP CRM](https://www.dolibarr.org)

## 1.0

Initial version
96 changes: 96 additions & 0 deletions htdocs/payplugdolicloud/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# PAYPLUGDOLICLOUD FOR [DOLIBARR ERP & CRM](https://www.dolibarr.org)

## Features

Provides a way to make an online checkout of any membership dues, donation, customer invoice or customer order with the PayPlug API.

<!--
![Screenshot payplugdolicloud](img/screenshot_payplugdolicloud.png?raw=true "PayplugDolicloud"){imgmd}
-->

Other external modules are available on [Dolistore.com](https://www.dolistore.com).

## Translations

Translations can be completed manually by editing files in the module directories under `langs`.

<!--
This module contains also a sample configuration for Transifex, under the hidden directory [.tx](.tx), so it is possible to manage translation using this service.

For more information, see the [translator's documentation](https://wiki.dolibarr.org/index.php/Translator_documentation).

There is a [Transifex project](https://transifex.com/projects/p/dolibarr-module-template) for this module.
-->


## Installation

Prerequisites: You must have the Dolibarr ERP CRM software installed. You can download it from [Dolibarr.org](https://www.dolibarr.org).
You can also get a ready to use instance in the cloud from [Dolicloud.com](https://www.dolicloud.com/fr/fr.php)


### From the ZIP file and GUI interface

If the module is a ready-to-deploy zip file, so with a name `module_xxx-version.zip` (e.g., when downloading it from a marketplace like [Dolistore](https://www.dolistore.com)),
go to menu `Home> Setup> Modules> Deploy external module` and upload the zip file.

Note: If this screen tells you that there is no "custom" directory, check that your setup is correct:

<!--

- In your Dolibarr installation directory, edit the `htdocs/conf/conf.php` file and check that following lines are not commented:

```php
//$dolibarr_main_url_root_alt ...
//$dolibarr_main_document_root_alt ...
```

- Uncomment them if necessary (delete the leading `//`) and assign the proper value according to your Dolibarr installation

For example :

- UNIX:
```php
$dolibarr_main_url_root_alt = '/custom';
$dolibarr_main_document_root_alt = '/var/www/Dolibarr/htdocs/custom';
```

- Windows:
```php
$dolibarr_main_url_root_alt = '/custom';
$dolibarr_main_document_root_alt = 'C:/My Web Sites/Dolibarr/htdocs/custom';
```
-->

<!--

### From a GIT repository

Clone the repository in `$dolibarr_main_document_root_alt/payplugdolicloud`

```shell
cd ....../custom
git clone [email protected]:gitlogin/payplugdolicloud.git payplugdolicloud
```

-->

### Final steps

Using your browser:

- Log into Dolibarr as a super-administrator
- Go to "Setup"> "Modules"
- You should now be able to find and enable the module



## Licenses

### Main code

GPLv3 or (at your option) any later version. See file COPYING for more information.

### Documentation

All texts and readme's are licensed under [GFDL](https://www.gnu.org/licenses/fdl-1.3.en.html).
118 changes: 118 additions & 0 deletions htdocs/payplugdolicloud/admin/about.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
<?php
/* Copyright (C) 2004-2017 Laurent Destailleur <[email protected]>
* Copyright (C) 2024 SuperAdmin <[email protected]>
* Copyright (C) 2024 Frédéric France <[email protected]>
*
* 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 3 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, see <https://www.gnu.org/licenses/>.
*/

/**
* \file payplugdolicloud/admin/about.php
* \ingroup payplugdolicloud
* \brief About page of module PayplugDolicloud.
*/

// Load Dolibarr environment
$res = 0;
// Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined)
if (!$res && !empty($_SERVER["CONTEXT_DOCUMENT_ROOT"])) {
$res = @include $_SERVER["CONTEXT_DOCUMENT_ROOT"]."/main.inc.php";
}
// Try main.inc.php into web root detected using web root calculated from SCRIPT_FILENAME
$tmp = empty($_SERVER['SCRIPT_FILENAME']) ? '' : $_SERVER['SCRIPT_FILENAME'];
$tmp2 = realpath(__FILE__);
$i = strlen($tmp) - 1;
$j = strlen($tmp2) - 1;
while ($i > 0 && $j > 0 && isset($tmp[$i]) && isset($tmp2[$j]) && $tmp[$i] == $tmp2[$j]) {
$i--;
$j--;
}
if (!$res && $i > 0 && file_exists(substr($tmp, 0, ($i + 1))."/main.inc.php")) {
$res = @include substr($tmp, 0, ($i + 1))."/main.inc.php";
}
if (!$res && $i > 0 && file_exists(dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php")) {
$res = @include dirname(substr($tmp, 0, ($i + 1)))."/main.inc.php";
}
// Try main.inc.php using relative path
if (!$res && file_exists("../../main.inc.php")) {
$res = @include "../../main.inc.php";
}
if (!$res && file_exists("../../../main.inc.php")) {
$res = @include "../../../main.inc.php";
}
if (!$res) {
die("Include of main fails");
}

// Libraries
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
require_once '../lib/payplugdolicloud.lib.php';

/**
* @var Conf $conf
* @var DoliDB $db
* @var HookManager $hookmanager
* @var Translate $langs
* @var User $user
*/

// Translations
$langs->loadLangs(array("errors", "admin", "payplugdolicloud@payplugdolicloud"));

// Access control
if (!$user->admin) {
accessforbidden();
}

// Parameters
$action = GETPOST('action', 'aZ09');
$backtopage = GETPOST('backtopage', 'alpha');


/*
* Actions
*/

// None


/*
* View
*/

$form = new Form($db);

$help_url = '';
$title = "PayplugDolicloudSetup";

llxHeader('', $langs->trans($title), $help_url, '', 0, 0, '', '', '', 'mod-payplugdolicloud page-admin_about');

// Subheader
$linkback = '<a href="'.($backtopage ? $backtopage : DOL_URL_ROOT.'/admin/modules.php?restore_lastsearch_values=1').'">'.$langs->trans("BackToModuleList").'</a>';

print load_fiche_titre($langs->trans($title), $linkback, 'title_setup');

// Configuration header
$head = payplugdolicloudAdminPrepareHead();
print dol_get_fiche_head($head, 'about', $langs->trans($title), 0, 'payplugdolicloud@payplugdolicloud');

dol_include_once('/payplugdolicloud/core/modules/modPayplugDolicloud.class.php');
$tmpmodule = new modPayplugDolicloud($db);
print $tmpmodule->getDescLong();

// Page end
print dol_get_fiche_end();
llxFooter();
$db->close();
Loading
Loading