public void TestUDCListModel() { UDCListModel udc = new UDCListModel("Data Source=isostore:/Test1.sdf", true); UserModel testUser = new UserModel("1", "foo", "bar", ""); udc.addUser(testUser); Assert.Equals(testUser, udc.UsersByFirstName[0]); Assert.IsTrue(udc.SubmitChanges()); udc.LoadListsFromDatabase(); Assert.Equals(testUser, udc.UsersByFirstName[0]); GroupModel testGroup = new GroupModel("TestGroup"); udc.addGroup(testGroup); udc.addToGroup(testUser, testGroup); Assert.IsTrue(udc.GroupList[0].Users.Contains(testUser)); CallLogEntry testEntry = new CallLogEntry(); CallLogModel testLog = new CallLogModel(1); testLog.addEntry(testEntry); testUser.CallLogs.Add(testLog); Assert.IsTrue(udc.SubmitChanges()); Assert.IsTrue(testUser.CallLogs.Any()); Assert.Equals(testUser.CallLogs.First(), testLog); udc.removeGroup("TestGroup"); Assert.IsTrue(udc.GroupList.Count == 0); }
protected override void OnActivate() { base.OnActivate(); var log = from CallLogModel clm in udc.DataContext.CallLogTable where clm.CallLogID.Equals(CallLogID) select clm; if (log.Any()) { CallLog = log.First(); } else { return; } User = CallLog.User; // Select all the call logs from the 7 days before the requested Log var olderLogs = from CallLogModel clm in User.CallLogs where (clm.StartTime < CallLog.StartTime) && (CallLog.StartTime - clm.StartTime <= TimeSpan.FromDays(7)) orderby clm.StartTime select clm; var tmpCollection = new List<CallLogEntry>(); foreach (CallLogModel clm in olderLogs) { tmpCollection.AddRange(clm.Entries); } tmpCollection.OrderBy(x => x.Timestamp); OldEntries = new ObservableCollection<CallLogEntry>(tmpCollection); }
public void removeFromGroup(UserModel u, GroupModel g) { var junction = from GroupMapModel gmm in udc.JunctionTable where gmm.UserID.Equals(u.UserID) && gmm.GroupName.Equals(g.GroupName) select gmm; GroupMapModel junctionModel; if (junction.Any()) { junctionModel = junction.First(); udc.JunctionTable.DeleteOnSubmit(junctionModel); udc.SubmitChanges(); } }
public void removeUser(UserModel User) { if (udc.UserTable.Contains(User)) { foreach (TitleGroup<UserModel> lettergroup in UsersByFirstName) { if (lettergroup.Contains(User)) { lettergroup.Remove(User); } } foreach (TitleGroup<UserModel> lettergroup in UsersByLastName) { if (lettergroup.Contains(User)) { lettergroup.Remove(User); } } var junctions = from GroupMapModel gmm in udc.JunctionTable where gmm.UserID.Equals(User.ID) select gmm; var logs = from CallLogModel clm in udc.CallLogTable where clm.CalleeID.Equals(User.ID) select clm; foreach (CallLogModel e in logs) { var entries = from CallLogEntry en in udc.EntryTable where en.CallLogID.Equals(e.CallLogID) select en; udc.EntryTable.DeleteAllOnSubmit(entries); AllLogsList.Remove(e); } if (User.HasImage) { using (IsolatedStorageFile myIsolatedStorage = IsolatedStorageFile.GetUserStoreForApplication()) { if (myIsolatedStorage.FileExists(User.UserImagePath)) { myIsolatedStorage.DeleteFile(User.UserImagePath); } } } udc.CallLogTable.DeleteAllOnSubmit(logs); udc.SubmitChanges(); udc.JunctionTable.DeleteAllOnSubmit(junctions); udc.SubmitChanges(); udc.UserTable.DeleteOnSubmit(User); udc.SubmitChanges(); } }
public bool addUser(UserModel User) { if ((from u in udc.UserTable where u.UserID.Equals(User.UserID) select u).Any()) return false; udc.UserTable.InsertOnSubmit(User); try { udc.SubmitChanges(); } catch (Exception dbe) { return false; } string firstInitial = findInitial(User.FirstName); string lastInitial = findInitial(User.LastName); foreach (TitleGroup<UserModel> gr in UsersByFirstName) { if (gr.Title.Equals(firstInitial)) { gr.Add(User); gr.OrderBy((u, v) => u.FirstName.CompareTo(v.FirstName)); NotifyOfPropertyChange("UsersByFirstName"); } } foreach (TitleGroup<UserModel> gr in UsersByLastName) { if (gr.Title.Equals(lastInitial)) { gr.Add(User); gr.OrderBy((u, v) => u.LastName.CompareTo(v.LastName)); NotifyOfPropertyChange("UsersByLastName"); } } return true; }
public bool changeUserID(UserModel m, string NewUserID) { if ((from u in udc.UserTable where u.UserID.Equals(NewUserID) select u).Any()) return false; m.UserID = NewUserID; try { udc.SubmitChanges(); } catch (Exception e) { return false; } return true; //if (!NewUserID.Equals(m.UserID)) //{ // UserModel newUser = new UserModel(NewUserID, m.FirstName, m.LastName, m.UserImagePath); // if (addUser(newUser)) // { // var junctions = from GroupMapModel gmm in udc.JunctionTable where gmm.UserID.Equals(m.UserID) select gmm; // var logs = from CallLogModel clm in udc.CallLogTable where clm.CalleeID.Equals(m.UserID) select clm; // List<GroupMapModel> newGmm = new List<GroupMapModel>(); // List<CallLogModel> newClm = new List<CallLogModel>(); // foreach (GroupMapModel gmm in junctions) // { // //newGmm.Add(new GroupMapModel(gmm.GroupName, newUser.UserID)); // gmm.UserID = newUser.ID; // } // udc.SubmitChanges(); // foreach (CallLogModel clm in logs) // { // //var tmp = new CallLogModel(newUser.UserID, clm.StartTime); // //newClm.Add(new CallLogModel(newUser.UserID, clm.StartTime)); // clm.CalleeID = newUser.ID; // } // udc.SubmitChanges(); // this.removeUser(m); // try // { // udc.SubmitChanges(); // } // catch (Exception e) // { // bool foo = false; // } // return newUser; // } // else // { // return m; // } //} //else //{ // return m; //} }
public void EditContact(UserModel um) { navService.UriFor<ContactEditPageViewModel>(). WithParam(x => x.CreateUser, false). WithParam(x => x.TargetUserID, um.ID). Navigate(); }
public void addToGroup(UserModel u, GroupModel g) { GroupMapModel junctionModel = new GroupMapModel(g.GroupName, u.ID); //JunctionTable.InsertOnSubmit(junctionModel); g.addJunction(junctionModel); udc.SubmitChanges(); }
public void DeleteContact(UserModel um) { if (MessageBox.Show("Are you sure you want to delete " + um.FirstLast + "?", "Delete", MessageBoxButton.OKCancel).Equals(MessageBoxResult.OK)) { udc.removeUser(um); refreshBinding(); } }
public void ContactTapped(UserModel um) { navService.UriFor<ContactDetailsPageViewModel>(). WithParam(x => x.TargetUserID, um.ID). Navigate(); }
protected override void OnActivate() { base.OnActivate(); if (ClearBackStack) { navService.RemoveBackEntry(); navService.RemoveBackEntry(); } User = udc.GetUser(TargetUserID); if (User == null) return; else NotifyOfPropertyChange("User"); var logList = User.CallLogs.OrderByDescending((log) => log.StartTime); if (logList.Any() && logList.First().Entries.Any()) { LastCallLog = logList.First(); LastCallLogEntry = logList.First().Entries.First(); } else { LastCallLogEntry = new CallLogEntry("You have no recent calls with " + User.FirstLast + ".", DateTime.Now, "[none]"); //LastCallLog = new CallLogModel(User.ID, DateTime.Now); //LastCallLog.addEntry("Echo park synth fixie, accusamus anim gentrify occaecat photo booth."); //User.CallLogs.Add(LastCallLog); //udc.CallLogTable.InsertOnSubmit(log); //udc.SubmitChanges(); //log.addEntry("And now we're testing the wrapping abilities... god, I hope this works..."); //User.CallLogs.Add(log); //udc.SubmitChanges(); } }
public void addUser(UserModel um) { NotifyPropertyChanging("UserGroups"); this.UserGroups.Add(new GroupMapModel(this.GroupName, um.ID)); NotifyOfPropertyChange("UserGroups"); }
private void incomingCall(byte[] data, SocketAsyncEventArgs e) { UserModel caller; string fromID = decryptAndVerify(data); var userMatch = from UserModel u in udc.DataContext.UserTable where u.UserID.Equals(fromID) select u; if (userMatch.Any()) { caller = userMatch.First(); } else { caller = new UserModel(fromID, "Unknown", "Unknown", ""); udc.addUser(caller); udc.SubmitChanges(); } Deployment.Current.Dispatcher.BeginInvoke(() => { Coroutine.BeginExecute(IncomingCall(caller.ID)); }); //do something }