CMXX - Updated products_software

This commit is contained in:
“VeLiTi”
2024-11-08 13:52:14 +01:00
parent c6a1c61eb1
commit 3ed27eb5ff
3 changed files with 88 additions and 58 deletions

View File

@@ -24,42 +24,48 @@ if(isset($get_content) && $get_content!=''){
//check if productcode and product_version are send
if (isset($criterias['productcode']) && $criterias['productcode'] != '' && isset($criterias['version'])){
//Connect to DB
$pdo = dbConnect($dbname);
//Connect to DB
$pdo = dbConnect($dbname);
//SQL for Paging
$sql = 'SELECT * FROM products_versions pv JOIN products p ON pv.productrowid = p.rowID WHERE p.productcode = ? AND pv.version = ? AND pv.status = "1"';
$stmt = $pdo->prepare($sql);
//Excute Query
$stmt->execute([$criterias['productcode'],$criterias['version']]);
//Get results
$messages = $stmt->fetchAll(PDO::FETCH_ASSOC);
//SQL for Paging
$sql = 'SELECT * FROM products_versions pv JOIN products p ON pv.productrowid = p.rowID WHERE p.productcode = ? AND pv.version = ? AND pv.status = "1"';
$stmt = $pdo->prepare($sql);
//Excute Query
$stmt->execute([$criterias['productcode'],$criterias['version']]);
//Get results
$messages = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($messages as $message){
foreach ($messages as $message){
//CHECK IF FIRMWARE FILE IS AVAILABLE
$software_file = dirname(__FILE__,4)."/firmware/".$message['software'];
$file = glob($software_file, GLOB_BRACE);
if (!empty($file)){
//GET FILE EXTENTION
$ext = strtolower(pathinfo($file[0], PATHINFO_EXTENSION));
if ($ext == 'hex'){
//GET SOURCE CODE
$file_contents = file_get_contents($software_file);
//REMOVE RETURN \R
$file_contents = str_replace("\r", '',$file_contents);
}
else {
//PROVIDE URL TO FILE
$file_contents = 'https://'.$_SERVER['SERVER_NAME'].'/firmware'.'/'.$message['software'];
}
$output = array("hw_version"=> $message['version'], "HEX_FW"=> $message['software'], "Firmware" => $file_contents);
//CHECK IF FIRMWARE FILE IS AVAILABLE
$software_file = dirname(__FILE__,4)."/firmware/".$message['software'].'.HEX';
if (file_exists($software_file)){
//GET SOURCE CODE
$file_contents = file_get_contents($software_file);
//REMOVE RETURN \R
$file_contents = str_replace("\r", '',$file_contents);
} else {
$file_contents = '';
//------------------------------------------
//JSON_ENCODE
//------------------------------------------
$output = json_encode($output, JSON_UNESCAPED_UNICODE);
//Send results
echo $output;
}
}
$output = array("hw_version"=> $message['version'], "HEX_FW"=> $message['software'], "Firmware" => $file_contents);
//------------------------------------------
//JSON_ENCODE
//------------------------------------------
$output = json_encode($output, JSON_UNESCAPED_UNICODE);
//Send results
echo $output;
}
}
else {
http_response_code(404);