From 1348bd7fe4cc7be2a76395eb525d7362bfde5f2a Mon Sep 17 00:00:00 2001
From: fsimonsen <fredersi@stud.ntnu.no>
Date: Thu, 31 Mar 2022 13:25:23 +0200
Subject: [PATCH] liten quality of life endring i stoppesteder og ruter

---
 ruter.cpp        | 38 +++++++++++++++++++-------------------
 stoppesteder.cpp |  3 ++-
 2 files changed, 21 insertions(+), 20 deletions(-)

diff --git a/ruter.cpp b/ruter.cpp
index 56e3914..bb9a6eb 100644
--- a/ruter.cpp
+++ b/ruter.cpp
@@ -103,29 +103,29 @@ void Ruter::nyRute() {
 
     if (!gStoppestederBase.tom()) { // Hvis det finnes stoppesteder registrert:
         ruteNr = lesInt("Rutenr", MINRUTER, MAXRUTER);
-        // Looper til ikke duplikat rutenr blir skrevet inn
-        while (ruteNrFinnes(ruteNr)) { 
-            cout << "\nDuplikat ruteNr, vennligst prøv igjen.\n";
-            ruteNr = lesInt("Rutenr", MINRUTER, MAXRUTER); 
-        }
+        // Hvis ikke duplikat rutenr blir skrevet inn:
+        if (!ruteNrFinnes(ruteNr)) {
 
-        ruteType = lesChar("Rutetype b(A)ne eller b(U)ss");
-        // Looper til lovlig valg av rutetype blir lest inn:
-        while (ruteType != 'A' && ruteType != 'U') {
-            cout << "\nUgyldig valg, prøv igjen.\n";
             ruteType = lesChar("Rutetype b(A)ne eller b(U)ss");
-        }
+            // Looper til lovlig valg av rutetype blir lest inn:
+            while (ruteType != 'A' && ruteType != 'U') {
+                cout << "\nUgyldig valg, prøv igjen.\n";
+                ruteType = lesChar("Rutetype b(A)ne eller b(U)ss");
+            }
 
-        switch (ruteType) {
-            case 'A': nyRute = new Bane; nyRute->lesData(); break;
-            case 'U': nyRute = new Buss; nyRute->lesData(); break;
-        }
+            switch (ruteType) {
+                case 'A': nyRute = new Bane; nyRute->lesData(); break;
+                case 'U': nyRute = new Buss; nyRute->lesData(); break;
+            }
+
+            if (nyRute->erListeGyldig()){
+                rutene[ruteNr] = nyRute;
+                cout << "\nNy rute er lagt til:\n";
+                ruteBeskrivelse(ruteNr);
+            } else nyRute->slettData();
 
-        if(nyRute->erListeGyldig()){
-            rutene[ruteNr] = nyRute;
-            cout << "\nNy rute er lagt til:\n";
-            ruteBeskrivelse(ruteNr);
-        }else nyRute->slettData();
+        } else // Rutenummer er duplikat:
+            cout << "\nRutenummeret finnes fra før. Kan ikke legge til rute.\n\n";
 
     } else // Hvis ingen stoppesteder registrert:
         cout << "\nIngen stopper registrert i datastrukturen, kan derfor ikke "
diff --git a/stoppesteder.cpp b/stoppesteder.cpp
index f7e7f2a..6d6adc0 100644
--- a/stoppesteder.cpp
+++ b/stoppesteder.cpp
@@ -246,7 +246,8 @@ void Stoppesteder::nyStop() {
     // TODO: kun kan være tall!
     cout << "\nNavn på stoppested: "; getline(cin,navn); // Leser navn
     while (navn.size() < 2 || ikkeHarTall(navn)) { // Looper hvis navn er >2 tegn
-        cout << "\nNavn må være 2 tegn eller mer. Prøv igjen: ";
+        cout << "\nNavn kan ikke inneholde tall, og må være 2 tegn eller mer."
+             << " Prøv igjen: ";
         getline(cin, navn);
     }
 
-- 
GitLab