示例#1
0
        public String GetCategoryProductList(HttpContext context, string editLangCurrent)
        {
            try
            {
                EditLangCurrent = editLangCurrent;
                var ajaxInfo = NBrightBuyUtils.GetAjaxInfo(context);
                var objQual  = DotNetNuke.Data.DataProvider.Instance().ObjectQualifier;
                var dbOwner  = DotNetNuke.Data.DataProvider.Instance().DatabaseOwner;

                var strFilter = " and NB1.[ItemId] in (select parentitemid from " + dbOwner + "[" + objQual + "NBrightBuy] where typecode = 'CATXREF' and XrefItemId = {Settings:itemid}) ";

                strFilter = Utils.ReplaceSettingTokens(strFilter, ajaxInfo.ToDictionary());

                ajaxInfo.SetXmlProperty("genxml/hidden/filter", strFilter);
                ajaxInfo.SetXmlProperty("genxml/hidden/razortemplate", "Admin_CategoryProducts.cshtml");
                ajaxInfo.SetXmlProperty("genxml/hidden/themefolder", "config");

                var productFunctions = new ProductFunctions();
                return(productFunctions.ProductAdminList(context, true, EditLangCurrent, "", true));
            }
            catch (Exception ex)
            {
                return(ex.ToString());
            }
        }
示例#2
0
        public string UpdateCategoryImages(HttpContext context, string editLangCurrent)
        {
            EditLangCurrent = editLangCurrent;
            //get uploaded params
            var ajaxInfo      = NBrightBuyUtils.GetAjaxFields(context);
            var catitemid     = ajaxInfo.GetXmlPropertyInt("genxml/hidden/selectedcatid");
            var imguploadlist = ajaxInfo.GetXmlProperty("genxml/hidden/imguploadlist");
            var strOut        = "";

            if (catitemid > 0)
            {
                var imgs = imguploadlist.Split(',');
                foreach (var img in imgs)
                {
                    if (ImgUtils.IsImageFile(Path.GetExtension(img)) && img != "")
                    {
                        string fullName = StoreSettings.Current.FolderTempMapPath + "\\" + img;
                        if (File.Exists(fullName))
                        {
                            var imgResize = StoreSettings.Current.GetInt(StoreSettingKeys.productimageresize);
                            if (imgResize == 0)
                            {
                                imgResize = 800;
                            }
                            var productFunctions = new ProductFunctions();
                            var imagepath        = productFunctions.ResizeImage(fullName, imgResize);
                            var imageurl         = StoreSettings.Current.FolderImages.TrimEnd('/') + "/" + Path.GetFileName(imagepath);
                            AddNewImage(catitemid, imageurl, imagepath, EditLangCurrent);
                        }
                    }
                }
            }
            return(CategoryAdminDetail(context, 0, EditLangCurrent));
        }
示例#3
0
        public List <CartProductViewModel> GetCartProductsFromOrderRef(string OrderReference)
        {
            List <CartProductViewModel> cart = new List <CartProductViewModel>();

            string[] Items = OrderReference.Split(' ');
            foreach (var item in Items)
            {
                if (item != "")
                {
                    string[] values  = item.Split('+');
                    int[]    numbers = Array.ConvertAll(values, int.Parse);
                    cart.Add(new CartProductViewModel()
                    {
                        StockId  = numbers[0],
                        Quantity = numbers[1]
                    });
                }
            }
            foreach (var product in cart)
            {
                var p = new ProductFunctions(ConnectionString, ProductFunctions, null, null).RunGetProductByStockId(product.StockId);
                product.Name  = p.Name;
                product.Value = $"€{p.Value.ToString("N2")}";
            }

            return(cart);
        }
