CMXX - Upgrade software update
This commit is contained in:
@@ -8,6 +8,15 @@ defined($security_key) or exit;
|
||||
//Connect to DB
|
||||
$pdo = dbConnect($dbname);
|
||||
|
||||
//------------------------------------------
|
||||
//UPDATE SW_STATUS
|
||||
//------------------------------------------
|
||||
$sql = 'UPDATE equipment e JOIN products_software ps ON e.productrowid = ps.productrowid SET e.sw_version_latest = 1 WHERE ps.latest = 1 AND lower(e.sw_version) = lower(ps.version) AND e.sw_version_latest = 0';
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->execute();
|
||||
//------------------------------------------
|
||||
//------------------------------------------
|
||||
|
||||
//Get user_rights from users.php
|
||||
$partner = json_decode($partnerhierarchy);
|
||||
|
||||
|
||||
@@ -183,7 +183,7 @@ if (!isset($criterias['productrowid']) && isset($criterias['sn']) && $criterias[
|
||||
}
|
||||
|
||||
//GET PRODUCTCODE BASED ON SN WHEN NO RECORDS FOUND
|
||||
if (count($messages) === 0){
|
||||
if (isset($criterias['sn']) && !isset($criterias['productcode'])){
|
||||
$sql = 'SELECT p.productcode, e.sw_version_upgrade FROM equipment e JOIN products p ON e.productrowid = p.rowID WHERE e.serialnumber = ?';
|
||||
$stmt = $pdo->prepare($sql);
|
||||
//Excute Query
|
||||
|
||||
@@ -89,6 +89,14 @@ if (isset($post_content['productrowid']) && $post_content['productrowid'] != '')
|
||||
|
||||
//QUERY AND VERIFY ALLOWED
|
||||
if ($command == 'update' && isAllowed('products_software',$profile,$permission,'U') === 1){
|
||||
|
||||
//REMOVE LATEST FLAG FROM OTHER WHEN SEND
|
||||
if ($criterias['latest'] == 1){
|
||||
$sql = 'UPDATE products_software SET latest = 0 WHERE productrowid = ?';
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->execute([$post_content['productrowid']]);
|
||||
}
|
||||
|
||||
$sql = 'UPDATE products_software SET '.$clause.' WHERE rowID = ? '.$whereclause.'';
|
||||
$execute_input[] = $id;
|
||||
$stmt = $pdo->prepare($sql);
|
||||
|
||||
@@ -8,6 +8,15 @@ defined($security_key) or exit;
|
||||
//Connect to DB
|
||||
$pdo = dbConnect($dbname);
|
||||
|
||||
//------------------------------------------
|
||||
//UPDATE SW_STATUS
|
||||
//------------------------------------------
|
||||
$sql = 'UPDATE equipment e JOIN products_software ps ON e.productrowid = ps.productrowid SET e.sw_version_latest = 1 WHERE ps.latest = 1 AND lower(e.sw_version) = lower(ps.version) AND e.sw_version_latest = 0';
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->execute();
|
||||
//------------------------------------------
|
||||
//------------------------------------------
|
||||
|
||||
//Get user_rights from users.php
|
||||
$partner = json_decode($partnerhierarchy);
|
||||
|
||||
|
||||
@@ -182,7 +182,7 @@ if (!isset($criterias['productrowid']) && isset($criterias['sn']) && $criterias[
|
||||
}
|
||||
|
||||
//GET PRODUCTCODE BASED ON SN WHEN NO RECORDS FOUND
|
||||
if (count($messages) === 0){
|
||||
if (isset($criterias['sn']) && !isset($criterias['productcode'])){
|
||||
$sql = 'SELECT p.productcode, e.sw_version_upgrade FROM equipment e JOIN products p ON e.productrowid = p.rowID WHERE e.serialnumber = ?';
|
||||
$stmt = $pdo->prepare($sql);
|
||||
//Excute Query
|
||||
|
||||
@@ -88,6 +88,14 @@ if (isset($post_content['productrowid']) && $post_content['productrowid'] != '')
|
||||
|
||||
//QUERY AND VERIFY ALLOWED
|
||||
if ($command == 'update' && isAllowed('products_software',$profile,$permission,'U') === 1){
|
||||
|
||||
//REMOVE LATEST FLAG FROM OTHER WHEN SEND
|
||||
if ($criterias['latest'] == 1){
|
||||
$sql = 'UPDATE products_software SET latest = 0 WHERE productrowid = ?';
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->execute([$post_content['productrowid']]);
|
||||
}
|
||||
|
||||
$sql = 'UPDATE products_software SET '.$clause.' WHERE rowID = ? '.$whereclause.'';
|
||||
$execute_input[] = $id;
|
||||
$stmt = $pdo->prepare($sql);
|
||||
|
||||
@@ -787,7 +787,7 @@ function getPartnerName($str){
|
||||
//------------------------------------------
|
||||
// overview Indicators
|
||||
//------------------------------------------
|
||||
function overviewIndicators($warranty, $service, $sw_version, $hw_version){
|
||||
function overviewIndicators($warranty, $service, $sw_version, $sw_version_latest){
|
||||
include dirname(__FILE__,2).'/settings/settings.php';
|
||||
include dirname(__FILE__,2).'/settings/systemfirmware.php';
|
||||
$indicator ='';
|
||||
@@ -805,18 +805,16 @@ function overviewIndicators($warranty, $service, $sw_version, $hw_version){
|
||||
}
|
||||
|
||||
//Firmware
|
||||
if (isset($sw_version) && isset($hw_version)){
|
||||
$sw_version = substr($sw_version, 0, strpos($sw_version, "."));
|
||||
$firmware = ${'Firmwarename' . $hw_version} ?? '';
|
||||
//Firmware upgrade required
|
||||
if (!empty($firmware) && ($sw_version != $firmware)){
|
||||
$indicator .= '<span class="dot" style="background-color: #eb8a0d;">F</span>';
|
||||
} else {
|
||||
if (isset($sw_version_latest)){
|
||||
if($sw_version_latest == 1){
|
||||
$indicator .= '<span class="dot" style="background-color: #13b368;">F</span>';
|
||||
}
|
||||
} else {
|
||||
if ($sw_version == ''){
|
||||
$indicator .= '<span class="dot" style="background-color: #81848a">F</span>';
|
||||
|
||||
} else {
|
||||
$indicator .= '<span class="dot" style="background-color: #eb8a0d;">F</span>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $indicator;
|
||||
@@ -891,13 +889,7 @@ function serviceStatus($input){
|
||||
// Check available firmware
|
||||
//------------------------------------------
|
||||
|
||||
function availableFirmware($sw_version, $hw_version){
|
||||
|
||||
$message ='<span class="status">Unknown</span>';
|
||||
|
||||
if (isset($sw_version) && isset($hw_version)){
|
||||
include dirname(__FILE__,2).'/settings/systemfirmware.php';
|
||||
include dirname(__FILE__,2).'/settings/settings.php';
|
||||
function availableFirmware($sw_version,$sw_version_latest){
|
||||
|
||||
//INCLUDE TRANSLATION FILE
|
||||
if(isset($_SESSION['country_code'])){
|
||||
@@ -913,16 +905,19 @@ function availableFirmware($sw_version, $hw_version){
|
||||
include dirname(__FILE__,2).'/settings/translations/translations_US.php';
|
||||
}
|
||||
|
||||
$sw_version = substr($sw_version, 0, strpos($sw_version, "."));
|
||||
$firmware = ${'Firmwarename' . $hw_version} ?? '';
|
||||
|
||||
if (!empty($firmware) && ($sw_version != $firmware)){
|
||||
$message = '<span class="status firmware_update">'.$firmware_update_text.'</span>';
|
||||
|
||||
} else {
|
||||
//SET DEFAULTS
|
||||
if ((isset($sw_version) && $sw_version == '')){
|
||||
$message ='<span class="status">Unknown</span>';
|
||||
}
|
||||
else {
|
||||
//CHECK IF LATEST
|
||||
if($sw_version_latest == 1){
|
||||
$message = '<span class="status firmware_recent">'.$firmware_recent_text.'</span>';
|
||||
} else {
|
||||
$message = '<span class="status firmware_update">'.$firmware_update_text.'</span>';
|
||||
}
|
||||
}
|
||||
|
||||
return $message;
|
||||
}
|
||||
|
||||
|
||||
@@ -90,13 +90,17 @@ async function getDeviceData(){
|
||||
var c = b + 8;
|
||||
serial = x.substring(b,c);
|
||||
progressBar("65", "Retrieving device data", "#04AA6D");
|
||||
//Check if serialnumber is allowed
|
||||
if (serial != '23BB' || serial != '23AA'){
|
||||
progressBar("70", "Retrieving device data", "#04AA6D");
|
||||
console.log(serial);
|
||||
|
||||
if (x.indexOf("FW=") > 0){
|
||||
var a = x.indexOf("FW=");
|
||||
var b = a + 3;
|
||||
var c = b + 8;
|
||||
fw = x.substring(b,c);
|
||||
fw = fw.replace(/^0+/, '');
|
||||
}
|
||||
//Check if HW is retrieved from device
|
||||
if (x.indexOf("HW=") > 0){
|
||||
if (x.indexOf("HW=") > 0 && x.indexOf("FW=") >0){
|
||||
var a = x.indexOf("HW=");
|
||||
var b = a + 3;
|
||||
var c = b + 8;
|
||||
@@ -114,6 +118,8 @@ async function getDeviceData(){
|
||||
sw = 'R'+f;
|
||||
}
|
||||
|
||||
$fw_name = 'Firmware_'+fw+'_'+sw;
|
||||
console.log($fw_name);
|
||||
getServiceID().then(firmwareUpdate);
|
||||
progressBar("80", "checking for available firmware", "#04AA6D");
|
||||
setTimeout(checkAvailableFirmware, 5000);
|
||||
@@ -124,17 +130,11 @@ async function getDeviceData(){
|
||||
console.log('Reading of device not successful');
|
||||
}
|
||||
}
|
||||
else {
|
||||
progressBar("100", "Upgrade not allowed", "#ff6666");
|
||||
console.log('Upgrade not allowed');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function firmwareUpdate(data){
|
||||
|
||||
var serialnumber = serial;
|
||||
var action = '/v0/application/firmwareUpdate?sn='+serialnumber+'&hw_version='+hw+'&sw_version='+sw;
|
||||
var action = '/v2/products_software/sn='+serialnumber+'&version='+$fw_name;
|
||||
var url = link+action;
|
||||
|
||||
var bearer = 'Bearer ' + data;
|
||||
@@ -150,7 +150,7 @@ function firmwareUpdate(data){
|
||||
})
|
||||
.then(response => response.json())
|
||||
.then(firmware=> {
|
||||
firmwarelocation = './firmware/'+firmware.HEX_FW+'.HEX';
|
||||
firmwarelocation = './firmware/'+firmware['software'];
|
||||
return firmwarelocation;
|
||||
})
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ if (!empty($products_software)){$products_software = decode_payload($products_so
|
||||
$status_text = 'status'.$responses->status.'_text';
|
||||
$warrantydate = warrantyStatus($responses->warranty_date);
|
||||
$service_date_due = serviceStatus($responses->service_date);
|
||||
$firmware_status = availableFirmware($responses->sw_version, $responses->hw_version);
|
||||
$firmware_status = availableFirmware($responses->sw_version, $products_software);
|
||||
|
||||
//Calculate Healthindex based on last test
|
||||
$total_score = assetHealthIndex($_SESSION['profile'],$_SESSION['permission'],$equipment_data,0);
|
||||
@@ -233,10 +233,19 @@ $view .= '<div class="content-block">
|
||||
<tr>
|
||||
<td style="width:25%;">'.$equipment_label5.'</td>
|
||||
<td>'.$responses->hw_version.'</td>
|
||||
</tr>
|
||||
<tr>
|
||||
</tr>';
|
||||
//SHOW SOFTWARE NAME WHEN AVAILABLE
|
||||
$software_name = '';
|
||||
if (isset($products_software) && $products_software !=''){
|
||||
foreach ($products_software as $products_soft){
|
||||
if ($products_soft->version == $responses->sw_version){
|
||||
$software_name = ' - '.$products_soft->software;
|
||||
}
|
||||
}
|
||||
}
|
||||
$view .= ' <tr>
|
||||
<td style="width:25%;">'.$equipment_label6.'</td>
|
||||
<td>'.$responses->sw_version.'</td>
|
||||
<td>'.$responses->sw_version.$software_name.'</td>
|
||||
</tr>';
|
||||
//SHOW ONLY SW_UPGRADE WHEN SET
|
||||
if (isset($products_software) && $products_software !=''){
|
||||
@@ -244,7 +253,7 @@ if (isset($products_software) && $products_software !=''){
|
||||
if ($products_soft->rowID == $responses->sw_version_upgrade){
|
||||
$view .= ' <tr>
|
||||
<td style="width:25%;">'.($equipment_sw_version_upgrade ?? 'sw_version_upgrade').'</td>
|
||||
<td>'.$products_soft->version.'</td>
|
||||
<td>'.$products_soft->version.' - '.$products_soft->software.'</td>
|
||||
</tr>';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ if (isset($products_software) && $products_software !=''){
|
||||
<option></option>
|
||||
';
|
||||
foreach ($products_software as $products_soft ){
|
||||
$product_software_list .= '<option value="'.$products_soft->rowID.'" '.($equipment['sw_version_upgrade']==$products_soft->rowID?' selected':'').'>'.$products_soft->version.'</option>
|
||||
$product_software_list .= '<option value="'.$products_soft->rowID.'" '.($equipment['sw_version_upgrade']==$products_soft->rowID?' selected':'').'>'.$products_soft->version.' - '.$products_soft->software.'</option>
|
||||
';
|
||||
}
|
||||
$product_software_list .= '</select>';
|
||||
|
||||
@@ -225,7 +225,7 @@ if (isset($partner_data->section)){$section = getPartnerName($partner_data->sect
|
||||
|
||||
$picture = glob("./assets/images/products/".$response->productcode.".{jpg,jpeg,png,gif}", GLOB_BRACE);
|
||||
|
||||
$indicators = overviewIndicators($response->warranty_date,$response->service_date,$response->sw_version,$response->hw_version);
|
||||
$indicators = overviewIndicators($response->warranty_date,$response->service_date,$response->sw_version, $response->sw_version_latest);
|
||||
|
||||
$view .= '<tr>
|
||||
<td class="responsive-hidden">'.$indicators.'</td>
|
||||
|
||||
@@ -207,6 +207,7 @@ $message_no_assets = 'Es gibt keine Vermögenswerte';
|
||||
|
||||
//Manage assets
|
||||
$manage_asset_h2 = 'Vermögenswert verwalten';
|
||||
$equipment_sw_version_upgrade = 'Softwareversion, auf die aktualisiert werden soll (kein Eintrag ist die neueste Version)';
|
||||
|
||||
//ServiceReports
|
||||
$servicereports_h2 = 'Serviceberichte';
|
||||
|
||||
@@ -207,6 +207,7 @@ $message_no_assets = 'No hay activos';
|
||||
|
||||
//Manage assets
|
||||
$manage_asset_h2 = 'Gestionar activo';
|
||||
$equipment_sw_version_upgrade = 'Versión de software para actualizar (ninguna entrada es la versión más reciente)';
|
||||
|
||||
//ServiceReports
|
||||
$servicereports_h2 = 'Informes de servicio';
|
||||
|
||||
@@ -207,6 +207,7 @@ $message_eq_3 = 'Activa verwijderd!';
|
||||
$message_no_assets = 'Er is geen activa';
|
||||
//Manage assets
|
||||
$manage_asset_h2 = 'Update activa';
|
||||
$equipment_sw_version_upgrade = 'Software-versie om naar te upgraden (geen vermelding is de nieuwste versie)';
|
||||
|
||||
//ServiceReports
|
||||
$servicereports_h2 = 'Service rapporten';
|
||||
|
||||
@@ -206,6 +206,7 @@ $message_eq_3 = 'Equipamento excluído com sucesso!';
|
||||
$message_no_assets = 'Não há ativos';
|
||||
//Manage assets
|
||||
$manage_asset_h2 = 'Gerenciar ativo';
|
||||
$equipment_sw_version_upgrade = 'Versão de software para atualizar (nenhuma entrada é a versão mais recente)';
|
||||
|
||||
//ServiceReports
|
||||
$servicereports_h2 = 'Relatórios de serviço';
|
||||
|
||||
@@ -206,6 +206,7 @@ $message_no_assets = 'There are no assets';
|
||||
|
||||
//Manage assets
|
||||
$manage_asset_h2 = 'Manage asset';
|
||||
$equipment_sw_version_upgrade = 'Software version to upgrade to (no entry is latest version)';
|
||||
|
||||
//ServiceReports
|
||||
$servicereports_h2 = 'Service reports';
|
||||
|
||||
Reference in New Issue
Block a user