2023-12-28 18:31:44 +11:00
<!DOCTYPE html>
2024-01-25 23:49:47 +11:00
< html data-bs-theme = "dark" lang = "en" >
2023-12-28 18:31:44 +11:00
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0, shrink-to-fit=no" >
< title > Manage - FireWallet< / title >
< link rel = "icon" type = "image/png" sizes = "900x768" href = "/assets/img/favicon.png" >
< link rel = "icon" type = "image/png" sizes = "900x768" href = "/assets/img/favicon.png" >
< link rel = "icon" type = "image/png" sizes = "900x768" href = "/assets/img/favicon.png" >
< link rel = "icon" type = "image/png" sizes = "900x768" href = "/assets/img/favicon.png" >
< link rel = "icon" type = "image/png" sizes = "900x768" href = "/assets/img/favicon.png" >
< link rel = "stylesheet" href = "/assets/bootstrap/css/bootstrap.min.css" >
< link rel = "stylesheet" href = "https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i&display=swap" >
< link rel = "stylesheet" href = "/assets/fonts/fontawesome-all.min.css" >
< link rel = "stylesheet" href = "/assets/fonts/material-icons.min.css" >
< link rel = "stylesheet" href = "/assets/css/styles.min.css" >
< / head >
< body id = "page-top" >
< div id = "wrapper" >
2024-01-25 23:49:47 +11:00
< nav class = "navbar align-items-start sidebar sidebar-dark accordion bg-gradient-primary p-0 navbar-dark" style = "background: var(--bs-primary-border-subtle);" >
2023-12-28 18:31:44 +11:00
< div class = "container-fluid d-flex flex-column p-0" > < a class = "navbar-brand d-flex justify-content-center align-items-center sidebar-brand m-0" href = "/" >
< div class = "sidebar-brand-icon" > < img src = "/assets/img/favicon.png" width = "44" > < / div >
< div class = "sidebar-brand-text mx-3" > < span > FireWallet< / span > < / div >
< / a >
< hr class = "sidebar-divider my-0" >
< ul class = "navbar-nav text-light" id = "accordionSidebar" >
< li class = "nav-item" > < a class = "nav-link" href = "/" > < i class = "fas fa-tachometer-alt" > < / i > < span > Dashboard< / span > < / a > < / li >
< li class = "nav-item" > < a class = "nav-link" href = "/tx" > < i class = "fas fa-table" > < / i > < span > Transactions< / span > < / a > < / li >
< li class = "nav-item" > < a class = "nav-link" href = "/send" > < i class = "material-icons" > send< / i > < span > Send HNS< / span > < / a > < / li >
2024-01-25 23:49:47 +11:00
< li class = "nav-item" > < a class = "nav-link" href = "/receive" > < i class = "material-icons" > call_received< / i > < span > Receive< / span > < / a > < / li >
2024-02-02 21:40:02 +11:00
< li class = "nav-item" > < a class = "nav-link" href = "/plugins" > < i class = "material-icons" > code< / i > < span > Plugins< / span > < / a > < a class = "nav-link" href = "/settings" > < i class = "material-icons" > settings< / i > < span > Settings< / span > < / a > < / li >
2023-12-28 18:31:44 +11:00
< / ul >
< div class = "text-center d-none d-md-inline" > < button class = "btn rounded-circle border-0" id = "sidebarToggle" type = "button" > < / button > < / div >
< / div >
< / nav >
2024-01-25 23:49:47 +11:00
< div class = "d-flex flex-column" id = "content-wrapper" style = "background: var(--bs-primary);" >
2023-12-28 18:31:44 +11:00
< div id = "content" >
2024-01-25 23:49:47 +11:00
< nav class = "navbar navbar-expand shadow mb-4 topbar static-top navbar-light" style = "background: var(--bs-primary-text-emphasis);" >
2023-12-28 18:31:44 +11:00
< div class = "container-fluid" > < button class = "btn btn-link d-md-none rounded-circle me-3" id = "sidebarToggleTop" type = "button" > < i class = "fas fa-bars" > < / i > < / button >
< form class = "d-none d-sm-inline-block me-auto ms-md-3 my-2 my-md-0 mw-100 navbar-search" action = "/search" method = "get" >
2023-12-29 11:42:20 +11:00
< div class = "input-group" > < input class = "bg-light form-control border-0 small" type = "text" placeholder = "Search for domain" name = "q" value = "{{search_term}}" > < button class = "btn btn-primary py-0" type = "submit" > < i class = "fas fa-search" > < / i > < / button > < / div >
< / form > < span > Sync: {{sync}}%< / span >
2023-12-28 18:31:44 +11:00
< ul class = "navbar-nav flex-nowrap ms-auto" >
< li class = "nav-item dropdown d-sm-none no-arrow" > < a class = "dropdown-toggle nav-link" aria-expanded = "false" data-bs-toggle = "dropdown" href = "#" > < i class = "fas fa-search" > < / i > < / a >
< div class = "dropdown-menu dropdown-menu-end p-3 animated--grow-in" aria-labelledby = "searchDropdown" >
< form class = "me-auto navbar-search w-100" >
< div class = "input-group" > < input class = "bg-light form-control border-0 small" type = "text" placeholder = "Search for ..." >
< div class = "input-group-append" > < button class = "btn btn-primary py-0" type = "button" > < i class = "fas fa-search" > < / i > < / button > < / div >
< / div >
< / form >
< / div >
< / li >
< li class = "nav-item dropdown no-arrow" >
2024-01-25 23:49:47 +11:00
< div class = "nav-item dropdown no-arrow" > < a class = "dropdown-toggle nav-link" aria-expanded = "false" data-bs-toggle = "dropdown" href = "#" > < span class = "d-none d-lg-inline me-2 small" > {{account}}< / span > < img class = "border rounded-circle img-profile" src = "/assets/img/HNS.png" > < / a >
2023-12-28 18:31:44 +11:00
< div class = "dropdown-menu shadow dropdown-menu-end animated--grow-in" > < a class = "dropdown-item" href = "/logout" > < i class = "fas fa-sign-out-alt fa-sm fa-fw me-2 text-gray-400" > < / i > Logout< / a > < / div >
< / div >
< / li >
< / ul >
< / div >
< / nav >
< h4 class = "text-center" style = "color: rgb(255,0,0);" > {{error}}< / h4 >
< div class = "container-fluid" >
< div class = "card" >
< div class = "card-body" >
< h4 class = "card-title" > {{domain}}/< a class = "btn btn-primary stick-right" role = "button" href = "/manage/{{domain}}/renew" > Renew< / a > < / h4 >
< h6 class = "text-muted card-subtitle mb-2" > Expires in {{expiry}} days< / h6 >
< / div >
< / div >
2024-02-05 22:40:13 +11:00
< / div > {{plugins|safe}}
2023-12-28 18:31:44 +11:00
< div class = "container-fluid" style = "margin-top: 50px;" >
< div class = "card" >
< div class = "card-body" >
2024-01-25 23:15:59 +11:00
< h4 class = "card-title" style = "display: inline-block;" > DNS< / h4 > < a class = "btn btn-primary" role = "button" style = "position: absolute; right:16px;" href = "/manage/{{domain}}/edit?dns={{raw_dns}}" > Edit< / a > < div class = "table-responsive" >
2023-12-28 18:31:44 +11:00
< table class = "table" >
< thead >
< tr >
< th > < / th >
< th > < / th >
< / tr >
< / thead >
< tbody >
{{dns | safe}}
< / tbody >
< / table >
< / div >
< / div >
< / div >
< / div >
2024-01-25 23:49:47 +11:00
< div class = "container-fluid" style = "margin-top: 50px;" >
< div class = "card" >
< div class = "card-body" >
< h4 class = "card-title" style = "display: inline-block;" > Transfer< / h4 >
2024-01-26 03:51:52 +11:00
< form action = "/manage/{{domain}}/transfer" style = "display: {% if finalize_time=='' %} block {% else %} none {% endif %};" >
2024-01-25 23:49:47 +11:00
< div style = "margin-top: 25px;" > < label class = "form-label" > Send to< / label > < input class = "form-control" type = "text" id = "address" placeholder = "Address or @domain" name = "address" value = "{{address}}" > < span id = "addressValid" > < / span > < script >
function checkAddress(inputValue) {
// Make API request to "/checkaddress"
var apiUrl = '/checkaddress?address=' + encodeURIComponent(inputValue);
fetch(apiUrl)
.then(response => response.json())
.then(data => {
// Update the content of the span with the response data
var addressCheckSpan = document.getElementById('addressValid');
addressCheckSpan.textContent = data.result; // You can replace 'addressInfo' with the actual property you receive from the API
})
.catch(error => {
console.error('Error fetching data:', error);
});
}
// Function to handle input field blur event
function handleBlur() {
var inputField = document.getElementById('address');
var inputValue = inputField.value;
// Check if the input value is not empty
if (inputValue.trim() !== '') {
checkAddress(inputValue);
} else {
var addressCheckSpan = document.getElementById('addressValid');
addressCheckSpan.textContent = 'Invalid address';
}
}
// Add a blur event listener to the input field
var inputField = document.getElementById('address');
inputField.addEventListener('blur', handleBlur);
< / script > < / div > < input class = "btn btn-primary" type = "submit" value = "Send" style = "margin-top: 16px;" >
< / form >
2024-01-26 03:51:52 +11:00
< div style = "display: {% if finalize_time=='' %} none {% else %} block {% endif %};" >
< h5 > {{domain}}/ is transferring. You can finalize your transfer {{finalize_time}}. < / h5 >
< div class = "btn-group btn-group-lg" role = "group" > < a class = "btn btn-primary" role = "button" style = "margin-right: 8px;margin-left: 8px;" href = "/manage/{{domain}}/finalize" > Finalize< / a > < a class = "btn btn-primary" role = "button" style = "margin-right: 8px;margin-left: 8px;" href = "/manage/{{domain}}/cancel" > Cancel< / a > < a class = "btn btn-primary" role = "button" style = "margin-right: 8px;margin-left: 8px;" href = "/manage/{{domain}}/revoke" > Revoke< / a > < / div >
< / div >
2024-01-25 23:49:47 +11:00
< /div>
< / div >
< / div >
2023-12-28 18:31:44 +11:00
< / div >
2024-01-25 23:49:47 +11:00
< footer class = "sticky-footer" style = "background: var(--bs-primary-text-emphasis);" >
2023-12-28 18:31:44 +11:00
< div class = "container my-auto" >
2024-01-25 23:49:47 +11:00
< div class = "text-center my-auto copyright" > < span > Copyright © FireWallet 2024< / span > < / div >
2023-12-28 18:31:44 +11:00
< / div >
< / footer >
< / div > < a class = "border rounded d-inline scroll-to-top" href = "#page-top" > < i class = "fas fa-angle-up" > < / i > < / a >
< / div >
< script src = "/assets/bootstrap/js/bootstrap.min.js" > < / script >
< script src = "/assets/js/script.min.js" > < / script >
< / body >
< / html >