Diberdayakan oleh Blogger.

Popular Posts Today

The Lede Blog: State-by-State Guide to Hurricane Sandy

Written By Unknown on Rabu, 31 Oktober 2012 | 12.07

Last Updated | 8:00 p.m., Tuesday, Oct. 30 – We are taking a state-by-state look at the devastation caused in the aftermath of Hurricane Sandy, including unprecedented flooding damage in New Jersey and New York City, where the subway system will be shut down for at least four days, as our colleagues report. An interactive map shows where more than six million people across the Northeast are without power. At least 39 people have been killed during the mammoth storm that created havoc from North Carolina to New England.

New York Times reporters are delivering live updates from across the region and the Northeast, and Google has built a crisis response map with updates on utilities across storm-stricken areas.

Connecticut | Delaware | District of Columbia | Maryland | New Jersey | New York | North Carolina | Pennsylvania | Rhode Island | Virginia | West Virginia

CONNECTICUT

WTNH-TV reporting on Tuesday from Milford, Conn., which was badly hit by Hurricane Sandy.

At least two people died as a result of the storm that flooded low-lying areas in coastal towns and left hundreds of thousands of people without power, reports The Hartford Courant on Tuesday.

As of a few minutes ago, approximately 630,000 customers were without power

— Governor Dan Malloy (@GovMalloyOffice) 30 Oct 12

On Tuesday, Gov. Dannel P. Malloy, who was touring coastal towns to inspect the damage, lifted the restriction banning cars and trucks from state highways.

Malloy: Travel ban, now lifted, prevented loss of life. All schools closed.630,000 customers have no power.

— Connecticut Post (@connpost) 30 Oct 12

A town-by-town list of power failures from Connecticut Light & Power.

More than 360,000 people were evacuated over the weekend from low-lying areas along the coast from Old Saybrook to Fairfield amid growing concern about flooding from the hurricane's surge in Long Island Sound.

WTNH-TV in Hartford delivered this report on the damage the storm caused to Metro North.

WTNH-TV providing an update on the damage the storm caused to Metro North

After Hurricane Irene last year, power companies in Connecticut were harshly criticized for taking more than a week to restore power to tens of thousands of customers. Luther Turmelle, a reporter for The New Haven Register, reports that Connecticut could once again expect widespread power failures:

Jim Torgerson of United Illuminating's parent company: We expect 50 to 70 percent of our customers to be without power. #ctsandy

— Luther Turmelle (@LutherTurmelle) 27 Oct 12

TRANSPORTATION: Governor Malloy lifted the travel ban on state highways on Tuesday. No commuter rail service. Amtrak canceled service.

EVACUATIONS: Branford, Fairfield, Old Saybrook and East Haven. WTNH-TV published a town-by-town evacuation list.

POWER/UTILITIES: More than 600,000 customers were without power on Tuesday.

SOCIAL MEDIA AND OTHER RESOURCES:

Hash tags: #ctsandy, #sandyct

The Twitter account for the Connecticut Department of Emergency Services and Public Protection:

There could be significant power failures with this storm. Call 2-1-1 for shelter information and stay away from downed power lines.

— CTDESPP/DEMHS (@CTDEMHS) 27 Oct 12

The American Red Cross Safety and Preparation Tips for Connecticut Residents

Gov. Dannel P. Malloy on Facebook

Gov. Dannel P. Malloy on Twitter

Facebook updates from the Naval Submarine Base, Groton, Conn.

News Media Twitter Accounts:

All the latest on #Sandy: http://t.co/kW6M1xBP and CL&P/UI's preparation for expected outages: http://t.co/CKrimO68

— Hartford Courant (@hartfordcourant) 28 Oct 12

News updates from NBC Connecticut

The New Haven Register on Facebook

The Yale Daily News on Twitter

The Stamford Advocate updates for Fairfield County on Twitter

DELAWARE

RT @seangreenewdel: Sunrise in Bethany – still high water across 26 near the Grottos #SandyDE #StormDE http://t.co/Qi8KjpT3

— Gov. Jack Markell (@GovernorMarkell) 30 Oct 12

Brian Stelter, reporting for The New York Times from Delaware on Tuesday, produced a video showing parts of Lewes, where floodwaters rose even before Hurricane Sandy landed to the north. His report:

"New Jersey's neighbor to the south, Delaware, saw flooding in predictable spots, including along the coastal highway that connects its resorts to Ocean City, Md. But the biggest beach town here, Rehoboth Beach, fared well, with minimal damage visible on Tuesday morning as the sun tried to break through the clouds. Fears of a ripped-up boardwalk did not come to pass, nor was there any evident structural damage in downtown.

A few miles north in Lewes, a low-lying town at the edge of the Delaware Bay, the surge that had surrounded some homes was starting to recede on Tuesday morning, and backhoes were starting to clear away the sand that had piled into parking lots and side streets."

South of Lewes in Rehoboth Beach, the surge tugged sand fences out to sea and swept over the dunes in some spots, leaving seashells and other debris on the boardwalk. But the boardwalk survived.

Rehoboth beach & boardwalk are fine. Grottos is open & people are there w kids & dogs #Sandy #HurricaneSandy http://t.co/AW4BKWzM

— Angel Clark (@SussexAngelC) 30 Oct 12

Over the weekend, evacuations were mandatory in flood-prone parts of the state, from Fenwick Island on the southern border with Maryland to New Castle, a hundred miles north. All businesses within the evacuation zones were ordered closed by 6 p.m. Sunday. People began returning to their homes and many roads and bridges reopened on Tuesday, but flooding remained a problem in some areas.

Indian River Inlet bridge remains closed due to storm damage #NetDe #SandyDE #StormDE http://t.co/ZV19xiM1

— nichellepolston (@nichellepolston) 30 Oct 12

Information, resources and helpful links for residents affected by #SandyDE http://t.co/4pK2gWXE #StormDE

— Gov. Jack Markell (@GovernorMarkell) 30 Oct 12

TRANSPORTATION: Most highways were open except for some roads and bridges, which were flooded because of stormwaters.

EVACUATIONS: Orders were lifted in some areas, allowing people to return to their homes in some of the low-lying areas in Sussex, New Castle and Kent Counties.
POWER/UTILITIES: More than 40,000 customers were without power on Tuesday.

SOCIAL MEDIA AND ONLINE RESOURCES:

Hash tags: #desandy, #sandyde

Emergency Management on Facebook.

The Delaware Citizen Corps

PrepareDelaware on Twitter

Delaware State Police Newsroom on Facebook

Delaware weather updates on Twitter

The News Journal on Twitter

DISTRICT OF COLUMBIA

Large tree down on Fort Davis street #pepco crews are on site making repairs to hours services http://t.co/MvEWqtM7

— Robert Rovinski (@USDRUBRinURface) 30 Oct 12

Strong winds and rain knocked down trees and power lines, but the Washington area escaped the "brunt of the storm" and was starting to return to normal, as The Washington Post reports.

On Tuesday, the Metro and federal government offices in the District of Columbia remained closed to the public, and nonessential personnel did not have to report to work, the Office of Personnel Management announced.

Public schools were closed on Tuesday. More than 250,000 people were without power, based on an interactive map from The Post.

The nation's capital is far enough inland so it was able to avoid the worst of the winds. The city's low-lying areas, including Georgetown and the tidal basin of the Potomac River, experienced some flooding.

Pepco, the utility company that was criticized for leaving people in the district without power for more than a week after a storm in June, called customers over the weekend reminding them to prepare and issued a warning on Twitter.

We're preparing for the possibility that tens of thousands or even hundreds of thousands of customers could lose power during this storm.

— Pepco (@PepcoConnect) 26 Oct 12

TRANSPORTATION: Metro subway trains and buses ran a Sunday schedule on Tuesday, and full service was expected Wednesday.

POWER/UTILITIES: Pepco is expecting widespread power failures.

SOCIAL MEDIA AND ONLINE RESOURCES:

American Red Cross in the National Capital Region on Twitter

Mayor Vincent C. Gray on Twitter

D.C. Homeland Security on Twitter

D.C. Fire and E.M.S. on Twitter

D.C Department of Consumer and Regulatory Affairs on Twitter

D.C. Department of Transportation on Twitter

The Washington Post's Capital Weather blog on Twitter

The Washington Post's local news updates on Twitter

MARYLAND

Water is receding and Ocean City is open from 17th St. North http://t.co/7RnsXv4y #fb

— OceanCity.com (@OCFun) 30 Oct 12

On Tuesday, officials began assessing the wind and flood damage in Ocean City, Md., as The Baltimore Sun reports.

Crews removed debris along the boardwalk, which was not damaged. But many were mourning the loss of part of the city's famed pier. Half of it was brought down when the ocean crashed over dunes.

Boardwalk pier in Ocean City, MD, was "significantly damaged" overnight, police spokesman tells me. South end of town is getting battered.

— Brian Stelter (@brianstelter) 29 Oct 12

The Ocean City Pier collapsed into the water. http://t.co/OLYyUvbh

— iℓℓest. (@WheresShane) 29 Oct 12

Route 50 is reopened; Hurricane Sandy clean-up begins http://t.co/zADE2AxW #fb

— OceanCity.com (@OCFun) 30 Oct 12

In Annapolis, residents saw heavy flooding, reports the blog Eye on Annapolis:

"Annapolis Mayor Joshua J. Cohen advises residents that flooding at City Dock will continue until 6:00 p.m. A tide of 2.5 feet above normal is expected. Annapolis' next high tide is around 6:00 p.m., and due to the full moon will be an astronomical high tide. Flood waters are expected to reach above the feet at the Alex Haley statue."

Downtown #Annapolis flooding due to #sandy http://t.co/3RHavz9H

— Kay Moreland (@KayMoreland730) 30 Oct 12

Even in the mountainous western reaches of the state, winds gusted to 45 m.p.h. or more beginning late Monday and lasting through Tuesday. Along with heavy rain, some areas saw snow.

Schools in Baltimore, Montgomery County and elsewhere around the state were closed Tuesday.

Power was beginning to be restored, The Baltimore Sun reports, but more than 180,000 customers were still in the dark.

SOCIAL MEDIA AND ONLINE RESOURCES:

American Red Cross from central Maryland on Facebook

American Red Cross Lower Shore for Maryland and Virginia on Twitter

Maryland Emergency Management Center on Twitter

Maryland Department of Transportation on Twitter

Baltimore/Washington International Thurgood Marshall Airport on Twitter

Mayor Stephanie Rawlings-Blake of Baltimore on Twitter

Baltimore Police Department on Twitter

The Baltimore Sun on Twitter

NEW JERSEY

Gov. Chris Christie giving an update on the storm during an interview with Matt Lauer of NBC's "Today" show.

At least three people have been killed as a result of the storm, which has caused unprecedented damage along the coast, Gov. Chris Christie said. More than two million people are without power. Search and rescue missions were under way up and down the coast, where an unknown number of people were cut off and without power.

A video of Governor Christie's 10 a.m. briefing on Tuesday and the latest updates from the emergency management command center can be found here.

There are currently 2.4 million households without power, twice the number from Irene. #Sandy

— Governor Christie (@GovChristie) 30 Oct 12

Extreme Coastal Flooding in Point Pleasant, New Jersey. WeatherSnap is preparing to head to Atlantic City, NJ. http://t.co/BN0Jprd1

— WeatherSnap (@weathersnap) 29 Oct 12

In this video, the New Jersey National Guard looks for displaced residents along the coastline of Seaside Heights on Tuesday, in the aftermath of Hurricane Sandy.

An aerial look at Seaside Heights, N.J., on the day after the storm

Ocean waters along the New Jersey coast moved inland even before Hurricane Sandy made landfall at about 8 p.m. Monday, filling up streets and washing away piers and boardwalks. Waist-deep floodwaters in some locations wreaked havoc, as The Star Ledger reports. But on Tuesday morning, it was evident that the surge caused record-breaking flooding and unprecedented destruction.

Amusement Park in Seaside Heights is nearly washed out. The log flume is basically in the ocean. #Sandy

— Governor Christie (@GovChristie) 30 Oct 12

Because of the storm's size and strength, its impact stretched for hundreds of miles beyond its center.

PATH and New Jersey Transit service was suspended, and it could take days before full service is restored. The George Washington Bridge was reopened on Tuesday, as was all of the Garden State Parkway.

Flood waters rush in to the Hoboken PATH station through an elevator shaft. #Sandy http://t.co/QosgFyOI

— Port Authority NY&NJ (@PANYNJ) 30 Oct 12

Some photos posted on Twitter offer a glimpse of the effects of the storm, starting Monday.

Margate bridge under water #sandy my home town is getting messed up! http://t.co/UKHwfixt

— Boxing Insider.com (@BoxingInsider) 29 Oct 12

Atlantic City's Stanley Holmes Village in pic sent by Facebook friend Darrell Dixon #acpress #Sandy @AtlanticCity911 http://t.co/pSxEK9Me

— Lynda Cohen (@LyndaCohen) 29 Oct 12

35 foot section of Atlantic City Boardwalk floating down what used to be St. Katherine's place #sandy #acpress http://t.co/MW8Hp3yp

— Jitney Guy (@JitneyGuy) 29 Oct 12

More than 2,200 people remained in shelters in New Jersey, according to the State Office of Emergency Management. But some people in the most vulnerable areas had hunkered down in their homes; in Cape May County, the southernmost portion of the state, officials estimated that perhaps 40 percent of the residents of the county's barrier islands had decided to stay put, complicating search and rescue missions.

TRANSPORTATION: George Washington Bridge and Lincoln Tunnel were opened, as was all of the Garden State Parkway. New Jersey Transit and PATH service was suspended. Hundreds of flights into and out of Newark Liberty International Airport were canceled.

EVACUATIONS: Search and rescue missions were launched up and down the coast. A mandatory evacuation order was issued for thousands of residents in low-lying areas along the coast, and Atlantic City casinos were closed. But not everyone left.

POWER/UTILITIES: More than two million people are without power, more than from Hurricane Irene.

SOCIAL MEDIA AND ONLINE RESOURCES:

Gov. Chris Christie on Facebook

Gov. Chris Christie on Twitter

Gov. Chris Christie on YouTube

Mayor Cory A. Booker of Newark on Twitter

New Jersey Department of Emergency Management on Facebook

A breaking news Twitter account from The Record

The Star-Ledger on Twitter

The Asbury Park Press on Twitter

N.J. 101.5 News on Twitter

The Atlantic City Press on Twitter

NEW YORK

New York City. A view from Brooklyn: 10.30.12 @patkiernan http://t.co/BOyESvgY

— michael cinquino (@michaelcinquino) 31 Oct 12

New York Times reporters are fanned out across the city and region, covering the aftermath of the storm and providing live updates here. An interactive map showing power failures and flooding and wind damage from the storm.

At least 18 people died in New York City as a result of the storm, as our colleagues report..

In this video, uploaded to Mayor Michael R. Bloomberg's YouTube channel, he, Senator Charles Schumer and City Council Speaker Christine Quinn survey the damage from the fire in Breezy Point, Queens, that destroyed more than 80 homes.

Mayor Bloomberg travels to Breezy Point, Queens, where more than 80 homes were destroyed by fire during the flooding from Hurricane Sandy.

In an afternoon update, Mr. Bloomberg outlined the daunting challenges ahead to get the city back up and running and restore service to what transit officials said was a severely damaged transit system.

Mayor Bloomberg delivering an update on Tuesday afternoon about recovery efforts.

Seven photos posted on Twitter showing the effects of the storm in the city.

Morning breaks in flooded Coney Island http://t.co/loXjYsrO

— Stephen Nessen (@stephen_nessen) 30 Oct 12

Taxi hit by a huge tree branch while driving on the Upper West Side – wife took pic walking the dog #HurricaneSandy http://t.co/TTwSQjD7

— Elias Lopez (@elopez_nyc) 29 Oct 12

#RedHook underwater at high tide with paddle boats making small rescues. #flooding #NYC #sandy http://t.co/3dSfQV8j

— Caxtons (@Caxtons) 30 Oct 12

The Gowanus flooding on 2nd has spilled over into the lot next door to the street http://t.co/25RCC2No

— Hunter Walker (@hunterw) 29 Oct 12

Gowanus Canal also flooding on 4th and Bond http://t.co/8zIV0ohG

— Hunter Walker (@hunterw) 29 Oct 12

No flooding here but there's a pretty big tree down by St. John the Divine Cathedral. http://t.co/ZkBEzUDL

— Brooke H (@BHisaRockstar) 30 Oct 12

Flooding in building's garage. This car is floating. http://t.co/cboEGTWL

— Dana B (@DanaB_NYC) 30 Oct 12

Power failures remained a major problem across the region, including much of Manhattan. Con Edison said there were additional outages in southern Brooklyn and Staten Island on Tuesday.

#NYOUTAGES: 2,097,545 NY'ers w/o power

— Andrew Cuomo (@NYGovCuomo) 30 Oct 12

An explosion at a Con Edison plant contributed to a power failure that plunged people and businesses into darkness in Manhattan from 34th Street to the Battery.

A video of the explosion at a Con Edison utility station on Monday night that contributed to the power failure affecting hundreds of thousands of people. Credit: TrillianMedia.

On Long Island, there was widespread flooding, and hundreds of thousands of customers were without power on Tuesday. The Long Island Power Authority has this interactive map with the latest on the power failures and what actions are being taken.

Our correspondent Sarah Maslin Nir, reporting from the eastern end of Long Island.

.@NYTMetro Montauk residents gape at Westlake Drive on Long Island Sound, unrecognizable, covered with sand & rubble. http://t.co/EL2UTdiR

— Sarah Maslin Nir (@SarahMaslinNir) 30 Oct 12

Crews sawing up felled trees tangled in downed power lines on Cooper lane http://t.co/9qLdUFIQ

— Sarah Maslin Nir (@SarahMaslinNir) 30 Oct 12

In Midtown Manhattan, a high-rise crane was dangling some 80 stories over the sidewalk at 157 West 57th Street, between Sixth and Seventh Avenues, as our colleagues report. The police blocked off the area and were evacuated surrounding buildings.

The storm created major transportation problems. Gov. Andrew M. Cuomo shared this photo on Twitter showing a boat in the middle of the commuter rail tracks in a town in northern Westchester County.

Metro-North RR crews discovered this boat washed onto tracks at Ossining #sandy #surge: http://t.co/ruVlqZOG

— Andrew Cuomo (@NYGovCuomo) 30 Oct 12

The Brooklyn Battery Tunnel, the Holland Tunnel and the Queens Midtown Tunnel remained closed, along with the two Rockaway bridges, because of flooding and damage. The Lincoln Tunnel is open, and all bridges into Manhattan reopened at noon Tuesday.

Floodwaters fill the approach to the Hugh Carey / Brooklyn-Battery Tunnel. #Sandy http://t.co/AxjmPASG

— MTA (@MTAInsider) 30 Oct 12