示例#4
0
        private void RazorPageLoad()
        {
            NBrightInfo objCat = null;

            if (RazorTemplate.Trim() != "")  // if we don;t have a template, don't do anything
            {
                if (_displayentrypage)
                {
                    // get correct itemid, based on eid given
                    _eid = GetEntryIdFromName(_eid);
                    RazorDisplayDataEntry(_eid);
                }
                else
                {
                    // load meta data for category
                    if (Utils.IsNumeric(_catid))
                    {
                        var catData = new CategoryData(_catid, Utils.GetCurrentCulture());
                        if (catData.Name != null)
                        {
                            if (catData.SEOTitle != "")
                            {
                                BasePage.Title = catData.SEOTitle;
                            }
                            else
                            {
                                BasePage.Title = catData.SEOName;
                            }

                            if (BasePage.Title == "")
                            {
                                BasePage.Title = catData.Name;
                            }

                            if (catData.SEODescription != "")
                            {
                                BasePage.Description = catData.SEODescription;
                            }
                            if (catData.SEOTagwords != "")
                            {
                                BasePage.KeyWords = catData.SEOTagwords;
                            }
                        }
                    }

                    var pf     = new ProductFunctions();
                    var strOut = pf.ProductAjaxViewList(Context, ModuleId, TabId, true);

                    // load base template which should call ajax and load the list.
                    //var strOut = NBrightBuyUtils.RazorTemplRender(RazorTemplate, ModuleId, "productdetailrazor" + ModuleId, new NBrightInfo(true), _controlPath, ModSettings.ThemeFolder, Utils.GetCurrentCulture(), ModSettings.Settings());

                    var lit = new Literal();
                    lit.Text = strOut;
                    phData.Controls.Add(lit);
                }
            }
        }
示例#5
0
        public override string ProcessCommand(string paramCmd, HttpContext context, string editlang = "")
        {
            if (!CheckRights())
            {
                return("Security Error.");
            }

            var ajaxInfo = NBrightBuyUtils.GetAjaxFields(context);
            var uilang   = NBrightBuyUtils.SetContextLangauge(ajaxInfo); // Ajax breaks context with DNN, so reset the context language to match the client.
            var objCtrl  = new NBrightBuyController();

            var strOut = "OS_BulkEdit Ajax Error";

            var productFunctions = new ProductFunctions();

            // NOTE: The paramCmd MUST start with the plugin ref. in lowercase. (links ajax provider to cmd)
            switch (paramCmd.ToLower())
            {
            case "os_bulkedit_test":
                strOut = "<root>" + UserController.Instance.GetCurrentUserInfo().Username + "</root>";
                break;

            case "os_bulkedit_getdata":
                strOut = ProductAdminList(context);
                break;

            case "os_bulkedit_deleterecord":
                strOut = DeleteData(context);
                break;

            case "os_bulkedit_saveitem":
                DataSave(context);
                break;

            case "os_bulkedit_selectchangedisable":
                if (!NBrightBuyUtils.CheckRights())
                {
                    break;
                }
                strOut = UpdateBoolean(context, "genxml/checkbox/chkdisable");
                strOut = ProductAdminList(context);
                break;

            case "os_bulkedit_selectchangehidden":
                if (!NBrightBuyUtils.CheckRights())
                {
                    break;
                }
                strOut = UpdateBoolean(context, "genxml/checkbox/chkishidden");
                strOut = ProductAdminList(context);
                break;
            }

            return(strOut);
        }
示例#6
0
 public ActionResult GetProduct(Product product)
 {
     try
     {
         return(Json(ProductFunctions.Get(product)));
     }
     catch (Exception ex)
     {
         return(Json("Error occurred. Error details: " + ex.Message));
     }
 }
