package org.schtief.partybolle.event; import org.schtief.partybolle.InfoOverlay; import org.schtief.partybolle.InfoOverlayItem; import org.schtief.partybolle.PartyBolle; import org.schtief.partybolle.PartyBolleOverlayItem; import org.schtief.util.json.JSONException; import org.schtief.util.json.JSONObject; import com.google.android.maps.GeoPoint; /** Copyright by Stefan Lischke a.k.a Mister Schtief started in 2010 in Berlin Germany This file is part of PartyBolle. PartyBolle is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. PartyBolle is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with PartyBolle. If not, see <http://www.gnu.org/licenses/>. */ public class EventOverlayItem extends PartyBolleOverlayItem { JSONObject location; public JSONObject getLocation() { return location; } private InfoOverlayItem info = null; private PartyBolle app; public EventOverlayItem(PartyBolle app, JSONObject location) throws JSONException { super(new GeoPoint(location.getInt("la"), location.getInt("lo")), location.getString("n"), ""); this.location = location; String firstTyp = location.getJSONArray("e").getJSONObject(0).getString("ty"); if(firstTyp.contains("Party")) super.setMarker(EventOverlay.drawableParty); else if(firstTyp.contains("Theater")|| firstTyp.contains("Show")|| firstTyp.contains("Comedy")|| firstTyp.contains("Kabarett")) super.setMarker(EventOverlay.drawableTheater); else if(firstTyp.contains("Konzert")|| firstTyp.contains("Kultur")|| firstTyp.contains("Musical")) super.setMarker(EventOverlay.drawableConcert); this.app=app; } public InfoOverlayItem getInfo(InfoOverlay overlay){ if(null==info) info=new InfoOverlayItem(overlay, getPoint(),new EventInfoShape(location),new EventDetailDialog(app, this)); return info; } @Override public String getId() { return location.optString("l"); } @Override public String getType() { return "event"; } }