var page = { init: function() { page.load(function() { var name = arg('name'); if (name != 'null') { $('#terms').find(`option:contains(${name})`).prop('selected', true); page.connect(); } }); $('#connect').click(page.connect); }, load: function(cb) { if (!cb) cb = function(){}; $.get('/api/rules', function(ret) { $('#terms').empty(); $.each(ret, function(_, rule) { if (rule.type != 'shell' && rule.type != 'vnc' && rule.type != 'code-server') { return; } $('#terms').append($(``)); }); cb(); }); }, connect: function() { $('#tabs>.nav-item>.active').removeClass('active'); $('#tab-content>.active').removeClass('show').removeClass('active'); var idx = page.idx; var str = `