示例#7
0
        public string UpdateCategoryImages(HttpContext context, string editLangCurrent)
        {
            EditLangCurrent = editLangCurrent;
            //get uploaded params
            var ajaxInfo      = NBrightBuyUtils.GetAjaxFields(context);
            var catitemid     = ajaxInfo.GetXmlPropertyInt("genxml/hidden/selectedcatid");
            var imguploadlist = ajaxInfo.GetXmlProperty("genxml/hidden/imguploadlist");
            var strOut        = "";

            if (catitemid > 0)
            {
                var imgs = imguploadlist.Split(',');
                foreach (var img in imgs)
                {
                    if (ImgUtils.IsImageFile(Path.GetExtension(img)) && img != "")
                    {
                        var extension = Path.GetExtension(img);
                        var fn        = DnnUtils.Encrypt(img, StoreSettings.Current.Get("adminpin"));
                        foreach (char c in System.IO.Path.GetInvalidFileNameChars())
                        {
                            fn = fn.Replace(c, '_');
                        }
                        fn = extension + "-" + fn; // add extension to front, so it cannot be servered but we can add to order data.

                        var fullName = StoreSettings.Current.FolderTempMapPath.TrimEnd(Convert.ToChar("\\")) + "\\" + fn;
                        if (File.Exists(fullName))
                        {
                            // process image provider
                            var imageInfo = new NBrightInfo(true);
                            imageInfo.SetXmlProperty("genxml/uploadedimagemappath", fullName);
                            imageInfo = NBrightBuyUtils.ProcessImageProvider("product", imageInfo);
                            fullName  = imageInfo.GetXmlProperty("genxml/uploadedimagemappath");

                            // deal with image
                            File.Move(fullName, fullName + extension);
                            fullName = fullName + extension;
                            var imgResize = StoreSettings.Current.GetInt(StoreSettingKeys.productimageresize);
                            if (imgResize == 0)
                            {
                                imgResize = 800;
                            }
                            var productFunctions = new ProductFunctions();
                            var imagepath        = productFunctions.ResizeImage(fullName, imgResize);
                            var imageurl         = StoreSettings.Current.FolderImages.TrimEnd('/') + "/" + Path.GetFileName(imagepath);
                            AddNewImage(catitemid, imageurl, imagepath, EditLangCurrent);
                        }
                    }
                }
            }
            return(CategoryAdminDetail(context, 0, EditLangCurrent));
        }
示例#8
0
        public ActionResult CreateUpdateProducts(Product product)
        {
            int?ProductId = null;

            try
            {
                if (product.ProductId != null)
                {
                    ProductFunctions.Update(product);
                }
                else
                {
                    ProductId = ProductFunctions.Create(product);
                }

                return(Json(ProductId));
            }
            catch (Exception ex)
            {
                return(Json("Error occurred. Error details: " + ex.Message));
            }
        }
示例#9
0
        public ActionResult DeleteProduct(Product product)
        {
            ProductFunctions.Delete(product);

            return(RedirectToAction("Products", "Products"));
        }
