// Exit if accessed directly /** * Simple_Event_Planner_Post_Type_Event_Listing Class * * A class definition that includes attributes and functions used across both the * public-facing side of the site and the admin area. * * This is used to define the event_listing custom post type. * This class is used to create custom post type for listing events in admin area. * * @link https://wordpress.org/plugins/simple-event-planner/ * @since 1.1.0 * * @package Simple_Event_Planner * @subpackage Simple_Event_Planner/includes/posttype * @author PressTigers */ if (!class_exists('Simple_Event_Planner_Post_Type_Event_Listing')) { class Simple_Event_Planner_Post_Type_Event_Listing { /** * Initialize the class and set its properties. * * @since 1.1.0 */ public function __construct() { // Add Hook into the 'init()' action add_action('init', array($this, 'sep_init')); // Add Hook into the 'admin_init()' action add_action('admin_init', array($this, 'sep_admin_init')); } /** * A function hook that the WordPress core launches at 'init' points. * * @since 1.1.0 */ public function sep_init() { $this->sep_create_post_type(); // Flush Rewrite Rules flush_rewrite_rules(); // Add Filter into the Single Page Template add_filter('single_template', array($this, 'get_simple_event_planner_single_template')); // Add Filter into the Archive Page Template add_filter('archive_template', array($this, 'get_simple_event_planner_archive_template')); } /** * A function hook that the WordPress core launches at 'admin_init' points * * @since 1.1.0 */ public function sep_admin_init() { // Hook - Taxonomy -> Event Category -> Add New Column add_filter('manage_event_listing_posts_columns', array($this, 'sep_columns')); // Hook - Taxonomy -> Event Category -> Add Value to New Column add_action('manage_event_listing_posts_custom_column', array($this, 'sep_columns_value')); } /** * Register Post Type & Taxonomy function. * * @since 1.0.0 */ public function sep_create_post_type() { if (post_type_exists("event_listing")) { return; } /** * Post Type -> Events */ $singular = esc_html__('Event', 'simple-event-planner'); $plural = esc_html__('Events', 'simple-event-planner'); $has_archive = current_theme_supports('event-planner-templates') ? esc_attr_x('events', 'Post type archive slug - resave permalinks after changing this', 'simple-event-planner') : FALSE; $rewrite = array( 'slug' => esc_attr_x('event', 'Event permalink - resave permalinks after changing this', 'simple-event-planner'), 'with_front' => FALSE, 'feeds' => FALSE, 'pages' => FALSE, 'hierarchical' => FALSE, ); // Post Type -> Event Listing -> Label Arguments $labels_events = array( 'name' => $plural, 'singular_name' => $singular, 'menu_name' => esc_html__('Event Planner', 'simple-event-planner'), 'all_items' => sprintf(esc_html__('All %s', 'simple-event-planner'), $plural), 'add_new' => esc_html__('Add New', 'simple-event-planner'), 'add_new_item' => sprintf(esc_html__('Add %s', 'simple-event-planner'), $singular), 'edit' => esc_html__('Edit', 'simple-event-planner'), 'edit_item' => sprintf(esc_html__('Edit %s', 'simple-event-planner'), $singular), 'new_item' => sprintf(esc_html__('New %s', 'simple-event-planner'), $singular), 'view' => sprintf(esc_html__('View %s', 'simple-event-planner'), $singular), 'view_item' => sprintf(esc_html__('View %s', 'simple-event-planner'), $singular), 'search_items' => sprintf(esc_html__('Search %s', 'simple-event-planner'), $plural), 'not_found' => sprintf(esc_html__('No %s found', 'simple-event-planner'), $plural), 'not_found_in_trash' => sprintf(esc_html__('No %s found in trash', 'simple-event-planner'), $plural), 'parent' => sprintf(esc_html__('Parent %s', 'simple-event-planner'), $singular) ); // Post Type -> Event Listing -> Event Arguments $args_events = array( 'labels' => $labels_events, 'description' => sprintf(esc_html__('This is where you can create and manage %s.', 'simple-event-planner'), $plural), 'public' => TRUE, 'show_ui' => TRUE, 'capability_type' => 'post', 'map_meta_cap' => TRUE, 'publicly_queryable' => TRUE, 'exclude_from_search' => FALSE, 'hierarchical' => FALSE, 'rewrite' => array('slug' => esc_attr_x('events', 'Event permalink - resave permalinks after changing this', 'simple-event-planner'), 'hierarchical' => TRUE, 'with_front' => FALSE), 'query_var' => TRUE, 'can_export' => TRUE, 'supports' => array( 'title', 'editor', 'excerpt', 'author', 'comments', 'thumbnail', 'page-attributes', ), 'has_archive' => TRUE, 'show_in_nav_menus' => TRUE, 'menu_icon' => 'dashicons-calendar-alt', ); // Register Event Listing Post Type register_post_type("event_listing", apply_filters("register_post_type_event_listing", $args_events)); /* Custom Taxonomy for Custom Post Type event_listing */ $singular = esc_html__('Category', 'simple-event-planner'); $plural = esc_html__('Categories', 'simple-event-planner'); if (current_theme_supports('event-planner-templates')) { $rewrite = array( 'slug' => esc_attr_x('event-category', 'Event category slug - resave permalinks after changing this', 'simple-event-planner'), 'with_front' => FALSE, 'hierarchical' => FALSE, ); $public = TRUE; } else { $rewrite = FALSE; $public = FALSE; } // Post Type -> Event Listing -> Taxonomy -> Event Category -> Labels $labels_category = array( 'name' => $plural, 'singular_name' => $singular, 'menu_name' => ucwords($plural), 'search_items' => sprintf(esc_html__('Search %s', 'simple-event-planner'), $plural), 'all_items' => sprintf(esc_html__('All %s', 'simple-event-planner'), $plural), 'parent_item' => sprintf(esc_html__('Parent %s', 'simple-event-planner'), $singular), 'parent_item_colon' => sprintf(esc_html__('Parent %s:', 'simple-event-planner'), $singular), 'edit_item' => sprintf(esc_html__('Edit %s', 'simple-event-planner'), $singular), 'update_item' => sprintf(esc_html__('Update %s', 'simple-event-planner'), $singular), 'add_new_item' => sprintf(esc_html__('Add New %s', 'simple-event-planner'), $singular), 'new_item_name' => sprintf(esc_html__('New %s Name', 'simple-event-planner'), $singular) ); // Post Type -> Event Listing -> Taxonomy -> Event Category -> Arguments $args_category = array( 'hierarchical' => TRUE, 'update_count_callback' => '_update_post_term_count', 'label' => $plural, 'labels' => $labels_category, 'show_ui' => TRUE, 'public' => $public, 'rewrite' => FALSE, ); // Register Event Categry Taxonomy register_taxonomy( "event_listing_category", apply_filters('register_taxonomy_event_listing_category_object_type', array('event_listing')), apply_filters('register_taxonomy_event_listing_category_args', $args_category) ); } /** * Overriding the HTML of Default Theme * * @since 1.1.0 * * @param html $html * @param int $post_id * @param int $post_thumbnail_id * @param int $size * @param array $attr * @return html $html */ public function remove_post_image_html($html, $post_id, $post_thumbnail_id, $size, $attr) { global $post; if (is_single() and 'event_listing' === $post->post_type) { $html = '
'; } return $html; } /** * Add Event Post Custom Columns * * @since 1.0.0 * @param $columns Default Columns of Event Post * * @return $columns Custom Columns */ public function sep_columns($columns) { $columns['author'] = esc_html__('Author', 'simple-event-planner'); $columns['category'] = esc_html__('Category', 'simple-event-planner'); $columns['address'] = esc_html__('Address', 'simple-event-planner'); $columns['start_date'] = esc_html__('Start Date', 'simple-event-planner'); return $columns; } /** * Add Event Post Custom Column's Value * * @since 1.0.0 * @param $name Custom Columns Name * * @return void */ public function sep_columns_value($name) { global $post; switch ($name) { case 'category': $categories = get_the_terms($post->ID, 'event_listing_category'); if ($categories <> "") { $couter = 0; foreach ($categories as $category) { echo esc_attr($category->name); $couter++; if ($couter < count($categories)) { echo ", "; } } } break; case 'author': echo get_the_author(); break; case 'address': $loc_address = get_post_meta($post->ID, 'event_address', TRUE); echo $loc_address; break; case 'start_date': if (get_post_meta(get_the_ID(), 'event_meta', TRUE)) { $event_xml = get_post_meta(get_the_ID(), 'event_meta', TRUE); $xml_object = new SimpleXMLElement($event_xml); $start_date = isset($xml_object->start_date) ? $xml_object->start_date : ''; echo $start_date; } break; } } /** * To load archive course page in front end * * @since 1.1.0 * * @param string $archive_template Default Archive Page Path. * @return string $archive_template Plugin Archive Page Path. */ function get_simple_event_planner_archive_template($archive_template) { if (is_post_type_archive('event_listing')) { $archive_template = (!file_exists(get_stylesheet_directory() . '/simple_event_planner/archive-event-listing.php')) ? plugin_dir_path(dirname(__FILE__)) . '/public/partials/archive-event-listing.php' : get_stylesheet_directory() . '/simple_event_planner/archive-event-listing.php'; } return $archive_template; } /** * To load single course page for front end * * @since 1.1.0 * * @param string $single_template Default Single Page Path. * @return string $single_template Plugin Single Page Path. */ function get_simple_event_planner_single_template($single_template) { global $post; if ( 'event_listing' === $post->post_type ) { $single_template = (!file_exists(get_stylesheet_directory() . '/simple_event_planner/single-event-listing.php')) ? plugin_dir_path(dirname(__FILE__)) . '/public/partials/single-event-listing.php' : get_stylesheet_directory() . '/simple_event_planner/single-event-listing.php'; } return $single_template; } } } new Simple_Event_Planner_Post_Type_Event_Listing(); Warning: session_start(): Cannot start session when headers already sent in D:\www\www594\wp-content\plugins\simple-event-planner\includes\class-simple-event-planner.php on line 268 Datenschutzerklärung – IG Kultur Region Gossau

