1 /* 2 This file is part of oxaccess. 3 4 SPDX-FileCopyrightText: 2012 Marco Nelles <marco.nelles@credativ.com> 5 6 SPDX-License-Identifier: LGPL-2.0-or-later 7 */ 8 9 #include "oxerrors.h" 10 11 using namespace OXA; 12 getEditErrorID(const QString & errorText)13OXErrors::EditErrorID OXErrors::getEditErrorID(const QString &errorText) 14 { 15 const int b1Pos = errorText.indexOf(QLatin1Char('[')); 16 const int b2Pos = errorText.indexOf(QLatin1Char(']')); 17 const QString errorID = errorText.mid(b1Pos + 1, b2Pos - b1Pos - 1); 18 19 bool ok; 20 int eid = errorID.toInt(&ok); 21 if (!ok) { 22 return OXErrors::EditErrorUndefined; 23 } 24 25 switch (eid) { 26 case 1000: 27 return OXErrors::ConcurrentModification; 28 case 1001: 29 return OXErrors::ObjectNotFound; 30 case 1002: 31 return OXErrors::NoPermissionForThisAction; 32 case 1003: 33 return OXErrors::ConflictsDetected; 34 case 1004: 35 return OXErrors::MissingMandatoryFields; 36 case 1006: 37 return OXErrors::AppointmentConflicts; 38 case 1500: 39 return OXErrors::InternalServerError; 40 default:; 41 } 42 43 return OXErrors::EditErrorUndefined; 44 } 45