Esempio n. 1
0
    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);

        // Set edit mode
        customerId = QueryHelper.GetInteger("customerId", 0);
        if (customerId > 0)
        {
            customerObj = CustomerInfoProvider.GetCustomerInfo(customerId);
            // Check if customer belongs to current site
            if (!CheckCustomerSiteID(customerObj))
            {
                customerObj = null;
            }

            EditedObject = customerObj;
            formCustomerCustomFields.Info             = customerObj;
            formCustomerCustomFields.OnAfterValidate += formCustomerCustomFields_OnAfterValidate;
            formCustomerCustomFields.OnAfterSave     += formCustomerCustomFields_OnAfterSave;
        }
        else
        {
            formCustomerCustomFields.Enabled = false;
        }
    }
    private bool HandleAutoRegistration(ShoppingCartInfo currentShoppingCart)
    {
        registrationBanned = string.Empty;
        var customer = currentShoppingCart.Customer;

        if ((customer == null) || customer.CustomerIsRegistered)
        {
            return(true);
        }

        if (ECommerceSettings.AutomaticCustomerRegistration(currentShoppingCart.ShoppingCartSiteID) || currentShoppingCart.RegisterAfterCheckout)
        {
            // Ban IP addresses which are blocked for registration
            var registrationBan  = !BannedIPInfoProvider.IsAllowed(currentShoppingCart.SiteName, BanControlEnum.Registration);
            var allUserActionBan = !BannedIPInfoProvider.IsAllowed(currentShoppingCart.SiteName, BanControlEnum.AllNonComplete);

            if (registrationBan || allUserActionBan)
            {
                registrationBanned = GetString("banip.ipisbannedregistration");
                LogError(registrationBanned, EVENT_CODE_VALIDATION);
                return(false);
            }
            // Auto-register user and send mail notification
            CustomerInfoProvider.RegisterAndNotify(customer, currentShoppingCart.RegisterAfterCheckoutTemplate);
        }

        return(true);
    }
    /// <summary>
    /// Handles the UniGrid's OnAction event.
    /// </summary>
    /// <param name="actionName">Name of item (button) that throws event</param>
    /// <param name="actionArgument">ID (value of Primary key) of corresponding data row</param>
    protected void uniGrid_OnAction(string actionName, object actionArgument)
    {
        var id = ValidationHelper.GetInteger(actionArgument, 0);

        if (actionName == "edit")
        {
            URLHelper.Redirect(UIContextHelper.GetElementUrl("CMS.Ecommerce", "EditCustomersProperties", false, id));
        }
        else if (actionName == "delete")
        {
            // Check module permissions
            if (!ECommerceContext.IsUserAuthorizedToModifyCustomer())
            {
                RedirectToAccessDenied("CMS.Ecommerce", "EcommerceModify OR ModifyCustomers");
                return;
            }

            // Get customer to be deleted
            var customer = CustomerInfoProvider.GetCustomerInfo(id);

            // Check customers dependencies
            if ((customer != null) && customer.Generalized.CheckDependencies())
            {
                ShowError(ECommerceHelper.GetDependencyMessage(customer));
                return;
            }

            // Delete CustomerInfo object from database
            CustomerInfoProvider.DeleteCustomerInfo(customer);

            UniGrid.ReloadData();
        }
    }
Esempio n. 4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // Get order
        OrderInfo oi = OrderInfoProvider.GetOrderInfo(orderId);

        if (oi != null)
        {
            // Get customer for current user
            CustomerInfo customer = CustomerInfoProvider.GetCustomerInfoByUserID(MembershipContext.AuthenticatedUser.UserID);

            // If order does not belong to current user
            if ((customer == null) || ((customer != null) && (oi.OrderCustomerID != customer.CustomerID)))
            {
                // Redirect to access denied page
                URLHelper.Redirect("~/CMSMessages/AccessDeniedToPage.aspx");
            }
        }
        else
        {
            // Redirect to error page
            URLHelper.Redirect(UIHelper.GetErrorPageUrl("com.downloadsdialog.ordernotfoundtitle", "com.downloadsdialog.ordernotfoundtext"));
        }

        // Initialize close button
        btnClose.Text = GetString("general.close");

        // Initialize unigrid
        downloadsGridElem.ZeroRowsText         = GetString("com.downloadsdialog.nodownloadsfound");
        downloadsGridElem.OnDataReload        += downloadsGridElem_OnDataReload;
        downloadsGridElem.OnExternalDataBound += downloadsGridElem_OnExternalDataBound;
    }
