public void CreateManyPlaces(int count) { Random r = new Random(); ManagedSecurityContext sec = ManagedAccount.GetAdminSecurityContext(Session); // country TransitCountry t_country = new TransitCountry(); t_country.Name = Guid.NewGuid().ToString(); ManagedCountry country = new ManagedCountry(Session); country.CreateOrUpdate(t_country, sec); // state TransitState t_state = new TransitState(); t_state.Name = Guid.NewGuid().ToString(); t_state.Country = t_country.Name; ManagedState state = new ManagedState(Session); state.CreateOrUpdate(t_state, sec); // city TransitCity t_city = new TransitCity(); t_city.Name = Guid.NewGuid().ToString(); t_city.State = t_state.Name; t_city.Country = t_country.Name; ManagedCity city = new ManagedCity(Session); city.CreateOrUpdate(t_city, sec); // place type TransitPlaceType t_placetype = new TransitPlaceType(); t_placetype.Name = Guid.NewGuid().ToString(); ManagedPlaceType placetype = new ManagedPlaceType(Session); placetype.CreateOrUpdate(t_placetype, sec); for (int i = 0; i < count; i++) { TransitPlace t_place = new TransitPlace(); t_place.Name = Guid.NewGuid().ToString(); t_place.AccountId = sec.Account.Id; t_place.City = t_city.Name; t_place.Country = t_country.Name; t_place.State = t_state.Name; t_place.Street = string.Format("{0} {1} St.", r.Next(), Guid.NewGuid().ToString()); t_place.Zip = r.Next().ToString(); t_place.Type = t_placetype.Name; ManagedPlace place = new ManagedPlace(Session); place.CreateOrUpdate(t_place, sec); } }
public void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { SiteMapDataAttribute sitemapdata = new SiteMapDataAttribute(); sitemapdata.Add(new SiteMapDataAttributeNode("System Preferences", Request, "SystemPreferencesManage.aspx")); sitemapdata.Add(new SiteMapDataAttributeNode("Cities", Request, "SystemCitiesManage.aspx")); DomainClass cs = SessionManager.GetDomainClass("City"); inputName.MaxLength = cs["Name"].MaxLengthInChars; inputTag.MaxLength = cs["Tag"].MaxLengthInChars; string defaultcountry = SessionManager.GetCachedConfiguration("SnCore.Country.Default", "United States"); inputCountry.DataSource = SessionManager.GetCollection <TransitCountry, string>( defaultcountry, (ServiceQueryOptions)null, SessionManager.LocationService.GetCountriesWithDefault); inputCountry.DataBind(); if (RequestId > 0) { TransitCity tc = SessionManager.LocationService.GetCityById( SessionManager.Ticket, RequestId); inputName.Text = tc.Name; inputTag.Text = tc.Tag; ListItemManager.TrySelect(inputCountry, tc.Country); inputCountry_SelectedIndexChanged(sender, e); ListItemManager.TrySelect(inputState, tc.State); sitemapdata.Add(new SiteMapDataAttributeNode(tc.Name, Request.Url)); } else if (!string.IsNullOrEmpty(Request["city"])) { LocationSelectorCountryState ls = new LocationSelectorCountryState( this, true, inputCountry, inputState); ls.SelectLocation(sender, new LocationEventArgs(Request)); inputName.Text = Request["city"]; } else { inputCountry_SelectedIndexChanged(sender, e); panelMerge.Visible = false; sitemapdata.Add(new SiteMapDataAttributeNode("New City", Request.Url)); } StackSiteMap(sitemapdata); } SetDefaultButton(manageAdd); PageManager.SetDefaultButton(mergeLookup, panelMerge.Controls); }
public void save_Click(object sender, EventArgs e) { TransitCity tc = new TransitCity(); tc.Name = inputName.Text; tc.Id = RequestId; tc.Tag = inputTag.Text; tc.Country = inputCountry.SelectedValue; tc.State = inputState.SelectedValue; if (string.IsNullOrEmpty(tc.State) && inputState.Items.Count > 1) { throw new Exception("State is required."); } SessionManager.CreateOrUpdate<TransitCity>( tc, SessionManager.LocationService.CreateOrUpdateCity); Redirect("SystemCitiesManage.aspx"); }
public void save_Click(object sender, EventArgs e) { TransitCity tc = new TransitCity(); tc.Name = inputName.Text; tc.Id = RequestId; tc.Tag = inputTag.Text; tc.Country = inputCountry.SelectedValue; tc.State = inputState.SelectedValue; if (string.IsNullOrEmpty(tc.State) && inputState.Items.Count > 1) { throw new Exception("State is required."); } SessionManager.CreateOrUpdate <TransitCity>( tc, SessionManager.LocationService.CreateOrUpdateCity); Redirect("SystemCitiesManage.aspx"); }
public void ChangeCityWithAccountDefault(object sender, CityLocationEventArgs e) { if (!string.IsNullOrEmpty(e.City)) { TransitCity t_city = mPage.SessionManager.LocationService.GetCityByTag( mPage.SessionManager.Ticket, e.City); if (t_city != null) { SelectLocation(sender, new LocationEventArgs(t_city)); } else { mCity.Text = e.City; } } else { SelectLocation(sender, new LocationEventArgs(mPage.SessionManager.Account)); } }
public void gridManage_ItemCommand(object source, DataGridCommandEventArgs e) { switch (e.Item.ItemType) { case ListItemType.AlternatingItem: case ListItemType.Item: case ListItemType.SelectedItem: case ListItemType.EditItem: int id = int.Parse(e.Item.Cells[(int)Cells.id].Text); switch (e.CommandName) { case "Delete": TransitCity t_city = SessionManager.LocationService.GetCityById( SessionManager.Ticket, id); // deleting a city may need to orphan places TransitPlaceQueryOptions t_placeoptions = new TransitPlaceQueryOptions(); t_placeoptions.City = t_city.Name; t_placeoptions.Country = t_city.Country; t_placeoptions.State = t_city.State; t_placeoptions.PicturesOnly = false; int count = SessionManager.PlaceService.GetPlacesCount(SessionManager.Ticket, t_placeoptions); if (count > 0) { throw new Exception(string.Format("You must orphan {0} place(s) to delete this city.", count)); } SessionManager.Delete <TransitCity>(id, SessionManager.LocationService.DeleteCity); ReportInfo("City deleted."); gridManage.CurrentPageIndex = 0; gridManage_OnGetDataSource(source, e); gridManage.DataBind(); break; } break; } }
public void CreatePlace() { ManagedPlaceType type = new ManagedPlaceType(Session); ManagedCountry c = new ManagedCountry(Session); ManagedState t = new ManagedState(Session); ManagedCity s = new ManagedCity(Session); ManagedAccount a = new ManagedAccount(Session); try { a.Create("Test User", "testpassword", "*****@*****.**", DateTime.UtcNow, AdminSecurityContext); a.VerifyAllEmails(); a.AddDefaultPicture(); TransitCountry tc = new TransitCountry(); tc.Name = GetNewString(); TransitState tt = new TransitState(); tt.Name = GetNewString(); tt.Country = tc.Name; TransitCity ts = new TransitCity(); ts.Name = GetNewString(); ts.Country = tc.Name; ts.State = tt.Name; c.CreateOrUpdate(tc, AdminSecurityContext); t.CreateOrUpdate(tt, AdminSecurityContext); s.CreateOrUpdate(ts, AdminSecurityContext); TransitPlaceType t_type = new TransitPlaceType(); t_type.Name = GetNewString(); type.CreateOrUpdate(t_type, AdminSecurityContext); TransitPlace t_place = new TransitPlace(); t_place.Name = GetNewString(); t_place.Type = t_type.Name; t_place.City = ts.Name; t_place.Country = tc.Name; t_place.State = tt.Name; t_place.AccountId = a.Id; ManagedPlace m_place = new ManagedPlace(Session); m_place.CreateOrUpdate(t_place, a.GetSecurityContext()); } finally { try { a.Delete(AdminSecurityContext); type.Delete(AdminSecurityContext); s.Delete(AdminSecurityContext); t.Delete(AdminSecurityContext); c.Delete(AdminSecurityContext); } catch { } } }
public int CreateOrUpdateCity(string ticket, TransitCity city) { return(WebServiceImpl <TransitCity, ManagedCity, City> .CreateOrUpdate( ticket, city)); }
public LocationEventArgs(TransitCity city) : this(city.Country, city.State, city.Name, string.Empty) { }
public string Handle(string tag, string tagname, string tagvalue) { switch (tagname) { case "user": case "account": return(Handle <TransitAccount>(tagname, tagvalue, AccountService.GetAccountById, delegate(TransitAccount t_account) { return string.Format("<a href=\"{0}/AccountView.aspx?id={1}\">{2}</a>", WebsiteUrl, t_account.Id, Renderer.Render(t_account.Name)); })); case "place": return(Handle <TransitPlace>(tagname, tagvalue, PlaceService.GetPlaceById, delegate(TransitPlace t_place) { return string.Format("<a href=\"{0}/PlaceView.aspx?id={1}\">{2}</a>", WebsiteUrl, t_place.Id, Renderer.Render(t_place.Name)); })); case "group": return(Handle <TransitAccountGroup>(tagname, tagvalue, GroupService.GetAccountGroupById, delegate(TransitAccountGroup t_group) { return string.Format("<a href=\"{0}/AccountGroupView.aspx?id={1}\">{2}</a>", WebsiteUrl, t_group.Id, Renderer.Render(t_group.Name)); })); case "blog": return(Handle <TransitAccountBlog>(tagname, tagvalue, BlogService.GetAccountBlogById, delegate(TransitAccountBlog t_blog) { return string.Format("<a href=\"{0}/AccountBlogView.aspx?id={1}\">{2}</a>", WebsiteUrl, t_blog.Id, Renderer.Render(t_blog.Name)); })); case "event": return(Handle <TransitAccountEvent, long>(tagname, tagvalue, 0, EventService.GetAccountEventById, delegate(TransitAccountEvent t_event) { return string.Format("<a href=\"{0}/AccountEventView.aspx?id={1}\">{2}</a>", WebsiteUrl, t_event.Id, Renderer.Render(t_event.Name)); })); case "feed": return(Handle <TransitAccountFeed>(tagname, tagvalue, SyndicationService.GetAccountFeedById, delegate(TransitAccountFeed t_feed) { return string.Format("<a href=\"{0}/AccountFeedView.aspx?id={1}\">{2}</a>", WebsiteUrl, t_feed.Id, Renderer.Render(t_feed.Name)); })); case "discussion": return(Handle <TransitDiscussion>(tagname, tagvalue, DiscussionService.GetDiscussionById, delegate(TransitDiscussion t_discussion) { string name = string.IsNullOrEmpty(t_discussion.ParentObjectName) ? t_discussion.Name : t_discussion.ParentObjectName; string uri = string.IsNullOrEmpty(t_discussion.ParentObjectUri) ? string.Format("DiscussionView.aspx?id={0}", t_discussion.Id) : t_discussion.ParentObjectUri; return string.Format("<a href=\"{0}/{1}\">{2}</a>", WebsiteUrl, uri, Renderer.Render(name)); })); default: TransitPlace p = GetInstance <TransitPlace, string, string>( tagname, tagvalue, PlaceService.FindPlace); if (p == null) { // resole tag to a city name TransitCity t_city = GetInstance <TransitCity, string>( tagname, LocationService.GetCityByTag); if (t_city != null) { return(string.Format("<a href=\"{5}/PlaceView.aspx?city={0}&state={1}&country={2}&name={3}\">{4}</a>", Renderer.UrlEncode(t_city.Name), Renderer.UrlEncode(t_city.State), Renderer.UrlEncode(t_city.Country), Renderer.UrlEncode(tagvalue), Renderer.Render(tagvalue), WebsiteUrl)); } else { return(string.Format("<a href=\"{3}/PlaceView.aspx?city={0}&name={1}\">{2}</a>", Renderer.UrlEncode(tagname), Renderer.UrlEncode(tagvalue), Renderer.Render(tagvalue), WebsiteUrl)); } } else { return(string.Format("<a href=\"{2}/PlaceView.aspx?id={0}\">{1}</a>", p.Id, Renderer.Render(p.Name), WebsiteUrl)); } } }
public void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (RequestId > 0) { TransitPlace place = Place; TransitAccount account = PlaceAccount; if (place == null) { ReportWarning("Place does not exist."); panelPlace.Visible = false; return; } SiteMapDataAttribute sitemapdata = new SiteMapDataAttribute(); sitemapdata.Add(new SiteMapDataAttributeNode("Places", Request, "PlacesView.aspx")); sitemapdata.AddRange(SiteMapDataAttribute.GetLocationAttributeNodes(Request, "PlacesView.aspx", place.Country, place.State, place.City, place.Neighborhood, place.Type)); sitemapdata.Add(new SiteMapDataAttributeNode(place.Name, Request.Url)); StackSiteMap(sitemapdata); groups.PlaceId = RequestId; Title = Renderer.Render(string.Format("{0}, {1}", place.Name, place.City)); MetaDescription.Content = string.Format("Get photos, information and reviews on {0} and other places in {1} on {2}.", Renderer.Render(place.Name), Renderer.Render(place.City), Renderer.Render(SessionManager.GetCachedConfiguration("SnCore.Title", "SnCore"))); placeType.NavigateUrl = string.Format("PlacesView.aspx?city={0}&state={1}&country={2}&neighborhood={3}&type={4}", Renderer.UrlEncode(place.City), Renderer.UrlEncode(place.State), Renderer.UrlEncode(place.Country), Renderer.UrlEncode(place.Neighborhood), Renderer.UrlEncode(place.Type)); placeNeighborhood.NavigateUrl = string.Format("PlacesView.aspx?city={0}&state={1}&country={2}&neighborhood={3}", Renderer.UrlEncode(place.City), Renderer.UrlEncode(place.State), Renderer.UrlEncode(place.Country), Renderer.UrlEncode(place.Neighborhood)); placeCity.NavigateUrl = string.Format("PlacesView.aspx?city={0}&state={1}&country={2}", Renderer.UrlEncode(place.City), Renderer.UrlEncode(place.State), Renderer.UrlEncode(place.Country)); placeState.NavigateUrl = string.Format("PlacesView.aspx?state={0}&country={1}", Renderer.UrlEncode(place.State), Renderer.UrlEncode(place.Country)); placeCountry.NavigateUrl = string.Format("PlacesView.aspx?country={0}", Renderer.UrlEncode(place.Country)); linkDirections.HRef = DrivingDirectionsUrl; linkAdd.NavigateUrl = string.Format("PlaceEdit.aspx?city={0}&state={1}&country={2}&neighborhood={3}&type={4}", Renderer.UrlEncode(place.City), Renderer.UrlEncode(place.State), Renderer.UrlEncode(place.Country), Renderer.UrlEncode(place.Neighborhood), Renderer.UrlEncode(place.Type)); placeAccounts.PlaceId = RequestId; placeAccountEvents.PlaceId = RequestId; placeFriends.PlaceId = RequestId; attributesView.PlaceId = RequestId; picturesView.PlaceId = RequestId; labelDescription.Text = base.RenderEx(place.Description); panelDescription.Visible = !string.IsNullOrEmpty(labelDescription.Text); placeName.Text = Renderer.Render(place.Name); placeId.Text = string.Format("#{0}", place.Id); linkManagePictures.NavigateUrl = string.Format("PlacePicturesManage.aspx?id={0}", place.Id); linkClaimOwnership.Visible = !place.CanWrite; linkClaimOwnership.NavigateUrl = string.Format("AccountPlaceRequestEdit.aspx?pid={0}", place.Id); linkPlaceChangeRequestEdit.Visible = !place.CanWrite; linkPlaceChangeRequestEdit.NavigateUrl = string.Format("PlaceChangeRequestEdit.aspx?pid={0}", place.Id); if (account != null) { linkAddedBy.Text = Renderer.Render(account.Name); linkAddedBy.NavigateUrl = string.Format("AccountView.aspx?id={0}", account.Id); } else { linkAddedBy.Text = "a deleted user"; } labelAddedOn.Text = Adjust(place.Created).ToString("d"); linkAdminManageChanges.Visible = linkAdminEdit.Visible = place.CanWrite || SessionManager.IsAdministrator; linkAdminEdit.NavigateUrl = string.Format("PlaceEdit.aspx?id={0}", place.Id); linkAdminManageChanges.NavigateUrl = string.Format("PlaceChangeRequestsManage.aspx?id={0}", place.Id); linkAdminAttributes.NavigateUrl = string.Format("PlaceAttributesManage.aspx?id={0}", place.Id); linkMerge.NavigateUrl = string.Format("PlaceMerge.aspx?id={0}", place.Id); placeAddress.Text = Renderer.Render(place.Street); placeZip.Text = Renderer.Render(place.Zip); if (!string.IsNullOrEmpty(place.Fax)) { placeFax.Text = string.Format("{0} (fax)", Renderer.Render(place.Fax)); } if (!string.IsNullOrEmpty(place.Phone)) { placePhone.Text = string.Format("{0} (phone)", Renderer.Render(place.Phone)); } if (!string.IsNullOrEmpty(place.CrossStreet)) { placeCrossStreet.Text = string.Format("cross-street: {0}", Renderer.Render(place.CrossStreet)); } placeType.Text = Renderer.Render(place.Type); placeEmail.NavigateUrl = string.Format("mailto:{0}", Renderer.Render(place.Email)); placeEmail.Visible = !string.IsNullOrEmpty(place.Email); discussionPlaces.DiscussionId = SessionManager.GetCount <TransitDiscussion, string, int>( typeof(Place).Name, RequestId, SessionManager.DiscussionService.GetOrCreateDiscussionId); discussionPlaces.DataBind(); websitesView.PlaceId = RequestId; madlibs.ObjectId = RequestId; madlibs.Table = "Place"; madlibs.MadLibId = int.Parse(SessionManager.GetCachedConfiguration("SnCore.MadLibs.Place.Id", "0")); madlibs.ReturnUrl = Request.Url.PathAndQuery; madlibs.ObjectAccountId = place.AccountId; madlibs.QueryString = string.Format("&Place.Name={0}", Renderer.UrlEncode(place.Name)); if (SessionManager.IsAdministrator) { linkFeature.Text = (LatestPlaceFeature != null) ? string.Format("Feature » Last on {0}", Adjust(LatestPlaceFeature.Created).ToString("d")) : "Feature » Never Featured"; } redirect.TargetUri = string.Format("PlaceView.aspx?id={0}", place.Id); redirect.AccountId = place.AccountId; linkAddToGroup.NavigateUrl = string.Format("AccountGroupPlaceAdd.aspx?id={0}", RequestId); } else { placeName.Text = Renderer.Render(Request.QueryString["name"]); TransitCity city = SessionManager.LocationService.GetCityByTag( SessionManager.Ticket, Request.QueryString["city"]); if (city != null) { placeCity.Text = Renderer.Render(city.Name); placeState.Text = Renderer.Render(city.State); placeCountry.Text = Renderer.Render(city.Country); } panelViews.Visible = false; panelDetails.Visible = false; panelSubmit.Visible = true; panelDescription.Visible = false; panelPropertyGroups.Visible = false; panelEvents.Visible = false; discussionPlaces.Visible = false; madlibs.Visible = false; panelInfo.Visible = false; panelCounter.Visible = false; websitesView.Visible = false; linkEdit.NavigateUrl = string.Format("PlaceEdit.aspx?{0}", Request.QueryString.ToString()); } } }
public int CreateOrUpdateCity(string ticket, TransitCity city) { return WebServiceImpl<TransitCity, ManagedCity, City>.CreateOrUpdate( ticket, city); }