Website Summary Files Commits Branches @commit @diff @stats
path: root / src / Models
diff options
context:
space:
mode:
Commit19912379fa658d7dcb96b02b8b3655ac98fb1564 (patch)
Author
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-07 19:54:14 +0300
Committer
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-07 19:54:14 +0300
Files828453923497d4975af193d5e27bda85dba81fd8 /src/Models
FMI-OOP-P1_TicketSystem-19912379fa658d7dcb96b02b8b3655ac98fb1564.tar
FMI-OOP-P1_TicketSystem-19912379fa658d7dcb96b02b8b3655ac98fb1564.tar.gz
FMI-OOP-P1_TicketSystem-19912379fa658d7dcb96b02b8b3655ac98fb1564.zip
Parent55c14e6fce4f7ffc7c3edd5eff13bee9132a5cab (diff)
Autocommit at 07.05.2022 @ 19:54
3 files changed, 25 insertions, 1 deletions
-rw-r--r--src/Models/Event.cpp13
-rw-r--r--src/Models/Event.h1
-rw-r--r--src/Models/Hall.cpp12
diff --git a/src/Models/Event.cpp b/src/Models/Event.cpp
index c1f7343..82ce519 100644
--- a/src/Models/Event.cpp
+++ b/src/Models/Event.cpp
@@ -52,7 +52,18 @@ int Event::compare(const Event& other) {
}
std::istream& operator>>(std::istream& istr, Event& event) {
- return istr >> event.get_hall() >> event.get_name() >> event.get_date() >> event.get_tickets() >> event.get_reservations();
+ Hall newHall;
+ String newString;
+ Date newDate;
+ OrderedList<Ticket> newTickets;
+ OrderedList<Reservation> newReservation;
+
+ istr >> newHall >> newString >> newDate >> newTickets >> newReservation;
+ event = Event(newHall, newString, newDate);
+ event.get_tickets() = newTickets;
+ event.get_reservations() = newReservation;
+
+ return istr;
}
std::ostream& operator<<(std::ostream& ostr, const Event& event) {
diff --git a/src/Models/Event.h b/src/Models/Event.h
index 4257c1f..8dc7477 100644
--- a/src/Models/Event.h
+++ b/src/Models/Event.h
@@ -24,6 +24,7 @@ public:
const Hall& get_hall() const;
const String& get_name() const;
const Date& get_date() const;
+
OrderedList<Ticket>& get_tickets();
const OrderedList<Ticket>& get_tickets() const;
OrderedList<Reservation>& get_reservations();
diff --git a/src/Models/Hall.cpp b/src/Models/Hall.cpp
index 41644df..d1c25f7 100644
--- a/src/Models/Hall.cpp
+++ b/src/Models/Hall.cpp
@@ -36,3 +36,15 @@ void Hall::write(std::ostream& ostr) const {
int Hall::compare(const Hall& other) const {
return (number > other.get_number()) - (number < other.get_number());
}
+
+std::istream& operator>>(std::istream& istr, Hall& hall) {
+ int number;
+ unsigned rows, seatsPerRow;
+ istr >> number >> rows >> seatsPerRow;
+ hall = Hall(number, rows, seatsPerRow);
+ return istr;
+}
+
+std::ostream& operator<<(std::ostream& ostr, const Hall& hall) {
+ return ostr << hall.get_number() << " " << hall.get_rows() << " "<< hall.get_seatsPerRow();
+}