Пример #1
0
function build_interface($lcd)
{
    global $g;
    global $config;
    $lcdproc_screens_config = $config['installedpackages']['lcdprocscreens']['config'][0];
    $refresh_frequency = get_lcdpanel_refresh_frequency() * 10;
    $lcd_cmds = array();
    $lcd_cmds[] = "hello";
    $lcd_cmds[] = "client_set name pfSense";
    $lcd_cmds[] = "screen_add welcome_scr";
    $lcd_cmds[] = "screen_set welcome_scr heartbeat off";
    $lcd_cmds[] = "screen_set welcome_scr name welcome";
    $lcd_cmds[] = "screen_set welcome_scr duration {$refresh_frequency}";
    $lcd_cmds[] = "widget_add welcome_scr title_wdgt title";
    $lcd_cmds[] = "widget_add welcome_scr text_wdgt scroller";
    add_summary_declaration($lcd_cmds, "welcome_scr");
    /* process screens to display */
    if (is_array($lcdproc_screens_config)) {
        foreach ($lcdproc_screens_config as $name => $screen) {
            if ($screen == "on") {
                switch ($name) {
                    case "scr_time":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_uptime":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_hostname":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_system":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_disk":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_load":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_states":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_carp":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_ipsec":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_slbd":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_interfaces":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_mbuf":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                    case "scr_cpufrequency":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        break;
                }
                add_summary_declaration($lcd_cmds, $name);
            }
        }
    }
    send_lcd_commands($lcd, $lcd_cmds);
}
Пример #2
0
function build_interface($lcd)
{
    global $g;
    global $config;
    $lcdproc_screens_config = $config['installedpackages']['lcdprocscreens']['config'][0];
    $refresh_frequency = get_lcdpanel_refresh_frequency() * 8;
    $lcd_cmds = array();
    $lcd_cmds[] = "hello";
    $lcd_cmds[] = "client_set name pfSense";
    /* process screens to display */
    if (is_array($lcdproc_screens_config)) {
        foreach ($lcdproc_screens_config as $name => $screen) {
            if ($screen == "on") {
                switch ($name) {
                    case "scr_version":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"Welcome to\"";
                        break;
                    case "scr_time":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ System Time\"";
                        break;
                    case "scr_uptime":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ System Uptime\"";
                        break;
                    case "scr_hostname":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ System Name\"";
                        break;
                    case "scr_system":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ System Stats\"";
                        break;
                    case "scr_disk":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ Disk Use\"";
                        break;
                    case "scr_load":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ Load Averages\"";
                        break;
                    case "scr_states":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ Traffic States\"";
                        break;
                    case "scr_carp":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ CARP State\"";
                        break;
                    case "scr_ipsec":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ IPsec Tunnels\"";
                        break;
                    case "scr_slbd":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ Load Balancer\"";
                        break;
                    case "scr_interfaces":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ Interfaces\"";
                        break;
                    case "scr_mbuf":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ MBuf Usage\"";
                        break;
                    case "scr_cpufrequency":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt scroller";
                        $lcd_cmds[] = "widget_set {$name} title_wdgt 1 1 \"+ CPU Frequency\"";
                        break;
                    case "scr_traffic":
                        $lcd_cmds[] = "screen_add {$name}";
                        $lcd_cmds[] = "screen_set {$name} heartbeat off";
                        $lcd_cmds[] = "screen_set {$name} name {$name}";
                        $lcd_cmds[] = "screen_set {$name} duration {$refresh_frequency}";
                        $lcd_cmds[] = "widget_add {$name} title_wdgt string";
                        $lcd_cmds[] = "widget_add {$name} text_wdgt string";
                        break;
                }
                add_summary_declaration($lcd_cmds, $name);
            }
        }
    }
    send_lcd_commands($lcd, $lcd_cmds);
}