{"id":1092,"date":"2025-05-09T15:53:21","date_gmt":"2025-05-09T13:53:21","guid":{"rendered":"https:\/\/goingsports.de\/adverts\/?page_id=1092"},"modified":"2026-04-25T12:41:32","modified_gmt":"2026-04-25T10:41:32","slug":"aktuelle-turniere","status":"publish","type":"page","link":"https:\/\/goingsports.de\/adverts\/aktuelle-turniere\/","title":{"rendered":"Live Leaderboard"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1092\" class=\"elementor elementor-1092\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7c1e33b e-flex e-con-boxed e-con e-parent\" data-id=\"7c1e33b\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d32b956 e-flex e-con-boxed e-con e-parent\" data-id=\"d32b956\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ba2337d elementor-widget elementor-widget-image\" data-id=\"ba2337d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.parccurate.com\/de\/?srsltid=AfmBOoqyE3hMjCJLqLUgjseg4JGzlUswz40_J611br1Ub0TP7aC00UWM\" target=\"_blank\">\n\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"1920\" height=\"100\" src=\"https:\/\/goingsports.de\/adverts\/wp-content\/uploads\/2025\/05\/PaccurateDemoBanner_unten_FHD.png\" class=\"attachment-full size-full wp-image-1289\" alt=\"\" srcset=\"https:\/\/goingsports.de\/adverts\/wp-content\/uploads\/2025\/05\/PaccurateDemoBanner_unten_FHD.png 1920w, https:\/\/goingsports.de\/adverts\/wp-content\/uploads\/2025\/05\/PaccurateDemoBanner_unten_FHD-300x16.png 300w, https:\/\/goingsports.de\/adverts\/wp-content\/uploads\/2025\/05\/PaccurateDemoBanner_unten_FHD-1024x53.png 1024w, https:\/\/goingsports.de\/adverts\/wp-content\/uploads\/2025\/05\/PaccurateDemoBanner_unten_FHD-768x40.png 768w, https:\/\/goingsports.de\/adverts\/wp-content\/uploads\/2025\/05\/PaccurateDemoBanner_unten_FHD-1536x80.png 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0d5ab4c e-flex e-con-boxed e-con e-parent\" data-id=\"0d5ab4c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-64d5f0a e-con-full e-flex e-con e-child\" data-id=\"64d5f0a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f6433dc elementor-widget elementor-widget-html\" data-id=\"f6433dc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\n<!DOCTYPE html>\n<html lang=\"de\">\n<head>\n  <meta charset=\"UTF-8\" \/>\n  <title>Leaderboard Auswahl<\/title>\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/>\n  <!-- Axios CDN -->\n  <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/axios\/dist\/axios.min.js\"><\/script>\n  <style>\n    \/* Einfaches zentriertes Box-Layout *\/\n    #leaderboard-box h2 {\n  text-transform: none !important;\n}\n    #leaderboard-box {\n      max-width: 400px;\n      margin: 2rem auto;\n      padding: 1rem;\n      border: 1px solid #ddd;\n      border-radius: 8px;\n      box-shadow: 0 2px 4px rgba(0,0,0,0.1);\n      font-family: sans-serif;\n    }\n    #leaderboard-box h2 {\n      text-align: center;\n      margin-bottom: 1rem;\n    }\n    #leaderboard-box select,\n    #leaderboard-box input,\n    #leaderboard-box button {\n      width: 100%;\n      padding: 0.5rem;\n      margin-bottom: 1rem;\n      font-size: 1rem;\n    }\n    #leaderboard-box button:disabled {\n      opacity: 0.6;\n      cursor: not-allowed;\n    }\n  <\/style>\n<\/head>\n<body>\n\n<div id=\"leaderboard-box\">\n  <h2>Turnier ausw\u00e4hlen<\/h2>\n  <select id=\"tournamentSelect\">\n    <option value=\"\">Turnier ausw\u00e4hlen<\/option>\n  <\/select>\n\n  <select id=\"roundSelect\" disabled>\n    <option value=\"\">Runde ausw\u00e4hlen<\/option>\n  <\/select>\n\n  <select id=\"scoringTypeSelect\">\n    <option value=\"\">Z\u00e4hlart ausw\u00e4hlen<\/option>\n  <\/select>\n\n  <label for=\"numColsInput\">Zeilen pro Seite (numCols)<\/label>\n  <input id=\"numColsInput\" type=\"number\" min=\"1\" value=\"10\" \/>\n\n  <button id=\"showBtn\" disabled>Leaderboard anzeigen<\/button>\n<\/div>\n\n<script>\n(function () {\n  const BASE_URL = \"https:\/\/goingsports.online\/Backend\/API\";\n  const APP_BASE_URL = \"https:\/\/www.goingsports.online\/GGManager\";\n\n  const tournamentSelect = document.getElementById(\"tournamentSelect\");\n  const roundSelect = document.getElementById(\"roundSelect\");\n  const scoringSelect = document.getElementById(\"scoringTypeSelect\");\n  const numColsInput = document.getElementById(\"numColsInput\");\n  const showBtn = document.getElementById(\"showBtn\");\n\n  const tournamentsById = new Map();\n\n  function isMatchplayTournament(tournament) {\n    const modeId = Number(tournament?.mode_id || 0);\n    const modeLabel = String(tournament?.mode_name || tournament?.mode || \"\").toLowerCase();\n    return modeId === 3 || modeLabel.includes(\"matchplay\");\n  }\n\n  function getSelectedTournament() {\n    return tournamentsById.get(String(tournamentSelect.value)) || null;\n  }\n\n  function updateButtonState() {\n    const tournament = getSelectedTournament();\n    const isMatchplay = isMatchplayTournament(tournament);\n\n    showBtn.disabled = !(\n      tournamentSelect.value &&\n      roundSelect.value &&\n      (isMatchplay || scoringSelect.value)\n    );\n  }\n\n  axios.get(`${BASE_URL}\/getAllPublicTournaments.php`)\n    .then((res) => {\n      (Array.isArray(res.data) ? res.data : []).forEach((tournament) => {\n        tournamentsById.set(String(tournament.id), tournament);\n\n        const opt = document.createElement(\"option\");\n        opt.value = tournament.id;\n        opt.textContent = tournament.name;\n        tournamentSelect.appendChild(opt);\n      });\n    })\n    .catch((err) => console.error(\"Turniere laden fehlgeschlagen:\", err));\n\n  tournamentSelect.addEventListener(\"change\", () => {\n    const tid = tournamentSelect.value;\n    const tournament = getSelectedTournament();\n    const isMatchplay = isMatchplayTournament(tournament);\n\n    roundSelect.innerHTML = '<option value=\"\">Runde ausw\u00e4hlen<\/option>';\n    roundSelect.disabled = !tid;\n\n    scoringSelect.disabled = true;\n    if (isMatchplay) {\n      scoringSelect.value = \"\";\n    }\n\n    if (!tid) {\n      updateButtonState();\n      return;\n    }\n\n    axios.get(`${BASE_URL}\/getRounds.php`, {\n      params: { tournament_id: tid },\n    })\n      .then((res) => {\n        (Array.isArray(res.data) ? res.data : []).forEach((round) => {\n          const opt = document.createElement(\"option\");\n          opt.value = round.round_number;\n          opt.textContent = `Runde ${round.round_number}`;\n          roundSelect.appendChild(opt);\n        });\n      })\n      .catch((err) => console.error(\"Runden laden fehlgeschlagen:\", err))\n      .finally(() => {\n        const currentTournament = getSelectedTournament();\n        scoringSelect.disabled = isMatchplayTournament(currentTournament);\n        updateButtonState();\n      });\n  });\n\n  axios.get(`${BASE_URL}\/getScoringtypes.php`)\n    .then((res) => {\n      (Array.isArray(res.data) ? res.data : []).forEach((type) => {\n        const opt = document.createElement(\"option\");\n        opt.value = type.id;\n        opt.textContent = type.zaehlart;\n        scoringSelect.appendChild(opt);\n      });\n    })\n    .catch((err) => console.error(\"Z\u00e4hlarten laden fehlgeschlagen:\", err));\n\n  [tournamentSelect, roundSelect, scoringSelect].forEach((el) => {\n    el.addEventListener(\"change\", updateButtonState);\n  });\n\n  showBtn.addEventListener(\"click\", () => {\n    const tourn = tournamentSelect.value;\n    const rund = roundSelect.value;\n    const ztype = scoringSelect.value;\n    const numCols = parseInt(numColsInput.value, 10) || 10;\n\n    const tournament = getSelectedTournament();\n    const tournamentName =\n      tournament?.name ||\n      tournamentSelect.options[tournamentSelect.selectedIndex]?.textContent ||\n      \"\";\n\n    const params = new URLSearchParams({\n      tournamentId: String(Number(tourn)),\n      roundNumber: String(Number(rund)),\n      standalone: \"1\",\n    });\n\n    if (tournamentName) {\n      params.set(\"tournamentName\", tournamentName);\n    }\n\n    let url = \"\";\n\n    if (isMatchplayTournament(tournament)) {\n      url = `${APP_BASE_URL}\/matchplay-leaderboard?${params.toString()}`;\n    } else {\n      params.set(\"scoringTypeId\", String(Number(ztype)));\n      params.set(\"rowsPerPage\", String(numCols));\n\n      if (ztype === \"4\") {\n        url = `${APP_BASE_URL}\/classic-leaderboard-stbf?${params.toString()}`;\n      } else if (ztype === \"1\" || ztype === \"2\") {\n        url = `${APP_BASE_URL}\/classic-leaderboard-zaehlspiel?${params.toString()}`;\n      }\n    }\n\n    if (url) {\n      setTimeout(() => {\n        window.open(\n          url,\n          \"\",\n          \"width=1920,height=1080,toolbar=0,menubar=0,location=1,status=1,scrollbars=0,resizable=0,left=0,top=0\"\n        );\n      }, 500);\n    }\n  });\n})();\n\n<\/script>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3d3eb9d e-con-full e-flex e-con e-child\" data-id=\"3d3eb9d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3daa923 elementor-widget elementor-widget-text-editor\" data-id=\"3daa923\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<header class=\"entry-header\"><\/header><div class=\"entry-content\"><div id=\"pl-18\" class=\"panel-layout\"><div id=\"pg-18-0\" class=\"panel-grid panel-no-style\"><div id=\"pgc-18-0-0\" class=\"panel-grid-cell\"><div id=\"panel-18-0-0-0\" class=\"so-panel widget widget_sow-editor panel-first-child panel-last-child\" data-index=\"0\"><div class=\"so-widget-sow-editor so-widget-sow-editor-base\"><div class=\"siteorigin-widget-tinymce textwidget\"><p>Der Browser muss Cookies zulassen.<br \/>Wir empfehlen als Browser Firefox, Safari oder Chrome.<br \/>Wenn Sie das H\u00e4kchen bei &#8222;Nur die 1.Seite &#8230;&#8220; setzen,<br \/>dann bekommen Sie nur die Top 10 angezeigt.<\/p><p>Sie k\u00f6nnen die Gr\u00f6\u00dfe des Leaderboards auf dem PC mit der Maus anpassen.<\/p><p>Sie k\u00f6nnen auch mehrere Leaderboards parallel anzeigen lassen.<br \/>Wiederholen Sie hierzu einfach nur die Eingabe und w\u00e4hlen Sie beispielsweise eine andere Z\u00e4hlart aus.<\/p><\/div><\/div><\/div><\/div><\/div><\/div><\/div>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-325496f elementor-widget elementor-widget-html\" data-id=\"325496f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- 1) Globales CSS (einmal pro Seite) -->\n<style>\n  .lb-open-btn {\n    display: inline-flex;\n    flex-direction: column;\n    align-items: center;\n    background: linear-gradient(145deg, #FFF, green);\n    color: #fff;\n    border: none;\n    border-radius: 6px;\n    padding: 10px 14px;\n    cursor: pointer;\n    font-size: 1rem;\n    font-weight: 600;\n    text-decoration: none;\n    box-shadow: 0 4px 8px rgba(0,0,0,0.25);\n    transition:\n      background 0.2s ease,\n      box-shadow 0.2s ease,\n      transform 0.1s ease;\n    margin: 0.5rem;\n  }\n  .lb-open-btn:hover {\n    background: linear-gradient(145deg,#039be5,#0288d1);\n    box-shadow: 0 6px 12px rgba(0,0,0,0.3);\n    transform: translateY(-2px);\n  }\n  .lb-open-btn:active {\n    background: linear-gradient(145deg,#01579b,#0277bd);\n    box-shadow: inset 0 3px 6px rgba(0,0,0,0.4);\n    transform: translateY(0);\n  }\n  .lb-open-btn img {\n    width: 80px;\n    height: 80px;\n    margin-bottom: 6px;\n    display: block;\n  }\n  .lb-open-btn span {\n    line-height: 1.2;\n  }\n  .lb-open-btn span:nth-of-type(2) {\n    font-size: 0.6rem;\n    opacity: 0.85;\n    margin-top: 2px;\n  }\n  @media (max-width: 600px) {\n    .lb-open-btn {\n      padding: 8px 12px;\n      font-size: 0.85rem;\n      box-shadow: 0 3px 6px rgba(0,0,0,0.2);\n    }\n    .lb-open-btn img {\n      width: 60px;\n      height: 60px;\n      margin-bottom: 4px;\n    }\n  }\n<\/style>\n<script>\n(function(){\n  const buttons = document.querySelectorAll('.lb-open-btn');\n  if (!buttons.length) return;\n\n  buttons.forEach(btn => {\n    btn.addEventListener('click', e => {\n      e.preventDefault();\n\n      \/\/ 3.1 Parameter aus data-Attributen\n      const t = btn.dataset.turnier;\n      const r = btn.dataset.runde;\n      const z = btn.dataset.zaehlart;\n      const v = btn.dataset.vorgabe;\n      const ti = btn.dataset.timer;\n      const d = btn.dataset.dimension;\n      const l = btn.dataset.lbsize;\n      const p = btn.dataset.pagination;\n\n      \/\/ 3.2 Cookies zur\u00fccksetzen\n      document.cookie = `${t}${z}repeater=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=\/`;\n      document.cookie = `${t}${z}lastposition=;path=\/`;\n\n      \/\/ 3.3 URL bauen\n      const params = [t, r, z, v, ti, d, l, p].join('_');\n      const page = (z === '4')\n        ? 'leaderboard_resp_netto.html'\n        : 'leaderboard_resp_brutto.html';\n      const url = `https:\/\/www.goingsports.online\/Going-Golf-PHP\/${page}?turnierundrunde=${params}`;\n\n      \/\/ 3.4 Fenster \u00f6ffnen\n      window.open(\n        url,\n        '_blank',\n        'width=1920,height=1080,toolbar=0,menubar=0,location=0,status=0,scrollbars=0,resizable=0'\n      );\n    });\n  });\n})();\n<\/script>\n\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Leaderboard Auswahl Turnier ausw\u00e4hlen Turnier ausw\u00e4hlen Runde ausw\u00e4hlen Z\u00e4hlart ausw\u00e4hlen Zeilen pro Seite (numCols) Leaderboard anzeigen Der Browser muss Cookies zulassen.Wir empfehlen als Browser Firefox, Safari oder Chrome.Wenn Sie das H\u00e4kchen bei &#8222;Nur die 1.Seite &#8230;&#8220; setzen,dann bekommen Sie nur die Top 10 angezeigt. Sie k\u00f6nnen die Gr\u00f6\u00dfe des Leaderboards auf dem PC mit der [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"iawp_total_views":949,"footnotes":""},"class_list":["post-1092","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/pages\/1092","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/comments?post=1092"}],"version-history":[{"count":180,"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/pages\/1092\/revisions"}],"predecessor-version":[{"id":1360,"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/pages\/1092\/revisions\/1360"}],"wp:attachment":[{"href":"https:\/\/goingsports.de\/adverts\/wp-json\/wp\/v2\/media?parent=1092"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}