Verantwortliche Stelle im Sinne der Datenschutzgesetze, insbesondere der EU-Datenschutzgrundverordnung (DSGVO), ist:

Allgemeine Datenschutzerklärung

Durch die Nutzung dieser WebSite erklären Sie sich mit der Erhebung, Verarbeitung und Nutzung von Daten gemäss der nachfolgenden Beschreibung einverstanden. Diese WebSite kann grundsätzlich ohne Registrierung besucht werden. Dabei werden Daten wie beispielsweise aufgerufene Seiten bzw. Namen der abgerufenen Datei, Datum und Uhrzeit zu statistischen Zwecken auf dem Server gespeichert, ohne dass diese Daten unmittelbar auf Ihre Person bezogen werden. Personenbezogene Daten, insbesondere Name, Adresse oder E-Mail-Adresse werden soweit möglich auf freiwilliger Basis erhoben. Ohne Ihre Einwilligung erfolgt keine Weitergabe der Daten an Dritte.


Bearbeitung von Personendaten

Personendaten sind alle Angaben, die sich auf eine bestimmte oder bestimmbare Person beziehen. Eine betroffene Person ist eine Person, über die Personendaten bearbeitet werden. Bearbeiten umfasst jeden Umgang mit Personendaten, unabhängig von den angewandten Mitteln und Verfahren, insbesondere das Aufbewahren, Bekanntgeben, Beschaffen, Löschen, Speichern, Verändern, Vernichten und Verwenden von Personendaten.

