From c175d257f006731a8a06e1d21b169f62ddc66bba Mon Sep 17 00:00:00 2001 From: Mark Crane Date: Fri, 25 Jul 2014 01:32:36 +0000 Subject: [PATCH] Make the setting order with a try catch to make the upgrade smoother --- resources/classes/domains.php | 42 +++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/resources/classes/domains.php b/resources/classes/domains.php index 1028c657a2..4832ae70e3 100644 --- a/resources/classes/domains.php +++ b/resources/classes/domains.php @@ -43,12 +43,21 @@ unset($_SESSION['server']); unset($_SESSION['switch']); + //set the PDO error mode + $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + //get the default settings $sql = "select * from v_default_settings "; $sql .= "where default_setting_enabled = 'true' "; - $sql .= "order by default_setting_order asc "; - $prep_statement = $db->prepare($sql); - $prep_statement->execute(); + try { + $sql .= "order by default_setting_order asc "; + $prep_statement = $db->prepare($sql); + $prep_statement->execute(); + } + catch(PDOException $e) { + $prep_statement = $db->prepare($sql); + $prep_statement->execute(); + } $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); foreach ($result as $row) { $name = $row['default_setting_name']; @@ -76,9 +85,15 @@ $sql = "select * from v_domain_settings "; $sql .= "where domain_uuid = '" . $_SESSION["domain_uuid"] . "' "; $sql .= "and domain_setting_enabled = 'true' "; - $sql .= "order by domain_setting_order asc "; - $prep_statement = $db->prepare($sql); - $prep_statement->execute(); + try { + $sql .= "order by domain_setting_order asc "; + $prep_statement = $db->prepare($sql); + $prep_statement->execute(); + } + catch(PDOException $e) { + $prep_statement = $db->prepare($sql); + $prep_statement->execute(); + } $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); foreach ($result as $row) { $name = $row['domain_setting_name']; @@ -109,10 +124,16 @@ $sql .= "where domain_uuid = '" . $_SESSION["domain_uuid"] . "' "; $sql .= "and user_uuid = '" . $_SESSION["user_uuid"] . "' "; $sql .= "and user_setting_enabled = 'true' "; - $sql .= "order by user_setting_order asc "; - $prep_statement = $db->prepare($sql); - if ($prep_statement) { + try { + $sql .= "order by user_setting_order asc "; + $prep_statement = $db->prepare($sql); $prep_statement->execute(); + } + catch(PDOException $e) { + $prep_statement = $db->prepare($sql); + $prep_statement->execute(); + } + if ($prep_statement) { $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); foreach ($result as $row) { $name = $row['user_setting_name']; @@ -141,6 +162,9 @@ } } + //set the PDO error mode + $db->setAttribute(PDO::ATTR_ERRMODE, ''); + //set the values from the session variables if (strlen($_SESSION['domain']['time_zone']['name']) > 0) { //server time zone