コード例 #1
0
            protected override bool Update(object newValue)
            {
                // everything has been validated already
                var changed   = false;
                var stateCode = Page.StateCode;

                foreach (var s in _Submitted)
                {
                    if (s.New)
                    {
                        SchoolDistrictDistricts.Insert(stateCode, s.Id, Page.TigerSchoolType,
                                                       Page.TigerSchoolCode, s.Name, s.InShapefile);
                        if (s.Create)
                        {
                            // also create local district
                            var localKey = LocalDistricts.GetAvailableLocalKey(stateCode);
                            LocalDistricts.Insert(stateCode, localKey, s.Name, Empty, Empty, Empty, Empty,
                                                  Empty, Empty, Empty, Empty, Empty, Empty, Empty, Empty, Empty, Empty, Empty,
                                                  Empty, Empty, Empty, false, false);
                            LocalIdsCodes.Insert(stateCode, LocalIdsCodes.LocalTypeSchoolDistrictDistrict,
                                                 s.Id, localKey);
                            changed = true;
                        }
                    }
                    else if (s.Delete)
                    {
                        // can only delete if no local district entry
                        changed |=
                            SchoolDistrictDistricts.DeleteByStateCodeSchoolDistrictDistrictCode(stateCode,
                                                                                                s.Id) != 0;
                    }
                    else
                    {
                        // existing item, but may update IsInShapefile or Name
                        changed |=
                            SchoolDistrictDistricts.UpdateNameByStateCodeSchoolDistrictDistrictCode(
                                s.Name, stateCode, s.Id) != 0;
                        changed |=
                            SchoolDistrictDistricts
                            .UpdateIsInShapefileByStateCodeSchoolDistrictDistrictCode(s.InShapefile,
                                                                                      stateCode, s.Id) != 0;
                    }
                }

                LoadControl();
                return(changed);
            }
コード例 #2
0
        private void SetSubDistrictPrefix(string schoolDistrictDistrictCode)
        {
            var prefix = Empty;

            if (IsNullOrWhiteSpace(schoolDistrictDistrictCode))
            {
                var prefixes = SchoolDistrictDistricts.GetPrefixes(StateCode);
                if (prefixes.Count > 1000)
                {
                    throw new Exception(
                              "All School Sub-District prefixes for this state are in use");
                }
                if (prefixes.Count == 0)
                {
                    prefix = "100";
                }
                else
                {
                    var last = prefixes.Last();
                    if (last == "999")
                    {
                        // use highest available
                        for (var p = 998; p >= 0; p--)
                        {
                            prefix = p.ToString("D3");
                            if (!prefixes.Contains(prefix))
                            {
                                break;
                            }
                        }
                    }
                    else
                    {
                        prefix = (int.Parse(last) + 1).ToString("D3");
                    }
                }
            }
            else
            {
                prefix = schoolDistrictDistrictCode.Substring(0, 3);
            }
            SchoolDistrictPrefix.Text = prefix;
            SchoolName.Value          = TigerSchoolName;
        }
コード例 #3
0
        private void LoadSchoolSubDistricts()
        {
            //  SchoolDistrictTableBody.Controls.Clear();
            var districts = SchoolDistrictDistricts
                            .GetSchoolDistrictDistrictsByTigerTypeTigerCode(StateCode, TigerSchoolType,
                                                                            TigerSchoolCode).Rows.OfType <DataRow>()
                            .OrderBy(r => r.SchoolDistrictDistrictCode()).ToList();

            foreach (var d in districts)
            {
                var tr = new TableRow();
                tr.AddTo(SchoolDistrictTableBody);
                new TableCell().AddTo(tr, "delete").Controls
                .Add(new HtmlInputCheckBox {
                    Disabled = d.LocalKey() != null
                });
                new TableCell().AddTo(tr, "exists").Controls.Add(
                    new HtmlInputCheckBox {
                    Disabled = true, Checked = d.LocalKey() != null
                });
                new TableCell().AddTo(tr, "create").Controls
                .Add(new HtmlInputCheckBox {
                    Disabled = d.LocalKey() != null
                });
                new TableCell().AddTo(tr, "code").Controls.Add(new HtmlInputText
                {
                    Value    = d.SchoolDistrictDistrictCode(),
                    Disabled = d.LocalKey() != null
                });
                new TableCell().AddTo(tr, "in-shapefile").Controls
                .Add(new HtmlInputCheckBox {
                    Checked = d.IsInShapefile()
                });
                new TableCell().AddTo(tr, "name").Controls
                .Add(new HtmlInputText {
                    Value = d.Name()
                });
            }
            SetSubDistrictPrefix(districts.Count > 0
        ? districts[0].SchoolDistrictDistrictCode()
        : null);
            BulkAddSchoolDistrict.Disabled = districts.Count > 0;
        }
