/** * @namespace Diese Klasse liefert HTML-formatierte Seiten zurück. * @author Jan Kossick, jankossick@online.de * @version 2.0 */ var Info = { /** * Zeigt Text-Informationen im {@link Infowindow} an. * @param {Object} data Ein Objekt mit den Attributen js, css, toolbar und * content. */ message : function(data) { Infowindow.setContentCSS(data.css); Infowindow.setContent(data.content); eval(data.js); Infowindow.show(); }, /** * Lädt eine HTML-Seite mit Informationen zum Ort und den Veranstaltungen, * basierend auf den Einstellungen von {@link Events} und zeigt diese im * {@link Infowindow} an. * @param {Number} locId Die ID des Ortes. */ event : function(locId) { jQuery.post("ajax", { "action": "get_info_event", "loc_id": locId, "is_favorite" : Events.isLocationFavorite(locId), "categories_yourbash": jQuery.toJSON(Events.YourbashCategories), "start": Events.DateStart.toMySQLDate(), "end": Events.DateEnd.toMySQLDate() }, this.message, "json" ); }, /** * Lädt eine HTML-Seite mit Informationen zum Ort und den Yourbashs, * basierend auf den Einstellungen von {@link Events} und zeigt diese im * {@link Infowindow} an. * @param {Number} id Die ID des Yourbashs. */ yourbash : function(id, callback) { if(typeof callback == 'undefined') callback = this.message; jQuery.post("ajax", { "action": "get_info_yourbash", "id": id, "categories_yourbash": jQuery.toJSON(Events.YourbashCategories), "start": Events.DateStart.toMySQLDate(), "end": Events.DateEnd.toMySQLDate() }, callback, "json" ); }, /** * Lädt eine HTML-Seite mit Informationen zu Doodles, basierend auf den * Einstellungen von {@link Events} und zeigt diese im {@link Infowindow} * an. Weitere Doodles an der selben Adresse werden automatisch geladen. * @param {String} vkey Der Schlüssel des Doodles. */ doodle : function(vkey) { jQuery.post("ajax", { "action":"get_info_doodle", 'vkey' : vkey, 'vkeys' : jQuery.toJSON(Events.getVisitkeys()), "start": Events.DateStart.toMySQLDate(), "end": Events.DateEnd.toMySQLDate() }, this.message, "json" ); }, /** * Lädt eine HTML-Seite mit den News. */ news : function() { jQuery.post("ajax", { "action":"get_info_news" }, Info.message, "json" ); }, /** * Lädt eine HTML-Seite mit der Hilfe. */ hilfe : function() { jQuery.post("ajax", { "action":"get_info_hilfe" }, Info.message, "json" ); }, /** * Lädt eine HTML-Seite mit dem Impressum. */ impressum : function() { jQuery.post("ajax", { "action":"get_info_impressum" }, this.message, "json" ); }, /** * Lädt eine HTML-Seite mit dem Kontaktformular. */ kontakt : function() { jQuery.post("ajax", { "action":"get_info_kontakt" }, this.message, "json" ); }, /** * Übermittelt eine Kontaktnachricht und lädt eine HTML-Seite mit dem * Status. * @param {String} data Serialisierte Formulardaten. */ kontaktSend : function(data) { jQuery.post("ajax", data, this.message, "json"); }, /** * Lädt eine HTML-Seite mit dem Fehlerformular. * @param {String} type Typ des Fehlers. location oder event. * @param {Number} id ID der entprechenden Location oder Veranstaltung. */ fehler : function(type, id) { jQuery.post("ajax", { "action":"get_info_fehler", "type":type, "id":id }, this.message, "json" ); }, /** * Übermittelt eine Fehlernachricht und lädt eine HTML-Seite mit dem * Status. * @param {String} data Serialisierte Formulardaten. */ fehlerSend : function(data) { jQuery.post("ajax", data, this.message, "json"); } };