Example #1
0
        public virtual void SaveSecurityGroup(HttpContext context)
        {
            YZRequest request   = new YZRequest(context);
            string    mode      = request.GetString("mode");
            string    groupName = request.GetString("GroupName", mode == "new", null);

            JsonSerializer serializer = new JsonSerializer();
            StreamReader   reader     = new StreamReader(context.Request.InputStream);

            using (JsonTextReader streamReader = new JsonTextReader(reader))
            {
                JArray @params = serializer.Deserialize(streamReader) as JArray;

                SecurityGroup     group = @params[0].ToObject <SecurityGroup>(serializer);
                SIDPairCollection sids  = @params[1].ToObject <SIDPairCollection>(serializer);

                using (BPMConnection cn = new BPMConnection())
                {
                    cn.WebOpen();

                    if (mode == "edit")
                    {
                        if (groupName != group.GroupName)
                        {
                            GroupManager.RenameSecurityGroup(cn, groupName, group.GroupName);
                        }

                        GroupManager.UpdateSecutiryGroup(cn, group.GroupName, sids);
                    }
                    else
                    {
                        GroupManager.AddSecutiryGroup(cn, group.GroupName, sids);
                    }
                }
            }
        }