The subways may not be operational for four to five days; however, the M.T.A. restored limited bus service at 5 p.m. and waived fares. Mr. Bloomberg said more bus service could be restored by Wednesday. Limited cab service returned, too.

Mayor: We need New Yorkers to share cabs. As of 4:30, there were 4,000 yellow cabs on the streets. #Sandy

— NYC Mayor's Office (@NYCMayorsOffice) 30 Oct 12

Mr. Bloomberg said that New York City public schools would be closed Wednesday, the third day in a row classes had been canceled. After-school activities and Public Schools Athletic League events were also canceled. The New York Times has a detailed list of closings and transportation updates.

TRANSPORTATION: Unprecedented damage to portions of the city's subway, commuter rails and tunnels. All bridges into Manhattan reopened Tuesday, but the Rockaways Bridges continue to be closed. Only the Lincoln Tunnel is open.

EVACUATIONS: More than 375,000 people were ordered on Sunday to evacuate low-lying areas in Lower Manhattan, Brooklyn and Queens. About 6,400 people were in emergency shelters as of Tuesday evening, Mr. Bloomberg said.

Mayor: 6,400 people remain in our 76 evacuation centers, and I want to thank the 2,900 people who are staffing the centers. #Sandy

— NYC Mayor's Office (@NYCMayorsOffice) 30 Oct 12

POWER/UTILITIES: More than two million customers remained without power in New York State, including residents and businesses in Manhattan from Lower Manhattan to 39th Street. Kevin Burke, the chief executive of Con Edison, said it was the worst storm the utility had ever experienced. Governor Cuomo provided updates on his Twitter account on Tuesday evening.

#NYOUTAGES Central Hudson 57,700; ConEd 792,956; LIPA 949,544; Nat. Grid 16,275; NYSEG 113,234; Orange and Rockland 143,302; RG&E 18,556

— Andrew Cuomo (@NYGovCuomo) 30 Oct 12

SOCIAL MEDIA AND ONLINE RESOURCES:

Live updates from the New York Times Metro Desk on Twitter

Live updates from Governor Andrew M. Cuomo

New York mayor's office on Twitter

Mayor Michael R. Bloomberg on Twitter

Rachel Sterne, chief digital officer for New York City, on Twitter

Notify NYC on Twitter

New York State Office of Emergency Management on Twitter

New York State agencies, via NY-Alert, on Twitter

American Red Cross in Greater New York on Facebook

New York City Evacuation Centers on FourSquare

Nassau County Office of Emergency Management on Twitter

Suffolk County Fire Department and Emergency Services on Facebook

Westchester County government on Facebook

Westchester County government on Twitter

Newsday on Long Island on Twitter

Suffolk County News on Twitter

New York 1 Weather Twitter

NORTH CAROLINA

Missie W. Smith's photo taken from top of hill at Wright Brothers monument in Kill Devil Hills #obx #ncwx #sandy http://t.co/sG0B8Q7k

— Sam Walker (@SamWalkerOBX) 29 Oct 12

Hurricane Sandy battered hundreds of miles of the North Carolina coast on Monday, causing flooding and damage, but it wreaked the most havoc and cost two people their lives when a 180-foot three-masted ship sank in rough seas near the Outer Banks. The ship is a well-known replica of the one made famous in the 1960 film "Mutiny on the Bounty." It was also used in the film "Pirates of the Caribbean: Dead Man's Chest."

The Coast Guard staged a daring helicopter rescue, captured on video, early Monday morning, pulling 14 crew members from the sea. Two people remained missing, according to the Coast Guard.

The Coast Guard posted video of rescue.

The ship had set sail from Connecticut, bound for Florida. Although its crew was aware of the impending storm, the members believed they could sail around it. But with Hurricane Sandy spanning more than 500 nautical miles, they were unable to avoid running into it.

Bobby Outten, Dare County manager, discussing the impact of the storm on the Outer Banks.

Because the hurricane moved north in the Atlantic far off the North Carolina coast, the state was not confronted with the full force of the storm. Still, there were reports of major flooding in the Outer Banks, with roads and highways being shut down. One casualty was the Avalon Pier in Kill Devil Hills.

From ON Avalon Pier…its cut in TWO PLACES (Justin Grizzard photo) #obx #ncwx #Sandy http://t.co/bY7rfXmI

— Sam Walker (@SamWalkerOBX) 29 Oct 12

A Web cam in Kill Devil Hills on the Outer Banks delivered a live view of the storm.

TRANSPORTATION: Flooding was reported on some highways and roads. State Highway 12 was closed in some places.

EVACUATIONS: No evacuations were ordered in the state.

POWER/UTILITIES: Scattered power failures were reported.

SOCIAL MEDIA AND ONLINE RESOURCES:

Latest Update from Dare County Emergency Management just released. Next update 9:30 a.m. tomorrow morning. Be safe! http://t.co/eqCOiUt7

— Dare County EM (@DareCoEM) 28 Oct 12

North Carolina Emergency Management on Facebook

North Carolina National Guard on Twitter

Cape Fear Red Cross on Twitter

Carolina Region Red Cross

PENNSYLVANIA

Philadelphia skyline with the leftovers of Sandy hovering above. http://t.co/wQfchHoy

— Steve W (@LilWorm33) 30 Oct 12

While high gusts and heavy rain downed trees and power lines, blocking roads and plunging hundreds of thousands of people across Pennsylvania into darkness, much of Philadelphia and its suburbs escaped serious flooding and the level of destruction that crippled New York and devastated coastal towns in New Jersey. Authorities attributed the deaths of at least five people across the state to the storm.

On Wednesday, Philadelphia will be open for business with public offices, courts and schools resuming normal schedules, according to a report by NBC-TV's Channel 10.

#BREAKING: SEPTA to resume Regional Rail tomorrow morning at normal schedules. See attached photo of press release. http://t.co/bylnVAAM

— PhillyInquirer (@PhillyInquirer) 30 Oct 12

All speed reductions have been lifted #HurricaneSandy

— Governor Tom Corbett (@GovernorCorbett) 30 Oct 12

Late Tuesday, the storm's center was located about 50 miles northeast of Pittsburgh with maximum sustained winds of 45 m.p.h., according to the Hydrometeorological Prediction Center, causing power failures across the state.

About 550,000 Peco customers were without power as of 4 p.m. Tuesday, NBC10 Philadelphia reports.

#Sandy Power Outages: 436,000 total
Bucks 175,000
Chester 34,000
Del 67,000
Mont 128,000
Phila 32,000

— Christine Maddela (@christnemaddela) 30 Oct 12

Some hospitals relied on generators.

Eight hospitals statewide, including LVH and Easton Hospital, are on backup generators, the Guv says, #superstorm

— Capitol_Ideas (@Capitol_Ideas) 30 Oct 12

Downed trees and power lines are presenting a big challenge for utility crews and people trying to make their way around. Dozens of roads across eastern Pennsylvania are blocked because of inland flooding, fallen wires and trees.

Morgan Zalot, a reporter for The Philadelphia Daily News, said she saw multiple downed trees in the area.

Tree fell onto a house on Verree Road. Can't drive a few blocks without spotting a downed tree. #SandyInPhilly http://t.co/ansaeAam

— Morgan Zalot (@morganzalot) 30 Oct 12

I'm sorry I questioned you #Sandy. This will be a great reminder. @NBCPhiladelphia http://t.co/61WNMuoj

— Chris Johnson (@JohnsonC89) 30 Oct 12

Peco said it could take up to a week to restore power to everyone in the wake of the storm, Philly Burbs reported.

But don't look for updates from Peco on Twitter, notes Philadelphia magazine. Unlike many other utility companies around the region that are using Twitter to communicate with customers and to respond to reports about downed trees and dangerous power lines, an account that claims it is Peco is private.

After landfall in New Jersey at 8 p.m. on Tuesday, the storm weakened but still packed a considerable punch as it moved west across Pennsylvania. On Tuesday, Red Cross shelter managers were expecting some Harrisburg-area residents would be unable to go home for at least one more night, The Patriot-News reports.

TRANSPORTATION: Service on Septa (Southeast Pennsylvania Transit Authority) will resume Wednesday morning. Speed restrictions lifted on major highways. Some secondary roads remain blocked and bridges closed because of inland flooding.

EVACUATIONS: People began to leave the shelters that were set up in Philadelphia and made available to more than 10,000 people who live in flood-prone areas.

POWER/UTILITIES: More than a half-million customers were still without power on Tuesday in several counties.

SOCIAL MEDIA AND ONLINE RESOURCES:

Mayor Michael A. Nutter on Twitter

American Red Cross Southeastern Pennsylvania Chapter on Facebook

Philadelphia Office of Emergency Management on YouTube

Philadelphia Office of Emergency Management on Twitter

The Philadelphia Inquirer and The Philadelphia Daily News on Twitter

The Philadelphia Inquirer and The Philadelphia Daily News on Facebook

Glenn Schwartz, a meteorologist for NBC10, on Twitter

NBC10 News on Twitter

6ABC's "Action News" on Twitter

RHODE ISLAND

Sandy floods Island Park, leaves Portsmouth powerless: PORTSMOUTH — Hurricane Sandy flooded Island Park three ti… http://t.co/26ln4VbW

— eastbayri.com (@eastbayri) 30 Oct 12

More than 80,000 customers were without power Tuesday as officials began to assess the damage from the flooding along the Rhode Island coast and inland.

Like much of the East Coast, the state was under a state of emergency Monday, and mandatory evacuation orders were issued in coastal and low-lying parts of Bristol, Charlestown, Middletown, Narrangsett, South Kingstown, Tiverton and Westerly, according to WPRI.com.

Officials in Newport and East Providence called for voluntary evacuations in those cities. Ten shelters opened around the state for people in areas considered dangerous.

By early Monday evening, more than 80,000 National Grid customers in Rhode Island were without power.

All the ports in southeastern New England, including Narragansett Bay and Mount Hope Bay, were closed to vessel traffic on Sunday evening, and remained closed Tuesday.

EVACUATIONS: Mandatory evacuation orders were issued for some low-lying communities.

POWER/UTILITIES: More than 80,000 people were without power Tuesday.

SOCIAL MEDIA AND ONLINE RESOURCES:

Call 2-1-1 for information and assistance with issues such as food, shelter, and transportation. #SandyRI #211RI http://t.co/kLstAXuY

— Governor Chafee (@LincolnChafee) 29 Oct 12

If you experience an outage, call 1-800-465-1212 #MA & #RI or 1-800-867-5222 #NYC & #UNY to expedite restoration.

— National Grid US (@nationalgridus) 29 Oct 12

Rhode Island Emergency Management on Facebook

Providence Emergency Management Department on Twitter

Providence Department of Public Safety on Twitter

VIRGINIA

Norfolk continues to get hit hard by #Sandy #HRSandy http://t.co/MS9QAGE0

— Martin Cornick (@MartinMMC) 29 Oct 12

There was significant flooding in Norfolk and Virginia Beach on Monday and other parts along the coast of eastern Virginia, while heavy snow fell in the elevated parts of the state's southwest and western counties.

"You've got flooding in south and southeast Virginia," Gov. Robert F. McDonnell said. "You've got blizzard in western and southwest Virginia. And you've got high winds and heavy rain in northern Virginia. That's what it's going to look like now for the next 24 to 36 hours."

Mr. McDonnell said he would seek an expedited emergency declaration from the federal government to speed aid to battered parts of the state.

"This is going to be a long haul," he said when he declared a state of emergency before the storm. "We will no doubt have rain and high winds through Tuesday, and in Northern Virginia significant wind and rains into Wednesday. People are going to have to be patient," he told reporters.

Gov. Robert F. McDonnell outlining emergency plans at a briefing on Sunday.

The coastal area known as Hampton Roads saw flooding early in the day in what Governor McDonnell called an "astronomically high tide" and powerful surf. With more than 100 secondary roads closed because of flooding, the state suspended high-occupancy restrictions to increase use of highways.

Authorities closed the Midtown Tunnel in Norfolk, and some low-lying areas were evacuated.

Ahead of the storm, the commander of United States Fleet Forces ordered all Navy ships in the Hampton Roads area to prepare for a sortie as Hurricane Sandy traveled up the East Coast. The Navy posted a video on YouTube showing the preparations.

The Navy uploaded this video showing preparations for Hurricane Sandy.

TRANSPORTATION: At least 100 secondary roads, as well as parts of Interstate 77, were closed because of flooding, and some areas reported ice on the roads. The state lifted high-occupancy vehicle restrictions on highways. The Midtown Tunnel between Portsmouth and Norfolk was closed.

EVACUATIONS: The state did not mandate any evacuations or order lane reversal to aid traffic away from the coast, but some residents evacuated coastal areas. Governor McDonnell said 28 emergency shelters had been opened.

POWER/UTILITIES: Dominion Virginia Power reported already restoring power to some 40,000 outrages by Monday afternoon, but the number of homes likely to lose power was expected to rise sharply as the full brunt of the storm came ashore. The utility brought in more than 2,500 extra workers to respond to the storm. Long term, widespread power failures were expected.

SOCIAL MEDIA AND ONLINE RESOURCES:

Virginia State Police on Facebook

Virginia Department of Emergency Management on Facebook

Virginia Department of Emergency Management on Twitter

Gov. Robert F. McDonnell on Twitter

Virginia Department of Transportation on Twitter

Red Cross of Southeastern Virginia on Twitter

Red Cross of Southeastern Virginia on Facebook

The Virginian-Pilot of Norfolk on Twitter

WEST VIRGINIA

Why did my hotel loose power this morning!!? And we have snow!! The one time I want to be in Michigan. Thanks #Sandy http://t.co/sRTFMLSV

— Kenyatta Jones (@kenji_lee_) 30 Oct 12

Snow snow snow http://t.co/x6L8ysdf

— WVCountryPrincess (@wv_countrylady) 30 Oct 12

As Hurricane Sandy collided with a warm front over the Mid-Atlantic on Monday afternoon, rain and heavy, wet snow fell more and more steadily across West Virginia.

Talk of "how much are we going to get" turned into "what's closed," reports Cynthia McCloud, a writer who is contributing to this report.

Some school districts called off classes for Tuesday. Some counties' government offices were closed, including courts. Some people took out their skis.

Snow plows out in Appalachia, ski resorts opening: CHARLESTON, W.Va. — Snow plows were out in parts… http://t.co/mpStBtba

— Daily Charleston (@DailyCharleston) 30 Oct 12

Early voting in Morgan County on Tuesday was suspended because of the storm, according to Secretary of State Natalie Tennant. Her office sent out a warning to all early voters to use caution if going to the polls during the storm.

A utility company map of power failures in northern West Virginia showed the number steadily climbing, reaching thousands of customers, with most of them in Morgan County.

Power problems in some cities caused traffic lights to go out. Production in at least one Tucker County coal mine was idled for a time because of a power failure. The mine was operating again by late Monday afternoon.

At least one fatal automobile accident was blamed on the storm.

The June 29 "derecho" windstorm cut off power to hundreds of thousands of the state's residents, and many did not get power back for two weeks. There is a high likelihood that power will take a long time to restore this time, as well.

This time, though, the storm will be followed by cold weather, making shelter a bigger issue. The Charleston Daily Mail reports that T.D. Lively of the state Division of Homeland Security said the American Red Cross had several shelters on standby, adding that "typically West Virginia doesn't have a large need for sheltering because people tend to stay with family."

TRANSPORTATION: Amtrak service was canceled. All forms of transportation were affected by up to two feet of snow.

EVACUATIONS: None are expected, but shelters may be needed.

POWER/UTILITIES: Long-term, widespread power failures are expected. Information on how to report a power failure is at appalachianpower.com and dom.com.

SOCIAL MEDIA AND ONLINE RESOURCES:

If you lose pwr, report online at http://t.co/1WZo2iCV (mobile outage site too) or call Va1-800-956-4237; WV1-800-982-4237; TN1-800-967-4237

— Appalachian Power (@appalachianpowe) 28 Oct 12

West Virginia Division of Homeland Security and Emergency Management

West Virginia Division of Homeland Security and Emergency Management on Twitter

West Virginia Division of Homeland Security and Emergency Management on Facebook.

John H. Cushman from Washington; Jon Hurdle from Philadelphia; Brian Stelter from Lewes, Del.; Thomas Kaplan from Little Egg Harbor, N.J.; Jennifer Preston, Christine Hauser, Ashwin Seshagiri, Sharon Otterman, Marc Santora and Michael Schwirtz from New York contributed to this report.


12.07 | 0 komentar | Read More

Hurricane Sandy’s Lethal Power, in Many Ways

They stepped in the wrong puddle. They walked the dog at the wrong moment. Or they did exactly what all the emergency experts instructed them to do — they huddled inside and waited for its anger to go away.

The storm found them all.

Hurricane Sandy, in the wily and savage way of natural disasters, expressed its full assortment of lethal methods as it hit the East Coast on Monday night. In its howling sweep, the authorities said the storm claimed at least 40 lives in eight states.

They were infants and adolescents, people embarking on careers and those looking back on them — the ones who paid the ultimate price of this most destructive of storms. In Franklin Township, Pa., an 8-year-old boy was crushed by a tree when he ran outside to check on his family's calves. A woman died in Somerset County, Pa., when her car slid off a snowy road.

There were 22 deaths reported in New York City, where the toll was heaviest, and 5 more fatalities elsewhere in the state.

Most of all, it was the trees. Uprooted or cracked by the furious winds, they became weapons that flattened cars, houses and pedestrians. But also, a woman was killed by a severed power line. A man was swept by flooding waters out of his house and through the glass of a store. The power blinked off for a 75-year-old woman on a respirator, and a heart attack killed her.

And the storm left its share of mysteries. A parking lot attendant was found dead in a subterranean parking garage in TriBeCa, the precise cause unclear. The body of an unidentified woman washed up on Georgica Beach in East Hampton, on Long Island.

Some people died and no one knew, not for hours, not until the storm backed away and moved on.

They did what dog owners do. They walked the dog. They were friends living in Ditmas Park, Brooklyn. Jessie Streich-Kest was 24 and Jacob Vogelman was 23. Around 8 on Monday evening, during the howling viciousness of the storm, they ventured out with her dog, Max, a white pit bull mix.

Ms. Streich-Kest grew up with her family in Prospect Park South and was a teaching fellow. She had just started teaching at the Bushwick School for Social Justice, a high school. She had gone through her first parent-teacher conference last week, and was laughing about it afterward with her parents and their friends.

Her father, Jon Kest, is executive director of New York Communities for Change and a longtime activist who has led the battle to unionize carwashes and supermarkets across the city, as well as being a leader in the battle for paid sick days. His daughter was herself a bit of an activist, and helped organize Stop Horse Abuse, which was aimed at the carriage horses in Central Park.

In the wind and the rain, the two strode along Ditmas Avenue, a block of old Victorians and similar sprawling homes beneath a canopy of vast maples, oaks and lindens.

In rapid succession, perhaps within a space of no more than a half-hour, the brutal winds knocked down three trees. There was a booming sound as one fell. Their roots tore up massive chunks of sidewalk.