Esempio n. 5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Ecommerce", "Customers.Addresses"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Ecommerce", "Customers.Addresses");
        }

        customerId  = QueryHelper.GetInteger("customerId", 0);
        customerObj = CustomerInfoProvider.GetCustomerInfo(customerId);

        // Check if customer belongs to current site
        if (!CheckCustomerSiteID(customerObj))
        {
            customerObj = null;
        }

        EditedObject = customerObj;

        UniGrid.OnAction            += new OnActionEventHandler(uniGrid_OnAction);
        UniGrid.OnExternalDataBound += new OnExternalDataBoundEventHandler(UniGrid_OnExternalDataBound);
        UniGrid.WhereCondition       = "AddressCustomerID = " + customerId;

        // Intialize the master page elements
        InitializeMasterPage();
    }
Esempio n. 6
0
    protected ShoppingCartInfo GetNewCart()
    {
        ShoppingCartInfo newCart = ShoppingCartInfoProvider.CreateShoppingCartInfo(CMSContext.CurrentSite.SiteID);

        if (customerId > 0)
        {
            CustomerInfo ci = CustomerInfoProvider.GetCustomerInfo(customerId);
            if (ci != null)
            {
                UserInfo ui = null;
                if (ci.CustomerUserID > 0)
                {
                    ui = UserInfoProvider.GetUserInfo(ci.CustomerUserID);
                    newCart.UserInfoObj = ui;
                }
                //if (ui == null)
                //{
                //    ui = CMSContext.GlobalPublicUser;
                //}
                //newCart.UserInfoObj = ui;
                newCart.ShoppingCartCustomerID = customerId;
            }
        }

        return(newCart);
    }
    private void DeleteOrder()
    {
        // Prepare the parameters
        //string where = "CustomerLastName LIKE N'My New Registered%'";
        CustomerInfo customer = null;

        // Get the customer
        DataSet customers = CustomerInfoProvider.GetCustomers(null, null);

        if (!DataHelper.DataSourceIsEmpty(customers))
        {
            // Create object from DataRow
            customer = new CustomerInfo(customers.Tables[0].Rows[0]);
        }

        if (customer != null)
        {
            //  string whereOrder = "OrderCustomerID='" + customer.CustomerID + "'";

            // Get the order
            DataSet orders = OrderInfoProvider.GetOrders(null, null);
            if (!DataHelper.DataSourceIsEmpty(orders))
            {
                // Create object from DataRow
                //  OrderInfo order = new OrderInfo(orders.Tables[0].Rows[0]);
                foreach (DataRow userDr in orders.Tables[0].Rows)
                {
                    OrderInfo order = new OrderInfo(userDr);
                    // Delete the order
                    OrderInfoProvider.DeleteOrderInfo(order);
                }
            }
        }
    }
    protected void EditForm_OnAfterDataLoad(object sender, EventArgs e)
    {
        // New objects only
        if ((EditedObject == null) || (((BaseInfo)EditedObject).Generalized.ObjectID <= 0))
        {
            // Fill default values to the form
            CustomerInfo customerInfo = CustomerInfoProvider.GetCustomerInfo(CustomerID);
            if (customerInfo != null)
            {
                if ((string.IsNullOrEmpty(customerInfo.CustomerFirstName)) && (string.IsNullOrEmpty(customerInfo.CustomerLastName)))
                {
                    FillDefaultValue("AddressPersonalName", customerInfo.CustomerCompany);
                }
                else
                {
                    FillDefaultValue("AddressPersonalName", customerInfo.CustomerFirstName + " " + customerInfo.CustomerLastName);
                }

                FillDefaultValue("AddressPhone", customerInfo.CustomerPhone);
                FillDefaultValue("AddressCountryID", customerInfo.CustomerCountryID);

                // Preselect state
                EditForm.Data.SetValue("AddressStateID", customerInfo.CustomerStateID);
            }
        }
    }
