function ZimAPI_fixPresetSetting(&$array_setting) { $array_bedsize = array(); $CI =& get_instance(); // auto fix bed size and print center by hardconf json file $CI->load->helper('printerstate'); if (ERROR_OK == PrinterState_getPrintSize($array_bedsize) && array_key_exists(PRINTERSTATE_TITLE_PRINT_XMAX, $array_bedsize) && array_key_exists(PRINTERSTATE_TITLE_PRINT_YMAX, $array_bedsize)) { $array_setting['bed_size'] = $array_bedsize[PRINTERSTATE_TITLE_PRINT_XMAX] . ',' . $array_bedsize[PRINTERSTATE_TITLE_PRINT_YMAX]; $array_setting['print_center'] = $array_bedsize[PRINTERSTATE_TITLE_PRINT_XMAX] / 2 . ',' . $array_bedsize[PRINTERSTATE_TITLE_PRINT_YMAX] / 2; } else { return FALSE; } return TRUE; }
function PrinterState_getInfoAsArray() { $CI =& get_instance(); $CI->load->helper('zimapi'); $version_marlin = NULL; $name_sso = NULL; $hostname = NULL; $network_data = array(); $platform_size = array(); $array_return = array(); $cr = 0; $cr = PrinterState_getMarlinVersion($version_marlin); if ($cr != ERROR_OK) { $version_marlin = 'N/A'; } $cr = ZimAPI_getHostname($hostname); if ($cr != ERROR_OK) { $hostname = 'N/A'; } PrinterState_getPrintSize($platform_size); $cr = ZimAPI_getNetworkInfoAsArray($network_data); $array_return = array(PRINTERSTATE_TITLE_VERSION => ZimAPI_getVersion(), PRINTERSTATE_TITLE_VERSION_N => ZimAPI_getVersion(TRUE), PRINTERSTATE_TITLE_TYPE => ZimAPI_getType(), PRINTERSTATE_TITLE_SERIAL => ZimAPI_getSerial(), PRINTERSTATE_TITLE_NB_EXTRUD => $CI->config->item('nb_extruder'), PRINTERSTATE_TITLE_VER_MARLIN => $version_marlin, PRINTERSTATE_TITLE_HOSTNAME => $hostname, ZIMAPI_TITLE_IP => $cr == ERROR_OK && isset($network_data[ZIMAPI_TITLE_IP]) ? $network_data[ZIMAPI_TITLE_IP] : 'N/A', ZIMAPI_TITLE_IPV6 => $cr == ERROR_OK && isset($network_data[ZIMAPI_TITLE_IPV6]) ? $network_data[ZIMAPI_TITLE_IPV6] : 'N/A'); foreach ($platform_size as $key => $value) { $array_return[$key] = $value; } $cr = ZimAPI_getPrinterSSOName($name_sso); if ($cr == ERROR_OK && $name_sso != NULL) { $array_return[PRINTERSTATE_TITLE_SSO_NAME] = $name_sso; } return $array_return; }