One of the trees on the south side of the block crushed them. They lay there until Tuesday morning, when their bodies were found.

No one realized that the trees had hit anyone. "We had no idea," said Pat Atia, whose house faces out onto Ditmas Avenue on the block between East 17th and East 18th Streets. "I was outside taking pictures of my house for the insurance when a cop said 'back up, back up' and I saw a young man dead under the tree."

The dog was bruised but survived. Neighbors were caring for him.

She just wanted pictures. In Richmond Hill, Queens, a power line the length of a block on 105th Avenue between 134th and 135th Streets snapped and crumpled to the ground. The frayed end of the line began sparking wildly.

Around 8 on Monday night, a 23-year-old woman who lived at the end of the block came out to her driveway clutching a camera.

Her name was Lauren Abraham, and she went by Lola. She was a makeup artist who worked for several professional agencies. She maintained a makeup studio in the basement of the house, which her parents owned. The third floor was vacant, and so she used it as a makeshift photography studio for shots to advertise her makeup skills.

She was attending beauty school, but had also been studying at Lehman College to become a social studies teacher.

Elpidio Nunez, a close friend for 10 years, said she was passionate about making her friends look gorgeous before a night out at the clubs.

"She was a beautiful girl, very carefree, she was never depressed," Mr. Nunez said. "I had never seen her cry."

Tamica Penn, 22, her best friend, said, "If you ever needed to talk, she would be there."

The two had spoken at 7 p.m., an hour before she went outside to take her pictures of the downed power line.

The line was still sparking as Ms. Abraham walked down the driveway and into the rain-drenched street. She came into contact with one end of the snapped wire.

She caught fire.

A half-dozen or so witnesses watched in utter horror. They said her body burned for about a half-hour before the police and firefighters arrived.

Mr. Nunez woke up in the middle of the night. He had a sick feeling that something was very wrong. He sent text messages to his good friend over and over to see if she was all right. Nothing came back.

This article has been revised to reflect the following correction:

Correction: October 30, 2012

An earlier version of this article misstated the name of the beach where an unidentified body was found. It is Georgica Beach, not Georgia Beach.


12.07 | 0 komentar | Read More

Live Updates

  • Full Coverage
  • Comments
  • Photos
  • Game Updates
  • Ask The Times

State-by-State Guide

A look at the devastation caused in the aftermath of Hurricane Sandy from North Carolina to New England.


12.07 | 0 komentar | Read More

Hurricane Sandy Barrels Region, Leaving Battered Path

Shannon Stapleton/Reuters

Keith Klein and Eileen Blair among homes destroyed by fire in the Breezy Point section of Queens. More Photos »

The New York region began the daunting process on Tuesday of rebuilding in the aftermath of Hurricane Sandy, a storm that remade the landscape and rewrote the record books as it left behind a tableau of damage, destruction and grief.

The toll — in lives disrupted or lost and communities washed out — was staggering. A rampaging fire reduced more than 100 houses to ash in Breezy Point, Queens. Explosions and downed power lines left the lower part of Manhattan and 90 percent of Long Island in the dark. The New York City subway system — a lifeline for millions — was paralyzed by flooded tunnels and was expect to remain silent for days.

Accidents claimed more than 40 lives in the United States and Canada, including 22 in the city. Two boys — an 11-year-old Little League star and a 13-year-old friend — were killed when a 90-foot-tall tree smashed into the family room of a house in North Salem, N.Y. An off-duty police officer who led seven relatives, including a 15-month-old boy, to safety in the storm drowned when he went to check on the basement.

On Tuesday, the storm slogged toward the Midwest, vastly weaker than it was when it made landfall in New Jersey on Monday night. It delivered rain and high winds all the way to the Great Lakes, where freighters were at a standstill in waves two stories tall. It left snow in Appalachia, power failures in Maine and untreated sewage pouring into the Patuxent River in Maryland after a treatment plant lost power.

President Obama approved disaster declarations for New York and New Jersey, making them eligible for federal assistance for rebuilding. "All of us have been shocked by the force of mother nature," said the president, who plans to visit New Jersey on Wednesday. He promised "all available resources" for recovery efforts.

"This is going to take some time," he said. "It is not going to be easy for these communities to recover."

There was no immediate estimate of the losses from the storm, but the scope of the damage — covering more than a half-dozen states — pointed to billions of dollars. Gov. Chris Christie of New Jersey called it "incalculable."

Rescuers looked for survivors in the wet rubble in places like Atlantic City, and state and local officials surveyed wreckage. Utility crews began working their way through a wilderness of fallen trees and power lines. And from Virginia to Connecticut, there were stories of tragedy and survival — of people who lost everything when the water rushed in, of buildings that crumbled after being pounded hour after hour by rain and relentless wind, of hospitals that had to be evacuated when the storm knocked out the electricity.

The president spoke with 20 governors and mayors on a conference call, and the White House said the president would survey damage from the storm with Mr. Christie on Wednesday. Mr. Obama's press secretary said the president would join Mr. Christie, who has been one of his harshest Republican critics, in talking with storm victims and thanking first responders.

Mayor Michael R. Bloomberg said Mr. Obama had also offered to visit the city, "but I think the thing for him to do is to go to New Jersey and represent the country."

Connecticut, New Jersey and New York reopened many closed roads and bridges, and the New York Stock Exchange made plans to resume floor trading on Wednesday after a two-day shutdown, its first because of weather since a blizzard in 1888.

There were no traffic signals on the walk from Fifth Avenue to the East River. Police officers were directing traffic; here and there, bodegas were open, selling batteries and soft drinks. In Times Square, a few tourists walked around, though some hotels still had sandbags by the doors.

Mr. Bloomberg said 7,000 trees had been knocked down in city parks. "Stay away from city parks," he said. "They are closed until further notice."

The mayor also said that trick-or-treating was fine for Halloween, but the parade in Greenwich Village had been postponed. The organizers said it was the first time in the parade's 39-year-history that it had been called off.


12.07 | 0 komentar | Read More

In Lower Manhattan, Still Feeling the Effects of the Storm

Never before has the divide between uptown and downtown in Manhattan been starker. Or darker.

On Tuesday, as New Yorkers coped with their first post-Hurricane Sandy night without power, the dividing line between north and south in the city was 25th Street.

South of 25th, the streetlights on the West Side were not working, and the buildings were completely dark. There seemed to be no stores there, no Starbucks, no places to charge a phone and no idea when the lights would go back on. South of 25th, the effects of the storm were deeply felt. Not so uptown.

"I just biked down from Hell's Kitchen, and it is like a Friday night up there," said Chris Degner, who lives in TriBeCa. "And then you get down here and it is like entering a zombie movie."

He had been at a bar in Midtown called Valhalla. He struggled to describe what it was like to go from a "pub that is packed elbow to elbow" to streets where people are scrambling to find a way to find spare candles and were worried about locating a bag of ice.

There were no official charging stations in Chelsea or the West Village, so people congregated around a CNN satellite truck doing live shots outside the building on Eighth Avenue that had its facade ripped off in the hurricane.

Bernada Pupovic, 21, had waited an hour to get her iPhone plugged into the power strip running from the truck.

"I am at 25 percent," she said, finally getting needed juice. By mutual agreement, the people there had somehow decided that when someone filled up to 50 percent, it was time to unplug and let the next person go.

But even if they did manage to get a charge, cellphone reception in much of downtown was spotty or nonexistent.

"Everyone is helping each other out," she said. "It is pretty cool."

In fact, much as it was during the blackout of 2003, the mood was calm and curious in many parts of the city.

What people really hungered for was information. Few seemed to know that the blackout could last for days and, when told that was the case, worried that the mood may change. And many said they recognized that other people were suffering from more than low cellphone batteries.

But on Tuesday night, many people seemed to be taking things in stride.

David Labarbera, 32, and Erica Sauer, 32, found a little bar, Bunga Den on 14th Street, that was lit by candles and serving drinks. They relaxed with a glassbefore heading home to darkness.

"It is amazing how peaceful and quiet the city can get," Ms. Sauer. "Really, it is wild to see the city just turn off."

Mr. Labarbera agreed.

"I am really not scared," he said. "But in the back of my mind I know something bad could happen."

The only lights on many blocks came from passing cars and emergency vehicles. On some corners, there were flares that cast the streets in an eerie red glow.

Susan Lietz, who lives on Horatio Street, said she felt better walking outside with her two dogs, Buster and Teddy.

For one night, she said, the darkness was tolerable.

"It seems really pretty serene, if a little creepy," she said.

Just as she spoke, someone set off fireworks nearby. She just smiled.

"The 9/11 blackout was messed up," she said. This one, she said, not so much.

She had water and gas and, with her building's buzzer not working, had even rigged up a doorbell on her apartment by hanging a string from her sixth-floor apartment with a weight on one end and a bell on the other.

Aside from an occasional bar, few shops were open. In some corner delis, workers told customers they would stay open because they were sleeping in the store. But they were quickly running out of supplies.

Mayor Michael R. Bloomberg, at an evening news conference, said the city would be adding extra police to the blacked-out area, and Police Commissioner Raymond W. Kelly said that there would be lights to help illuminate streets.

Jane Kelly, 24, who was having a drink at Hudson Bar and Books, said she was not worried, but added that she would not go across town.

"It's the West Village," she said. "It is pretty relaxed."

Still, one night was enough. On Wednesday, she was planning on going to stay with a friend in Brooklyn.


12.07 | 0 komentar | Read More

No Specific Warnings in Benghazi Attack

Written By Unknown on Selasa, 30 Oktober 2012 | 12.07

Mohammad Hannon/Associated Press

Investigators had little access to the American Mission compound in Benghazi immediately after the September attack.

WASHINGTON — In the months leading up to the Sept. 11 attacks on the American diplomatic mission in Benghazi, the Obama administration received intelligence reports that Islamic extremist groups were operating training camps in the mountains near the Libyan city and that some of the fighters were "Al Qaeda-leaning," according to American and European officials.

The warning about the camps was part of a stream of diplomatic and intelligence reports that indicated that the security situation throughout the country, and particularly in eastern Libya, had deteriorated sharply since the United States reopened its embassy in Tripoli after the fall of Col. Muammar el-Qaddafi's government in September 2011.

By June, Benghazi had experienced a string of assassinations as well as attacks on the Red Cross and a British envoy's motorcade. Ambassador J. Christopher Stevens, who was killed in the September attack, e-mailed his superiors in Washington in August alerting them to "a security vacuum" in the city. A week before Mr. Stevens died, the American Embassy warned that Libyan officials had declared a "state of maximum alert" in Benghazi after a car bombing and thwarted bank robbery.

In the closing weeks of the presidential campaign, the circumstances surrounding the attack on the Benghazi compound have emerged as a major political issue, as Republicans, led by their presidential candidate, Mitt Romney, have sought to lay blame for the attack on President Obama, who they argued had insufficiently protected American lives there.

Interviews with American officials and an examination of State Department documents do not reveal the kind of smoking gun Republicans have suggested would emerge in the attack's aftermath such as a warning that the diplomatic compound would be targeted and that was overlooked by administration officials.

What is clear is that even as the State Department responded to the June attacks, crowning the Benghazi compound walls with concertina wire and setting up concrete barriers to thwart car bombs, it remained committed to a security strategy formulated in a very different environment a year earlier.

In the heady early days after the fall of Colonel Qaddafi's government, the administration's plan was to deploy a modest American security force and then increasingly rely on trained Libyan personnel to protect American diplomats — a policy that reflected White House apprehensions about putting combat troops on the ground as well as Libyan sensitivities about an obtrusive American security presence.

In the following months, the State Department proceeded with this plan. In one instance, State Department security officials replaced the American military team in Tripoli with trained Libyan bodyguards, while it also maintained the number of State Department security personnel members at the Benghazi compound around the minimum recommended level.

Questions at Home

But the question on the minds of some lawmakers is why the declining security situation did not prompt a fundamental rethinking of the security needs by the State Department and the White House. Three Congressional investigations and a State Department inquiry are now examining the attack, which American officials said included participants from Ansar al-Shariah, Al Qaeda in the Islamic Maghreb and the Muhammad Jamal network, a militant group in Egypt.

"Given the large number of attacks that had occurred in Benghazi that were aimed at Western targets, it is inexplicable to me that security wasn't increased," said Senator Susan Collins of Maine, the senior Republican on the Homeland Security and Governmental Affairs Committee, one of the panels holding inquiries.

Defending their preparations, State Department officials have asserted that there was no specific intelligence that warned of a large-scale attack on the diplomatic compound in Benghazi, which they asserted was unprecedented. The department said it was careful to weigh security with diplomats' need to meet with Libyan officials and citizens.

David D. Kirkpatrick and Suliman Ali Zway contributed reporting from Benghazi, Libya.


12.07 | 0 komentar | Read More

Latest Storm Updates

