public ActionResult EditFolder(CCFolder folderObj) { User userObj = (User)Session["user"]; Account accountObj = (Account)Session["account"]; CCFolder folderResponse; int folderType = folderObj.Type; if (ModelState.IsValid && accountObj != null) { folderObj.AccountGUID = accountObj.AccountGUID; folderObj.IsPaused = false; folderObj.isOverFlow = false; if (folderObj.Type == 3) folderObj.isCrimeDiary = true; //Save Folder folderResponse = CCFolderRepository.SaveFolder(folderObj); var folders = CCFolderRepository.CCFolders.Where(guid => guid.AccountGUID == accountObj.AccountGUID).ToList(); TempData["SelectedMenu"] = "Manage"; TempData["SelectedSubMenu"] = "ManageFolders"; if (folderObj.FolderID > 0) { var fields = CCFieldRepository.CCFolderFields.Where(u => u.FolderID == folderObj.FolderID & u.AccountGUID == accountObj.AccountGUID).ToList(); if (fields.Count == 0) { //Save default field List<string> needtosave = new List<string>(); List<CCFolderField> savedobj = new List<CCFolderField>(); if (folderType == 1) { if (accountObj.PlanID == 1) { needtosave = FieldsConfigHelper.GetFieldForContactSimple(); } else if (accountObj.PlanID == 2) { needtosave = FieldsConfigHelper.GetFieldForContactBusiness(); } else { needtosave = FieldsConfigHelper.GetFieldForContactFull(); } } else if (folderType == 2) { needtosave = FieldsConfigHelper.GetFieldForAppointmentSimple(); } else if (folderType == 3) { needtosave = FieldsConfigHelper.GetFieldForCrimeDiaryAppointment(); } else { } foreach (var field in needtosave) { CCFolderField folderField = new CCFolderField(); folderField.FieldName = FieldsConfigHelper.GetRealName(field); folderField.FieldType = FieldsConfigHelper.GetVariableType(field); folderField.FolderID = folderObj.FolderID; folderField.FieldCaption = field; folderField.Restriction = "none"; folderField.AccountGUID = accountObj.AccountGUID; folderField.isActive = true; savedobj.Add(folderField); } var resp = CCFieldRepository.SaveFolderFieldsObj(savedobj); } // create note into grops var alreadyExist = CCGroupRepository.CCGroups.Where(fid => fid.FolderID == folderResponse.FolderID & fid.GroupName == "Note" & fid.AccountGUID == accountObj.AccountGUID).ToList(); if (alreadyExist.Count == 0) { CCGroup objGroup = new CCGroup(); objGroup.GroupName = "Note"; objGroup.FolderID = folderResponse.FolderID; objGroup.AccountGUID = accountObj.AccountGUID; var user = CCGroupRepository.SaveGroup(objGroup); } // create default group var isDefaultGrpExist = CCGroupRepository.CCGroups.Where(fid => fid.FolderID == folderResponse.FolderID & fid.GroupName == "Default" & fid.AccountGUID == accountObj.AccountGUID).ToList(); if (isDefaultGrpExist.Count == 0) { // add default group CCGroup objGroup = new CCGroup(); objGroup.GroupName = "Default"; objGroup.FolderID = folderResponse.FolderID; objGroup.AccountGUID = accountObj.AccountGUID; var grp = CCGroupRepository.SaveGroup(objGroup); if (grp.GroupID != 0) { // added all default field var defaultfields = CCFieldRepository.CCFolderFields.Where(u => u.FolderID == folderObj.FolderID & u.AccountGUID == accountObj.AccountGUID).ToList(); int i = 1; foreach (var fieldItem in defaultfields) { CCGroupField objgrpfield = new CCGroupField(); objgrpfield.FieldID = fieldItem.FieldID; objgrpfield.FieldOrder = i++; objgrpfield.FolderID = grp.FolderID; objgrpfield.GroupID = grp.GroupID; objgrpfield.AccountGUID = accountObj.AccountGUID; var aa = CCGroupFieldRepository.SaveGroupField(objgrpfield); } } } // create default layout var isDefaultLayoutExist = CCLayoutRepository.CCLayouts.Where(fid => fid.FolderID == folderResponse.FolderID & fid.LayoutName == "Default" & fid.AccountGUID == accountObj.AccountGUID).ToList(); if (isDefaultLayoutExist.Count == 0) { // add default layout CCLayout layout = new CCLayout(); layout.LayoutName = "Default"; layout.FolderID = folderObj.FolderID; layout.AccountGUID = accountObj.AccountGUID; var resLayout = CCLayoutRepository.Savelayout(layout); // add default group into default layout var defaultExistGrp = CCGroupRepository.CCGroups.Where(fid => fid.FolderID == folderResponse.FolderID & fid.GroupName == "Default" & fid.AccountGUID == accountObj.AccountGUID).FirstOrDefault(); if (defaultExistGrp != null) { CCLayoutGroup objLayoutGroup = new CCLayoutGroup(); objLayoutGroup.GroupID = defaultExistGrp.GroupID; objLayoutGroup.GroupOrder = 1; objLayoutGroup.FolderID = resLayout.FolderID; objLayoutGroup.LayoutID = resLayout.LayoutID; objLayoutGroup.AccountGUID = accountObj.AccountGUID; var aa = CCLayoutGroupRepository.SavelayoutGroup(objLayoutGroup); } } } var folderList = CCFolderRepository.CCFolders.Where(guid => guid.AccountGUID == accountObj.AccountGUID).ToList(); Session["folderss"] = folderList; LimitationsViewModel limitationsObjMain = (LimitationsViewModel)Session["limitations"]; HelperFunctions HF = new HelperFunctions(); limitationsObjMain = HF.updateAccountLimitations(accountObj); Session["limitations"] = limitationsObjMain; return RedirectToAction("ManageFolders", "Folder"); } else { var folderList = CCFolderRepository.CCFolders.Where(guid => guid.AccountGUID == accountObj.AccountGUID).ToList(); Session["folderss"] = folderList; LimitationsViewModel limitationsObjMain = (LimitationsViewModel)Session["limitations"]; HelperFunctions HF = new HelperFunctions(); limitationsObjMain = HF.updateAccountLimitations(accountObj); Session["limitations"] = limitationsObjMain; return View(folderObj); } }
public ActionResult ViewConnections(long id) { TempData["SelectedMenu"] = "Manage"; TempData["SelectedSubMenu"] = "ManageFolders"; Account accountObj = (Account)Session["account"]; LimitationsViewModel limitationsObj = (LimitationsViewModel)Session["limitations"]; SubscriptionsViewModel subscriptionsView = new SubscriptionsViewModel(); subscriptionsView.limitationsObj = limitationsObj; if (Session["newConnections"] != null) { subscriptionsView.conSummary = (ConnectionImportListSummaryModel) Session["newConnections"]; Session["newConnections"] = null; } var folderDetails = CCFolderRepository.CCFolders.Where(fid => fid.FolderID == id & fid.AccountGUID == accountObj.AccountGUID).FirstOrDefault(); var subscriptions = CCConnectinRepository.CCSubscriptions.Where(fid => fid.FolderID == id & fid.AccountGUID == accountObj.AccountGUID); // get Credentials name List<string> credName = new List<string>(); var allCredentials = CCCredentialRepository.Credentials.Where(aguid => aguid.AccountGUID == accountObj.AccountGUID).ToList(); foreach (var conn in subscriptions) { var findCredential = allCredentials.Where(cid => cid.ID == conn.CredentialsID).FirstOrDefault(); if (findCredential != null) { credName.Add(findCredential.Name); } else { credName.Add(""); } } subscriptionsView.CredentialName = credName; subscriptionsView.FolderName = folderDetails.Name; subscriptionsView.FolderType = folderDetails.Type; subscriptionsView.SubscriptionDetails = subscriptions; subscriptionsView.FolderID = id; //assign folder details CCFolder folderDetail = new CCFolder(); folderDetail = CCFolderRepository.FolderDetails(id); Session["folderDetail"] = folderDetail; return View(subscriptionsView); }
public ActionResult AppointmentListView(long ID) { Account accountObj = (Account)Session["account"]; AppointmentViewModel AppointmentViewModel = new AppointmentViewModel(); bool IsCrimeDiaryFields = false; TempData["SelectedMenu"] = "Folder"; TempData["SelectedSubMenuFolder"] = ID; CCFolder folderDetail = new CCFolder(); folderDetail = CCFolderRepository.FolderDetails(ID); AppointmentViewModel.FolderDetails = folderDetail; Session["folderDetail"] = folderDetail; LimitationsViewModel limitationsObj = (LimitationsViewModel)Session["limitations"]; AppointmentViewModel.limitationsObj = limitationsObj; //get folderfileds List<CCFolderField> folderfields = new List<CCFolderField>(); folderfields = CCFieldRepository.CCFolderFields.Where(id => id.FolderID == ID & id.AccountGUID == accountObj.AccountGUID).ToList(); var isExisting = folderfields.Where(cap => cap.FieldName == "LawyerName" & cap.AccountGUID == accountObj.AccountGUID).FirstOrDefault(); if (isExisting != null) { IsCrimeDiaryFields = true; } else { IsCrimeDiaryFields = false; } AppointmentViewModel.IsCrimeDiaryFields = IsCrimeDiaryFields; AppointmentViewModel.AppointmentListObjs = new List<customAppointmentView>(); var ItemListForFolder = CCItemRepository.CCContacts.Where(i => i.FolderID == ID & i.isDeleted == false).ToList(); foreach (var item in ItemListForFolder) { customAppointmentView C = new customAppointmentView(); C.ItemID = item.ItemID; var FolderFieldID = folderfields.Where(ff => ff.FieldCaption == "Subject").First().FieldID; C.subject = CCFieldValueRepository.CCFieldValues.Where(fv => fv.ItemID == item.ItemID && fv.FieldID == FolderFieldID).First().Value; FolderFieldID = folderfields.Where(ff => ff.FieldCaption == "Start Time").First().FieldID; var itemStartDate = CCFieldValueRepository.CCFieldValues.Where(fv => fv.ItemID == item.ItemID && fv.FieldID == FolderFieldID).First().Value; //DateTime itemStartDateMain = DateTime.Parse(itemStartDate); DateTime timeUtc = DateTime.Parse(itemStartDate); DateTime cstTime = new DateTime(); try { TimeZoneInfo cstZone = TimeZoneInfo.FindSystemTimeZoneById(accountObj.TimeZone.ToString()); cstTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone); Console.WriteLine("The date and time are {0} {1}.", cstTime, cstZone.IsDaylightSavingTime(cstTime) ? cstZone.DaylightName : cstZone.StandardName); } catch (TimeZoneNotFoundException) { Console.WriteLine("Timezone conversion error"); } catch (InvalidTimeZoneException) { Console.WriteLine("conn.LastSyncTime"); } DateTime itemStartDateMain = DateTime.Parse(cstTime.ToString()); C.startYear = itemStartDateMain.Year; C.startMonth = itemStartDateMain.Month; C.startDay = itemStartDateMain.Day; C.startHrs = itemStartDateMain.Hour; C.startMins = itemStartDateMain.Minute; FolderFieldID = folderfields.Where(ff => ff.FieldCaption == "End Time").First().FieldID; var itemEndDate = CCFieldValueRepository.CCFieldValues.Where(fv => fv.ItemID == item.ItemID && fv.FieldID == FolderFieldID).First().Value; //DateTime itemEndDateMain = DateTime.Parse(itemEndDate); timeUtc = DateTime.Parse(itemEndDate); cstTime = new DateTime(); try { TimeZoneInfo cstZone = TimeZoneInfo.FindSystemTimeZoneById(accountObj.TimeZone.ToString()); cstTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone); Console.WriteLine("The date and time are {0} {1}.", cstTime, cstZone.IsDaylightSavingTime(cstTime) ? cstZone.DaylightName : cstZone.StandardName); } catch (TimeZoneNotFoundException) { Console.WriteLine("Timezone conversion error"); } catch (InvalidTimeZoneException) { Console.WriteLine("conn.LastSyncTime"); } DateTime itemEndDateMain = DateTime.Parse(cstTime.ToString()); C.endYear = itemEndDateMain.Year; C.endMonth = itemEndDateMain.Month; C.endDay = itemEndDateMain.Day; C.endHrs = itemEndDateMain.Hour; C.endMins = itemEndDateMain.Minute; AppointmentViewModel.AppointmentListObjs.Add(C); } return View(AppointmentViewModel); }
public ActionResult ItemView(long id) { CCFolder folderDetail = new CCFolder(); folderDetail = CCFolderRepository.FolderDetails(id); return View(folderDetail); }
public ActionResult Items(long ID) { Account accountObj = (Account)Session["account"]; ItemsViewModel itemsViewModel = new ItemsViewModel(); bool IsCrimeDiaryFields = false; TempData["SelectedMenu"] = "Folder"; TempData["SelectedSubMenuFolder"] = ID; CCFolder folderDetail = new CCFolder(); folderDetail = CCFolderRepository.FolderDetails(ID); if (folderDetail.Type == 1) { itemsViewModel.FolderDetails = folderDetail; Session["folderDetail"] = folderDetail; LimitationsViewModel limitationsObj = (LimitationsViewModel)Session["limitations"]; itemsViewModel.limitationsObj = limitationsObj; int FolderItemCount = CCItemRepository.CCContacts.Where(i => i.FolderID == ID).Count(); if ((FolderItemCount > limitationsObj.maxItemCountPerFolder) & (folderDetail.isOverFlow == false)) { folderDetail.isOverFlow = true; CCFolderRepository.SaveFolder(folderDetail); } if ((FolderItemCount <= limitationsObj.maxItemCountPerFolder) & (folderDetail.isOverFlow == true)) { folderDetail.isOverFlow = false; CCFolderRepository.SaveFolder(folderDetail); } //get folderfileds List<CCFolderField> folderfields = new List<CCFolderField>(); folderfields = CCFieldRepository.CCFolderFields.Where(id => id.FolderID == ID & id.AccountGUID == accountObj.AccountGUID).ToList(); var isExisting = folderfields.Where(cap => cap.FieldName == "LawyerName" & cap.AccountGUID == accountObj.AccountGUID).FirstOrDefault(); if (isExisting != null) { IsCrimeDiaryFields = true; } else { IsCrimeDiaryFields = false; } itemsViewModel.IsCrimeDiaryFields = IsCrimeDiaryFields; return View(itemsViewModel); } else { return RedirectToAction("viewAppointments", "Folder", new { ID = ID }); } }
public CCFolder SaveFolder(CCFolder folderObj) { var xx = folderObj.Name; if (folderObj.FolderID == 0) { if (folderObj.Type == 3) folderObj.Type = 2; context.CCFolders.Add(folderObj); context.SaveChanges(); } else { CCFolder dbEntry = context.CCFolders.Find(folderObj.FolderID); if (dbEntry != null) { dbEntry.Name = folderObj.Name; context.SaveChanges(); } } return folderObj; }
public bool UpdatePauseSync(CCFolder folderObj) { CCFolder dbEntry = context.CCFolders.Find(folderObj.FolderID); if (dbEntry != null) { if (folderObj.IsPaused != null) { dbEntry.IsPaused = folderObj.IsPaused; } context.SaveChanges(); } return true; }
public ActionResult ChangeSyncState(string ActionType, string ID, string Value) { User userObj = (User)Session["user"]; Account accountObj = (Account)Session["account"]; if (ModelState.IsValid && accountObj != null) { if (ActionType == "Folder") { CCFolder folderObj = new CCFolder(); folderObj.FolderID = long.Parse(ID); if (Value == "1") folderObj.IsPaused = false; else folderObj.IsPaused = true; bool folderUpdate = CCFolderRepository.UpdatePauseSync(folderObj); //Change state of IsPaused in Connections as well.. var connectionListOfFolder = CCConnectionRepository.CCSubscriptions.Where(fid => fid.FolderID == folderObj.FolderID).ToList(); foreach (var conn in connectionListOfFolder) { CCConnection connectionObj = new CCConnection(); connectionObj.ConnectionID = conn.ConnectionID; if (Value == "1") connectionObj.IsPaused = false; else connectionObj.IsPaused = true; bool connectionUpdate = CCConnectionRepository.UpdatePauseSync(connectionObj); } } else if (ActionType == "Connection") { CCConnection connectionObj = new CCConnection(); connectionObj.ConnectionID = long.Parse(ID); if (Value == "1") connectionObj.IsPaused = false; else connectionObj.IsPaused = true; bool connectionUpdate = CCConnectionRepository.UpdatePauseSync(connectionObj); } } return RedirectToAction("Index", "Admin"); }