// function to catch the update event from VuMeter class to update graph cordinates public void CatchUpdateForms(object sender, UpdateForms Update) { VuMeter ob_VuMeterArg = sender as VuMeter; ob_VuMeter = ob_VuMeterArg; // Update cordinates HighTop = ob_VuMeter.Graph.HighTop; HighBottom = ob_VuMeter.Graph.HighBottom; NormalTop = ob_VuMeter.Graph.NormalTop; NormalBottom = ob_VuMeter.Graph.NormalBottom; LowTop = ob_VuMeter.Graph.LowTop; LowBottom = ob_VuMeter.Graph.LowBottom; LineWidth = ob_VuMeter.Graph.LineWidth; LeftGraphX = ob_VuMeter.Graph.LeftGraphX; RightGraphX = ob_VuMeter.Graph.RightGraphX; BackGroundWidth = ob_VuMeter.Graph.BackGroundWidth; BackGroundTop = ob_VuMeter.Graph.BackGroundTop; BackGroundBottom = ob_VuMeter.Graph.BackGroundBottom; EraserLeft = ob_VuMeter.Graph.EraserLeft; EraserRight = ob_VuMeter.Graph.EraserRight; PeakOverloadLightX = ob_VuMeter.Graph.PeakOverloadLightX; PeakOverloadLightY = ob_VuMeter.Graph.PeakOverloadLightY; AmplitudeLeft = ob_VuMeter.m_MeanValueLeft; AmplitudeRight = ob_VuMeter.m_MeanValueRight; tmRefresh.Enabled = true; tmRefreshText.Enabled = true; }
public static void updateForms(string uid) { var dateNow = string.Format("{0:yyyy-MM-ddTH:mm:sszzz}", DateTime.Now); var answersToSend = DBLocalDataStore.GetInstance().getAnswers(); var appInfo = DBLocalDataStore.GetInstance().GetAppInfo(); var user = DBLocalDataStore.GetInstance().GetLocalUserInfo(); var formDefinition = DBLocalDataStore.GetInstance().GetLocalFormDefinitions().Find(s => s.uuid == DBLocalDataStore.GetInstance().GetSelectedQuestionPosition()); var questions = DBLocalDataStore.GetInstance().GetLocalQuestions(formDefinition.uuid); UpdateForms scr = new UpdateForms(); scr.context = new RequestData(); scr.forms = new List <AnsweredForm>(); var context = scr.context; context.password = user.password; context.username = user.username; context.profile = DBLocalDataStore.GetInstance().GetSelectProfile().shortName; context.tags = new string[] { user.tags }; context.campaignReference = appInfo.campaignReference; var form = new AnsweredForm(); List <Answer> tmpAnswers = new List <Answer>(); form.contactUid = uid; form.startdate = dateNow; form.enddate = dateNow; form.name = formDefinition.objectName; form.user = new DeviceUser { username = user.username, profile = context.profile }; form.answers = new Answer[] { }; bool isAnyQuestionAnswered = answersToSend.Count(s => OfflineLogic.isAnswerValid(s.answer)) > 0; bool isAnswersValid = true; for (int index = 0; (index < answersToSend.Count) && isAnyQuestionAnswered; index++) { if (OfflineLogic.isAnswerValid(answersToSend[index].answer)) { Answer answer = new Answer(); answer.answer = answersToSend[index].answer; answer.name = questions[index].name; answer.type = questions[index].type; tmpAnswers.Add(answer); } else { if (OfflineLogic.isQuestionRequired(questions[index])) { isAnswersValid = false; } } } if (isAnswersValid) { form.answers = tmpAnswers.ToArray(); scr.forms.Add(form); } else { throw new InvalidOperationException("You did not complete all mandatory fields in the info screen. Please correct."); } string json = JsonConvert.SerializeObject(scr); DBSyncRequest syncRequest = new DBSyncRequest(); syncRequest.serializedSyncContext = json; DBLocalDataStore.GetInstance().addSyncRequest(syncRequest); OfflineLogic.ClearDataSelected(); }
public static void updateForms(string uid, List <Answer> answers, int originalRequestID) { if (answers == null) { throw new ArgumentException("Answers must not be null"); } var dateNow = string.Format("{0:yyyy-MM-ddTH:mm:sszzz}", DateTime.Now); //var answersToSend = DBLocalDataStore.GetInstance().getAnswers(); var appInfo = DBLocalDataStore.GetInstance().GetAppInfo(); var user = DBLocalDataStore.GetInstance().GetLocalUserInfo(); var formDefinition = DBLocalDataStore.GetInstance().GetLocalFormDefinitions().Find(s => s.uuid == DBLocalDataStore.GetInstance().GetSelectedQuestionPosition()); var questions = DBLocalDataStore.GetInstance().GetLocalQuestions(formDefinition.uuid); UpdateForms scr = new UpdateForms(); scr.forms = new List <AnsweredForm>(); string profileName = DBLocalDataStore.GetInstance().GetSelectProfile().shortName; var form = new AnsweredForm(); form.contactUid = uid; form.startdate = dateNow; form.enddate = dateNow; form.name = formDefinition.objectName; form.user = new DeviceUser { username = user.username, profile = profileName }; bool isAnyQuestionAnswered = answers.Count(s => OfflineLogic.isAnswerValid(s.answer)) > 0; bool isAnswersValid = true; List <Answer> tmpAnswers = new List <Answer>(); for (int index = 0; (index < answers.Count) && isAnyQuestionAnswered; index++) { if (OfflineLogic.isAnswerValid(answers[index].answer)) { Answer answer = new Answer(); answer.answer = answers[index].answer; answer.name = questions[index].name; answer.type = questions[index].type; tmpAnswers.Add(answer); } else { if (OfflineLogic.isQuestionRequired(questions[index])) { isAnswersValid = false; } } } if (isAnswersValid) { form.answers = tmpAnswers.ToArray(); scr.forms.Add(form); string json = JsonConvert.SerializeObject(scr); DBSyncRequest syncRequest = new DBSyncRequest(); syncRequest.serializedSyncContext = json; DBLocalDataStore.GetInstance().addSyncRequest(syncRequest); var originalSyncRequest = DBLocalDataStore.GetInstance().getSyncRequests().Find(r => r.Id == originalRequestID); var originalContext = JsonConvert.DeserializeObject <SyncContext>(originalSyncRequest.serializedSyncContext); originalContext.forms.RemoveAll(c => c.contactUid.Equals(uid)); if (originalContext.contacts.isNullOrEmpty() && originalContext.forms.isNullOrEmpty() && originalContext.orders.isNullOrEmpty()) { DBLocalDataStore.GetInstance().deleteSyncRequest(originalSyncRequest); } else { originalSyncRequest.serializedSyncContext = JsonConvert.SerializeObject(originalContext); DBLocalDataStore.GetInstance().updateSyncReqest(originalSyncRequest); } } else { throw new InvalidOperationException("You did not complete all mandatory fields in the info screen. Please correct."); } }