private void PopulateControls()
        {
            var        doc  = new XmlDocument();
            XmlElement root = CartHelper.BuildShoppingCartXml(SiteId, Guid.Empty, out doc);

            XmlHelper.AddNode(doc, root, "ModuleTitle", this.Title);
            XmlHelper.AddNode(doc, root, "ZoneTitle", CurrentZone.Name);

            if (config.CheckoutZoneId > 0)
            {
                XmlHelper.AddNode(doc, root, "CheckoutUrl", CartHelper.GetZoneUrl(config.CheckoutZoneId));
            }

            if (ModuleConfiguration.ResourceFileDef.Length > 0 && ModuleConfiguration.ResourceKeyDef.Length > 0)
            {
                List <string> lstResourceKeys = ModuleConfiguration.ResourceKeyDef.SplitOnCharAndTrim(';');

                foreach (string item in lstResourceKeys)
                {
                    XmlHelper.AddNode(doc, root, item, ResourceHelper.GetResourceString(ModuleConfiguration.ResourceFileDef, item));
                }
            }

            if (!Request.IsAuthenticated)
            {
                string redirectUrl = string.Format(CultureInfo.InvariantCulture, "{0}" + SiteUtils.GetLoginRelativeUrl() + "?returnurl={1}",
                                                   SiteRoot,
                                                   HttpUtility.UrlEncode(HttpContext.Current.Request.RawUrl));

                XmlHelper.AddNode(doc, root, "LoginUrl", redirectUrl);
            }
            else
            {
                int      point    = 0;
                SiteUser siteUser = SiteUtils.GetCurrentSiteUser();
                if (siteUser != null && siteUser.UserId > 0)
                {
                    point = siteUser.TotalPosts;
                }

                XmlHelper.AddNode(doc, root, "UserPoints", siteUser.TotalPosts.ToString());
                XmlHelper.AddNode(doc, root, "PointDiscount", ProductHelper.FormatPrice(0, true));
            }

            XmlHelper.XMLTransform(xmlTransformer, SiteUtils.GetXsltBasePath("product", ModuleConfiguration.XsltFileName), doc);
        }