function numeric_version() { $v = explode('.', software_version()); $n = $v[0] * 10000 + $v[1] * 100 + $v[2]; return $n; }
// Windows // //system information echo "<b>" . $text['header-sys-status'] . "</b>"; echo "<br><br>"; echo "<table width=\"100%\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">\n"; echo "<tr>\n"; echo "\t<th class='th' colspan='2' align='left'>" . $text['title-sys-info'] . "</th>\n"; echo "</tr>\n"; if (permission_exists('system_view_info')) { echo "<tr>\n"; echo "\t<td width='20%' class=\"vncell\" style='text-align: left;'>\n"; echo "\t\t" . $text['label-version'] . "\n"; echo "\t</td>\n"; echo "\t<td class=\"row_style1\">\n"; echo "\t\t" . software_version() . "\n"; echo "\t</td>\n"; echo "</tr>\n"; $git_path = normalize_path_to_os($_SERVER['PROJECT_ROOT'] . "/.git"); if (file_exists($git_path)) { $git_exe = 'git'; if (strtoupper(substr(PHP_OS, 0, 3)) === 'SUN') { $git_exe = shell_exec('which git'); } $git_branch = shell_exec($git_exe . ' --git-dir=' . $git_path . ' name-rev --name-only HEAD'); rtrim($git_branch); $git_commit = shell_exec($git_exe . ' --git-dir=' . $git_path . ' rev-parse HEAD'); rtrim($git_commit); $git_origin = shell_exec($git_exe . ' --git-dir=' . $git_path . ' config --get remote.origin.url'); rtrim($git_commit); echo "<tr>\n";
} if ($percent_disk_usage != '') { $hud[$n]['html'] .= "<span class='hud_stat' onclick=\"\$('#hud_'+" . $n . "+'_details').slideToggle('fast');\">" . $percent_disk_usage . "</span>"; $hud[$n]['html'] .= "<span class='hud_stat_title' onclick=\"\$('#hud_'+" . $n . "+'_details').slideToggle('fast');\" style='cursor: default;'>" . $text['label-disk_usage'] . " (%)</span>\n"; } } $hud[$n]['html'] .= "<div class='hud_details' id='hud_" . $n . "_details'>"; $hud[$n]['html'] .= "<table class='tr_hover' width='100%' cellpadding='0' cellspacing='0' border='0'>\n"; $hud[$n]['html'] .= "<tr>\n"; $hud[$n]['html'] .= "<th class='hud_heading' width='50%'>" . $text['label-item'] . "</th>\n"; $hud[$n]['html'] .= "<th class='hud_heading' style='text-align: right;'>" . $text['label-value'] . "</th>\n"; $hud[$n]['html'] .= "</tr>\n"; //pbx version $hud[$n]['html'] .= "<tr class='tr_link_void'>\n"; $hud[$n]['html'] .= "<td valign='top' class='" . $row_style[$c] . " hud_text'>FusionPBX</td>\n"; $hud[$n]['html'] .= "<td valign='top' class='" . $row_style[$c] . " hud_text' style='text-align: right;'>" . software_version() . "</td>\n"; $hud[$n]['html'] .= "</tr>\n"; $c = $c ? 0 : 1; $fp = event_socket_create($_SESSION['event_socket_ip_address'], $_SESSION['event_socket_port'], $_SESSION['event_socket_password']); if ($fp) { //switch version $switch_version = event_socket_request($fp, 'api version'); preg_match("/FreeSWITCH Version (\\d+\\.\\d+\\.\\d+(?:\\.\\d+)?).*\\(.*?(\\d+\\w+)\\s*\\)/", $switch_version, $matches); $switch_version = $matches[1]; $switch_bits = $matches[2]; if ($switch_version != '' && $switch_bits != '') { $hud[$n]['html'] .= "<tr class='tr_link_void'>\n"; $hud[$n]['html'] .= "<td valign='top' class='" . $row_style[$c] . " hud_text'>" . $text['label-switch'] . "</td>\n"; $hud[$n]['html'] .= "<td valign='top' class='" . $row_style[$c] . " hud_text' style='text-align: right;'>" . $switch_version . " (" . $switch_bits . ")</td>\n"; $hud[$n]['html'] .= "</tr>\n"; $c = $c ? 0 : 1;
$sql .= "software_name, "; $sql .= "software_url, "; $sql .= "software_version "; $sql .= ")"; $sql .= "values "; $sql .= "("; $sql .= "'" . uuid() . "', "; $sql .= "'FusionPBX', "; $sql .= "'www.fusionpbx.com', "; $sql .= "'" . software_version() . "' "; $sql .= ")"; $db->exec(check_sql($sql)); unset($sql); } else { $sql = "update v_software "; $sql .= "set software_version = '" . software_version() . "' "; $db->exec(check_sql($sql)); unset($sql); } unset($prep_statement, $row); } //ensure the login message is set, if new message exists $sql = "select count(*) as num_rows from v_default_settings "; $sql .= "where default_setting_category = 'login' "; $sql .= "and default_setting_subcategory = 'message' "; $sql .= "and default_setting_name = 'text' "; $prep_statement = $db->prepare($sql); if ($prep_statement) { $prep_statement->execute(); $row = $prep_statement->fetch(PDO::FETCH_ASSOC); unset($prep_statement);