Beispiel #1
0
        /********************************************************\
         * Create FTP (OK button click)                         *
         * - Create/Edit FTP (depending on the context)         *
         * - CheckFields : check if mandatory fields are filled *
        \********************************************************/
        private void OkPictureBox_Click(object sender, EventArgs e)
        {
            /* Check if fields are OK */
            if (CheckFields())
            {
                /* Create service */
                FTPWebService.ftpSoapClient service = new FTPWebService.ftpSoapClient();

                /* CASE 1 : CREATION */
                if (((string)OkPictureBox.Tag).Equals(""))
                {
                    /* Check if server exists (Provider|Server Adress|Login|Password) */
                    int serverID = service.Get_server_id(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text);
                    if (serverID == 0)
                    {
                        /* Create server if not exists then get id_server */
                        service.Add_server(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text);
                        serverID = service.Get_server_id(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text);
                    }

                    /* Set idFrequency and idDay */
                    int idFrequency;
                    int idDay;
                    string frequency;
                    string day;
                    switch (RecoveryFrequencyComboBox.Text)
                    {
                        case "None": idFrequency = 5; frequency = "None"; break;
                        case "Daily": idFrequency = 1; frequency = "Daily"; break;
                        case "Weekly": idFrequency = 2; frequency = "Weekly"; break;
                        case "Monthly": idFrequency = 3; frequency = "Monthly"; break;
                        case "Yearly": idFrequency = 4; frequency = "Yearly"; break;
                        default: idFrequency = 5; frequency = "None"; break;
                    }
                    switch (RecoveryDayComboBox.Text)
                    {
                        case "None": idDay = 8; day = "None"; break;
                        case "Monday": idDay = 1; day = "Monday"; break;
                        case "Tuesday": idDay = 2; day = "Tuesday"; break;
                        case "Wednesday": idDay = 3; day = "Wednesday"; break;
                        case "Thursday": idDay = 4; day = "Thursday"; break;
                        case "Friday": idDay = 5; day = "Friday"; break;
                        case "Saturday": idDay = 6; day = "Saturday"; break;
                        case "Sunday": idDay = 7; day = "Sunday"; break;
                        default: idDay = 8; day = "None"; break;
                    }

                    /* Insert region */
                    service.Add_region(serverID, RegionNameTextBox.Text, FileMaskTextBox.Text, _TargetPathTooltip.GetToolTip(TargetDirectoryButton), idFrequency, idDay);

                    /* Add new region to the list */
                    _RegionsList.Add(new Region(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text, RegionNameTextBox.Text, _TargetPathTooltip.GetToolTip(TargetDirectoryButton), FileMaskTextBox.Text, frequency, day));

                    /* Refresh List of FTP */
                    //FTPListDataGridView.DataSource = null;
                    FillFTPTreeView();//FillFtpListDataGridView();

                    /* Display result */
                    KryptonMessageBox.Show("FTP Created !", "Saved",
                         MessageBoxButtons.OK,
                         MessageBoxIcon.Information);
                }

                /* CASE 2 : EDIT */
                else if (!((string)OkPictureBox.Tag).Equals(""))
                {
                    /* Check if server exists (Provider|Server Adress|Login|Password) */
                    int serverID = service.Get_server_id(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text);
                    if (serverID == 0)
                    {
                        /* Create server if not exists then get id_server */
                        service.Add_server(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text);
                        serverID = service.Get_server_id(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text);
                    }

                    /* Set idFrequency and idDay */
                    int idFrequency;
                    int idDay;
                    switch (RecoveryFrequencyComboBox.Text)
                    {
                        case "None": idFrequency = 5; break;
                        case "Daily": idFrequency = 1; break;
                        case "Weekly": idFrequency = 2; break;
                        case "Monthly": idFrequency = 3; break;
                        case "Yearly": idFrequency = 4; break;
                        default: idFrequency = 5; break;
                    }
                    switch (RecoveryDayComboBox.Text)
                    {
                        case "None": idDay = 8; break;
                        case "Monday": idDay = 1; break;
                        case "Tuesday": idDay = 2; break;
                        case "Wednesday": idDay = 3; break;
                        case "Thursday": idDay = 4; break;
                        case "Friday": idDay = 5; break;
                        case "Saturday": idDay = 6; break;
                        case "Sunday": idDay = 7; break;
                        default: idDay = 8; break;
                    }

                    /* Update region */
                    service.Update_region((string)OkPictureBox.Tag, serverID, RegionNameTextBox.Text, FileMaskTextBox.Text, _TargetPathTooltip.GetToolTip(TargetDirectoryButton), idFrequency, idDay);

                    /* Remove old region from the list */
                    foreach (Region element in _RegionsList)
                    {
                        if (element.Get_RegionName().Equals((string)OkPictureBox.Tag))
                        {
                            _RegionsList.Remove(element);
                            break;
                        }
                    }

                    /* Add new one */
                    _RegionsList.Add(new Region(ProviderTextBox.Text, ServerAddressTextBox.Text, LoginTextBox.Text, PasswordTextBox.Text, RegionNameTextBox.Text, _TargetPathTooltip.GetToolTip(TargetDirectoryButton), FileMaskTextBox.Text, RecoveryFrequencyComboBox.Text, RecoveryDayComboBox.Text));

                    /* Refresh List of FTP */
                    //FTPListDataGridView.DataSource = null;
                    FillFTPTreeView();//FillFtpListDataGridView();

                    /* Display result */
                    KryptonMessageBox.Show("FTP updated !", "Updated",
                         MessageBoxButtons.OK,
                         MessageBoxIcon.Information);
                }

                /* Finally, End Edit */
                EndEdit();

                /* Close service */
                service.Close();
            }
        }