Esempio n. 9
0
    /// <summary>
    /// Registers new user with generated password.
    /// </summary>
    private void RegisterCustomer()
    {
        var password = UserInfoProvider.GenerateNewPassword(SiteContext.CurrentSiteName);

        var userNotUniqueError = ValidateUserUniqueness();

        if (!String.IsNullOrEmpty(userNotUniqueError))
        {
            ShowError(userNotUniqueError);
            return;
        }

        var displayError = false;

        if (!CustomerInfoProvider.RegisterAndNotify(Customer, TEMPLATE_REGISTER_AND_NOTIFY, Customer.CustomerEmail, password))
        {
            if (Customer.CustomerUserID <= 1)
            {
                ShowError(GetString("com.customer.usernotcreated"));
                return;
            }

            displayError = true;
        }

        ScriptHelper.RegisterClientScriptBlock(Page, typeof(string), "LoginRedirect", "parent.window.location='" + GetRedirectUrl(displayError) + "';", true);
    }
    private void DeleteCustomer()
    {
        // Prepare the parameters
        // string where = "CustomerLastName LIKE N'My New%'";

        // Delete user
        //  UserInfo user = UserInfoProvider.GetUserInfo("My new user");
        //   UserInfoProvider.DeleteUser(user);

        // Get the data
        DataSet customers = CustomerInfoProvider.GetCustomers(null, null);

        if (!DataHelper.DataSourceIsEmpty(customers))
        {
            foreach (DataRow customerDr in customers.Tables[0].Rows)
            {
                // Create object from DataRow
                CustomerInfo deleteCustomer = new CustomerInfo(customerDr);

                // Delete the customer
                CustomerInfoProvider.DeleteCustomerInfo(deleteCustomer);
            }

            //return true;
        }

        //return false;
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        int currentUi = MembershipContext.AuthenticatedUser.UserID;

        var currentCust = CustomerInfoProvider.GetCustomerInfoByUserID(currentUi);

        if (currentCust != null)
        {
            const string query = "SELECT [OrderID] FROM [COM_Order] WHERE [OrderCustomerID] = @customerid";
            var          param = new QueryDataParameters();
            param.Add(new DataParameter("@customerid", currentCust.CustomerID));
            DataSet ds = ConnectionHelper.ExecuteQuery(query, param, QueryTypeEnum.SQLQuery);
            if (!DataHelper.DataSourceIsEmpty(ds))
            {
                var list = new List <ProductModel>();
                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    int orderId = ValidationHelper.GetInteger(row["OrderID"], 0);
                    if (orderId > 0)
                    {
                        var pdt = GetDownLoadFile(orderId);
                        if (pdt != null)
                        {
                            list.Add(pdt);
                        }
                    }
                }

                List = list;
            }
        }
    }
Esempio n. 12
0
    /// <summary>
    /// Saves password to existing user and sends notification email.
    /// </summary>
    /// <param name="informationMessage">Message to be displayed in password has been successfully changed.</param>
    /// <param name="password">If is not given, a new password will be generated.</param>
    private void SavePassword(string informationMessage, string password = null)
    {
        var user = Customer.CustomerUser;

        if (user == null)
        {
            return;
        }

        if (String.IsNullOrEmpty(password))
        {
            password = UserInfoProvider.GenerateNewPassword(SiteContext.CurrentSiteName);
        }

        UserInfoProvider.SetPassword(user, password, true);

        if (!CustomerInfoProvider.SendLoginDetailsNotificationEmail(user, password, TEMPLATE_PASSWORD_CHANGED, SiteContext.CurrentSiteID))
        {
            ShowConfirmation(informationMessage);
            ShowError(GetString("com.customer.notificationemailnotsent"));
        }
        else
        {
            ShowConfirmation(informationMessage + " " + GetString("com.customer.notificationsent"));
        }
    }
