Merge pull request #100 from Ether1Project/RebrandingAndImprovements

rebranding upgrade and various fixes
This commit is contained in:
Exlo
2024-04-29 07:46:05 +02:00
committed by GitHub
24 changed files with 486 additions and 285 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 16 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 68 KiB

View File

@@ -1,12 +1,12 @@
.btn-etho {
color: #ffffff;
background-color: #840032;
background-color: #25D4DC;
border-color: #103024;
}
.btn-etho:hover {
background: #fff;
box-shadow: 0px 2px 10px 5px #840032;
box-shadow: 0px 2px 10px 5px #25D4DC;
color: #000;
}
@@ -41,12 +41,12 @@ fieldset[disabled] .btn-etho:active,
.btn-etho.disabled.active,
.btn-etho[disabled].active,
fieldset[disabled] .btn-etho.active {
background-color: #840032;
background-color: #25D4DC;
border-color: #450118;
}
.btn-etho .badge {
color: #840032;
color: #25D4DC;
background-color: #ffffff;
}
@@ -57,7 +57,7 @@ fieldset[disabled] .btn-etho.active {
font-size: 12px;
letter-spacing: 2px;
position: relative;
background-color: #840032;
background-color: #25D4DC;
border: none;
color: #fff;
padding: 2px;
@@ -71,13 +71,13 @@ fieldset[disabled] .btn-etho.active {
.button2:hover {
background: #fff;
box-shadow: 0px 2px 10px 5px #840032;
box-shadow: 0px 2px 10px 5px #25D4DC;
color: #000;
}
.button2:after {
content: "";
background: #840032;
background: #25D4DC;
display: block;
position: absolute;
padding-top: 300%;
@@ -106,7 +106,7 @@ fieldset[disabled] .btn-etho.active {
font-size: 10px;
letter-spacing: 1px;
position: relative;
background-color: #840032;
background-color: #25D4DC;
border: none;
color: #fff;
width: 110px;
@@ -119,13 +119,13 @@ fieldset[disabled] .btn-etho.active {
.button3:hover {
background: #fff;
box-shadow: 0px 2px 10px 5px #840032;
box-shadow: 0px 2px 10px 5px #25D4DC;
color: #000;
}
.button3:after {
content: "";
background: #840032;
background: #25D4DC;
display: block;
position: absolute;
padding-top: 300%;
@@ -154,7 +154,7 @@ fieldset[disabled] .btn-etho.active {
font-size: 12px;
letter-spacing: 2px;
position: relative;
background-color: #840032;
background-color: #25D4DC;
border: none;
color: #fff;
padding: 8px;
@@ -167,13 +167,13 @@ fieldset[disabled] .btn-etho.active {
.button4:hover {
background: #fff;
box-shadow: 0px 2px 10px 5px #840032;
box-shadow: 0px 2px 10px 5px #25D4DC;
color: #000;
}
.button4:after {
content: "";
background: #840032;
background: #25D4DC;
display: block;
position: absolute;
padding-top: 300%;
@@ -194,3 +194,4 @@ fieldset[disabled] .btn-etho.active {
.button4:focus {
outline: 0;
}

View File

@@ -7,7 +7,7 @@
}
.dropdown-content li>a, .dropdown-content li>span {
color: rgb(36, 13, 21);
color: rgb(13, 36, 33);
}
#sendFeeRange {
@@ -27,7 +27,7 @@
}
#tableTransactionsForAll .fa-sign-out-alt {
color: red;
color: rgb(0, 238, 255);
}
#tableTransactionsForAll .fa-arrow-left {
@@ -45,3 +45,4 @@
#tableTransactionsForAll .fa-check {
color: #228B22;
}

View File

@@ -796,11 +796,11 @@
}
.teal.lighten-1 {
background-color: #840032 !important
background-color: #24F9DD !important
}
.teal-text.text-lighten-1 {
color: #840032 !important
color: #24F9DD !important
}
.teal.darken-1 {
@@ -2446,7 +2446,7 @@ td, th {
}
.collection .collection-item.active {
background-color: #840032;
background-color: #24F9DD;
color: #eafaf9
}
@@ -2458,7 +2458,7 @@ td, th {
display: block;
-webkit-transition: .25s;
transition: .25s;
color: #840032
color: #24F9DD
}
.collection a.collection-item:not(.active):hover {
@@ -2481,7 +2481,7 @@ td, th {
.secondary-content {
float: right;
color: #840032
color: #24F9DD
}
.collapsible .collection {
@@ -2520,13 +2520,13 @@ td, th {
top: 0;
left: 0;
bottom: 0;
background-color: #840032;
background-color: #24F9DD;
-webkit-transition: width .3s linear;
transition: width .3s linear
}
.progress .indeterminate {
background-color: #840032
background-color: #24F9DD
}
.progress .indeterminate:before {
@@ -2693,7 +2693,7 @@ span.badge.new {
font-weight: 300;
font-size: 0.8rem;
color: #fff;
background-color: #840032;
background-color: #24F9DD;
border-radius: 2px
}
@@ -4207,7 +4207,7 @@ small {
}
.card .card-title {
font-size: 24px;
font-size: 19px;
font-weight: 300
}
@@ -4355,6 +4355,11 @@ small {
line-height: 32px
}
.cardValue {
font-size:33px;
margin-bottom:8px;
}
.card .card-action {
background-color: inherit;
border-top: 1px solid rgba(160, 160, 160, 0.2);
@@ -4657,7 +4662,7 @@ small {
.btn, .btn-large, .btn-small {
text-decoration: none;
color: #fff;
background-color: #840032;
background-color: #24F9DD;
text-align: center;
letter-spacing: .5px;
-webkit-transition: background-color .2s ease-out;
@@ -4679,7 +4684,7 @@ small {
height: 40px;
line-height: 40px;
padding: 0;
background-color: #840032;
background-color: #24F9DD;
border-radius: 50%;
-webkit-transition: background-color .3s;
transition: background-color .3s;
@@ -4688,7 +4693,7 @@ small {
}
.btn-floating:hover {
background-color: #840032
background-color: #24F9DD
}
.btn-floating:before {
@@ -4890,7 +4895,7 @@ button.btn-floating {
z-index: -1;
width: 40px;
height: 40px;
background-color: #840032;
background-color: #24F9DD;
border-radius: 50%;
-webkit-transform: scale(0);
transform: scale(0)
@@ -4990,7 +4995,7 @@ button.btn-floating {
.dropdown-content li>a, .dropdown-content li>span {
font-size: 16px;
color: #840032;
color: #24F9DD;
display: block;
line-height: 22px;
padding: 14px 16px
@@ -5357,7 +5362,7 @@ body.keyboard-focused .dropdown-content li:focus {
.chip:focus {
outline: none;
background-color: #840032;
background-color: #24F9DD;
color: #fff
}
@@ -5390,9 +5395,9 @@ body.keyboard-focused .dropdown-content li:focus {
}
.chips.focus {
border-bottom: 1px solid #840032;
-webkit-box-shadow: 0 1px 0 0 #840032;
box-shadow: 0 1px 0 0 #840032
border-bottom: 1px solid #24F9DD;
-webkit-box-shadow: 0 1px 0 0 #24F9DD;
box-shadow: 0 1px 0 0 #24F9DD
}
.chips:hover {
@@ -5547,9 +5552,9 @@ input:not([type]):disabled+label, input:not([type])[readonly="readonly"]+label,
}
input:not([type]):focus:not([readonly]), input[type=text]:not(.browser-default):focus:not([readonly]), input[type=password]:not(.browser-default):focus:not([readonly]), input[type=email]:not(.browser-default):focus:not([readonly]), input[type=url]:not(.browser-default):focus:not([readonly]), input[type=time]:not(.browser-default):focus:not([readonly]), input[type=date]:not(.browser-default):focus:not([readonly]), input[type=datetime]:not(.browser-default):focus:not([readonly]), input[type=datetime-local]:not(.browser-default):focus:not([readonly]), input[type=tel]:not(.browser-default):focus:not([readonly]), input[type=number]:not(.browser-default):focus:not([readonly]), input[type=search]:not(.browser-default):focus:not([readonly]), textarea.materialize-textarea:focus:not([readonly]) {
border-bottom: 1px solid #840032;
-webkit-box-shadow: 0 1px 0 0 #840032;
box-shadow: 0 1px 0 0 #840032
border-bottom: 1px solid #24F9DD;
-webkit-box-shadow: 0 1px 0 0 #24F9DD;
box-shadow: 0 1px 0 0 #24F9DD
}
input:not([type]):focus:not([readonly])+label, input[type=text]:not(.browser-default):focus:not([readonly])+label, input[type=password]:not(.browser-default):focus:not([readonly])+label, input[type=email]:not(.browser-default):focus:not([readonly])+label, input[type=url]:not(.browser-default):focus:not([readonly])+label, input[type=time]:not(.browser-default):focus:not([readonly])+label, input[type=date]:not(.browser-default):focus:not([readonly])+label, input[type=datetime]:not(.browser-default):focus:not([readonly])+label, input[type=datetime-local]:not(.browser-default):focus:not([readonly])+label, input[type=tel]:not(.browser-default):focus:not([readonly])+label, input[type=number]:not(.browser-default):focus:not([readonly])+label, input[type=search]:not(.browser-default):focus:not([readonly])+label, textarea.materialize-textarea:focus:not([readonly])+label {
@@ -5691,7 +5696,7 @@ input:not([type])+label:after, input[type=text]:not(.browser-default)+label:afte
}
.input-field .prefix.active {
color: #840032
color: #24F9DD
}
.input-field .prefix~input, .input-field .prefix~textarea, .input-field .prefix~label, .input-field .prefix~.validate~label, .input-field .prefix~.helper-text, .input-field .prefix~.autocomplete-content {
@@ -5857,11 +5862,11 @@ textarea.materialize-textarea {
}
[type="radio"]:checked+span:after, [type="radio"].with-gap:checked+span:before, [type="radio"].with-gap:checked+span:after {
border: 2px solid #840032
border: 2px solid #24F9DD
}
[type="radio"]:checked+span:after, [type="radio"].with-gap:checked+span:after {
background-color: #840032
background-color: #24F9DD
}
[type="radio"]:checked+span:after {
@@ -5969,8 +5974,8 @@ textarea.materialize-textarea {
height: 22px;
border-top: 2px solid transparent;
border-left: 2px solid transparent;
border-right: 2px solid #840032;
border-bottom: 2px solid #840032;
border-right: 2px solid #24F9DD;
border-bottom: 2px solid #24F9DD;
-webkit-transform: rotate(40deg);
transform: rotate(40deg);
-webkit-backface-visibility: hidden;
@@ -5991,7 +5996,7 @@ textarea.materialize-textarea {
height: 22px;
border-top: none;
border-left: none;
border-right: 2px solid #840032;
border-right: 2px solid #24F9DD;
border-bottom: none;
-webkit-transform: rotate(90deg);
transform: rotate(90deg);
@@ -6059,8 +6064,8 @@ textarea.materialize-textarea {
top: 0;
width: 20px;
height: 20px;
border: 2px solid #840032;
background-color: #840032;
border: 2px solid #24F9DD;
background-color: #24F9DD;
z-index: 0
}
@@ -6072,8 +6077,8 @@ textarea.materialize-textarea {
[type="checkbox"].filled-in.tabbed:checked:focus+span:not(.lever):after {
border-radius: 2px;
background-color: #840032;
border-color: #840032
background-color: #24F9DD;
border-color: #24F9DD
}
[type="checkbox"].filled-in:disabled:not(:checked)+span:not(.lever):before {
@@ -6122,7 +6127,7 @@ textarea.materialize-textarea {
}
.switch label input[type=checkbox]:checked+.lever:after {
background-color: #840032
background-color: #24F9DD
}
.switch label .lever {
@@ -6194,7 +6199,7 @@ select {
background-color: #fff;
color: #000;
width: 100%;
border: 3px solid #840032;
border: 2px ridge #6dbb9b;
height: 30px;
margin-top: 10px;
}
@@ -6234,7 +6239,7 @@ select {
}
.select-wrapper input.select-dropdown:focus {
border-bottom: 1px solid #840032
border-bottom: 1px solid #24F9DD
}
.select-wrapper .caret {
@@ -6402,7 +6407,7 @@ input[type=range]+.thumb {
height: 0;
width: 0;
border-radius: 50%;
background-color: #840032;
background-color: #24F9DD;
margin-left: 7px;
-webkit-transform-origin: 50% 50%;
transform-origin: 50% 50%;
@@ -6414,7 +6419,7 @@ input[type=range]+.thumb .value {
display: block;
width: 30px;
text-align: center;
color: #840032;
color: #24F9DD;
font-size: 0;
-webkit-transform: rotate(45deg);
transform: rotate(45deg)
@@ -6446,13 +6451,13 @@ input[type=range]::-webkit-slider-thumb {
height: 14px;
width: 14px;
border-radius: 50%;
background: #840032;
background: #24F9DD;
-webkit-transition: -webkit-box-shadow .3s;
transition: -webkit-box-shadow .3s;
transition: box-shadow .3s;
transition: box-shadow .3s, -webkit-box-shadow .3s;
-webkit-appearance: none;
background-color: #840032;
background-color: #24F9DD;
-webkit-transform-origin: 50% 50%;
transform-origin: 50% 50%;
margin: -5px 0 0 0
@@ -6482,7 +6487,7 @@ input[type=range]::-moz-range-thumb {
height: 14px;
width: 14px;
border-radius: 50%;
background: #840032;
background: #24F9DD;
-webkit-transition: -webkit-box-shadow .3s;
transition: -webkit-box-shadow .3s;
transition: box-shadow .3s;
@@ -6520,7 +6525,7 @@ input[type=range]::-ms-thumb {
height: 14px;
width: 14px;
border-radius: 50%;
background: #840032;
background: #24F9DD;
-webkit-transition: -webkit-box-shadow .3s;
transition: -webkit-box-shadow .3s;
transition: box-shadow .3s;
@@ -6637,7 +6642,7 @@ input[type=range]::-ms-thumb {
}
.sidenav li>a.btn-floating:hover {
background-color: #840032
background-color: #24F9DD
}
.sidenav li>a>i, .sidenav li>a>[class^="mdi-"], .sidenav li>a li>a>[class*="mdi-"], .sidenav li>a>i.material-icons {
@@ -6823,7 +6828,7 @@ input[type=range]::-ms-thumb {
width: 100%;
height: 100%;
opacity: 0;
border-color: #840032
border-color: #24F9DD
}
.spinner-blue, .spinner-blue-only {
@@ -7736,7 +7741,7 @@ input[type=range]::-ms-thumb {
-webkit-flex: 1 auto;
-ms-flex: 1 auto;
flex: 1 auto;
background-color: #840032;
background-color: #24F9DD;
color: #fff;
padding: 20px 22px;
font-weight: 500
@@ -7793,11 +7798,11 @@ input[type=range]::-ms-thumb {
}
.datepicker-table td.is-today {
color: #840032
color: #24F9DD
}
.datepicker-table td.is-selected {
background-color: #840032;
background-color: #24F9DD;
color: #fff
}
@@ -7837,7 +7842,7 @@ input[type=range]::-ms-thumb {
}
.datepicker-cancel, .datepicker-clear, .datepicker-today, .datepicker-done {
color: #840032;
color: #24F9DD;
padding: 0 1rem
}
@@ -7901,7 +7906,7 @@ input[type=range]::-ms-thumb {
-webkit-flex: 1 auto;
-ms-flex: 1 auto;
flex: 1 auto;
background-color: #840032;
background-color: #24F9DD;
padding: 10px;
font-weight: 300
}
@@ -8017,7 +8022,7 @@ input[type=range]::-ms-thumb {
}
.timepicker-canvas line {
stroke: #840032;
stroke: #24F9DD;
stroke-width: 4;
stroke-linecap: round
}
@@ -8028,12 +8033,12 @@ input[type=range]::-ms-thumb {
.timepicker-canvas-bearing {
stroke: none;
fill: #840032
fill: #24F9DD
}
.timepicker-canvas-bg {
stroke: none;
fill: #840032
fill: #24F9DD
}
.timepicker-footer {
@@ -8054,7 +8059,7 @@ input[type=range]::-ms-thumb {
}
.timepicker-close {
color: #840032
color: #24F9DD
}
.timepicker-clear, .timepicker-close {
@@ -8086,3 +8091,4 @@ input[type=range]::-ms-thumb {
margin-top: 1.2rem
}
}

View File

@@ -1,6 +1,6 @@
html {
color: #fff;
font-family: Arial, Helvetica, sans-serif;
font-family: 'Fira Mono', monospace;
-webkit-font-smoothing: antialiased;
}
@@ -21,7 +21,7 @@ body.pg-loaded>.inner {
/* Style the sidebar - fixed full height */
.sidebar {
height: 100%;
width: 160px;
width: 200px;
position: fixed;
z-index: 1;
top: 0;
@@ -34,8 +34,8 @@ body.pg-loaded>.inner {
/* Style sidebar links */
.sidebar a {
text-decoration: none;
font-size: 20px;
color: #840032;
font-size: 18px;
color: #25D4DC;
display: block;
}
@@ -67,11 +67,11 @@ body.pg-loaded>.inner {
#mainContent {
position: fixed;
z-index: 1;
left: 160px;
left: 184px;
top: 0;
right: 0;
bottom: 20px;
background-color: #212529;
background-color: #293838;
overflow: auto;
}
@@ -188,12 +188,12 @@ body.pg-loaded>.inner {
.modalDialog {
display: none;
border-bottom: 3px solid #7A1336 !important;
border-bottom: 3px solid #28709F !important;
border-radius: 0px !important;
}
.iziModal-header {
background: #7A1336 !important;
background: #28709F !important;
}
#walletsToolbar {
@@ -223,7 +223,7 @@ div.loadingText {
}
div.sidebar svg {
color: #7A1336;
color: #28709F;
}
#tableTransactionsForAll_filter {
@@ -252,7 +252,7 @@ div.sidebar svg {
}
.dataTables_scrollBody .transactionsBlockNum {
color: #f92472;
color: #24f9dd;
cursor: pointer;
}
@@ -286,11 +286,12 @@ div.sidebar svg {
.sendTXInfo {
height: 30px;
color:#b1aa58;
}
.sendTXInfo label {
line-height: 30px;
font-size: 1.1em;
font-size: 1em;
}
.txInfo label {
@@ -300,7 +301,7 @@ div.sidebar svg {
}
.txInfo label+label {
color: #7A1336;
color: #28709F;
margin-left: 0px;
}
@@ -313,13 +314,13 @@ div.sidebar svg {
#toAddressInfo,
#valueToSendInfo,
#feeToPayInfo {
color: #ee6e73;
color: #24f9dd;
margin-left: 5px;
margin-right: 5px;
}
.accountName {
color: #7A1336;
color: #28709F;
}
.accountAddr {
@@ -430,7 +431,7 @@ div.noAddressWrapper {
}
.etho-red {
background-color: #7A1336 !important;
background-color: #28709F !important;
}
#chartMarketPrice {
@@ -440,3 +441,4 @@ div.noAddressWrapper {
#addrQRCode {
text-align: center;
}

View File

@@ -5,8 +5,8 @@
.dt-button {
margin-left: 10px !important;
color: #ffffff !important;
background-color: #7A1336 !important;
border: 1px solid #450118 !important;
background-color: #13737a !important;
border: 1px solid #012c45 !important;
background-image: none !important;
}
@@ -15,8 +15,8 @@
.dt-button.active,
.open .dropdown-toggle.dt-button {
color: #ffffff !important;
background-color: #B01549 !important;
border: 1px solid #450118 !important;
background-color: #1594b0 !important;
border: 1px solid #012445 !important;
background-image: none !important;
}
@@ -40,12 +40,12 @@ fieldset[disabled] .dt-button:active,
.dt-button.disabled.active,
.dt-button[disabled].active,
fieldset[disabled] .dt-button.active {
background-color: #7A1336 !important;
border-color: #450118 !important;
background-color: #28709F !important;
border-color: #013045 !important;
}
.dt-button .badge {
color: #7A1336 !important;
color: #28709F !important;
background-color: #ffffff !important;
}
@@ -410,3 +410,4 @@ table.dataTable td {
text-align: center; }
.dataTables_wrapper .dataTables_filter {
margin-top: 0.5em; } }

View File

@@ -28,31 +28,105 @@
<br>
<center>
<h2 style="color:white; margin-top: 12px">Buy ETHO</h2>
<h2 style="color:white; margin-top: 12px">Markets</h2>
</center>
<br>
<div class="ui grid container">
<div class="four column row">
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://www.probit.com/r/41540915')">ProBit</button>
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://www.probit.com/r/26069458')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/477.png" alt="ProBit Logo" style="width: 24px; height: 24px; vertical-align: middle;">
<span style="vertical-align: middle;">ProBit</span>
</button>
</div>
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://www.kucoin.com/ucenter/signup?rcode=rJUCF6W')">KuCoin</button>
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://xeggex.com?ref=662d0099f852ffbc4da4f8bf')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/7500.png" alt="Xeggex Logo" style="width: 24px; height: 24px; vertical-align: middle;">
<span style="vertical-align: middle;">Xeggex</span>
</button>
</div>
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://mercatox.com/?referrer=467736')">Mercatox</button>
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://mercatox.com/?referrer=765491')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/213.png" alt="Mercatox Logo" style="width: 24px; height: 24px; vertical-align: middle;">
<span style="vertical-align: middle;">Mercatox</span>
</button>
</div>
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://graviex.net')">Graviex</button>
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://graviex.net')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/419.png" alt="Graviex Logo" style="width: 24px; height: 24px; vertical-align: middle;">
<span style="vertical-align: middle;">Graviex</span>
</button>
</div>
</div>
</div>
<div class="ui grid container">
<div class="one column row">
<div class="four column row">
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://app.stex.com?ref=26491159')">Stex</button>
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://www.dextools.io/app/en/bnb/pair-explorer/0xb77cf2bd2571c3e58c79107cbc155a7f9ca28b75')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/6706.png" alt="Pancake Logo" style="width: 24px; height: 24px; display: inline-block; vertical-align: middle;">
<span style="vertical-align: middle;">PancakeSwap v2 ETHO / USDT</span>
</button>
</div>
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://www.dextools.io/app/en/bnb/pair-explorer/0xef2b9739de830bdc651ae2aa146762c499cbf7c1')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/6706.png" alt="Pancake Logo" style="width: 24px; height: 24px; display: inline-block; vertical-align: middle;">
<span style="vertical-align: middle;">PancakeSwap v3 ETHO / USDT</span>
</button>
</div>
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://www.dextools.io/app/en/ether/pair-explorer/0xa6dc0957e7c1935e80f5ec746be85eb4f0753dae')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/1348.png" alt="Uniswap Logo" style="width: 24px; height: 24px; display: inline-block; vertical-align: middle;">
<span style="vertical-align: middle;">Uniswap ETHO / WETH</span>
</button>
</div>
<div class="column">
<button class="aboutbutton ui violet inverted button" type="button" onclick="require('electron').shell.openExternal('https://www.dextools.io/app/en/ether/pair-explorer/0xb77cf2bd2571c3e58c79107cbc155a7f9ca28b75')">
<img src="https://s2.coinmarketcap.com/static/img/exchanges/64x64/1348.png" alt="Uniswap Logo" style="width: 24px; height: 24px; display: inline-block; vertical-align: middle;">
<span style="vertical-align: middle;">Uniswap ETHO / USDT</span>
</button>
</div>
</div>
</div>
<br>
<center>
<h2 style="color:white; margin-top: 15px">Links 🌐</h2>
</center>
<br>
<div class="ui grid container">
<div class="four column row">
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://ethoprotocol.com')">
<i class="fas fa-globe"></i> Etho Website
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://uploads.ethoprotocol.com')">
<i class="fas fa-server"></i> Etho Hosting
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://github.com/Ether1Project')">
<i class="fab fa-github"></i> Etho Github
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://github.com/Ether1Project/Ethoprotocol')">
<i class="fab fa-github"></i> Etho Geth
</button>
</div>
</div>
</div>
@@ -60,32 +134,7 @@
<br>
<center>
<h2 style="color:white; margin-top: 15px">Etho Protocol Links</h2>
</center>
<br>
<div class="ui grid container">
<div class="four column row">
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://ethoprotocol.com')">Etho Protocol Website</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://uploads.ethoprotocol.com/')">ethoFS Website</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://github.com/Ether1Project')">Etho Protocol Github</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted green button" type="button" onclick="require('electron').shell.openExternal('https://github.com/Ether1Project/Ether1')">Etho Protocol Geth</button>
</div>
</div>
</div>
<br>
<center>
<h2 style="color:white; margin-top: 15px">Etho Protocol Social Media</h2>
<h2 style="color:white; margin-top: 15px">Social Media 📱</h2>
</center>
<br>
@@ -94,26 +143,39 @@
<div class="doubling six column row">
<div class="column">
<!-- Etho Protocol -->
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://discord.gg/Ap5FmXc')">Discord</button>
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://discord.com/invite/VanQ23KMZv')">
<i class="fab fa-discord"></i> Discord
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://twitter.com/EthoProtocol/')">Twitter</button>
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://twitter.com/EthoProtocol/')">
<i class="fab fa-twitter"></i> Twitter
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://ethoprotocol.medium.com')">Medium</button>
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://ethoprotocol.medium.com')">
<i class="fab fa-medium"></i> Medium
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://t.me/Ether_1')">Telegram</button>
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://t.me/Ether_1')">
<i class="fab fa-telegram"></i> Telegram
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://ethoprotocol.com/blog/')">News Blog</button>
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('https://ethoprotocol.com/blog/')">
<i class="far fa-newspaper"></i> Blog
</button>
</div>
<div class="column">
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('mailto:admin@ethoprotocol.com')">Email</button>
<button class="aboutbutton ui inverted blue button" type="button" onclick="require('electron').shell.openExternal('mailto:admin@ethoprotocol.com')">
<i class="far fa-envelope"></i> Email
</button>
</div>
</div>
</div>
<script>
$('.message .close')
.on('click', function() {
@@ -122,3 +184,4 @@
.transition('fade');
});
</script>

View File

@@ -3,44 +3,44 @@
<div class="col s12 m3">
<div class="card etho-red">
<div class="card-content white-text">
<span class="card-title">ETHO to USD</span>
<span class="card-title">ETHO to USD 💵</span>
<p id="ETHOToUSD">N/A</p>
</div>
<div class="card-action">
<p id="changeUSD">This is a link</p>
7 days change: <p id="changeUSD" class="cardValue">N/A 🔗</p>
</div>
</div>
</div><!-- col-3 -->
<div class="col s12 m3">
<div class="card etho-red">
<div class="card-content white-text">
<span class="card-title">ETHO to BTC</span>
<span class="card-title">ETHO to BTC</span>
<p id="ETHOToBTC">N/A</p>
</div>
<div class="card-action">
<p id="changeBTC">This is a link</p>
7 days change:<p id="changeBTC" class="cardValue">N/A 🔗</p>
</div>
</div>
</div><!-- col-3 -->
<div class="col s12 m3">
<div class="card etho-red">
<div class="card-content white-text">
<span class="card-title">Marketcap</span>
<span class="card-title">Marketcap 💰</span>
<p id="marketcap">N/A</p>
</div>
<div class="card-action">
<p id="changeMarketcap">This is a link</p>
high 24h: <p id="changeMarketcap" class="cardValue">N/A 🔗</p>
</div>
</div>
</div><!-- col-3 -->
<div class="col s12 m3">
<div class="card etho-red">
<div class="card-content white-text">
<span class="card-title">Daily Volume</span>
<span class="card-title">Daily Volume 📊</span>
<p id="dailyVolume">N/A</p>
</div>
<div class="card-action">
<p id="changeVolume">This is a link</p>
all time high:<p id="changeVolume" class="cardValue">N/A 🔗</p>
</div>
</div>
</div><!-- col-3 -->
@@ -51,3 +51,4 @@
<a class="chart-style"></a>
</div>
<span id="nodestorage" style="display:none;">Loading</span>

View File

@@ -3,15 +3,16 @@
<form class="col s12">
<div class="row">
<div class="input-field col s6">
<label for="sendToAddress" class="active">Sender:</label>
<select id="sendFromAddress">
{{#addressData}}
<option value="{{address}}">{{name}} - {{address}}</option>
<option value="{{address}}">{{balance}} | {{name}} | {{address}}</option>
{{/addressData}}
</select>
<small id="sendFromAddressName" class="form-text text-muted"></small>
</div>
<div class="input-field col s6">
<label for="sendToAddress" class="active">To address:</label>
<label for="sendToAddress" class="active">Recipient:</label>
<div class="addressInputWrapper">
<input id="sendToAddress" placeholder="recipient address" type="text">
<button type="button" class="btn button3 btnSendToolButton" id="btnAddToAddressBook">
@@ -26,12 +27,16 @@
</div>
<div class="row">
<div class="input-field col s6">
<label for="sendAmmount" style="display:flex">
<img height="22px" width="22px" style="margin: 11px 6px 0 2px;" src="https://raw.githubusercontent.com/Ether1Project/ETHO-Protocol-Branding/master/NewLogo2024/newethologo_32.png" alt="ETHO" />
<input id="sendAmmount" placeholder="0" type="number">
</label>
<label for="sendAmmount" class="active">Amount:</label>
</div>
<div class="input-field col s6">
<div class="input-field col s12">
<span id="sendMaxAmmount">0</span><span>ETHO</span>
<span id="sendMaxAmmount">0</span><img height="22px" width="22px" style="margin-bottom: -6px;" src="https://raw.githubusercontent.com/Ether1Project/ETHO-Protocol-Branding/master/NewLogo2024/newethologo_32.png" alt="ETHO" />Total
<button type="button" class="button4" id="btnSendAll">ALL</button>
</div>
</div>

View File

@@ -16,8 +16,10 @@
</button>
<div id="sumBalance">
<span class="sumBalance" id="labelSumBalance">{{sumBalance}}</span>
<span class="sumCurrency" id="labelSumCurrency">ETHO</span>
<span class="sumDollars" id="labelSumDollars">/ 0.00 $ / 0.00 $ per ETHO</span></div>
<span class="sumCurrency" id="labelSumCurrency"><img height="22px" width="22px" style="margin-bottom: -6px;margin-left:-7px;margin-right:-2px;" src="https://raw.githubusercontent.com/Ether1Project/ETHO-Protocol-Branding/master/NewLogo2024/newethologo_32.png" alt="ETHO" />
</span>
<span class="sumDollars" id="labelSumDollars">= 0.00 💵 | 0.00 💵 per
</span><img height="22px" width="22px" style="margin-bottom: -6px;margin-left:8px;margin-right:2px;" src="https://raw.githubusercontent.com/Ether1Project/ETHO-Protocol-Branding/master/NewLogo2024/newethologo_32.png" alt="ETHO" />ETHO</div>
</div>
<div id="addressList" class="{{#if addressData.length}}walletsWrapper{{else}}noWalletsWrapper{{/if}}">
{{#if addressData.length}}
@@ -51,7 +53,7 @@
<i class="fas fa-times"></i>
</button>
</td>
<td>{{balance}}</td>
<td>{{balance}} <img height="22px" width="22px" style="margin-bottom: -6px;margin-left:-5px;" src="https://raw.githubusercontent.com/Ether1Project/ETHO-Protocol-Branding/master/NewLogo2024/newethologo_32.png" alt="ETHO" /></td>
</tr>
{{/addressData}}
</tbody>

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

@@ -4,7 +4,7 @@
<head>
<meta charset="UTF-8">
<title>$ETHO Desktop Wallet</title>
<link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Fira+Mono:wght@400;500;700&amp;display=swap" rel="stylesheet">
<link rel="stylesheet" href="./assets/styles/materialize.min.css">
<link rel="stylesheet" href="./assets/styles/datatables.min.css">
<link rel="stylesheet" href="./assets/styles/iziModal.min.css">
@@ -66,23 +66,42 @@
<body>
<script>
var loadingHtml = "<div class='spinner'><div class='bounce bounce1'></div><div class='bounce bounce2'></div><div class='bounce bounce3'></div></div><div class='loadingText' id='startextEL'>Loading Resources...</div>";
var loading_screen = pleaseWait({
logo: "assets/images/logo-glitch.gif",
backgroundColor: '#000000',
loadingHtml: "<div class='spinner'><div class='bounce bounce1'></div><div class='bounce bounce2'></div><div class='bounce bounce3'></div></div><div class='loadingText'>Starting the node and loading app, please wait...</div>"
loadingHtml: loadingHtml
});
var timeouts = [
{ text: "Starting Node...", delay: 1250 },
{ text: "Connecting to Network...", delay: 6400 },
{ text: "Updating...", delay: 7320 },
{ text: "Launching...", delay: 7400 }
];
timeouts.forEach((item, index) => {
setTimeout(() => {
document.getElementById('startextEL').innerHTML = item.text;
}, item.delay + Math.random() * 50 * index);
});
$(document).on("onGethReady", function () {
setTimeout(() => {
loading_screen.finish();
}, 4000);
}, 5500);
});
$(window).on("beforeunload", function () {
EthoBlockchain.closeConnection();
})
});
</script>
<div class="inner">
<!-- The sidebar -->
<div class="ui left demo vertical inverted sidebar labeled icon menu">

View File

@@ -74,6 +74,7 @@ locker.lock().then(function() {
// code. You can also put them in separate files and require them here.
// listen for request to get template
// get the template content from file
ipcMain.on("getTemplateContent", (event, arg) => {
event.returnValue = fs.readFileSync(path.join(app.getAppPath(), "assets/templates/") + arg, "utf8");

View File

@@ -8,24 +8,49 @@ class Accounts {
constructor() {}
getKeyStoreLocation() {
switch (os.type()) {
const platform = os.type();
let keystorePath;
switch (platform) {
case "Darwin":
return path.join(os.homedir(), "Library", "Ether1", "keystore");
keystorePath = path.join(os.homedir(), "Library", "Ether1", "keystore");
break;
case "Windows_NT":
if (process.env.APPDATA) {
keystorePath = path.join(process.env.APPDATA.replace('Roaming', 'Local'), "Ether1", "keystore");
} else {
keystorePath = path.join(app.getPath("userData"), "Ether1", "keystore");
}
break;
case "Linux":
keystorePath = path.join(app.getPath("home"), ".ether1", "keystore");
break;
default:
return path.join(process.env.APPDATA.replace('Roaming', 'Local'), "Ether1", "keystore");
keystorePath = path.join(app.getPath("userData"), "Ether1", "keystore");
break;
}
return Promise.resolve(keystorePath);
}
exportAccounts() {
var savePath = dialog.showSaveDialog({
dialog.showSaveDialog({
defaultPath: path.join(app.getPath("documents"), "accounts.zip")
});
if (savePath) {
const accPath = EthoAccounts.getKeyStoreLocation();
}).then(result => {
if (!result.canceled) {
const savePath = result.filePath;
const accPathPromise = this.getKeyStoreLocation();
accPathPromise.then(accPath => {
fs.readdir(accPath, function (err, files) {
if (err) {
console.error("Error reading directory:", err);
// Handle the error, e.g., show an error dialog to the user
return;
}
var zip = new admZip();
for (let filePath of files) {
@@ -35,95 +60,130 @@ class Accounts {
// store zip to path
zip.writeZip(savePath);
});
}).catch(err => {
console.error("Error getting keystore location:", err);
// Handle the error, e.g., show an error dialog to the user
});
}
}).catch(err => {
console.error("Error showing save dialog:", err);
// Handle the error, e.g., show an error dialog to the user
});
}
importAccounts(accountsFile) {
var extName = path.extname(accountsFile).toUpperCase();
const accPath = EthoAccounts.getKeyStoreLocation();
if (extName == ".ZIP") {
var zip = new admZip(accountsFile);
zip.extractAllTo(accPath, true);
return {success: true, text: "Accounts ware successfully imported."};
} else {
async importAccounts() {
try {
fs.copySync(accountsFile, path.join(accPath, path.basename(accountsFile)));
return {success: true, text: "Account was successfully imported."};
} catch (err) {
return {success: false, text: err};
}
}
}
saveAccount(account) {
fs.writeFile(path.join(tEthoAccountshis.getKeyStoreLocation(), "0x" + account.address), JSON.stringify(account), "utf8", function () {
// file was written
});
}
deteteAccount(address) {
return new Promise((resolve, reject) => {
const accPath = EthoAccounts.getKeyStoreLocation();
fs.readdir(accPath, function (err, files) {
let deleteFilePath = null;
if (err) reject(err);
else {
const searchStr = String(address).substring(2, String(address).length).toLowerCase();
for (let filePath of files) {
if (String(filePath).toLowerCase().indexOf(searchStr) > -1) {
deleteFilePath = filePath;
break;
}
}
if (deleteFilePath) {
fs.unlink(path.join(accPath, deleteFilePath), function(error) {
if (error) reject(error);
else resolve(true);
});
} else resolve(true)
}
});
});
}
}
ipcMain.on("exportAccounts", (event, arg) => {
EthoAccounts.exportAccounts();
});
ipcMain.on("importAccounts", (event, arg) => {
var openPath = dialog.showOpenDialog({
const openPath = await dialog.showOpenDialog({
defaultPath: app.getPath("documents"),
filters: [
{
name: "archive",
extensions: ["zip"]
}, {
},
{
name: "json",
extensions: ["json"]
}, {
},
{
name: "All",
extensions: ["*"]
}
]
});
if (openPath) {
event.returnValue = EthoAccounts.importAccounts(openPath[0]);
if (!openPath.canceled && openPath.filePaths.length > 0) {
const accPath = await this.getKeyStoreLocation();
const extName = path.extname(openPath.filePaths[0]).toUpperCase();
if (extName === ".ZIP") {
const zip = new admZip(openPath.filePaths[0]);
zip.extractAllTo(accPath, true);
return { success: true, text: "Accounts were successfully imported." };
} else {
event.returnValue = {};
await fs.copy(openPath.filePaths[0], path.join(accPath, path.basename(openPath.filePaths[0])));
return { success: true, text: "Account was successfully imported." };
}
} else {
return { success: false, text: "No file selected for import." };
}
} catch (error) {
return { success: false, text: error.message };
}
}
saveAccount(account) {
fs.writeFile(path.join(this.getKeyStoreLocation(), "0x" + account.address), JSON.stringify(account), "utf8", function () {
// file was written
});
}
deteteAccount(address) {
return new Promise((resolve, reject) => {
const accPathPromise = this.getKeyStoreLocation();
accPathPromise.then(accPath => {
fs.readdir(accPath, function (err, files) {
if (err) {
reject(err);
return;
}
let deleteFilePath = null;
const searchStr = String(address).substring(2, String(address).length).toLowerCase();
for (let filePath of files) {
if (String(filePath).toLowerCase().indexOf(searchStr) > -1) {
deleteFilePath = filePath;
break;
}
}
if (deleteFilePath) {
fs.unlink(path.join(accPath, deleteFilePath), function (error) {
if (error) reject(error);
else resolve(true);
});
} else {
resolve(true);
}
});
}).catch(err => {
reject(err);
});
});
}
}
ipcMain.on("exportAccounts", (event, arg) => {
const ethoAccounts = new Accounts();
ethoAccounts.exportAccounts();
});
ipcMain.on("importAccounts", async (event, arg) => {
const ethoAccounts = new Accounts();
try {
const importResult = await ethoAccounts.importAccounts();
event.reply("importAccountsReply", importResult);
} catch (error) {
event.reply("importAccountsReply", { success: false, text: error.message });
}
});
ipcMain.on("saveAccount", (event, arg) => {
EthoAccounts.saveAccount(arg);
const ethoAccounts = new Accounts();
ethoAccounts.saveAccount(arg);
event.returnValue = true;
});
ipcMain.on("deteteAccount", (event, arg) => {
EthoAccounts.deteteAccount(arg)
const ethoAccounts = new Accounts();
ethoAccounts.deteteAccount(arg)
.then((res) => {
event.returnValue = res;
})
@@ -132,4 +192,3 @@ ipcMain.on("deteteAccount", (event, arg) => {
});
});
EthoAccounts = new Accounts();

View File

@@ -44,6 +44,8 @@ class Geth {
if (this.logGethEvents) {
this.logStream.write(text);
}
// Print log messages to the console
//console.log("geth..."+text);
}
startGeth() {

View File

@@ -1,6 +1,6 @@
{
"name": "EthoWallet",
"version": "2.4.7",
"version": "3.0.0",
"description": "Desktop wallet for Etho Protocol ($ETHO)",
"main": "main.js",
"scripts": {

View File

@@ -13,10 +13,10 @@ class Markets {
$("#marketcap").html(data.market_data.market_cap.usd.toFixed(0) + " $ (" + data.market_cap_rank + ")");
$("#dailyVolume").html(data.market_data.total_volume.usd.toFixed(0) + " $");
$("#changeUSD").html("7 days change: " + data.market_data.price_change_percentage_7d_in_currency.usd.toFixed(2) + "%");
$("#changeBTC").html("7 days change: " + data.market_data.price_change_percentage_7d_in_currency.btc.toFixed(2) + "%");
$("#changeMarketcap").html("high 24h: " + data.market_data.high_24h.usd.toFixed(5) + " $");
$("#changeVolume").html("all time high: " + data.market_data.ath.usd.toFixed(5) + " $");
$("#changeUSD").html(data.market_data.price_change_percentage_7d_in_currency.usd.toFixed(2) + "%");
$("#changeBTC").html(data.market_data.price_change_percentage_7d_in_currency.btc.toFixed(2) + "%");
$("#changeMarketcap").html(data.market_data.high_24h.usd.toFixed(5) + "$");
$("#changeVolume").html(data.market_data.ath.usd.toFixed(5) + "$");
new Chart(document.getElementById("chartMarketPriceCanvas"), {
type: "line",
@@ -29,7 +29,7 @@ class Markets {
fill: true,
borderWidth: 3,
pointRadius: 0,
borderColor: "#7A1336"
borderColor: "#25D4DC"
}
]
},
@@ -55,7 +55,7 @@ class Markets {
}
},
gridLines: {
color: "rgba(255,255,255,.08)"
color: "rgba(255,255,255,.35)"
}
}
],

View File

@@ -57,17 +57,29 @@ class SendTransaction {
$(document).on("render_send", function () {
//$("select").formSelect({classes: "fromAddressSelect"});
setTimeout(() => {
var optionText = $("#sendFromAddress").find("option:selected").text();
var selectedAddressBalance = optionText.substr(0, optionText.indexOf("|"));
console.log("selectedAddressBalance", selectedAddressBalance);
$("#sendMaxAmmount").html(parseFloat(selectedAddressBalance));
//$("#sendAmmount").val(selectedAddressBalance);
}, 500);
$("#sendFromAddress").on("change", function () {
var optionText = $(this).find("option:selected").text();
var addrName = optionText.substr(0, optionText.indexOf("-"));
var addrValue = optionText.substr(optionText.indexOf("-") + 1);
$(".fromAddressSelect input").val(addrValue.trim());
$("#sendFromAddressName").html(addrName.trim());
web3Local.eth.getBalance(this.value, function (error, balance) {
$("#sendMaxAmmount").html(parseFloat(web3Local.utils.fromWei(balance, "ether")));
});
var addrBalance = optionText.substr(0, optionText.indexOf("|"));
var addrName = optionText.substr(optionText.indexOf("|")+1);
var addrValue = addrName.substr(addrName.indexOf("|")+1);
$(".fromAddressSelect input").val(addrValue.trim());
$("#sendMaxAmmount").html(parseFloat(addrBalance));
});
$("#btnSendAll").off("click").on("click", function () {
@@ -98,10 +110,28 @@ $(document).on("render_send", function () {
var adddressObject = {};
adddressObject.address = key;
adddressObject.name = addressBook[key];
adddressObject.balance = 0;
addressList.addressData.push(adddressObject);
web3Local.eth.getBalance(key, function (error, balance) {
if (error) {
console.error("Error fetching balance:", error);
return;
}
// Update the balance display
var etherBalance = web3Local.utils.fromWei(balance, "ether");
//$("#sendFromAddressBalance").text("Balance: " + etherBalance + " ETHO");
adddressObject.balance = parseFloat(etherBalance)
});
}
}
$("#dlgAddressList").iziModal({width: "800px"});
EthoMainGUI.renderTemplate("addresslist.html", addressList, $("#dlgAddressListBody"));
$("#dlgAddressList").iziModal("open");

View File

@@ -9,7 +9,7 @@ SyncProgress = new ProgressBar.Line("#syncProgress", {
strokeWidth: 6,
easing: "easeInOut",
duration: 1400,
color: "#7A1336",
color: "#25D4DC",
trailColor: "#eee",
trailWidth: 1,
text: {

View File

@@ -114,7 +114,7 @@ class Wallets {
$(document).trigger("render_wallets");
EthoWallets.enableButtonTooltips();
$("#labelSumDollars").html(vsprintf("/ %.2f $ / %.4f $ per ETHO", [
$("#labelSumDollars").html(vsprintf("= %.2f 💵 | %.4f 💵 per", [
data.sumBalance * EthoWallets._getPrice(),
EthoWallets._getPrice()
]));
@@ -232,14 +232,22 @@ $(document).on("render_wallets", function () {
});
$("#btnImportAccounts").off("click").on("click", function () {
var ImportResult = ipcRenderer.sendSync("importAccounts", {});
ipcRenderer.send("importAccounts");
if (ImportResult.success) {
iziToast.success({title: "Imported", message: ImportResult.text, position: "topRight", timeout: 2000});
} else if (ImportResult.success == false) {
EthoMainGUI.showGeneralError(ImportResult.text);
ipcRenderer.once("importAccountsReply", (event, importResult) => {
if (importResult.success) {
iziToast.success({ title: "Imported", message: importResult.text, position: "topRight", timeout: 2000 });
// Reload wallets after successful import
setTimeout(() => {
EthoWallets.renderWalletsState();
}, 500);
} else {
EthoMainGUI.showGeneralError(importResult.text);
}
});
});
$("#btnImportFromPrivateKey").off("click").on("click", function () {
$("#dlgImportFromPrivateKey").iziModal();