getPaymentOptionIndex():
Fix: make sure only one payment option can be chosen.
This commit is contained in:
		| @@ -1547,48 +1547,48 @@ int getPaymentOptionIndex(Configuration const &cfg) { | ||||
|         QDateTime const dt = QDateTime::currentDateTime(); | ||||
|         int const dayOfWeek = dt.date().dayOfWeek(); | ||||
|  | ||||
|         switch (dayOfWeek) { | ||||
|         case (int)Qt::Monday: { | ||||
|             if (pop_business_hours & BusinessHours::MON) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } break; | ||||
|         case (int)Qt::Tuesday: { | ||||
|             if (pop_business_hours & BusinessHours::TUE) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } break; | ||||
|         case (int)Qt::Wednesday: { | ||||
|             if (pop_business_hours & BusinessHours::WED) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } break; | ||||
|         case (int)Qt::Thursday: { | ||||
|             if (pop_business_hours & BusinessHours::THU) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } break; | ||||
|         case (int)Qt::Friday: { | ||||
|             if (pop_business_hours & BusinessHours::FRI) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } break; | ||||
|         case (int)Qt::Saturday: { | ||||
|             if (pop_business_hours & BusinessHours::SAT) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } break; | ||||
|         case (int)Qt::Sunday: { | ||||
|             if (pop_business_hours & BusinessHours::SUN) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } break; | ||||
|         } | ||||
|  | ||||
|         if (isHoliday(cfg, dt)) { | ||||
|             if (pop_business_hours & BusinessHours::OFFICIAL_HOLIDAY) { | ||||
|                 return opt; | ||||
|             } | ||||
|         } else { | ||||
|             switch (dayOfWeek) { | ||||
|             case (int)Qt::Monday: { | ||||
|                 if (pop_business_hours & BusinessHours::MON) { | ||||
|                     return opt; | ||||
|                 } | ||||
|             } break; | ||||
|             case (int)Qt::Tuesday: { | ||||
|                 if (pop_business_hours & BusinessHours::TUE) { | ||||
|                     return opt; | ||||
|                 } | ||||
|             } break; | ||||
|             case (int)Qt::Wednesday: { | ||||
|                 if (pop_business_hours & BusinessHours::WED) { | ||||
|                     return opt; | ||||
|                 } | ||||
|             } break; | ||||
|             case (int)Qt::Thursday: { | ||||
|                 if (pop_business_hours & BusinessHours::THU) { | ||||
|                     return opt; | ||||
|                 } | ||||
|             } break; | ||||
|             case (int)Qt::Friday: { | ||||
|                 if (pop_business_hours & BusinessHours::FRI) { | ||||
|                     return opt; | ||||
|                 } | ||||
|             } break; | ||||
|             case (int)Qt::Saturday: { | ||||
|                 if (pop_business_hours & BusinessHours::SAT) { | ||||
|                     return opt; | ||||
|                 } | ||||
|             } break; | ||||
|             case (int)Qt::Sunday: { | ||||
|                 if (pop_business_hours & BusinessHours::SUN) { | ||||
|                     return opt; | ||||
|                 } | ||||
|             } break; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @@ -1852,6 +1852,7 @@ Configuration::getWeekDayWorkTime(QTime const &time, Qt::DayOfWeek dayOfWeek) { | ||||
|  | ||||
| bool isHoliday(Configuration const &cfg, QDateTime const &t) { | ||||
|     int const weekDay = t.date().dayOfWeek(); | ||||
|  | ||||
|     for (auto[iter, rEnd] = cfg.WeekDays.equal_range(static_cast<Qt::DayOfWeek>(weekDay)); | ||||
|          iter != rEnd; | ||||
|          ++iter) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user