Esempio n. 13
0
 /// <summary>
 /// Returns customer details
 /// </summary>
 /// <returns></returns>
 private static CustomerDTO GetCustomer()
 {
     try
     {
         var settingKeyValue    = DIContainer.Resolve <IKenticoResourceService>().GetSettingsKey("KDA_SoldToGeneralInventory");
         var distributorID      = Cart.GetIntegerValue("ShoppingCartDistributorID", default(int));
         var distributorAddress = AddressInfoProvider.GetAddresses().WhereEquals("AddressID", distributorID).FirstOrDefault();
         var customer           = CustomerInfoProvider.GetCustomerInfo(distributorAddress.AddressCustomerID);
         return(new CustomerDTO
         {
             FirstName = customer.CustomerFirstName,
             LastName = customer.CustomerLastName,
             KenticoCustomerID = customer.CustomerID,
             Email = customer.CustomerEmail,
             CustomerNumber = settingKeyValue,
             KenticoUserID = customer.CustomerUserID,
             Phone = customer.CustomerPhone
         });
     }
     catch (Exception ex)
     {
         EventLogProvider.LogInformation("ShoppingCartHelper", "GetCustomer", ex.Message);
         return(null);
     }
 }
Esempio n. 14
0
    protected override void OnInit(EventArgs e)
    {
        base.OnInit(e);

        if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Ecommerce", "Customers.CustomFields"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Ecommerce", "Customers.CustomFields");
        }

        // Set edit mode
        customerId = QueryHelper.GetInteger("customerId", 0);
        if (customerId > 0)
        {
            customerObj = CustomerInfoProvider.GetCustomerInfo(customerId);
            // Check if customer belongs to current site
            if (!CheckCustomerSiteID(customerObj))
            {
                customerObj = null;
            }

            EditedObject = customerObj;
            formCustomerCustomFields.Info          = customerObj;
            formCustomerCustomFields.OnBeforeSave += formCustomerCustomFields_OnBeforeSave;
            formCustomerCustomFields.OnAfterSave  += formCustomerCustomFields_OnAfterSave;
        }
        else
        {
            formCustomerCustomFields.Enabled = false;
        }
    }
Esempio n. 15
0
        protected void btnProcessPayment_Click(object sender, EventArgs e)
        {
            if ((PaymentGatewayProvider != null) && (orderId > 0))
            {
                OrderInfo order = OrderInfoProvider.GetOrders()
                                  .WhereEquals("OrderID", orderId)
                                  .FirstObject;

                CustomerInfo customer = CustomerInfoProvider.GetCustomers()
                                        .WhereEquals("CustomerID", order.OrderCustomerID)
                                        .FirstObject;

                //AddressInfo address = AddressInfoProvider.GetAddresses()
                //    .WhereEquals("AddressCustomerID", order.OrderBillingAddress)
                //    .FirstObject;

                try
                {
                    ltrPayPalForm.Text = GeneratePayPalToken(order, customer);
                }
                catch (Exception ex)
                {
                    Response.Write(ex.InnerException);
                }
            }
        }
