public int SaveUpdateItemAndAttributes(ItemsInfo.ItemSaveBasicInfo itemObj, AspxCommonInfo aspxCommonObj)
        {
            bool isModified = false;
            bool updateFlag = false;
            int storeId = aspxCommonObj.StoreID;
            int portalId = aspxCommonObj.PortalID;
            string culture = aspxCommonObj.CultureName;
            string userName = aspxCommonObj.UserName;
            if (itemObj.ItemId > 0)
            {
                isModified = true;
                updateFlag = true;
            }
            StoreSettingConfig ssc = new StoreSettingConfig();
            int itemLargeThumbNailHeight =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemLargeThumbnailImageHeight, storeId, portalId, culture));
            int itemLargeThumbNailWidth =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemLargeThumbnailImageWidth, storeId, portalId, culture));
            int itemMediumThumbNailHeight =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemMediumThumbnailImageHeight, storeId, portalId, culture));
            int itemMediumThumbNailWidth =
               Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemMediumThumbnailImageWidth, storeId, portalId, culture));
            int itemSmallThumbNailHeight =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemSmallThumbnailImageHeight, storeId, portalId, culture));
            int itemSmallThumbNailWidth =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemSmallThumbnailImageWidth, storeId, portalId, culture));
            int _attributeID = 0;
            int _inputTypeID = 0;
            int _ValidationTypeID = 8;
            int _attributeSetGroupID = 0;
            bool _isIncludeInPriceRule = false;
            bool _isIncludeInPromotions = false;
            int _displayOrder = 0;

            string sku = "";
            string activeFrom = "";
            string activeTo = "";
            string hidePrice = "";
            string isHideInRSS = "";
            string isHideToAnonymous = "";

            bool toInsertIntoDB = true;
            bool isFormValid = true;
            string imageVar = string.Empty;
            int imageCounterFirst = 0;

            ItemsManagementSqlProvider obj = new ItemsManagementSqlProvider();
            var formVars = JSONHelper.Deserialise<List<AspxNameValue>>(itemObj.FormVars);
            //    for (int i = 0; i < formVars.Length; i++)
            for (int i = 0; i < formVars.Count; i++)
            {
                string attribValue = formVars[i].value;
                //string jsonResult = formVars[i].name.Replace('%', '_');
                string jsonResult = formVars[i].name.Replace('-', ' ');
                string[] jsonVar = jsonResult.Split('_');
                FormValidation formValidation = new FormValidation();

                if (jsonVar.Length > 1)
                {
                    _attributeID = Int32.Parse(jsonVar[0]);
                    _inputTypeID = Int32.Parse(jsonVar[1]);
                    _ValidationTypeID = Int32.Parse(jsonVar[2]);
                    _attributeSetGroupID = Int32.Parse(jsonVar[4]);
                    _isIncludeInPriceRule = bool.Parse(jsonVar[5]);
                    _isIncludeInPromotions = bool.Parse(jsonVar[6]);
                    _displayOrder = Int32.Parse(jsonVar[7]);

                    //Save To Database 1. [aspx_Items] 2. Others 
                    if (_attributeID == 4)
                    {
                        sku = formVars[i].value;
                    }
                    else if (_attributeID == 22)
                    {
                        activeFrom = formVars[i].value;
                    }
                    else if (_attributeID == 23)
                    {
                        activeTo = formVars[i].value;
                    }
                    else if (_attributeID == 26)
                    {
                        hidePrice = formVars[i].value;
                    }
                    else if (_attributeID == 27)
                    {
                        isHideInRSS = formVars[i].value;
                    }
                    else if (_attributeID == 28)
                    {
                        isHideToAnonymous = formVars[i].value;
                    }


                    if (itemObj.ItemId == 0 && updateFlag == false)
                    {
                        itemObj.ItemId = obj.AddItem(itemObj, aspxCommonObj, true, isModified, sku, activeFrom, activeTo,
                                                     hidePrice, isHideInRSS, isHideToAnonymous, updateFlag);
                    }
                    else if (itemObj.ItemId > 0 && i == (formVars.Count - 1))
                    {
                        itemObj.ItemId = obj.AddItem(itemObj, aspxCommonObj, true, isModified, sku, activeFrom, activeTo,
                                                     hidePrice, isHideInRSS, isHideToAnonymous, updateFlag);
                    }
                    if (itemObj.ItemId > 0)
                    {
                        if (_inputTypeID == 1)
                        {
                            if (_ValidationTypeID == 3)
                            {
                                if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                                {
                                    attribValue = formVars[i].value;
                                }
                                else
                                {
                                    isFormValid = false;
                                    break;
                                }
                            }
                            else if (_ValidationTypeID == 5)
                            {
                                if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                                {
                                    attribValue = formVars[i].value;
                                }
                                else
                                {
                                    isFormValid = false;
                                    break;
                                }
                            }
                            else
                            {
                                if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                                {
                                    attribValue = formVars[i].value;
                                }
                                else
                                {
                                    isFormValid = false;
                                    break;
                                }
                            }
                        }
                        else if (_inputTypeID == 2)
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                attribValue = formVars[i].value;
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }
                        else if (_inputTypeID == 3)
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                if (!string.IsNullOrEmpty(formVars[i].value))
                                {
                                    attribValue = formVars[i].value;
                                }
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }
                        else if (_inputTypeID == 4)
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                if (!string.IsNullOrEmpty(formVars[i].value))
                                {
                                    attribValue = formVars[i].value;
                                }
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }
                        else if (_inputTypeID == 5 || _inputTypeID == 6 || _inputTypeID == 9 || _inputTypeID == 10 ||
                                 _inputTypeID == 11 || _inputTypeID == 12)
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                attribValue = formVars[i].value;
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }
                        else if (_inputTypeID == 7)
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                attribValue = formVars[i].value;
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }

                        else if (_inputTypeID == 8)
                        {
                            if (imageCounterFirst % 2 == 0)
                            {
                                toInsertIntoDB = false;
                                if (!string.IsNullOrEmpty(formVars[i].value) &&
                                    formVars[i].value.ToLower() != "undefined")
                                {
                                    if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID,
                                                                     formVars[i].value))
                                    {
                                        imageVar = attribValue;
                                    }
                                    else
                                    {
                                        isFormValid = false;
                                        break;
                                    }
                                }
                                else
                                {
                                    imageVar = "";
                                }
                            }
                            else
                            {
                                toInsertIntoDB = true;

                                if (attribValue != imageVar)
                                {
                                    //_imageVar = _imageVar.Replace("../", "");
                                    imageVar = imageVar.Replace("/", "\\");
                                    //attribValue = attribValue.Replace("../", "");
                                    attribValue = attribValue.Replace("/", "\\");

                                    string tempFolder = @"Upload\temp";
                                    FileHelperController fileObj = new FileHelperController();
                                    attribValue = fileObj.MoveFileToModuleFolder(tempFolder, attribValue, imageVar,
                                                                                 itemLargeThumbNailHeight,
                                                                                  itemLargeThumbNailWidth,
                                                                                 itemMediumThumbNailHeight,
                                                                                  itemMediumThumbNailWidth,
                                                                                 itemSmallThumbNailHeight,
                                                                                  itemSmallThumbNailWidth,
                                                                                 @"Modules\AspxCommerce\AspxItemsManagement\uploads\",
                                                                                 itemObj.ItemId, "item_");
                                    
                                }
                            }
                            imageCounterFirst++;
                        }
                    }
                    if (isFormValid && toInsertIntoDB)
                    {
                        obj.SaveUpdateItemAttributes(itemObj.ItemId, itemObj.AttributeSetId, aspxCommonObj, true,
                                                     isModified,
                                                     attribValue,
                                                     _attributeID, _inputTypeID, _ValidationTypeID, _attributeSetGroupID,
                                                     _isIncludeInPriceRule, _isIncludeInPromotions,
                                                     _displayOrder);

                    }
                }
            }
            if (itemObj.ItemTypeId == 1 || itemObj.ItemTypeId == 2)
            {
                obj.InsertBrandMapping(itemObj.ItemId, itemObj.BrandId, storeId, portalId, userName, culture);
            }
            if (itemObj.ItemVideoIDs != "" || updateFlag == true)
                obj.InsertAndUpdateItemVideos(itemObj.ItemId, itemObj.ItemVideoIDs, aspxCommonObj);
            return itemObj.ItemId;
        }
        public int SaveItemAndAttributes(ItemsInfo.ItemSaveBasicInfo itemObj, AspxCommonInfo aspxCommonObj)
        {
            try
            {
                string uplodedDownlodableFormValue = string.Empty;

                if (itemObj.ItemTypeId == 2 && itemObj.DownloadItemsValue != "")
                {
                    FileHelperController downLoadableObj = new FileHelperController();
                    string tempFolder = @"Upload\temp";
                    uplodedDownlodableFormValue = downLoadableObj.MoveFileToDownlodableItemFolder(tempFolder,
                                                                                                  itemObj.DownloadItemsValue,
                                                                                                  @"Modules/AspxCommerce/AspxItemsManagement/DownloadableItems/",
                                                                                                  itemObj.ItemId, "item_");
                    itemObj.DownloadItemsValue = uplodedDownlodableFormValue;
                }


                int itemID = AspxItemMgntController.SaveUpdateItemAndAttributes(itemObj, aspxCommonObj);

                //kit produtct
                if (itemObj.ItemTypeId == 6)
                {

                    AspxKitController _kitCtl = new AspxKitController();
                    _kitCtl.SaveKits(itemObj.KitConfig, itemID, aspxCommonObj);
                }
                //return "({\"returnStatus\":1,\"Message\":'Item saved successfully.'})";
                int storeId = aspxCommonObj.StoreID;
                int portalId = aspxCommonObj.PortalID;
                string culture = aspxCommonObj.CultureName;
                // if (itemID > 0 && sourceFileCol != "" && dataCollection != "")
                if (itemID > 0 && itemObj.SourceFileCol != "" && itemObj.DataCollection != "")
                {
                    StoreSettingConfig ssc = new StoreSettingConfig();
                    int itemLargeThumbNailHeight = Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemLargeThumbnailImageHeight, storeId, portalId, culture));
                    int itemLargeThumbNailWidth = Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemLargeThumbnailImageWidth, storeId, portalId, culture));
                    int itemMediumThumbNailHeight = Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemMediumThumbnailImageHeight, storeId, portalId, culture));
                    int itemMediumThumbNailWidth = Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemMediumThumbnailImageWidth, storeId, portalId, culture));
                    int itemSmallThumbNailHeight = Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemSmallThumbnailImageHeight, storeId, portalId, culture));
                    int itemSmallThumbNailWidth = Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemSmallThumbnailImageWidth, storeId, portalId, culture));
                    var dataCollection = itemObj.DataCollection;
                    dataCollection = dataCollection.Replace("../", "");
                    SaveImageContents(itemID, @"Modules/AspxCommerce/AspxItemsManagement/uploads/", itemObj.SourceFileCol,
                                      dataCollection, itemLargeThumbNailHeight, itemLargeThumbNailWidth, itemMediumThumbNailHeight, itemMediumThumbNailWidth,
                                      itemSmallThumbNailHeight, itemSmallThumbNailWidth, "item_", aspxCommonObj.CultureName, aspxCommonObj.PortalID);
                }
                else if (itemID > 0 && itemObj.SourceFileCol == "" && itemObj.DataCollection == "")
                {
                    DeleteImageContents(itemID);
                }
                return itemID;
                //if (itemID == 0)
                //{
                //    //SaveImageContents(itemID, @"Modules/AspxCommerce/AspxItemsManagement/uploads/", sourceFileCol, dataCollection, "item_");
                //    //TODO:: DELTE UPLOADED FILE FROM DOWNLOAD FOLDER

                //}
            }
            catch (Exception ex)
            {
                throw ex;
                //ErrorHandler errHandler = new ErrorHandler();
                //if (errHandler.LogWCFException(ex))
                //{
                //    return "({\"returnStatus\":-1,\"errorMessage\":'" + ex.Message + "'})";
                //}
                //else
                //{
                //    return "({\"returnStatus\":-1,\"errorMessage\":'Error while saving item!'})";
                //}
            }
        }
        public static int SaveUpdateItemAndAttributes(ItemsInfo.ItemSaveBasicInfo itemObj, AspxCommonInfo aspxCommonObj)
        {
            bool isModified = false;
            bool updateFlag = false;
            int storeId = aspxCommonObj.StoreID;
            int portalId = aspxCommonObj.PortalID;
            string culture = aspxCommonObj.CultureName;
            string userName = aspxCommonObj.UserName;
            if (itemObj.ItemId > 0)
            {
                isModified = true;
                updateFlag = true;
            }
            StoreSettingConfig ssc = new StoreSettingConfig();
            int itemLargeThumbNailHeight =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemLargeThumbnailImageHeight, storeId, portalId,
                                                          culture));
            int itemLargeThumbNailWidth =
               Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemLargeThumbnailImageWidth, storeId, portalId,
                                                         culture));
            int itemMediumThumbNailHeight =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemMediumThumbnailImageHeight, storeId, portalId,
                                                          culture));
            int itemMediumThumbNailWidth =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemMediumThumbnailImageWidth, storeId, portalId,
                                                          culture));
            int itemSmallThumbNailHeight =
                Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemSmallThumbnailImageHeight, storeId, portalId,
                                                          culture));
            int itemSmallThumbNailWidth =
               Convert.ToInt32(ssc.GetStoreSettingsByKey(StoreSetting.ItemSmallThumbnailImageWidth, storeId, portalId,
                                                         culture));
            int _attributeID = 0;
            int _inputTypeID = 0;
            int _ValidationTypeID = 8;
            int _GroupID = 0;
            bool _isIncludeInPriceRule = false;
            int _displayOrder = 0;

            bool toInsertIntoDB = true;
            bool isFormValid = true;
            string imageVar = string.Empty;
            int imageCounterFirst = 0;
            var formVars = JSONHelper.Deserialise<List<AspxNameValue>>(itemObj.FormVars);
            ItemInformationDetailsInfo itemInfo = new ItemInformationDetailsInfo();
            ItemSetting itemSettings = new ItemSetting();
            itemSettings = itemObj.Settings;
            itemInfo.NewFromDate = "1900/01/01";
            itemInfo.NewToDate = "2999/12/30";
            itemInfo.FeaturedFrom = "1900/01/01";
            itemInfo.FeaturedTo = "2999/12/30";
            itemInfo.SpecialFrom = "1900/01/01";
            itemInfo.SpecialTo = "2999/12/30";
            itemInfo.SpecialPriceFrom = "1900/01/01";
            itemInfo.SpecialPriceTo = "2999/12/30";
            itemInfo.IsManageInventory = itemSettings.IsManageInventory;
            itemInfo.IsUsedStoreSetting = itemSettings.IsUsedStoreSetting;
            itemInfo.MinCartQuantity = itemSettings.MinCartQuantity;
            itemInfo.MaxCartQuantity = itemSettings.MaxCartQuantity;
            itemInfo.LowStockQuantity = itemSettings.LowStockQuantity;
            itemInfo.OutOfStockQuantity = itemSettings.OutOfStockQuantity;

            List<ItemAttributeDetailsInfo> listItemAttributes = new List<ItemAttributeDetailsInfo>();
            bool hasSystemAttributesOnly = true;
            string attributeIDs = "1,2,3,4,5,6,7,8,9,10,11,13,14,15,19,20,23,24,25,26,27,28,29,30,31,32,33,34,44,45,46,47,48";
            for (int i = 0; i < formVars.Count; i++)
            {
                string attribValue = formVars[i].value;
                //string jsonResult = formVars[i].name.Replace('%', '_');
                string jsonResult = formVars[i].name.Replace('-', ' ');
                string[] jsonVar = jsonResult.Split('_');
                FormValidation formValidation = new FormValidation();
                ItemAttributeDetailsInfo itemAttribute = new ItemAttributeDetailsInfo();

                if (jsonVar.Length > 1)
                {
                    _attributeID = Int32.Parse(jsonVar[0]);
                    _inputTypeID = Int32.Parse(jsonVar[1]);
                    _ValidationTypeID = Int32.Parse(jsonVar[2]);
                    _GroupID = Int32.Parse(jsonVar[4]);
                    _isIncludeInPriceRule = bool.Parse(jsonVar[5]);
                    _displayOrder = Int32.Parse(jsonVar[6]);
                    itemAttribute.AttributeID = _attributeID;
                    itemAttribute.InputTypeID = _inputTypeID;
                    itemAttribute.ValidationTypeID = _ValidationTypeID;
                    itemAttribute.GroupID = _GroupID;
                    itemAttribute.IsIncludeInPriceRule = _isIncludeInPriceRule;
                    itemAttribute.DisplayOrder = _displayOrder;
                    if (_attributeID > 48)
                    {
                        if (hasSystemAttributesOnly)
                        {
                            hasSystemAttributesOnly = false;
                        }
                    }

                    if (_attributeID == 4)
                    {
                        itemInfo.SKU = formVars[i].value;
                    }
                    else if (_attributeID == 19)
                    {
                        itemInfo.ActiveFrom = formVars[i].value;
                    }
                    else if (_attributeID == 20)
                    {
                        itemInfo.ActiveTo = formVars[i].value;
                    }
                    else if (_attributeID == 23)
                    {
                        itemInfo.HidePrice = Convert.ToBoolean(formVars[i].value);
                    }
                    else if (_attributeID == 24)
                    {
                        itemInfo.HideInRSSFeed = Convert.ToBoolean(formVars[i].value);
                    }
                    else if (_attributeID == 25)
                    {
                        itemInfo.HideToAnonymous = Convert.ToBoolean(formVars[i].value);
                    }
                    else if (_attributeID == 1)
                    {
                        itemInfo.Name = formVars[i].value;
                    }
                    else if (_attributeID == 2)
                    {
                        itemInfo.Description = formVars[i].value;
                    }
                    else if (_attributeID == 3)
                    {
                        itemInfo.ShortDescription = formVars[i].value;
                    }
                    else if (_attributeID == 5)
                    {
                        itemInfo.Weight = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 6)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.NewFromDate =itemInfo.NewFromDate;
                        }
                        else
                        {
                            itemInfo.NewFromDate = formVars[i].value;
                        }
                    }
                    else if (_attributeID == 7)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.NewToDate = itemInfo.NewToDate;
                        }
                        else
                        {
                            itemInfo.NewToDate = formVars[i].value;
                        }
                    }
                    else if (_attributeID == 8)
                    {
                        itemInfo.Price = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 9)
                    {
                        itemInfo.MetaTitle = formVars[i].value;
                    }
                    else if (_attributeID == 10)
                    {
                        itemInfo.MetaKeyword = formVars[i].value;
                    }
                    else if (_attributeID == 11)
                    {
                        itemInfo.MetaDescription = formVars[i].value;
                    }
                    else if (_attributeID == 13 && formVars[i].value != "")
                    {
                        itemInfo.ListPrice = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 14)
                    {
                        itemInfo.VisibilityOptionValueID = Convert.ToInt32(formVars[i].value);
                    }
                    else if (_attributeID == 15)
                    {
                        itemInfo.Quantity = Convert.ToInt32(formVars[i].value);
                    }
                    else if (_attributeID == 26)
                    {
                        itemInfo.IsFeaturedOptionValueID = Convert.ToInt32(formVars[i].value);
                    }
                    else if (_attributeID == 27)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.FeaturedFrom = itemInfo.FeaturedFrom;
                        }
                        else
                        {
                            itemInfo.FeaturedFrom = formVars[i].value;
                        }                      
                    }
                    else if (_attributeID == 28)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.FeaturedTo = itemInfo.FeaturedTo;
                        }
                        else
                        {
                            itemInfo.FeaturedTo = formVars[i].value;
                        }                        
                    }
                    else if (_attributeID == 29)
                    {
                        itemInfo.IsSpecialOptionValueID = Convert.ToInt32(formVars[i].value);
                    }
                    else if (_attributeID == 30)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.SpecialFrom = itemInfo.SpecialFrom;
                        }
                        else
                        {
                            itemInfo.SpecialFrom = formVars[i].value;
                        }                     
                    }
                    else if (_attributeID == 31)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.SpecialTo = itemInfo.SpecialTo;
                        }
                        else
                        {
                            itemInfo.SpecialTo = formVars[i].value;
                        }                            
                    }
                    else if (_attributeID == 32 && formVars[i].value != "")
                    {
                        itemInfo.Length = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 33 && formVars[i].value != "")
                    {
                        itemInfo.Height = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 34 && formVars[i].value != "")
                    {
                        itemInfo.Width = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 35)
                    {
                        itemInfo.IsPromo = Convert.ToInt32(formVars[i].value);
                    }
                    else if (_attributeID == 37)
                    {
                        itemInfo.ServiceDuration = Convert.ToInt32(formVars[i].value);
                    }
                    else if (_attributeID == 44 && formVars[i].value != "")
                    {
                        itemInfo.CostPrice = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 45 && formVars[i].value != "")
                    {
                        itemInfo.SpecialPrice = Convert.ToDecimal(formVars[i].value);
                    }
                    else if (_attributeID == 46)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.SpecialPriceFrom = itemInfo.SpecialPriceFrom;
                        }
                        else
                        {
                            itemInfo.SpecialPriceFrom = formVars[i].value;
                        }                         
                    }
                    else if (_attributeID == 47)
                    {
                        if (formVars[i].value == "" || formVars[i].value == null)
                        {
                            itemInfo.SpecialPriceTo = itemInfo.SpecialPriceTo;
                        }
                        else
                        {
                            itemInfo.SpecialPriceTo = formVars[i].value;
                        }                         
                    }
                    else if (_attributeID == 48 && formVars[i].value != "")
                    {
                        itemInfo.ManufacturerPrice = Convert.ToDecimal(formVars[i].value);
                    }

                }

                if (_attributeID == 37)
                {
                    if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                    {
                        itemAttribute.IntValue = int.Parse(formVars[i].value);
                        listItemAttributes.Add(itemAttribute);
                    }
                    else
                    {
                        isFormValid = false;
                        break;
                    }
                }
                else if (_attributeID == 35)
                {
                    if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                    {
                        itemAttribute.OptionValues = formVars[i].value;
                        listItemAttributes.Add(itemAttribute);
                    }
                    else
                    {
                        isFormValid = false;
                        break;
                    }
                }

                if (_attributeID > 48)
                {
                    if (_inputTypeID == 1)
                    {
                        if (_ValidationTypeID == 3)
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                itemAttribute.DecimalValue = decimal.Parse(formVars[i].value);
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }
                        else if (_ValidationTypeID == 5)
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                itemAttribute.IntValue = int.Parse(formVars[i].value);
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }
                        else
                        {
                            if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                            {
                                itemAttribute.NvarcharValue = formVars[i].value;
                            }
                            else
                            {
                                isFormValid = false;
                                break;
                            }
                        }
                    }
                    else if (_inputTypeID == 2)
                    {
                        if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                        {
                            itemAttribute.TextValue = formVars[i].value;
                        }
                        else
                        {
                            isFormValid = false;
                            break;
                        }
                    }
                    else if (_inputTypeID == 3)
                    {
                        if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                        {
                            if (!string.IsNullOrEmpty(formVars[i].value))
                            {
                                itemAttribute.DateValue = DateTime.Parse(formVars[i].value);
                            }
                        }
                        else
                        {
                            isFormValid = false;
                            break;
                        }
                    }
                    else if (_inputTypeID == 4)
                    {
                        if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                        {
                            if (!string.IsNullOrEmpty(attribValue))
                            {
                                itemAttribute.BooleanValue = (formVars[i].value == "1" ||
                                                              formVars[i].value.ToLower() == "true")
                                                                 ? true
                                                                 : false;
                            }
                            else
                            {
                                itemAttribute.BooleanValue = false;
                            }
                        }
                        else
                        {
                            isFormValid = false;
                            break;
                        }
                    }
                    else if (_inputTypeID == 5 || _inputTypeID == 6 || _inputTypeID == 9 || _inputTypeID == 10 ||
                             _inputTypeID == 11 || _inputTypeID == 12)
                    {
                        if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                        {
                            itemAttribute.OptionValues = formVars[i].value;
                        }
                        else
                        {
                            isFormValid = false;
                            break;
                        }
                    }
                    else if (_inputTypeID == 7)
                    {
                        if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID, formVars[i].value))
                        {
                            itemAttribute.DecimalValue = decimal.Parse(formVars[i].value);
                        }
                        else
                        {
                            isFormValid = false;
                            break;
                        }
                    }

                    else if (_inputTypeID == 8)
                    {
                        if (imageCounterFirst % 2 == 0)
                        {
                            toInsertIntoDB = false;
                            if (!string.IsNullOrEmpty(formVars[i].value) &&
                                formVars[i].value.ToLower() != "undefined")
                            {
                                if (formValidation.ValidateValue(formVars[i].name, _ValidationTypeID,
                                                                 formVars[i].value))
                                {
                                    imageVar = attribValue;
                                }
                                else
                                {
                                    isFormValid = false;
                                    break;
                                }
                            }
                            else
                            {
                                imageVar = "";
                            }
                        }
                        else
                        {
                            toInsertIntoDB = true;

                            if (attribValue != imageVar)
                            {
                                //_imageVar = _imageVar.Replace("../", "");
                                imageVar = imageVar.Replace("/", "\\");
                                //attribValue = attribValue.Replace("../", "");
                                attribValue = attribValue.Replace("/", "\\");

                                string tempFolder = @"Upload\temp";
                                FileHelperController fileObj = new FileHelperController();
                                attribValue = fileObj.MoveFileToModuleFolder(tempFolder, attribValue, imageVar,
                                                                             itemLargeThumbNailHeight,
                                                                             itemLargeThumbNailWidth,
                                                                             itemMediumThumbNailHeight,
                                                                             itemMediumThumbNailWidth,
                                                                             itemSmallThumbNailHeight,
                                                                             itemSmallThumbNailWidth,
                                                                             @"Modules\AspxCommerce\AspxItemsManagement\uploads\",
                                                                             itemObj.ItemId, "item_");
                                itemAttribute.FileValue =
                                    attribValue.Replace(@"Modules\AspxCommerce\AspxItemsManagement\uploads\", " ");
                            }
                            else
                            {
                                itemAttribute.FileValue =
                                    attribValue.Replace(@"Modules\AspxCommerce\AspxItemsManagement\uploads\", " ");
                            }
                        }
                        imageCounterFirst++;
                    }
                    if (toInsertIntoDB)
                    {
                        listItemAttributes.Add(itemAttribute);
                    }
                }
            }
            if (isFormValid)
            {
                string groupPrices = GetItemGroupPriceInString(itemObj.GroupPrice, itemObj.ItemId);
                itemObj.ItemId = AspxItemMgntProvider.SaveUpdateItemAttributes(itemObj, aspxCommonObj, true,
                                                                               isModified, itemInfo,
                                                                               listItemAttributes, attributeIDs,
                                                                               hasSystemAttributesOnly, updateFlag, groupPrices);
            }
            else
            {
                throw new Exception("Form is not valid one");
            }

            return itemObj.ItemId;
        }
        public int AddItem(ItemsInfo.ItemSaveBasicInfo itemObj, AspxCommonInfo aspxCommonObj, bool isActive, bool isModified,
            string sku, string activeFrom, string activeTo, string hidePrice, string isHideInRSS, string isHideToAnonymous,
             bool updateFlag)
        {
            try
            {
                List<KeyValuePair<string, object>> parameterCollection = new List<KeyValuePair<string, object>>();
                parameterCollection.Add(new KeyValuePair<string, object>("@ItemID", itemObj.ItemId));
                parameterCollection.Add(new KeyValuePair<string, object>("@ItemTypeID", itemObj.ItemTypeId));
                parameterCollection.Add(new KeyValuePair<string, object>("@AttributeSetID", itemObj.AttributeSetId));
                parameterCollection.Add(new KeyValuePair<string, object>("@SKU", sku));
                parameterCollection.Add(new KeyValuePair<string, object>("@TaxRuleID", itemObj.TaxRuleId));
                parameterCollection.Add(new KeyValuePair<string, object>("@ActiveFrom", activeFrom));
                parameterCollection.Add(new KeyValuePair<string, object>("@ActiveTo", activeTo));
                parameterCollection.Add(new KeyValuePair<string, object>("@HidePrice", hidePrice));
                parameterCollection.Add(new KeyValuePair<string, object>("@HideInRSSFeed", isHideInRSS));
                parameterCollection.Add(new KeyValuePair<string, object>("@HideToAnonymous", isHideToAnonymous));
                //For Static tabs
                parameterCollection.Add(new KeyValuePair<string, object>("@CategoriesIDs", itemObj.CategoriesIds));
                parameterCollection.Add(new KeyValuePair<string, object>("@RelatedItemsIDs", itemObj.RelatedItemsIds));
                parameterCollection.Add(new KeyValuePair<string, object>("@UpSellItemsIDs", itemObj.UpSellItemsIds));
                parameterCollection.Add(new KeyValuePair<string, object>("@CrossSellItemsIDs", itemObj.CrossSellItemsIds));

                parameterCollection.Add(new KeyValuePair<string, object>("@StoreID", aspxCommonObj.StoreID));
                parameterCollection.Add(new KeyValuePair<string, object>("@PortalID", aspxCommonObj.PortalID));
                parameterCollection.Add(new KeyValuePair<string, object>("@UserName", aspxCommonObj.UserName));
                parameterCollection.Add(new KeyValuePair<string, object>("@CultureName", aspxCommonObj.CultureName));
                parameterCollection.Add(new KeyValuePair<string, object>("@IsActive", isActive));
                parameterCollection.Add(new KeyValuePair<string, object>("@IsModified", isModified));
                parameterCollection.Add(new KeyValuePair<string, object>("@DownloadInfos", itemObj.DownloadItemsValue));
                parameterCollection.Add(new KeyValuePair<string, object>("@UpdateFlag", updateFlag));

                SQLHandler sqlH = new SQLHandler();
                return sqlH.ExecuteNonQueryAsGivenType<int>("dbo.usp_Aspx_ItemAddUpdate", parameterCollection,"@NewItemID");
            }
            catch (Exception e)
            {
                throw e;
            }
        }
       public static int SaveUpdateItemAttributes(ItemsInfo.ItemSaveBasicInfo itemObj, AspxCommonInfo aspxCommonObj, bool isActive, bool isModified,
           ItemInformationDetailsInfo itemInfoDetails,
                    List<ItemAttributeDetailsInfo> listIA, string attributeIDs, bool hasSystemAttributesOnly,
                        bool updateFlag,string groupPrices)
       {
           int newItemID = 0;
           try
           {
               List<KeyValuePair<string, object>> parameterCollection = CommonParmBuilder.GetParamSPUC(aspxCommonObj);
               parameterCollection.Add(new KeyValuePair<string, object>("@ItemID", itemObj.ItemId));
               parameterCollection.Add(new KeyValuePair<string, object>("@ItemTypeID", itemObj.ItemTypeId));
               parameterCollection.Add(new KeyValuePair<string, object>("@AttributeSetID", itemObj.AttributeSetId));
               parameterCollection.Add(new KeyValuePair<string, object>("@TaxRuleID", itemObj.TaxRuleId));

               parameterCollection.Add(new KeyValuePair<string, object>("@SKU", itemInfoDetails.SKU));
               parameterCollection.Add(new KeyValuePair<string, object>("@ActiveFrom", itemInfoDetails.ActiveFrom));
               parameterCollection.Add(new KeyValuePair<string, object>("@ActiveTo", itemInfoDetails.ActiveTo));
               parameterCollection.Add(new KeyValuePair<string, object>("@HidePrice", itemInfoDetails.HidePrice));
               parameterCollection.Add(new KeyValuePair<string, object>("@HideInRSSFeed",
                                                                        itemInfoDetails.HideInRSSFeed));
               parameterCollection.Add(new KeyValuePair<string, object>("@HideToAnonymous",
                                                                        itemInfoDetails.HideToAnonymous));

               parameterCollection.Add(new KeyValuePair<string, object>("@Name", itemInfoDetails.Name));
               parameterCollection.Add(new KeyValuePair<string, object>("@Description", itemInfoDetails.Description));
               parameterCollection.Add(new KeyValuePair<string, object>("@ShortDescription",
                                                                        itemInfoDetails.ShortDescription));
               parameterCollection.Add(new KeyValuePair<string, object>("@Weight", itemInfoDetails.Weight));
               parameterCollection.Add(new KeyValuePair<string, object>("@Quantity", itemInfoDetails.Quantity));
               parameterCollection.Add(new KeyValuePair<string, object>("@Price", itemInfoDetails.Price));
               parameterCollection.Add(new KeyValuePair<string, object>("@ListPrice", itemInfoDetails.ListPrice));
               parameterCollection.Add(new KeyValuePair<string, object>("@NewFromDate", itemInfoDetails.NewFromDate));
               parameterCollection.Add(new KeyValuePair<string, object>("@NewToDate", itemInfoDetails.NewToDate));

               parameterCollection.Add(new KeyValuePair<string, object>("@MetaTitle", itemInfoDetails.MetaTitle));
               parameterCollection.Add(new KeyValuePair<string, object>("@MetaKeyword", itemInfoDetails.MetaKeyword));
               parameterCollection.Add(new KeyValuePair<string, object>("@MetaDescription",
                                                                        itemInfoDetails.MetaDescription));
               parameterCollection.Add(new KeyValuePair<string, object>("@VisibilityOptionValueID",
                                                                        itemInfoDetails.VisibilityOptionValueID));
               parameterCollection.Add(new KeyValuePair<string, object>("@IsFeaturedOptionValueID",
                                                                        itemInfoDetails.IsFeaturedOptionValueID));
               parameterCollection.Add(new KeyValuePair<string, object>("@FeaturedFrom",
                                                                        itemInfoDetails.FeaturedFrom));
               parameterCollection.Add(new KeyValuePair<string, object>("@FeaturedTo", itemInfoDetails.FeaturedTo));

               parameterCollection.Add(new KeyValuePair<string, object>("@IsSpecialOptionValueID",
                                                                        itemInfoDetails.IsSpecialOptionValueID));
               parameterCollection.Add(new KeyValuePair<string, object>("@SpecialFrom", itemInfoDetails.SpecialFrom));
               parameterCollection.Add(new KeyValuePair<string, object>("@SpecialTo", itemInfoDetails.SpecialTo));
               parameterCollection.Add(new KeyValuePair<string, object>("@Length", itemInfoDetails.Length));
               parameterCollection.Add(new KeyValuePair<string, object>("@Height", itemInfoDetails.Height));
               parameterCollection.Add(new KeyValuePair<string, object>("@Width", itemInfoDetails.Width));
               parameterCollection.Add(new KeyValuePair<string, object>("@IsPromo", itemInfoDetails.IsPromo));
               parameterCollection.Add(new KeyValuePair<string, object>("@ServiceDuration",
                                                                        itemInfoDetails.ServiceDuration));

               parameterCollection.Add(new KeyValuePair<string, object>("@HasSystemAttributesOnly",
                                                                        hasSystemAttributesOnly));
               parameterCollection.Add(new KeyValuePair<string, object>("@AttributeIDs", attributeIDs));

               //For Static tabs
               parameterCollection.Add(new KeyValuePair<string, object>("@CategoriesIDs", itemObj.CategoriesIds));
               parameterCollection.Add(new KeyValuePair<string,object>("@AssociatedItemIDs",itemObj.AssociatedItemIds));
               parameterCollection.Add(new KeyValuePair<string, object>("@RelatedItemsIDs", itemObj.RelatedItemsIds));
               parameterCollection.Add(new KeyValuePair<string, object>("@UpSellItemsIDs", itemObj.UpSellItemsIds));
               parameterCollection.Add(new KeyValuePair<string, object>("@CrossSellItemsIDs", itemObj.CrossSellItemsIds));

               parameterCollection.Add(new KeyValuePair<string, object>("@IsActive", isActive));
               parameterCollection.Add(new KeyValuePair<string, object>("@IsModified", isModified));
               parameterCollection.Add(new KeyValuePair<string, object>("@DownloadInfos", itemObj.DownloadItemsValue));
               parameterCollection.Add(new KeyValuePair<string, object>("@UpdateFlag", updateFlag));

               parameterCollection.Add(new KeyValuePair<string, object>("@BrandID", itemObj.BrandId));
               parameterCollection.Add(new KeyValuePair<string, object>("@CurrencyCode", itemObj.CurrencyCode));
               parameterCollection.Add(new KeyValuePair<string, object>("@VideosIDs", itemObj.ItemVideoIDs));

               //For settings tabs
               parameterCollection.Add(new KeyValuePair<string, object>("@IsManageInventory", itemInfoDetails.IsManageInventory));
               parameterCollection.Add(new KeyValuePair<string, object>("@IsUsedStoreSetting", itemInfoDetails.IsUsedStoreSetting));
               parameterCollection.Add(new KeyValuePair<string, object>("@MinCartQuantity", itemInfoDetails.MinCartQuantity));
               parameterCollection.Add(new KeyValuePair<string, object>("@MaxCartQuantity", itemInfoDetails.MaxCartQuantity));

               parameterCollection.Add(new KeyValuePair<string, object>("@LowStockQuantity", itemInfoDetails.LowStockQuantity));
               parameterCollection.Add(new KeyValuePair<string, object>("@OutOfStockQuantity", itemInfoDetails.OutOfStockQuantity));

               //for price eg.cost price
               //For settings tabs
               parameterCollection.Add(new KeyValuePair<string, object>("@CostPrice", itemInfoDetails.CostPrice));
               parameterCollection.Add(new KeyValuePair<string, object>("@SpecialPrice", itemInfoDetails.SpecialPrice));
               parameterCollection.Add(new KeyValuePair<string, object>("@SpecialPriceFrom", itemInfoDetails.SpecialPriceFrom));
               parameterCollection.Add(new KeyValuePair<string, object>("@SpecialPriceTo", itemInfoDetails.SpecialPriceTo));
               parameterCollection.Add(new KeyValuePair<string, object>("@ManufacturerPrice", itemInfoDetails.ManufacturerPrice));
               parameterCollection.Add(new KeyValuePair<string, object>("@GroupPrices", groupPrices));

               SQLHandler sqlH = new SQLHandler();
               newItemID = sqlH.ExecuteNonQueryAsGivenType<int>("dbo.usp_Aspx_ItemAddUpdate", parameterCollection,
                                                                "@NewItemID");

               int attributeID,inputTypeID, validationTypeID, groupID, displayOrder;
               bool isIncludeInPriceRule;
               string valueType = string.Empty;

               if (hasSystemAttributesOnly && itemObj.AttributeSetId==3)
               {

                   foreach (ItemAttributeDetailsInfo ia in listIA)
                   {
                       parameterCollection.Clear();
                       attributeID = ia.AttributeID;                      
                       inputTypeID = ia.InputTypeID;
                       validationTypeID = ia.ValidationTypeID;
                       groupID = ia.GroupID;
                       isIncludeInPriceRule = ia.IsIncludeInPriceRule;
                       displayOrder = ia.DisplayOrder;
                       if (attributeID == 37)
                       {                         
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue", ia.IntValue));                           
                       }
                       else if (attributeID == 35)
                       {                          
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue",
                                                                                    ia.OptionValues));                          
                       }

                       parameterCollection.Add(new KeyValuePair<string, object>("@StoreID", aspxCommonObj.StoreID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@PortalID", aspxCommonObj.PortalID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@UserName", aspxCommonObj.UserName));
                       parameterCollection.Add(new KeyValuePair<string, object>("@CultureName",
                                                                                aspxCommonObj.CultureName));
                       parameterCollection.Add(new KeyValuePair<string, object>("@ItemID", newItemID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@AttributeSetID",
                                                                                itemObj.AttributeSetId));
                       parameterCollection.Add(new KeyValuePair<string, object>("@IsActive", isActive));
                       parameterCollection.Add(new KeyValuePair<string, object>("@IsModified", isModified));
                       parameterCollection.Add(new KeyValuePair<string, object>("@AttributeID", attributeID));                       
                       parameterCollection.Add(new KeyValuePair<string, object>("@InputTypeID", inputTypeID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@ValidationTypeID", validationTypeID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@GroupID", groupID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@IsIncludeInPriceRule",
                                                                                isIncludeInPriceRule));
                       parameterCollection.Add(new KeyValuePair<string, object>("@DisplayOrder", displayOrder));
                       sqlH.ExecuteNonQuery("dbo.usp_Aspx_ItemDynamicAttributesAddUpdate",
                                            parameterCollection);
                   }
               }


               if (!hasSystemAttributesOnly)
               {
                   foreach (ItemAttributeDetailsInfo ia in listIA)
                   {
                       parameterCollection.Clear();
                       attributeID = ia.AttributeID;                      
                       inputTypeID = ia.InputTypeID;
                       validationTypeID = ia.ValidationTypeID;
                       groupID = ia.GroupID;
                       isIncludeInPriceRule = ia.IsIncludeInPriceRule;
                       displayOrder = ia.DisplayOrder;
                       if (inputTypeID == 1)
                       {
                           if (validationTypeID == 3)
                           {                              
                               parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue",
                                                                                        ia.DecimalValue));                              
                           }
                           else if (validationTypeID == 5)
                           {                              
                               parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue", ia.IntValue));                              
                           }
                           else
                           {                              
                               parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue",
                                                                                        ia.NvarcharValue));                              
                           }
                       }
                       else if (inputTypeID == 2)
                       {                          
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue", ia.TextValue));                         
                       }
                       else if (inputTypeID == 3)
                       {                          
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue", ia.DateValue));                          
                       }
                       else if (inputTypeID == 4)
                       {                          
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue", ia.BooleanValue));                          
                       }
                       else if (inputTypeID == 5 || inputTypeID == 6 || inputTypeID == 9 || inputTypeID == 10 ||
                                inputTypeID == 11 || inputTypeID == 12)
                       {                          
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue",
                                                                                   ia.OptionValues));                          
                       }
                       else if (inputTypeID == 7)
                       {                          
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue",
                                                                                    ia.DecimalValue));                           
                       }
                       else if (inputTypeID == 8)
                       {                          
                           parameterCollection.Add(new KeyValuePair<string, object>("@AttributeValue", ia.FileValue));                          
                       }

                       parameterCollection.Add(new KeyValuePair<string, object>("@StoreID", aspxCommonObj.StoreID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@PortalID", aspxCommonObj.PortalID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@UserName", aspxCommonObj.UserName));
                       parameterCollection.Add(new KeyValuePair<string, object>("@CultureName",
                                                                                aspxCommonObj.CultureName));
                       parameterCollection.Add(new KeyValuePair<string, object>("@ItemID", newItemID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@AttributeSetID",
                                                                                itemObj.AttributeSetId));
                       parameterCollection.Add(new KeyValuePair<string, object>("@IsActive", isActive));
                       parameterCollection.Add(new KeyValuePair<string, object>("@IsModified", isModified));
                       parameterCollection.Add(new KeyValuePair<string, object>("@AttributeID", attributeID));                       
                       parameterCollection.Add(new KeyValuePair<string, object>("@InputTypeID", inputTypeID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@ValidationTypeID", validationTypeID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@GroupID", groupID));
                       parameterCollection.Add(new KeyValuePair<string, object>("@IsIncludeInPriceRule",
                                                                                isIncludeInPriceRule));
                       parameterCollection.Add(new KeyValuePair<string, object>("@DisplayOrder", displayOrder));
                       sqlH.ExecuteNonQuery("dbo.usp_Aspx_ItemDynamicAttributesAddUpdate",
                                            parameterCollection);

                   }
               }
           }
           catch
               (Exception e)
           {
               throw e;
           }
           return newItemID;
       }