예제 #1
0
        private void Wizard_BeforePageChanged(object sender, global::Controls.Wizard.PageChangedEventArgs e)
        {
            switch (Wizard.PageIndex)
            {
            case 0:

                // Validate our Email address
                if (!System.Text.RegularExpressions.Regex.IsMatch(txtEmail.Text, @"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$"))
                {
                    MessageBox.Show(this, CallButler.Manager.Utils.PrivateLabelUtils.ReplaceProductName(Properties.LocalizedStrings.Common_EnterValidEmail), CallButler.Manager.Utils.PrivateLabelUtils.ReplaceProductName(Properties.LocalizedStrings.Common_InvalidEmail), MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    txtEmail.Clear();
                    txtEmail.Select();
                    e.Cancel = true;
                    return;
                }

                // Validate the user name
                if (txtName.Text.Length == 0)
                {
                    MessageBox.Show(this, CallButler.Manager.Utils.PrivateLabelUtils.ReplaceProductName(Properties.LocalizedStrings.Common_NameRequired), "", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    txtName.Select();
                    e.Cancel = true;
                    return;
                }

                // Validate the user name
                if (txtPhone.Text.Length == 0)
                {
                    MessageBox.Show(this, CallButler.Manager.Utils.PrivateLabelUtils.ReplaceProductName(Properties.LocalizedStrings.Common_PhoneNumberRequired), "", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    txtPhone.Select();
                    e.Cancel = true;
                    return;
                }

                // Validate the country
                if (cboCountry.SelectedIndex == 0)
                {
                    MessageBox.Show(this, CallButler.Manager.Utils.PrivateLabelUtils.ReplaceProductName(Properties.LocalizedStrings.Common_SelectCountry), "", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    e.Cancel = true;
                    return;
                }

                /*if (txtEmail.Text != "*****@*****.**")
                 * {
                 *  // Send the registration to our webservice
                 *  RegistrationServices.RegistrationService regService = new CallButler.Manager.RegistrationServices.RegistrationService();
                 *
                 *  //Controls.LoadingDialog.ShowDialog(this, Properties.LocalizedStrings.Common_SendingData, Properties.Resources.loading, false, 2000);
                 *
                 *  try
                 *  {
                 *      regService.Register2(txtName.Text, txtEmail.Text, txtCompanyName.Text, ManagementInterfaceClient.ManagementInterface.ProductID, true, cboCountry.Text, txtPhone.Text);
                 *  }
                 *  catch(Exception exp)
                 *  {
                 *  }
                 *
                 *  //Controls.LoadingDialog.HideDialog();
                 * }*/

                ManagementInterfaceClient.ManagementInterface.IsDownloadRegistered = true;

                // Create a new default extension if one doesn't exist
                WOSI.CallButler.Data.CallButlerDataset.ExtensionsDataTable extensionDataTable = ManagementInterfaceClient.ManagementInterface.GetExtensionNumber(ManagementInterfaceClient.AuthInfo, 100);

                if (extensionDataTable == null || extensionDataTable.Count == 0)
                {
                    // Create a new Extension row
                    extensionDataTable = new WOSI.CallButler.Data.CallButlerDataset.ExtensionsDataTable();
                    WOSI.CallButler.Data.CallButlerDataset.ExtensionsRow extension = extensionDataTable.NewExtensionsRow();

                    extension.CustomerID        = Properties.Settings.Default.CustomerID;
                    extension.ExtensionID       = Guid.NewGuid();
                    extension.EmailAddress      = txtEmail.Text;
                    extension.EmailAttachment   = true;
                    extension.EmailNotification = true;
                    extension.EnableSearch      = true;
                    extension.ExtensionNumber   = 100;

                    string[] name = txtName.Text.Split(' ');
                    extension.FirstName = name[0];
                    if (name.Length > 1)
                    {
                        for (int index = 1; index < name.Length; index++)
                        {
                            extension.LastName += name[index] + " ";
                        }
                    }

                    extensionDataTable.AddExtensionsRow(extension);

                    // Persist our extension
                    ManagementInterfaceClient.ManagementInterface.PersistExtension(ManagementInterfaceClient.AuthInfo, extensionDataTable);

                    // Create a new extension contact numbers table
                    WOSI.CallButler.Data.CallButlerDataset.ExtensionContactNumbersDataTable extensionContactNumbers = new WOSI.CallButler.Data.CallButlerDataset.ExtensionContactNumbersDataTable();

                    WOSI.CallButler.Data.CallButlerDataset.ExtensionContactNumbersRow contactNumber = extensionContactNumbers.NewExtensionContactNumbersRow();
                    contactNumber.ContactNumber            = txtPhone.Text;
                    contactNumber.ExtensionContactNumberID = Guid.NewGuid();
                    contactNumber.ExtensionID = extension.ExtensionID;
                    contactNumber.Timeout     = 20;

                    extensionContactNumbers.AddExtensionContactNumbersRow(contactNumber);

                    // Persist our contact numbers
                    ManagementInterfaceClient.ManagementInterface.PersistExtensionContactNumbers(ManagementInterfaceClient.AuthInfo, extensionContactNumbers);
                }

                break;
            }
        }
 private void wizard_WizardFinished(object sender, global::Controls.Wizard.PageChangedEventArgs e)
 {
     UpdateData();
 }