Changeset 3121209
- Timestamp:
- 07/18/2024 10:05:00 AM (21 months ago)
- Location:
- clonable
- Files:
-
- 118 added
- 16 edited
-
tags/2.2.0 (added)
-
tags/2.2.0/Bootstrap.php (added)
-
tags/2.2.0/clonable-wp.php (added)
-
tags/2.2.0/controllers (added)
-
tags/2.2.0/controllers/Controller.php (added)
-
tags/2.2.0/controllers/DashboardController.php (added)
-
tags/2.2.0/controllers/LandingPageController.php (added)
-
tags/2.2.0/controllers/LanguageSwitcherController.php (added)
-
tags/2.2.0/controllers/LanguageTagController.php (added)
-
tags/2.2.0/controllers/SettingController.php (added)
-
tags/2.2.0/controllers/WoocommerceController.php (added)
-
tags/2.2.0/controllers/index.php (added)
-
tags/2.2.0/helpers (added)
-
tags/2.2.0/helpers/Functions.php (added)
-
tags/2.2.0/helpers/Html.php (added)
-
tags/2.2.0/helpers/Json.php (added)
-
tags/2.2.0/helpers/Locales.php (added)
-
tags/2.2.0/helpers/Session.php (added)
-
tags/2.2.0/helpers/clonable-locales-list.php (added)
-
tags/2.2.0/helpers/index.php (added)
-
tags/2.2.0/images (added)
-
tags/2.2.0/images/clonable-full-logo.png (added)
-
tags/2.2.0/images/clonable.png (added)
-
tags/2.2.0/images/flags.png (added)
-
tags/2.2.0/images/index.php (added)
-
tags/2.2.0/index.php (added)
-
tags/2.2.0/middleware (added)
-
tags/2.2.0/middleware/Auth.php (added)
-
tags/2.2.0/middleware/ClonedSite.php (added)
-
tags/2.2.0/middleware/MiddlewareHandler.php (added)
-
tags/2.2.0/middleware/MiddlewareInterface.php (added)
-
tags/2.2.0/middleware/WooCommerce.php (added)
-
tags/2.2.0/middleware/index.php (added)
-
tags/2.2.0/models (added)
-
tags/2.2.0/models/ApiKey.php (added)
-
tags/2.2.0/models/ClonableWooCommerce.php (added)
-
tags/2.2.0/models/ClonedSite.php (added)
-
tags/2.2.0/models/LanguageSwitcher.php (added)
-
tags/2.2.0/models/LanguageTag.php (added)
-
tags/2.2.0/models/Settings.php (added)
-
tags/2.2.0/models/Site.php (added)
-
tags/2.2.0/models/index.php (added)
-
tags/2.2.0/objects (added)
-
tags/2.2.0/objects/ApiResponse.php (added)
-
tags/2.2.0/objects/CircuitBreaker.php (added)
-
tags/2.2.0/objects/ClonableConfig.php (added)
-
tags/2.2.0/objects/ClonableResponse.php (added)
-
tags/2.2.0/objects/CurlBuilder.php (added)
-
tags/2.2.0/objects/ExcludedProductTerm.php (added)
-
tags/2.2.0/objects/Notification.php (added)
-
tags/2.2.0/objects/index.php (added)
-
tags/2.2.0/readme-da_DK.txt (added)
-
tags/2.2.0/readme-de_DE.txt (added)
-
tags/2.2.0/readme-es_ES.txt (added)
-
tags/2.2.0/readme-fr_FR.txt (added)
-
tags/2.2.0/readme-it_IT.txt (added)
-
tags/2.2.0/readme-nb_NO.txt (added)
-
tags/2.2.0/readme-nl_NL.txt (added)
-
tags/2.2.0/readme-sv_SE.txt (added)
-
tags/2.2.0/readme.txt (added)
-
tags/2.2.0/routes (added)
-
tags/2.2.0/routes/Router.php (added)
-
tags/2.2.0/routes/index.php (added)
-
tags/2.2.0/services (added)
-
tags/2.2.0/services/AllowedHostsService.php (added)
-
tags/2.2.0/services/ApiService.php (added)
-
tags/2.2.0/services/ClonableWooCommerceService.php (added)
-
tags/2.2.0/services/LanguageSwitcherService.php (added)
-
tags/2.2.0/services/LanguageTagService.php (added)
-
tags/2.2.0/services/LocaleService.php (added)
-
tags/2.2.0/services/SubfolderService.php (added)
-
tags/2.2.0/services/SyncService.php (added)
-
tags/2.2.0/services/index.php (added)
-
tags/2.2.0/services/modules (added)
-
tags/2.2.0/services/modules/DataPanelModule.php (added)
-
tags/2.2.0/services/modules/ExclusionModule.php (added)
-
tags/2.2.0/services/modules/ProductImporterModule.php (added)
-
tags/2.2.0/services/modules/TaxonomyModule.php (added)
-
tags/2.2.0/services/modules/index.php (added)
-
tags/2.2.0/traits (added)
-
tags/2.2.0/traits/Forms.php (added)
-
tags/2.2.0/traits/Validation.php (added)
-
tags/2.2.0/traits/WooCommerceCheck.php (added)
-
tags/2.2.0/traits/index.php (added)
-
tags/2.2.0/uninstall.php (added)
-
tags/2.2.0/views (added)
-
tags/2.2.0/views/DashboardView.php (added)
-
tags/2.2.0/views/LanguageSwitcherView.php (added)
-
tags/2.2.0/views/LanguageTagView.php (added)
-
tags/2.2.0/views/Layout.php (added)
-
tags/2.2.0/views/OnboardingView.php (added)
-
tags/2.2.0/views/SettingsView.php (added)
-
tags/2.2.0/views/ViewInterface.php (added)
-
tags/2.2.0/views/WoocommerceView.php (added)
-
tags/2.2.0/views/css (added)
-
tags/2.2.0/views/css/clonable-extra-button.css (added)
-
tags/2.2.0/views/css/clonable-global.css (added)
-
tags/2.2.0/views/css/clonable-woocommerce.css (added)
-
tags/2.2.0/views/css/clonable.css (added)
-
tags/2.2.0/views/css/fomantic-dropdown.css (added)
-
tags/2.2.0/views/css/fomantic-transition.css (added)
-
tags/2.2.0/views/css/freakflags.css (added)
-
tags/2.2.0/views/css/index.php (added)
-
tags/2.2.0/views/index.php (added)
-
tags/2.2.0/views/scripts (added)
-
tags/2.2.0/views/scripts/alpine.js (added)
-
tags/2.2.0/views/scripts/dohjs.js (added)
-
tags/2.2.0/views/scripts/fomantic-dropdown.js (added)
-
tags/2.2.0/views/scripts/fomantic-transition.js (added)
-
tags/2.2.0/views/scripts/index.php (added)
-
tags/2.2.0/views/scripts/onload.js (added)
-
tags/2.2.0/views/scripts/woocommerce-clone-field.js (added)
-
trunk/clonable-wp.php (modified) (4 diffs)
-
trunk/controllers/DashboardController.php (added)
-
trunk/controllers/SettingController.php (added)
-
trunk/models/Settings.php (added)
-
trunk/objects/CircuitBreaker.php (added)
-
trunk/objects/CurlBuilder.php (modified) (1 diff)
-
trunk/readme-da_DK.txt (modified) (2 diffs)
-
trunk/readme-de_DE.txt (modified) (2 diffs)
-
trunk/readme-es_ES.txt (modified) (2 diffs)
-
trunk/readme-fr_FR.txt (modified) (2 diffs)
-
trunk/readme-it_IT.txt (modified) (2 diffs)
-
trunk/readme-nb_NO.txt (modified) (2 diffs)
-
trunk/readme-nl_NL.txt (modified) (2 diffs)
-
trunk/readme-sv_SE.txt (modified) (2 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/routes/Router.php (modified) (4 diffs)
-
trunk/services/AllowedHostsService.php (modified) (1 diff)
-
trunk/services/LanguageTagService.php (modified) (1 diff)
-
trunk/services/LocaleService.php (modified) (1 diff)
-
trunk/services/SubfolderService.php (modified) (8 diffs)
-
trunk/views/DashboardView.php (added)
-
trunk/views/SettingsView.php (added)
Legend:
- Unmodified
- Added
- Removed
-
clonable/trunk/clonable-wp.php
r3104460 r3121209 5 5 Description: Official plugin for improving your clones made with Clonable. 6 6 Plugin URI: https://kb.clonable.net/en/introduction/getting-started/wordpress#de-clonable-plug-in-downloaden 7 Version: 2. 1.167 Version: 2.2.0 8 8 Author: Clonable BV 9 9 Author URI: https://www.clonable.net … … 37 37 include_once "models/ApiKey.php"; 38 38 include_once "models/ClonedSite.php"; 39 include_once "models/Settings.php"; 39 40 40 41 // custom objects … … 45 46 include_once "objects/ClonableConfig.php"; 46 47 include_once "objects/Notification.php"; 48 include_once "objects/CircuitBreaker.php"; 47 49 48 50 // include views 49 51 include_once "views/Layout.php"; 50 52 include_once "views/ViewInterface.php"; 53 include_once "views/DashboardView.php"; 51 54 include_once "views/LanguageSwitcherView.php"; 52 55 include_once "views/LanguageTagView.php"; 53 56 include_once "views/WoocommerceView.php"; 54 include_once "views/ GeneralSettingsView.php";57 include_once "views/SettingsView.php"; 55 58 include_once "views/OnboardingView.php"; 56 59 57 60 // include controllers 58 61 include_once "controllers/Controller.php"; 62 include_once "controllers/DashboardController.php"; 59 63 include_once "controllers/WoocommerceController.php"; 60 64 include_once "controllers/LanguageTagController.php"; 61 65 include_once "controllers/LanguageSwitcherController.php"; 62 include_once "controllers/ GeneralSettingController.php";66 include_once "controllers/SettingController.php"; 63 67 include_once "controllers/LandingPageController.php"; 64 68 … … 98 102 99 103 define('CLONABLE_NAME', 'Clonable'); 100 define('CLONABLE_VERSION', '2. 1.16');104 define('CLONABLE_VERSION', '2.2.0'); 101 105 102 106 try { -
clonable/trunk/objects/CurlBuilder.php
r3039574 r3121209 20 20 } 21 21 22 public function set_standard_headers($site_url ) {23 curl_setopt($this->curl, CURLOPT_TIMEOUT, 30);22 public function set_standard_headers($site_url, $max_timeout = 15) { 23 curl_setopt($this->curl, CURLOPT_TIMEOUT, $max_timeout); 24 24 curl_setopt($this->curl, CURLOPT_DNS_USE_GLOBAL_CACHE, false); 25 25 curl_setopt($this->curl, CURLOPT_RETURNTRANSFER, true); // get body response -
clonable/trunk/readme-da_DK.txt
r3104460 r3121209 1 1 === Clonable - Oversæt Woocommerce / WordPress-websted. Flersproget på 5 minutter === 2 2 Contributors: clonable 3 Tags: oversættelser, oversæt, flersproget, clonable, seo , hreflang, undermappe, oversættelse3 Tags: oversættelser, oversæt, flersproget, clonable, seo 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Tilføjet understøttelse af WordPress 6.6 og hævet minimumsversionen for PHP. 36 Tilføjet afbryder til undermappekommunikation med Clonable. 37 Tilføjet indstillingsvindue til aktivering og deaktivering af specifikke tjenester. 38 34 39 v2.1.16 35 40 Bedre standardværdier for klonbare indstillinger. -
clonable/trunk/readme-de_DE.txt
r3104460 r3121209 1 1 === Clonable - Woocommerce / WordPress Website übersetzen. Mehrsprachig in 5 Minuten. === 2 2 Contributors: clonable 3 Tags: Übersetzungen, übersetzen, mehrsprachig, clonable, seo , hreflang, subfolder, Übersetzung3 Tags: Übersetzungen, übersetzen, mehrsprachig, clonable, seo 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Unterstützung für WordPress 6.6 hinzugefügt und die Mindestversion für PHP erhöht. 36 Unterbrecher für die Kommunikation von Unterordnern mit Clonable hinzugefügt. 37 Einstellungsfenster zum Aktivieren und Deaktivieren bestimmter Dienste hinzugefügt. 38 34 39 v2.1.16 35 40 Bessere Standardwerte für Clonable-Optionen. -
clonable/trunk/readme-es_ES.txt
r3104460 r3121209 1 1 === Clonable - Traducir Woocommerce / WordPress sitio web. Multilingüe en 5 minutos. === 2 2 Contributors: clonable 3 Tags: traducciones, traducir, multilingüe, clonable, seo , hreflang, subcarpeta, traducción3 Tags: traducciones, traducir, multilingüe, clonable, seo 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Añadido soporte para WordPress 6.6 y bumped la versión mínima para PHP. 36 Añadido disyuntor para la comunicación de subcarpetas con Clonable. 37 Añadida ventana de configuración para activar y desactivar servicios específicos. 38 34 39 v2.1.16 35 40 Mejores valores por defecto para las opciones de Clonable. -
clonable/trunk/readme-fr_FR.txt
r3104460 r3121209 1 1 ===== Clonable - Traduire un site Woocommerce / WordPress. Multilingue en 5 minutes. === 2 2 Contributors : clonable 3 Tags : traductions, traduire, multilingue, clonable, seo , hreflang, sous-dossier, traduction3 Tags : traductions, traduire, multilingue, clonable, seo 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Ajout du support de WordPress 6.6 et augmentation de la version minimale de PHP. 36 Ajout d'un disjoncteur pour la communication des sous-dossiers avec Clonable. 37 Ajout d'une fenêtre de paramétrage pour activer et désactiver des services spécifiques. 38 34 39 v2.1.16 35 40 Meilleures valeurs par défaut pour les options Clonable. -
clonable/trunk/readme-it_IT.txt
r3104460 r3121209 1 1 === Clonable - Traduci il sito Woocommerce / WordPress. Multilingua in 5 minuti. === 2 2 Contributors: clonable 3 Tags: traduzioni, tradurre, multilingue, clonable, seo , hreflang, sottocartella, traduzione3 Tags: traduzioni, tradurre, multilingue, clonable, seo 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Aggiunto il supporto per WordPress 6.6 e aumentata la versione minima di PHP. 36 Aggiunto un interruttore per la comunicazione delle sottocartelle con Clonable. 37 Aggiunta la finestra delle impostazioni per abilitare e disabilitare servizi specifici. 38 34 39 v2.1.16 35 40 Migliori valori predefiniti per le opzioni Clonable. -
clonable/trunk/readme-nb_NO.txt
r3104460 r3121209 1 1 === Clonable - Oversett Woocommerce / WordPress-nettsted. Flerspråklig på 5 minutter === 2 2 Contributors: clonable 3 Tags: oversettelser, oversette, flerspråklig, clonable , seo, hreflang, undermappe, oversettelse3 Tags: oversettelser, oversette, flerspråklig, clonable 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Lagt til støtte for WordPress 6.6 og økt minimumsversjonen for PHP. 36 Lagt til strømbryter for undermappekommunikasjon med Clonable. 37 Lagt til innstillingsvindu for å aktivere og deaktivere spesifikke tjenester. 38 34 39 v2.1.16 35 40 Bedre standardverdier for klonbare alternativer. -
clonable/trunk/readme-nl_NL.txt
r3104460 r3121209 1 1 === Clonable - Vertaal Woocommerce / WordPress website. Meertalig in 5 minuten. === 2 2 Contributors: clonable 3 Tags: vertalingen, vertalen, meertalig, clonable , seo, hreflang, submap, vertaling3 Tags: vertalingen, vertalen, meertalig, clonable 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Ondersteuning toegevoegd voor WordPress 6.6 en de minimale versie voor PHP verhoogd. 36 Stroomonderbreker toegevoegd voor submapcommunicatie met Clonable. 37 Instellingenvenster toegevoegd voor het in- en uitschakelen van specifieke services. 38 34 39 v2.1.16 35 40 Betere standaardwaarden voor klonen-opties. -
clonable/trunk/readme-sv_SE.txt
r3104460 r3121209 1 1 === Clonable - Översätt Woocommerce / WordPress-webbplats. Flerspråkig på 5 minuter. === 2 2 Contributors: clonable 3 Tags: översättningar, översätta, flerspråkig, clonable, seo , hreflang, undermapp, översättning3 Tags: översättningar, översätta, flerspråkig, clonable, seo 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Lagt till stöd för WordPress 6.6 och höjt lägsta version för PHP. 36 Lagt till brytare för undermappskommunikation med Clonable. 37 Inställningsfönster för aktivering och inaktivering av specifika tjänster har lagts till. 38 34 39 v2.1.16 35 40 Bättre standardvärden för Clonable-alternativ. -
clonable/trunk/readme.txt
r3104460 r3121209 1 1 === Clonable - Translate Woocommerce / WordPress website. Multilingual in 5 minutes. === 2 2 Contributors: clonable 3 Tags: translations, translate, multilingual, clonable, seo , hreflang, subfolder, translation3 Tags: translations, translate, multilingual, clonable, seo 4 4 Requires at least: 5.0 5 Tested up to: 6. 5.46 Requires PHP: 7. 07 Stable tag: 2. 1.165 Tested up to: 6.6 6 Requires PHP: 7.2 7 Stable tag: 2.2.0 8 8 License: GPL v2 or later 9 9 … … 32 32 33 33 == Changelog == 34 v2.2.0 35 Added support for WordPress 6.6 and bumped the minimum version for PHP. 36 Added circuit breaker for subfolder communication with Clonable. 37 Added settings window for enabling and disabling specific services. 38 34 39 v2.1.16 35 40 Better default values for Clonable options. -
clonable/trunk/routes/Router.php
r3012322 r3121209 3 3 namespace Clonable\Routes; 4 4 5 use Clonable\Controllers\ GeneralSettingController;5 use Clonable\Controllers\SettingController; 6 6 use Clonable\Controllers\LandingPageController; 7 7 use Clonable\Controllers\LanguageSwitcherController; 8 8 use Clonable\Controllers\LanguageTagController; 9 9 use Clonable\Controllers\WooCommerceController; 10 use Clonable\Controllers\DashboardController; 10 11 use Clonable\MiddlewareHandler; 11 12 use Clonable\Traits\WooCommerceCheck; … … 58 59 ]; 59 60 60 $routes[' general'] = [61 'name' => ' General settings',62 'controller' => GeneralSettingController::class,61 $routes['dashboard'] = [ 62 'name' => 'Dashboard', 63 'controller' => DashboardController::class, 63 64 'type' => $this::PAGE_TYPE_TAB, 64 65 'middleware' => ['auth'], … … 88 89 ]; 89 90 91 $routes['settings'] = [ 92 'name' => 'Settings', 93 'controller' => SettingController::class, 94 'type' => $this::PAGE_TYPE_TAB, 95 'middleware' => ['auth'], 96 ]; 97 90 98 $this->routes = $routes; 91 99 } … … 95 103 return "setup"; 96 104 } else { 97 return " general";105 return "dashboard"; 98 106 } 99 107 } -
clonable/trunk/services/AllowedHostsService.php
r3058276 r3121209 7 7 class AllowedHostsService { 8 8 public function __construct() { 9 if (get_option('clonable_allowed_hosts_enabled', 'on') !== 'on') { 10 return; 11 } 9 12 add_filter('allowed_redirect_hosts', [$this, 'add_allowed_hosts'], 10, 2); 10 13 } -
clonable/trunk/services/LanguageTagService.php
r3104460 r3121209 10 10 class LanguageTagService { 11 11 public function clonable_echo_language_tags() { 12 if (get_option('clonable_language_tag_service_enabled', 'on') !== 'on') { 13 return; 14 } 15 12 16 try { 13 17 $tags = $this->clonable_get_all_language_tags(); -
clonable/trunk/services/LocaleService.php
r3104460 r3121209 9 9 10 10 public function __construct() { 11 if (get_option('clonable_locale_service_enabled', 'on') !== 'on') { 12 return; 13 } 14 11 15 $response = get_option("clonable_site"); 12 16 if (empty($response)) { -
clonable/trunk/services/SubfolderService.php
r3104460 r3121209 5 5 use Clonable\Helpers\Functions; 6 6 use Clonable\Models\Site; 7 use Clonable\Objects\CircuitBreaker; 7 8 use Clonable\Objects\CurlBuilder; 8 9 use Clonable\Objects\ClonableResponse; … … 10 11 11 12 class SubfolderService { 13 private $circuit_breaker; 14 12 15 public function __construct() { 16 if (get_option('clonable_subfolder_service_enabled', 'on') !== 'on') { 17 return; 18 } 19 13 20 $languages = $this->get_subfolder_languages(); 14 21 if (empty($languages) && !is_admin()) { … … 18 25 } 19 26 27 $this->circuit_breaker = new CircuitBreaker(); 20 28 add_filter('woocommerce_get_script_data', [$this, 'setup_subfolder_script_data'], 1, 2); 21 29 add_action('plugins_loaded', array($this, 'subfolder_request_intercept'), 2); … … 78 86 79 87 if ($is_clonable_page) { 88 // Check the circuit breaker before actually sending the request to Clonable 89 if ($this->circuit_breaker->isOpen()) { 90 $this->circuit_breaker_response(); 91 // phpcs:enable WordPress.Security.EscapeOutput.OutputNotEscaped 92 exit; 93 } 94 80 95 $headers = getallheaders(); 81 96 $request_method = $server_data['REQUEST_METHOD']; … … 84 99 $clonable_response = $this->make_curl_request($request_url, $headers, $request_method, $post_body); 85 100 86 // Send status code 101 $this->circuit_breaker->handle($clonable_response->get_code() < 500); 102 if ($this->circuit_breaker->isOpen()) { 103 $this->circuit_breaker_response(); 104 // phpcs:enable WordPress.Security.EscapeOutput.OutputNotEscaped 105 exit; // exit current script, otherwise the page gets loaded twice at the bottom of the page 106 } 107 108 // Set status code 87 109 status_header($clonable_response->get_code()); 88 110 … … 117 139 } 118 140 141 private function circuit_breaker_response() { 142 status_header(504); 143 echo '<h1>Bad Gateway</h1><br/>'; 144 echo '<p>The server, while acting as a gateway or proxy, did not get a response in time from the upstream server that it needed in order to complete the request.</p>'; 145 if (Functions::can_log_sensitive()) { 146 echo "<br/>"; 147 echo "<h2>Admin only:</h2>"; 148 $this->circuit_breaker->debug(); 149 } 150 } 151 119 152 /** 120 153 * @param $content_type … … 172 205 173 206 try { 207 $max_timeout = get_option('clonable_max_proxy_timeout', 15); 174 208 $site_url = str_replace(array('https://', 'http://'), '', Functions::get_root_domain()); 175 209 $curl = $curl_builder 176 210 ->set_request_type($request_type) 177 ->set_standard_headers($site_url )211 ->set_standard_headers($site_url, $max_timeout) 178 212 ->set_header_response($headers) 179 213 ->set_http_headers($request_headers) 180 214 ->build(); 181 215 } catch (Exception $e) { 216 curl_close($curl_builder->build()); 217 182 218 error_log("Clonable failed to forward the request: {$e->getMessage()}"); 183 219 $message = 'An error occurred. Please check the server logs.<br/>'; … … 204 240 $message .= $error; 205 241 } 206 return new ClonableResponse($message, $headers , 500);242 return new ClonableResponse($message, $headers ?? [], 504); 207 243 } 208 244
Note: See TracChangeset
for help on using the changeset viewer.