Esempio n. 16
0
    /// <summary>
    /// Handles the UniGrid's OnAction event.
    /// </summary>
    /// <param name="actionName">Name of item (button) that throws event</param>
    /// <param name="actionArgument">ID (value of Primary key) of corresponding data row</param>
    protected void uniGrid_OnAction(string actionName, object actionArgument)
    {
        if (actionName == "edit")
        {
            URLHelper.Redirect("Customer_Edit_Frameset.aspx?customerid=" + Convert.ToString(actionArgument));
        }
        else if (actionName == "delete")
        {
            int customerId = ValidationHelper.GetInteger(actionArgument, 0);

            // Check module permissions
            if (!ECommerceContext.IsUserAuthorizedToModifyCustomer())
            {
                RedirectToAccessDenied("CMS.Ecommerce", "EcommerceModify OR ModifyCustomers");
                return;
            }

            // Check customers dependencies
            if (CustomerInfoProvider.CheckDependencies(customerId))
            {
                ShowError(GetString("Ecommerce.DeleteDisabled"));
                return;
            }

            // Delete CustomerInfo object from database
            CustomerInfoProvider.DeleteCustomerInfo(customerId);

            UniGrid.ReloadData();
        }
    }
        public void SetDefaultShippingAddress(int addressId)
        {
            var customer = ECommerceContext.CurrentCustomer;

            if (customer != null)
            {
                customer.SetValue(CustomerDefaultShippingAddresIDFieldName, addressId);
                CustomerInfoProvider.SetCustomerInfo(customer);
            }
        }
    protected void HeaderActions_ActionPerformed(object sender, CommandEventArgs e)
    {
        CheckModifyPermissions();

        switch (e.CommandName)
        {
        // Registering user with random password
        case "create":
        {
            var errorMessage = ValidateForm();
            if (!String.IsNullOrEmpty(ValidateForm()))
            {
                ShowError(errorMessage);
                return;
            }

            var displayError = false;
            if (!CustomerInfoProvider.RegisterAndNotify(Customer, TEMPLATE_REGISTER_AND_NOTIFY, Customer.CustomerEmail, PasswordField))
            {
                if (Customer.CustomerUserID <= 1)
                {
                    ShowError(GetString("com.customer.usernotcreated"));
                    return;
                }

                displayError = true;
            }

            ScriptHelper.RegisterClientScriptBlock(Page, typeof(string), "LoginRedirect", "parent.window.location='" + GetRedirectUrl(displayError) + "';", true);
        }

        break;

        // Changing password to registered customer
        case ComponentEvents.SAVE:
        {
            var errorMessage = ValidateForm();
            if (!String.IsNullOrEmpty(errorMessage))
            {
                ShowError(errorMessage);
                return;
            }

            SavePassword(GetString("com.customer.passwordsaved"), PasswordField);

            break;
        }

        // Generate new random password and send it to customer
        case "generate":
            SavePassword(GetString("com.customer.passwordgenerated"));

            break;
        }
    }
Esempio n. 19
0
    private void ucSelectCustomer_Changed(object sender, EventArgs e)
    {
        // Check permissions
        if (ContactHelper.AuthorizedModifyContact(ci.ContactSiteID, true))
        {
            // Load value form dynamic control
            string values = null;
            if (ucSelectCustomer != null)
            {
                values = ValidationHelper.GetString(ucSelectCustomer.GetValue("OnlineMarketingValue"), null);
            }

            if (!String.IsNullOrEmpty(values))
            {
                // Store users one by one
                string[] customerIds   = values.Split(';');
                int      currentSiteID = SiteContext.CurrentSiteID;
                foreach (string customerId in customerIds)
                {
                    // Check if user ID is valid
                    int customerIdInt = ValidationHelper.GetInteger(customerId, 0);
                    if (customerIdInt <= 0)
                    {
                        continue;
                    }

                    var customer = CustomerInfoProvider.GetCustomerInfo(customerIdInt);
                    // Only allow adding customers on the same site as contact or registered customers
                    if ((customer == null) || ((customer.CustomerSiteID != currentSiteID) && (customer.CustomerSiteID != 0)))
                    {
                        continue;
                    }

                    // Add new relation
                    int parentId = (ci.ContactMergedWithContactID == 0)
                   ? ci.ContactID
                   : ci.ContactMergedWithContactID;

                    ContactMembershipInfoProvider.SetRelationship(customerIdInt, MemberTypeEnum.EcommerceCustomer, ci.ContactID, parentId, true);
                    ci = ContactInfoProvider.GetContactInfo(contactId);
                }

                // When contact was merged then refresh complete page
                if ((ci != null) && (ci.ContactMergedWithContactID > 0))
                {
                    Page.Response.Redirect(RequestContext.URL.ToString(), true);
                }
                else
                {
                    gridElem.ReloadData();
                }
            }
        }
    }
