/// <summary> /// Creates the API request to add a new client to the database, and handles the response /// </summary> /// <param name="client">Client as a JSON string to be added to the system</param> private void AddClientToDatabase(string client) { APIRequests request = new APIRequests(); string url = $"{request.allClientDetailsEndpoint}"; string response = request.SendPOSTRequestDataInBody(url, client); //logger.Info(response); if (response.Contains("Successfully added new client")) { bool successfullyAdded = AddClientToClientDb(response); if (successfullyAdded) { MessageBox.Show("Successfully added client to the system"); } else { MessageBox.Show("Client succesfully added to main database, but failed to add it to the client login database"); } } else { MessageBox.Show("Something went wrong"); } }
private void MarkExericiseAsInactive() { int exerciseId = GetExericseIdFromDropdown(); if (exerciseId == 0) { MessageBox.Show("Please pick an exercise from the dropdown"); } else { APIRequests request = new APIRequests(); string url = $"{request.singleExercisesEndpoint}{exerciseId}"; string response = request.SendDeleteRequestData(url); if (response.Contains("Successfully marked the exercise inactive")) { MessageBox.Show("Successfully marked the exercise inactive"); // Now clear the table dataGridViewExercises.DataSource = ""; // Refresh the dropdown Exercise.GetExercises(); PopulateDropdownMenu(); } else { MessageBox.Show("Sorry, couldn't mark the exercise as inactive"); } } }
public bool AddClientToClientDb(string responseFromApi) { string response = responseFromApi; AddClientResponse addClientResponse = new AddClientResponse(response); int id = Convert.ToInt32(addClientResponse.clientId); ClientDBPerson clientDBPerson = new ClientDBPerson("*****@*****.**", "bugs", id); var json = JsonConvert.SerializeObject(clientDBPerson); APIRequests request = new APIRequests(); var responseFromClientDb = request.SendPOSTRequestDataInBodyNoAuth(request.clientSiteRegUrl, json); if (responseFromClientDb.Contains("success")) { return(true); } else { return(false); } }
public static void TestClientDb() { APIRequests request = new APIRequests(); ClientDBPerson clientDBPerson2 = new ClientDBPerson("*****@*****.**", "bugs", 1); var json2 = JsonConvert.SerializeObject(clientDBPerson2); var responseFromApi = request.SendPOSTRequestDataInBodyNoAuth("http://*****:*****@t.com", "bugs", id); var json = JsonConvert.SerializeObject(clientDBPerson); //logger.Info(json); var response = request.SendPOSTRequestDataInBodyNoAuth(request.clientSiteRegUrl, json); Console.WriteLine(response); }
public void SendRequest(RequestType requestCode, string requestData, bool isShowErrorMessage, System.Action <RequestType, string, bool, string> callbackMethod = null, WWWForm formData = null, bool isGetMethod = false) { APIRequests request = new APIRequests(); if (formData != null) { request.pdata = formData.data; } else { if (!string.IsNullOrEmpty(requestData)) { request.pdata = System.Text.Encoding.ASCII.GetBytes(requestData.ToCharArray()); } else { request.pdata = null; } } request.url = GameConstants.GAME_URLS[(int)requestCode]; request.requestCode = requestCode; request.callbackMethod = callbackMethod; request.isShowErrorMessage = isShowErrorMessage; request.retryCount = 0; #if DEBUG_LOG Debug.Log("Calling API sending data requestCode = " + request.requestCode + " data = " + requestData + " url = " + request.url); Debug.LogError("URL ===> " + request.url); #endif SendRequestToServer(request); }
private void buttonSaveChanges_Click(object sender, EventArgs e) { // 1. Get details int muscleGroupId = Convert.ToInt32(textBoxId.Text); string muscleGroupName = textBoxEditName.Text; // 2. Create object MuscleGroup muscleGroup = new MuscleGroup(muscleGroupId, muscleGroupName); // 3. Convert to JSON var jsonData = JsonConvert.SerializeObject(muscleGroup); // 4. Create request, send it, and get response APIRequests request = new APIRequests(); string url = $"{request.allMuscleGroupsEndpoint}/{muscleGroupId}/{muscleGroupName}"; var response = request.SendPathRequestData(url); // 5. Handle response if (response.Contains("Successfully")) { MessageBox.Show("Successfully modified the muscle group"); textBoxEditName.Text = ""; ResetMuscleGroupView(); } else { MessageBox.Show("Something went wrong, and we couldn't edit the muscle group"); } }
private IEnumerator WaitForAPIResponse(APIRequests request) { yield return(new WaitForSeconds(GameConstants.API_TIME_OUT_LIMIT)); StopCoroutine(request.requestMethod); SendRequestToServer(request); }
public static void AuthToken() { APIRequests.environment = APIRequests.liveEnvironment; APIRequests request = new APIRequests(); request.GetAuthToken(); Console.WriteLine(APIRequests.savedToken.access_Token.ToString()); }
private string AddTrainingSessionTodatabase(string session) { APIRequests request = new APIRequests(); string url = request.allTrainingSessionsEndpoint; string response = request.SendPOSTRequestDataInBody(url, session); return(response); }
/// <summary> /// Sending the patch request to the server for editing an exercise /// </summary> /// <param name="exercise">Name of the exercise</param> /// <param name="exerciseId">ID of the exercise being patched</param> private void SendPatchExerciseRequest(string exercise, string exerciseId) { APIRequests request = new APIRequests(); string url = $"{request.singleExercisesEndpoint}{exerciseId}"; string response = request.SendPatchRequestDataInBody(url, exercise); // TODO: Change this to show either a generic success or error message MessageBox.Show(response); }
public void T1000_Get_Valid_Auth_Token() { APIRequests.environment = APIRequests.liveEnvironment; APIRequests request = new APIRequests(); request.GetAuthToken(); string token = APIRequests.savedToken.access_Token.ToString(); Assert.AreEqual(token, "hi"); }
public void GetWorkoutInformation(int id) { APIRequests request = new APIRequests(); string url = $"{request.getSpecificWorkoutHistoryItem}{id}"; var response = request.GetRequests(url); //logger.Info(response); ParseWebResponse(response); }
public static void testEndpoint() { Console.WriteLine("Now checking endpoint"); APIRequests token = new APIRequests(); string jsonData = token.GetRequests("https://frozen-meadow-69055.herokuapp.com/clients/1/workouthistory"); try { JArray jsonArray = JArray.Parse(jsonData); Console.WriteLine("jarray count: " + jsonArray.Count); Console.WriteLine(jsonArray); for (int i = 0; i < jsonArray.Count; i++) { JObject data = JObject.Parse(jsonArray[i].ToString()); //Client client = data.ToObject<Client>(); //TrainingSessions trainingSessions = JObject.Parse(jsonArray[i].ToString()) //Console.WriteLine("\nNow writing a random value"); //Console.WriteLine("State: " + client.state); //Console.WriteLine("First Name: " + client.firstName); // Console.WriteLine("Trainingsession: " + client.assigned_training_sessions); } } catch (Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine(jsonData); return; } //// Option #2 //JArray array = JArray.Parse(jsonData); //foreach (JObject obj in array.Children<JObject>()) //{ // foreach (JProperty singleProp in obj.Properties()) // { // string name = singleProp.Name; // string value = singleProp.Value.ToString(); // Console.WriteLine("Name: " + name + "\nValue: " + value); // //Do something with name and value // //System.Windows.MessageBox.Show("name is "+name+" and value is "+value); // } //} }
private IEnumerator WaitForServerResponse(APIRequests request) { if (!IsInternetAvailable()) { if (request.isShowErrorMessage) { request.callbackMethod(request.requestCode, "", request.isShowErrorMessage, "Internet Connection not available."); } yield break; } request.timerMethod = WaitForAPIResponse(request); Dictionary <string, string> headers = new Dictionary <string, string>(); headers.Add("Content-Type", "application/json"); //Debug.LogError(request.url); WWW www = new WWW(request.url, request.pdata, headers); StartCoroutine(request.timerMethod); yield return(www); StopCoroutine(request.timerMethod); #if DEBUG_LOG Debug.Log("Response Found requestCode = " + request.requestCode + " data = " + www.text); #endif if (request.callbackMethod != null) { string errorMessage = ""; if (www.error != null) { errorMessage = www.error; } else if (string.IsNullOrEmpty(www.text)) { errorMessage = "Server response not found, please check your internet connection is working properly"; } //Debug.Log("$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ " + www.text); request.callbackMethod(request.requestCode, www.text, request.isShowErrorMessage, errorMessage); } www.Dispose(); www = null; }
private void buttonDeleteWorkout_Click(object sender, EventArgs e) { DialogResult result1 = MessageBox.Show("This will remove the workout from your history, and it cannot be recovered. Do you wish to continue?", "This will delete a workout", MessageBoxButtons.YesNo); if (result1.ToString() == "No") { return; } int workoutId = 0; foreach (DataGridViewRow item in this.dataGridViewWorkoutHistory.SelectedRows) { // TODO: Be able to select the session to remove it string workoutIdFromGrid = Convert.ToString(item.Cells[0].Value); workoutId = Convert.ToInt32(workoutIdFromGrid); } if (workoutId == 0) { MessageBox.Show("Please select an entire row"); } else { APIRequests request = new APIRequests(); string url = $"{request.getSpecificWorkoutHistoryItem}{workoutId}"; logger.Info(url); string response = request.SendDeleteRequestData(url); if (response.Contains("Successfully removed workout from client")) { MessageBox.Show("Successfully removed workout from client"); GetClientInformation(); } else { logger.Error(response); MessageBox.Show("Something went wrong and workout not removed"); } } }
void onActivityResult(string theString) { Debug.Log("onActivityResult in Unity is Called: " + theString); string[] result = theString.Split('='); string authCode = result [1]; result = authCode.Split('&'); authCode = result [0]; //authCode is the authentication code from Moves. Debug.Log("the Code is: " + authCode); PlayerPrefs.SetString("CODE", authCode); APIRequests APIObj = GameObject.Find("APIRequests").GetComponent <APIRequests> (); APIObj.callGetToken(); } //end of onActivityResult
// TODO Chamar GetAtualizacoes antes de procurar episodios para baixar private void AtualizarConteudo() { var worker = new BackgroundWorker(); worker.DoWork += async(s, e) => { ProcurarNovosEpisodiosBaixados(); AlterarStatusEpisodios(); ProcurarEpisodiosParaBaixar(); await APIRequests.GetAtualizacoes(); }; worker.RunWorkerAsync(); }
/// <summary> /// Method for creating the request and sending it off to the server to add a new exercise /// </summary> /// <param name="exercise">Exercise object as a JSON string</param> private static void AddExerciseToDatabase(string exercise) { APIRequests request = new APIRequests(); string url = $"{request.allExercisesEndpoint}"; string response = request.SendPOSTRequestDataInBody(url, exercise); logger.Info(response); if (response.Contains("Successfully added new exercise")) { MessageBox.Show("Successfully added exercise to the system"); } else { MessageBox.Show("Something went wrong"); } }
private void buttonAddNew_Click(object sender, EventArgs e) { string name = textBoxName.Text; bool nameAlreadyExists = false; if (name == "") { MessageBox.Show("Please fill out the name textbox"); return; } // Check if the name exists foreach (var muscleGroup in MuscleGroup.muscleGroupList) { if (name == muscleGroup.muscle_group_details) { MessageBox.Show("Muscle Groups already exists. Please pick a new name"); nameAlreadyExists = false; break; } } // If the name is new, send it to the API if (!nameAlreadyExists) { APIRequests request = new APIRequests(); string url = $"{request.allMuscleGroupsEndpoint}/{name}"; var response = request.SendPostRequestData(url); if (response.Contains("Successfully")) { MessageBox.Show("Sucessfully added a new muscle group"); textBoxName.Text = ""; ResetMuscleGroupView(); } } }
private void SendRequestToServer(APIRequests request) { if (request.retryCount >= GameConstants.API_RETRY_LIMIT) { Debug.Log("API retry count exceeded api code = " + request.requestCode); if (request.callbackMethod != null) { request.callbackMethod(request.requestCode, "", request.isShowErrorMessage, "Retry count exceeded."); } else { Debug.LogError("Call back method is null "); } return; } ++request.retryCount; request.requestMethod = WaitForServerResponse(request); StartCoroutine(request.requestMethod); }
private void GetInformation() { APIRequests request = new APIRequests(); var url = request.allMuscleGroupsEndpoint; var response = request.GetRequests(url); if (response == "") { MessageBox.Show("Sorry, can't connect to server"); } else { Thread muscleGroups = new Thread(() => MuscleGroup.GetMusclegroups()); Thread exercises = new Thread(() => Exercise.GetExercises()); Thread clients = new Thread(() => Client.GetClients()); Thread trainingSessions = new Thread(() => TrainingSession.GetAllTrainingSessions()); exercises.Start(); muscleGroups.Start(); clients.Start(); trainingSessions.Start(); exercises.Join(); muscleGroups.Join(); clients.Join(); trainingSessions.Join(); buttonClientManagement.Enabled = true; buttonClientManagement.BackColor = Color.LightGreen; buttonClientManagement.Enabled = true; buttonExerciseManagement.BackColor = Color.LightGreen; buttonExerciseManagement.Enabled = true; buttonSessionManagement.Enabled = true; buttonSessionManagement.BackColor = Color.LightGreen; buttonMuscleGroup.Enabled = true; buttonMuscleGroup.BackColor = Color.LightGreen; } }
private void buttonSaveEdits_Click(object sender, EventArgs e) { string clientId = labelClientIdText.Text; string firstName = textBoxFirstName.Text; string lastName = textBoxLastName.Text; string address = textBoxAddress.Text; string city = textBoxCity.Text; string zipCode = textBoxZipCode.Text; string email = textBoxEmail.Text; string state = textBoxState.Text; string active = checkBoxActive.Checked.ToString(); string phone = textBoxPhone.Text; // TODO: Compare old values and new values. If changed, add to an array and convert it to json to send Client client = new Client(clientId, firstName, lastName, active, address, city, state, zipCode, phone, email); string clientAsJson = JsonConvert.SerializeObject(client); //logger.Info(clientAsJson); APIRequests request = new APIRequests(); string url = $"{request.singleClientDetailEndpoint}{clientId}"; string response = request.SendPatchRequestDataInBody(url, clientAsJson); if (response.Contains("Successfully modified the client")) { MessageBox.Show("Successfully modified the client"); this.Close(); } else { MessageBox.Show("Something went wrong"); } }
/// <summary> /// Marks a given client as inactive in the system /// </summary> private void MarkClientAsInactive() { int clientId = GetClientIdFromDropdown(); if (clientId == 0) { MessageBox.Show("Please pick a client"); } else { Client client = new Client(); client.active = "false"; string clientAsJson = JsonConvert.SerializeObject(client); APIRequests request = new APIRequests(); string url = $"{request.singleClientDetailEndpoint}{clientId}"; string response = request.SendPatchRequestDataInBody(url, clientAsJson); MessageBox.Show(response); } }
/// <summary> /// This is called when the user wants to save their changes /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonSave_Click(object sender, EventArgs e) { string id = textBoxSessionId.Text; string name = textBoxName.Text; string description = textBoxDescription.Text; string sets = textBoxTrainingSessionSets.Text; string reps = textBoxTrainingSessionReps.Text; string active = checkBoxActive.Checked.ToString(); TrainingSession newSession = new TrainingSession(id, name, description, sets, reps, active); // Convert the object to JSON string jsonSession = JsonConvert.SerializeObject(newSession); logger.Debug(jsonSession); //TODO: Finish up modifying the training session. Make sure the methods are created first APIRequests request = new APIRequests(); string url = $"{request.singleTrainingSessionEndpoint}{id}"; logger.Debug(url); // Patch the training session var response = request.SendPatchRequestDataInBody(url, jsonSession); // Check the resulting json for results if (response.Contains("Successfully")) { // Check for new exercises to be added to the training session CheckForNewSessions(); if (exercisesToAdd.Count != 0) { // Foreach, send patch request foreach (var exercise in exercisesToAdd) { url = $"{request.singleTrainingSessionEndpoint}{exercise.Value}/exercise/{exercise.Key}"; var exerciseResponse = request.SendPostRequestData(url); if (exerciseResponse.Contains("error")) { MessageBox.Show(exerciseResponse); logger.Error(exerciseResponse); } } } // Check for removed exericeses CheckForDeletedSessions(); if (exercisesToremove.Count != 0) { foreach (var exercise in exercisesToremove) { url = $"{request.singleTrainingSessionEndpoint}{exercise.Value}/exercise/{exercise.Key}"; var exerciseResponse = request.SendDeleteRequestData(url); if (exerciseResponse.Contains("error")) { MessageBox.Show(exerciseResponse); logger.Error(exerciseResponse); } } } MessageBox.Show("Completed modifying the training session"); this.Close(); } // End of if statement else { MessageBox.Show("Couldn't modify the training session"); } }
public void Start() { APIObj = GameObject.Find("APIRequests").GetComponent <APIRequests> (); jsonDataObj = GameObject.Find("JSONDataObject").GetComponent <JSONDataObject> (); }
private void buttonSave_Click(object sender, EventArgs e) { // TODO: This // Save user entered values as a new trainingSession string name = textBoxName.Text; string description = textBoxDescription.Text; string sets = textBoxTrainingSessionSets.Text; string reps = textBoxTrainingSessionReps.Text; string active = checkBoxActive.Checked.ToString().ToLower(); TrainingSession newSession = new TrainingSession(name, description, sets, reps, active); // Convert the object to JSON string jsonSession = JsonConvert.SerializeObject(newSession); logger.Info(jsonSession); // Insert it into the database. Get the ID back from the tool var response = AddTrainingSessionTodatabase(jsonSession); if (response.Contains("Successfully added new training session")) { dynamic trainingSessionResponse = JObject.Parse(response); logger.Info("Response: " + trainingSessionResponse); var newSessionId = trainingSessionResponse.trainingSessionId; //logger.Info(newSessionId); //// Convert the training sessions string exercisesInTrainingSession = JsonConvert.SerializeObject(Exercise.exercisesForTrainingSession); //logger.Info("New exercises"); //logger.Info(exercisesInTrainingSession); APIRequests request = new APIRequests(); bool exerciseErrors = false; foreach (var exercise in Exercise.exercisesForTrainingSession) { string exerciseId = exercise.exercise_id; string url = $"{request.singleTrainingSessionEndpoint}{newSessionId}/exercise/{exerciseId}"; logger.Info(url); string exerciseResponse = request.SendPostRequestData(url); if (!exerciseResponse.Contains("Successfully")) { exerciseErrors = true; logger.Error(exerciseResponse); } } if (exerciseErrors) { MessageBox.Show("There were errors inserting the exercises. Please check the log files"); } else { TrainingSession.GetAllTrainingSessions(); MessageBox.Show("Successfully created the new training session"); this.Close(); } } else { MessageBox.Show("Something went wrong in saving the training session."); logger.Error(response); } }
public void LoadConteudos(Enums.TipoConteudo contentType) { var frmBarraProgresso = new frmBarraProgresso(); frmBarraProgresso.BarraProgressoViewModel.sDsTarefa = "Procurando pastas..."; frmBarraProgresso.BarraProgressoViewModel.Worker.DoWork += (sender, e) => { var conteudos = new ObservableCollection <Video>(); var seriesService = App.Container.Resolve <SeriesService>(); switch (contentType) { case Enums.TipoConteudo.AnimeFilmeSérie: DirectoryInfo[] dirSeries = Helper.retornarDiretoriosSeries(); DirectoryInfo[] dirAnimes = Helper.retornarDiretoriosAnimes(); DirectoryInfo[] dirFilmes = Helper.retornarDiretoriosFilmes(); frmBarraProgresso.BarraProgressoViewModel.dNrProgressoMaximo = (dirSeries != null ? dirSeries.Length : 0) + (dirAnimes != null ? dirAnimes .Length : 0) + (dirFilmes != null ? dirFilmes.Length : 0); if (dirSeries != null) { foreach (DirectoryInfo dir in dirSeries) { frmBarraProgresso.BarraProgressoViewModel.dNrProgressoAtual++; frmBarraProgresso.BarraProgressoViewModel.sDsTexto = dir.FullName; if (!seriesService.VerificarSeExiste(dir.FullName)) { List <Serie> lstSeries = APIRequests.GetSeries(dir.Name); if (lstSeries.Count == 0) { var conteudo = new Serie(); conteudo.nIdTipoConteudo = Enums.TipoConteudo.Série; conteudo.sDsPasta = dir.FullName; conteudo.bFlNaoEncontrado = true; conteudos.Add(conteudo); } else if (lstSeries.Count > 0 && !seriesService.VerificarSeExiste(lstSeries[0].nCdApi)) { Serie conteudo = lstSeries[0]; conteudo.nIdTipoConteudo = Enums.TipoConteudo.Série; conteudo.sDsPasta = dir.FullName; conteudo.bFlSelecionado = true; if (!string.IsNullOrWhiteSpace(conteudo.sAliases)) { foreach (string item in conteudo.sAliases.Split('|')) { var alias = new SerieAlias(item); if (conteudo.lstSerieAlias == null) { conteudo.lstSerieAlias = new ObservableCollection <SerieAlias>(); } conteudo.lstSerieAlias.Add(alias); } } conteudos.Add(conteudo); } } } } if (dirAnimes != null) { foreach (DirectoryInfo dir in dirAnimes) { frmBarraProgresso.BarraProgressoViewModel.dNrProgressoAtual++; frmBarraProgresso.BarraProgressoViewModel.sDsTexto = dir.FullName; if (!seriesService.VerificarSeExiste(dir.FullName)) { List <Serie> lstSeries = APIRequests.GetSeries(dir.Name); if (lstSeries == null || lstSeries.Count == 0) { var conteudo = new Serie(); conteudo.nIdTipoConteudo = Enums.TipoConteudo.Anime; conteudo.sDsPasta = dir.FullName; conteudo.bFlNaoEncontrado = true; conteudos.Add(conteudo); } else if (lstSeries.Count > 0 && !seriesService.VerificarSeExiste(lstSeries[0].nCdApi)) { Serie conteudo = lstSeries[0]; conteudo.nIdTipoConteudo = Enums.TipoConteudo.Anime; conteudo.sDsPasta = dir.FullName; conteudo.bFlSelecionado = true; if (!string.IsNullOrWhiteSpace(conteudo.sAliases)) { foreach (string item in conteudo.sAliases.Split('|')) { var alias = new SerieAlias(item); if (conteudo.lstSerieAlias == null) { conteudo.lstSerieAlias = new ObservableCollection <SerieAlias>(); } conteudo.lstSerieAlias.Add(alias); } } conteudos.Add(conteudo); } } } } //if (dirFilmes != null) {// TODO Filmes // foreach (var dir in dirFilmes) //{ // if (!DatabaseHelper.VerificaSeExiste(dir.FullName)) // { // filmes = await Helper.API_PesquisarConteudoAsync(dir.Name, Enums.TipoConteudo.movie.ToString(), false); // if (filmes.Count != 0 && !DatabaseHelper.VerificaSeExiste(filmes[0].Video.ids.trakt)) // conteudos.Add(new ConteudoGrid { Nome = filmes[0].Video.title, Pasta = dir.FullName, TipoConteudo = Enums.TipoConteudo.movie, TraktSlug = filmes[0].Video.ids.slug, IsSelected = true }); // } // } //} break; default: throw new InvalidEnumArgumentException(); } lstConteudos = conteudos; if (lstConteudos.Count == 0) { Helper.MostrarMensagem("Nenhum novo conteúdo foi encontrado.", Enums.eTipoMensagem.Informativa); } //Conteudos.Clear(); //foreach (var item in conteudos) //{ // Conteudos.Add(item); //} }; frmBarraProgresso.BarraProgressoViewModel.Worker.RunWorkerAsync(); frmBarraProgresso.ShowDialog(Owner); }
public void Execute(object parameter) { var ProcurarConteudoViewModel = parameter as ProcurarConteudoViewModel; var frmBarraProgresso = new frmBarraProgresso(); frmBarraProgresso.BarraProgressoViewModel.dNrProgressoMaximo = ProcurarConteudoViewModel.lstConteudos.Where(x => x.bFlSelecionado).Count(); frmBarraProgresso.BarraProgressoViewModel.sDsTarefa = "Salvando..."; frmBarraProgresso.BarraProgressoViewModel.Worker.DoWork += (s, ev) => { var seriesService = App.Container.Resolve <SeriesService>(); //if (ProcurarConteudoViewModel.lstConteudos.Where(x => x.bFlSelecionado && !x.bFlNaoEncontrado).Count() == 0) //{ // Helper.MostrarMensagem("Para realizar a operação, selecione ao menos um registro.", Enums.eTipoMensagem.Alerta); //} foreach (Video item in ProcurarConteudoViewModel.lstConteudos) { if (item.bFlSelecionado && !item.bFlNaoEncontrado) { switch (item.nIdTipoConteudo) { case Enums.TipoConteudo.Série: case Enums.TipoConteudo.Anime: { frmBarraProgresso.BarraProgressoViewModel.sDsTexto = "Salvando \"" + item.sDsTitulo + "\" (" + (frmBarraProgresso .BarraProgressoViewModel .dNrProgressoAtual + 1) + "/" + frmBarraProgresso .BarraProgressoViewModel .dNrProgressoMaximo + ")..."; if (item.nIdEstado != Enums.Estado.Completo) { Serie serie = APIRequests.GetSerieInfoAsync(item.nCdApi, Properties.Settings.Default .pref_IdiomaPesquisa).Result; serie.nIdTipoConteudo = item.nIdTipoConteudo; serie.sDsPasta = item.sDsPasta; serie.sAliases = item.sAliases; serie.lstSerieAlias = item.lstSerieAlias; serie.sDsTitulo = item.sDsTitulo; serie.SetEstadoEpisodio(); seriesService.Adicionar(serie); } else { (item as Serie).SetEstadoEpisodio(); seriesService.Adicionar((Serie)item); } frmBarraProgresso.BarraProgressoViewModel.dNrProgressoAtual++; if (frmBarraProgresso.BarraProgressoViewModel.dNrProgressoAtual == frmBarraProgresso.BarraProgressoViewModel.dNrProgressoMaximo) { frmBarraProgresso.BarraProgressoViewModel.sDsTexto = "Concluído."; } break; } case Enums.TipoConteudo.Filme: throw new NotImplementedException(); // TODO Filmes } } } Helper.MostrarMensagem("Séries inseridas com sucesso.", Enums.eTipoMensagem.Informativa); }; frmBarraProgresso.BarraProgressoViewModel.Worker.RunWorkerCompleted += (s, ev) => ProcurarConteudoViewModel.ActionFechar(); frmBarraProgresso.BarraProgressoViewModel.Worker.RunWorkerAsync(); frmBarraProgresso.ShowDialog(ProcurarConteudoViewModel.Owner); }
public static IList <Serie> RetornarListaSeries() { _lstSeries = new List <Serie>(); _lstEpisodios = new List <Episodio>(); var lstIntIdsSeries = new List <int> { 257655, 273181, 205281, 121361, 274431, 281485, 263365, 281662, 268592, 80379, 279121, 258744, 153021, 264492, 267440, 289679, 88031, 295068, 289882, 114801, 79151, 85249, 295224, 249827, 79824, 278155, 81797, 293088, 259640, 251085, 281249 }; foreach (int item in lstIntIdsSeries) { Serie serie = APIRequests.GetSerieInfoAsync(item, "en").Result; serie.nCdVideo = _lstSeries.Any() ? _lstSeries.Last().nCdVideo + 1 : 1; serie.nIdTipoConteudo = Enums.TipoConteudo.Série; serie.SetDefaultFolderPath(); _lstSeries.Add(serie); foreach (Episodio episodio in serie.lstEpisodios) { episodio.nCdEpisodio = _lstEpisodios.Any() ? _lstEpisodios.Last().nCdEpisodio : 1; episodio.nCdVideo = serie.nCdVideo; episodio.oSerie = serie; _lstEpisodios.Add(episodio); } } return(_lstSeries); }
/* * private async void getResultPesquisaAsync(string title) * { * lstResultPesquisa.Clear(); * * lstResultPesquisa.Add(oVideoCarregando); * oVideoSelecionado = oVideoCarregando; * List<Video> lstResultPesquisaTemp = new List<Video>(); * * if (nIdTipoConteudo == Enums.TipoConteudo.Série || nIdTipoConteudo == Enums.TipoConteudo.Anime) * { * List<Serie> lstSeries = await APIRequests.GetSeriesAsync(title); * * if (lstSeries.Count == 0) // Verificar a primeira vez se é null para não exibir a mensagem quando não encontra resultados na tela de procurar conteúdo. * { * InputMessageBox InputMessageBox = new InputMessageBox(inputType.SemResultados); * InputMessageBox.InputViewModel.Properties.InputText = title; * InputMessageBox.ShowDialog(); * if (InputMessageBox.DialogResult == true) * { * lstSeries = await APIRequests.GetSeriesAsync(InputMessageBox.InputViewModel.Properties.InputText); * } * * while (lstSeries.Count == 0) * { * if (MessageBox.Show("Nenhum resultado encontrado, deseja pesquisar por outro nome?", "Nenhum resultado encontrado - " + Properties.Settings.Default.AppName, MessageBoxButton.YesNo) == MessageBoxResult.Yes) * { * InputMessageBox = new InputMessageBox(inputType.SemResultados); * InputMessageBox.InputViewModel.Properties.InputText = title; * InputMessageBox.ShowDialog(); * if (InputMessageBox.DialogResult == true) * { * lstSeries = await APIRequests.GetSeriesAsync(InputMessageBox.InputViewModel.Properties.InputText); * } * } * else // TODO Fechar tela ao entrar no else * { * bFechar = true; * return; * } * } * } * * foreach (var item in lstSeries) * { * if (!string.IsNullOrWhiteSpace(sDsPastaEditar)) // Verifica se é edição para setar o folderpath igual. * { * item.sDsPasta = sDsPastaEditar; * } * else * { * item.SetDefaultFolderPath(); * } * * item.nCdVideo = nCdVideo; * item.nIdTipoConteudo = nIdTipoConteudo; * * bool bFlAdicionado = lstResultPesquisaTemp.Select(x => x.nCdApi).Contains(item.nCdApi); * * if (!bFlAdicionado) * { * item.sDsSinopse = oVideoCarregando.sDsSinopse; * lstResultPesquisaTemp.Add(item); * } * } * } * * lstResultPesquisa.Remove(oVideoCarregando); * lstResultPesquisaTemp.Add(oVideoBuscaPersonalizada); * lstResultPesquisaTemp.ForEach(x => lstResultPesquisa.Add(x)); * oVideoSelecionado = lstResultPesquisa[0]; * } */ private async void AlterarVideoAsync(Video oVideoSelecionadoTemp) { if (oVideoSelecionado == null || oVideoSelecionado == oVideoCarregando || oVideoSelecionado.nIdEstado == Enums.Estado.Completo || oVideoSelecionado.nIdEstado == Enums.Estado.CompletoSemForeignKeys) { return; } if (lstResultPesquisa.Count > 0 && oVideoSelecionado == oVideoBuscaPersonalizada) { var inputMessageBox = new InputMessageBox(inputType.AdicionarConteudo); inputMessageBox.ShowDialog(); if (inputMessageBox.DialogResult == true) { getResultPesquisaAsync(new Serie { sDsTitulo = inputMessageBox.InputViewModel.Properties.InputText }); return; } else { _oVideoSelecionado = lstResultPesquisa.FirstOrDefault(x => x.nCdApi == oVideoSelecionadoTemp?.nCdApi); if (oVideoSelecionado == null) { ActionClose(false); } else { OnPropertyChanged(nameof(oVideoSelecionado)); } return; } } else if (lstVideosQuaseCompletos != null && lstVideosQuaseCompletos.Count > 0) { lstVideosQuaseCompletos .Where( x => x.nCdApi == oVideoSelecionado.nCdApi && (x.nIdEstado == Enums.Estado.Completo || x.nIdEstado == Enums.Estado.CompletoSemForeignKeys)) .ToList() .ForEach(x => { _oVideoSelecionado = x; OnPropertyChanged(nameof(oVideoSelecionado)); return; }); //foreach (var item in listaVideosQuaseCompletos) //{ // if (item.IDApi == SelectedVideo.IDApi && (item.Estado == Enums.Estado.Completo || item.Estado == Enums.Estado.CompletoSemForeignKeys)) // { // //Data = item; // _SelectedVideo = item; OnPropertyChanged("SelectedVideo"); // return; // } //} } Serie serie = await APIRequests.GetSerieInfoAsync(oVideoSelecionado.nCdApi, Properties.Settings.Default.pref_IdiomaPesquisa); serie.sDsTitulo = oVideoSelecionado.sDsTitulo; // Para manter os titulos no idioma original, ao invés das traduções do SBT (tipo "Os Seguidores" pro The Following ¬¬) serie.nIdTipoConteudo = nIdTipoConteudo; if (oVideoSelecionado.sDsPasta != null) { serie.sDsPasta = oVideoSelecionado.sDsPasta; } else if (sDsPastaEditar != null) { serie.sDsPasta = sDsPastaEditar; } else { serie.SetDefaultFolderPath(); } serie.sAliases = oVideoSelecionado.sAliases; if (nCdVideo > 0) { serie.nCdVideo = nCdVideo; } lstResultPesquisa.Where(x => x.nCdApi == oVideoSelecionado.nCdApi) .ToList() .ForEach(x => { x.Clone(serie); }); lstVideosQuaseCompletos.Add(serie); _oVideoSelecionado = serie; OnPropertyChanged(nameof(oVideoSelecionado)); // Para forçar a habilitação do botão de configurar conteúdo (As vezes continua desabilitado até que haja interação na UI, com esse método isso não acontece). CommandManager.InvalidateRequerySuggested(); }