Example #1
0
        /// <summary>
        /// Adds a new mailbox plan to the database
        /// </summary>
        /// <param name="plan"></param>
        public static void AddMailboxPlan(BasePlanMailbox plan)
        {
            // Initialize SQL
            SqlConnection sql = new SqlConnection(ConfigurationManager.ConnectionStrings["DB"].ConnectionString);
            SqlCommand cmd = new SqlCommand(@"INSERT INTO Plans_ExchangeMailbox (MailboxPlanName, CompanyCode, MailboxSizeMB, MaxMailboxSizeMB,
                                                     MaxSendKB, MaxReceiveKB, MaxRecipients, EnablePOP3, EnableIMAP, EnableOWA, EnableMAPI, EnableAS,
                                                     EnableECP, MaxKeepDeletedItems, MailboxPlanDesc, Price, Cost, AdditionalGBPrice) VALUES 
                                                     (@MailboxPlanName, @CompanyCode, @MailboxSizeMB, @MaxMailboxSizeMB,
                                                     @MaxSendKB, @MaxReceiveKB, @MaxRecipients, @EnablePOP3, @EnableIMAP, @EnableOWA, @EnableMAPI, @EnableAS,
                                                     @EnableECP, @MaxKeepDeletedItems, @MailboxPlanDesc, @Price, @Cost, @AdditionalGBPrice)", sql);

            try
            {
                // Add parameter
                cmd.Parameters.AddWithValue("@MailboxPlanName", plan.MailboxPlanName);
                cmd.Parameters.AddWithValue("@CompanyCode", plan.CompanyCode);
                cmd.Parameters.AddWithValue("@MailboxSizeMB", plan.MailboxSize);
                cmd.Parameters.AddWithValue("@MaxMailboxSizeMB", plan.MaxMailboxSize);
                cmd.Parameters.AddWithValue("@MaxSendKB", plan.MaxSendKB);
                cmd.Parameters.AddWithValue("@MaxReceiveKB", plan.MaxReceiveKB);
                cmd.Parameters.AddWithValue("@MaxRecipients", plan.MaxRecipients);
                cmd.Parameters.AddWithValue("@EnablePOP3", plan.EnablePOP3);
                cmd.Parameters.AddWithValue("@EnableIMAP", plan.EnableIMAP);
                cmd.Parameters.AddWithValue("@EnableOWA", plan.EnableOWA);
                cmd.Parameters.AddWithValue("@EnableMAPI", plan.EnableMAPI);
                cmd.Parameters.AddWithValue("@EnableAS", plan.EnableAS);
                cmd.Parameters.AddWithValue("@EnableECP", plan.EnableECP);
                cmd.Parameters.AddWithValue("@MaxKeepDeletedItems", plan.MaxKeepDeletedItems);
                cmd.Parameters.AddWithValue("@MailboxPlanDesc", plan.MailboxPlanDesc);
                cmd.Parameters.AddWithValue("@Price", plan.Price);
                cmd.Parameters.AddWithValue("@Cost", plan.Cost);
                cmd.Parameters.AddWithValue("@AdditionalGBPrice", plan.AdditionalGBPrice);

                // Open Connection
                sql.Open();

                // Insert
                cmd.ExecuteNonQuery();

                // Close
                sql.Close();                
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                cmd.Dispose();
                sql.Dispose();
            }
        }
