public static bool PutItem(SampleDataItem sdi) // Glenn adds
 {
     if (GetItem(sdi.UniqueId) != null)
         return false; // Unique ID conflict
     var group = sdi.Group;
     group.Items.Add(sdi);
     return true;
 }
 private string FindSearchItemInOutboxList(SampleDataItem selectedItem)
 {
     // Temporary restriction, until we can do a better job of allowing edit of other items not originated at this station.
     // See also ItemDetailFlipViewPage for this restriction.
     string results = "";
     foreach (var pr_ in App.PatientDataGroups.GetOutbox())
     {
         // WhenLocalTime is reported to TriageTrak as  format like "2012-08-13 18:24:26 -04:00".
         // Search formats selectedItem.UniqueId using TP_PatientReport.FormatUniqueID(){ return String.Format("{0}", WhenLocalTime); }
         // But we are seeing selectedItem.UniqueId does not have " -04:00" part.
         // And for pr_.WhenLocalTime, in some older cases the "-04:00" part is lost... maybe if Outbox xml is reconstructed from TT?
         // Even worse, the timestamps don't match!  Off by 8 seconds.  Probably server is returning server time when received, not what we reported!
         //if (pr_.WhenLocalTime == selectedItem.UniqueId)
         //{
         //    foundPatient = true;
         //    break;
         //}
         // Instead, match by date alone, and mass casualty ID
         // selectedItem.Subtitle is set by FormatSubtitle(){ ...; return String.Format("Mass Casualty ID {0}", patientID); } where patientID has prefix if appropriate
         if (pr_.WhenLocalTime.Substring(0, 10) == selectedItem.UniqueId.Substring(0, 10) &&
             selectedItem.Subtitle.EndsWith(pr_.PatientID))
         {
             results = pr_.WhenLocalTime;
             break;
         }
     }
     return results;
 }