From a9dda675523fc55b4ab499eeeba7b4032151778c Mon Sep 17 00:00:00 2001
From: VIktorGrev <viktog2210@gmail.com>
Date: Wed, 1 May 2024 10:09:30 +0200
Subject: [PATCH] style: Transelating views

---
 src/views/Budget/BudgetOverview.vue           | 21 +++-----
 src/views/Budget/BudgetView.vue               | 47 ++++++++--------
 src/views/FeedbackView.vue                    |  6 +--
 src/views/LeaderboardView.vue                 | 53 ++++++++++---------
 src/views/NotFoundView.vue                    | 13 ++---
 src/views/Settings/SettingsAccountView.vue    | 45 ++++++++--------
 src/views/Settings/SettingsBankView.vue       | 20 +++----
 .../Settings/SettingsNotificationView.vue     | 30 +++++------
 src/views/Settings/SettingsProfileView.vue    | 17 +++---
 src/views/Settings/SettingsSecurityView.vue   | 21 ++++----
 src/views/SettingsView.vue                    |  9 ++--
 src/views/ShopView.vue                        |  2 +-
 src/views/UnauthorizedView.vue                |  9 ++--
 src/views/User/UserFriendsView.vue            | 42 +++++++--------
 14 files changed, 166 insertions(+), 169 deletions(-)

