aboutsummaryrefslogblamecommitdiffstatshomepage
path: root/index.html
blob: cb0a1b8c98a5cd70f73888d733749603bed33206 (plain) (tree)
1
2
3
4
5
6
7
8
9




                                                                                          
                    
                                                                                                                                                                                                                       
           
                 


                       


                      
         

                     
            

         
                           
                       
                         
                                  









                                                                                                      
              
                                                                                                                                                                                                                                                                                                                                           
                                                  
                                                       

                
                                                                                                                                                                                                                                                                                          
                                                                      
                                                                           

                
                                                                                                                                                                                                                                                                                    
                                                                    
                                                                         

                
                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                      
                                                                           

                
                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                    
                                                                         








                                                                                                                                                                                                                 







                                 















































































                                                                                                   
<!DOCTYPE HTML>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <title>-</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" integrity="sha384-WskhaSGFgHYWDcbwN70/dfYBj47jz9qbsMId/iRN3ewGhXQFZCSftd1LZCfmhktB" crossorigin="anonymous">
    <style>
.height-limited {
    max-height: 400px;
    overflow-y: scroll;
}
.button-expand {
    margin-right: 1em;
}
h1, .h1 {
    margin-top: 20px;
}
    </style>
  </head>
  <body>
    <div class="container">
      <div class="row">
        <div class="col">
          <h1 id="hostname">-</h1>
        </div>
        <div class="col h1 text-right">
          <div class="btn-group align-middle" role="group">
            <a role="button" class="btn btn-sm btn-warning" href="#" onclick="reboot();">Reboot</a>
            <a role="button" class="btn btn-sm btn-danger" href="#" onclick="shutdown();">Shutdown</a>
          </div>
        </div>
      </div>
      <div class="row">
        <div class="col">
          <hr>
          <p><button type="button" class="btn btn-outline-primary btn-sm button-expand" data-toggle="collapse" data-target="#collapse_top">+</button><a href="#collapse_top" data-toggle="collapse"><code>top</code></a> <span class="float-right"><small>updated every <span id="top_refresh_interval">-</span> seconds</small></span></p>
          <div class="collapse" id="collapse_top">
            <pre class="height-limited" id="top"></pre>
          </div>
          <hr>
          <p><button type="button" class="btn btn-outline-primary btn-sm button-expand" data-toggle="collapse" data-target="#collapse_systemctl_status_system">+</button><a href="#collapse_systemctl_status_system" data-toggle="collapse"><code>systemctl --system status</code></a></p>
          <div class="collapse" id="collapse_systemctl_status_system">
            <pre class="height-limited" id="systemctl_status_system"></pre>
          </div>
          <hr>
          <p><button type="button" class="btn btn-outline-primary btn-sm button-expand" data-toggle="collapse" data-target="#collapse_systemctl_status_user">+</button><a href="#collapse_systemctl_status_user" data-toggle="collapse"><code>systemctl --user status</code></a></p>
          <div class="collapse" id="collapse_systemctl_status_user">
            <pre class="height-limited" id="systemctl_status_user"></pre>
          </div>
          <hr>
          <p><button type="button" class="btn btn-outline-primary btn-sm button-expand" data-toggle="collapse" data-target="#collapse_systemctl_timers_system">+</button><a href="#collapse_systemctl_timers_system" data-toggle="collapse"><code>systemctl --system list-timers --all</code></a> <span class="float-right"><small>updated every <span id="systemctl_timers_system_refresh_interval">-</span> seconds</small></span></p>
          <div class="collapse" id="collapse_systemctl_timers_system">
            <pre class="height-limited" id="systemctl_timers_system"></pre>
          </div>
          <hr>
          <p><button type="button" class="btn btn-outline-primary btn-sm button-expand" data-toggle="collapse" data-target="#collapse_systemctl_timers_user">+</button><a href="#collapse_systemctl_timers_user" data-toggle="collapse"><code>systemctl --user list-timers --all</code></a> <span class="float-right"><small>updated every <span id="systemctl_timers_user_refresh_interval">-</span> seconds</small></span></p>
          <div class="collapse" id="collapse_systemctl_timers_user">
            <pre class="height-limited" id="systemctl_timers_user"></pre>
          </div>
          <hr>
        </div>
      </div>
    </div>
    <script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js" integrity="sha384-smHYKdLADwkXOn1EmN1qk/HfnUcbVRZyYmZ4qpPea6sjB/pTJ0euyQp0Mk8ck+5T" crossorigin="anonymous"></script>
    <script>
function reboot() {
    $.get('cgi-bin/reboot.sh');
}

function shutdown() {
    $.get('cgi-bin/poweroff.sh');
}

function refresh_hostname() {
    $.get('cgi-bin/hostname.sh', function(data) {
        $('#hostname').text(data);
        $('title').text(data);
    });
}

function refresh_top() {
    $.get('cgi-bin/top.sh', function(data) {
        $('#top').text(data);
    });
}

function refresh_systemctl_status_system() {
    $.get('cgi-bin/systemctl_status_system.sh', function(data) {
        $('#systemctl_status_system').text(data);
    });
}

function refresh_systemctl_status_user() {
    $.get('cgi-bin/systemctl_status_user.sh', function(data) {
        $('#systemctl_status_user').text(data);
    });
}

function refresh_systemctl_timers_system() {
    $.get('cgi-bin/systemctl_timers_system.sh', function(data) {
        $('#systemctl_timers_system').text(data);
    });
}

function refresh_systemctl_timers_user() {
    $.get('cgi-bin/systemctl_timers_user.sh', function(data) {
        $('#systemctl_timers_user').text(data);
    });
}

function refresh() {
    refresh_hostname();
    refresh_top();
    refresh_systemctl_status_system();
    refresh_systemctl_status_user();
    refresh_systemctl_timers_system();
    refresh_systemctl_timers_user();
}

var top_refresh_interval_seconds = 5;

function loop_top() {
    setInterval(function() { refresh_top(); }, top_refresh_interval_seconds * 1000);
    $('#top_refresh_interval').text(top_refresh_interval_seconds);
}

var systemctl_timers_refresh_interval_seconds = 30;

function loop_systemctl_timers() {
    setInterval(function() {
        refresh_systemctl_timers_system();
        refresh_systemctl_timers_user();
    }, systemctl_timers_refresh_interval_seconds * 1000);
    $('#systemctl_timers_system_refresh_interval').text(systemctl_timers_refresh_interval_seconds);
    $('#systemctl_timers_user_refresh_interval').text(systemctl_timers_refresh_interval_seconds);
}

function loop() {
    loop_top();
    loop_systemctl_timers();
}

function main() {
    refresh();
    loop();
}

$(function() {
    main();
});
    </script>
  </body>
</html>