/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("

").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(sd&&ga&&(ga=!1,f.dispatchEvent("pinchend"));if(0==d)h&&(1==g&&f.dispatchEvent("doubletap",n),h=!1),s&&(1==g&&(h=!0),s=!1),r=d;else{var i={zoomRatio:1,deltaScale:1,deltaX:0,deltaY:0,shiftX:0,shiftY:0},t=c.length,w=0,E=0,z,F,C=0;for(z=0;zg&&0==i.inside||(1==d?(0==g&&(h&&(g=I.distance(c,t,n.pageX,n.pageY),i.time-n.time>e||12elapsed?(g=!0,n&&f.dispatchEvent("touchstart",{pageX:n.pageX,pageY:n.pageY})):d()});i.addEventListener(document,"touchmove",function(a){d();c(a)})}function G(){this._ignoredElements=[];this._overMap=this.dragging=!1;this._boundsOnPage=new v;i.touchEnabled||(i.addEventListener(document, "mousemove",this.throttledMouseMove,this),i.addEventListener(document.body,"mousedown",this.handleMouseDown,this),i.addEventListener(document,"mouseup",this.handleMouseUp,this))}function u(a){a&&a.schema?this.populate(a.data||null,a.schema):this.__initEmptyTable()}function Mb(a,b){this._idx=0;this.nextRecord=new Q(a,-1);this.size=function(){return b.length};this.hasNext=function(){if(this._idx>=b.length)return this.nextRecord.id=-1,this._idx=0,!1;this.nextRecord.id=b[this._idx++];return!0};this.getIds= function(){return b};this.getFieldData=function(c){for(var d=[],c=a.getFieldData(c),e=0,f=b.length;e<<d.level_one_precision,i.iPhone||i.iPad?0.4:0.7);this._layerBounds=this.parseVectors(a,b||null,d);this._polygonShapes=this.parseTopologyData(a,t.POLYGONS in c,t.INNERLINES in c||t.OUTERLINES in c,t.TOPOLOGY in c||t.OUTLINE in c);b=this._sharedArcIndex;t.POLYLINES in c&&(this._lineShapes=this.initLines(t.POLYLINES));t.OUTERLINES in c&&(this._outerShapes=this.initLines(t.OUTERLINES,b));t.INNERLINES in c&&(this._innerShapes=this.initLines(t.INNERLINES,b));this._zz=this._yy=this._xx=null}else k("[MshpParser] Unable to parse; Parser currently only supports polygon data with topology. Found type:",d.shp_type,"topology?",d.topology);else k("[MshpParser.parseByteArray()] error parsing file header; stopping.")}else k("[MshpParser()] Requires an array of shape types.")} function ca(){this.useEllipsoid=!0;this._DEG2RAD=Math.PI/180;this._RAD2DEG=180/Math.PI;this._R=6378137;this._E=0.0818191908426215;this._A=6378137;this._y0=this._x0=0;this._k0=1;this._tmpLatLng=new la}function $a(a,b){this.__super__();this.name="Mercator";this._lat0=(a||0)*this._DEG2RAD;this._lng0=(b||0)*this._DEG2RAD}function rb(){var a=new $a;a.useEllipsoid=!1;a.name="SphericalMercator";return a}function Pb(){var a=new rb;return new oa(a)}function oa(a){this.projection=a;this.tileWidthInPixels=this.tileHeightInPixels= 256;this.levelOneScale=6378137/this.tileWidthPixels;this.baseZoom=4;this.baseScale=0}function ua(a,b){var c=!isNaN(a),d,e;if(b&&1>b)c?(c=a>>16&255,e=a>>8&255,d=a&255):j.isString(a)&&(matches=jc.exec(a))?(c=matches[1],e=matches[2],d=matches[3],5>matches[0].length&&(c+=c,e+=e,d+=d),c=parseInt(c,16),e=parseInt(e,16),d=parseInt(d,16)):d=e=c=0,c="rgba("+c+","+e+","+d+","+b+")";else if(c){for(c=a.toString(16);6>c.length;)c="0"+c;c="#"+c}else c=a;return c}function Qb(){this.fillColor=null;this.fillAlpha= 1;this.strokeColor=null;this.strokeWeight=this.strokeAlpha=1;this.styler=void 0}function xa(){this.__super__()}function Fa(){this._fills={}}function T(){this._stylers={};this.setDefaultStyle({fillAlpha:1,strokeAlpha:1});this.constructor==T&&this.startWaiting()}function R(a){this.__super__();a.addEventListener("change",this.handleDataChange,this);this._data=a;this.waitFor(a).startWaiting()}function Ga(){}function Rb(a){this.getValue=function(){return a}}function sb(a,b){this._data=a;this._field=b} function Ra(a,b,c){this._data=a;this._func=b;this._useCaching=!1!==c}function tb(a,b){this._breaks=a;this._values=b}function pa(a,b){this.name=a;this._map=b;this._ops=[]}function ab(a){this._map=a;this._currName="";this.views={}}function ia(){this.identity();this._p=new I(0,0)}function m(a,b){if(m._extensions){var c=i.getElement(a);if(c){var d=c.id;d||(c.id=d=j.getUniqueName("nytg-map-"));if(p.getNamespace("nytg.map.containerIds")[d]){var e=j.getUniqueName(d);i.log("[Map] id collision; Renaming map container from "+ d+" to "+e);c.id=d=e}c.style.overflow="visible";i.makeUnselectable(c);this._opts=b;this.divId=d;this.div=c;this.init()}else i.log("[Map] Container div not found -- can't continue.")}else i.log("[Map] Need to call Map.init() first.")}function F(){}function Z(){this._symbolId=-1;this._baseLyr=null;this.type="hover"}function E(a){this._opts=a||{}}function da(){}function $(a,b){this._symbols=a;this.__super__(b);this.type="bubble"}function ea(){var a=Array.prototype.slice.call(arguments);0==a.length&& (k("[ShapeData(...string)] Constructor requires one or more of these types:",t.POLYGONS,t.POLYLINES,t.INNERLINES,t.OUTERLINES),k(" -- using polygons as a default."),a=[t.POLYGONS]);this._types=a}function S(a,b){this._symbols=a;var c=a.getShapeTypes(),d=b&&b.shapeType||null;!d&&1==c.length&&(d=c[0]);if(!d||-1==j.findInArray(d,c))k("[ShapeLayer()] Requested type --",d,"-- missing from ShapeData types --",c,"-- using first available type."),d=c[0];this._shapeType=d;this.__super__(b);this.type="shape"; this.style={}}function bb(a){this._opts=a||{}}function Ha(){}function Ia(a){this.__super__(a);this.type="label"}function ya(a,b){this.__super__(b);this.type="icon";this._icons=a}function ja(a){this._opts=a}function X(a){this.__super__(a);this._viewIndex={}}function cb(){this._style=new xa;this._ext=new W}function fa(a,b){this.ROWS=b||12;this.COLS=a||16}function Sa(a,b){this.__super__(a,b)}function Ja(){this._style=new xa;this._ext=new W;this.init()}function za(a){this.map=a;this.mouse=a.mouse;this.mouse.addEventListener("mousemove", this.handleMove,this,-1);this.mouse.addEventListener("click",this.handleClick,this,-1);this._layers=[];this._activeLyr=null}function Ka(a,b,c,d){this.x=b;this.y=c;this.z=d;this.canvas=a}function Ta(a){this._crs=a;this._currZ=-1;this._tiles=[];this._redrawCount=1}function db(){}function Ua(){}function La(){function a(){var a=(new Date).getTime(),g=a-c,n=a-b;gduration||0e?this.stop():(c=a,a={elapsed:n,count:d,time:a,interval:g},l&&l(a),s.dispatchEvent("tick",a)))}if(!(this instanceof La))return new La;var b,c,d=0,e=0,f=0,g=25,h=8,l,n=null,s=this;this.busy=function(){return null!==n};this.start=function(){null!==n&&this.stop();d=0;c=b=(new Date).getTime();n=setInterval(a,g);return this};this.stop=function(){null!==n&&(clearInterval(n),n=null)};this.duration=function(a){f=a;return this};this.interval=function(a){if(null==a)return g;g=a|0;g=a||(1<=a+l&&(a=1,n=!0),e.procTween(a),h?1==a&&n&&e.stopTimer():e.stopTimer())}}function c(){if(!1==h)return 1;var a=(new Date).getTime()-g-f;if(0>a)return 0;a/=s;1a)f=a;return this};this.__getData=function(a){var b={};if(ga&&i){p.copyAllParams(b,ga);for(var c in b)b[c]=(1-a)*b[c]+a*i[c]}return b};this.busyTweening=this.busy= function(){return h};this.stopTimer=this.stop=function(){h=!1;vb.removeEventListener("tick",b,this);n=!1}}function kc(a){this.tileSize=new google.maps.Size(256,256);this.getTile=function(b,c){var d=b.x,e=b.y,f=i.createElement("canvas");f.width=256;f.height=256;a.drawTile(f,d,e,c);return f};this.releaseTile=function(){}}function lc(a,b,c){function d(c){c=c||1;a.getZoom();var d=0,f=0,g=b.getVisibleBounds();g.lefte.right&&(d=e.right-g.right);g.top>e.top?f=e.top-g.top: g.bottomMath.abs(d)+Math.abs(f)?s.stop():(d*=c,f*=c,c=g.centerX(),g=g.centerY(),d=n.unprojectXY(c+d,g+f),b.panToLatLng(d.lat,d.lng))}var e=b.getInitialBounds(),f=e,g=[new I(e.centerX(),e.centerY())],h=0,l=this,n=new rb;a.getZoom();var s=(new La).interval(25).on("tick",function(){d(0.17)},this);this.resetCenter=function(){h=0;l.setCenterXY(g[0].x,g[0].y);s.start()};this.setCenterXY=function(a,b){if(f.centerX()!=a||f.centerY()!=b)f==e.cloneBounds(),f.translate(a- f.centerX(),b-f.centerY())};this.addAnchorLatLng=function(a,b){var c=n.projectLatLng(a,b);g.push(c)};c.limitPanning&&(c=google.maps.event.addListener,c(a,"zoom_changed",function(){s.stop();d(1)}),c(a,"drag",function(){}),c(a,"dragstart",function(){s.stop()}),c(a,"dragend",function(){if(1>>TileLayer.handleReadyState(); opts:",a);!1!=this.__validateLayerOptions(a)&&(a=this.__getGoogleLayer("",a),this.__addTileLayer(a))};ja.prototype.__getGoogleLayer=function(a,b){var c,d={minZoom:b.minZoom||0,maxZoom:b.maxZoom||20,name:a,opacity:b.opacity||1};if(b.type==X.IMAGE_TYPE){var e=b.template;d.tileSize=new google.maps.Size(256,256);d.getTileUrl=function(a,b){var c=a.x,d=a.y,d=j.convOsGeoToGoogleY(d,b);return e.replace("{x}",c).replace("{y}",d).replace("{z}", b)};c=new google.maps.ImageMapType(d)}else b.type==X.STYLED_TYPE&&(c=new google.maps.StyledMapType(b.style,d));return c};X.prototype.__addView=function(a,b){var c=this.__getGoogleLayer(a,b);this._map._gmap.mapTypes.set(a,c)};X.prototype.__setView=function(a){this._map._gmap.setMapTypeId(a);a=this._viewIndex[a].backgroundColor;this._map.div.style.backgroundColor=a?a:"none"};ya.prototype.init=function(){for(var a=this._icons,b=this._map._gmap,c=0;c=D+r.size&&(a=D+r.size-1);return a}function d(){if(!q)return q=!0,k=i.getPageXY(Qa.el).y,i.addEventListener(window,"mousemove",e,this),i.addEventListener(window,"mouseup",f,this),!1}function e(b){var d=m,e=j-m,b=b.pageY-k;be&&(b=e);Da.el.style.top=b+"px";d=c(b);d!=a.getZoom()&&a.setZoom(d)}function f(){q&&(q=!1,i.removeEventListener(window,"mousemove",e,this),i.removeEventListener(window,"mouseup",f,this),h())}function g(b){b= b.pageY-i.getPageXY(Qa.el).y;b=c(b);a.setZoom(b)}function h(){if(!q){var b=a.getZoom(),b=r.size-(b-D)-1;0>b?b=0:b>r.size-1&&(b=r.size-1);Da.css("top:"+(m+b*r.ticSpacing)+"px")}}function l(){a.zoomToInitialExtent()}function n(){a.zoomIn()}function s(){a.zoomOut()}var r={ticSpacing:5,size:5,trackPadding:5,showHomeButton:!0};p.copyAllParams(r,b);var j=r.ticSpacing*(r.size-1)+2*r.trackPadding,k,m=r.trackPadding,Qa,Da,D,q=!1,t=!(i.ie&&9>i.ieVersion);this.__super__("div");a.on("ready",function(){D=a.getCRS().baseZoom; var b=K(this.el).css("position:absolute; z-index:50; padding:2px;");b.css("background-color:white");if(r.showHomeButton)b.child("div").css("padding:3px 6px 7px 4px; margin:2px 0 9px 2px; width:13px; border-bottom:1px solid #ccc;").child("img").attr("src","http://graphics8.nytimes.com/packages/images/newsgraphics/lib/maps/map2_home.png").css("cursor:pointer;padding-left:1px;").on("click",l);var c=b.child("div").css("margin:5px;").child("img").attr("src","http://graphics8.nytimes.com/packages/images/newsgraphics/lib/maps/map2_zoomin.png").css("cursor:pointer;").on("click", n);if(t){var e="margin:7px 0px 9px 11px; border-left:1px solid #ccc; border-top:1px solid #ccc; background-color:#ddd; width:3px; height:"+j+"px; position:relative;";Qa=b.child("div").css(e)}b.child("div").css("margin:5px;").child("img").attr("src","http://graphics8.nytimes.com/packages/images/newsgraphics/lib/maps/map2_zoomout.png").css("cursor:pointer;").on("click",s);t?(Qa.on("click",g,this),Da=Qa.child("img").attr("src","http://graphics8.nytimes.com/packages/images/newsgraphics/lib/maps/map2_knob.png").css("position:absolute; top:0px; margin-top:-9px; margin-left:-9px;").on("mousedown", d,this),h(),a.on("zoom",h,this)):c.css("margin-bottom:0px;")},this)}function H(a){this._opts=p.copyAllParams({throttled:!0},a);this._ignoredElements=[];this._overMap=this.dragging=!1;this._boundsOnPage=new v;i.touchEnabled||(i.addEventListener(document,"mousemove",this._opts.throttled?this.throttledMouseMove:this.handleMouseMove,this),i.addEventListener(document.body,"mousedown",this.handleMouseDown,this),i.addEventListener(document,"mouseup",this.handleMouseUp,this))}function Ub(a,b){this.__super__(b); this.setMapContainer(a);i.addEventListener(a,"mouseover",this.updateRegistration,this)}function Y(a,b){k("[TimeSeriesChart()] div:",a,"this:",this);this.__super__(a);b=this._opts=p.copyAllParams({width:300,height:100},b);this.bottomValue=this.topValue=0;this.yLabels=[];this.yLabelValues=[];this.yTicValues=[];this.yBaselineValue=0;this.lines=[];this.shapes=[];this.bounds=new v;var c=this.canvas=i.createElement("canvas");c.width=b.width;c.height=b.height;a.appendChild(c);"undefined"!=typeof CanvasSwf&& CanvasSwf.initElement(c)}var eb=this.A||{},t=this.C||{},j={getUniqueName:function(a){var b=p.getNamespace("nytg.map"),c=b.__unique||0;b.__unique=c+1;return(a||"__id_")+c},reduce:function(a,b,c,d){for(var e=0,f=a.length;ec?c:a},interpolate:function(a,b,c){return a*(1-c)+b*c},findInArray:function(a,b,c){for(var d=0,e=b.length||0;d=a.length-1?0:b+1]};j.sum=function(){var a;if(0==arguments.length)return k("[Utils.sum()] requires a list of one or more numeric arguments; len:",d,"args:",arguments),0;a=1==arguments.length&& !0==j.isArray(arguments[0])?arguments[0]:arguments;for(var b=0,c=0,d=a.length;cc&&(c=g)}return{min:b,max:c,nan:d}};j.average=function(){var a=j.sum.apply(null,arguments);return 0==a?0:a/arguments.length};j.invertIndex=function(a){var b={},c;for(c in a)b[a[c]]=c;return b};j.getKeys=function(a){var b=[],c;for(c in a)a.hasOwnProperty(c)&&b.push(c);return b}; j.uniqueArray=function(a){var b=[],c,d=a.concat();d.sort();for(var e=0,f=d.length;e":"<",b=b+("aval = a['"+d+ "'];\nbval = b['"+d+"'];\n"),b=b+("if (aval"+e+"bval) return 1;\n"),b=b+("if (bval"+e+"aval) return -1;\n");a.sort(new Function("a","b",b+"return 0;"))};j.sortNumbers=function(a,b){b=!1!==b;a.sort(function(a,d){return a===d?0:b&&a>d||!b&&ag||!c&&f<=h.priority&&(e=f+1)}d.splice(e,0,b);return!0};V.prototype.on=function(){this.addEventListener.apply(this,arguments);return this};V.prototype.countListeners=function(a){var b=this._listeners;if(!a)return b.length;for(var c=0,d=0,e=b&&b.length||0;cb;return this};v.prototype.getCenterPoint=function(){return this.hasBounds()?new I(this.centerX(),this.centerY()):new I(0,0)};v.prototype.centerX=function(){return 0.5*(this.left+this.right)};v.prototype.centerY=function(){return 0.5*(this.top+this.bottom)};v.prototype.containsPoint=function(a,b){return a>=this.left&&a<=this.right&&b<=this.top&&b>=this.bottom?!0:!1};v.prototype.containsBufferedPoint=function(a,b,c){return a+c>this.left&&a-c< this.right&&b-cthis.bottom?!0:!1};v.prototype.intersects=function(a){return a.leftthis.left&&a.top>this.bottom&&a.bottom=this.left&&a.top<=this.top&&a.right<=this.right&&a.bottom>=this.bottom?!0:!1};v.prototype.translate=function(a,b){this.setBounds(this.left+a,this.top+b,this.right+a,this.bottom+b)};v.prototype.scale=function(a,b){var c=0.5*(this.right-this.left),d=0.5*(this.top-this.bottom),e=a-1, f=void 0===b?e:b-1;this.left-=c*e;this.top+=d*f;this.right+=c*e;this.bottom-=d*f};v.prototype.cloneBounds=function(){var a=new v;this.hasBounds()&&a.setBounds(this.left,this.top,this.right,this.bottom);return a};v.prototype.mergePoint=function(a,b){void 0===this.left?this.setBounds(a,b,a,b):(athis.right&&(this.right=a),bthis.top&&(this.top=b))};v.prototype.mergeBounds=function(a){a&&a.hasBounds()&&(this.hasBounds()?(a.leftthis.right&&(this.right=a.right),a.top>this.top&&(this.top=a.top),a.bottom<\!--[if gt IE 5]>";wb=!!Wb.getElementsByTagName("i")[0]}var sc=wb,xb;if(xb=Aa){var Xb=/MSIE ([0-9]+)/.exec(navigator.appVersion);xb=Xb&&parseInt(Xb[1])||0}var i={iPhone:nc,iPad:oc,ieEvents:pc,touchEnabled:qc,canvas:rc,inNode:fb,inPhantom:Vb,ie:sc,ieVersion:xb,log:function(a){"undefined"!= typeof console&&console.log&&(console.log.call?console.log.call(console,a):console.log(a))},trace:function(){var a=i.getQueryVar("debug");(i.inNode||Vb||null!=a&&"false"!=a)&&i.log(j.map(arguments,j.strval).join(" "))},getViewportWidth:function(){return document.documentElement.clientWidth},getViewportHeight:function(){return document.documentElement.clientHeight},createElement:function(a,b,c){try{var d=document.createElement(a)}catch(e){return k("[Browser.createElement()] Error creating element of type:", a),null}"canvas"==a.toLowerCase()&&window.CanvasSwf&&CanvasSwf.initElement(d);b&&(d.style.cssText=b);c&&(d.className=c);return d},getElement:function(a){var b;"string"==typeof a?("#"==a.charAt(0)&&(a=a.substr(1)),b="body"==a?document.getElementsByTagName("body")[0]:document.getElementById(a)):a&&void 0!==a.nodeType&&(b=a);return b||null},removeElement:function(a){a&&a.parentNode&&a.parentNode.removeChild(a)},elementIsFixed:function(a){for(var b=document.body;a&&a!=b;)var c=a,a=a.offsetParent;return"fixed"== (c&&(c.currentStyle||window.getComputedStyle&&window.getComputedStyle(c,""))||{}).position},getElementFromPageXY:function(a,b){var c=this.pageXToViewportX(a),d=this.pageYToViewportY(b);return document.elementFromPoint(c,d)},getPageXY:function(a){var b=0,c=0;if(a.getBoundingClientRect)c=a.getBoundingClientRect(),b=c.left-i.pageXToViewportX(0),c=c.top-i.pageYToViewportY(0);else{for(var d=i.elementIsFixed(a);a;)b+=a.offsetLeft||0,c+=a.offsetTop||0,a=a.offsetParent;d&&(a=-i.pageXToViewportX(0),d=-i.pageYToViewportY(0), b+=a,c+=d)}return{x:b,y:c}},__getIEPageElement:function(){var a=document.documentElement;return a.clientHeight?a:document.body},pageXToViewportX:function(a){var b=window.pageXOffset;void 0===b&&(b=i.__getIEPageElement().scrollLeft);return a-b},pageYToViewportY:function(a){var b=window.pageYOffset;void 0===b&&(b=i.__getIEPageElement().scrollTop);return a-b},_nodeIndex:{},__findNodeListener:function(a,b,c,d){for(var e=0,f=a.length;eMath.abs(b.pageX-a.pageX)+Math.abs(b.pageY-a.pageY)&&500>(new Date).getTime()-b.downTime&&this.dispatchEvent("click",a)};G.prototype.updateContainerBounds=function(a,b,c,d){this._boundsOnPage.setBounds(a,b,c,d)};G.prototype.getStandardMouseData=function(a){var a=this.standardizeMouseEvent(a),b=a.pageX,a=a.pageY, c=this._boundsOnPage;return{pageX:b,pageY:a,mapX:b-c.left,mapY:a-c.bottom,centerX:c.centerX(),centerY:c.centerY(),deltaX:0,deltaY:0,deltaScale:1}};G.prototype.getCurrentMouseData=function(){var a={};this._moveData&&p.copyAllParams(a,this._moveData);return a};G.prototype.pageX=function(){return this._moveData.pageX};G.prototype.pageY=function(){return this._moveData.pageY};G.prototype.standardizeMouseEvent=function(a){if(a&&void 0!==a.pageX)return a;a=a||window.event;return{pageX:a.pageX||a.clientX+ document.body.scrollLeft+document.documentElement.scrollLeft,pageY:a.pageY||a.clientY+document.body.scrollTop+document.documentElement.scrollTop}};G.prototype.throttledMouseMove=function(a){var b=(new Date).getTime();if(40b||b>=this.length||!this.data[a]?k("[DataTable.updateValue()] invalid field or id:",a,b):(this.data[a][b]=c,this._indexedField===c&&(this._index[c]=b))};u.prototype.map=function(a,b){for(var c=[],d=this._rec,e=0,f=this.size();ethis.id};Q.prototype.clone=function(){return new Q(this._table,this.id)};Q.prototype.getString= function(a){return this.get(a)||""};Q.prototype.getNumber=function(a){return 1*this.get(a)};Q.prototype.getInteger=function(a){return this.get(a)=this.xx.length)return this._idx= 0,!1;this.nextX=this.xx[a];this.nextY=this.yy[a];this._idx=a+1;return!0};P.prototype.calcBounds=function(){var a=this.size();if(0!=a){for(var b=this.xx,c=this.yy,d=b[0],e=c[0],f=d,g=e,h=1;hd?d=l:le?e=n:n>=8,this._aligned=!1):(a=this._offByte,this._aligned=!0);return a};Za.prototype.readUnsignedShort=function(a){var b=this._str.charCodeAt(this._idx++),c;55295=b&&(55295==b?b=0:(c=this._str.charCodeAt(this._idx++),b=1024*(b-55296)+(c-56320)));!0===this._aligned?c=b:(c=this._offByte>8,this._offByte=b&255);!a&&!this._useBE&&(c=(c&255)>8);return c};Za.prototype.readDouble= function(){var a,b=this.readByte(),c=this.readByte(),d=this.readByte(),e=this.readByte();a=this.readByte();var f=this.readByte(),g=this.readByte(),h=this.readByte(),l=0>4),n=h-1023,s=16777216,b=b+(ca.length)){var e=this._size,f=this.xx,g=this.yy,h=this.zz;d&&(a=a.concat().reverse(),b=b.concat().reverse(),c=c.concat().reverse());0s)){var r=g[0]*c+e,i=h[0]*d+f;a.moveTo(r,i);for(var j=1;j=n||j==s)r=g[j]*c+e,i=h[j]*d+f,a.lineTo(r,i)}};ma.prototype.hasNext=function(a){var b=this._idx,c=this._size-1;if(b>=this._size)return this._idx=0,!1;var d=this._scale.level,e=b,f=1;a&&(e=c-b,f=-1);if(0=d);)e+=f,b++;this.nextX=this.xx[e];this.nextY=this.yy[e];this._idx=b+1;return!0};ma.prototype.size=function(){return this._size};na.prototype.getBounds= function(){return this._layerBounds.cloneBounds()};na.prototype.initLines=function(a,b){for(var c=a==t.INNERLINES,d=a==t.OUTERLINES,e=this._vectorScale,f=[],g=this._xx,h=this._yy,l=this._zz,n=g.length,s=0,r=0;r<=c&&(a.readUnsignedInt(),a.readUnsignedInt(),a.readUnsignedInt());b.minx=a.readDouble();b.miny=a.readDouble();b.maxx=a.readDouble();b.maxy=a.readDouble();b.m_pack=a.readDouble();b.bx_pack=a.readDouble();b.by_pack=a.readDouble();b.bit_precision=a.readByte();b.bitShift=1<<b.bit_precision-1;b.simplified_levels=a.readByte();b.level_resolution=a.readByte();b.level_one_precision=a.readByte();b.extract_levels=0;b.min_available_level=0;3==c&&(b.extract_levels= a.readByte(),b.min_available_level=b.simplified_levels-b.extract_levels+1);b.mUnpack=1/b.m_pack;b.bxUnpack=-b.bx_pack*b.mUnpack;b.byUnpack=-b.by_pack*b.mUnpack;return b};na.prototype.extractMergedShape=function(a){return!this._topology?(k("[MshpParser.extractMergedShape()] Missing topology data; initialize with type C.TOPOLOGY"),null):this._topology.mergeShapes(a)};na.prototype.extractMergedShapeSet=function(a){return j.map(a,function(a,c){var d=this.extractMergedShape(a);d.id=c;return d},this)}; na.prototype.extractProjectedShapes=function(a){var b;a==t.POLYGONS?b=this._polygonShapes:a==t.POLYGONS?b=this._lineShapes:a==t.INNERLINES?b=this._innerShapes:a==t.OUTERLINES?b=this._outerShapes:a==t.TOPOLOGY?b=[]:a==t.OUTLINE&&(b=j.sequence(this._topology.shapeCount),b=[this.extractMergedShape(b)]);b||(k("[MshpParser.extractProjectedShapes()] Shapes are not available for type:",a),b=[]);return{bounds:this._layerBounds.cloneBounds(),polygons:a==t.POLYGONS||a==t.TOPOLOGY||a==t.OUTLINE,shapes:b,vectorScaler:this._vectorScale}}; na.prototype.parseTopologyData=function(a,b,c,d){var e=[],f,g=[],h=new Ob(this._xx,this._yy,this._zz,this._vectorScale),l=a.readUnsignedInt(),n=0;new v;for(var s=0;sq?0:q-2,t=0<=q;w++)h=a.readUnsignedShort()-j,l=a.readUnsignedShort()-j,n+=h*k,s+=l*k,null!==b?(r=b.transformXY(n,s,r),h=r.x,l=r.y):(h=n,l=s),he&&(e=h),l< f?f=l:l>g&&(g=l),B[w]=h,u[w]=l}n=Array(t);for(s=0;s<--g);c.lng=a;c.lat=f}else c.lng=a/this._R+this._lng0,c.lat=0.5*Math.PI-2*Math.atan(Math.exp(-b/this._R));c.lat*=this._RAD2DEG;c.lng*=this._RAD2DEG;return c};oa.prototype.setBaseZoom=function(a){this.baseZoom=a};oa.prototype.setBaseScale=function(a){this.baseScale=a};oa.prototype.getTileBounds=function(a,b,c){var d=this.convZoomToScale(c), e=this.tileHeightInPixels*d,d=this.tileWidthInPixels*d,c=1<<c,a=a*d-0.5*c*d,b=0.5*c*e-b*e;return(new v).setBounds(a,b,a+d,b-e)};oa.prototype.getLevelOneScale=function(){var a=156543.03515625;this.baseScale&&(a=this.baseScale*(1<<this.baseZoom));return a};oa.prototype.getCustomScaleRatio=function(){return this.baseScale?256*this.getLevelOneScale()/40075017:1};oa.prototype.convScaleToZoom=function(a,b){var c=Math.log(this.getLevelOneScale()/a)/Math.log(2),d=Math.round(c),e=Math.abs(c-d);if(b||void 0=== b||1E-6>e)c=d;return c};oa.prototype.convZoomToScale=function(a){return this.getLevelOneScale()/Math.pow(2,a)};var jc=/#?([0-9a-f]{1,2})([0-9a-f]{1,2})([0-9a-f]{1,2})$/i;Qb.prototype={hasStroke:function(){return 0this.strokeAlpha?ua(this.strokeColor,this.strokeAlpha):ua(this.strokeColor),a.lineWidth=this.strokeWeight);this.specialFill?a.fillStyle=this.specialFill:this.fillAlpha&&(1>this.fillAlpha?a.fillStyle=ua(this.fillColor,this.fillAlpha):null!=this.fillColor&&(a.fillStyle=ua(this.fillColor)))}};p.inherit(xa,Qb);xa.prototype.hasFill=function(){return!(!this.fillAlpha&&!this.fillAlphas||!(null!=this.fillColor||this.fillColors))}; xa.prototype.hasStroke=function(){return!(!this.strokeWeight&&!this.strokeWeights||!this.strokeAlpha&&!this.strokeAlphas||!(null!=this.strokeColor||this.strokeColors))};xa.prototype.setId=function(a){var b=this.fillColors,c=this.fillAlphas;c&&(this.fillAlpha=c[a],String.fromCharCode(255*this.fillAlpha|0));this.strokeAlphas&&(this.strokeAlpha=this.strokeAlphas[a]);this.strokeWeights&&(this.strokeWeight=this.strokeWeights[a]);this.strokeColors&&(this.strokeColor=this.strokeColors[a]);c="";b&&(b=b[a], c+=String.fromCharCode(b&255)+String.fromCharCode(b>>16&15),this.fillColor=b);this.fillStyler&&(c+=this.fillStyler.getSortCode(a),this.fillStyler.updateStyle(a,this));if(this.strokeWeight||this.strokeWeights)c="";this.sortKey=c};xa.prototype.updateStyle=function(a){this.sortKey="";a.strokeWeight?(this.strokeAlphas=j.isArray(a.strokeAlpha)?a.strokeAlpha:null,this.strokeWeights=j.isArray(a.strokeWeight)?a.strokeWeight:null,this.strokeColors=j.isArray(a.strokeColor)?a.strokeColor:null,this.setStroke(a.strokeWeight, a.strokeColor,a.strokeAlpha)):this.strokeWeight=0;if(a.fillAlpha){var b=a.fillAlpha;j.isArray(b)?this.fillAlphas=b:(this.fillAlpha=b,this.fillAlphas=null);b=a.fillColor;j.isArray(b)?this.fillColors=b:(this.fillColor=b,this.fillColors=null)}else this.fillColors=this.fillColor=this.fillAlpha=this.fillAlphas=null;a.hatchColor&&(this.fillStyler||(this.fillStyler=new Fa(a)),this.fillStyler.update(a));this.compositing=a.compositing||""};Fa.prototype.update=function(a){a=a.hatchColor;j.isArray(a)?this.hatchColors= a:this.hatchColor=a||void 0};Fa.prototype.getSortCode=function(a){var b=this.hatchColors;return b?String(b[a]||""):"xx"};Fa.prototype.updateStyle=function(a,b){var c=this.hatchColor||this.hatchColors[a]||null;if(c&&b.fillAlpha){var d=ua(b.fillColor,b.fillAlpha),c=ua(c,b.fillAlpha);b.specialFill=this.getDiagonalFill(d,c)}else b.specialFill=null};Fa.prototype.getEmptyCanvas=function(a,b){var c=document.createElement("canvas");c.setAttribute("width",a);c.setAttribute("height",b);return c};Fa.prototype.getDiagonalFill= function(a,b){var c=a+b,d=this._fills;if(!d[c]){var e=this.getEmptyCanvas(4,4),f=e.getContext("2d");f.lineWidth=1.36;f.fillStyle=a;f.fillRect(0,0,4,4);f.strokeStyle=b;f.moveTo(0,5);f.lineTo(5,0);f.moveTo(-1,2);f.lineTo(2,-1);f.stroke();d[c]=f.createPattern(e,"repeat")}return d[c]};p.inherit(T,N);T.prototype.setPreFunction=function(a,b){if(b)var c=a,a=function(a){c.call(b,a)};this._pre=a};T.prototype.getAttributeStyler=function(a){return this._stylers[a]||null};T.prototype.styleAttributeByZoom=function(a, b,c){this._stylers[a]=new tb(b,c)};T.prototype.getStyle=function(){return this._defaultStyle||{}};T.prototype.invalidate=function(){for(var a in this._stylers)this._stylers[a].invalidate()};T.prototype.setDefaultStyle=function(a){var b=this._defaultStyle||{};p.copyAllParams(b,a);this._defaultStyle=b};T.prototype.setAttributeStyle=function(a,b){this._stylers[a]=new Rb(b)};T.prototype.getAttributeDataAtZoom=function(a,b){var c=this._stylers[a];return c?(c.setZoom(b),c.getValue()):null};T.getClassId= j.getClassId;p.inherit(R,T);R.prototype.handleDataChange=function(){k("[DataStyler.handleDataChange()] invalidating style");this.invalidate()};R.prototype.getDataTable=function(){return this._data};R.prototype.attr=R.prototype.setAttributeStyler=function(a,b,c){var d=typeof b;if("string"==d)b=new sb(this._data,b);else if("function"==d)b=new Ra(this._data,b,c);else{k("[DataStyler.setAttributeStyler()] invalid filter:",b);return}this._stylers[a]=b};R.prototype.calcCircleSizes=function(a,b){this.setAttributeStyler("bubbleSizes", function(c){c=c.getNumber(a);return Math.sqrt(c*b)})};R.prototype.calcFillsByRange=function(a,b,c){this.setAttributeStyler("fillColor",R.getChoroplethStyler(a,b,c))};R.prototype.calcIndexedFills=function(a,b){this.setAttributeStyler("fillColor",function(c){return b[c.get(a)]})};R.prototype.setLinkedAttributeStyler=function(a,b,c,d){this.waitFor(c);this._stylers[a]=new Ra(c,b,d)};R.getRandomStyler=function(a){return function(){var b=Math.floor(Math.random()*a.length);return a[b]}};R.getChoroplethStyler= function(a,b,c){var d=T.getClassId;return function(e){e=e.getNumber(a);e=d(e,b);return c[e]}};T.prototype.getStyleAtZoom=function(a){var b={};p.copyAllParams(b,this._defaultStyle);this._pre&&this._pre(b);var c=this._stylers,d;for(d in c){var e=c[d];e.setZoom(a);b[d]=e.getValue()}return b};Ga.prototype.setZoom=function(a){this._zoom=a};Ga.prototype.invalidate=function(){this._needsUpdate=!0};p.extendPrototype(Rb,Ga);p.extendPrototype(sb,Ga);sb.prototype.getValue=function(){return this._data.getFieldData(this._field)}; p.extendPrototype(Ra,Ga);Ra.prototype.invalidate=function(){this._cached=null;this._needsUpdate=!0};Ra.prototype.getValue=function(){if(!1===this._needsUpdate&&this._useCaching)return this._cached;for(var a=this._func,b=this._data,c=[],d=0,e=b.size();db/a&&(f=1E3*a/g)}this.getCRS().setBaseScale(f)}c&& this.dispatchEvent("resize")};m.prototype.getContainer=function(){return this.div};m.prototype.getLayers=function(){return this._layers};m.prototype.convViewPixelsToLatLng=function(a,b){var c=this.convViewPixelsToMeters(a,b);return this.projection.unprojectXY(c.x,c.y)};m.prototype.convViewPixelsToMeters=function(a,b){var c=this.getCenterAsLatLng(),c=this.projection.projectLatLng(c.lat,c.lng),d=this.getScale(),e=this.getWidthInPixels(),f=this.getHeightInPixels();return new I(c.x- -(a-0.5*e)*d,c.y- (b-0.5*f)*d)};m.prototype.convMetersToViewPixels=function(a,b){return this.getVisibleExtent().transformXY(a,b)};m.prototype.setFallbackImage=function(){};m.prototype.getSpacing=function(){if(!this._spacing){var a=this._opts,b=a.spacing||0;this._spacing={left:isNaN(a.spacingLeft)?b:a.spacingLeft+0,top:isNaN(a.spacingTop)?b:a.spacingTop+0,right:isNaN(a.spacingRight)?b:a.spacingRight+0,bottom:isNaN(a.spacingBottom)?b:a.spacingBottom+0}}return this._spacing};m.prototype.getCenterAsLatLng=function(){k("[Map.getCenterAsLatLng()] stub")}; m.prototype.getInitialCenterAsLatLng=function(){var a=this._opts.center,b=this.getSpacing();if(b.left==b.right&&b.top==b.bottom)return a;var c=this.getInitialScale(),d=0.5*(b.right-b.left)*c,b=0.5*(b.top-b.bottom)*c,a=this.projection.projectLatLng(a.lat,a.lng);return this.projection.unprojectXY(a.x+d,a.y+b).clone()};m.prototype.getZoom=function(){};m.prototype.addLayer=function(a){var b=this._layers;if("shape"==a.type||"bubble"==a.type)a._opts.hitPriority=p.readParam(a._opts.hitPriority,0.01*b.length); for(var c=0,d=b.length;c<=g;g--){var h=f[g];h.size>e&&(e=h.size)}e=0.5*(e+2)*a;f=this._boxes[c];f.setBounds(f.left-e,f.top+e,f.right+e,f.bottom-e)}};fa.prototype.getSymbolsInBoundingBox= function(a,b){for(var c=this._boxes,d=this._bins,e=[],f=[],g=!!b,h=0,l=c.length;hn.left&&a.top>n.bottom&&a.bottom=a.left&&i.left<=a.right&&i.top>=a.bottom&&i.bottom<=a.top)&&e.push(i)}}}return e.concat(f)};fa.prototype.initCellBounds=function(){for(var a=this._bounds,b=a.width()/this.COLS,c=a.height()/this.ROWS,d=a.left,a=a.bottom, e=this._boxes,f=0,g=this.ROWS*this.COLS;fs||s>=e||isNaN(s)?k("[SymbolIndex.init()] index id out-of-range; id:",s,"CELLS:",e,"c:",l,"r:",n,"sym.x:",h.x,"sym.y:",h.y,"symid:",h.id):d[s].push(h)}else k("[SymbolIndex.init()] Null symbol; id:",f)}this._boxes=c;this._bins=d};p.inherit(Sa,fa);Sa.prototype.getSymbolCol=function(a){return(0.5* (a.left+a.right)-this._bx)/this._cellWidth|0};Sa.prototype.getSymbolRow=function(a){return(0.5*(a.top+a.bottom)-this._by)/this._cellHeight|0};Sa.prototype.init=function(a,b){fa.prototype.init.call(this,a,b);for(var c=this._bins,d=0,e=c.length;d<=h;h--)f.mergeBounds(g[h]);this._boxes[d]=f}};Ja.prototype.init=function(){};Ja.prototype.drawTile=function(a,b,c,d){var e=this._style;e.updateStyle(d);d=new W(b.width,b.height);d.updateBounds(c);for(var b=b.getContext("2d"), c=a.length,f=e.hasStroke(),g=e.hasFill(),h=0;hl&&f>r||g>n&&g>i)||(gg&&s++);l=r;n=i}1==s%2&&d++}return 1==d%2};this.getDistanceFromPointToShape=function(a,b,c){if(isNaN(a)||isNaN(b))return Infinity;for(var c=c.parts,d=Infinity,e=0;ep?(i=j,j=p):i=p;r=i-l<=e;e--){var f=d[e];if(a==f.x&&b==f.y&&c==f.z)return f}return null};Ta.prototype.vacuum=function(){for(var a=this._tiles,b=[],c=a.length-1;0<=c;c--){var d=a[c];d.canvas.parentNode&&b.push(d)}this._tiles=b};Ta.prototype.getTilesForRedraw=function(){this.vacuum(); this._redrawCount++;return this._tiles};p.inherit(db,F);La.postpone=function(a,b,c){var d=b;c&&(d=function(){b.call(c)});setTimeout(d,a)};p.inherit(La,V);var vb=(new La).interval(25).start();p.inherit(Ma,V);Ma.prototype.procTween=function(a){var b=1<=a,c=this.__getData(a);c.progress=a;c.done=b;this.dispatchEvent("tick",c);b&&this.dispatchEvent("done")};var ub=Ma;ub.quadraticOut=function(a){return 1-Math.pow(1-a,2)};ub.sineInOut=function(a){return a=0.5-Math.cos(a*Math.PI)/2};m.useHTML5Extensions= function(){var a=function(a,b,c){this.id=a;this.x=b;this.y=c;this.sortKey=""};da.prototype.getBounds=function(){return this._bounds||new v};da.prototype.importFromDataTable=function(a,b,c,g){g=g.getProjectionTransform();return this.importXYFields(a,c,b,g)};da.prototype.importXYFields=function(b,c,f,g){var h=function(a,b,c){this.id=a;this.x=b;this.y=c};h.prototype={size:0,setDefaultSize:function(a){h.prototype.size=a}};p.extendPrototype(h,a);this._data=b;var l=new v,n=[];this._bubbles=n;b.addEventListener("ready", function(){for(var a=b.getFieldData(c),r=b.getFieldData(f),i=b.size(),j=Infinity,k=Infinity,m=-Infinity,p=-Infinity,D=new I,q=0;qm&&(m=x);yp&&(p=y);var t=new h(q,x,y);n.push(t)}l.setBounds(j,p,m,k);this._bounds=l;this._index=new fa;this._index.init(n,l);this.startWaiting()},this);return this};da.prototype.testHitAtXY=function(a,b,c,g){for(var h=15*c,l=h,n,s=Infinity,r=-1,i=!1,h=(new v).setBounds(a-h,b+h,a+h,b-h),g=this.getCirclesInBoundingBox(h, g),h=g.length-1;0<=h;h--){var j=g[h],k=(j.x-a)*(j.x-a)+(j.y-b)*(j.y-b),m=0.5*j.size,p=(3>m?3:m)*c,q=p*p,t=Math.sqrt(k),p=t-p;if(k<=q){if(!i||m=h))){for(var s=eb.canvasPixelRatio||1,i=0,j=n.length;ic&&(c=1);g=this.id%3328;this.sortKey=String.fromCharCode(c)+ String.fromCharCode(g)};a.prototype.getSortKey=function(){return this.sortKey};a.prototype.draw=function(a,b){var c=this.x*b.mx+b.bx,g=this.y*b.my+b.by,h=this.size||0;0t&&(D||u<=b;b--){var c=a[b];c.clear();this.drawTile(c.canvas,c.x,c.y,c.z)}};p.extendPrototype(S,Ua);p.extendPrototype($,Ua);p.extendPrototype(Z,Ua);m.prototype.hideHover=function(){};S.prototype.drawTile=function(a,b,c,g){var h=this._shapes;if(!h||!h._ready)eb.VERBOSE&&k("[ShapeLayer.drawTile()] Missing shape or shape not READY");else if(!this.getTileIndex().addTile(a,b,c,g)&&!this.isHidden()){var b= this._map._crs.getTileBounds(b,c,g),c=h.getShapesInBoundingBox(b,this.getHiddenSymbolList()),g=this.getStyle(),l=new W;l.updateBounds(b);l=l.metersPerPixel;h.updateContentSize(h.getBounds().width()/l,h.getBounds().height()/l);this._renderer.drawTile(c,a,b,g)}};$.prototype.drawTile=function(a,b,c,g){var h=this._map,l=this._symbols;!l||!l._ready?k("[CircleLayer.drawTile()] Missing bubbles or bubble data not READY"):!this.getTileIndex().addTile(a,b,c,g)&&!this.isHidden()&&(b=h._crs.getTileBounds(b,c, g),c=this.getStyle(),k("[CircleLayer.drawTile()] style:",c),this.updateCircleSizes(c),g=this.getHiddenSymbolList(),l=l.getCirclesInBoundingBox(b,g),this._renderer.drawTile(l,a,b,c))};Z.prototype.init=function(){};Z.prototype._getActiveTiles=function(){var a=this._currTiles;a||(a=this._currTiles=[]);return a};Z.prototype.clear=function(){for(var a=this._getActiveTiles(),b=0;b>>> Map.zoomToInitialExtent()",m.prototype.zoomToInitialExtent);m.prototype.zoomIn=function(){this.setZoom(this.getZoom()+1)};m.prototype.zoomOut=function(){this.setZoom(this.getZoom()- 1)};m.prototype.zoom=function(a){if(a&&a.bounds){var b=a.bounds.centerX(),c=a.bounds.centerY(),g=this.getCRS(),b=g.projection.unprojectXY(b,c),a=g.convScaleToZoom(a.bounds.width()/this.getWidthInPixels(),!0);this.zoomToLatLng(b.lat,b.lng,a)}};m.prototype.handleZoomEnd=function(){var a=this.getZoom();this.dispatchEvent("zoom-end",{zoom:a})};m.prototype.getCenterAsLatLng=function(){var a=this._gmap.getCenter();return new la(a.lat(),a.lng())};m.prototype.getZoom=function(){return this._gmap.getZoom()}; F.prototype.hide=function(){this._hidden||(this._hidden=!0,this._glyr&&this._map._gmap.overlayMapTypes.setAt(this._glyrIdx,null))};F.prototype.show=function(){this._hidden&&(this._hidden=!1,this._glyr&&this._map._gmap.overlayMapTypes.setAt(this._glyrIdx,this._glyr))};F.prototype.__initTileLayer=function(){var a=new kc(this,this._map._gmap);this.__addTileLayer(a)};F.prototype.__addTileLayer=function(a){var b=this._map._gmap;this._glyr=a;this._glyrIdx=b.overlayMapTypes.length;b.overlayMapTypes.push(this.isHidden()? null:a)};S.prototype.handleReadyState=function(){this.__initTileLayer()};$.prototype.handleReadyState=function(){this.__initTileLayer()};Z.prototype.handleReadyState=function(){this.__initTileLayer()};db.prototype.init=function(){};db.prototype.handleReadyState=function(){k("[CanvasTestLayer.handleReadyState()]");this.__initTileLayer()};db.prototype.drawTile=function(a,b,c){a=a.getContext("2d");a.fillStyle=1==(b+c)%2?"rgba(255,0,0,0.1)":"rgba(0, 0, 255, 0.1)";a.fillRect(0,0,256,256)}};M.prototype.__initMap= function(a){!this._map&&(a&&a.mouse)&&(a.mouse.ignoreElement(this.container),a.mouse.addEventListener("mousemove",this.moveHandler,this),a.addEventListener("scroll",this.handleScroll,this),this._map=a)};M.prototype.setLayer=function(a){a.addEventListener("rollover",this.displayHandler,this);a.addEventListener("rollout",this.hideHandler,this)};M.getDivHTML=function(a,b){return'

'+a+"

\n"};M.getTitle=function(a){return this.getDivHTML(a,"nytg-popup-title")};M.getSubtitle=function(a){return this.getDivHTML(a, "nytg-popup-subtitle")};M.getText=function(a){return this.getDivHTML(a,"nytg-popup-text")};M.getTail=function(a){return this.getDivHTML(a,"nytg-popup-tail")};M.prototype.getElement=function(){return this.container};M.prototype.displayRecord=function(a){a=this._callback(a);void 0!==a?a?this.showHTML(a):this.hide():this.show()};M.prototype.showHTML=function(a){this.container.innerHTML=a;this.show()};M.prototype.show=function(){var a=this._attachToMap?this._map.div:document.body,b=this.container;b.parentNode!= a&&a.appendChild(b);this.REMOVE||(b.style.visibility="visible");this.containerWidth=b.offsetWidth;this.containerHeight=b.offsetHeight;this.pageWidth=i.getViewportWidth();this.viewportX=i.pageXToViewportX(0);this.updatePopupLocation();this._visible=!0};M.prototype.hide=function(){this._visible=!1;this.container.parentNode?this.REMOVE?this.container.parentNode.removeChild(this.container):this.container.style.visibility="hidden":k("[HTMLPopup.hide()] Not attached to DOM.")};M.prototype.moveHandler=function(a){this.mouseX= a.pageX;this.mouseY=a.pageY;this._visible&&this.updatePopupLocation()};M.prototype.movePopupToXY=function(a,b){this.mouseX=a.pageX||0;this.mouseY=a.pageY||-200;this.updatePopupLocation(b)};M.prototype.updatePopupLocation=function(a){var b=this.mouseX,c=this.mouseY,d=this.containerWidth,e=this.containerHeight,f=c-e-this._opts.offset,c=c+this._opts.offset+8;a&&(this._fitsAbove=0<=i.pageYToViewportY(f),this._fitsBelow=i.pageYToViewportY(c+e)<=i.getViewportHeight());a=b-d*this._opts.peg;f=this._fitsBelow? c:f;0>a?a=0:a+d>this.pageWidth&&(a=this.pageWidth-d);this._fixedPosition&&(a=i.pageXToViewportX(a),f=i.pageYToViewportY(f));this.setXY(a,f)};M.prototype.handleScroll=function(a){this._visible&&(this._fixedPosition?0!=a.deltaViewY&&this.setXY(this._x+a.deltaViewX,this._y+a.deltaViewY):0!=a.deltaPageY&&this.setXY(this._x+a.deltaPageX,this._y+a.deltaPageY))};M.prototype.setXY=function(a,b){a=Math.round(a);b=Math.round(b);this._x=a;this._y=b;var c=this.container;c.style.left=a+"px";c.style.top=b+"px"}; M.prototype.displayHandler=function(a){this.__initMap(a.target._map);var b=a.rec;b?(this.displayRecord(b),this.movePopupToXY(a,!0)):k("[HTMLPopup.displayHandler()] missing record")};M.prototype.hideHandler=function(){this.hide()};var zb={leftPad:function(a,b,c){for(b-=a.length;0a?"-":d?"+":"";if(3d.length)return k("[dashed-shape partitionVertexSet()] Mismatched input:",d,a,b),null;for(var g,h,l,n,i,r=0,m=b.length;r",u,"z:",t,"breaks:",c);if(0==r)i=new P([],[]);else if(n!=u)for(var D=j.getInnerBreaks(l,t,c),v=t-l,w=0;w=m;)i=0c||24==c?this.AM:this.PM,"P"==b&&(c=c.toLowerCase())}d>c.length&&(c=zb.leftPad(c,d,"0"));return c};U.prototype.escape=function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")};aa.MS_PER_HOUR=36E5;aa.MS_PER_DAY=24*aa.MS_PER_HOUR;aa.prototype.addDays=function(a){this.ms+=Math.round(a*aa.MS_PER_DAY);return this};aa.prototype.addHours=function(a){this.ms+= Math.round(a*aa.MS_PER_HOUR);return this};aa.prototype.getTime=function(){return this.ms};aa.prototype.getDate=function(){return new Date(this.ms)};j.addHours=function(a,b){return(new aa(a)).addHours(b).getDate()};j.addDays=function(a,b){return(new aa(a)).addDays(b).getDate()};var z={NAME:"NAME",NOAA_ID:"NOAA_ID",YEAR:"YEAR",TRACK_PATH:"trackPath",TRACK_VECTOR:"trackVector",TRACK_TIMES:"trackTimes",TRACK_INTENSITIES:"trackIntensities",TRACK_WIND_SWATH:"windSwath",TRACK_LATITUDES:"lats",TRACK_LONGITUDES:"lons", FORECAST_PATH:"forecastPath",FORECAST_VECTOR:"forecastVector",FORECAST_INTENSITIES:"forecastIntensities",FORECAST_TIMES:"forecastTimes",FORECAST_CONE:"forecastCone",FORECAST_VECTOR_2:"forecastVector2",FORECAST_CLASS_2:"forecastClasses2",OBS_INTENSITY:"obsIntensity",OBS_TIME:"obsTime",OBS_SHAPE:"obsShape",OBS_CLASS:"obsClass",OBS_X:"obsX",OBS_Y:"obsY",OBS_FORECAST:"obsForecast",projection:new rb,EXTEND_TRACK:!0,COLORS:[6675419,2995637,16760364,16357891,15556608,14697742,13175306],INTENSITY_BREAKS:[34, 64,83,96,114,135],STORM_LABELS:"Tropical depression;Tropical storm;Cat. 1 hurricane;Cat. 2 hurricane;Cat. 3 hurricane;Cat. 4 hurricane;Cat. 5 hurricane".split(";")};z.TIMESTAMP_PARSER=new U("%Y%m%d%H");z.convKnotsToMilesPerHour=function(a){return 1.15077945*a};z.WINDSPEED_BREAKS=j.map(z.INTENSITY_BREAKS,function(a){a=z.convKnotsToMilesPerHour(a);return Math.round(a)});z.getStormLabel=function(a){return this.STORM_LABELS[a]||"Unknown"};z.GOOGLE_MAP_STYLE=[{featureType:"all",elementType:"all",stylers:[{saturation:-90}]}, {featureType:"road",elementType:"geometry",stylers:[{visibility:"simplified"},{color:"#bbbbbb"}]},{featureType:"road",elementType:"labels",stylers:[{visibility:"off"}]},{featureType:"water",elementType:"geometry",stylers:[{lightness:85}]},{featureType:"landscape",elementType:"geometry",stylers:[{lightness:-10}]},{featureType:"poi",elementType:"all",stylers:[{visibility:"off"}]},{featureType:"administrative",elementType:"geometry",stylers:[{visibility:"off"}]},{featureType:"administrative.country", elementType:"geometry",stylers:[{visibility:"on"}]},{featureType:"administrative.province",elementType:"geometry",stylers:[{visibility:"on"},{color:"#ffffff"}]},{featureType:"landscape.man_made",elementType:"geometry",stylers:[{visibility:"simplified"},{gamma:0.76}]}];z.__createPathVector=function(a,b){if(!a||!b||!a.length||a.length!=b.length)return k("[Hurricanes.__createPathVector()] Invalid lat/lon arrays"),null;for(var c=z.projection,d=[],e=[],f=new I,g=0,h=a.length;gB,B=String(Math.abs(B))):u&&(m?(B=Math.abs(h)+1E-10,v=parseInt(m.substr(1),10),B=B.toFixed(v),v=0===parseFloat(B),z=!v&&0>h):(B=String(Math.abs(h)),v=0===h,z=0>h));if(w&&!q){if(-1!=i.indexOf("'")){q=B.indexOf(".");q=-1==q?B.length:q;w="";h=0;for(m=q%3||3;mq.wk))Ca(c,!0),d&& (e.success=!0,e.ref=Ab(c),d(e));else if(va[b].expressInstall&&Bb()){e={};e.data=va[b].expressInstall;e.width=f.getAttribute("width")||"0";e.height=f.getAttribute("height")||"0";f.getAttribute("class")&&(e.styleclass=f.getAttribute("class"));f.getAttribute("align")&&(e.align=f.getAttribute("align"));for(var g={},f=f.getElementsByTagName("param"),h=f.length,i=0;iq.wk)},Cb=function(a,b,c,d){jb=!0;Eb=d||null;ac={success:!1,id:c};var e=ka(c);if(e){"OBJECT"==e.nodeName?(Wa=Fb(e),kb=null):(Wa=e,kb=c);a.id=bc;if(typeof a.width==J||!/%$/.test(a.width)&&310>parseInt(a.width, 10))a.width="310";if(typeof a.height==J||!/%$/.test(a.height)&&137>parseInt(a.height,10))a.height="137";w.title=w.title.slice(0,47)+" - Flash Player Installation";d=q.ie&&q.win?"ActiveX":"PlugIn";d="MMredirectURL="+ha.location.toString().replace(/&/g,"%26")+"&MMplayerType="+d+"&MMdoctitle="+w.title;b.flashvars=typeof b.flashvars!=J?b.flashvars+("&"+d):d;q.ie&&(q.win&&4!=e.readyState)&&(d=w.createElement("div"),c+="SWFObjectNew",d.setAttribute("id",c),e.parentNode.insertBefore(d,e),e.style.display= "none",function(){4==e.readyState?e.parentNode.removeChild(e):setTimeout(arguments.callee,10)}());Gb(a,b,c)}},tc=function(a){if(q.ie&&q.win&&4!=a.readyState){var b=w.createElement("div");a.parentNode.insertBefore(b,a);b.parentNode.replaceChild(Fb(a),b);a.style.display="none";(function(){4==a.readyState?a.parentNode.removeChild(a):setTimeout(arguments.callee,10)})()}else a.parentNode.replaceChild(Fb(a),a)},Fb=function(a){var b=w.createElement("div");if(q.win&&q.ie)b.innerHTML=a.innerHTML;else if(a= a.getElementsByTagName(ra)[0])if(a=a.childNodes)for(var c=a.length,d=0;dq.wk)return d;if(e)if(typeof a.id==J&&(a.id=c),q.ie&&q.win){var f="",g;for(g in a)a[g]!=Object.prototype[g]&&("data"==g.toLowerCase()?b.movie=a[g]:"styleclass"==g.toLowerCase()?f+=' class="'+a[g]+'"':"classid"!=g.toLowerCase()&&(f+=" "+g+'="'+a[g]+'"'));g="";for(var h in b)b[h]!= Object.prototype[h]&&(g+='');e.outerHTML='";lb[lb.length]=a.id;d=ka(a.id)}else{h=w.createElement(ra);h.setAttribute("type",mb);for(var i in a)a[i]!=Object.prototype[i]&&("styleclass"==i.toLowerCase()?h.setAttribute("class",a[i]):"classid"!=i.toLowerCase()&&h.setAttribute(i,a[i]));for(f in b)b[f]!=Object.prototype[f]&&"movie"!=f.toLowerCase()&&(a=h,g=f,i=b[f],c=w.createElement("param"), c.setAttribute("name",g),c.setAttribute("value",i),a.appendChild(c));e.parentNode.replaceChild(h,e);d=h}return d},cc=function(a){var b=ka(a);b&&"OBJECT"==b.nodeName&&(q.ie&&q.win?(b.style.display="none",function(){if(4==b.readyState){var c=ka(a);if(c){for(var d in c)"function"==typeof c[d]&&(c[d]=null);c.parentNode.removeChild(c)}}else setTimeout(arguments.callee,10)}()):b.parentNode.removeChild(b))},ka=function(a){var b=null;try{b=w.getElementById(a)}catch(c){}return b},ib=function(a){var b=q.pv, a=a.split(".");a[0]=parseInt(a[0],10);a[1]=parseInt(a[1],10)||0;a[2]=parseInt(a[2],10)||0;return b[0]>a[0]||b[0]==a[0]&&b[1]>a[1]||b[0]==a[0]&&b[1]==a[1]&&b[2]>=a[2]?!0:!1},dc=function(a,b,c,d){if(!q.ie||!q.mac){var e=w.getElementsByTagName("head")[0];if(e){c=c&&"string"==typeof c?c:"screen";d&&(Hb=sa=null);if(!sa||Hb!=c)d=w.createElement("style"),d.setAttribute("type","text/css"),d.setAttribute("media",c),sa=e.appendChild(d),q.ie&&(q.win&&typeof w.styleSheets!=J&&0<>\.;]/.exec(a)&&typeof encodeURIComponent!=J?encodeURIComponent(a):a},J="undefined",ra="object",mb="application/x-shockwave-flash",bc="SWFObjectExprInst",ha=window,w=document,wa=navigator,gc=!1,hb=[function(){if(gc){var a= w.getElementsByTagName("body")[0],b=w.createElement(ra);b.setAttribute("type",mb);var c=a.appendChild(b);if(c){var d=0;(function(){if(typeof c.GetVariable!=J){var e=c.GetVariable("$version");e&&(e=e.split(" ")[1].split(","),q.pv=[parseInt(e[0],10),parseInt(e[1],10),parseInt(e[2],10)])}else if(10>d){d++;setTimeout(arguments.callee,10);return}a.removeChild(b);c=null;Db()})()}else Db()}else Db()}],va=[],lb=[],Pa=[],Wa,kb,Eb,ac,Ba=!1,jb=!1,sa,Hb,ec=!0,q,uc=typeof w.getElementById!=J&&typeof w.getElementsByTagName!= J&&typeof w.createElement!=J,nb=wa.userAgent.toLowerCase(),ob=wa.platform.toLowerCase(),vc=ob?/win/.test(ob):/win/.test(nb),wc=ob?/mac/.test(ob):/mac/.test(nb),xc=/webkit/.test(nb)?parseFloat(nb.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):!1,Ib=!+"\v1",Xa=[0,0,0],ba=null;if(typeof wa.plugins!=J&&typeof wa.plugins["Shockwave Flash"]==ra){if((ba=wa.plugins["Shockwave Flash"].description)&&!(typeof wa.mimeTypes!=J&&wa.mimeTypes[mb]&&!wa.mimeTypes[mb].enabledPlugin))gc=!0,Ib=!1,ba=ba.replace(/^.*\s+(\S+\s+\S+$)/, "$1"),Xa[0]=parseInt(ba.replace(/^(.*)\..*$/,"$1"),10),Xa[1]=parseInt(ba.replace(/^.*\.(.*)\s.*$/,"$1"),10),Xa[2]=/[a-zA-Z]/.test(ba)?parseInt(ba.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}else if(typeof ha.ActiveXObject!=J)try{var hc=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");if(hc&&(ba=hc.GetVariable("$version")))Ib=!0,ba=ba.split(" ")[1].split(","),Xa=[parseInt(ba[0],10),parseInt(ba[1],10),parseInt(ba[2],10)]}catch(zc){}q={w3:uc,pv:Xa,wk:xc,ie:Ib,win:vc,mac:wc};q.w3&&((typeof w.readyState!= J&&"complete"==w.readyState||typeof w.readyState==J&&(w.getElementsByTagName("body")[0]||w.body))&&Oa(),Ba||(typeof w.addEventListener!=J&&w.addEventListener("DOMContentLoaded",Oa,!1),q.ie&&q.win&&(w.attachEvent("onreadystatechange",function(){"complete"==w.readyState&&(w.detachEvent("onreadystatechange",arguments.callee),Oa())}),ha==top&&function(){if(!Ba){try{w.documentElement.doScroll("left")}catch(a){setTimeout(arguments.callee,0);return}Oa()}}()),q.wk&&function(){Ba||(/loaded|complete/.test(w.readyState)? Oa():setTimeout(arguments.callee,0))}(),$b(Oa)));q.ie&&q.win&&window.attachEvent("onunload",function(){for(var a=Pa.length,b=0;bq.wk)&&a&&b&&c&&d&&e?(Ca(b,!1),Zb(function(){c+="";d+="";var m={};if(i&&typeof i===ra)for(var p in i)m[p]=i[p];m.data=a;m.width=c;m.height=d;p={};if(h&&typeof h===ra)for(var q in h)p[q]=h[q];if(g&&typeof g===ra)for(var t in g)p.flashvars=typeof p.flashvars!=J?p.flashvars+("&"+t+"="+g[t]):t+"="+g[t];if(ib(e))q=Gb(m,p,b),m.id==b&&Ca(b,!0),k.success=!0,k.ref=q;else{if(f&&Bb()){m.data=f;Cb(m,p,b,j);return}Ca(b,!0)}j&&j(k)})): j&&j(k)},switchOffAutoHideShow:function(){ec=!1},ua:q,getFlashPlayerVersion:function(){return{major:q.pv[0],minor:q.pv[1],release:q.pv[2]}},hasFlashPlayerVersion:ib,createSWF:function(a,b,c){if(q.w3)return Gb(a,b,c)},showExpressInstall:function(a,b,c,d){q.w3&&Bb()&&Cb(a,b,c,d)},removeSWF:function(a){q.w3&&cc(a)},createCSS:function(a,b,c,d){q.w3&&dc(a,b,c,d)},addDomLoadEvent:Zb,addLoadEvent:$b,getQueryParamValue:function(a){var b=w.location.search||w.location.hash;if(b){/\?/.test(b)&&(b=b.split("?")[1]); if(null==a)return fc(b);for(var b=b.split("&"),c=0;ca?"0"+a:a}function b(a){e.lastIndex=0;return e.test(a)?'"'+a.replace(e,function(a){var b=h[a];return"string"=== typeof b?b:"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+a+'"'}function c(a,d){var e,h,j,k,m=f,p,q=d[a];q&&("object"===typeof q&&"function"===typeof q.toJSON)&&(q=q.toJSON(a));"function"===typeof i&&(q=i.call(d,a,q));switch(typeof q){case "string":return b(q);case "number":return isFinite(q)?String(q):"null";case "boolean":case "null":return String(q);case "object":if(!q)return"null";f+=g;p=[];if("[object Array]"===Object.prototype.toString.apply(q)){k=q.length;for(e=0;e>> [validateCallArgs()] Warning: array of objects.");if(1>> [validateCallArgs()] deep recursive call; cancelling; key:", d);continue}e=this.validateCallArgs(e,b+1)}c[d]=e}}return c};qa.prototype.callFlashMethod=function(a,b,c){if(this.isReady())try{c=this.validateCallArgs(c);mc.start();var d=null==c?void 0:ta.stringify(c),e=this.swf.callJsonMethod(a,b,d);return ta.parse(e)}catch(f){k("[FlashChannel.callFlashMethod()] Exception: "+f),k("[] ... oname:",a,"fname:",b,"opts:",c)}else k("[FlashChannel.callFlashMethod()] Called before swf is READY; object:",a,"fname:",b),this.callWhenReady(this.callFlashMethod,arguments,this, this.QUEUE_PRIORITY)};qa.prototype.createFlashObject=function(a,b,c){if(this.isReady()){try{c=this.validateCallArgs(c)}catch(d){k("[FlashChannel.createFlashObject()] Error validating arguments:",d);return}try{this.swf.createObject(a,b,c)||k("[FlashChannel.createFlashObject()] Failed to create: "+a)}catch(e){k("[FlashChannel.createFlashObject()] Exception:",String(e),"oname:",a,"type:",b,"opts:",c)}}else k("[FlashChannel.createFlashObject()] Called before swf is READY; name: "+a+" type: "+b),this.callWhenReady(this.createFlashObject, arguments,this,this.QUEUE_PRIORITY)};qa.prototype.handleFlashEventJson=function(a,b,c){try{var d;null!=c&&(d=ta.parse(c));this.handleFlashEvent(a,b,d)}catch(e){k("[FlashChannel.handleFlashEventJson()] Error parsing json:",c)}};qa.prototype.handleFlashEvent=function(a,b,c){var d=this._newProxyIndex[a];"ready"==b&&"swf"==a?this.startWaiting():this.dispatchEvent(b,c,d)};qa.prototype.handleReadyState=function(){k("%%%% FlashChannel.handleReadyState()");(this.swf=document.getElementById(this.swfId))|| k("[FlashChannel.handleReadyState()] Missing swf; swfId:",this.swfId)};m.useFlashExtensions=function(){Na.hasFlashPlayerVersion("10.0.0")?(k("[map-core-flash.js] useFlashExtensions()"),m.prototype.init=function(){this.initMap();this.initFlashMap();this.mouse&&(this.mouse.addEventListener("mouseover",this.handleMouseOver,this),this.mouse.addEventListener("mouseout",this.handleMouseOut,this))},m.prototype.handleMouseOver=function(){this.callFlashMethod("allowMouseHover",!0)},m.prototype.handleMouseOut= function(){this.callFlashMethod("allowMouseHover",!1)},m.prototype.initFlashMap=function(){k("%%% Map.initFlashMap()");var a=this._opts;a.combineLayers=!1;var b=a.swfUrl||m.swfUrl||"";if(b){var c=isNaN(a.width)?0:a.width,d=isNaN(a.height)?0:a.height;this.div.style.position="relative";var e=new qa(this.divId,c,d,b,"10.0.0");e.enableFlashChannel(this,"hybrid-map");flashOpts={scrollWheelZoom:a.scrollWheelZoom,dragging:a.dragging,doubleClickZoom:a.doubleClickZoom,limitPanning:a.limitPanning};flashOpts.width_pixels= this.getWidthInPixels();flashOpts.height_pixels=this.getHeightInPixels();flashOpts.center=this.getInitialCenterAsLatLng();flashOpts.crs=this.getCRS();b=this.getInitialBounds();flashOpts.width_km=b.width()/1E3;flashOpts.height_km=b.height()/1E3;flashOpts.backgroundColor=a.backgroundColor;flashOpts.zoom_scales=[1,2,4,8];this.createFlashObject("map",flashOpts);e.addEventListener("ready",function(){this.mouse.setMapContainer(e.swf)},this);this.addFlashEventListener("navigate",this.handleMapNavigation); this.addFlashEventListener("zoom",this.handleMapZoom)}else k("[Map for Flash.init()] Missing swf url; opts:",a)},m.prototype.handleMapNavigation=function(){this.dispatchEvent("navigate")},m.prototype.handleMapZoom=function(){this.dispatchEvent("zoom")},m.prototype.display=function(){this.callFlashMethod("display");this.startWaiting()},m.prototype.zoom=function(a){this.callFlashMethod("zoom",a)},m.prototype.zoomToLatLng=function(a,b,c){this.callFlashMethod("zoom",{lat:a,lng:b,zoom:c})},m.prototype.__procMouseData= function(a){if(a.mapWidth&&a.mapHeight){var b=this.getWidthInPixels(),c=this.getHeightInPixels();a.mapX=Math.round(a.mapX*b/a.mapWidth);a.mapY=Math.round(a.mapY*c/a.mapHeight)}this.updateContainerBounds();a.pageX=a.mapX+this._leftPix;a.pageY=a.mapY+this._topPix},m.prototype.getZoom=function(){var a=this.callFlashMethod("getZoom"),b=this.getCRS().baseZoom;b&&(a+=b-1);return a},m.prototype.zoomIn=function(){this.setZoom(this.getZoom()+1)},m.prototype.zoomOut=function(){this.setZoom(this.getZoom()-1)}, m.prototype.setZoom=function(a){var b=this.getCRS().baseZoom;b&&(a-=b-1);this.callFlashMethod("zoom",{zoom:a})},m.prototype.getScale=function(){return this.callFlashMethod("getScale")},m.prototype.getCenterAsLatLng=function(){return this.callFlashMethod("getCenterAsLatLng")},F.prototype.hide=function(){this._hidden=!0;this.callFlashMethod("hide")},F.prototype.show=function(){this._hidden=!1;this.callFlashMethod("show")},F.prototype.initFlashMapLayer=function(){k("[MapLayer.initFlashMapLayer()] this:", this);var a="MapLayer_"+j.getUniqueName();this._map._flashChannel.enableFlashChannel(this,a)},E.prototype.setHoverById=function(a){this.callFlashMethod("setHoverById",a)},E.prototype.getSymbolById=function(a){var b=this.callFlashMethod("getSymbolById",a);if(!b)return k("[SymbolLayer.getSymbolById()] returned invalid object:",b),{};var c=new v;c.setBounds(b.left,b.top,b.right,b.bottom);c.id=a;return c},E.prototype.clearHover=function(){k("[SymbolLayer.clearHover()]");this.callFlashMethod("clearHover")}, E.prototype.initFlashSymbolLayer=function(){this.addFlashEventListener("click",this.handleMouseEvent);this.addFlashEventListener("rollover",this.handleMouseEvent);this.addFlashEventListener("rollout",this.handleMouseEvent);this.addEventListener("click",this.handleClick,this)},E.prototype.handleClick=function(a){var b={hitLayer:this,hitId:a.data.id};p.copyAllParams(b,a.data);this._map.dispatchEvent("click",b)},E.prototype.handleMouseEvent=function(a){var b=a.data;this._map.__procMouseData(b);b.rec= this.getRecordById(a.id).clone()||null;b.id=a.id;this.dispatchEvent(a.type,b)},E.prototype.getFlashOptions=function(){var a=this._opts,b={};b.interactive=!!this._interactive;b.hidden=!!this._hidden;b.hitHelper=a.hitHelper&&a.hitHelper._flashName||"";b.hitPriority=a.hitPriority;return b},S.prototype.init=function(){this.initFlashMapLayer();this.initFlashSymbolLayer();this.waitFor(this._symbols)},S.convertShape=function(a){var b={};b.id=a.id;b.parts=[];for(var a=a.parts,c=0;c> numShapes:",b.length);for(var d=0,e=b.length;dd)d="width"===a?300:150;c===d?(b.style[a]=d+"px",b.getContext("2d")._resize(b.width,b.height)):b[a]=d}}function g(){a.detachEvent(F,g);for(var b in M){var c=M[b],d=c.firstChild,h;for(h in d)"function"==typeof d[h]&&(d[h]=m);for(h in c)"function"==typeof c[h]&&(c[h]=m);d.detachEvent(z,e);c.detachEvent(E,f)}a[q]=m;a[t]=m;a[u]=m;a[v]=m;a[w]=m}function h(a){return(""+a).replace(/&/g,"&").replace(/b)b=300;if(isNaN(c)||0>c)c=150;a.width=b;a.height=c}var m=null,p="canvas",q="CanvasRenderingContext2D",t="CanvasGradient",u="CanvasPattern",v="CanvasSwf",w="G_vmlCanvasManager",z="onfocus",E="onpropertychange",B="onreadystatechange",F="onunload",C;if(!(C=(a[v+"Options"]||{}).swfPath))C=b.getElementsByTagName("script"),C=C[C.length-1],C=(8<=b.documentMode?C.src:C.getAttribute("src",4)).replace(/[^\/]+$/, "");var I=C+"canvas.swf",A=new function(a){for(var b=0,c=a.length;bc||0>f)&&j(1),this._queue.push(A.createRadialGradient,a,b,c,d,e,f),new L(this)},createPattern:function(a,b){a||j(17);var c=a.tagName,d,e=this._canvasId;if(c)if(c=c.toLowerCase(),"img"===c)d=a.getAttribute("src",2);else{if(c===p||"video"===c)return;j(17)}else a.src?d=a.src:j(17);return"repeat"!==b&&"no-repeat"!==b&&"repeat-x"!==b&&"repeat-y"!==b&&""!==b&&b!==m&&j(12),this._queue.push(A.createPattern,h(d),b),!H[e][d]&&G[e]&&(this._executeCommand(),++J[e],H[e][d]=!0),new P(this)},_setLineStyles:function(){var a= this._queue;this._lineWidth!==this.lineWidth&&(this._lineWidth=this.lineWidth,a.push(A.lineWidth,this._lineWidth));this._lineCap!==this.lineCap&&(this._lineCap=this.lineCap,a.push(A.lineCap,this._lineCap));this._lineJoin!==this.lineJoin&&(this._lineJoin=this.lineJoin,a.push(A.lineJoin,this._lineJoin));this._miterLimit!==this.miterLimit&&(this._miterLimit=this.miterLimit,a.push(A.miterLimit,this._miterLimit))},_setShadows:function(){var a=this._queue;this._shadowOffsetX!==this.shadowOffsetX&&(this._shadowOffsetX= this.shadowOffsetX,a.push(A.shadowOffsetX,this._shadowOffsetX));this._shadowOffsetY!==this.shadowOffsetY&&(this._shadowOffsetY=this.shadowOffsetY,a.push(A.shadowOffsetY,this._shadowOffsetY));this._shadowBlur!==this.shadowBlur&&(this._shadowBlur=this.shadowBlur,a.push(A.shadowBlur,this._shadowBlur));this._shadowColor!==this.shadowColor&&(this._shadowColor=this.shadowColor,a.push(A.shadowColor,this._shadowColor))},clearRect:function(a,b,c,d){this._queue.push(A.clearRect,a,b,c,d)},fillRect:function(a, b,c,d){this._setCompositing();this._setShadows();this._setFillStyle();this._queue.push(A.fillRect,a,b,c,d)},strokeRect:function(a,b,c,d){this._setCompositing();this._setShadows();this._setStrokeStyle();this._setLineStyles();this._queue.push(A.strokeRect,a,b,c,d)},beginPath:function(){this._queue.push(A.beginPath)},closePath:function(){this._queue.push(A.closePath)},moveTo:function(a,b){this._queue.push(A.moveTo,a,b)},lineTo:function(a,b){this._queue.push(A.lineTo,a,b)},quadraticCurveTo:function(a, b,c,d){this._queue.push(A.quadraticCurveTo,a,b,c,d)},bezierCurveTo:function(a,b,c,d,e,f){this._queue.push(A.bezierCurveTo,a,b,c,d,e,f)},arcTo:function(a,b,c,d,e){0>e&&isFinite(e)&&j(1);this._queue.push(A.arcTo,a,b,c,d,e)},rect:function(a,b,c,d){this._queue.push(A.rect,a,b,c,d)},arc:function(a,b,c,d,e,f){0>c&&isFinite(c)&&j(1);this._queue.push(A.arc,a,b,c,d,e,f?1:0)},fill:function(){this._setCompositing();this._setShadows();this._setFillStyle();this._queue.push(A.fill)},stroke:function(){this._setCompositing(); this._setShadows();this._setStrokeStyle();this._setLineStyles();this._queue.push(A.stroke)},clip:function(){this._queue.push(A.clip)},isPointInPath:function(){},_setFontStyles:function(){var a=this._queue;if(this._font!==this.font)try{var b=O[this._canvasId];b.style.font=this._font=this.font;var c=b.currentStyle,d=[c.fontStyle,c.fontWeight,b.offsetHeight,c.fontFamily].join(" ");a.push(A.font,d)}catch(e){}this._textAlign!==this.textAlign&&(this._textAlign=this.textAlign,a.push(A.textAlign,this._textAlign)); this._textBaseline!==this.textBaseline&&(this._textBaseline=this.textBaseline,a.push(A.textBaseline,this._textBaseline));this._direction!==this.canvas.currentStyle.direction&&(this._direction=this.canvas.currentStyle.direction,a.push(A.direction,this._direction))},fillText:function(a,b,d,e){this._setCompositing();this._setFillStyle();this._setShadows();this._setFontStyles();this._queue.push(A.fillText,h(a),b,d,e===c?Infinity:e)},strokeText:function(a,b,d,e){this._setCompositing();this._setStrokeStyle(); this._setShadows();this._setFontStyles();this._queue.push(A.strokeText,h(a),b,d,e===c?Infinity:e)},measureText:function(a){var b=O[this._canvasId];try{b.style.font=this.font}catch(c){}return b.innerText=a.replace(/[ \n\f\r]/g,"\t"),new S(b.offsetWidth)},drawImage:function(a,b,c,d,e,f,g,i,k){a||j(17);var l=a.tagName,m,q=arguments.length,r=this._canvasId;if(l)if(l=l.toLowerCase(),"img"===l)m=a.getAttribute("src",2);else{if(l===p||"video"===l)return;j(17)}else a.src?m=a.src:j(17);this._setCompositing(); this._setShadows();m=h(m);if(3===q)this._queue.push(A.drawImage,q,m,b,c);else if(5===q)this._queue.push(A.drawImage,q,m,b,c,d,e);else{if(9!==q)return;(0===d||0===e)&&j(1);this._queue.push(A.drawImage,q,m,b,c,d,e,f,g,i,k)}!H[r][m]&&G[r]&&(this._executeCommand(),++J[r],H[r][m]=!0)},createImageData:function(){},getImageData:function(){},putImageData:function(){},loadImage:function(a,b,c){var d=a.tagName,e,f=this._canvasId;d?"img"===d.toLowerCase()&&(e=a.getAttribute("src",2)):a.src&&(e=a.src);if(e&& !H[f][e]){if(b||c)K[f][e]=[a,b,c];this._queue.push(A.drawImage,1,h(e));G[f]&&(this._executeCommand(),++J[f],H[f][e]=!0)}},_initialize:function(){this.globalAlpha=this._globalAlpha=1;this.globalCompositeOperation=this._globalCompositeOperation="source-over";this.fillStyle=this._fillStyle=this.strokeStyle=this._strokeStyle="#000000";this.lineWidth=this._lineWidth=1;this.lineCap=this._lineCap="butt";this.lineJoin=this._lineJoin="miter";this.miterLimit=this._miterLimit=10;this.shadowBlur=this._shadowBlur= this.shadowOffsetY=this._shadowOffsetY=this.shadowOffsetX=this._shadowOffsetX=0;this.shadowColor=this._shadowColor="rgba(0, 0, 0, 0.0)";this.font=this._font="10px sans-serif";this.textAlign=this._textAlign="start";this.textBaseline=this._textBaseline="alphabetic";this._queue=[];this._stateStack=[]},_flush:function(){var a=this._queue;return this._queue=[],a},_executeCommand:function(){var a=this._flush();if(0'+ a.join("�")+""))},_resize:function(a,b){this._executeCommand();this._initialize();0a||1';M[d]=c;var g=c.firstChild;O[d]=c.lastChild;var h=b.body.contains;if(h(c))g.movie=I;else var j=setInterval(function(){h(c)&&(clearInterval(j),g.movie=I)},0);if("BackCompat"===b.compatMode||!a.XMLHttpRequest)O[d].style.overflow= "hidden";var n=new N(c,g);return c.getContext=function(a){return"2d"===a?n:m},c.toDataURL=function(a,b){return"image/jpeg"===(""+a).replace(/[A-Z]+/g,i)?n._queue.push(A.toDataURL,a,"number"==typeof b?b:""):n._queue.push(A.toDataURL,a),n._executeCommand()},g.attachEvent(z,e),c},saveImage:function(a){a.firstChild.saveImage()},setOptions:function(){},trigger:function(a,b){M[a].fireEvent("on"+b)},unlock:function(a,b,d){var e,g,h;J[a]&&--J[a];if(b===c)e=M[a],b=e.firstChild,k(e),g=e.width,d=e.height,e.style.width= g+"px",e.style.height=d+"px",0Math.abs(b.pageX-a.pageX)+Math.abs(b.pageY-a.pageY)&&500>(new Date).getTime()-b.downTime&&this.dispatchEvent("click",a)};H.prototype.updateContainerBounds=function(a,b,c,d){this._boundsOnPage.setBounds(a,b,c,d)};H.prototype.getStandardMouseData=function(a){var a=this.standardizeMouseEvent(a),b=a.pageX,a=a.pageY,c=this._boundsOnPage;return{pageX:b,pageY:a,mapX:b-c.left,mapY:a-c.bottom,centerX:c.centerX(),centerY:c.centerY(),deltaX:0,deltaY:0,deltaScale:1}}; H.prototype.getCurrentMouseData=function(){var a={};this._moveData&&p.copyAllParams(a,this._moveData);return a};H.prototype.pageX=function(){return this._moveData.pageX};H.prototype.pageY=function(){return this._moveData.pageY};H.prototype.standardizeMouseEvent=function(a){if(a&&void 0!==a.pageX)return a;a=a||window.event;return{pageX:a.pageX||a.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,pageY:a.pageY||a.clientY+document.body.scrollTop+document.documentElement.scrollTop}}; H.prototype.throttledMouseMove=function(a){var b=(new Date).getTime();if(40> style:",b)};Y.prototype.setDateRange=function(){};Y.prototype.initYAxis=function(a){this._yAxis=a};Y.prototype.initXAxis=function(a){this._xAxis=a};Y.prototype.addIcon=function(){};Y.prototype.__initBounds=function(){};Y.prototype.__getDataBounds=function(){};Y.prototype.__initYAxis=function(){var a,b,c=this._yAxis;if(!c)return k("[TimeSeriesChart] need to call initYAxis() before draw()"), !1;void 0!=c.minY&&(a=c.minY);void 0!=c.maxY&&(b=c.maxY);(void 0==b||void 0==a)&&this.__getDataBounds();return!0};Y.prototype.draw=function(){this.__initYAxis()};p.extendNamespace("nytg",{Map:m,Utils:j,trace:k,Browser:i,Opts:p,DataTable:u,HashBang:{getRawString:function(){var a=i.getPageUrl();return(a=/(.*)(?:#!([^?]*))(\?.+)?/.exec(a))&&a[2]||""}},ScriptLoader:Sb,TextUtils:zb,GeoPoint:la,ShapeData:ea,GoogleMapStyle:[{featureType:"poi",elementType:"labels",stylers:[{visibility:"off"}]},{featureType:"transit.station", elementType:"labels",stylers:[{visibility:"off"}]},{featureType:"all",elementType:"all",stylers:[{lightness:33},{gamma:0.8},{saturation:-61}]},{featureType:"road.local",elementType:"geometry",stylers:[{saturation:-73},{lightness:33},{gamma:0.8},{visibility:"simplified"}]},{featureType:"road.arterial",elementType:"geometry",stylers:[{saturation:-91},{gamma:0.8},{visibility:"simplified"},{lightness:100}]},{featureType:"road.arterial",elementType:"labels",stylers:[{visibility:"off"}]},{featureType:"road.highway", elementType:"geometry",stylers:[{visibility:"simplified"},{saturation:-91},{gamma:0.8},{lightness:94}]},{featureType:"road.highway",elementType:"labels",stylers:[{visibility:"off"}]},{featureType:"landscape.man_made",elementType:"geometry",stylers:[{visibility:"simplified"},{gamma:0.76}]}],Waiter:N,BaseLayer:X,TileLayer:ja,IconLayer:ya,HTMLPopup:M,GoogleCRS:Pb,BasemapLayer:bb,El:K,ZoomControl:Tb,DateString:U,ShapeLayer:S,DataStyler:R,C:t,VertexSet:P,ShapeVector:L,TimeSeriesChart:Y,Hurricanes:z})})(); /******************************** ** FILE: hurricane-tracker.js ********************************/ (function() { var $ = jQuery; var n = nytg; // namespace var Utils = n.Utils, Opts = n.Opts, Browser = n.Browser, trace = n.trace, El = n.El, Hurricanes = n.Hurricanes; if (Browser.canvas) { } else { El('nytg-map-controls-container').css("display:none"); } var initYear; var initStormName; var initStormRec; var ZOOM0 = 5; //var LAT0 = 36.0; //var LON0 = -61.8; // kludgy location for isaac var LAT0 = 41.7 var LON0 = -95 // kludgy location for sandy LAT0 = 38; LON0 = -75; var STORM_ID = "2012_18"; // sandy is 18 // isaac is 2012_9 var useLocalhost = false; var LOCAL_JS = "http://localhost/nytweb/2012_hurricanes/js/"; var REMOTE_JS = "http://graphics8.nytimes.com/packages/js/newsgraphics/projects/hurricanes_2012/sandy/"; var REMOTE_STATIC_JS = "http://graphics8.nytimes.com/packages/js/newsgraphics/projects/hurricanes_2012/"; var JS_HOME = useLocalhost ? LOCAL_JS : REMOTE_JS; var JS_STATIC_HOME = useLocalhost ? LOCAL_JS : REMOTE_STATIC_JS; var TRACK_DATA_URL = JS_HOME + "hurricane_tracks.js"; var IMAGE_DATA_URL = JS_HOME + "images.js"; var TILE_URL = "http://graphics8.nytimes.com/packages/images/newsgraphics/projects/hurricanes_2012/tiles/"; var HURRICANE_ICON_URL = "http://graphics8.nytimes.com/packages/images/newsgraphics/projects/hurricanes_2012/hurricane-icon-30.png"; "http://localhost:4567http://graphics8.nytimes.com/packages/images/newsgraphics/2012/0820-hurricane-map/hurricane-icon-30.png"; var RADAR_LOG_URL = REMOTE_JS + "tile_url.js"; var SHOW_RADAR = false; var trackData; // = new n.DataTable(nytg.data.hurricane_log); var imageData; // var updateData = new DataTable(nytg.data.hurricane_update); init(); function init() { var w = new n.Waiter(); var trackLoader = new n.ScriptLoader(TRACK_DATA_URL); var imageLoader = new n.ScriptLoader(IMAGE_DATA_URL); w.waitFor(trackLoader).waitFor(imageLoader).on('ready', initMap, this) if (Browser.canvas) { var countryLoader = new n.ScriptLoader(JS_STATIC_HOME + "countries_web.js", "utf-16be"); w.waitFor(countryLoader); if (SHOW_RADAR) { w.waitFor( new n.ScriptLoader(RADAR_LOG_URL) ); } } w.startWaiting(); } function initChart(pointTable) { // filter out other storms pointTable = pointTable.filter(function(rec) {return rec.get('NOAA_ID') == STORM_ID}); var el = El("nytg-hurricane-chart-container"); trace(el.node()) var chart = new n.TimeSeriesChart(el.node(), {width:300, height: 90}); var timestamps = pointTable.getFieldData(Hurricanes.OBS_TIME); var intensities = pointTable.getFieldData(Hurricanes.OBS_INTENSITY); var times = Utils.map(timestamps, function(ts) {return Hurricanes.TIMESTAMP_PARSER.parseDate(ts).getTime()}); var windspeeds = Utils.map(intensities, function(knots) {return Hurricanes.convKnotsToMilesPerHour(knots)}); var pathVec = new n.VertexSet(times, windspeeds); var pathData = Utils.partitionVertexSet(pathVec, windspeeds, Hurricanes.WINDSPEED_BREAKS); //trace("pathData:", pathData); // get style data var defaultStyle = {strokeWeight: 2, strokeAlpha: 1, strokeColor: 0}; Utils.forEach(pathData.paths, function(vec, i) { var shp = new n.ShapeVector(i, vec); var col = Hurricanes.COLORS[pathData.classes[i]]; var style = {strokeColor: col}; Opts.copyNewParams(style, defaultStyle); chart.addLineShape(shp, style); }); var labelFmt = function(val) {return val + " mph";}; chart.initYAxis({rules: Hurricanes.WINDSPEED_BREAKS, label:labelFmt, labelAlign:"right", ruleColor:"#ccc", ruleStyle:"dashed", baselineColor:"#ccc"}); //chart.addLine({table:pointTable, fieldX:'obsDate', fieldY:'obsWindspeed'}); chart.draw(); /* */ } function initMap() { trackData = new n.DataTable(nytg.data.hurricane_tracks); imageData = new n.DataTable(nytg.data.images); /* trace(">>> initMap() NOAA IDS:", trackData.getFieldData('NOAA_ID')); trace(">>> initMap() NOAA NAMES:", trackData.getFieldData('NAME')) trace(STORM_ID) trace(">>> rec:", trackData.getMatchingRecord('NOAA_ID', STORM_ID)); */ function getPopupHTML(rec) { var intensity = rec.get(Hurricanes.OBS_INTENSITY); var classId = rec.get(Hurricanes.OBS_CLASS); var stormType = Hurricanes.getStormLabel(classId); var mph = Hurricanes.convKnotsToMilesPerHour(intensity); var timestamp = rec.get(Hurricanes.OBS_TIME); var isForecast = rec.get(Hurricanes.OBS_FORECAST) == 1; var forceLabel = isForecast ? "Forecast:" : "Max. winds:"; var stormId = rec.get(Hurricanes.NOAA_ID); var name = trackData.getIndexedRecord(stormId).get('NAME'); var obsDate = Utils.parseDate(timestamp, "%Y%m%d%H"); obsDate = Utils.addHours(obsDate, -4); var dateStr = Utils.formatDate(obsDate, "%b %d, %I:%M %p ET"); var template = ' '; var html = Utils.format(template, name, dateStr, forceLabel, mph, stormType); return html; } function getForecastConePopupHTML(rec) { var template = '

