Imports System.ComponentModel Imports System.IO Imports System.Net Imports System.Math Public Class nouvelle_saison Dim Épisode As Integer = 1 Dim lisintex As Integer = 0 Dim dl As Integer = 0 Private Sub nouvelle_saison_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.BackColor = Form1.BackColor Me.ForeColor = Form1.ForeColor TextBox1.BackColor = BackColor Button1.BackColor = BackColor Button2.BackColor = BackColor ListBox1.BackColor = BackColor Label1.ForeColor = ForeColor Button1.ForeColor = ForeColor Button2.ForeColor = ForeColor Directory.CreateDirectory(tempup) TextBox1.Text = "Saison " & upséries2.Label4.Text + 1 Button1.Text = "importer tout les épisodes de la " & TextBox1.Text Button2.Text = "créer la " & TextBox1.Text End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If OpenFileDialog1.ShowDialog = 1 Then musiquexist() Else End If End Sub Sub musiquexist() Dim index As Integer = 0 Dim fichier2 As String = "" & vbNewLine ListBox1.Items.Clear() For Each fileselected1 As String In OpenFileDialog1.FileNames ListBox1.Items.Add(OpenFileDialog1.SafeFileNames(index)) FileCopy(fileselected1, tempup & "\" & OpenFileDialog1.SafeFileNames(index)) fichier2 = fichier2 & " " & OpenFileDialog1.SafeFileNames(index) & vbNewLine index = index + 1 Next If index > 1 Then index = 0 MsgBox("les fichiers: " & fichier2 & "on bien êtê importer", MsgBoxStyle.Information) Else index = 0 MsgBox("le fichier: " & OpenFileDialog1.SafeFileName & " a bien êtê importer", MsgBoxStyle.Information) End If End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click If ListBox1.Items.Count = 0 Then MsgBox("Merci d'importer des épisode", MsgBoxStyle.Exclamation) Else createsaison() End If End Sub Sub createsaison() Button1.Enabled = False ProgressBar1.Show() dl = 1 Me.Text = "création de la Saison sur le serveur..." Try Dim MaRequete As System.Net.FtpWebRequest = DirectCast(System.Net.WebRequest.Create(upséries2.urllike & "/saison/" & TextBox1.Text & "/"), System.Net.FtpWebRequest) Dim ftpStream As Stream = Nothing MaRequete.Credentials = New System.Net.NetworkCredential("yoannsafe", passftp) MaRequete.Method = System.Net.WebRequestMethods.Ftp.MakeDirectory Dim response As FtpWebResponse = CType(MaRequete.GetResponse, FtpWebResponse) ftpStream = response.GetResponseStream ftpStream.Close() response.Close() Catch ex As Exception End Try Me.Text = "Envoie des épisodes..." Try ListBox1.SelectedIndex = lisintex Me.Text = "Envoie de: " & ListBox1.SelectedItem & "..." Dim MaRequete As System.Net.FtpWebRequest = DirectCast(System.Net.WebRequest.Create(upséries2.urllike & "/saison/" & TextBox1.Text & "/Épisode " & Épisode & "/"), System.Net.FtpWebRequest) Dim ftpStream As Stream = Nothing MaRequete.Credentials = New System.Net.NetworkCredential("yoannsafe", passftp) MaRequete.Method = System.Net.WebRequestMethods.Ftp.MakeDirectory Dim response As FtpWebResponse = CType(MaRequete.GetResponse, FtpWebResponse) ftpStream = response.GetResponseStream ftpStream.Close() response.Close() téléchargerfr = New WebClient téléchargerfr.UploadFileTaskAsync(upséries2.urllike & "/saison/" & TextBox1.Text & "/Épisode " & Épisode & "/" & ListBox1.SelectedItem, tempup & "\" & ListBox1.SelectedItem) Épisode = Épisode + 1 lisintex = lisintex + 1 Catch ex As Exception End Try End Sub Dim WithEvents téléchargerfr As WebClient Dim WithEvents téléchargerfr2 As WebClient Sub fin() File.Delete(dosier & "/" & TextBox1.Text & ".zip") Dim sw4 As New StreamWriter(tempup & "\ep.txt") sw4.WriteLine(ListBox1.Items.Count) sw4.Close() My.Computer.Network.UploadFile(tempup & "\ep.txt", upséries2.urllike & "/saison/" & TextBox1.Text & "/ep.txt") File.Delete(tempup & "\ep.txt") Dim sw5 As New StreamWriter(tempup & "\" & upséries2.Label3.Text & " Saison " & upséries2.Label4.Text + 1 & ".txt") sw5.WriteLine(0) sw5.Close() My.Computer.Network.UploadFile(tempup & "\" & upséries2.Label3.Text & " Saison " & upséries2.Label4.Text + 1 & ".txt", ipserver & "/new/Saison/" & upséries2.Label3.Text & " Saison " & upséries2.Label4.Text + 1 & ".txt") Me.Text = "Envoie terminer" dl = 0 ProgressBar1.Value = 0 Button1.Enabled = True ProgressBar1.Hide() MsgBox("La " & TextBox1.Text & " a bien êtê créer", MsgBoxStyle.Information) Épisode = 1 lisintex = 0 OpenFileDialog1.FileName = "" ListBox1.Items.Clear() Text = "Nouvelle Saison" Close() upséries2.Close() upséries.Close() End Sub Private Sub téléchargerfr_UploadFileCompleted(sender As Object, e As UploadFileCompletedEventArgs) Handles téléchargerfr.UploadFileCompleted If Épisode = ListBox1.Items.Count + 1 Then ProgressBar1.Style = ProgressBarStyle.Marquee Me.Text = "création du fichier hors ligne..." BackgroundWorker1.RunWorkerAsync() Else Try ListBox1.SelectedIndex = lisintex Me.Text = "Envoie de: " & ListBox1.SelectedItem & "..." Dim MaRequete As System.Net.FtpWebRequest = DirectCast(System.Net.WebRequest.Create(upséries2.urllike & "/saison/" & TextBox1.Text & "/Épisode " & Épisode & "/"), System.Net.FtpWebRequest) Dim ftpStream As Stream = Nothing MaRequete.Credentials = New System.Net.NetworkCredential("yoannsafe", passftp) MaRequete.Method = System.Net.WebRequestMethods.Ftp.MakeDirectory Dim response As FtpWebResponse = CType(MaRequete.GetResponse, FtpWebResponse) ftpStream = response.GetResponseStream ftpStream.Close() response.Close() téléchargerfr = New WebClient téléchargerfr.UploadFileTaskAsync(upséries2.urllike & "/saison/" & TextBox1.Text & "/Épisode " & Épisode & "/" & ListBox1.SelectedItem, tempup & "\" & ListBox1.SelectedItem) Épisode = Épisode + 1 lisintex = lisintex + 1 Catch ex As Exception End Try End If End Sub Private Sub BackgroundWorker1_DoWork(sender As Object, e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork IO.Compression.ZipFile.CreateFromDirectory(tempup, dosier & "/" & TextBox1.Text & ".zip") End Sub Private Sub BackgroundWorker1_RunWorkerCompleted(sender As Object, e As RunWorkerCompletedEventArgs) Handles BackgroundWorker1.RunWorkerCompleted ProgressBar1.Style = ProgressBarStyle.Continuous Me.Text = "Envoie du fichier hors ligne..." téléchargerfr2 = New WebClient téléchargerfr2.UploadFileTaskAsync(upséries2.urllike & "/saison/" & TextBox1.Text & "/" & TextBox1.Text & ".zip", dosier & "/" & TextBox1.Text & ".zip") End Sub Private Sub téléchargerfr2_UploadFileCompleted(sender As Object, e As UploadFileCompletedEventArgs) Handles téléchargerfr2.UploadFileCompleted fin() End Sub Private Sub nouvelle_saison_Closing(sender As Object, e As CancelEventArgs) Handles Me.Closing If dl = 1 Then e.Cancel = True MsgBox("merci d'attendre l'envoie de la " & TextBox1.Text & " de " & upséries2.nom, MsgBoxStyle.Critical) Else End If End Sub Public Function func_RoundTaille(ByVal LaTaille As Long) As String Select Case LaTaille Case Is < 1024 Return Round(LaTaille) & " Octets" Case Is < 1048576 Return Round(LaTaille / 2 ^ 10, 3) & " Ko" Case Is < 1073741824 Return Round(LaTaille / 2 ^ 20, 3) & " Mo" Case Else Return Round(LaTaille / 2 ^ 30, 3) & " Go" End Select End Function Private Sub téléchargerfr_UploadProgressChanged(sender As Object, e As UploadProgressChangedEventArgs) Handles téléchargerfr.UploadProgressChanged Dim disctédossier = func_RoundTaille(e.BytesSent) Dim disctédossier2 = func_RoundTaille(e.TotalBytesToSend) Dim bc = e.BytesSent / e.TotalBytesToSend * 100 Me.Text = "Envoie de: " & ListBox1.SelectedItem & " " & disctédossier & " / " & disctédossier2 & " " & ProgressBar1.Value & "%" ProgressBar1.Value = bc End Sub Private Sub téléchargerfr2_UploadProgressChanged(sender As Object, e As UploadProgressChangedEventArgs) Handles téléchargerfr2.UploadProgressChanged Dim disctédossier = func_RoundTaille(e.BytesSent) Dim disctédossier2 = func_RoundTaille(e.TotalBytesToSend) Dim bc = e.BytesSent / e.TotalBytesToSend * 100 Me.Text = "Envoie du fichier hors ligne " & disctédossier & " / " & disctédossier2 & " " & ProgressBar1.Value & "%" ProgressBar1.Value = bc End Sub End Class