示例#10
0
        public string ProcessCommand(string paramCmd, HttpContext context, string editlang = "")
        {
            var strOut   = "CATEGORY - ERROR!! - No Security rights or function command.";
            var ajaxInfo = NBrightBuyUtils.GetAjaxFields(context);

            EntityTypeCode = ajaxInfo.GetXmlProperty("genxml/hidden/entitytypecode");
            if (EntityTypeCode == "")
            {
                EntityTypeCode = "CATEGORY";                       // default to category
            }
            EditLangCurrent = NBrightBuyUtils.GetEditLang(ajaxInfo, Utils.GetCurrentCulture());

            if (!paramCmd.ToLower().Contains("save"))
            {
                // pickup nextlang, indicates if we are changing languages. (Don't use if saving data, only for getting next language.)
                EditLangCurrent = NBrightBuyUtils.GetNextLang(ajaxInfo, EditLangCurrent);
            }

            if (PluginUtils.CheckPluginSecurity(PortalSettings.Current.PortalId, "categories"))
            {
                switch (paramCmd)
                {
                case "category_admin_getlist":
                    strOut = CategoryAdminList(context, "", EditLangCurrent);
                    break;

                case "category_admin_getdetail":
                    strOut = CategoryAdminDetail(context, 0, EditLangCurrent);
                    break;

                case "category_admin_addnew":
                    strOut = CategoryAdminAddNew(context);
                    break;

                case "category_admin_savelist":
                    strOut = CategoryAdminSaveList(context);
                    break;

                case "category_admin_save":
                    strOut = CategorySave(context, EditLangCurrent);
                    break;

                case "category_admin_saveexit":
                    strOut = CategorySave(context, EditLangCurrent);
                    break;

                case "category_admin_movecategory":
                    strOut = MoveCategoryAdmin(context);
                    break;

                case "category_admin_delete":
                    strOut = DeleteCategory(context);
                    break;

                case "category_updateimages":
                    strOut = UpdateCategoryImages(context, EditLangCurrent);
                    break;

                case "category_getproductselectlist":
                    var productFunctions = new ProductFunctions();
                    strOut = productFunctions.ProductAdminList(context, true, EditLangCurrent, "", true);
                    break;

                case "category_selectchangehidden":
                    strOut = CategoryHidden(context);
                    break;

                case "category_selectcatxref":
                    strOut = SelectCatXref(context, EditLangCurrent);
                    break;

                case "category_deletecatxref":
                    strOut = DeleteCatXref(context);
                    break;

                case "category_deleteallcatxref":
                    strOut = DeleteAllCatXref(context, EditLangCurrent);
                    break;

                case "category_copyallcatxref":
                    strOut = CopyAllCatXref(context);
                    break;

                case "category_moveallcatxref":
                    strOut = CopyAllCatXref(context, true);
                    break;

                case "category_cattaxupdate":
                    strOut = CatTaxUpdate(context, EditLangCurrent);
                    break;

                case "category_addgroupfilter":
                    strOut = AddGroupFilter(context, EditLangCurrent);
                    break;

                case "category_removegroupfilter":
                    strOut = RemoveGroupFilter(context, EditLangCurrent);
                    break;

                case "category_categorygroupfilter":
                    strOut = CategoryGroupFilters(context, EditLangCurrent);
                    break;
                }
            }

            switch (paramCmd)
            {
            case "category_categoryproductlist":
                strOut = GetCategoryProductList(context, EditLangCurrent);
                break;

            case "category_removeimage":
                strOut = RemoveCategoryImage(context, EditLangCurrent);
                break;

            case "category_displayproductselect":
                strOut = CategoryProductSelect(context, EditLangCurrent);
                break;
            }

            return(strOut);
        }