Example #2
0
        /// <summary>
        /// Updates an existing mailbox plan
        /// </summary>
        /// <param name="plan"></param>
        public static void UpdateMailboxPlan(BasePlanMailbox plan)
        {
            // Initialize SQL
            SqlConnection sql = new SqlConnection(ConfigurationManager.ConnectionStrings["DB"].ConnectionString);
            SqlCommand cmd = new SqlCommand(@"UPDATE Plans_ExchangeMailbox SET MailboxPlanName=@MailboxPlanName, MailboxSizeMB=@MailboxSizeMB, MaxMailboxSizeMB=@MaxMailboxSizeMB,
                                                    MaxSendKB=@MaxSendKB, MaxReceiveKB=@MaxReceiveKB, MaxRecipients=@MaxRecipients, EnablePOP3=@EnablePOP3, EnableIMAP=@EnableIMAP,
                                                    EnableOWA=@EnableOWA, EnableMAPI=@EnableMAPI, EnableAS=@EnableAS, EnableECP=@EnableECP, MaxKeepDeletedItems=@MaxKeepDeletedItems,
                                                    MailboxPlanDesc=@MailboxPlanDesc, Price=@Price, Cost=@Cost, AdditionalGBPrice=@AdditionalGBPrice WHERE MailboxPlanID=@MailboxPlanID", sql);

            try
            {
                // Add parameters
                cmd.Parameters.AddWithValue("@MailboxPlanID", plan.MailboxPlanID);
                cmd.Parameters.AddWithValue("@MailboxPlanName", plan.MailboxPlanName);
                cmd.Parameters.AddWithValue("@MailboxSizeMB", plan.MailboxSize);
                cmd.Parameters.AddWithValue("@MaxMailboxSizeMB", plan.MaxMailboxSize);
                cmd.Parameters.AddWithValue("@MaxSendKB", plan.MaxSendKB);
                cmd.Parameters.AddWithValue("@MaxReceiveKB", plan.MaxReceiveKB);
                cmd.Parameters.AddWithValue("@MaxRecipients", plan.MaxRecipients);
                cmd.Parameters.AddWithValue("@EnablePOP3", plan.EnablePOP3);
                cmd.Parameters.AddWithValue("@EnableIMAP", plan.EnableIMAP);
                cmd.Parameters.AddWithValue("@EnableOWA", plan.EnableOWA);
                cmd.Parameters.AddWithValue("@EnableMAPI", plan.EnableMAPI);
                cmd.Parameters.AddWithValue("@EnableAS", plan.EnableAS);
                cmd.Parameters.AddWithValue("@EnableECP", plan.EnableECP);
                cmd.Parameters.AddWithValue("@MaxKeepDeletedItems", plan.MaxKeepDeletedItems);
                cmd.Parameters.AddWithValue("@MailboxPlanDesc", plan.MailboxPlanDesc);
                cmd.Parameters.AddWithValue("@Price", plan.Price);
                cmd.Parameters.AddWithValue("@Cost", plan.Cost);
                cmd.Parameters.AddWithValue("@AdditionalGBPrice", plan.AdditionalGBPrice);

                // Open Connection
                sql.Open();

                // Update
                cmd.ExecuteNonQuery();

                // Close
                sql.Close();
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                cmd.Dispose();
                sql.Dispose();
            }
        }
        /// <summary>
        /// Adds or updates new/existing mailbox plans
        /// </summary>
        protected void btnUpdatePlan_Click(object sender, EventArgs e)
        {
            try
            {
                // Gather our data
                BasePlanMailbox plan = new BasePlanMailbox();
                plan.MailboxPlanName = txtPlanName.Text;
                plan.MailboxPlanDesc = txtDescription.Text;
                plan.MaxRecipients = int.Parse(txtMaxRecipients.Text);
                plan.MaxKeepDeletedItems = int.Parse(txtKeepDeletedItems.Text);
                plan.MailboxSize = int.Parse(txtMailboxSize.Text);
                plan.MaxMailboxSize = int.Parse(txtMaxMailboxSize.Text);
                plan.MaxSendKB = int.Parse(txtSendSize.Text);
                plan.MaxReceiveKB = int.Parse(txtReceiveSize.Text);
                plan.Cost = txtCost.Text;
                plan.Price = txtPrice.Text;
                plan.AdditionalGBPrice = txtPriceAdditionalGB.Text;

                plan.EnablePOP3 = cbEnablePOP3.Checked;
                plan.EnableIMAP = cbEnableIMAP.Checked;
                plan.EnableOWA = cbEnableOWA.Checked;
                plan.EnableMAPI = cbEnableMAPI.Checked;
                plan.EnableAS = cbEnableAS.Checked;
                plan.EnableECP = cbEnableECP.Checked;

                if (ddlSpecificCompany.SelectedIndex > 0)
                    plan.CompanyCode = ddlSpecificCompany.SelectedValue;
                else
                    plan.CompanyCode = string.Empty;

                if (ddlMailboxPlans.SelectedIndex > 0)
                {
                    // We are updating an existing plan
                    plan.MailboxPlanID = int.Parse(ddlMailboxPlans.SelectedValue);

                    SQLPlans.UpdateMailboxPlan(plan);

                    // Refresh
                    GetMailboxPlans();

                    // Update notication
                    notification1.SetMessage(controls.notification.MessageType.Success, "Successfully updated existing mailbox plan.");
                }
                else
                {
                    // We are adding a new plan
                    SQLPlans.AddMailboxPlan(plan);

                    // Refresh
                    GetMailboxPlans();

                    // Update notication
                    notification1.SetMessage(controls.notification.MessageType.Success, "Successfully created new mailbox plan.");
                }
            }
            catch (Exception ex)
            {
                notification1.SetMessage(controls.notification.MessageType.Error, "Error: " + ex.Message);

                // Log //
                this.logger.Error("There was an error adding / updating mailbox plan.", ex);
            }
        }