//Return one client contact that matches _UserID.  Return an empty ClientContact if the _UserID is not found.
        public static ClientContact GetClientContactFromUserID(int _UserID)
        {
            ClientContact             clientContacts = new ClientContact();
            ClientContactsDataContext dc             = new ClientContactsDataContext();
            var item = dc.S1_ClientContacts_GetClientContactFromUserID(_UserID).FirstOrDefault();

            if (item != null)
            {
                clientContacts = new ClientContact(item.ClientContactID, item.ClientContactName, item.ClientContactFirstName, item.ClientContactLastName,
                                                   item.ClientContactTitle, item.ClientContactAddress1, item.ClientContactAddress2, item.ClientContactCity, item.ClientContactStateCode,
                                                   item.ClientContactZIP, item.ClientContactBusinessPhone, item.ClientContactCellPhone, item.ClientContactFax, item.ClientContactEmail,
                                                   item.BillingContactName, item.IsPrimaryBillingContact1, item.OnlyShowInvoices, Convert.ToInt32(item.ClientID),
                                                   Convert.ToInt32(item.UserID), item.BillingDeliveryMethod, Convert.ToBoolean(item.IsBillingContact), item.LastLoginDate,
                                                   item.BillAsClientName, item.DueText, item.BillingContactAddress1, item.BillingContactAddress2, item.BillingContactCity,
                                                   item.BillingContactStateCode, item.BillingContactZIP, item.BillingContactEmail, item.BillingContactBusinessPhone, item.BillingContactFax,
                                                   item.BillingContactPOName, item.BillingContactPONumber, item.BillingContactNotes,
                                                   Convert.ToBoolean(item.ClientContactStatus), Convert.ToBoolean(item.BillingContactStatus), item.BillingContactID, item.LoginUserName);
            }
            else
            {
                clientContacts = new ClientContact();
            }

            return(clientContacts);
        }
        //return true if the user has at least one primary contact
        public static bool UserHasPrimaryContact(int _UserID)
        {
            ClientContactsDataContext dc = new ClientContactsDataContext();
            var result = dc.S1_ClientContacts_GetClientContactFromUserID(_UserID);

            if (result != null)
            {
                foreach (var item in result)
                {
                    if (item.IsPrimaryBillingContact1)
                    {
                        return(true);
                    }
                }
            }

            return(false);
        }