Пример #1
0
        public override bool SaveStep(ref System.Collections.Specialized.NameValueCollection queryString)
        {
            Page.Validate();

            if (Page.IsValid)
            {
                try
                {
                    dataObjectEvent.Title       = Common.Extensions.StripHTMLTags(this.TxtTitle.Text);
                    dataObjectEvent.Description = Common.Extensions.StripHTMLTags(this.TxtDesc.Text).CropString(20000);
                    dataObjectEvent.Content     = this.TxtEvent.Content;
                    dataObjectEvent.Website     = !string.IsNullOrEmpty(TxtWebsite.Text) ? new Uri(TxtWebsite.Text) : null;
                    dataObjectEvent.TagList     = Common.Extensions.StripHTMLTags(this.HFTagWords.Value);
                    dataObjectEvent.Status      = ObjectStatus.Public;
                    dataObjectEvent.ShowState   = ObjectShowState.Published;
                    dataObjectEvent.Copyright   = 0;
                    double geoLat;
                    if (double.TryParse(this.HFGeoLat.Value, out geoLat))
                    {
                        dataObjectEvent.Geo_Lat = geoLat;
                    }
                    double geoLong;
                    if (double.TryParse(this.HFGeoLong.Value, out geoLong))
                    {
                        dataObjectEvent.Geo_Long = geoLong;
                    }
                    dataObjectEvent.Zip         = this.HFZip.Value;
                    dataObjectEvent.City        = this.HFCity.Value;
                    dataObjectEvent.Street      = this.HFStreet.Value;
                    dataObjectEvent.CountryCode = this.HFCountry.Value;

                    if (this.RDPFromDate.SelectedDate.HasValue)
                    {
                        dataObjectEvent.StartDate = this.RDPFromDate.SelectedDate.Value;
                    }
                    dataObjectEvent.EndDate = RDPToDate.SelectedDate.HasValue ? RDPToDate.SelectedDate.Value : dataObjectEvent.StartDate;
                    if (dataObjectEvent.StartDate == dataObjectEvent.EndDate)
                    {
                        dataObjectEvent.Featured = 1;
                    }
                    else
                    {
                        dataObjectEvent.Featured = 2;
                    }
                    dataObjectEvent.Time     = Common.Extensions.StripHTMLTags(this.TxtTime.Text);
                    dataObjectEvent.Price    = Common.Extensions.StripHTMLTags(this.TxtPrice.Text);
                    dataObjectEvent.Age      = Common.Extensions.StripHTMLTags(this.TxtAge.Text);
                    dataObjectEvent.Geo_Lat  = double.MinValue;
                    dataObjectEvent.Geo_Long = double.MinValue;

                    if (DDLocations.SelectedValue.IsGuid())
                    {
                        DataObjectLocation location = DataObject.Load <DataObjectLocation>(DDLocations.SelectedValue.ToGuid());
                        if (location.Geo_Lat != Double.MinValue && location.Geo_Long != Double.MinValue)
                        {
                            dataObjectEvent.Geo_Lat  = location.Geo_Lat;
                            dataObjectEvent.Geo_Long = location.Geo_Long;
                        }
                        DataObject.RelDelete(new RelationParams()
                        {
                            Udc = UserDataContext.GetUserDataContext(),
                            ParentObjectType = location.ObjectType,
                            ChildObjectID    = dataObjectEvent.ObjectID,
                            ChildObjectType  = dataObjectEvent.ObjectType
                        });
                        DataObject.RelInsert(new RelationParams()
                        {
                            Udc              = UserDataContext.GetUserDataContext(),
                            ParentObjectID   = location.ObjectID,
                            ParentObjectType = location.ObjectType,
                            ChildObjectID    = dataObjectEvent.ObjectID,
                            ChildObjectType  = dataObjectEvent.ObjectType
                        }, 0);
                    }
                    List <string> tags = new List <string>();
                    foreach (ListItem item in CblType.Items)
                    {
                        if (item.Selected)
                        {
                            tags.Add(item.Value);
                        }
                    }
                    dataObjectEvent.TagList = string.Join(",", tags.ToArray());

                    dataObjectEvent.Update(UserDataContext.GetUserDataContext());

                    return(true);
                }
                catch (Exception ex)
                {
                    LitMsg.Text = language.GetString("MessageSaveError") + ex.Message;
                }
            }
            return(false);
        }
