2019-03-13 21:06:35 +00:00
angular . module ( "AdLinApp" , [ "ngRoute" , "ngResource" , "ngSanitize" ] )
. config ( function ( $routeProvider , $locationProvider ) {
$routeProvider
. when ( "/auth" , {
controller : "AuthController" ,
templateUrl : "views/auth.html"
} )
. when ( "/domains" , {
controller : "DomainsController" ,
templateUrl : "views/domains.html"
} )
. when ( "/tunnels" , {
controller : "TunnelsController" ,
templateUrl : "views/tunnels.html"
} )
. when ( "/" , {
templateUrl : "views/home.html"
} ) ;
$locationProvider . html5Mode ( true ) ;
} ) ;
angular . module ( "AdLinApp" )
. factory ( "Student" , function ( $resource ) {
return $resource ( "/api/students/:studentId" , { studentId : '@id' } , {
'update' : { method : 'PUT' } ,
} )
} )
. factory ( "Progression" , function ( $resource ) {
return $resource ( "/api/progress" )
} )
. factory ( "Challenge" , function ( $resource ) {
return $resource ( "/challenge/:challengeId" , { challengeId : '@id' } )
} ) ;
angular . module ( "AdLinApp" )
2020-04-26 15:25:39 +00:00
. filter ( "since" , function ( ) {
return function ( passed ) {
passed -= Date . now ( ) / 1000
if ( passed < 120 ) {
return Math . floor ( - passed ) + " seconds ago" ;
} else {
return Math . floor ( - passed / 60 ) + " minutes ago" ;
}
}
} )
2021-03-02 18:08:42 +00:00
. directive ( 'integer' , function ( ) {
return {
require : 'ngModel' ,
link : function ( scope , ele , attr , ctrl ) {
ctrl . $parsers . unshift ( function ( viewValue ) {
return parseInt ( viewValue , 10 ) ;
} ) ;
}
} ;
} )
2020-03-27 12:08:47 +00:00
. component ( 'toast' , {
bindings : {
date : '=' ,
msg : '=' ,
title : '=' ,
variant : '=' ,
} ,
controller : function ( $element ) {
$element . children ( 0 ) . toast ( 'show' )
} ,
template : ` <div class="toast mb-2" role="alert" aria-live="assertive" aria-atomic="true" data-delay="7000">
< div class = "toast-header" >
< span ng - if = "$ctrl.variant" class = "badge badge-pill badge-{{ $ctrl.variant }}" style = "padding: .25em .66em" > & nbsp ; < / s p a n > & n b s p ;
< strong class = "mr-auto" ng - bind = "$ctrl.title" > < / s t r o n g >
< small class = "text-muted" ng - bind = "$ctrl.date" > just now < / s m a l l >
< button type = "button" class = "ml-2 mb-1 close" data - dismiss = "toast" aria - label = "Close" >
< span aria - hidden = "true" > & times ; < / s p a n >
< / b u t t o n >
< / d i v >
< div class = "toast-body" ng - bind - html = "$ctrl.msg" > < / d i v >
< / d i v > `
} )
2019-03-13 21:06:35 +00:00
. run ( function ( $rootScope , $interval , $http ) {
2020-03-27 12:08:47 +00:00
$rootScope . toasts = [ ] ;
$rootScope . addToast = function ( toast ) {
$rootScope . toasts . unshift ( toast ) ;
}
2019-03-13 21:06:35 +00:00
$rootScope . checkLoginState = function ( ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/auth" ,
2019-03-13 21:06:35 +00:00
} ) . then ( function ( response ) {
$rootScope . isLogged = response . data ;
2019-03-25 23:17:22 +00:00
$rootScope . student = response . data ;
2019-03-13 21:06:35 +00:00
} , function ( response ) {
$rootScope . isLogged = false ;
} ) ;
} ;
$rootScope . checkLoginState ( ) ;
2021-02-04 08:42:10 +00:00
$interval ( $rootScope . checkLoginState , 40000 ) ;
2019-03-13 21:06:35 +00:00
$rootScope . disconnectCurrentUser = function ( ) {
2020-03-01 17:15:19 +00:00
$http ( {
method : 'POST' ,
2020-03-01 17:20:16 +00:00
url : "api/auth/logout"
2020-03-01 17:15:19 +00:00
} ) . then ( function ( response ) {
$rootScope . isLogged = false ;
$rootScope . student = null ;
} ) ;
2019-03-13 21:06:35 +00:00
}
} )
2019-03-25 23:17:22 +00:00
. controller ( "ProgressionController" , function ( $scope , $interval , $http ) {
2021-03-05 14:11:14 +00:00
$scope . tuto _progress = tuto _progress ;
2022-03-09 20:42:53 +00:00
$scope . tuto _legend = tuto _legend ;
2021-03-05 14:11:14 +00:00
2019-03-25 23:17:22 +00:00
$scope . mychallenges = { } ;
var refreshChal = function ( ) {
2020-03-01 17:20:16 +00:00
$http . get ( "api/students/" + $scope . student . id + "/progress" ) . then ( function ( response ) {
2019-03-25 23:17:22 +00:00
$scope . mychallenges = response . data
} ) ;
}
refreshChal ( ) ;
2020-03-27 12:08:47 +00:00
var myinterval = $interval ( refreshChal , 15750 ) ;
$scope . $on ( '$destroy' , function ( ) { $interval . cancel ( myinterval ) ; } ) ;
2019-03-25 23:17:22 +00:00
} )
2019-03-13 21:06:35 +00:00
. controller ( "AuthController" , function ( $scope , $rootScope , $http , $location ) {
$scope . auth = {
"username" : "" ,
"password" : "" ,
} ;
$scope . logmein = function ( ) {
$scope . pleaseWait = true ;
$http ( {
method : 'POST' ,
2020-03-01 17:20:16 +00:00
url : "api/auth" ,
2019-03-13 21:06:35 +00:00
data : $scope . auth
} ) . then ( function ( response ) {
$scope . pleaseWait = false ;
$rootScope . checkLoginState ( ) ;
$location . url ( "/" ) ;
} , function ( response ) {
$scope . pleaseWait = false ;
2020-03-27 12:08:47 +00:00
if ( response . data )
$scope . addToast ( {
variant : "danger" ,
title : "Connexion impossible" ,
msg : ( response . data ? response . data . errmsg : "Impossible de contacter le serveur" ) ,
} ) ;
2019-03-13 21:06:35 +00:00
} ) ;
}
} )
. controller ( "TunnelsController" , function ( $scope , $http , $interval ) {
$scope . updateTunnelInfo = function ( ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/wginfo" ,
2019-03-13 21:06:35 +00:00
} ) . then ( function ( response ) {
$scope . wginfo = response . data ;
} ) ;
} ;
$scope . updateTunnelInfo ( ) ;
2021-03-02 18:08:42 +00:00
var noUpdate = 0
$scope . updateTunnelsList = function ( ) {
if ( noUpdate == 0 )
2019-03-13 21:06:35 +00:00
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/wg/" ,
2019-03-13 21:06:35 +00:00
} ) . then ( function ( response ) {
$scope . tunnels = response . data ;
} , function ( response ) {
2020-03-27 12:08:47 +00:00
$scope . addToast ( {
variant : "warning" ,
title : "Maatma Tunnels" ,
msg : "Nous rencontrons actuellement des difficultés avec la gestion des tunnels : " + ( response . data ? response . data . errmsg : "Impossible de contacter le serveur" ) + "<br>Veuillez réessayer dans quelques instants." ,
} ) ;
2019-03-13 21:06:35 +00:00
} ) ;
} ;
$scope . updateTunnelsList ( ) ;
2020-03-27 12:08:47 +00:00
var myinterval = $interval ( $scope . updateTunnelsList , 12000 ) ;
$scope . $on ( '$destroy' , function ( ) { $interval . cancel ( myinterval ) ; } ) ;
2019-03-13 21:06:35 +00:00
2020-04-26 15:25:39 +00:00
$scope . PING _ok = false ;
$scope . PING _time = '' ;
$scope . PING = false ;
var refreshPing = function ( ) {
$http . get ( "/api/students/" + $scope . student . id + "/ping" ) . then ( function ( response ) {
$scope . PING _ok = response . data . State ;
$scope . PING _time = new Date ( response . data . Date ) ;
$scope . PING = ( Date . now ( ) - $scope . PING _time ) / 1000 ;
} ) ;
}
var myPingInterval
$scope . $watch ( "student" , function ( student ) {
if ( student == null ) return ;
$interval . cancel ( myPingInterval ) ;
refreshPing ( ) ;
myPingInterval = $interval ( refreshPing , 15000 ) ;
} )
$scope . $on ( '$destroy' , function ( ) { $interval . cancel ( myPingInterval ) ; } ) ;
2019-03-13 21:06:35 +00:00
$scope . newTunnel = function ( ) {
$scope . pleaseWaitNew = true ;
$http ( {
method : 'POST' ,
2020-03-01 17:20:16 +00:00
url : "api/wg/" ,
2019-03-13 21:06:35 +00:00
data : { }
} ) . then ( function ( response ) {
$scope . updateTunnelsList ( ) ;
$scope . pleaseWaitNew = false ;
2020-03-27 12:08:47 +00:00
$scope . addToast ( {
variant : "success" ,
title : "Maatma Tunnels" ,
msg : "Tunnel créé avec succès !" ,
} ) ;
2019-03-13 21:06:35 +00:00
} , function ( response ) {
$scope . pleaseWaitNew = false ;
2020-03-27 12:08:47 +00:00
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Tunnels" ,
msg : ( response . data ? response . data . errmsg : "Impossible de contacter le serveur" ) ,
} ) ;
2019-03-13 21:06:35 +00:00
} ) ;
}
2021-03-02 18:08:42 +00:00
$scope . editTunnel = function ( tunnel ) {
tunnel . edit = true ;
noUpdate ++ ;
tunnel . newData = {
TokenText : tunnel . TokenText ,
SuffixIP : tunnel . SuffixIP ,
}
} ;
$scope . updateTunnel = function ( tunnel ) {
tunnel . pleaseWaitUpdate = true ;
$http ( {
method : 'PUT' ,
url : "api/wg/" + encodeURIComponent ( tunnel . TokenText ) ,
data : tunnel . newData
} ) . then ( function ( response ) {
noUpdate -- ;
tunnel . SuffixIP = tunnel . newData . SuffixIP ;
tunnel . TokenText = tunnel . newData . TokenText ;
tunnel . edit = false ;
tunnel . pleaseWaitUpdate = false ;
$scope . updateTunnelsList ( ) ;
$scope . addToast ( {
variant : "success" ,
title : "Maatma Tunnels" ,
msg : "Tunnel mise à jour avec succès !" ,
} ) ;
} , function ( response ) {
tunnel . pleaseWaitUpdate = false ;
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Tunnels" ,
msg : ( response . data ? response . data . errmsg : "Impossible de contacter le serveur" ) ,
} ) ;
} ) ;
}
2019-03-13 21:06:35 +00:00
$scope . dropTunnel = function ( tunnel ) {
tunnel . pleaseWaitDrop = true ;
$http ( {
method : 'DELETE' ,
2021-03-02 18:08:42 +00:00
url : "api/wg/" + encodeURIComponent ( tunnel . TokenText ) ,
2019-03-13 21:06:35 +00:00
data : { }
} ) . then ( function ( response ) {
$scope . updateTunnelsList ( ) ;
tunnel . pleaseWaitDrop = false ;
2020-03-27 12:08:47 +00:00
$scope . addToast ( {
variant : "success" ,
title : "Maatma Tunnels" ,
msg : "Tunnel supprimé avec succès !" ,
} ) ;
2019-03-13 21:06:35 +00:00
} , function ( response ) {
tunnel . pleaseWaitDrop = false ;
2020-03-27 12:08:47 +00:00
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Tunnels" ,
msg : ( response . data ? response . data . errmsg : "Impossible de contacter le serveur" ) ,
} ) ;
2019-03-13 21:06:35 +00:00
} ) ;
}
} )
2020-03-27 12:08:47 +00:00
. controller ( "DomainsController" , function ( $scope , $http , $location ) {
2019-03-19 13:00:33 +00:00
var onUpdateEvt = [ ] ;
var callOnUpdateEvt = function ( ) {
angular . forEach ( onUpdateEvt , function ( cb ) {
cb ( ) ;
} ) ;
}
$scope . addOnUpdateEvent = function ( cb ) {
onUpdateEvt . push ( cb ) ;
}
2019-03-14 07:51:40 +00:00
$scope . updateAssociationD = function ( ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/adomains/" ,
2019-03-14 07:51:40 +00:00
} ) . then ( function ( response ) {
$scope . adomains = [ ] ;
response . data . forEach ( function ( domain ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/adomains/" + domain ,
2019-03-14 07:51:40 +00:00
} ) . then ( function ( response ) {
2021-03-12 11:46:46 +00:00
if ( response . data ) {
2019-03-14 07:51:40 +00:00
response . data . forEach ( function ( rr ) {
2021-03-12 11:46:46 +00:00
$scope . adomains . push ( rr ) ;
2019-03-14 07:51:40 +00:00
} ) ;
2021-03-12 11:46:46 +00:00
}
2019-03-14 07:51:40 +00:00
} ) ;
} , function ( response ) {
2020-03-27 12:08:47 +00:00
console . log ( response . data . errmsg ) ;
2019-03-14 07:51:40 +00:00
} ) ;
} ) ;
} ;
$scope . updateAssociationD ( ) ;
2019-03-14 10:21:45 +00:00
$scope . updateDelegatedD = function ( ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/ddomains/" ,
2019-03-14 10:21:45 +00:00
} ) . then ( function ( response ) {
response . data . forEach ( function ( domain ) {
$scope . ddomains = response . data ;
} , function ( response ) {
alert ( response . data . errmsg ) ;
} ) ;
} ) ;
} ;
2021-02-04 08:37:24 +00:00
$scope . updateDelegatedD ( ) ;
2019-03-14 10:21:45 +00:00
2021-02-04 08:37:24 +00:00
$scope . askAssociationD = function ( ) {
if ( $scope . adomains . length == 0 ) {
return $scope . newAssociationD ( { } )
}
var aaaa = ""
if ( $scope . adomains . length >= 1 ) {
$scope . adomains . forEach ( function ( adomain ) {
if ( adomain . values . join ( "" ) . slice ( 0 , 5 ) == "2a01:" )
aaaa = adomain . values . join ( "" )
} )
}
$scope . assoc = {
"domain" : $scope . adomains [ 0 ] . domain ,
"a" : "82.64.31.248" ,
"aaaa" : aaaa ,
}
$ ( '#AssocModal' ) . modal ( 'show' ) ;
}
$scope . newAssociationD = function ( assoc ) {
$ ( '#AssocModal' ) . modal ( 'hide' ) ;
2019-03-14 07:51:40 +00:00
$scope . pleaseWaitNewAssociation = true ;
$http ( {
method : 'POST' ,
2021-02-04 08:37:24 +00:00
url : "api/adomains/" ,
data : assoc ,
2019-03-14 07:51:40 +00:00
} ) . then ( function ( response ) {
$scope . updateAssociationD ( ) ;
$scope . pleaseWaitNewAssociation = false ;
2020-03-27 12:08:47 +00:00
$scope . addToast ( {
variant : "success" ,
title : "Maatma Domain Names" ,
msg : "Nouvelle association créée avec succès !" ,
} ) ;
2019-03-14 07:51:40 +00:00
} , function ( response ) {
$scope . pleaseWaitNewAssociation = false ;
2020-03-27 12:08:47 +00:00
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Domain Names" ,
msg : "Erreur durant l'attribution du domaine : " + response . data . errmsg ,
} ) ;
2019-03-14 07:51:40 +00:00
} ) ;
}
2019-03-13 21:06:35 +00:00
2021-03-05 13:52:14 +00:00
$scope . useMyAssociationD = function ( ) {
$scope . assoc = {
"domain" : $scope . adomains [ 0 ] . domain ,
"cname" : $scope . student . associated _domain ? $scope . student . associated _domain : "" ,
}
$ ( '#AssocMyDomainModal' ) . modal ( 'show' ) ;
}
$scope . newMyDomainAssociationD = function ( assoc ) {
$ ( '#AssocMyDomainModal' ) . modal ( 'hide' ) ;
$scope . pleaseWaitNewAssociation = true ;
$http ( {
method : 'POST' ,
url : "api/adomains/" ,
data : assoc ,
} ) . then ( function ( response ) {
$scope . updateAssociationD ( ) ;
$scope . checkLoginState ( ) ;
$scope . pleaseWaitNewAssociation = false ;
$scope . addToast ( {
variant : "success" ,
title : "Maatma Domain Names" ,
msg : "Votre domaine a bien été associé !" ,
} ) ;
} , function ( response ) {
$scope . pleaseWaitNewAssociation = false ;
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Domain Names" ,
msg : "Erreur durant l'association du domaine : " + response . data . errmsg ,
} ) ;
} ) ;
}
$scope . delMyDomainAssociationD = function ( assoc ) {
$ ( '#AssocMyDomainModal' ) . modal ( 'hide' ) ;
$scope . pleaseWaitNewAssociation = true ;
assoc . cname = ''
$http ( {
method : 'POST' ,
url : "api/adomains/" ,
data : assoc ,
} ) . then ( function ( response ) {
$scope . updateAssociationD ( ) ;
$scope . checkLoginState ( ) ;
$scope . pleaseWaitNewAssociation = false ;
$scope . addToast ( {
variant : "success" ,
title : "Maatma Domain Names" ,
msg : "Votre domaine n'est plus pris en compte. Vous devez utiliser l'association qui vous a été attribuée sous adlin20xx.p0m.fr." ,
} ) ;
} , function ( response ) {
$scope . pleaseWaitNewAssociation = false ;
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Domain Names" ,
msg : "Erreur durant l'association du domaine : " + response . data . errmsg ,
} ) ;
} ) ;
}
$scope . useMyDelegationD = function ( ) {
$scope . assoc = {
"ns" : $scope . student . delegated _domain ? $scope . student . delegated _domain : "" ,
}
$ ( '#DelegateMyDomainModal' ) . modal ( 'show' ) ;
}
$scope . newMyDomainDelegationD = function ( assoc ) {
$ ( '#DelegateMyDomainModal' ) . modal ( 'hide' ) ;
$scope . pleaseWaitNewDelegation = true ;
$http ( {
method : 'POST' ,
url : "api/ddomains/" ,
data : assoc ,
} ) . then ( function ( response ) {
$scope . checkLoginState ( ) ;
$scope . pleaseWaitNewDelegation = false ;
$scope . addToast ( {
variant : "success" ,
title : "Maatma Domain Names" ,
msg : "Votre sous-domaine de délégation a bien été enregistré !" ,
} ) ;
} , function ( response ) {
$scope . pleaseWaitNewDelegation = false ;
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Domain Names" ,
msg : "Erreur durant la délégation du domaine : " + response . data . errmsg ,
} ) ;
} ) ;
}
$scope . delMyDomainDelegatedD = function ( ) {
$scope . pleaseWaitNewDelegation = true ;
$http ( {
method : 'POST' ,
url : "api/ddomains/" ,
data : { } ,
} ) . then ( function ( response ) {
$scope . checkLoginState ( ) ;
$scope . pleaseWaitNewDelegation = false ;
$scope . addToast ( {
variant : "success" ,
title : "Maatma Domain Names" ,
msg : "Votre domaine n'est plus pris en compte. Vous devez utiliser la délégation qui vous a été attribuée sous srs.p0m.fr." ,
} ) ;
} , function ( response ) {
$scope . pleaseWaitNewDelegation = false ;
$scope . addToast ( {
variant : "danger" ,
title : "Maatma Domain Names" ,
msg : "Erreur durant la délégation du domaine : " + response . data . errmsg ,
} ) ;
} ) ;
}
2019-03-19 13:00:33 +00:00
$scope . addNS = function ( domain ) {
$scope . nsrr = {
"domain" : domain ,
"ttl" : 900 ,
"rr" : "NS" ,
"values" : [ "" ] ,
}
$ ( '#NSModal' ) . modal ( 'show' ) ;
}
$scope . updateNS = function ( domain , rr ) {
2019-03-14 10:21:45 +00:00
$scope . nsrr = {
"domain" : domain ,
2020-04-26 21:38:25 +00:00
"ttl" : rr . ttl ,
2019-03-14 10:21:45 +00:00
"rr" : "NS" ,
2020-03-27 12:08:47 +00:00
"valuesfrom" : rr . values . join ( " " ) ,
2019-03-19 13:00:33 +00:00
"values" : rr . values ,
}
$ ( '#NSModal' ) . modal ( 'show' ) ;
}
$scope . addGLUE = function ( domain ) {
$scope . nsrr = {
"domain" : domain ,
"ttl" : 900 ,
"rr" : "AAAA" ,
"values" : [ "" ] ,
2019-03-14 10:21:45 +00:00
}
$ ( '#NSModal' ) . modal ( 'show' ) ;
}
2019-03-19 13:00:33 +00:00
$scope . updateGLUE = function ( domain , rr ) {
2019-03-14 10:21:45 +00:00
$scope . nsrr = {
"domain" : domain ,
2020-04-26 21:38:25 +00:00
"ttl" : rr . ttl ,
2019-03-14 10:21:45 +00:00
"rr" : "AAAA" ,
2020-03-27 12:08:47 +00:00
"valuesfrom" : rr . values . join ( " " ) ,
2019-03-19 13:00:33 +00:00
"values" : rr . values ,
2019-03-14 10:21:45 +00:00
}
$ ( '#NSModal' ) . modal ( 'show' ) ;
}
2019-03-19 13:00:33 +00:00
$scope . addDS = function ( domain ) {
2019-03-14 10:21:45 +00:00
$scope . nsrr = {
"domain" : domain ,
"ttl" : 900 ,
2021-03-12 11:46:46 +00:00
"rr" : "DNSKEY" ,
"labels" : [ "Flags" , "Protocole" , "Algorithme" , "Clef publique (base64)" ] ,
2019-03-14 10:21:45 +00:00
"values" : [ "" , "" , "" , "" ] ,
}
$ ( '#NSModal' ) . modal ( 'show' ) ;
}
2019-03-19 13:00:33 +00:00
$scope . updateDS = function ( domain , rr ) {
$scope . nsrr = {
"domain" : domain ,
2020-04-26 21:38:25 +00:00
"ttl" : rr . ttl ,
2019-03-19 13:00:33 +00:00
"rr" : "DS" ,
2021-03-12 11:46:46 +00:00
"labels" : [ "Key Tag" , "Algo clef" , "Type de hash" , "Hash (hex)" ] ,
2020-03-27 12:08:47 +00:00
"valuesfrom" : rr . values . join ( " " ) ,
2019-03-19 13:00:33 +00:00
"values" : rr . values ,
}
$ ( '#NSModal' ) . modal ( 'show' ) ;
}
2019-03-14 10:21:45 +00:00
$scope . saveNSRR = function ( nsrr ) {
2020-04-26 21:38:25 +00:00
if ( nsrr . ttl )
nsrr . ttl = parseInt ( nsrr . ttl )
2021-03-12 11:46:46 +00:00
if ( nsrr . rr == "DNSKEY" )
nsrr . rr = "DS"
2019-03-14 10:21:45 +00:00
$http ( {
2019-03-19 13:00:33 +00:00
method : ( nsrr . valuesfrom !== undefined ) ? 'PATCH' : 'POST' ,
2020-03-01 17:20:16 +00:00
url : "api/ddomains/" + nsrr . domain + "/" + nsrr . rr ,
2019-03-14 10:21:45 +00:00
data : nsrr ,
} ) . then ( function ( response ) {
$ ( '#NSModal' ) . modal ( 'hide' ) ;
2019-03-19 13:00:33 +00:00
callOnUpdateEvt ( ) ;
2019-03-14 10:21:45 +00:00
} , function ( response ) {
alert ( response . data . errmsg ) ;
} ) ;
}
2019-03-19 13:00:33 +00:00
$scope . deleteRR = function ( domain , rr ) {
rr [ "pleaseWait" + rr . rr + "del" ] = true ;
2019-03-14 10:21:45 +00:00
$http ( {
method : 'DELETE' ,
2020-03-01 17:20:16 +00:00
url : "api/ddomains/" + domain + "/" + rr . rr ,
2019-03-19 13:00:33 +00:00
data : rr ,
2019-03-14 10:21:45 +00:00
} ) . then ( function ( response ) {
2019-03-19 13:00:33 +00:00
callOnUpdateEvt ( ) ;
rr [ "pleaseWait" + rr . rr + "del" ] = false ;
2019-03-14 10:21:45 +00:00
} , function ( response ) {
2019-03-19 13:00:33 +00:00
rr [ "pleaseWait" + rr . rr + "del" ] = false ;
2019-03-14 10:21:45 +00:00
alert ( response . data . errmsg ) ;
} ) ;
}
} )
. controller ( "NSDomainsController" , function ( $scope , $http ) {
2019-03-19 13:00:33 +00:00
var updateNS = function ( ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/ddomains/" + $scope . domain + "/NS" ,
2019-03-19 13:00:33 +00:00
} ) . then ( function ( response ) {
$scope . domainNS = response . data ;
} ) ;
}
updateNS ( ) ;
$scope . addOnUpdateEvent ( updateNS ) ;
2019-03-14 10:21:45 +00:00
} )
. controller ( "GLUEDomainsController" , function ( $scope , $http ) {
2019-03-19 13:00:33 +00:00
var updateGLUE = function ( ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/ddomains/" + $scope . domain + "/GLUE" ,
2019-03-19 13:00:33 +00:00
} ) . then ( function ( response ) {
$scope . domainGLUE = response . data ;
} ) ;
}
updateGLUE ( ) ;
$scope . addOnUpdateEvent ( updateGLUE ) ;
2019-03-14 10:21:45 +00:00
} )
2020-04-26 15:26:39 +00:00
. controller ( "GLUEController" , function ( $scope , $http ) {
var updateGLUE = function ( ) {
$scope . GLUEpending = true ;
$http ( {
method : 'POST' ,
url : "api/check/GLUE" ,
data : { domain : $scope . rr . domain , ip : $scope . rr . values . join ( "" ) }
} ) . then ( function ( response ) {
$scope . GLUEpending = false ;
$scope . GLUEok = response . data ;
$scope . GLUEerr = "OK" ;
} , function ( response ) {
$scope . GLUEpending = false ;
$scope . GLUEok = false ;
$scope . GLUEerr = response . data . errmsg ;
} ) ;
}
updateGLUE ( ) ;
$scope . addOnUpdateEvent ( updateGLUE ) ;
} )
2019-03-14 10:21:45 +00:00
. controller ( "DSDomainsController" , function ( $scope , $http ) {
2022-03-10 17:14:12 +00:00
$scope . dn _has _dnssec = dn _has _dnssec ;
$scope . dn _without _dnssec = dn _without _dnssec ;
console . log ( dn _without _dnssec )
2019-03-19 13:00:33 +00:00
var updateDS = function ( ) {
$http ( {
method : 'GET' ,
2020-03-01 17:20:16 +00:00
url : "api/ddomains/" + $scope . domain + "/DS" ,
2019-03-19 13:00:33 +00:00
} ) . then ( function ( response ) {
$scope . domainDS = response . data ;
} ) ;
}
updateDS ( ) ;
$scope . addOnUpdateEvent ( updateDS ) ;
2019-03-13 21:06:35 +00:00
} )