common_cadline_libraries (CRM hardlock/db/users classes; upstream cadline_web/cadcommonlib), maintenance/ (ARCHLine.XP license backend; upstream cadline_web/maintenance), maintenance2/. Vetted live files (byte-truth); upstream repos in PROVENANCE.md. NOTE: could be git submodules — kept as live files for byte-fidelity. Signed-off-by: LÁZÁR Imre <imre@illusion.hu> Assisted-by: claude-code@claude-opus-4-8
40 lines
1.7 KiB
PHP
40 lines
1.7 KiB
PHP
<?php
|
|
header("Access-Control-Allow-Origin: *");
|
|
|
|
if (!class_exists('crm_hardlock')) require_once("common_cadline_libraries/crm_hardlock.class.php");
|
|
|
|
$serials = "'" . implode("', '", $_POST['serials']) . "'";
|
|
|
|
$query = "SELECT p.prPass AS prPass, p.prVerID AS prVerID, h.hlLan AS hlLan, p.prTypeID AS prTypeID,
|
|
p.prFizetve AS prFizetve, p.prActCode AS prActCode, h.isFloating AS isFloating
|
|
FROM cl_hlusers.h_programs p
|
|
LEFT JOIN cl_hlusers.hardlock h ON h.hlNum = p.prHlNum
|
|
WHERE p.prPass IN ({$serials})
|
|
GROUP BY p.prPass;";
|
|
Database::getInstance()->query($query);
|
|
$programs = Database::getInstance()->fetchAssoc();
|
|
|
|
$encodedSession = isset($_POST["session"]) ? $_POST["session"] : $_GET["session"];
|
|
$session = base64_decode($encodedSession);
|
|
$privatekey = Webform::GetWebformPrivateKey();
|
|
$param = $_POST["param"];
|
|
$decoded_param = Webform::decode($privatekey, $session, $param);
|
|
$decoded_param = "?" . $decoded_param;
|
|
$isid = Webform::get_valueFromStringUrl($decoded_param, "isid");
|
|
|
|
$response = array();
|
|
foreach ($programs as $program) {
|
|
$availabelProgram = '';
|
|
$freeLic = '';
|
|
|
|
$response[$program['prPass']]['available'] = crm_hardlock::isProgramAvailable('', $program['prPass'], $program['prFizetve'], $isid, $program['hlLan'], $program['prActCode'], $availabelProgram, $freeLic, 39, $program['isFloating']);
|
|
if (!$response[$program['prPass']]['available'] || $freeLic != '') {
|
|
$response[$program['prPass']]['message'] = crm_hardlock::getInfoForProgramDialog($program['prFizetve'], $availabelProgram, $freeLic, $ctrID);
|
|
}
|
|
|
|
$response[$program['prPass']]['lan'] = $program['hlLan'];
|
|
}
|
|
|
|
|
|
echo json_encode($response);
|