示例#11
0
        public void ProcessRequest(HttpContext context)
        {
            #region "Initialize"

            var strOut = "** No Action **";

            var paramCmd       = Utils.RequestQueryStringParam(context, "cmd");
            var itemId         = Utils.RequestQueryStringParam(context, "itemid");
            var ctlType        = Utils.RequestQueryStringParam(context, "ctltype");
            var idXref         = Utils.RequestQueryStringParam(context, "idxref");
            var xpathpdf       = Utils.RequestQueryStringParam(context, "pdf");
            var xpathref       = Utils.RequestQueryStringParam(context, "pdfref");
            var lang           = Utils.RequestQueryStringParam(context, "lang");
            var language       = Utils.RequestQueryStringParam(context, "language");
            var moduleId       = Utils.RequestQueryStringParam(context, "mid");
            var moduleKey      = Utils.RequestQueryStringParam(context, "mkey");
            var parentid       = Utils.RequestQueryStringParam(context, "parentid");
            var entryid        = Utils.RequestQueryStringParam(context, "entryid");
            var entryxid       = Utils.RequestQueryStringParam(context, "entryxid");
            var catid          = Utils.RequestQueryStringParam(context, "catid");
            var catxid         = Utils.RequestQueryStringParam(context, "catxid");
            var templatePrefix = Utils.RequestQueryStringParam(context, "tprefix");
            var value          = Utils.RequestQueryStringParam(context, "value");
            var itemListName   = Utils.RequestQueryStringParam(context, "listname");
            if (itemListName == "")
            {
                itemListName = "ItemList";
            }
            if (itemListName == "*")
            {
                itemListName = "ItemList";
            }

            #region "setup language"

            // because we are using a webservice the system current thread culture might not be set correctly,
            _uilang = NBrightBuyUtils.SetContextLangauge(context);
            var ajaxInfo = NBrightBuyUtils.GetAjaxFields(context);
            _editlang = NBrightBuyUtils.GetEditLang(ajaxInfo, _uilang);

            #endregion

            Logging.Debug($"XmlConnector called with: paramCmd='{paramCmd}', itemId='{itemId}', itemListName='{itemListName}'");

            #endregion

            try
            {
                #region "Do processing of command"

                if (paramCmd.StartsWith("client."))
                {
                    strOut = ClientFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("orderadmin_"))
                {
                    strOut = OrderFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("payment_"))
                {
                    strOut = PaymentFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("product_"))
                {
                    ProductFunctions.EntityTypeCode = "PRD";
                    strOut = ProductFunctions.ProcessCommand(paramCmd, context, _editlang);
                }
                else if (paramCmd.StartsWith("category_"))
                {
                    CategoryFunctions.EntityTypeCode = "CATEGORY";
                    strOut = CategoryFunctions.ProcessCommand(paramCmd, context, _editlang);
                }
                else if (paramCmd.StartsWith("property_"))
                {
                    PropertyFunctions.EntityTypeCode = "CATEGORY";
                    strOut = PropertyFunctions.ProcessCommand(paramCmd, context, _editlang);
                }
                else if (paramCmd.StartsWith("itemlist_"))
                {
                    strOut = ItemListsFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("addressadmin_"))
                {
                    strOut = AddressAdminFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("plugins_"))
                {
                    strOut = PluginFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("cart_"))
                {
                    strOut = CartFunctions.ProcessCommand(paramCmd, context);
                }
                else
                {
                    switch (paramCmd)
                    {
                    case "test":
                        strOut = "<root>" + UserController.Instance.GetCurrentUserInfo().Username + "</root>";
                        break;

                    case "setdata":
                        break;

                    case "deldata":
                        break;

                    case "getdata":
                        strOut = GetReturnData(context);
                        break;

                    case "fileupload":
                        if (NBrightBuyUtils.CheckRights())
                        {
                            strOut = FileUpload(context);
                        }
                        break;

                    case "fileclientupload":
                        if (StoreSettings.Current.GetBool("allowupload"))
                        {
                            strOut = FileUpload(context, itemId);
                        }
                        break;

                    case "docdownload":

                        var fname   = Utils.RequestQueryStringParam(context, "filename");
                        var filekey = Utils.RequestQueryStringParam(context, "key");
                        if (filekey != "")
                        {
                            var uData = new UserData();
                            if (uData.HasPurchasedDocByKey(filekey))
                            {
                                fname = uData.GetPurchasedFileName(filekey);
                            }
                            fname = StoreSettings.Current.FolderDocuments + "/" + fname;
                        }
                        if (fname != "")
                        {
                            strOut = fname;     // return this is error.
                            var downloadname = Utils.RequestQueryStringParam(context, "downloadname");
                            var fpath        = HttpContext.Current.Server.MapPath(fname);
                            if (downloadname == "")
                            {
                                downloadname = Path.GetFileName(fname);
                            }
                            try
                            {
                                Utils.ForceDocDownload(fpath, downloadname, context.Response);
                            }
                            catch (Exception ex)
                            {
                                // ignore, robots can cause error on thread abort.
                                //Exceptions.LogException(ex);
                                Logging.Debug($"XmlConnector.ProcessRequest exception for {paramCmd} which is ignored because bots tend to cause these on thread abort: {ex.Message}.");
                            }
                        }
                        break;

                    case "printproduct":
                        break;

                    case "renderpostdata":
                        strOut = RenderPostData(context);
                        break;

                    case "getsettings":
                        strOut = GetSettings(context);
                        break;

                    case "savesettings":
                        if (NBrightBuyUtils.CheckRights())
                        {
                            strOut = SaveSettings(context);
                        }
                        break;

                    case "updateprofile":
                        strOut = UpdateProfile(context);
                        break;

                    case "dosearch":
                        strOut = DoSearch(context);
                        break;

                    case "resetsearch":
                        strOut = ResetSearch(context);
                        break;

                    case "orderby":
                        strOut = DoOrderBy(context);
                        break;

                    case "renderthemefolders":
                        strOut = RenderThemeFolders(context);
                        break;
                    }
                }

                if (strOut == "** No Action **")
                {
                    var pluginData = new PluginData(PortalSettings.Current.PortalId);
                    var provList   = pluginData.GetAjaxProviders();
                    foreach (var d in provList)
                    {
                        if (paramCmd.ToLower().StartsWith(d.Key.ToLower() + "_") || paramCmd.ToLower().StartsWith("cmd" + d.Key.ToLower() + "_"))
                        {
                            var ajaxprov = AjaxInterface.Instance(d.Key);
                            if (ajaxprov != null)
                            {
                                strOut = ajaxprov.ProcessCommand(paramCmd, context, _editlang);
                            }
                        }
                    }
                }

                #endregion
            }
            catch (Exception ex)
            {
                strOut = ex.ToString();
                Logging.LogException(ex);
                //Exceptions.LogException(ex);
            }


            #region "return results"

            //send back xml as plain text
            context.Response.Clear();
            context.Response.ContentType = "text/plain";
            context.Response.Write(strOut);
            context.Response.End();

            #endregion
        }