diff --git a/src/views/Budget/BudgetOverview.vue b/src/views/Budget/BudgetOverview.vue
index 3219b78..68e3c13 100644
--- a/src/views/Budget/BudgetOverview.vue
+++ b/src/views/Budget/BudgetOverview.vue
@@ -71,20 +71,17 @@ const goToBudget = (id: number) => {
 
 <template>
   <div class="container">
-    <h1 class="text-center">Your Budgets</h1>
-    <button1 id="createBudgetButton" button-text="Create new budget" class="btn btn-primary" type="button" data-bs-toggle="collapse" data-bs-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample"/>
-
+    <h1 class="text-center">Dine Budsjetter</h1>
+    <button1 id="createBudgetButton" button-text="Opprett nytt budsjett" class="btn btn-primary" type="button" data-bs-toggle="collapse" data-bs-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample"/>
     <div class="collapse" id="collapseExample">
       <div class="container collapse-container">
         <div class="input-group">
-          <input id="collapseInput" class="form-control" type="text" placeholder="Enter name of budget" v-model="budgetNameInput">
-          <button1 id="collapseButton" button-text="Create" data-bs-dismiss="modal" @click="createNewBudget"/>
+          <input id="collapseInput" class="form-control" type="text" placeholder="Skriv inn navn på budsjettet" v-model="budgetNameInput">
+          <button1 id="collapseButton" button-text="Opprett" data-bs-dismiss="modal" @click="createNewBudget"/>
         </div>
       </div>
     </div>
-
     <p class="text-danger">{{ errorMsg }}</p>
-
     <ul class="budgetContainer" :key="budgetListKey">
       <li v-for="(item, index) in budgetList">
         <budget-box
@@ -99,11 +96,10 @@ const goToBudget = (id: number) => {
         ></budget-box>
       </li>
     </ul>
-
-    <nav id="navbar" aria-label="Page navigation example">
+    <nav id="navbar" aria-label="Sidenavigasjon eksempel">
       <ul class="pagination">
         <li class="page-item">
-          <a class="page-link" href="#" aria-label="Previous">
+          <a class="page-link" href="#" aria-label="Forrige">
             <span aria-hidden="true">&laquo;</span>
           </a>
         </li>
@@ -111,17 +107,16 @@ const goToBudget = (id: number) => {
         <li class="page-item"><a class="page-link" href="#">2</a></li>
         <li class="page-item"><a class="page-link" href="#">3</a></li>
         <li class="page-item">
-          <a class="page-link" href="#" aria-label="Next">
+          <a class="page-link" href="#" aria-label="Neste">
             <span aria-hidden="true">&raquo;</span>
           </a>
         </li>
       </ul>
     </nav>
-
   </div>
-
 </template>
 
+
 <style scoped>
 .collapse-container {
   align-content: center;
diff --git a/src/views/Budget/BudgetView.vue b/src/views/Budget/BudgetView.vue
index 7e4f8c4..7cf6f72 100644
--- a/src/views/Budget/BudgetView.vue
+++ b/src/views/Budget/BudgetView.vue
@@ -226,8 +226,8 @@ const importBudget = async (budgetId: number) => {
     <h1 class="text-center">{{ title }}</h1>
 
     <div class="button-container">
-      <button1 id="goBack" @click="router.push('/budget-overview')" button-text="Go back"/>
-      <button1 id="optionButton" button-text="Options" data-bs-toggle="modal" data-bs-target="#modal"/>
+      <button1 id="goBack" @click="router.push('/budsjett-oversikt')" button-text="GÃ¥ tilbake"/>
+      <button1 id="optionButton" button-text="Alternativer" data-bs-toggle="modal" data-bs-target="#modal"/>
     </div>
 
     <p class="text-danger">{{ errorMsg }}</p>
@@ -236,23 +236,23 @@ const importBudget = async (budgetId: number) => {
       <div class="modal-dialog">
         <div class="modal-content">
           <div class="modal-header">
-            <h3>Options</h3>
+            <h3>Alternativer</h3>
             <button class="btn btn-close" data-bs-dismiss="modal"></button>
           </div>
           <div class="modal-body">
-            <button id="importButton" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#import-modal"><img src="../../assets/icons/import.svg" height="20" width="20" alt="picture">Import budget</button>
-            <button id="editBudget" class="btn btn-primary" data-bs-toggle="collapse" data-bs-target="#editBudgetCollapse" aria-expanded="false" aria-controls="editBudgetCollapse"><img src="../../assets/icons/edit-button.svg" alt="editButton">Rename budget</button>
+            <button id="importButton" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#import-modal"><img src="../../assets/icons/import.svg" height="20" width="20" alt="bilde">Importer budsjett</button>
+            <button id="editBudget" class="btn btn-primary" data-bs-toggle="collapse" data-bs-target="#editBudgetCollapse" aria-expanded="false" aria-controls="editBudgetCollapse"><img src="../../assets/icons/edit-button.svg" alt="redigerKnapp">Endre navn på budsjett</button>
             <div class="collapse" id="editBudgetCollapse">
               <div class="container collapse-container">
                 <form ref="renameFormRef" @submit.prevent="updateBudget(budget, budgetTitle)">
                   <div class="input-group">
-                    <input id="collapseInput" class="col-5 form-control" type="text" required minlength="1" placeholder="Enter new name of budget" v-model="budgetTitle">
-                    <button1 id="collapseButton" type="submit" button-text="Confirm" data-bs-dismiss="modal"/>
+                    <input id="collapseInput" class="col-5 form-control" type="text" required minlength="1" placeholder="Skriv inn nytt navn på budsjettet" v-model="budgetTitle">
+                    <button1 id="collapseButton" type="submit" button-text="Bekreft" data-bs-dismiss="modal"/>
                   </div>
                 </form>
               </div>
             </div>
-            <button id="deleteButton" class="btn btn-danger" data-bs-toggle="modal" data-bs-target="#confirm-modal"><img src="../../assets/icons/trash-can.svg" height="20" width="20" alt="picture">Delete budget</button>
+            <button id="deleteButton" class="btn btn-danger" data-bs-toggle="modal" data-bs-target="#confirm-modal"><img src="../../assets/icons/trash-can.svg" height="20" width="20" alt="bilde">Slett budsjett</button>
           </div>
         </div>
       </div>
@@ -261,7 +261,7 @@ const importBudget = async (budgetId: number) => {
     <confirm-delete-modal :budget-id="useBudgetStore().getActiveBudgetId"
                           modal-id="confirm-modal"
                           :budgetTitle="title"
-                          @deletedEvent="router.push('/budget-overview')"/>
+                          @deletedEvent="router.push('/budsjett-oversikt')"/>
 
     <import-budget-modal modal-id="import-modal"
                          :listOfBudgetResponseDTO="budgetDTOList"
@@ -269,26 +269,26 @@ const importBudget = async (budgetId: number) => {
 
     <div class="budget-info-container">
       <div class="info budget-container">
-        <i><img src="../../assets/icons/money2.svg" width="48px" height="48px" alt="picture"></i>
+        <i><img src="../../assets/icons/money2.svg" width="48px" height="48px" alt="bilde"></i>
         <div class="budget-text-container">
           <h5>{{budget}} kr</h5>
-          <p>Budget</p>
+          <p>Budsjett</p>
         </div>
       </div>
 
       <div class="info expenses-container">
-        <i><img src="../../assets/icons/credit-card.svg" width="48px" height="48px" alt="picture"></i>
+        <i><img src="../../assets/icons/credit-card.svg" width="48px" height="48px" alt="bilde"></i>
         <div class="expenses-text-container">
           <h5>{{expenses}} kr</h5>
-          <p>Expenses</p>
+          <p>Utgifter</p>
         </div>
       </div>
 
       <div class="info balance-container">
-        <i ref="iRef"><img src="../../assets/icons/scale.svg" width="48px" height="48px" alt="picture"></i>
+        <i ref="iRef"><img src="../../assets/icons/scale.svg" width="48px" height="48px" alt="bilde"></i>
         <div class="balance-text-container">
           <h5>{{balance}} kr</h5>
-          <p>Balance</p>
+          <p>Balanse</p>
         </div>
       </div>
     </div>
@@ -297,24 +297,24 @@ const importBudget = async (budgetId: number) => {
     <div class="budget-content-container">
       <form class="budget-from" @submit.prevent="updateBudget(budgetValue, title)">
         <div class="input-group">
-          <span class="input-group-text">Your budget </span>
-          <input type="text" class="form-control" placeholder="Enter your budget" required v-model="budgetValue">
-          <button type="submit" class="btn btn-primary">Calculate</button>
+          <span class="input-group-text">Ditt budsjett </span>
+          <input type="text" class="form-control" placeholder="Skriv inn ditt budsjett" required v-model="budgetValue">
+          <button type="submit" class="btn btn-primary">Beregn</button>
         </div>
       </form>
 
       <form class="expenses-form" @submit.prevent="addNewExpense(expenseDescription, expenseAmount)">
         <div class="input-group">
-          <span class="input-group-text">Add new expense </span>
-          <input type="text" class="form-control" placeholder="Name of expense" required v-model="expenseDescription">
-          <input type="number" min="0" class="form-control" placeholder="Amount (kr)" required v-model="expenseAmount">
-          <button type="submit" class="btn btn-primary">Calculate</button>
+          <span class="input-group-text">Legg til ny utgift </span>
+          <input type="text" class="form-control" placeholder="Navn på utgift" required v-model="expenseDescription">
+          <input type="number" min="0" class="form-control" placeholder="Beløp (kr)" required v-model="expenseAmount">
+          <button type="submit" class="btn btn-primary">Beregn</button>
         </div>
       </form>
     </div>
 
     <div v-if="expenseDTOList.length != 0" class="expenses-details-container">
-      <h3>Expenses details</h3>
+      <h3>Utgiftsdetaljer</h3>
       <div class="expense-box-container">
         <expense-box v-for="(expenseDTO, index) in expenseDTOList"
                      :id="Number(expenseDTO.expenseId) || 0"
@@ -330,6 +330,7 @@ const importBudget = async (budgetId: number) => {
   </div>
 </template>
 
+
 <style scoped>
 
 .button-container {
diff --git a/src/views/FeedbackView.vue b/src/views/FeedbackView.vue
index 6eef349..a4cbe7a 100644
--- a/src/views/FeedbackView.vue
+++ b/src/views/FeedbackView.vue
@@ -2,14 +2,14 @@
     <main>
       <div class="wrapper">
       <div id="formFrame">
-          <h1>Feedback</h1>
+          <h1>TIlbakemelding</h1>
       <form @submit.prevent="submitForm">
         <BaseInput v-model="email" label="Email" type="email" placeholder="Enter your email" inputId="email" required />
         <br>
-        <label for="feedback">Your feedback:</label>
+        <label for="feedback">Din tilbakemelding:</label>
         <textarea v-model="message" placeholder="Write here" rows="5" name="comment[text]" id="comment_text" cols="33"
           required></textarea>
-        <Button1 button-text="Send" @click="submitForm">Submit</Button1>
+        <Button1 button-text="Send" @click="submitForm">Send inn</Button1>
         <p v-if="submissionStatus">{{ submissionStatus }}</p>
       </form>
     </div>
diff --git a/src/views/LeaderboardView.vue b/src/views/LeaderboardView.vue
index 12acc33..f67a36c 100644
--- a/src/views/LeaderboardView.vue
+++ b/src/views/LeaderboardView.vue
@@ -1,41 +1,42 @@
 <template>
     <br>
     <div id="dropdownContainer">
-        <h1 class="box">Leaderboard</h1>
+        <h1 class="box">Poengtavle</h1>
     </div>
-    <div id = "content">
+    <div id="content">
         <div id="dropdownContainer">
-        <div class="box">
-            <div class="btn-group-vertical" id="radioContainer" role="group"
-            aria-label="Vertical radio toggle button group">
-            <input type="radio" class="btn-check" name="vbtn-radio" id="vbtn-radio1" autocomplete="off" checked>
-            <label class="btn btn-outline-primary" for="vbtn-radio1" @click="global"><img src="@/assets/globe.png" style="width: 60px" alt="globe">  Global</label>
-            <input type="radio" class="btn-check" name="vbtn-radio" id="vbtn-radio2" autocomplete="off">
-            <label class="btn btn-outline-primary" for="vbtn-radio2" @click="friends"><img src="@/assets/friends.png" style="width: 60px" alt="friends">  Friends</label>
+            <div class="box">
+                <div class="btn-group-vertical" id="radioContainer" role="group"
+                     aria-label="Vertikal radio knappgruppe">
+                    <input type="radio" class="btn-check" name="vbtn-radio" id="vbtn-radio1" autocomplete="off" checked>
+                    <label class="btn btn-outline-primary" for="vbtn-radio1" @click="global"><img src="@/assets/globe.png" style="width: 60px" alt="globus"> Global</label>
+                    <input type="radio" class="btn-check" name="vbtn-radio" id="vbtn-radio2" autocomplete="off">
+                    <label class="btn btn-outline-primary" for="vbtn-radio2" @click="friends"><img src="@/assets/friends.png" style="width: 60px" alt="venner"> Venner</label>
+                </div>
+            </div>
         </div>
-        </div>
-    </div>
-    <main>
-        <div id="leaderboard">
-            <h1><img src="@/assets/items/pigcoin.png" style="width: 2rem" alt="pig coin"> Total points</h1>
-            <Leaderboard :leaderboard="pointsLeaderboardData" :leaderboardExtra="pointsLeaderboardDataExtra" @navigateToUserProfile="navigateToUserProfile" />
-        </div>
-        <div id="leaderboard">
-            <h1><img src="@/assets/icons/fire.png" style="width: 2rem" alt="fire"> Current streak</h1>
-            <Leaderboard :leaderboard="currentLeaderboardData" :leaderboardExtra="currentLeaderboardDataExtra" @navigateToUserProfile="navigateToUserProfile" />
-        </div>
-        <div id="leaderboard">
-            <h1><img src="@/assets/icons/fire.png" style="width: 2rem" alt="fire"> Highest streak</h1>
-            <Leaderboard :leaderboard="streakLeaderboardData" :leaderboardExtra="streakLeaderboardDataExtra" @navigateToUserProfile="navigateToUserProfile" />
-        </div>
-    </main>
+        <main>
+            <div id="leaderboard">
+                <h1><img src="@/assets/items/pigcoin.png" style="width: 2rem" alt="pig coin"> Totale poeng</h1>
+                <Leaderboard :leaderboard="pointsLeaderboardData" :leaderboardExtra="pointsLeaderboardDataExtra" @navigateToUserProfile="navigateToUserProfile" />
+            </div>
+            <div id="leaderboard">
+                <h1><img src="@/assets/icons/fire.png" style="width: 2rem" alt="ild"> Nåværende rekke</h1>
+                <Leaderboard :leaderboard="currentLeaderboardData" :leaderboardExtra="currentLeaderboardDataExtra" @navigateToUserProfile="navigateToUserProfile" />
+            </div>
+            <div id="leaderboard">
+                <h1><img src="@/assets/icons/fire.png" style="width: 2rem" alt="ild"> Høyeste rekke</h1>
+                <Leaderboard :leaderboard="streakLeaderboardData" :leaderboardExtra="streakLeaderboardDataExtra" @navigateToUserProfile="navigateToUserProfile" />
+            </div>
+        </main>
     </div>
     <div id="communityContainer">
-        <h1>Total points earned as a community</h1>
+        <h1>Totale poeng opptjent som et fellesskap</h1>
         <h2>1000000 <img src="@/assets/items/v-buck.png" style="width: 2rem" alt="alt"></h2>
     </div>
 </template>
 
+
 <script setup lang="ts">
 import { onMounted, ref } from 'vue';
 import { useRouter } from 'vue-router';
diff --git a/src/views/NotFoundView.vue b/src/views/NotFoundView.vue
index 7637014..abe797a 100644
--- a/src/views/NotFoundView.vue
+++ b/src/views/NotFoundView.vue
@@ -1,17 +1,17 @@
 <template>
-    <div class="container-fluid"> <!-- Changed from 'container' to 'container-fluid' -->
+    <div class="container-fluid">
         <div class="row">
             <div class="col-md-12">
-                <div class="error-template text-center"> <!-- 'text-center' for centering text content -->
+                <div class="error-template text-center">
                     <h1>
-                        Oops!</h1>
+                        Oi!</h1>
                     <h2>
-                        404 Not Found</h2>
+                        404 Ikke funnet</h2>
                     <div class="error-details">
-                        Sorry, an error has occurred, Requested page not found!
+                        Beklager, det har oppstått en feil. Forespurt side ikke funnet!
                     </div>
                     <div class="error-actions">
-                        <Button1 button-text="Take Me Home" @click="home" />
+                        <Button1 button-text="Ta meg hjem" @click="home" />
                     </div>
                 </div>
             </div>
@@ -19,6 +19,7 @@
     </div>
 </template>
 
+
 <script setup lang="ts">
 import { useRouter } from 'vue-router';
 import Button1 from '@/components/Buttons/Button1.vue';
diff --git a/src/views/Settings/SettingsAccountView.vue b/src/views/Settings/SettingsAccountView.vue
index 82de6a0..50c2bfe 100644
--- a/src/views/Settings/SettingsAccountView.vue
+++ b/src/views/Settings/SettingsAccountView.vue
@@ -50,26 +50,25 @@ onMounted(() => {
 </script>
 
 <template>
-    <div class="tab-pane active" id="account">
-        <h6>ACCOUNT SETTINGS</h6>
-        <hr>
-        <form  @submit.prevent="handleSubmit">
-            <div class="form-group">
-                <BaseInput :model-value="emailRef" @input-change-event="handleEmailInputEvent" id="emailInput-change"
-                    input-id="email-new" type="email" label="Email" placeholder="Enter your email"
-                    invalid-message="Invalid email"/>
-            </div>
-            <p class="text-danger">{{ errorMsg }}</p>
-            <p class="text-success">{{ confirmationMsg }}</p>
-            <br>
-            <button type="submit" class="btn btn-primary">Update Profile</button>
-            <hr>
-            <div class="form-group">
-                <label class="d-block text-danger">Delete Account</label>
-                <p class="text-muted font-size-sm">Once you delete your account, there is no going
-                    back. Please be certain.</p>
-            </div>
-            <button class="btn btn-danger" type="button">Delete Account</button>
-        </form>
-    </div>
-</template>
\ No newline at end of file
+  <div class="tab-pane active" id="account">
+      <h6>KONTO INNSTILLINGER</h6>
+      <hr>
+      <form  @submit.prevent="handleSubmit">
+          <div class="form-group">
+              <BaseInput :model-value="emailRef" @input-change-event="handleEmailInputEvent" id="emailInput-change"
+                  input-id="email-new" type="email" label="E-post" placeholder="Skriv inn din e-post"
+                  invalid-message="Ugyldig e-post"/>
+          </div>
+          <p class="text-danger">{{ errorMsg }}</p>
+          <p class="text-success">{{ confirmationMsg }}</p>
+          <br>
+          <button type="submit" class="btn btn-primary">Endre Informasjon</button>
+          <hr>
+          <div class="form-group">
+              <label class="d-block text-danger">Slett Bruker</label>
+              <p class="text-muted font-size-sm">Når du først har slettet kontoen din, er det ingen vei tilbake. Vennligst vær sikker.</p>
+          </div>
+          <button class="btn btn-danger" type="button">Slett Bruker</button>
+      </form>
+  </div>
+</template>
diff --git a/src/views/Settings/SettingsBankView.vue b/src/views/Settings/SettingsBankView.vue
index 85c5b04..dc17e8a 100644
--- a/src/views/Settings/SettingsBankView.vue
+++ b/src/views/Settings/SettingsBankView.vue
@@ -1,35 +1,35 @@
 <template>
     <div class="tab-pane active" id="billing">
-        <h6>BANK SETTINGS</h6>
+        <h6>BANKKONTO INNSTILLINGER</h6>
         <hr>
         <form @submit.prevent="handleSpendingSubmit">
             <div class="form-group">
                 <BaseInput :model-value="spendingAccount" @input-change-event="handleSpendingInputEvent" id="firstNameInputChange" input-id="first-name-new"
-                    type="Number" label="Spending Account" placeholder="Enter your spending account"
-                    invalid-message="Please enter your spending account" />
+                    type="Number" label="Brukskonto" placeholder="Skriv inn din brukskonto"
+                    invalid-message="Vennligst skriv inn din brukskonto" />
             </div>
             <br>
-            <button type="submit" class="btn btn-primary">Update Spending Account</button>
+            <button type="submit" class="btn btn-primary">Oppdater brukskonto</button>
         </form>
         <br>
         <form @submit.prevent="handleSavingSubmit">
             <div class="form-group">
                 <BaseInput :model-value="savingsAccount" @input-change-event="handleSavingInputEvent" id="firstNameInputChange" input-id="first-name-new" type="Number"
-                    label="Savings Account" placeholder="Enter your Savings account"
-                    invalid-message="Please enter your Savings account" />
+                    label="Sparekonto" placeholder="Skriv inn din sparekonto"
+                    invalid-message="Vennligst skriv inn din sparekonto" />
             </div>
             <br>
-            <button type="submit" class="btn btn-primary">Update Savings Account</button>
+            <button type="submit" class="btn btn-primary">Oppdater sparekonto</button>
         </form>
         <hr>
         <div class="form-group mb-0">
-            <label class="d-block">Payment History</label>
-            <div class="border border-gray-500 bg-gray-200 p-3 text-center font-size-sm">You
-                have not made any payment.</div>
+            <label class="d-block">Betalingshistorikk</label>
+            <div class="border border-gray-500 bg-gray-200 p-3 text-center font-size-sm">Du har ikke foretatt noen betaling.</div>
         </div>
     </div>
 </template>
 
+
 <script setup lang="ts">
 import { ref } from 'vue';
 import BaseInput from '@/components/InputFields/BaseInput.vue';
diff --git a/src/views/Settings/SettingsNotificationView.vue b/src/views/Settings/SettingsNotificationView.vue
index 225f1ae..f33417a 100644
--- a/src/views/Settings/SettingsNotificationView.vue
+++ b/src/views/Settings/SettingsNotificationView.vue
@@ -1,56 +1,55 @@
 <template>
     <div class="tab-pane active" id="notification">
-        <h6>NOTIFICATION SETTINGS</h6>
+        <h6>VARSLINGSINNSTILLINGER</h6>
         <hr>
         <form>
             <div class="form-group">
-                <label class="d-block mb-0">Security Alerts</label>
-                <div class="small text-muted mb-3">Receive security alert notifications via email
-                </div>
+                <label class="d-block mb-0">Sikkerhetsvarsler</label>
+                <div class="small text-muted mb-3">Motta sikkerhetsvarselvarsler via e-post</div>
                 <div class="custom-control custom-checkbox">
                     <input type="checkbox" class="custom-control-input" id="customCheck1">
-                    <label class="custom-control-label" for="customCheck1">Email each time a
-                        vulnerability is found</label>
+                    <label class="custom-control-label" for="customCheck1">E-post hver gang en
+                        sårbarhet blir funnet</label>
                 </div>
                 <div class="custom-control custom-checkbox">
                     <input type="checkbox" class="custom-control-input" id="customCheck2">
-                    <label class="custom-control-label" for="customCheck2">Email a digest summary of
-                        vulnerability</label>
+                    <label class="custom-control-label" for="customCheck2">E-post et sammendrag av
+                        sårbarhet</label>
                 </div>
             </div>
             <div class="form-group mb-0">
-                <label class="d-block">SMS Notifications</label>
+                <label class="d-block">SMS-varsler</label>
                 <ul class="list-group list-group-sm">
                     <li class="list-group-item has-icon">
-                        Comments
+                        Kommentarer
                         <div class="custom-control custom-control-nolabel custom-switch ml-auto">
                             <input type="checkbox" class="custom-control-input" id="customSwitch1">
                             <label class="custom-control-label" for="customSwitch1"></label>
                         </div>
                     </li>
                     <li class="list-group-item has-icon">
-                        Updates From People
+                        Oppdateringer fra personer
                         <div class="custom-control custom-control-nolabel custom-switch ml-auto">
                             <input type="checkbox" class="custom-control-input" id="customSwitch2">
                             <label class="custom-control-label" for="customSwitch2"></label>
                         </div>
                     </li>
                     <li class="list-group-item has-icon">
-                        Reminders
+                        PÃ¥minnelser
                         <div class="custom-control custom-control-nolabel custom-switch ml-auto">
                             <input type="checkbox" class="custom-control-input" id="customSwitch3">
                             <label class="custom-control-label" for="customSwitch3"></label>
                         </div>
                     </li>
                     <li class="list-group-item has-icon">
-                        Events
+                        Hendelser
                         <div class="custom-control custom-control-nolabel custom-switch ml-auto">
                             <input type="checkbox" class="custom-control-input" id="customSwitch4">
                             <label class="custom-control-label" for="customSwitch4"></label>
                         </div>
                     </li>
                     <li class="list-group-item has-icon">
-                        Pages You Follow
+                        Sider du følger
                         <div class="custom-control custom-control-nolabel custom-switch ml-auto">
                             <input type="checkbox" class="custom-control-input" id="customSwitch5">
                             <label class="custom-control-label" for="customSwitch5"></label>
@@ -60,5 +59,4 @@
             </div>
         </form>
     </div>
-
-</template>
\ No newline at end of file
+</template>
diff --git a/src/views/Settings/SettingsProfileView.vue b/src/views/Settings/SettingsProfileView.vue
index 8f88d26..4b5fb7e 100644
--- a/src/views/Settings/SettingsProfileView.vue
+++ b/src/views/Settings/SettingsProfileView.vue
@@ -101,35 +101,36 @@ onMounted(() => {
 
 <template>
   <div class="tab-pane active" id="profile">
-    <h6>YOUR PROFILE INFORMATION</h6>
+    <h6>DIN PROFILINFORMASJON</h6>
     <hr>
     <form @submit.prevent="handleSubmit" novalidate>
       <div class="user-avatar">
         <input type="file" ref="fileInputRef" @change="handleFileChange" accept=".jpg, .jpeg, .png"
           style="display: none;" />
-        <img :src="iconSrc" alt="User Avatar" style="width: 300px">
+        <img :src="iconSrc" alt="Brukeravatar" style="width: 300px">
         <div class="mt-2">
           <button type="button" class="btn btn-primary" @click="triggerFileUpload"><img
-              src="@/assets/icons/download.svg"> Upload Image</button>
+              src="@/assets/icons/download.svg"> Last opp bilde</button>
         </div>
       </div>
       <div class="form-group">
         <BaseInput :model-value="firstNameRef" @input-change-event="handleFirstNameInputEvent" id="firstNameInputChange"
-          input-id="first-name-new" type="text" label="First name" placeholder="Enter your first name"
-          invalid-message="Please enter your first name" />
+          input-id="first-name-new" type="text" label="Fornavn" placeholder="Skriv inn ditt fornavn"
+          invalid-message="Vennligst skriv inn ditt fornavn" />
       </div>
       <br>
       <div class="form-group">
         <BaseInput :model-value="surnameRef" @input-change-event="handleSurnameInputEvent" id="surnameInput-change"
-          input-id="surname-new" type="text" label="Surname" placeholder="Enter your surname"
-          invalid-message="Please enter your surname" />
+          input-id="surname-new" type="text" label="Etternavn" placeholder="Skriv inn ditt etternavn"
+          invalid-message="Vennligst skriv inn ditt etternavn" />
       </div>
       <br>
-      <button type="submit" class="btn btn-primary">Update Profile</button>
+      <button type="submit" class="btn btn-primary">Oppdater profil</button>
     </form>
   </div>
 </template>
 
+
 <style scoped>
 #icon {
   width: 90px;
diff --git a/src/views/Settings/SettingsSecurityView.vue b/src/views/Settings/SettingsSecurityView.vue
index db55bb0..68dc211 100644
--- a/src/views/Settings/SettingsSecurityView.vue
+++ b/src/views/Settings/SettingsSecurityView.vue
@@ -1,32 +1,33 @@
 <template>
     <div class="tab-pane active" id="security">
-        <h6>SECURITY SETTINGS</h6>
+        <h6>SIKKERHETSINNSTILLINGER</h6>
         <hr>
         <form @submit.prevent="handleSubmit" novalidate>
             <div class="form-group">
-                <label class="d-block">Change Password</label>
+                <label class="d-block">Endre passord</label>
                 <BaseInput :model-value="oldPasswordRef" @input-change-event="handleOldPasswordInputEvent"
                     id="passwordInput-change" input-id="password-old" type="password"
-                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,16}" label="Old Password" placeholder="Enter password"
-                    invalid-message="Password must be between 4 and 16 characters and contain one capital letter, small letter and a number" />
+                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,16}" label="Gammelt passord" placeholder="Skriv inn passord"
+                    invalid-message="Passordet må være mellom 4 og 16 tegn og inneholde en stor bokstav, en liten bokstav og et tall" />
 
                 <BaseInput :model-value="newPasswordRef" @input-change-event="handleNewPasswordInputEvent"
                     id="passwordInput-change" input-id="password-new" type="password"
-                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,16}" label="New Password" placeholder="Enter password"
-                    invalid-message="Password must be between 4 and 16 characters and contain one capital letter, small letter and a number" />
+                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,16}" label="Nytt passord" placeholder="Skriv inn passord"
+                    invalid-message="Passordet må være mellom 4 og 16 tegn og inneholde en stor bokstav, en liten bokstav og et tall" />
 
                 <BaseInput :model-value="confirmPasswordRef" @input-change-event="handleConfirmPasswordInputEvent"
                     id="passwordInput-change" input-id="password-confirm" type="password"
-                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,16}" label="Confirm New Password" placeholder="Enter password"
-                    invalid-message="Password must be between 4 and 16 characters and contain one capital letter, small letter and a number" />
+                    pattern="(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{4,16}" label="Bekreft nytt passord" placeholder="Skriv inn passord"
+                    invalid-message="Passordet må være mellom 4 og 16 tegn og inneholde en stor bokstav, en liten bokstav og et tall" />
             </div>
-            <button type="submit" class="btn btn-primary">Update Password</button>
-            <button type="reset" class="btn btn-light">Reset Changes</button>
+            <button type="submit" class="btn btn-primary">Oppdater passord</button>
+            <button type="reset" class="btn btn-light">Tilbakestill endringer</button>
         </form>
         <hr>
     </div>
 </template>
 
+
 <script setup lang="ts">
     import { ref } from 'vue'
     import BaseInput from '@/components/InputFields/BaseInput.vue'
diff --git a/src/views/SettingsView.vue b/src/views/SettingsView.vue
index bfacde1..a190d10 100644
--- a/src/views/SettingsView.vue
+++ b/src/views/SettingsView.vue
@@ -49,7 +49,7 @@ function toBilling() {
                                     <path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path>
                                     <circle cx="12" cy="7" r="4"></circle>
                                 </svg>
-                                Profile
+                                Profil
                             </a>
 
 
@@ -63,7 +63,7 @@ function toBilling() {
                                         d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z">
                                     </path>
                                 </svg>
-                                Account
+                                Konto
                             </a>
 
 
@@ -74,7 +74,7 @@ function toBilling() {
                                     stroke-linejoin="round" class="feather feather-shield mr-2">
                                     <path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path>
                                 </svg>
-                                Security
+                                Sikkerhet
                             </a>
 
 
@@ -85,7 +85,7 @@ function toBilling() {
                                     stroke-linejoin="round" class="feather feather-bell mr-2">
                                     <path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"></path>
                                     <path d="M13.73 21a2 2 0 0 1-3.46 0"></path>
-                                </svg>Notification
+                                </svg>Varsel
                             </a>
                             <a>
                                 <a @click.prevent="setActive('/settings/bank')" @click="toBilling"
@@ -174,6 +174,7 @@ function toBilling() {
 
 </template>
 
+
 <style scoped>
 .container {
     margin-top: 2rem;
diff --git a/src/views/ShopView.vue b/src/views/ShopView.vue
index 20739f1..aa5f967 100644
--- a/src/views/ShopView.vue
+++ b/src/views/ShopView.vue
@@ -1,7 +1,7 @@
 <template>
     <br>
     <div id="dropdownContainer">
-        <h1 class="box">Shop</h1>
+        <h1 class="box">Marked</h1>
     </div>
     <div class="container">
         <div class="row">
diff --git a/src/views/UnauthorizedView.vue b/src/views/UnauthorizedView.vue
index b17b840..d992177 100644
--- a/src/views/UnauthorizedView.vue
+++ b/src/views/UnauthorizedView.vue
@@ -3,18 +3,19 @@
         <div class="container py-5">
             <div class="row">
                 <div class="col-md-2 text-center">
-                    <p><img src="@/assets/icons/danger.svg" alt="danger"> <br/>Status Code: 403</p>
+                    <p><img src="@/assets/icons/danger.svg" alt="fare"> <br/>Statuskode: 403</p>
                 </div>
                 <div class="col-md-10">
-                    <h3>OPPSSS!!!! Sorry...</h3>
-                    <p>Sorry, your access is refused due to security reasons of our server and also our sensitive data.<br/>Please go back to the home page to continue browsing.</p>
-                    <Button1 :button-text="'Take Me Home'" @click="home" />
+                    <h3>OOPS!!! Beklager...</h3>
+                    <p>Beklager, din tilgang er nektet av sikkerhetsgrunner på serveren vår og også våre sensitive data.<br/>Vennligst gå tilbake til startsiden for å fortsette å surfe.</p>
+                    <Button1 :button-text="'Ta meg hjem'" @click="home" />
                 </div>
             </div>
         </div>
     </body>
 </template>
 
+
 <script setup lang="ts">
 import { useRouter } from 'vue-router';
 import Button1 from '@/components/Buttons/Button1.vue';
diff --git a/src/views/User/UserFriendsView.vue b/src/views/User/UserFriendsView.vue
index b6b3ed3..93bec23 100644
--- a/src/views/User/UserFriendsView.vue
+++ b/src/views/User/UserFriendsView.vue
@@ -1,11 +1,11 @@
 <template>
     <div class="container">
-        <h1>Your Friends</h1>
+        <h1>Dine venner</h1>
         <div>
-            <button class="btn btn-primary pull-right" @click="addNewFriends">+ Add Friend</button>
+            <button class="btn btn-primary pull-right" @click="addNewFriends">+ Legg til venn</button>
             <div class="my-3">
-                <button class="btn pages" @click="setupFriends">Your Friends</button>
-                <button class="btn pages" @click="requestFriend">Friend Requests</button>
+                <button class="btn pages" @click="setupFriends">Dine venner</button>
+                <button class="btn pages" @click="requestFriend">Venneforespørsler</button>
             </div>
         </div>
         <div v-if="showFriends">
@@ -29,12 +29,11 @@
                                 <a class="text removeFriend" data-bs-toggle="collapse"
                                     :href="'#collapseExample' + friend.id" role="button" aria-expanded="false"
                                     :aria-controls="'collapseExample' + friend.id">
-                                    See more
+                                    Se mer
                                 </a>
                                 <div class="collapse" :id="'collapseExample' + friend.id">
                                     <button class="btn btn-danger" @click="removeFriend(friend.id)">
-                                        <h5><img src="@/assets/icons/remove-white.svg" style="width: 30px"> Remove
-                                            friend
+                                        <h5><img src="@/assets/icons/remove-white.svg" style="width: 30px"> Fjern venn
                                         </h5>
                                     </button>
                                 </div>
@@ -43,23 +42,23 @@
                     </div>
                 </div>
             </div>
-            <div v-else>No Friends</div>
+            <div v-else>Ingen venner</div>
         </div>
         <div v-else-if="showRequests" class="row">
             <div class="content-body">
                 <div v-if="elementsInFriendRequest" id="requests">
                     <div class="request" v-for="(friend) in friendRequests" :key="friend.id">
                         <div v-if="friend.profileImage !== null"><img id="profilePicture"
-                                :src="'http://localhost:8080/api/images/' + friend.profileImage" alt="user"
+                                :src="'http://localhost:8080/api/images/' + friend.profileImage" alt="bruker"
                                 class="profile-photo-lg"></div>
-                        <div v-else><img id="profilePicture" :src="'../src/assets/userprofile.png'" alt="user"
+                        <div v-else><img id="profilePicture" :src="'../src/assets/userprofile.png'" alt="bruker"
                                 class="profile-photo-lg"></div>
                         <h2>{{ friend.firstName }}</h2> - <button class="btn btn-success mx-2"
-                            @click="acceptRequest(friend.id)">Accept</button>
-                        <button class="btn btn-danger" @click="rejectRequest(friend.id)">Reject</button>
+                            @click="acceptRequest(friend.id)">Godta</button>
+                        <button class="btn btn-danger" @click="rejectRequest(friend.id)">Avslå</button>
                     </div>
                 </div>
-                <div v-else>No friend requests</div>
+                <div v-else>Ingen venneforespørsler</div>
             </div>
         </div>
         <div v-if="showAddFriend" class="modal" tabindex="-1" role="dialog"
@@ -67,7 +66,7 @@
             <div class="modal-dialog" role="document">
                 <div class="modal-content">
                     <div class="modal-header">
-                        <h5 class="modal-title">Add Friend</h5>
+                        <h5 class="modal-title">Legg til venn</h5>
                         <button type="button" class="close" @click="showAddFriend = false">
                             <span aria-hidden="true">&times;</span>
                         </button>
@@ -75,9 +74,9 @@
                     <div class="modal-body d-flex justify-content-center align-items-center flex-column">
                         <form class="col-md-10 d-flex justify-content-center align-items-center flex-row my-4"
                             id="searchBox" role="search" @submit.prevent="searchProfile(searchWord)">
-                            <input class="form-control me-2 custom-border" type="search" placeholder="Search"
-                                aria-label="Search" v-model="searchWord">
-                            <button class="btn btn-success" type="submit">Search</button>
+                            <input class="form-control me-2 custom-border" type="search" placeholder="Søk"
+                                aria-label="Søk" v-model="searchWord">
+                            <button class="btn btn-success" type="submit">Søk</button>
                         </form>
                         <div class="col-md-12">
                             <div class="people-nearby">
@@ -86,10 +85,9 @@
                                         <div class="col-md-2 col-sm-2">
                                             <div v-if="user.profileImage !== null"><img id="profilePicture"
                                                     :src="'http://localhost:8080/api/images/' + user.profileImage"
-                                                    alt="user" class="profile-photo-lg"></div>
+                                                    alt="bruker" class="profile-photo-lg"></div>
                                             <div v-else><img id="profilePicture" :src="'../src/assets/userprofile.png'"
-                                                    alt="user" class="profile-photo-lg"></div>
-
+                                                    alt="bruker" class="profile-photo-lg"></div>
                                         </div>
                                         <div class="col-md-7 col-sm-7">
                                             <h5><a href="#" class="profile-link" @click="toUserProfile(user.id)">{{
@@ -97,8 +95,7 @@
                                             </h5>
                                         </div>
                                         <div class="col-md-3 col-sm-3">
-                                            <button class="btn btn-primary pull-right" @click="addFriend(user.id)">Add
-                                                Friend</button>
+                                            <button class="btn btn-primary pull-right" @click="addFriend(user.id)">Legg til venn</button>
                                         </div>
                                     </div>
                                 </div>
@@ -113,6 +110,7 @@
 
 
 
+
 <script setup lang="ts">
 import { ref, onMounted } from 'vue';
 import { useRouter } from 'vue-router';
-- 
GitLab