Skip to content

Commit

Permalink
Merge pull request #74 from Daoud-mohamed/new-payplug-module
Browse files Browse the repository at this point in the history
NEW PayPlug Payment Module
  • Loading branch information
eldy authored Dec 4, 2024
2 parents 7b76253 + 77ab132 commit 969f633
Show file tree
Hide file tree
Showing 17 changed files with 3,335 additions and 0 deletions.
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

0 comments on commit 969f633

Please sign in to comment.