Wir bearbeiten Personendaten im Einklang mit dem schweizerischen Datenschutzrecht. Im Übrigen bearbeiten wir – soweit und sofern die EU-DSGVO anwendbar ist – Personendaten gemäss folgenden Rechtsgrundlagen aus Art. 6 Abs. 1 DSGVO:

  • Bearbeitung von Personendaten mit Einwilligung der betroffenen Person.
  • Bearbeitung von Personendaten zur Erfüllung eines Vertrages mit der betroffenen Person sowie zur Durchführung entsprechender vorvertraglicher Massnahmen.
  • Bearbeitung von Personendaten zur Erfüllung einer rechtlichen Verpflichtung, der wir gemäss allenfalls anwendbarem Recht der EU oder gemäss allenfalls anwendbarem Recht eines Landes, in dem die DSGVO ganz oder teilweise anwendbar ist, unterliegen.
  • Bearbeitung von Personendaten um lebenswichtige Interessen der betroffenen Person oder einer anderen natürlichen Person zu schützen.
  • Bearbeitung von Personendaten um die berechtigten Interessen von uns oder von Dritten zu wahren, sofern nicht die Grundfreiheiten und Grundrechte sowie Interessen der betroffenen Person überwiegen. Berechtigte Interessen sind insbesondere unser betriebswirtschaftliches Interesse, unsere Website bereitstellen zu können, die Informationssicherheit, die Durchsetzung von eigenen rechtlichen Ansprüchen und die Einhaltung von schweizerischem Recht.

Wir bearbeiten Personendaten für jene Dauer, die für den jeweiligen Zweck oder die jeweiligen Zwecke erforderlich ist. Bei länger dauernden Aufbewahrungspflichten aufgrund von gesetzlichen und sonstigen Pflichten, denen wir unterliegen, schränken wir die Bearbeitung entsprechend ein.


Datenschutzerklärung für Cookies

