private void NewBroadcast() { AudioFileReader reader; var file = GetFilename(); if (file == null) { return; } else { reader = new AudioFileReader(file); } var duration = (rbLiveBroadcast.Checked) ? dtpDuration.Value.TimeOfDay : reader.TotalTime; var broadcast = new BroadcastInfo(currentUser.Username, StartTime, duration, BroadcastType, MediaType, txtDescription.Text); var planRequest = new PlanBroadcastRequest(currentUser, broadcast); var planResponse = client.SendAndRecieve <PlanBroadcastResponse>(planRequest); if (planRequest != null) { switch (planResponse.Result) { case PlanBroadcastResult.CanUpload: break; case PlanBroadcastResult.CannotUpload: MessageBox.Show("Hlášení koliduje s jiným(i) hlášením(i), zvolte, prosím, jiný čas."); return; case PlanBroadcastResult.CanUploadIfAdmin: var result = MessageBox.Show("Hlášení koliduje s jiným(i) hlášením(i), chcete tato hlášení odstranit?", "Otázka", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.Yes) { break; } else { return; } } } else { return; } if (!rbLiveBroadcast.Checked) { var settings = Settings.Default; var uploadRequest = new UploadBroadcastRequest(currentUser, broadcast, MediaType.MP3, settings.BROADCAST_PORT, settings.TRANSFER_BUFFER_SIZE); //TODO: Media file detection var uploadResponse = client.SendAndRecieve <UploadBroadcastResponse>(uploadRequest); if (uploadResponse != null) { switch (uploadResponse.Result) { case UploadBroadcastResult.Success: FileStreamer streamer = new FileStreamer(file, settings.TRANSFER_BUFFER_SIZE, settings.SERVER_IP, settings.BROADCAST_PORT); //TODO: From settings... streamer.Start(); MessageBox.Show("Vaše hlášení bylo úspěšně naplánováno.", "Oznámení", MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); break; case UploadBroadcastResult.CollissionBlocked: MessageBox.Show("Hlášení koliduje s jiným(i) hlášením(i), zvolte, prosím, jiný čas.", "Upozornění", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } } else { return; } } }