public static function checkCORS()
    {
        Logger::log('Checking CORS');
        $corsEnabled = Config::getParam('cors.enabled');
        $request = Request::getInstance();
        if (NULL !== $corsEnabled) {
            if ($corsEnabled === '*' || preg_match($corsEnabled, $request->getServer('HTTP_REFERER'))) {
                if (!headers_sent()) {
                    // TODO include this headers in Template class output method
                    header('Access-Control-Allow-Credentials: true');
                    header('Access-Control-Allow-Origin: ' . Request::getInstance()->getServer('HTTP_ORIGIN', '*'));
                    header('Vary: Origin');
                    header('Access-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH, OPTIONS');
                    header('Access-Control-Allow-Headers: ' . implode(', ', self::getCorsHeaders()));
                }
                if (Request::getInstance()->getMethod() === Request::VERB_OPTIONS) {
                    Logger::log('Returning OPTIONS header confirmation for CORS pre flight requests', LOG_DEBUG);
                    header('HTTP/1.1 200 OK');
                    exit();
                }
            }
        }
    }
public static function checkCORS()
    {
        Logger::log('Checking CORS');
        $corsEnabled = Config::getParam('cors.enabled');
        $request = Request::getInstance();
        if (NULL !== $corsEnabled) {
            if ($corsEnabled === '*' || preg_match($corsEnabled, $request->getServer('HTTP_REFERER'))) {
                if (!headers_sent()) {
                    // TODO include this headers in Template class output method
                    header('Access-Control-Allow-Credentials: true');
                    header('Access-Control-Allow-Origin: ' . Request::getInstance()->getServer('HTTP_ORIGIN', '*'));
                    header('Vary: Origin');
                    header('Access-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH, OPTIONS');
                    header('Access-Control-Allow-Headers: ' . implode(', ', self::getCorsHeaders()));
                }
                if (Request::getInstance()->getMethod() === Request::VERB_OPTIONS) {
                    Logger::log('Returning OPTIONS header confirmation for CORS pre flight requests', LOG_DEBUG);
                    header('HTTP/1.1 200 OK');
                    exit();
                }
            }
        }
    }
public static function checkCORS ( ) { Logger :: log ( 'Checking CORS' ) ; $ corsEnabled = Config :: getParam ( 'cors.enabled' ) ; $ request = Request :: getInstance ( ) ; if ( NULL !== $ corsEnabled ) { if ( $ corsEnabled === '*' || preg_match ( $ corsEnabled , $ request -> getServer ( 'HTTP_REFERER' ) ) ) { if ( ! headers_sent ( ) ) { // TODO include this headers in Template class output method header ( 'Access-Control-Allow-Credentials: true' ) ; header ( 'Access-Control-Allow-Origin: ' . Request :: getInstance ( ) -> getServer ( 'HTTP_ORIGIN' , '*' ) ) ; header ( 'Vary: Origin' ) ; header ( 'Access-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH, OPTIONS' ) ; header ( 'Access-Control-Allow-Headers: ' . implode ( ', ' , self :: getCorsHeaders ( ) ) ) ; } if ( Request :: getInstance ( ) -> getMethod ( ) === Request :: VERB_OPTIONS ) { Logger :: log ( 'Returning OPTIONS header confirmation for CORS pre flight requests' , LOG_DEBUG ) ; header ( 'HTTP/1.1 200 OK' ) ; exit ( ) ; } } } }
Check CROS requests
Check CROS requests