Esempio n. 20
0
        private List <AddressInfo> GetMyAddressBookList()
        {
            List <AddressInfo> myAddressList   = new List <AddressInfo>();
            CustomerInfo       currentCustomer = CustomerInfoProvider.GetCustomerInfoByUserID(CurrentUser.UserID);

            if (!DataHelper.DataSourceIsEmpty(currentCustomer))
            {
                myAddressList = AddressInfoProvider.GetAddresses(currentCustomer.CustomerID).Columns("AddressID", "AddressPersonalName").ToList();
            }
            return(myAddressList);
        }
Esempio n. 21
0
    /// <summary>
    /// Saves customer data and returns customer ID.
    /// </summary>
    public int Save()
    {
        if (!IsValid())
        {
            return(0);
        }

        // Create customer
        CustomerInfo customer = new CustomerInfo()
        {
            CustomerSiteID            = CMSContext.CurrentSiteID,
            CustomerFirstName         = txtCustomerFirstName.Text.Trim().Truncate(100),
            CustomerLastName          = txtCustomerLastName.Text.Trim().Truncate(100),
            CustomerCompany           = txtCustomerCompany.Text.Trim(),
            CustomerOrganizationID    = txtOrganizationID.Text.Trim(),
            CustomerTaxRegistrationID = txtTaxRegistrationID.Text.Trim(),
            CustomerCountryID         = drpCountry.CountryID,
            CustomerStateID           = drpCountry.StateID,
            CustomerEmail             = txtCustomerEmail.Text.Trim().Truncate(100),
            CustomerPhone             = txtCustomerPhone.Text.Trim(),
            CustomerFax     = txtCustomerFax.Text.Trim(),
            CustomerEnabled = true
        };

        // Save data in transaction
        using (CMSTransactionScope tr = new CMSTransactionScope())
        {
            CustomerInfoProvider.SetCustomerInfo(customer);

            if (chkCreateLogin.Checked)
            {
                // Create user
                UserInfo user = new UserInfo()
                {
                    UserName = txtUserName.Text.Trim(),
                    FullName = customer.CustomerFirstName + " " + customer.CustomerLastName,
                    IsGlobalAdministrator = false
                };

                user.SetValue("UserEnabled", true);

                UserInfoProvider.SetPassword(user, passStrength.Text);
                UserInfoProvider.AddUserToSite(user.UserName, CMSContext.CurrentSiteName);

                customer.CustomerUserID = user.UserID;
                CustomerInfoProvider.SetCustomerInfo(customer);
            }

            tr.Commit();
        }

        return(customer.CustomerID);
    }
