Quellcode durchsuchen

get organization id from uri query

Olivier Massot vor 4 Jahren
Ursprung
Commit
e6ed59d6bb

+ 0 - 63
ot_core/Classes/Middleware/Frontend/OtSiteResolver.php

@@ -1,63 +0,0 @@
-<?php
-declare(strict_types = 1);
-namespace Opentalent\OtCore\Middleware\Frontend;
-
-use Opentalent\OtCore\Exception\NoSuchWebsiteException;
-use Opentalent\OtCore\Website\OtWebsiteRepository;
-use Psr\Http\Message\ResponseInterface;
-use Psr\Http\Message\ServerRequestInterface;
-use Psr\Http\Server\RequestHandlerInterface;
-use TYPO3\CMS\Core\Utility\GeneralUtility;
-use TYPO3\CMS\Extbase\Object\ObjectManager;
-use TYPO3\CMS\Core\Routing\SiteRouteResult;
-use TYPO3\CMS\Frontend\Controller\ErrorController;
-use TYPO3\CMS\Frontend\Page\PageAccessFailureReasons;
-
-/**
- *
- */
-class OtSiteResolver extends \TYPO3\CMS\Frontend\Middleware\SiteResolver
-{
-    /**
-     * Resolve the site/language information by checking the page ID or the URL.
-     *
-     * @param ServerRequestInterface $request
-     * @param RequestHandlerInterface $handler
-     * @return ResponseInterface
-     */
-    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
-    {
-        $otWebsiteRepository = GeneralUtility::makeInstance(ObjectManager::class)->get(OtWebsiteRepository::class);
-
-        try {
-            $devMode = $_SERVER['TYPO3_CONTEXT'] == "Development";
-
-            $otWebsite = $otWebsiteRepository->matchUriToWebsite($request->getUri(), $devMode);
-            $site = $otWebsiteRepository->generateWebsiteConfiguration($otWebsite);
-            $language = $site->getDefaultLanguage();
-            if ($devMode) {
-                preg_match("/\w+\/(.*)/", $request->getUri()->getPath(), $m);
-                $tail = $m[1] ?? "";
-            } else {
-                $tail = rtrim($request->getUri()->getPath(), '/');
-            }
-        } catch (NoSuchWebsiteException $e) {
-            // site not found
-            // either it will be redirected, or it will return a pageNotFound error during the page resolution
-            return $handler->handle($request);
-        }
-
-        $routeResult = new SiteRouteResult($request->getUri(), $site, $language, $tail);
-
-        $request = $request->withAttribute('ot_website', $otWebsite);
-        $request = $request->withAttribute('site', $routeResult->getSite());
-        $request = $request->withAttribute('language', $routeResult->getLanguage());
-        $request = $request->withAttribute('routing', $routeResult);
-
-        // At this point, we later get further route modifiers
-        // for bw-compat we update $GLOBALS[TYPO3_REQUEST] to be used later in TSFE.
-        $GLOBALS['TYPO3_REQUEST'] = $request;
-
-        return $handler->handle($request);
-    }
-}

+ 1 - 0
ot_templating/Resources/Private/Layouts/Classic/StructuresFrame.html

@@ -5,6 +5,7 @@
 <f:layout name="StructuresFrame" />
 
 <f:render partial="Classic/Assets" />
+<f:render partial="Classic/NoScriptWarning"/>
 
 <v:asset.script name="classic-structures"
                 path="EXT:ot_templating/Resources/Public/assets/Classic/script/structures.js"

+ 8 - 2
ot_templating/Resources/Public/assets/Classic/script/structures.js

@@ -34,11 +34,18 @@ function sphericDistance(lat1, lon1, lat2, lon2)
 // > Needs to be loaded after the main.js script
 $(document).ready(function() {
 
+    const queryParameters = new URLSearchParams(window.location.search);
+    let organizationId = queryParameters.get('organization-id');
+
+    if (!organizationId) {
+        throw 'Missing organization-id parameter';
+    }
+
     // Init
     let document = $('html, body');
     let structureFrame = $('.ot-structures-frame').first();
 
-    let organizationId = structureFrame.data('org-id');
+    // let organizationId = structureFrame.data('org-id');
 
     let resultsPageDiv = structureFrame.find('.structures-page').first();
     let pleaseWaitSpan = structureFrame.find('.please-wait').first();
@@ -78,7 +85,6 @@ $(document).ready(function() {
         '8CI': tr['8CI'],
         'OTAU':tr['OTAU'],
     }
-    console.log(structures_categories);
 
     // #### Instanciate and populate leaflet map
     let mapDiv = $('#structure-map').first();