diff --git a/vilesci/fhausweis/kartentausch.php b/vilesci/fhausweis/kartentausch.php
index 5e4c04c09..34b934371 100755
--- a/vilesci/fhausweis/kartentausch.php
+++ b/vilesci/fhausweis/kartentausch.php
@@ -77,14 +77,23 @@ if($action=='kartentausch')
$bmp = new betriebsmittelperson();
if($bmp->getKartenzuordnungPerson($benutzer->person_id, $kartennummer_hitag))
{
- $bmp->ausgegebenam=date('Y-m-d');
- $bmp->updateamum = date('Y-m-d H:i:s');
- $bmp->updatevon = $uid;
-
- if(!$bmp->save(false))
+ if($bmp->nummer2=='' && $kartennummer_alt!=$kartennummer_hitag)
{
- echo 'Fehler beim Tauschen: '.$bmp->errormsg.'';
- $error=true;
+ // Alte Karte und Neue Karte vermutlich vertauscht -> Abbruch
+ echo 'Fehler beim Tauschen - Eventuell wurden alte und neue Karte vertauscht!? Bitte tauschen Sie die Karte erneut.';
+ $error = true;
+ }
+ else
+ {
+ $bmp->ausgegebenam=date('Y-m-d');
+ $bmp->updateamum = date('Y-m-d H:i:s');
+ $bmp->updatevon = $uid;
+
+ if(!$bmp->save(false))
+ {
+ echo 'Fehler beim Tauschen: '.$bmp->errormsg.'';
+ $error=true;
+ }
}
}
else
@@ -92,40 +101,48 @@ if($action=='kartentausch')
echo 'Fehler beim Tauschen: Die neue Karte wurde dieser Person noch nicht zugeordnet';
$error = true;
}
- if(!$error)
+ if($kartennummer_alt!=$kartennummer_hitag)
{
- if($kartennummer_alt!='')
+ if(!$error)
{
- //Alte Karte deaktivieren wenn vorhanden
- $bmp = new betriebsmittelperson();
- if($bmp->getKartenzuordnung($kartennummer_alt))
+ if($kartennummer_alt!='')
{
- if($bmp->person_id==$benutzer->person_id)
+ //Alte Karte deaktivieren wenn vorhanden
+ $bmp = new betriebsmittelperson();
+ if($bmp->getKartenzuordnung($kartennummer_alt))
{
- $bmp->retouram = date('Y-m-d');
- if(!$bmp->save(false))
+ if($bmp->person_id==$benutzer->person_id)
{
- echo 'Fehler beim Eintragen des Retourdatums';
+ $bmp->retouram = date('Y-m-d');
+ if(!$bmp->save(false))
+ {
+ echo 'Fehler beim Eintragen des Retourdatums';
+ $error=true;
+ }
+ }
+ else
+ {
+ echo 'Karte passt nicht zur Person';
$error=true;
}
}
else
{
- echo 'Karte passt nicht zur Person';
+ echo 'Kartenzuordnung der alten Karte nicht gefunden';
$error=true;
}
}
- else
- {
- echo 'Kartenzuordnung der alten Karte nicht gefunden';
- $error=true;
- }
}
+ if(!$error)
+ {
+ echo 'Karte erfolgreich getauscht';
+ }
}
- if(!$error)
+ else
{
- echo 'Karte erfolgreich getauscht';
- }
+ echo 'Karte wurde aktiviert';
+ }
+
}
$kartennummer_alt='';
$karten_user='';