Esempio n. 22
0
    private void InitData()
    {
        CustomerInfo ci = CustomerInfoProvider.GetCustomerInfo(customerId);

        if (ci != null)
        {
            ucCountrySelector.CountryID  = ci.CustomerCountryID;
            ucCountrySelector.StateID    = ci.CustomerStateID;
            txtAddressDeliveryPhone.Text = ci.CustomerPhone;
            txtPersonalName.Text         = ci.CustomerFirstName + " " + ci.CustomerLastName;
        }
    }
    /// <summary>
    /// On btnOK button click.
    /// </summary>
    /// <param name="sender">Sender</param>
    /// <param name="e">Event argument</param>
    protected void btnOK_Click(object sender, EventArgs e)
    {
        // check 'EcommerceModify' permission

        if (!ECommerceContext.IsUserAuthorizedForPermission("ModifyOrders"))
        {
            RedirectToAccessDenied("CMS.Ecommerce", "EcommerceModify OR ModifyOrders");
        }

        string errorMessage = ValidateForm();

        if (errorMessage == "")
        {
            OrderInfo oi = OrderInfoProvider.GetOrderInfo(orderId);
            if (oi != null)
            {
                oi.OrderDate             = orderDate.SelectedDateTime;
                oi.OrderNote             = txtNotes.Text;
                oi.OrderStatusID         = statusElem.OrderStatusID;
                oi.OrderCompanyAddressID = addressElem.AddressID;

                // update orderinfo
                OrderInfoProvider.SetOrderInfo(oi);

                ////Get all params to send in mail
                string invoicenumber = oi.OrderInvoiceNumber; //#OrderInvoiceNumber
                //ev.LogEvent("I", DateTime.Now, "invoicenumber : ", invoicenumber);
                //ev.LogEvent("I", DateTime.Now, " statusElem.Value : ", statusElem.Value.ToString());

                //Send mail
                if (statusElem.Value.ToString() == val)
                {
                    var cu = CustomerInfoProvider.GetCustomerInfo(oi.OrderCustomerID);
                    SendMail(cu.CustomerEmail, invoicenumber);
                }

                URLHelper.Redirect("Order_Edit_General.aspx?orderid=" + Convert.ToString(oi.OrderID) + "&saved=1");
            }
            else
            {
                // Show error message
                ShowError(GetString("order_edit.ordernotexist"));
            }
        }

        // Show error message
        if (errorMessage != "")
        {
            // Show error message
            ShowError(errorMessage);
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Ecommerce", "Customers.Credit"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Ecommerce", "Customers.Credit");
        }

        // Get site id of credits main currency
        creditCurrencySiteId = ECommerceHelper.GetSiteID(CMSContext.CurrentSiteID, ECommerceSettings.USE_GLOBAL_CREDIT);

        // Get currency in which credit is expressed in
        currency = CurrencyInfoProvider.GetMainCurrency(creditCurrencySiteId);

        // Get customerId from url
        customerId = QueryHelper.GetInteger("customerid", 0);

        // Load customer info
        customerObj = CustomerInfoProvider.GetCustomerInfo(customerId);

        // Check if customer belongs to current site
        if (!CheckCustomerSiteID(customerObj))
        {
            customerObj = null;
        }

        // Check, if edited customer exists
        EditedObject = customerObj;

        // Init unigrid
        UniGrid.HideControlForZeroRows = true;
        UniGrid.OnAction            += new OnActionEventHandler(uniGrid_OnAction);
        UniGrid.OnExternalDataBound += new OnExternalDataBoundEventHandler(UniGrid_OnExternalDataBound);
        UniGrid.OrderBy              = "EventDate DESC, EventName ASC";
        UniGrid.WhereCondition       = "EventCustomerID = " + customerId + " AND ISNULL(EventSiteID, 0) = " + creditCurrencySiteId;

        if (customerObj != null)
        {
            InitializeMasterPage();

            // Configuring global records
            if (creditCurrencySiteId == 0)
            {
                // Show "using global settings" info message only if showing global store settings
                lblGlobalInfo.Visible = true;
                lblGlobalInfo.Text    = GetString("com.UsingGlobalSettings");
            }

            // Display customer total credit
            lblCredit.Text      = GetString("CreditEvent_List.TotalCredit");
            lblCreditValue.Text = GetFormatedTotalCredit();
        }
    }
