mirror of
https://github.com/tuxis-ie/nsedit.git
synced 2025-04-19 20:09:14 +03:00
82 lines
2.1 KiB
PHP
82 lines
2.1 KiB
PHP
<?php
|
|
|
|
include_once('config.inc.php');
|
|
include_once('misc.inc.php');
|
|
|
|
/* This class is written by Wefact. See https://www.wefact.nl/wefact-hosting/apiv2/
|
|
*/
|
|
|
|
class WeFactAPI {
|
|
|
|
private $url;
|
|
private $responseType;
|
|
private $apiKey;
|
|
|
|
function __construct(){
|
|
global $wefactapiurl;
|
|
global $wefactapikey;
|
|
$this->url = $wefactapiurl;
|
|
$this->api_key = $wefactapikey;
|
|
}
|
|
|
|
public function sendRequest($controller, $action, $params){
|
|
|
|
if(is_array($params)){
|
|
$params['api_key'] = $this->api_key;
|
|
$params['controller'] = $controller;
|
|
$params['action'] = $action;
|
|
}
|
|
|
|
$ch = curl_init();
|
|
curl_setopt($ch,CURLOPT_URL, $this->url);
|
|
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
|
|
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
|
|
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
|
curl_setopt($ch, CURLOPT_TIMEOUT,'10');
|
|
curl_setopt($ch, CURLOPT_POST, 1);
|
|
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
|
|
$curlResp = curl_exec($ch);
|
|
$curlError = curl_error($ch);
|
|
|
|
if ($curlError != ''){
|
|
$result = array(
|
|
'controller' => 'invalid',
|
|
'action' => 'invalid',
|
|
'status' => 'error',
|
|
'date' => date('c'),
|
|
'errors' => array($curlError)
|
|
);
|
|
}else{
|
|
$result = json_decode($curlResp, true);
|
|
}
|
|
|
|
return $result;
|
|
}
|
|
}
|
|
|
|
|
|
function do_wefact_auth($u, $p) {
|
|
$wefact = new WeFactApi();
|
|
$r = $wefact->sendRequest('debtor', 'show', array(
|
|
'DebtorCode' => $u));
|
|
|
|
if (isset($r['status']) && $r['status'] == 'success') {
|
|
$r = $wefact->sendRequest('debtor', 'checklogin', array(
|
|
'Username' => $u,
|
|
'Password' => $p
|
|
));
|
|
|
|
if (isset($r['status']) && $r['status'] == 'success') {
|
|
if (get_user_info($u) == FALSE) {
|
|
add_user($u);
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
return FALSE;
|
|
} else {
|
|
return -1;
|
|
}
|
|
}
|
|
|
|
?>
|