Diese WebSite verwendet Cookies. Das sind kleine Textdateien, die es möglich machen, auf dem Endgerät des Nutzers spezifische, auf den Nutzer bezogene Informationen zu speichern, während er die Website nutzt. Cookies ermöglichen es, insbesondere Nutzungshäufigkeit und Nutzeranzahl der Seiten zu ermitteln, Verhaltensweisen der Seitennutzung zu analysieren, aber auch unser Angebot kundenfreundlicher zu gestalten. Cookies bleiben über das Ende einer Browser-Sitzung gespeichert und können bei einem erneuten Seitenbesuch wieder aufgerufen werden. Wenn Sie das nicht wünschen, sollten Sie Ihren Internetbrowser so einstellen, dass er die Annahme von Cookies verweigert.


Datenschutzerklärung für Server-Log-Files

Der Provider dieser WebSite erhebt und speichert automatisch Informationen in so genannten Server-Log Files, die Ihr Browser automatisch an uns übermittelt. Dies sind:

  • Browsertyp und Browserversion
  • verwendetes Betriebssystem
  • Referrer URL
  • Hostname des zugreifenden Rechners
  • Uhrzeit der Serveranfrage

Diese Daten sind nicht bestimmten Personen zuordenbar. Eine Zusammenführung dieser Daten mit anderen Datenquellen wird nicht vorgenommen. Wir behalten uns aber vor, diese Daten nachträglich zu prüfen, wenn uns konkrete Anhaltspunkte für eine rechtswidrige Nutzung bekannt werden.


Dienste von Dritten

Diese WebSite verwenden allenfalls Google Maps für das Einbetten von Karten, Google Invisible reCAPTCHA für den Schutz gegen Bots und Spam sowie YouTube für das Einbetten von Videos.

Diese Dienste der amerikanischen Google LLC verwenden unter anderem Cookies und infolgedessen werden Daten an Google in den USA übertragen, wobei wir davon ausgehen, dass in diesem Rahmen kein personenbezogenes Tracking allein durch die Nutzung unserer Website stattfindet.

Google hat sich verpflichtet, einen angemessenen Datenschutz gemäss dem amerikanisch-europäischen und dem amerikanisch-schweizerischen Privacy Shield zu gewährleisten.

Weitere Informationen finden sich in der Datenschutzerklärung von Google.


Datenschutzerklärung für Kontaktformular

Wenn Sie uns per Kontaktformular Anfragen zukommen lassen, werden Ihre Angaben aus dem Anfrageformular inklusive der von Ihnen dort angegebenen Kontaktdaten zwecks Bearbeitung der Anfrage und für den Fall von Anschlussfragen bei uns gespeichert. Diese Daten geben wir nicht ohne Ihre Einwilligung weiter.


Datenschutzerklärung für Newsletterdaten

Wenn Sie den auf dieser WebSite angebotenen Newsletter beziehen möchten, benötigen wir von Ihnen eine E-Mail-Adresse sowie Informationen, welche uns die Überprüfung gestatten, dass Sie der Inhaber der angegebenen E-Mail-Adresse sind und mit dem Empfang des Newsletters einverstanden sind. Weitere Daten werden nicht erhoben. Diese Daten verwenden wir ausschließlich für den Versand der angeforderten Informationen und geben sie nicht an Dritte weiter.

Die erteilte Einwilligung zur Speicherung der Daten, der E-Mail-Adresse sowie deren Nutzung zum Versand des Newsletters können Sie jederzeit widerrufen, etwa über den “Austragen”-Link im Newsletter.


Datenschutzerklärung für Kommentarfunktion auf dieser Webseite

Für die Kommentarfunktion auf dieser WebSite werden neben Ihrem Kommentar auch Angaben zum Zeitpunkt der Erstellung des Kommentars, Ihre E-Mail-Adresse und, wenn Sie nicht anonym posten, der von Ihnen gewählte Nutzername gespeichert.

Speicherung der IP Adresse

Unsere Kommentarfunktion speichert die IP-Adressen der Nutzer, die Kommentare verfassen. Da wir Kommentare auf unserer Seite nicht vor der Freischaltung prüfen, benötigen wir diese Daten, um im Falle von Rechtsverletzungen wie Beleidigungen oder Propaganda gegen den Verfasser vorgehen zu können.

Abonnieren von Kommentaren

Als Nutzer der Seite können Sie nach einer Anmeldung Kommentare abonnieren. Sie erhalten eine Bestätigungsemail, um zu prüfen, ob Sie der Inhaber der angegebenen E-Mail-Adresse sind. Sie können diese Funktion jederzeit über einen Link in den Info-Mails abbestellen.



Wir können diese Datenschutzerklärung jederzeit ohne Vorankündigung anpassen. Es gilt die jeweils aktuelle, auf unserer Website publizierte Fassung. Soweit die Datenschutzerklärung Teil einer Vereinbarung mit Ihnen ist, werden wir Sie im Falle einer Aktualisierung über die Änderung per E-Mail oder auf andere geeignete Weise informieren.