示例#12
0
        public void ProcessRequest(HttpContext context)
        {
            #region "Initialize"

            var strOut = "** No Action **";

            var paramCmd       = Utils.RequestQueryStringParam(context, "cmd");
            var itemId         = Utils.RequestQueryStringParam(context, "itemid");
            var ctlType        = Utils.RequestQueryStringParam(context, "ctltype");
            var idXref         = Utils.RequestQueryStringParam(context, "idxref");
            var xpathpdf       = Utils.RequestQueryStringParam(context, "pdf");
            var xpathref       = Utils.RequestQueryStringParam(context, "pdfref");
            var lang           = Utils.RequestQueryStringParam(context, "lang");
            var language       = Utils.RequestQueryStringParam(context, "language");
            var moduleId       = Utils.RequestQueryStringParam(context, "mid");
            var moduleKey      = Utils.RequestQueryStringParam(context, "mkey");
            var parentid       = Utils.RequestQueryStringParam(context, "parentid");
            var entryid        = Utils.RequestQueryStringParam(context, "entryid");
            var entryxid       = Utils.RequestQueryStringParam(context, "entryxid");
            var catid          = Utils.RequestQueryStringParam(context, "catid");
            var catxid         = Utils.RequestQueryStringParam(context, "catxid");
            var templatePrefix = Utils.RequestQueryStringParam(context, "tprefix");
            var value          = Utils.RequestQueryStringParam(context, "value");
            var itemListName   = Utils.RequestQueryStringParam(context, "listname");
            if (itemListName == "")
            {
                itemListName = "ItemList";
            }
            if (itemListName == "*")
            {
                itemListName = "ItemList";
            }

            #region "setup language"

            // because we are using a webservice the system current thread culture might not be set correctly,
            NBrightBuyUtils.SetContextLangauge(context);
            var ajaxInfo = NBrightBuyUtils.GetAjaxFields(context);
            _editlang = NBrightBuyUtils.GetEditLang(ajaxInfo, Utils.GetCurrentCulture());

            #endregion

            Logging.Debug($"XmlConnector called with: paramCmd='{paramCmd}', itemId='{itemId}', itemListName='{itemListName}'");

            #endregion

            try
            {
                #region "Do processing of command"

                if (paramCmd.StartsWith("client."))
                {
                    strOut = ClientFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("orderadmin_"))
                {
                    strOut = OrderFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("payment_"))
                {
                    strOut = PaymentFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("product_"))
                {
                    var productFunctions = new ProductFunctions();
                    strOut = productFunctions.ProcessCommand(paramCmd, context, _editlang);
                }
                else if (paramCmd.StartsWith("category_"))
                {
                    var categoryFunctions = new CategoryFunctions();
                    strOut = categoryFunctions.ProcessCommand(paramCmd, context, _editlang);
                }
                else if (paramCmd.StartsWith("property_"))
                {
                    var propertyFunctions = new PropertyFunctions();
                    strOut = propertyFunctions.ProcessCommand(paramCmd, context, _editlang);
                }
                else if (paramCmd.StartsWith("itemlist_"))
                {
                    strOut = ItemListsFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("addressadmin_"))
                {
                    strOut = AddressAdminFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("plugins_"))
                {
                    strOut = PluginFunctions.ProcessCommand(paramCmd, context);
                }
                else if (paramCmd.StartsWith("cart_"))
                {
                    strOut = CartFunctions.ProcessCommand(paramCmd, context);
                }
                else
                {
                    switch (paramCmd)
                    {
                    case "test":
                        strOut = "<root>" + UserController.Instance.GetCurrentUserInfo().Username + "</root>";
                        break;

                    case "setdata":
                        break;

                    case "deldata":
                        break;

                    case "getdata":
                        strOut = GetReturnData(context);
                        break;

                    case "fileupload":
                        if (NBrightBuyUtils.CheckRights())
                        {
                            strOut = FileUpload(context);
                        }
                        break;

                    case "fileclientupload":
                        if (StoreSettings.Current.GetBool("allowupload"))
                        {
                            strOut = FileUpload(context, itemId);
                        }
                        break;

                    case "docdownload":
                        strOut = DownloadSystemFile(paramCmd, context);
                        break;

                    case "printproduct":
                        break;

                    case "renderpostdata":
                        strOut = RenderPostData(context);
                        break;

                    case "getsettings":
                        strOut = GetSettings(context);
                        break;

                    case "savesettings":
                        if (NBrightBuyUtils.CheckRights())
                        {
                            strOut = SaveSettings(context);
                        }
                        break;

                    case "updateprofile":
                        strOut = UpdateProfile(context);
                        break;

                    case "dosearch":
                        strOut = DoSearch(context);
                        break;

                    case "resetsearch":
                        strOut = ResetSearch(context);
                        break;

                    case "orderby":
                        strOut = DoOrderBy(context);
                        break;

                    case "renderthemefolders":
                        strOut = RenderThemeFolders(context);
                        break;
                    }
                }

                if (strOut == "** No Action **")
                {
                    var ajaxprovider = ajaxInfo.GetXmlProperty("genxml/hidden/ajaxprovider");
                    if (ajaxprovider == "")
                    {
                        ajaxprovider = Utils.RequestQueryStringParam(context, "ajaxprovider");
                    }

                    var pluginData = new PluginData(PortalSettings.Current.PortalId);
                    var provList   = pluginData.GetAjaxProviders();
                    if (ajaxprovider != "")
                    {
                        strOut = "Ajax Provider not found: " + ajaxprovider;
                        if (provList.ContainsKey(ajaxprovider))
                        {
                            var ajaxprov = AjaxInterface.Instance(ajaxprovider);
                            if (ajaxprov != null)
                            {
                                strOut = ajaxprov.ProcessCommand(paramCmd, context, _editlang);
                            }
                        }
                    }
                    else
                    {
                        foreach (var d in provList)
                        {
                            if (paramCmd.ToLower().StartsWith(d.Key.ToLower() + "_") || paramCmd.ToLower().StartsWith("cmd" + d.Key.ToLower() + "_"))
                            {
                                var ajaxprov = AjaxInterface.Instance(d.Key);
                                if (ajaxprov != null)
                                {
                                    strOut = ajaxprov.ProcessCommand(paramCmd, context, _editlang);
                                }
                            }
                        }
                    }
                }

                #endregion
            }
            catch (Exception ex)
            {
                strOut = ex.ToString();
                Logging.LogException(ex);
                //Exceptions.LogException(ex);
            }


            #region "return results"

            //send back xml as plain text
            context.Response.Clear();
            context.Response.ContentType = "text/plain";
            context.Response.Write(strOut);
            context.Response.End();

            #endregion
        }
示例#13
0
 public ProductTests()
 {
     productFunctions = new ProductFunctions(null, adminProductFunctions.Object, userProductFunctions.Object, product.Object);
 }