public static string GetWaterCoolerItem(RestCommand command, int messageID) { WaterCoolerItem waterCoolerItem = WaterCooler.GetWaterCoolerItem(command.LoginUser, messageID); if (waterCoolerItem.OrganizationID != command.Organization.OrganizationID) { throw new RestException(HttpStatusCode.Unauthorized); } return(waterCoolerItem.GetXml("WaterCoolerItem", true)); }
public string SetUserStatusText(string text) { User user = Users.GetUser(UserSession.LoginUser, UserSession.LoginUser.UserID); user.InOfficeComment = Server.HtmlEncode(text); user.Collection.Save(); WaterCooler watercooler = new WaterCooler(UserSession.LoginUser); WaterCoolerItem item = watercooler.AddNewWaterCoolerItem(); item.Message = string.Format("<strong>{0} - </strong>{1}", user.FirstLastName, user.InOfficeComment); item.OrganizationID = user.OrganizationID; item.TimeStamp = DateTime.UtcNow; item.UserID = user.UserID; watercooler.Save(); return(user.InOfficeComment); }
public WaterCoolerViewItemProxy AddMessage(int?messageID, string message) { // DON'T user the view to save to the DB. User the WaterCooler table. The views are read only WaterCoolerItem wc = (new WaterCooler(TSAuthentication.GetLoginUser())).AddNewWaterCoolerItem(); wc.GroupFor = null; wc.Message = message; wc.MessageType = messageID == null ? "Comment" : "Reply"; wc.OrganizationID = TSAuthentication.OrganizationID; wc.ReplyTo = messageID; wc.TimeStamp = DateTime.UtcNow; wc.UserID = TSAuthentication.UserID; wc.Collection.Save(); return(WaterCoolerView.GetWaterCoolerViewItem(wc.Collection.LoginUser, wc.MessageID).GetProxy()); }
public bool ToggleUserAvailability() { User user = Users.GetUser(UserSession.LoginUser, UserSession.LoginUser.UserID); user.InOffice = !user.InOffice; user.Collection.Save(); WaterCooler watercooler = new WaterCooler(UserSession.LoginUser); WaterCoolerItem item = watercooler.AddNewWaterCoolerItem(); item.Message = string.Format("<strong>{0}</strong> {1}", user.FirstLastName, user.InOffice ? "is now in the office." : "has left the office."); item.OrganizationID = user.OrganizationID; item.TimeStamp = DateTime.UtcNow; item.UserID = user.UserID; watercooler.Save(); return(user.InOffice); }