public ActionResult SelectGroupFields(string hid1, GroupFieldsViewModel grpfiled)
        {
            Account accountObj = (Account)Session["account"];
            var allFields = CCFieldRepository.CCFolderFields;
            var grpfields = allFields.Where(u => u.FolderID == grpfiled.FolderID & u.AccountGUID == accountObj.AccountGUID).ToList();

            CCGroupField objgrpfield = new CCGroupField();
            User userObj = (User)Session["user"];
            var obj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(hid1);
            int i = 1;

            if (grpfiled.IsSave == false)
            {
                CCGroupFieldRepository.DeleteFieldsByGroup(grpfiled.GroupID);
            }
            foreach (var item in obj)
            {
                var res = grpfields.Find(field => field.FieldName == item);
                if (res != null) objgrpfield.FieldID = res.FieldID;
                objgrpfield.FieldOrder = i++;
                objgrpfield.FolderID = grpfiled.FolderID;
                objgrpfield.GroupID = grpfiled.GroupID;
                objgrpfield.AccountGUID = accountObj.AccountGUID;
                var aa = CCGroupFieldRepository.SaveGroupField(objgrpfield);

            }

            return RedirectToAction("ManageLayoutsAndGroups", "Folder", new { ID = grpfiled.FolderID });
        }
        public ActionResult SelectGroupFields(long ID)
        {
            GroupFieldsViewModel groupFields = new GroupFieldsViewModel();
            Account accountObj = (Account)Session["account"];
            //  get folder ID

            var groupDetails = CCGroupRepository.CCGroups.Where(u => u.GroupID == ID & u.AccountGUID == accountObj.AccountGUID).FirstOrDefault();
            long folderid = 0;
            if (groupDetails != null)
            {
                folderid = groupDetails.FolderID;
            }

            // get saved fields from groupfield table
            var savedFields = CCGroupFieldRepository.CCGroupsFields.Where(grp => grp.GroupID == ID & grp.AccountGUID == accountObj.AccountGUID).ToList();

            // get field by Folder
            User userObj = (User)Session["user"];
            var userToEdit = CCFieldRepository.CCFolderFields.Where(u => u.FolderID == folderid & u.AccountGUID == accountObj.AccountGUID).ToList();

            var fieldsName = userToEdit;
            List<string> savedFieldsName = new List<string>();

            foreach (var field in savedFields)
            {
                // add added fields name
                var resu = fieldsName.FirstOrDefault(x => x.FieldID == field.FieldID);
                if (resu != null)
                {
                    savedFieldsName.Add(resu.FieldName);
                }

                // remove added fields
                userToEdit.RemoveAll(exist => exist.FieldID == field.FieldID);

            }

            var fieldsNameToAllFields = userToEdit.Select(f => f.FieldName).ToList();
            groupFields.AllFields = fieldsNameToAllFields;
            groupFields.SavedFields = savedFieldsName;
            groupFields.FolderID = folderid;
            groupFields.GroupID = ID;

            if (savedFieldsName.Count == 0) groupFields.IsSave = true;
            else groupFields.IsSave = false;

            // return View(fieldsNameToAllFields);
            return View(groupFields);
        }