Ejemplo n.º 1
0
        private String AddClientDiscountCodes(HttpContext context)
        {
            try
            {
                var strOut = "Missing data ('userid', 'portalid' hidden fields needed on input form)";

                //get uploaded params
                var settings = GetAjaxFields(context);
                if (!settings.ContainsKey("addqty")) settings.Add("addqty", "1");
                if (!settings.ContainsKey("userid")) settings.Add("userid", "");
                var userid = settings["userid"];
                if (!settings.ContainsKey("portalid")) settings.Add("portalid", "");
                var portalid = settings["portalid"];
                if (Utils.IsNumeric(portalid) && Utils.IsNumeric(userid))
                {
                    var clientData = new ClientData(Convert.ToInt32(portalid), Convert.ToInt32(userid));

                    var qty = settings["addqty"];
                    if (!Utils.IsNumeric(qty)) qty = "1";

                       var lp = 1;
                       var modelcount = clientData.DiscountCodes.Count;
                        while (lp <= Convert.ToInt32(qty))
                        {
                            clientData.AddNewDiscountCode();
                            lp += 1;
                            if (lp > 10) break; // we don;t want to create a stupid amount, it will slow the system!!!
                        }
                        clientData.Save();
                        var modelcount2 = clientData.DiscountCodes.Count;
                        var rtnList = new List<NBrightInfo>();
                        for (var i = modelcount; i < modelcount2; i++)
                        {
                            rtnList.Add(clientData.DiscountCodes[i]);
                        }

                        // get template
                        var themeFolder = StoreSettings.Current.ThemeFolder;
                        if (settings.ContainsKey("themefolder")) themeFolder = settings["themefolder"];
                        var templCtrl = NBrightBuyUtils.GetTemplateGetter(themeFolder);
                        var bodyTempl = templCtrl.GetTemplateData("clientdiscountcodes.html", _lang, true, true, true, StoreSettings.Current.Settings());

                        //get data
                        strOut = GenXmlFunctions.RenderRepeater(rtnList, bodyTempl);
                }
                return strOut;
            }
            catch (Exception ex)
            {
                return ex.ToString();
            }
        }