diff --git a/workflow/engine/src/ProcessMaker/Model/UserConfig.php b/workflow/engine/src/ProcessMaker/Model/UserConfig.php index 1977f07f8..5d383048d 100644 --- a/workflow/engine/src/ProcessMaker/Model/UserConfig.php +++ b/workflow/engine/src/ProcessMaker/Model/UserConfig.php @@ -34,10 +34,14 @@ class UserConfig extends Model if (empty($userConfig)) { return null; } + $setting = json_decode($userConfig->USC_SETTING); + if (empty($setting)) { + $setting = new stdClass(); + } return [ "id" => $userConfig->USR_ID, "name" => $userConfig->USC_NAME, - "setting" => json_decode($userConfig->USC_SETTING) + "setting" => $setting ]; } diff --git a/workflow/engine/src/ProcessMaker/Services/Api/Home.php b/workflow/engine/src/ProcessMaker/Services/Api/Home.php index e2c87f706..f584de9c7 100644 --- a/workflow/engine/src/ProcessMaker/Services/Api/Home.php +++ b/workflow/engine/src/ProcessMaker/Services/Api/Home.php @@ -904,7 +904,10 @@ class Home extends Api { $setting = UserConfig::getSetting($id, $name); if (is_null($setting)) { - throw new RestException(Api::STAT_APP_EXCEPTION, G::LoadTranslation('ID_DOES_NOT_EXIST')); + $setting = [ + "status" => 404, + "message" => G::LoadTranslation('ID_DOES_NOT_EXIST') + ]; } return $setting; }