Example #1
0
function show_unregistered()
{
    //FIX ME ?
    $u_servs = Abstract_Server::load_registered(false);
    if (!is_array($u_servs)) {
        $u_servs = array();
    }
    usort($u_servs, "server_cmp");
    $can_do_action = isAuthorized('manageServers');
    page_header();
    echo '<div id="servers_div">';
    echo '<h1>' . _('Unregistered servers') . '</h1>';
    if (count($u_servs) > 0) {
        echo '<div id="servers_list_div">';
        echo '<table id="unregistered_servers_table" class="main_sub sortable" border="0" cellspacing="1" cellpadding="3">';
        echo '<thead>';
        echo '<tr class="title">';
        if (count($u_servs) > 1) {
            echo '<th class="unsortable"></th>';
        }
        echo '<th>' . _('FQDN') . '</th><th>' . _('Type') . '</th>';
        echo '<th>' . _('Roles') . '</th>';
        //     echo '<th>'._('Version').'</th>';
        echo '<th>' . _('Details') . '</th>';
        echo '</tr>';
        echo '</thead>';
        echo '<tbody>';
        $count = 0;
        foreach ($u_servs as $s) {
            $content = 'content' . ($count++ % 2 == 0 ? 1 : 2);
            echo '<tr class="' . $content . '">';
            if (count($u_servs) > 1) {
                echo '<td><input class="input_checkbox" type="checkbox" name="checked_servers[]" value="' . $s->fqdn . '" />';
            }
            if ($s->getAttribute('type') == '') {
                $s->isOK();
            }
            if ($s->getAttribute('cpu_model') == '') {
                $s->getMonitoring();
            }
            Abstract_Server::save($s);
            echo '<td>' . $s->fqdn . '</td>';
            echo '<td style="text-align: center;"><img src="media/image/server-' . $s->stringType() . '.png" alt="' . $s->stringType() . '" title="' . $s->stringType() . '" /><br />' . $s->stringType() . '</td>';
            //       echo '<td>'.$s->stringVersion().'</td>';
            echo '<td>';
            echo '<ul>';
            foreach ($s->roles as $a_role => $role_enabled) {
                if ($role_enabled) {
                    echo "<li>{$a_role}</li>";
                }
            }
            echo '</ul>';
            echo '</td>';
            echo '<td>';
            echo _('CPU') . ': ' . $s->getAttribute('cpu_model') . ' (' . $s->getAttribute('cpu_nb_cores') . ' ';
            echo $s->getAttribute('cpu_nb_cores') > 1 ? _('cores') : _('core');
            echo ')<br />';
            echo _('RAM') . ': ' . round($s->getAttribute('ram_total') / 1024) . ' MB';
            echo '</td>';
            if ($can_do_action) {
                echo '<td>';
                if ($s->isOK()) {
                    echo '<form action="actions.php" method="post">';
                    echo '<input type="hidden" name="name" value="Server" />';
                    echo '<input type="hidden" name="action" value="register" />';
                    echo '<input type="hidden" name="checked_servers[]" value="' . $s->fqdn . '" />';
                    echo '<input style="background: #05a305; color: #fff; font-weight: bold;" type="submit" value="' . _('Register') . '" />';
                    echo '</form>';
                }
                echo '</td>';
                echo '<td>';
                echo '<form action="actions.php" method="post" onsubmit="return confirm(\'' . _('Are you sure you want to delete this server?') . '\');">';
                echo '<input type="hidden" name="name" value="Server" />';
                echo '<input type="hidden" name="action" value="del" />';
                echo '<input type="hidden" name="checked_servers[]" value="' . $s->fqdn . '" />';
                echo '<input type="submit" value="' . _('Delete') . '" />';
                echo '</form>';
                echo '</td>';
            }
            echo '</tr>';
        }
        echo '</tbody>';
        // Mass actions
        if (count($u_servs) > 1) {
            $content = 'content' . ($count++ % 2 == 0 ? 1 : 2);
            echo '<tfoot>';
            echo '<tr class="' . $content . '">';
            echo '<td colspan="5">';
            echo '<a href="javascript:;" onclick="markAllRows(\'unregistered_servers_table\'); return false">' . _('Mark all') . '</a>';
            echo ' / <a href="javascript:;" onclick="unMarkAllRows(\'unregistered_servers_table\'); return false">' . _('Unmark all') . '</a>';
            echo '</td>';
            echo '<td>';
            echo '<form action="actions.php" method="post" onsubmit="return updateMassActionsForm(this, \'unregistered_servers_table\');">';
            echo '<input type="hidden" name="name" value="Server" />';
            echo '<input type="hidden" name="action" value="register" />';
            echo '<input type="submit" name="mass_register" value="' . _('Register') . '"/><br />';
            echo '</form>';
            echo '</td>';
            echo '<td>';
            echo '<form action="actions.php" method="post" onsubmit="return updateMassActionsForm(this, \'unregistered_servers_table\');">';
            echo '<input type="hidden" name="name" value="Server" />';
            echo '<input type="hidden" name="action" value="del" />';
            echo '<input type="submit" name="mass_delete_unregistered" value="' . _('Delete') . '"/><br />';
            echo '</form>';
            echo '</td>';
            echo '</tr>';
            echo '</tfoot>';
        }
        echo '</table>';
        echo '</div>';
        echo '<br />';
    } else {
        echo _('No unregistered server');
    }
    echo '</div>';
    echo '</div>';
    page_footer();
    die;
}
Example #2
0
     }
 }
 if ($_REQUEST['action'] == 'register') {
     if (isset($_REQUEST['checked_servers']) && is_array($_REQUEST['checked_servers'])) {
         foreach ($_REQUEST['checked_servers'] as $server) {
             $buf = Abstract_Server::load($server);
             $res = $buf->register();
             if ($res) {
                 Abstract_Server::save($buf);
                 popup_info(sprintf(_("Server '%s' successfully registered"), $buf->getAttribute('fqdn')));
             } else {
                 popup_error(sprintf(_("Failed to register Server '%s'"), $buf->getAttribute('fqdn')));
             }
         }
     }
     $buf = count(Abstract_Server::load_registered(false));
     if ($buf == 0) {
         redirect('servers.php');
     } else {
         redirect('servers.php?view=unregistered');
     }
 }
 if ($_REQUEST['action'] == 'maintenance') {
     if (isset($_REQUEST['checked_servers']) && is_array($_REQUEST['checked_servers']) && (isset($_REQUEST['to_maintenance']) || isset($_REQUEST['to_production']))) {
         foreach ($_REQUEST['checked_servers'] as $server) {
             $a_server = Abstract_Server::load($server);
             if (isset($_REQUEST['to_maintenance'])) {
                 $a_server->setAttribute('locked', true);
             } elseif (isset($_REQUEST['to_production']) && $a_server->isOnline()) {
                 $a_server->setAttribute('locked', false);
             }
Example #3
0
 public function servers_group_info($id_)
 {
     $this->check_authorized('viewServers');
     $group = Abstract_ServersGroup::load($id_);
     if (!is_object($group)) {
         return null;
     }
     $g = array('id' => $group->id, 'name' => $group->name, 'description' => $group->description, 'published' => $group->published);
     $servers = Abstract_Server::load_registered(true);
     $liaisons = Abstract_Liaison::load('ServersGroup', NULL, $id_);
     if (count($liaisons)) {
         foreach ($servers as $server) {
             if (!array_key_exists($server->id, $liaisons)) {
                 continue;
             }
             $g['servers'][$server->id] = $server->getDisplayName();
         }
     }
     $liaisons = Abstract_Liaison::load('UsersGroupServersGroup', NULL, $id_);
     if (count($liaisons)) {
         $userGroupDB = UserGroupDB::getInstance();
         $g['usersgroups'] = array();
         foreach ($liaisons as $liaison) {
             $obj = $userGroupDB->import($liaison->element);
             if (!$obj) {
                 continue;
             }
             $g['usersgroups'][$liaison->element] = $obj->name;
         }
     }
     return $g;
 }