Compare commits
4 Commits
677bc136d8
...
d73e043b4e
| Author | SHA1 | Date | |
|---|---|---|---|
| d73e043b4e | |||
| 2247e5eb3a | |||
| 5680845ed3 | |||
| 3dcf91bd7e |
@@ -0,0 +1,10 @@
|
||||
#ifndef __mx_providers_h__
|
||||
#define __mx_providers_h__
|
||||
|
||||
#include "vars.h"
|
||||
|
||||
long providers_call(CVars in, CVars &out) ;
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
@@ -13,69 +13,28 @@ main entry point for API calls Chiefsoft July 2017 */
|
||||
#include "stripe_charge.h"
|
||||
#include "medTEmails.h"
|
||||
#include "medTUpload.h"
|
||||
#include "providers.h"
|
||||
|
||||
long mermsemr_api_main(CVars in, CVars &out)
|
||||
{
|
||||
logfmt( logINFO, "long mermsemr_api_main(CVars in, CVars &out)");
|
||||
|
||||
long mermsemr_api_main(CVars in, CVars &out) {
|
||||
logfmt(logINFO, "long mermsemr_api_main(CVars in, CVars &out)");
|
||||
long retval = PHP_API_BAD_PARAM;
|
||||
long action = REQ_LONG( in, "action", 0, -1);
|
||||
REQ_LONG( in, "pid", 0, -1); // global implementation - who is calling
|
||||
try
|
||||
{
|
||||
if ( action == MEDTRANS_UPLOADS )
|
||||
{
|
||||
return medtrans_upload(in, out);
|
||||
}
|
||||
if ( action == MEDTRANS_DOWNLOAD )
|
||||
{
|
||||
return medtrans_download(in, out);
|
||||
}
|
||||
|
||||
|
||||
if ( action >=MEDTRANS_BKO_START && action <=MEDTRANS_BKO_END )
|
||||
{
|
||||
return backoffice_calls(in, out);
|
||||
}
|
||||
|
||||
if ( action >=MEDTRANS_USER_START && action <=MEDTRANS_USER_END )
|
||||
{
|
||||
return members_call(in, out);
|
||||
}
|
||||
long action = REQ_LONG(in, "action", 0, -1);
|
||||
//REQ_LONG( in, "pid", 0, -1); // global implementation - who is calling
|
||||
try {
|
||||
|
||||
if ( action >=MEDTRANS_INTERP_START && action <=MEDTRANS_INTERP_END )
|
||||
{
|
||||
}
|
||||
|
||||
if ( action >=MEDTRANS_TRANSP_START && action <=MEDTRANS_TRANSP_END )
|
||||
{
|
||||
return trasnporter_call(in, out);
|
||||
}
|
||||
|
||||
if ( action >=MEDTRANS_CRON_START && action <=MEDTRANS_CRON_END )
|
||||
{
|
||||
return cron_call(in, out);
|
||||
}
|
||||
|
||||
|
||||
if ( action == MEDTRANS_STRIPE_CHARGE_ONE )
|
||||
{
|
||||
return stripe_one_time_charge(in, out);
|
||||
}
|
||||
if ( action == MEDTRANS_STRIPE_CHARGE_NEW )
|
||||
{
|
||||
return stripe_new_customer_charge(in, out);
|
||||
}
|
||||
if ( action == MEDTRANS_EMAIL_TEST )
|
||||
{
|
||||
return email_test(in, out);
|
||||
}
|
||||
|
||||
}
|
||||
catch (bad_parameter) {
|
||||
logfmt( logINFO, "ERROR CALL long mermsemr_api_main(CVars in, CVars &out)");
|
||||
}
|
||||
return retval;
|
||||
|
||||
if (action >= MERMS_PROVIDERS_START && action <= MERMS_PROVIDERS_END) {
|
||||
return providers_call(in, out);
|
||||
}
|
||||
|
||||
|
||||
|
||||
} catch (bad_parameter) {
|
||||
logfmt(logINFO, "ERROR CALL long mermsemr_api_main(CVars in, CVars &out)");
|
||||
}
|
||||
return retval;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
// Topup management toosl
|
||||
#include "clog.h"
|
||||
#include "cgi.h"
|
||||
#include "input.h"
|
||||
#include "mermsemr_api.h"
|
||||
#include "safestring.h"
|
||||
#include <string>
|
||||
#include "pgsql.h"
|
||||
#include "pgsql_wrapper.h"
|
||||
#include <curl/curl.h>
|
||||
#include "medTEmails.h"
|
||||
|
||||
/* -- */
|
||||
#include "function_members.h"
|
||||
#include "providers.h"
|
||||
#include "function_members.h"
|
||||
|
||||
|
||||
|
||||
|
||||
long providers_call(CVars in, CVars &out) {
|
||||
long ret = PHP_API_BAD_PARAM;
|
||||
char vname[20];
|
||||
logfmt(logINFO, "ERROR CALL long providers_call(CVars in, CVars &out)");
|
||||
try {
|
||||
REQ_LONG(in, "action", 0, -1);
|
||||
|
||||
switch (in["action"].Long()) {
|
||||
|
||||
case MERMS_PROVIDERS_LOGIN:
|
||||
|
||||
REQ_STRING(in, "cardnumber", 10, 17, "(.*)");
|
||||
REQ_LONG(in, "exp_month", 0, -1);
|
||||
REQ_LONG(in, "exp_year", 0, -1);
|
||||
REQ_LONG(in, "cvc", 0, -1);
|
||||
|
||||
ret = PHP_API_OK;
|
||||
break;
|
||||
|
||||
case EXISTING_CARD:
|
||||
REQ_LONG(in, "paymentid", 0, -1); // now we have to make sure the payment id is valid for this customer
|
||||
|
||||
break;
|
||||
|
||||
|
||||
|
||||
case INVOICED:
|
||||
const PGresult *res = pgsql_query("SELECT * FROM members WHERE invoiced =1 AND id=%lu", in["member_id"].Long());
|
||||
if (res != NULL && pgsql_num_rows(res) > 0) {
|
||||
ret = PHP_API_OK;
|
||||
} else {
|
||||
out["error_status"] = "user not authorized to use invoice";
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
} catch (bad_parameter) {
|
||||
logfmt(logINFO, "ERROR CALL long providers_call(CVars in, CVars &out)");
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
<?
|
||||
// USERS
|
||||
define('MERMS_USER_BEFORESESSION', 120001);
|
||||
define('MERMS_USER_CREATEACCOUNT', 120001);
|
||||
define('MERMS_USER_RESETPASSWORD', 120001);
|
||||
define('MERMS_USER_LOGIN', 120001);
|
||||
define('MERMS_USER_DASHLOAD', 120001);
|
||||
define('MERMS_USER_LOADPROFILE', 120001);
|
||||
define('MERMS_USER_UPDATEPROFILE', 120001);
|
||||
define('MERMS_USER_REMINDERS', 120001);
|
||||
//define('', 120001);
|
||||
//define('', 120001);
|
||||
|
||||
// PROVIDERS
|
||||
define('MERMS_PROVIDERS_BEFORESESSION', 150010);
|
||||
define('MERMS_PROVIDERS_CREATEACCOUNT', 150015);
|
||||
define('MERMS_PROVIDERS_RESETPASSWORD', 150010);
|
||||
define('MERMS_PROVIDERS_LOGIN', 150025);
|
||||
define('MERMS_PROVIDERS_DASHLOAD', 150010);
|
||||
define('MERMS_PROVIDERS_LOADPROFILE', 150010);
|
||||
define('MERMS_PROVIDERS_UPDATEPROFILE', 150010);
|
||||
define('MERMS_PROVIDERS_REMINDERS', 150010);
|
||||
//define('', 120001);
|
||||
|
||||
|
||||
/*
|
||||
|
||||
|
||||
|
||||
|
||||
// USERS
|
||||
#define MERMS_USER_START 120000
|
||||
// //--
|
||||
#define MERMS_USER_BEFORESESSION 120010
|
||||
#define MERMS_USER_CREATEACCOUNT 120015
|
||||
#define MERMS_USER_RESETPASSWORD 120020
|
||||
#define MERMS_USER_LOGIN 120025
|
||||
#define MERMS_USER_DASHLOAD 120030
|
||||
#define MERMS_USER_LOADPROFILE 120035
|
||||
#define MERMS_USER_UPDATEPROFILE 120040
|
||||
#define MERMS_USER_REMINDERS 120045
|
||||
// //#define 120001
|
||||
// //#define 120001
|
||||
// //--
|
||||
#define MERMS_USER_END 129999
|
||||
//
|
||||
// // PROVIDERS
|
||||
#define MERMS_PROVIDERS_START 150000
|
||||
// // --
|
||||
#define MERMS_PROVIDERS_BEFORESESSION 150010
|
||||
#define MERMS_PROVIDERS_CREATEACCOUNT 150015
|
||||
#define MERMS_PROVIDERS_RESETPASSWORD 150020
|
||||
#define MERMS_PROVIDERS_LOGIN 150025
|
||||
#define MERMS_PROVIDERS_DASHLOAD 150030
|
||||
#define MERMS_PROVIDERS_LOADPROFILE 150035
|
||||
#define MERMS_PROVIDERS_UPDATEPROFILE 150040
|
||||
#define MERMS_PROVIDERS_REMINDERS 150045
|
||||
// //#define 120001
|
||||
// // --
|
||||
#define MERMS_PROVIDERS_END 159999
|
||||
//
|
||||
|
||||
*/
|
||||
@@ -83,3 +83,7 @@ defined('EXIT_USER_INPUT') OR define('EXIT_USER_INPUT', 7); // invalid user
|
||||
defined('EXIT_DATABASE') OR define('EXIT_DATABASE', 8); // database error
|
||||
defined('EXIT__AUTO_MIN') OR define('EXIT__AUTO_MIN', 9); // lowest automatically-assigned error code
|
||||
defined('EXIT__AUTO_MAX') OR define('EXIT__AUTO_MAX', 125); // highest automatically-assigned error code
|
||||
|
||||
|
||||
|
||||
include 'backend_defines.php';
|
||||
@@ -50,10 +50,10 @@ class MER_Controller extends CI_Controller {
|
||||
// $this->load->library(array('session', 'lib_login'));
|
||||
}
|
||||
|
||||
public function wrenchboard_api($in, $out) {
|
||||
public function mermsemr_api($in, $out) {
|
||||
$this->load->model('backend_model');
|
||||
// $out = array();
|
||||
return $this->backend_model->wrenchboard_api($in, $out);
|
||||
return $this->backend_model->mermsemr_api($in, $out);
|
||||
}
|
||||
|
||||
protected function smart_htmlspecialchars($str) {
|
||||
@@ -64,6 +64,16 @@ class MER_Controller extends CI_Controller {
|
||||
|
||||
|
||||
protected function loginUser($in, $out) {
|
||||
|
||||
$data['action'] = MERMS_PROVIDERS_LOGIN;
|
||||
$data['mlog'] = $mlog;
|
||||
$data['member_id'] = $_SESSION['member_id'];
|
||||
$this->load->model('backend_model');
|
||||
$out = array();
|
||||
$res = $this->backend_model->mermsemr_api($data, $out);
|
||||
|
||||
|
||||
|
||||
$_SESSION['session_id'] = "SASAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK";
|
||||
$_SESSION['username'] = "ameye";
|
||||
|
||||
@@ -111,7 +121,7 @@ class MER_Controller extends CI_Controller {
|
||||
$data['member_id'] = $_SESSION['member_id'];
|
||||
$this->load->model('backend_model');
|
||||
$out = array();
|
||||
$res = $this->backend_model->wrenchboard_api($data, $out);
|
||||
$res = $this->backend_model->mermsemr_api($data, $out);
|
||||
|
||||
$this->load->model('userlog_model');
|
||||
$xy["member_id"] = $_SESSION['member_id'];
|
||||
@@ -230,42 +240,7 @@ class MER_Controller extends CI_Controller {
|
||||
return $query->result();
|
||||
}
|
||||
|
||||
protected function getClientJobStats($client_id) {
|
||||
$out = array();
|
||||
$out['total_jobs_completed'] = $out['total_jobs_active'] = $data['total_jobs_uncompleted'] = 0;
|
||||
$out['total_pending_offers'] = 0;
|
||||
|
||||
$mysql = " SELECT count(*) AS total_jobs_completed FROM members_jobs_contract WHERE client_id =$client_id AND status = 5";
|
||||
$q = $this->db->query($mysql);
|
||||
if ($q->num_rows() > 0) {
|
||||
$out['total_jobs_completed'] = $q->row()->total_jobs_completed;
|
||||
}
|
||||
|
||||
|
||||
$mysql = " SELECT count(*) AS total_jobs_active FROM members_jobs_contract WHERE client_id =$client_id AND status IN (1,2)";
|
||||
$q = $this->db->query($mysql);
|
||||
if ($q->num_rows() > 0) {
|
||||
$out['total_jobs_active'] = $q->row()->total_jobs_active;
|
||||
}
|
||||
|
||||
|
||||
$mysql = " SELECT count(*) AS total_jobs_uncompleted FROM members_jobs_contract WHERE client_id =$client_id AND status NOT IN (1,2,5)";
|
||||
$q = $this->db->query($mysql);
|
||||
if ($q->num_rows() > 0) {
|
||||
$out['total_jobs_uncompleted'] = $q->row()->total_jobs_uncompleted;
|
||||
}
|
||||
|
||||
$mysql = " SELECT count(*) AS total_pending_offers FROM members_jobs_offer WHERE client_id =$client_id AND status=1";
|
||||
$q = $this->db->query($mysql);
|
||||
if ($q->num_rows() > 0) {
|
||||
$out['total_pending_offers'] = $q->row()->total_pending_offers;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return $out; //['escrow_c_offer'] + $out['escrow_balance'];
|
||||
}
|
||||
|
||||
protected function renderProviderSecurePage($page_name, $data) {
|
||||
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
class Backend_model extends CI_Model {
|
||||
|
||||
var $thisUser = 'sameye';
|
||||
var $USER = '';
|
||||
var $mermsemr;
|
||||
|
||||
function __construct() {
|
||||
|
||||
$this->USER = $_SERVER['SCRIPT_FILENAME'];
|
||||
$this->USER = str_replace('/home', '', $this->USER);
|
||||
$this->USER = strtok($this->USER, '/');
|
||||
if ($this->USER == 'opt') {
|
||||
$this->USER = 'root';
|
||||
}
|
||||
$this->thisUser = $this->USER;
|
||||
}
|
||||
|
||||
public function mermsemr_api($in, $out = array()) {
|
||||
$this->mermsemr_load();
|
||||
$ret = $this->mermsemr->mermsemr_api($in, $out);
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public function cfgReadChar($str) {
|
||||
$this->wrenchboard_load();
|
||||
$ret = $this->mermsemr->cfgReadChar($str);
|
||||
return $ret;
|
||||
}
|
||||
|
||||
private function mermsemr_load() {
|
||||
// $this->$USER = $_SERVER['SCRIPT_FILENAME'];
|
||||
$mermsemr_class = 'mermsemr_api_' . $this->USER . '\\MermsEmr';
|
||||
if (!is_object($this->mermsemr)) {
|
||||
$this->mermsemr = new $mermsemr_class();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//<? if (!array_key_exists("mermsemr", $GLOBALS)) $mermsemr = new mermsemr_api_sameye\MermsEmr(); ?>
|
||||
Reference in New Issue
Block a user