Пример #1
0
        public ActionResult ContentUpdate(int id, string name, string title, string body, int?roleid, string stayaftersave = null)
        {
            var content = DbUtil.ContentFromID(id);

            content.Name   = name;
            content.Title  = title;
            content.Body   = body;
            content.RoleID = roleid ?? 0;

            string sRenderType = DbUtil.Db.Setting("RenderEmailTemplate", "none");

            if (content.TypeID == ContentTypeCode.TypeEmailTemplate)
            {
                //                switch (sRenderType)
                //                {
                //                    case "Local":// Uses local server resources
                //                    case "true":
                var captureWebPageBytes = CaptureWebPageBytes(body, 100, 150);
                var ii = ImageData.Image.UpdateImageFromBits(content.ThumbID, captureWebPageBytes);
                if (ii == null)
                {
                    content.ThumbID = ImageData.Image.NewImageFromBits(captureWebPageBytes).Id;
                }
                //                        break;
                //
                //                    case "Service": // Used to send HTML to another server for offloaded processing
                //                        var coll = new NameValueCollection();
                //                        coll.Add("sHTML", body.Replace("\r", "").Replace("\n", "").Replace("\t", ""));
                //
                //                        var wc = new WebClient();
                //                        var resp = wc.UploadValues(ConfigurationManager.AppSettings["CreateThumbnailService"], "POST",
                //                            coll);
                //
                //                        ii = ImageData.DbUtil.Db.Images.FirstOrDefault(i => i.Id == content.ThumbID);
                //                        if (ii != null)
                //                            ImageData.Image.UpdateImageFromBits(content.ThumbID, resp);
                //                        else
                //                            content.ThumbID = ImageData.Image.NewImageFromBits(resp).Id;
                //                        break;
                //                }
                content.DateCreated = DateTime.Now;
            }
            DbUtil.Db.SubmitChanges();

            if (string.Compare(content.Name, "StandardExtraValues2", ignoreCase: true) == 0)
            {
                try
                {
                    StandardExtraValues.GetExtraValues();
                }
                catch (InvalidOperationException ex)
                {
                    if (ex.InnerException is System.Xml.XmlException)
                    {
                        return(Content(Util.EndShowMessage(ex.InnerException.Message, "javascript: history.go(-1)", "Go Back to Repair")));
                    }
                }
            }

            if (stayaftersave == "true")
            {
                return(RedirectEdit(content));
            }

            return(RedirectToAction("Index"));
        }
Пример #2
0
        public void ConvertToStandard(string name)
        {
            var oldfields = StandardExtraValues.GetExtraValues().ToList();

            StandardExtraValues.Field bits = null;
            ExtraValue    ev    = null;
            List <string> codes = null;
            var           v     = new CmsData.ExtraValue.Value {
                Name = name
            };

            switch (ExtraValueTable)
            {
            case "People":
                ev = (from vv in DbUtil.Db.PeopleExtras
                      where vv.Field == name
                      select new ExtraValue(vv, null)).First();

                bits = oldfields.SingleOrDefault(ff => ff.Codes.Contains(name));
                if (bits != null)
                {
                    codes             = bits.Codes;
                    ev.Type           = "Bits";
                    v.Name            = bits.name;
                    v.VisibilityRoles = bits.VisibilityRoles;
                }
                else
                {
                    var f = oldfields.SingleOrDefault(ff => ff.name == name);
                    if (f != null)
                    {
                        v.VisibilityRoles = f.VisibilityRoles;
                    }
                    if (ev.Type == "Code")
                    {
                        codes = (from vv in DbUtil.Db.PeopleExtras
                                 where vv.Field == name
                                 select vv.StrValue).Distinct().ToList();
                    }
                }
                break;

            case "Organization":
                ev = (from vv in DbUtil.Db.OrganizationExtras
                      where vv.Field == name
                      select new ExtraValue(vv, null)).First();
                if (ev.Type == "Code")
                {
                    codes = (from vv in DbUtil.Db.OrganizationExtras
                             where vv.Field == name
                             select vv.StrValue).Distinct().ToList();
                }
                break;

            case "Family":
                ev = (from vv in DbUtil.Db.FamilyExtras
                      where vv.Field == name
                      select new ExtraValue(vv, null)).First();
                if (ev.Type == "Code")
                {
                    codes = (from vv in DbUtil.Db.FamilyExtras
                             where vv.Field == name
                             select vv.StrValue).Distinct().ToList();
                }
                break;

            case "Meeting":
                ev = (from vv in DbUtil.Db.MeetingExtras
                      where vv.Field == name
                      select new ExtraValue(vv, null)).First();
                if (ev.Type == "Code")
                {
                    codes = (from vv in DbUtil.Db.MeetingExtras
                             where vv.Field == name
                             select vv.StrValue).Distinct().ToList();
                }
                break;

            default:
                return;
            }
            v.Type  = ev.Type;
            v.Codes = codes;
            var i = Views.GetViewsView(DbUtil.Db, ExtraValueTable, ExtraValueLocation);

            i.view.Values.Add(v);
            i.views.Save(DbUtil.Db);
        }