mirror of
https://github.com/hak5/nano-tetra-modules.git
synced 2025-10-29 16:58:09 +00:00
228 lines
7.2 KiB
JavaScript
228 lines
7.2 KiB
JavaScript
registerController('USBController', ['$api', '$scope', '$interval', function($api, $scope, $interval) {
|
|
$scope.lsusb = "";
|
|
$scope.availableTTYs = "";
|
|
$scope.installed = false;
|
|
$scope.installling = false;
|
|
|
|
|
|
$scope.checkDepends = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'checkDepends'
|
|
}, function(response) {
|
|
console.log(response);
|
|
if(response.installed === true) {
|
|
$scope.installed = true;
|
|
$scope.installing = false;
|
|
$interval.cancel($scope.install_interval);
|
|
} else {
|
|
$scope.installed = false;
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.installDepends = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'installDepends'
|
|
}, function(response) {
|
|
console.log('INSTALL');
|
|
console.log(response);
|
|
if(response.installing === true) {
|
|
$scope.installing = true;
|
|
$scope.install_interval = $interval(function(){
|
|
$scope.checkDepends();
|
|
}, 1000);
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.removeDepends = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'removeDepends'
|
|
}, function(response) {
|
|
console.log('UNINSTALL');
|
|
console.log(response);
|
|
if(response.success === true) {
|
|
$scope.checkDepends();
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.checkDepends();
|
|
|
|
$scope.$on('$destroy', function() {
|
|
$interval.cancel($scope.install_interval);
|
|
});
|
|
|
|
$scope.getUSB = (function(){
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'getUSB'
|
|
}, function(response) {
|
|
if (response.lsusb) {
|
|
$scope.lsusb = response.lsusb;
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.getTTYs = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'getTTYs'
|
|
}, function(response) {
|
|
if (response.success) {
|
|
$scope.availableTTYs = response.availableTTYs;
|
|
} else {
|
|
$scope.availableTTYs = "No TTYs Found.";
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.refresh = (function(){
|
|
$scope.lsusb = "";
|
|
$scope.availableTTYs = "";
|
|
$scope.getUSB();
|
|
$scope.getTTYs();
|
|
});
|
|
|
|
$scope.getUSB();
|
|
$scope.getTTYs();
|
|
}]);
|
|
|
|
registerController('ConnectionController', ['$api', '$scope', '$timeout', function($api, $scope, $timeout) {
|
|
$scope.connected = false;
|
|
$scope.connecting = false;
|
|
$scope.disconnected = true;
|
|
|
|
$scope.checkConnection = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'checkConnection'
|
|
}, function(response) {
|
|
if (response.status == 'connected') {
|
|
$scope.connected = true;
|
|
$scope.connecting = false;
|
|
$scope.disconnected = false;
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.setConnection = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'setConnection'
|
|
}, function(response) {
|
|
if(response.status == 'connecting') {
|
|
$scope.connected = false;
|
|
$scope.connecting = true;
|
|
$scope.disconnected = false;
|
|
};
|
|
});
|
|
});
|
|
|
|
$scope.unsetConnection = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'unsetConnection'
|
|
}, function(response) {
|
|
if(response.status == 'disconnected') {
|
|
$scope.connecting = false;
|
|
$scope.connected = false;
|
|
$scope.disconnected = true;
|
|
};
|
|
});
|
|
});
|
|
|
|
$scope.checkConnection();
|
|
|
|
setInterval(function() {
|
|
$scope.checkConnection();
|
|
}, 10000);
|
|
}]);
|
|
|
|
registerController('ModemController', ['$api', '$scope', '$timeout', function($api, $scope, $timeout) {
|
|
$scope.savedConfiguration = false;
|
|
$scope.resetConfigurationSuccess = false;
|
|
$scope.saveConfigurationError = "";
|
|
$scope.loadConfigurationError = "";
|
|
$scope.resetConfigurationError = "";
|
|
|
|
$scope.loadConfiguration = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'loadConfiguration'
|
|
}, function(response) {
|
|
if (response.success === true) {
|
|
$scope.interface = response.interface;
|
|
$scope.protocol = response.protocol;
|
|
$scope.service = response.service;
|
|
$scope.vendorid = response.vendorid;
|
|
$scope.productid = response.productid;
|
|
$scope.device = response.device;
|
|
$scope.apn = response.apn;
|
|
$scope.username = response.username;
|
|
$scope.password = response.password;
|
|
$scope.dns = response.dns;
|
|
$scope.peerdns = response.peerdns;
|
|
$scope.pppredial = response.pppredial;
|
|
$scope.defaultroute = response.defaultroute;
|
|
$scope.keepalive = response.keepalive;
|
|
$scope.pppdoptions = response.pppdoptions;
|
|
} else {
|
|
$scope.loadConfigurationError = "Failed to load configuration.";
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.saveConfiguration = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'saveConfiguration',
|
|
interface: $scope.interface,
|
|
protocol: $scope.protocol,
|
|
service: $scope.service,
|
|
vendorid: $scope.vendorid,
|
|
productid: $scope.productid,
|
|
device: $scope.device,
|
|
apn: $scope.apn,
|
|
username: $scope.username,
|
|
password: $scope.password,
|
|
dns: $scope.dns,
|
|
peerdns: $scope.peerdns,
|
|
pppredial: $scope.pppredial,
|
|
defaultroute: $scope.defaultroute,
|
|
keepalive: $scope.keepalive,
|
|
pppdoptions: $scope.pppdoptions
|
|
}, function(response) {
|
|
if (response.success === true) {
|
|
$scope.savedConfiguration = true;
|
|
$timeout(function(){
|
|
$scope.savedConfiguration = false;
|
|
}, 2000);
|
|
} else {
|
|
$scope.saveConfigurationError = "Failed to save configuration.";
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.resetConfiguration = (function() {
|
|
$api.request({
|
|
module: 'ModemManager',
|
|
action: 'resetConfiguration'
|
|
}, function(response) {
|
|
if (response.success === true) {
|
|
$scope.resetConfigurationSuccess = true;
|
|
$scope.loadConfiguration();
|
|
$timeout(function(){
|
|
$scope.resetConfigurationSuccess = false;
|
|
}, 2000);
|
|
} else {
|
|
$scope.resetConfigurationError = "Failed to open configuration.";
|
|
}
|
|
});
|
|
});
|
|
|
|
$scope.loadConfiguration();
|
|
}]); |