Пример #2
0
        private bool Save()
        {
            try
            {
                List <string> tags = new List <string>();
                foreach (ListItem item in CblType.Items)
                {
                    if (item.Selected)
                    {
                        tags.Add(item.Value);
                    }
                }
                DateTime?startDate = null;
                DateTime?endDate   = null;
                try { startDate = DateTime.Parse(TxtStartDate.Text); }
                catch { }
                try { endDate = DateTime.Parse(TxtEndDate.Text); }
                catch { }

                if (string.IsNullOrEmpty(TxtTitle.Text.StripHTMLTags()))
                {
                    pnlStatus.Visible = true;
                    litStatus.Text    = language.GetString("MessageTitleRequired");
                }
                else if (tags.Count == 0)
                {
                    pnlStatus.Visible = true;
                    litStatus.Text    = language.GetString("MessageLocationTypeRequired");
                }
                else if (!startDate.HasValue)
                {
                    pnlStatus.Visible = true;
                    litStatus.Text    = language.GetString("MessageEventDateRequired");
                }
                else if (endDate.HasValue && startDate.Value > endDate.Value)
                {
                    pnlStatus.Visible = true;
                    litStatus.Text    = language.GetString("MessageStartDateAfterEndDate");
                }
                else
                {
                    dataObjectEvent.Title       = Common.Extensions.StripHTMLTags(this.TxtTitle.Text);
                    dataObjectEvent.Description = Common.Extensions.StripHTMLTags(this.TxtDesc.Text).CropString(20000);
                    dataObjectEvent.Content     =
                        TxtText.Text.StripHTMLTags().Replace("\r\n", "\n").Replace("\r", "\n").Replace("\n", "<br/>");
                    dataObjectEvent.Copyright = 0;
                    dataObjectEvent.StartDate = startDate.Value;
                    dataObjectEvent.EndDate   = endDate.HasValue ? endDate.Value : startDate.Value;
                    if (dataObjectEvent.StartDate == dataObjectEvent.EndDate)
                    {
                        dataObjectEvent.Featured = 1;
                    }
                    else
                    {
                        dataObjectEvent.Featured = 2;
                    }
                    dataObjectEvent.Time     = Common.Extensions.StripHTMLTags(this.TxtTime.Text);
                    dataObjectEvent.Price    = Common.Extensions.StripHTMLTags(this.TxtPrice.Text);
                    dataObjectEvent.Age      = Common.Extensions.StripHTMLTags(this.TxtAge.Text);
                    dataObjectEvent.TagList  = string.Join(",", tags.ToArray());
                    dataObjectEvent.Geo_Lat  = double.MinValue;
                    dataObjectEvent.Geo_Long = double.MinValue;

                    if (objectExisting)
                    {
                        dataObjectEvent.Update(UserDataContext.GetUserDataContext());
                    }
                    else
                    {
                        dataObjectEvent.Insert(UserDataContext.GetUserDataContext());
                    }

                    if (DdlLocations.SelectedValue.IsGuid())
                    {
                        DataObjectLocation location =
                            DataObject.Load <DataObjectLocation>(DdlLocations.SelectedValue.ToGuid());
                        if (location.Geo_Lat != Double.MinValue && location.Geo_Long != Double.MinValue)
                        {
                            dataObjectEvent.Geo_Lat  = location.Geo_Lat;
                            dataObjectEvent.Geo_Long = location.Geo_Long;
                        }
                        DataObject.RelDelete(new RelationParams()
                        {
                            Udc = UserDataContext.GetUserDataContext(),
                            ParentObjectType = location.ObjectType,
                            ChildObjectID    = dataObjectEvent.ObjectID,
                            ChildObjectType  = dataObjectEvent.ObjectType
                        });
                        DataObject.RelInsert(new RelationParams()
                        {
                            Udc              = UserDataContext.GetUserDataContext(),
                            ParentObjectID   = location.ObjectID,
                            ParentObjectType = location.ObjectType,
                            ChildObjectID    = dataObjectEvent.ObjectID,
                            ChildObjectType  = dataObjectEvent.ObjectType
                        }, 0);
                    }
                    dataObjectEvent.Update(UserDataContext.GetUserDataContext());

                    return(true);
                }
            }
            catch (Exception e)
            {
                pnlStatus.Visible = true;
                litStatus.Text    = "Event konnte nicht gespeichert werden: " + e.Message;
            }
            return(false);
        }