diff --git a/websiteFunctions/static/websiteFunctions/websiteFunctions.js b/websiteFunctions/static/websiteFunctions/websiteFunctions.js index 0d679e938..5b01375c5 100755 --- a/websiteFunctions/static/websiteFunctions/websiteFunctions.js +++ b/websiteFunctions/static/websiteFunctions/websiteFunctions.js @@ -2692,73 +2692,55 @@ app.controller('listWebsites', function ($scope, $http, $window) { $scope.selectedWebsite = $scope.WebSitesList[index]; console.log('Selected website:', $scope.selectedWebsite); - if (!$scope.selectedWebsite.wp_sites) { - console.log('Fetching WP details for:', $scope.selectedWebsite.domain); - var url = '/websites/fetchWPDetails'; - var data = { - domain: $scope.selectedWebsite.domain, - websiteName: $scope.selectedWebsite.domain - }; + // Always fetch fresh data + var url = '/websites/fetchWPDetails'; + var data = { + domain: $scope.selectedWebsite.domain, + websiteName: $scope.selectedWebsite.domain + }; + + $http({ + method: 'POST', + url: url, + data: $.param(data), + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + 'X-CSRFToken': getCookie('csrftoken') + } + }).then(function(response) { + console.log('WP Details Response:', response); - $http({ - method: 'POST', - url: url, - data: $.param(data), - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - 'X-CSRFToken': getCookie('csrftoken') - } - }).then(function(response) { - console.log('WP Details Response:', response); - - // Check if response is HTML (login page) - if (typeof response.data === 'string' && response.data.includes('')) { - console.log('Received HTML response, redirecting to login'); - window.location.href = '/login'; - return; - } - - if (response.data && response.data.status === 1) { - try { - // If single site, wrap in array - var sites = Array.isArray(response.data.data) ? response.data.data : [response.data.data]; - - $scope.selectedWebsite.wp_sites = sites.map(function(site) { - return { - id: site.id || $scope.selectedWebsite.domain, - title: site.title || site.domain || $scope.selectedWebsite.domain, - url: site.url || 'http://' + $scope.selectedWebsite.domain, - version: site.version || 'Unknown', - phpVersion: site.php_version || 'Unknown', - theme: site.theme || 'Unknown', - activePlugins: site.active_plugins || 0, - searchIndex: site.search_index === 'enabled', - debugging: site.debugging === 'enabled', - passwordProtection: site.password_protection === 'enabled', - maintenanceMode: site.maintenance_mode === 'enabled' - }; - }); - $scope.selectedWebsite.showWPSites = true; - } catch (e) { - console.error('Error processing WordPress data:', e); - // Create default site on error - $scope.selectedWebsite.wp_sites = [{ - id: $scope.selectedWebsite.domain, - title: $scope.selectedWebsite.domain, - url: 'http://' + $scope.selectedWebsite.domain, - version: 'Unknown', - phpVersion: 'Unknown', - theme: 'Unknown', - activePlugins: 0, - searchIndex: false, - debugging: false, - passwordProtection: false, - maintenanceMode: false - }]; - $scope.selectedWebsite.showWPSites = true; - } - } else { - // Create default site if no data + // Check if response is HTML (login page) + if (typeof response.data === 'string' && response.data.includes('')) { + console.log('Received HTML response, redirecting to login'); + window.location.href = '/login'; + return; + } + + if (response.data && response.data.status === 1) { + try { + // If single site, wrap in array + var sites = Array.isArray(response.data.data) ? response.data.data : [response.data.data]; + + $scope.selectedWebsite.wp_sites = sites.map(function(site) { + return { + id: site.id || $scope.selectedWebsite.domain, + title: site.title || site.domain || $scope.selectedWebsite.domain, + url: site.url || 'http://' + $scope.selectedWebsite.domain, + version: site.version || 'Unknown', + phpVersion: site.php_version || 'Unknown', + theme: site.theme || 'Unknown', + activePlugins: site.active_plugins || 0, + searchIndex: site.search_index === 'enabled', + debugging: site.debugging === 'enabled', + passwordProtection: site.password_protection === 'enabled', + maintenanceMode: site.maintenance_mode === 'enabled' + }; + }); + $scope.selectedWebsite.showWPSites = true; + } catch (e) { + console.error('Error processing WordPress data:', e); + // Create default site on error $scope.selectedWebsite.wp_sites = [{ id: $scope.selectedWebsite.domain, title: $scope.selectedWebsite.domain, @@ -2774,9 +2756,8 @@ app.controller('listWebsites', function ($scope, $http, $window) { }]; $scope.selectedWebsite.showWPSites = true; } - }).catch(function(error) { - console.error('WP Details Error:', error); - // Create default site on error + } else { + // Create default site if no data $scope.selectedWebsite.wp_sites = [{ id: $scope.selectedWebsite.domain, title: $scope.selectedWebsite.domain, @@ -2791,10 +2772,25 @@ app.controller('listWebsites', function ($scope, $http, $window) { maintenanceMode: false }]; $scope.selectedWebsite.showWPSites = true; - }); - } else { - $scope.selectedWebsite.showWPSites = !$scope.selectedWebsite.showWPSites; - } + } + }).catch(function(error) { + console.error('WP Details Error:', error); + // Create default site on error + $scope.selectedWebsite.wp_sites = [{ + id: $scope.selectedWebsite.domain, + title: $scope.selectedWebsite.domain, + url: 'http://' + $scope.selectedWebsite.domain, + version: 'Unknown', + phpVersion: 'Unknown', + theme: 'Unknown', + activePlugins: 0, + searchIndex: false, + debugging: false, + passwordProtection: false, + maintenanceMode: false + }]; + $scope.selectedWebsite.showWPSites = true; + }); }; $scope.visitSite = function(url) { @@ -6671,73 +6667,55 @@ app.controller('manageAliasController', function ($scope, $http, $timeout, $wind $scope.selectedWebsite = $scope.WebSitesList[index]; console.log('Selected website:', $scope.selectedWebsite); - if (!$scope.selectedWebsite.wp_sites) { - console.log('Fetching WP details for:', $scope.selectedWebsite.domain); - var url = '/websites/fetchWPDetails'; - var data = { - domain: $scope.selectedWebsite.domain, - websiteName: $scope.selectedWebsite.domain - }; + // Always fetch fresh data + var url = '/websites/fetchWPDetails'; + var data = { + domain: $scope.selectedWebsite.domain, + websiteName: $scope.selectedWebsite.domain + }; + + $http({ + method: 'POST', + url: url, + data: $.param(data), + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + 'X-CSRFToken': getCookie('csrftoken') + } + }).then(function(response) { + console.log('WP Details Response:', response); - $http({ - method: 'POST', - url: url, - data: $.param(data), - headers: { - 'Content-Type': 'application/x-www-form-urlencoded', - 'X-CSRFToken': getCookie('csrftoken') - } - }).then(function(response) { - console.log('WP Details Response:', response); - - // Check if response is HTML (login page) - if (typeof response.data === 'string' && response.data.includes('')) { - console.log('Received HTML response, redirecting to login'); - window.location.href = '/login'; - return; - } - - if (response.data && response.data.status === 1) { - try { - // If single site, wrap in array - var sites = Array.isArray(response.data.data) ? response.data.data : [response.data.data]; - - $scope.selectedWebsite.wp_sites = sites.map(function(site) { - return { - id: site.id || $scope.selectedWebsite.domain, - title: site.title || site.domain || $scope.selectedWebsite.domain, - url: site.url || 'http://' + $scope.selectedWebsite.domain, - version: site.version || 'Unknown', - phpVersion: site.php_version || 'Unknown', - theme: site.theme || 'Unknown', - activePlugins: site.active_plugins || 0, - searchIndex: site.search_index === 'enabled', - debugging: site.debugging === 'enabled', - passwordProtection: site.password_protection === 'enabled', - maintenanceMode: site.maintenance_mode === 'enabled' - }; - }); - $scope.selectedWebsite.showWPSites = true; - } catch(e) { - console.error('Error processing WordPress data:', e); - // Create default site on error - $scope.selectedWebsite.wp_sites = [{ - id: $scope.selectedWebsite.domain, - title: $scope.selectedWebsite.domain, - url: 'http://' + $scope.selectedWebsite.domain, - version: 'Unknown', - phpVersion: 'Unknown', - theme: 'Unknown', - activePlugins: 0, - searchIndex: false, - debugging: false, - passwordProtection: false, - maintenanceMode: false - }]; - $scope.selectedWebsite.showWPSites = true; - } - } else { - // Create default site if no data + // Check if response is HTML (login page) + if (typeof response.data === 'string' && response.data.includes('')) { + console.log('Received HTML response, redirecting to login'); + window.location.href = '/login'; + return; + } + + if (response.data && response.data.status === 1) { + try { + // If single site, wrap in array + var sites = Array.isArray(response.data.data) ? response.data.data : [response.data.data]; + + $scope.selectedWebsite.wp_sites = sites.map(function(site) { + return { + id: site.id || $scope.selectedWebsite.domain, + title: site.title || site.domain || $scope.selectedWebsite.domain, + url: site.url || 'http://' + $scope.selectedWebsite.domain, + version: site.version || 'Unknown', + phpVersion: site.php_version || 'Unknown', + theme: site.theme || 'Unknown', + activePlugins: site.active_plugins || 0, + searchIndex: site.search_index === 'enabled', + debugging: site.debugging === 'enabled', + passwordProtection: site.password_protection === 'enabled', + maintenanceMode: site.maintenance_mode === 'enabled' + }; + }); + $scope.selectedWebsite.showWPSites = true; + } catch (e) { + console.error('Error processing WordPress data:', e); + // Create default site on error $scope.selectedWebsite.wp_sites = [{ id: $scope.selectedWebsite.domain, title: $scope.selectedWebsite.domain, @@ -6753,9 +6731,8 @@ app.controller('manageAliasController', function ($scope, $http, $timeout, $wind }]; $scope.selectedWebsite.showWPSites = true; } - }).catch(function(error) { - console.error('WP Details Error:', error); - // Create default site on error + } else { + // Create default site if no data $scope.selectedWebsite.wp_sites = [{ id: $scope.selectedWebsite.domain, title: $scope.selectedWebsite.domain, @@ -6770,10 +6747,25 @@ app.controller('manageAliasController', function ($scope, $http, $timeout, $wind maintenanceMode: false }]; $scope.selectedWebsite.showWPSites = true; - }); - } else { - $scope.selectedWebsite.showWPSites = !$scope.selectedWebsite.showWPSites; - } + } + }).catch(function(error) { + console.error('WP Details Error:', error); + // Create default site on error + $scope.selectedWebsite.wp_sites = [{ + id: $scope.selectedWebsite.domain, + title: $scope.selectedWebsite.domain, + url: 'http://' + $scope.selectedWebsite.domain, + version: 'Unknown', + phpVersion: 'Unknown', + theme: 'Unknown', + activePlugins: 0, + searchIndex: false, + debugging: false, + passwordProtection: false, + maintenanceMode: false + }]; + $scope.selectedWebsite.showWPSites = true; + }); }; $scope.updateSetting = function(wp, setting) { @@ -8163,8 +8155,8 @@ app.controller('installMauticCTRL', function ($scope, $http, $timeout) { $scope.installationDetailsForm = true; $scope.installationProgress = false; - $scope.installationFailed = true; - $scope.installationSuccessfull = false; + $scope.installationFailed = false; + $scope.installationSuccessfull = true; $scope.couldNotConnect = true; $scope.wpInstallLoading = true; $scope.goBackDisable = false;