Esempio n. 25
0
    /// <summary>
    /// Process form data.
    /// </summary>
    public override bool ProcessStep()
    {
        int customerId = 0;

        if (ExistingCustomer)
        {
            // Select an existing customer
            customerId = customerSelector.CustomerID;
        }

        if (!ExistingCustomer)
        {
            // Check permissions
            if (!HasModifyCustomerPermission)
            {
                RedirectToAccessDenied("CMS.Ecommerce", "ModifyCustomers OR EcommerceModify");
                return(false);
            }

            // Create a new customer
            customerForm.SaveData(null, false);

            var customer = (CustomerInfo)EditedObject;
            customerId = customer.CustomerID;

            var reg = ValidationHelper.GetBoolean(customerForm.GetFieldValue("Register"), false);
            if (reg)
            {
                CustomerInfoProvider.RegisterAndNotify(customer, "Ecommerce.AutomaticRegistration");
            }
        }

        // Assign customer and user to the shopping cart
        if (customerId > 0)
        {
            var customer = CustomerInfoProvider.GetCustomerInfo(customerId);

            if (customer != null)
            {
                ShoppingCart.ShoppingCartCustomerID = customerId;

                if (customer.CustomerIsRegistered)
                {
                    ShoppingCart.User = UserInfoProvider.GetUserInfo(customer.CustomerUserID) ?? AuthenticationHelper.GlobalPublicUser;
                }

                return(true);
            }
        }

        return(false);
    }
Esempio n. 26
0
    protected override void OnPreInit(EventArgs e)
    {
        customerId = QueryHelper.GetInteger("customerid", 0);

        if (customerId > 0)
        {
            if (!ECommerceContext.CheckCustomerSiteID(CustomerInfoProvider.GetCustomerInfo(customerId)))
            {
                customerId = 0;
            }
        }
        base.OnPreInit(e);
    }
Esempio n. 27
0
        /// <summary>
        /// Saves the customer into the database.
        /// </summary>
        /// <param name="validate">Specifies whether the validation should be performed.</param>
        public void Save(bool validate = true)
        {
            if (validate)
            {
                var result = Validate();
                if (result.CheckFailed)
                {
                    throw new InvalidOperationException();
                }
            }

            CustomerInfoProvider.SetCustomerInfo(OriginalCustomer);
        }
    /// <summary>
    /// Process form data.
    /// </summary>
    public override bool ProcessStep()
    {
        int customerId = 0;

        if (radSelectCustomer.Checked)
        {
            // Select an existing customer
            customerId = customerSelector.CustomerID;
        }

        if (radCreateCustomer.Checked)
        {
            // Check permissions
            if (!ECommerceContext.IsUserAuthorizedToModifyCustomer())
            {
                RedirectToAccessDenied("CMS.Ecommerce", "ModifyCustomers OR EcommerceModify");
                return(false);
            }

            // Create a new customer
            customerId = ucCustomerNew.Save();
        }

        // Assign customer and user to the shopping cart
        if (customerId > 0)
        {
            CustomerInfo customer = CustomerInfoProvider.GetCustomerInfo(customerId);

            if (customer != null)
            {
                ShoppingCart.ShoppingCartCustomerID = customer.CustomerID;

                if (customer.CustomerUserID > 0)
                {
                    UserInfo user = UserInfoProvider.GetUserInfo(customer.CustomerUserID);

                    if (user == null)
                    {
                        user = AuthenticationHelper.GlobalPublicUser;
                    }

                    ShoppingCart.User = user;
                }

                return(true);
            }
        }

        return(false);
    }
        private static CustomerInfo GenerateCustomer(string fullName, int siteID)
        {
            var strArray    = fullName.Trim().Split(' ');
            var str1        = strArray[0];
            var str2        = strArray[1];
            var customerObj = new CustomerInfo();

            customerObj.CustomerEmail     = str1.ToLowerInvariant() + "@" + str2.ToLowerInvariant() + ".local";
            customerObj.CustomerFirstName = str1;
            customerObj.CustomerLastName  = str2;
            customerObj.CustomerSiteID    = siteID;
            CustomerInfoProvider.SetCustomerInfo(customerObj);
            return(customerObj);
        }