diff --git a/src/server/handler_door.c b/src/server/handler_door.c
index 78e0b2a1ba1e5f111504a33af55c5f06c426b35f..1db954fdbd304ba3e10a33a4c0b92893297c8f9e 100644
--- a/src/server/handler_door.c
+++ b/src/server/handler_door.c
@@ -101,7 +101,7 @@ int Door_CanDispense(int User, int Item)
 	// Sanity please
 	if( Item != 0 )	return -1;
 	
-	if( !(Bank_GetFlags(User) & USER_FLAG_DOORGROUP) )
+	if( !(Bank_GetFlags(User) & (USER_FLAG_DOORGROUP|USER_FLAG_ADMIN)) )
 	{
 		#if DEBUG
 		printf("Door_CanDispense: User %i not in door\n", User);
@@ -129,7 +129,7 @@ int Door_DoDispense(int User, int Item)
 	if( Item != 0 )	return -1;
 	
 	// Check if user is in door
-	if( !(Bank_GetFlags(User) & USER_FLAG_DOORGROUP) )
+	if( !(Bank_GetFlags(User) & (USER_FLAG_DOORGROUP|USER_FLAG_ADMIN)) )
 	{
 		#if DEBUG
 		printf("Door_CanDispense: User %i not in door\n", User);