Area of uncertainty for the five-day forecast.

'; var html = Utils.format(template, currentStormRec.get('NAME')); return html; } trackData.insertMappedValues('VISIBLE', 'integer', function(rec) {return rec.get('NOAA_ID') == STORM_ID ? 1 : 0;}); //trackData = trackData.getFilteredCopy(function(rec) {return rec.get('VISIBLE') == 1; } ); Hurricanes.importTrackTable(trackData); //trace(">>> matching rec:", trackData.getMatchingRecord('NOAA_ID', STORM_ID)) trackData.indexOnField('NOAA_ID'); currentStormRec = trackData.getIndexedRecord(STORM_ID).clone(); var stormIsActive = currentStormRec.get('ACTIVE') == 1; var currentLocationInfo = Hurricanes.getCurrentLocation(currentStormRec); // CENTER MAP ON STORM query var "centered" is set if (Browser.getQueryVars()['centered'] != undefined) { LAT0 = currentLocationInfo.lat; LON0 = currentLocationInfo.lng; } // init image maps var imageNames = imageData.getFieldData('TIMESTAMP'); Utils.sortOn(imageNames, 'TIMESTAMP', true); var mapTypes = Hurricanes.getImageMapTypes(imageNames, TILE_URL); trace("imageNames:", imageNames); var mapOpts = { googleBackgroundColor: "none", crs: new n.GoogleCRS(), limitPanning: false, dragging: true, doubleClickZoom: true, //googleMapTypes: mapTypes, //googleMapStyle: Hurricanes.GOOGLE_MAP_STYLE, center: new n.GeoPoint(LAT0, LON0), zoom: ZOOM0, maxZoom: ZOOM0 + 2, minZoom: ZOOM0 - 1 }; var preferFlash = false; var flashUrl = "http://graphics8.nytimes.com/packages/flash/newsgraphics/projects/hurricanes_2012/hybrid_map_02.swf"; // "http://localhost.nytimes.com/~199000/swf/hybrid_map_02.swf?c=2" n.Map.init({preferFlash:preferFlash, flashUrl:flashUrl}); var map2 = new n.Map('nytg-map-container', mapOpts); var popup = new n.HTMLPopup(getPopupHTML, {map:map2}); map2.addLayer(new n.BasemapLayer({style:Hurricanes.GOOGLE_MAP_STYLE})); Browser.canvas && addCountryLayer(map2); var baseLayer = new n.BaseLayer(); baseLayer.addView('base-layer', {type:n.BaseLayer.STYLED_TYPE, style:Hurricanes.GOOGLE_MAP_STYLE, backgroundColor:"#fff"}); map2.addLayer(baseLayer); //baseLayer.setView('base-layer'); Hurricanes.configureImageViews(baseLayer, imageNames, TILE_URL); var idx = imageNames.length -1; var imageView = imageNames[idx]; var mapView = 'base-layer'; baseLayer.setView(mapView); if (stormIsActive && nytg.data.radar_tile_url) { var radarLyr = new n.TileLayer({type: n.TileLayer.IMAGE_TYPE, template: nytg.data.radar_tile_url + "{z}-{x}-{y}.png", opacity:0.45}); radarLyr.hide(); map2.addLayer(radarLyr); } else { $("#nytg-map-controls-container .radar-toggle").hide(); } $("#nytg-map-controls-container").css({display:"block"}); var layers = Hurricanes.getTrackLayers(trackData); var trackLyr = layers.trackLayer; map2.addLayer(trackLyr); var trackPointLyr = layers.trackPointLayer; map2.addLayer(trackPointLyr); // icon layer if (stormIsActive) { var ll = Hurricanes.getCurrentLocation(trackData.getIndexedRecord(STORM_ID)); var icon = {url:HURRICANE_ICON_URL, lat:ll.lat, lng:ll.lng, height:30, width:30}; var imageLyr = new n.IconLayer([icon]); map2.addLayer(imageLyr); } popup.setLayer(trackPointLyr); map2.display(); // create chart //initChart(layers.pointTable); var zoomer = new n.ZoomControl(map2, {size:3, ticSpacing:12}); zoomer.id('nytg-zoom-control'); zoomer.appendTo(map2.div); function switchView(evt) { trace(evt.currentIndex); var idx = evt.currentIndex; var view = idx == 1 ? imageView : mapView; baseLayer.setView(view); if (view == mapView) { countryLyr.hide(); } else { countryLyr.show(); //countryLyr.refresh(); } trace("switchView() idx:", idx, 'radarLyr:', radarLyr); if (radarLyr) { if (idx == 2) { radarLyr.show() } else { radarLyr.hide(); } } } Opts.exportObject("nytg.switchView", switchView); // update readout //var currRec = trackData.getIndexedRecord(STORM_ID); var info = currentLocationInfo; // Hurricanes.getCurrentLocation(currRec); if (info.classId !== undefined) { var name = info.name; if (info.classId <= 1) { // tropical storm force var stormDisplay = $("#nytg-storm-force-data"); stormDisplay.find('.nytg-wind-speed-ts').text(Utils.format("%d", info.mph)); stormDisplay.find('.nytg-category-ts').text(info.stormLabel); } else { name = "Hurricane " + name; stormDisplay = $('#nytg-hurricane-force-data'); stormDisplay.find('.nytg-wind-speed').text(Utils.format("%d", info.mph)); stormDisplay.find('.nytg-category-number').text(info.hurricaneCategory); } stormDisplay.css({display:'block'}); $("#nytg-hurricane-strip > .nytg-hurricane-update-timestamp").text( n.DateString.formatDate(info.date, "Updated %I %p ET %b %d")); $("#nytg-hurricane-strip > .nytg-hurricane-name").text(name); $("#nytg-hurricane-strip").css({visibility:"visible"}); } stormIsActive && addForecastConeLayer(currentStormRec, map2); //var shapes = trackLyr._shapes; //trace("shapes:", shapes.getBounds()); //var symbols = trackLyr._symbols; //trace("symbols:", symbols); //trace("[] map ready?", map2.isReady(), "shapes ready?:", shapes.isReady(), "boundss:", shapes.getBounds()); // map2.addLayer(new CanvasTestLayer()); var countryLyr; function addCountryLayer(map) { var countryLines = new n.ShapeData(n.C.POLYGONS); countryLines.importFromString(nytg.data.countries_web); countryLyr = new n.ShapeLayer(countryLines); countryLyr.setStyle({strokeWeight:1, strokeColor: "#FCEBC5", strokeAlpha:1}); countryLyr.hide(); map.addLayer(countryLyr); } function addForecastConeLayer(rec, map) { var name = rec.get('FORECAST_CONE'); if (!name) { trace(rec); } var url = JS_HOME + name + ".js"; var loader = new n.ScriptLoader(url, 'utf-16be').on('ready', function() { var utf16Str = nytg.data[name]; var shapes = new n.ShapeData(); shapes.importFromString(utf16Str, {transform: Hurricanes.projection}); var lyr = new n.ShapeLayer(shapes, {hitPriority: -1}); var table = new n.DataTable({schema:{days:'integer'}, data:{days:[3, 5]}}); var styler = new n.DataStyler(table); var style = { fillAlpha: 0.2, fillColor: 0xff7777, strokeColor:0, strokeWeight:1, strokeAlpha: 0.3, hoverStrokeAlpha: 1 }; styler.setDefaultStyle(style); //lyr.setStyle(style); styler.setAttributeStyler('hidden', function(rec) {return rec.get('days') == 3;}); lyr.setStyler(styler); lyr.setInteraction(true); lyr.on('rollover', function(evt) { var html = getForecastConePopupHTML(rec); popup.showHTML(html)}); lyr.on('rollout', function(){ popup.hide()}); map.addLayer(lyr); }); } // addForecastConeLyr(); } })();

12.07 | 0 komentar | Read More
techieblogger.com Techie Blogger Techie Blogger