コード例 #4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //Page.IncludeJs("~/js/jq/jquery.cookie.js");
            Title = Format(TitleTag, PublicMasterPage.SiteName);
            var email = GetQueryString("email");

            EmailFixedAddress.InnerText = email;

            string tigerCode;

            var address               = Request.Cookies["Address"]?.Value;
            var stateCode             = Request.Cookies["State"]?.Value;
            var county                = Request.Cookies["County"]?.Value;
            var countySupervisors     = Request.Cookies["CountySupervisors"]?.Value;
            var congressionalDistrict = Request.Cookies["Congress"]?.Value;
            var stateSenateDistrict   = Request.Cookies["StateSenate"]?.Value;
            var stateHouseDistrict    = Request.Cookies["StateHouse"]?.Value;
            var place                  = Request.Cookies["Place"]?.Value;
            var district               = Request.Cookies["District"]?.Value;
            var cityCouncil            = Request.Cookies["CityCouncil"]?.Value;
            var elementary             = Request.Cookies["Elementary"]?.Value;
            var secondary              = Request.Cookies["Secondary"]?.Value;
            var unified                = Request.Cookies["Unified"]?.Value;
            var schoolDistrictDistrict = Request.Cookies["SchoolDistrictDistrict"]?.Value;
            var components             = WebService.GetComponentsFromCookies();

            var(latitude, longitude) = WebService.GetGeoFromCookies();

            if (!StateCache.IsValidStateCode(stateCode) || IsNullOrWhiteSpace(email) ||
                IsNullOrWhiteSpace(congressionalDistrict) ||
                IsNullOrWhiteSpace(stateSenateDistrict) ||
                !Offices.IsValidStateHouseDistrict(stateHouseDistrict, stateCode) ||
                IsNullOrWhiteSpace(county) || components == null || latitude == null ||
                longitude == null)
            {
                SafeTransferToError404();
                //EmailFixedAddress.InnerText = Join("|", stateCode.SafeString(), email.SafeString(),
                //  congressionalDistrict.SafeString(), stateSenateDistrict.SafeString(),
                //  stateHouseDistrict.SafeString(), county.SafeString(),
                //  components == null ? "null" : "components",
                //  (latitude?.ToString()).SafeString(), (longitude?.ToString()).SafeString());
            }

            WebService.UpdateAddresses(email, "SBRL", Empty, Empty, components,
                                       stateCode, congressionalDistrict, stateSenateDistrict, stateHouseDistrict, county,
                                       district, place, elementary, secondary, unified, cityCouncil, countySupervisors,
                                       schoolDistrictDistrict, latitude, longitude);

            Control tr;

            if (!IsNullOrWhiteSpace(address))
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "Address"
                }.AddTo(tr);
                new TableCell {
                    Text = HttpUtility.UrlDecode(address)
                }.AddTo(tr);
            }

            //tr = new TableRow().AddTo(DistrictsTable);
            //new TableCell { Text = "State" }.AddTo(tr);
            //new TableCell { Text = StateCache.GetStateName(stateCode) }.AddTo(tr);

            if (!IsNullOrWhiteSpace(county) && stateCode != "DC")
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "County"
                }.AddTo(tr);
                new TableCell {
                    Text = CountyCache.GetCountyName(stateCode, county)
                }.AddTo(tr);
            }

            if (!IsNullOrWhiteSpace(countySupervisors))
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = stateCode == "DC" ? "Advisory Neighborhood Commission" : "County Supervisors"
                }.AddTo(tr);
                new TableCell
                {
                    Text = CountySupervisors.GetNameByStateCodeCountySupervisorsCode(stateCode,
                                                                                     countySupervisors)
                }.AddTo(tr);
            }

            if (!IsNullOrWhiteSpace(congressionalDistrict) && stateCode != "DC")
            {
                if ((tigerCode =
                         TigerToVoteCodes.GetTigerCodeByTableTypeStateCodeVoteCode("CD", stateCode,
                                                                                   congressionalDistrict)) != null)
                {
                    congressionalDistrict = tigerCode;
                }
                if (congressionalDistrict != "00")
                {
                    tr = new TableRow().AddTo(DistrictsTable);
                    new TableCell {
                        Text = "Congressional District"
                    }.AddTo(tr);
                    new TableCell {
                        Text = congressionalDistrict.TrimStart('0')
                    }.AddTo(tr);
                }
            }

            if (!IsNullOrWhiteSpace(stateSenateDistrict))
            {
                if ((tigerCode =
                         TigerToVoteCodes.GetTigerCodeByTableTypeStateCodeVoteCode("SS", stateCode,
                                                                                   stateSenateDistrict)) != null)
                {
                    stateSenateDistrict = tigerCode;
                }
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = stateCode == "DC" ? "Ward" : "State Senate District"
                }.AddTo(tr);
                new TableCell {
                    Text = stateSenateDistrict?.TrimStart('0')
                }.AddTo(tr);
            }

            if (!IsNullOrWhiteSpace(stateHouseDistrict))
            {
                if ((tigerCode =
                         TigerToVoteCodes.GetTigerCodeByTableTypeStateCodeVoteCode("SH", stateCode,
                                                                                   stateHouseDistrict)) != null)
                {
                    stateHouseDistrict = tigerCode;
                }
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "State House District"
                }.AddTo(tr);
                new TableCell {
                    Text = stateHouseDistrict.TrimStart('0')
                }.AddTo(tr);
            }

            if (stateCode != "DC")
            {
                var districts = new List <string>();
                if (!IsNullOrWhiteSpace(place))
                {
                    districts.Add(TigerPlaces.GetNameByStateCodeTigerCode(stateCode, place));
                }
                if (!IsNullOrWhiteSpace(district))
                {
                    districts.Add(TigerPlaces.GetNameByStateCodeTigerCode(stateCode, district));
                }
                if (districts.Count > 0)
                {
                    tr = new TableRow().AddTo(DistrictsTable);
                    new TableCell {
                        Text = "Local District"
                    }.AddTo(tr);
                    new TableCell {
                        Text = Join(", ", districts.Distinct())
                    }.AddTo(tr);
                }
            }

            if (!IsNullOrWhiteSpace(cityCouncil) && stateCode != "DC")
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "City Council"
                }.AddTo(tr);
                new TableCell
                {
                    Text = CityCouncil.GetNameByStateCodeCityCouncilCode(stateCode, cityCouncil)
                }.AddTo(tr);
            }

            if (!IsNullOrWhiteSpace(elementary))
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "Elementary School District"
                }.AddTo(tr);
                new TableCell
                {
                    Text = TigerSchools.GetNameByStateCodeTigerCodeTigerType(stateCode, elementary,
                                                                             "E")
                }.AddTo(tr);
            }

            if (!IsNullOrWhiteSpace(secondary))
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "Secondary School District"
                }.AddTo(tr);
                new TableCell
                {
                    Text = TigerSchools.GetNameByStateCodeTigerCodeTigerType(stateCode, secondary,
                                                                             "S")
                }.AddTo(tr);
            }

            if (!IsNullOrWhiteSpace(unified))
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "Unified School District"
                }.AddTo(tr);
                new TableCell
                {
                    Text = TigerSchools.GetNameByStateCodeTigerCodeTigerType(stateCode, unified, "U")
                }.AddTo(tr);
            }

            if (!IsNullOrWhiteSpace(schoolDistrictDistrict))
            {
                tr = new TableRow().AddTo(DistrictsTable);
                new TableCell {
                    Text = "School Voting District"
                }.AddTo(tr);
                new TableCell
                {
                    Text = SchoolDistrictDistricts.GetNameByStateCodeSchoolDistrictDistrictCode(
                        stateCode, schoolDistrictDistrict)
                }.AddTo(tr);
            }
        }
