
RemoveFromMenu()
****************


FUNKTION
========

   int RemoveFromMenu(mixed ids)


DEFINIERT IN
============

   /std/pub.c


ARGUMENTE
=========

   ids - string oder string*
         String oder Array von Strings, mit denen sich die Speise bzw.
         das Getraenk beim Bestellen ansprechen laesst.


RUECKGABEWERT
=============

   int - Anzahl entfernter Einzelmenueeintraege


BESCHREIBUNG
============

   Mit dieser Methode kann man id-basiert Speisen und Getraenke
   wieder von der Karte entfernen (wenn zB nur saisonbasiert
   bestimmte Dinge angeboten werden sollen).


BEMERKUNGEN
===========

   - sich zwischen zwei Speisen ueberschneidende IDs fuehren zu
     undefiniertem Verhalten!
   - bei Benutzung von RemoveFromMenu sollte man in Delay-Speisen oder
     -Getraenken auf die Nutzung vom ident-Parameter in den
     Serviernachrichten verzichten (es sei, man weiss was man tut)


SIEHE AUCH
==========

   AddToMenu(), AddFood(), AddDrink(), /sys/pub.h

15. Februar 2009 Gloinson
