Querying S3 users in WHMCS
You can display information and status of a user with the ostor-users service and parameter emailAddress specifying the user email address. WHMCS displays the user information fetched from S3 cluster when you click Query User (on/off). Create a file S3_queryUser.php with the following contents:
<?php
// Load configuration and libraries.
require('../../includes/staas_scripts/S3_getClient.php');
require('../../includes/staas_scripts/S3_getConfig.php');
require('../../includes/staas_scripts/S3_requestCurl.php');
require('../../init.php');
// Query s3 user.
function S3_queryUser($userid) {
// Hide now.
if ($_SESSION['s3_query_user'] == 1) {
// Hide.
$_SESSION['s3_query_user'] = 0;
// Redirect back.
header('Location: ' . $_SERVER['HTTP_REFERER']);
// Return immediately.
return;
}
// Load configuration.
$s3_config = s3_getConfig();
// Get whmcs user email.
$s3_whmcs = S3_getClient($userid, $s3_config['whmcs_username']);
// Get s3 user id.
$s3_client = S3_requestCurl(
$s3_config['s3_key'],
$s3_config['s3_secret'],
$s3_config['s3_gateway'],
"/?ostor-users&emailAddress=" . $s3_whmcs['email'],
"GET"
);
// Store s3 result.
$_SESSION['s3_query_user'] = 1;
$_SESSION['s3_userid'] = $s3_client['UserId'];
$_SESSION['s3_aws_access_keys'] = $s3_client['AWSAccessKeys'];
// Redirect back.
header('Location: ' . $_SERVER['HTTP_REFERER']);
}
// Call function.
S3_queryUser($_GET['userid']);
?>