コード例 #5
0
        public static string FormatLegislativeDistrictsFromQueryString(
            string separator = "<br />")
        {
            var lines = new List <string>();

            if (QueryState != "DC")
            {
                string county = null;
                if (!IsNullOrWhiteSpace(QueryCounty))
                {
                    lines.Add(county = CountyCache.GetCountyName(QueryState, QueryCounty));
                }

                if (!IsNullOrWhiteSpace(QueryCountySupervisors))
                {
                    lines.Add(CountySupervisors.GetNameByStateCodeCountySupervisorsCode(QueryState,
                                                                                        QueryCountySupervisors));
                }

                string tigerCode;
                if (QueryCongress != "000")
                {
                    var congressionalDistrict = QueryCongress;
                    if (congressionalDistrict.Length == 3)
                    {
                        congressionalDistrict = congressionalDistrict.Substring(1);
                    }
                    if ((tigerCode =
                             TigerToVoteCodes.GetTigerCodeByTableTypeStateCodeVoteCode("CD", QueryState,
                                                                                       congressionalDistrict)) != null)
                    {
                        congressionalDistrict = tigerCode;
                    }
                    if (congressionalDistrict != "00")
                    {
                        lines.Add("US House District " + congressionalDistrict.TrimStart('0') + " " +
                                  StateCache.GetStateName(QueryState));
                    }
                }

                if (QueryStateSenate != "000")
                {
                    var stateSenateDistrict = QueryStateSenate;
                    if ((tigerCode =
                             TigerToVoteCodes.GetTigerCodeByTableTypeStateCodeVoteCode("SS", QueryState,
                                                                                       stateSenateDistrict)) != null)
                    {
                        stateSenateDistrict = tigerCode;
                    }
                    lines.Add(StateCache.GetStateName(QueryState) + " Senate District " +
                              stateSenateDistrict.TrimStart('0'));
                }

                if (!IsNullOrWhiteSpace(QueryStateHouse))
                {
                    var stateHouseDistrict = QueryStateHouse;
                    if ((tigerCode =
                             TigerToVoteCodes.GetTigerCodeByTableTypeStateCodeVoteCode("SH", QueryState,
                                                                                       stateHouseDistrict)) != null)
                    {
                        stateHouseDistrict = tigerCode;
                    }
                    lines.Add(StateCache.GetStateName(QueryState) + " House District " +
                              stateHouseDistrict.TrimStart('0'));
                }

                string district   = null;
                string lastResort = null;
                if (QueryDistrict != Empty)
                {
                    district = TigerPlaces.GetLongNameByStateCodeTigerCode(QueryState, QueryDistrict);
                    if (!IsNullOrWhiteSpace(district) && district.IsNeIgnoreCase(county))
                    {
                        if (district.EndsWith(" CCD") || district.EndsWith(" CDP"))
                        {
                            lastResort = district.Substring(0, district.Length - 4);
                        }
                        else
                        {
                            lines.Add(district);
                        }
                    }
                }

                if (QueryPlace != Empty)
                {
                    var place = TigerPlaces.GetLongNameByStateCodeTigerCode(QueryState, QueryPlace);
                    if (!IsNullOrWhiteSpace(place) && place.IsNeIgnoreCase(district) &&
                        place.IsNeIgnoreCase(county))
                    {
                        if (place.EndsWith(" CCD") || place.EndsWith(" CDP"))
                        {
                            lastResort = place.Substring(0, place.Length - 4);
                        }
                        else
                        {
                            lines.Add(place);
                            lastResort = null;
                        }
                    }
                }
                if (lastResort != null &&
                    (county == null ||
                     !county.StartsWith(lastResort, StringComparison.OrdinalIgnoreCase)))
                {
                    lines.Add(lastResort);
                }

                if (!IsNullOrWhiteSpace(QueryCityCouncil))
                {
                    lines.Add(
                        CityCouncil.GetNameByStateCodeCityCouncilCode(QueryState, QueryCityCouncil));
                }
            }
            else if (QueryStateSenate != "000")
            {
                if (!IsNullOrWhiteSpace(QueryStateSenate))
                {
                    lines.Add("Ward " + QueryStateSenate.TrimStart('0'));
                }
                if (!IsNullOrWhiteSpace(QueryCountySupervisors))
                {
                    lines.Add(
                        CountySupervisors.GetNameByStateCodeCountySupervisorsCode(QueryState,
                                                                                  QueryCountySupervisors));
                }
            }

            if (!IsNullOrWhiteSpace(QueryElementary))
            {
                lines.Add(
                    TigerSchools.GetNameByStateCodeTigerCodeTigerType(QueryState, QueryElementary,
                                                                      "E"));
            }

            if (!IsNullOrWhiteSpace(QuerySecondary))
            {
                lines.Add(
                    TigerSchools.GetNameByStateCodeTigerCodeTigerType(QueryState, QuerySecondary,
                                                                      "S"));
            }

            if (!IsNullOrWhiteSpace(QueryUnified))
            {
                lines.Add(
                    TigerSchools.GetNameByStateCodeTigerCodeTigerType(QueryState, QueryUnified, "U"));
            }

            if (!IsNullOrWhiteSpace(QuerySchoolDistrictDistrict))
            {
                lines.Add(
                    SchoolDistrictDistricts.GetNameByStateCodeSchoolDistrictDistrictCode(
                        QueryState, QuerySchoolDistrictDistrict));
            }

            if (separator == null)
            {
                return("<span>" + Join("</span><span>", lines) + "</span>");
            }
            return(Join(separator, lines));
        }