From 934b072cc875794053e2bb2bbb7bcbfc44bdf3c9 Mon Sep 17 00:00:00 2001
From: Shirkanesi <shirkanesi@shirkanesi.com>
Date: Fri, 8 Sep 2023 16:43:34 +0200
Subject: [PATCH] more work; TODO: rephrase commit message

---
 frontend/src/views/tools/IPv6.vue | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/frontend/src/views/tools/IPv6.vue b/frontend/src/views/tools/IPv6.vue
index 6047c3004..5333c9efb 100644
--- a/frontend/src/views/tools/IPv6.vue
+++ b/frontend/src/views/tools/IPv6.vue
@@ -78,7 +78,11 @@
       <b-form-group :label="$t('system.ip_address')">
         <b-form-input v-model="v4_mapped_v6_input" :placeholder="$t('system.ip_address')"
                       :state="ipaddress().is_ip_v4(this.v4_mapped_v6_input)" required></b-form-input>
-        <b-form-invalid-feedback id="input-live-feedback-compress">
+        <div class="form-row m-0" >
+          <b-form-select class="col-md-3 pr-4 mb-0" v-model="selected_v4_mapped_v6_prefix" :options="available_eui_prefixes" v-if="this.$store.state.user"></b-form-select>
+          <b-form-input :state="checkEUI_Subnet" class="mb-0" :class="[this.$store.state.user ? 'col-md-9' : 'col-md-12']" v-model="selected_v4_mapped_v6_prefix"></b-form-input>
+          <b-form-invalid-feedback id="input-live-feedback-compress">
+          <!-- TODO! -->
           <span v-if="checkEUI_IPv6">
             {{ $t('views.tools.ip_tools.ipv6_no_eui') }}
           </span>
@@ -86,8 +90,9 @@
             {{ $t('system.invalid_ip') }}
           </span>
         </b-form-invalid-feedback>
+        </div>
       </b-form-group>
-      <b-form-group :label="$t('system.mac_address')">
+      <b-form-group :label="$t('system.ipv6_address')">
         <CopyField :text="v4_mapped_v6" code/>
       </b-form-group>
     </b-card>
@@ -128,10 +133,9 @@ export default {
       return ipaddress.eui_ipv6_to_mac(this.local_link_to_mac)
     },
     v4_mapped_v6() {
-      console.log(this.v4_mapped_v6_input)
       // todo: add prefix selection
       // todo check prefix length...
-      return ipaddress.map_v4_v6('feed:dead:beef::/64', this.v4_mapped_v6_input)
+      return ipaddress.map_v4_v6(this.selected_v4_mapped_v6_prefix, this.v4_mapped_v6_input)
     },
     checkIPExpandCompress() {
       return ipaddress.is_ip_v6(this.ip_expand_compress)
@@ -201,6 +205,7 @@ export default {
       mac_to_local_link: '',
       local_link_to_mac: '',
       selected_eui_prefix: 'fe80::/10',
+      selected_v4_mapped_v6_prefix: '::ffff:0000:0000/96',
       available_eui_prefixes: [
         {value: 'fe80::/10', text: 'Link-Local (fe80::/10)'},
       ],
-- 
GitLab