summaryrefslogtreecommitdiffstats
path: root/modules-available/locationinfo
diff options
context:
space:
mode:
authorJannik Schönartz2017-03-17 16:32:38 +0100
committerJannik Schönartz2017-03-17 16:32:38 +0100
commitf327ab8bbb1091dd5fe3eeb7d1de9eb9fa69b342 (patch)
treeb94657b0a63070a36ac7042d8ea35e75ef86fed7 /modules-available/locationinfo
parentRework of the Server List. Many Bugfixes (see Mail). (diff)
downloadslx-admin-f327ab8bbb1091dd5fe3eeb7d1de9eb9fa69b342.tar.gz
slx-admin-f327ab8bbb1091dd5fe3eeb7d1de9eb9fa69b342.tar.xz
slx-admin-f327ab8bbb1091dd5fe3eeb7d1de9eb9fa69b342.zip
SetCredentials error message is no longer ignored.
Diffstat (limited to 'modules-available/locationinfo')
-rw-r--r--modules-available/locationinfo/api.inc.php6
-rw-r--r--modules-available/locationinfo/page.inc.php11
2 files changed, 12 insertions, 5 deletions
diff --git a/modules-available/locationinfo/api.inc.php b/modules-available/locationinfo/api.inc.php
index caa9a6ec..ca87c7e4 100644
--- a/modules-available/locationinfo/api.inc.php
+++ b/modules-available/locationinfo/api.inc.php
@@ -374,7 +374,11 @@ function getCalendar($idList)
$serverInstance = CourseBackend::getInstance($server['type']);
$setCred = $serverInstance->setCredentials($server['credentials'], $server['url'], $serverid);
- $calendarFromBackend = $serverInstance->fetchSchedule($server['idlist']);
+ $calendarFromBackend = array();
+ if ($setCred) {
+ $calendarFromBackend = $serverInstance->fetchSchedule($server['idlist']);
+ }
+
$formattedArray = array();
$resultarray = array();
if ($calendarFromBackend === false || $setCred === false) {
diff --git a/modules-available/locationinfo/page.inc.php b/modules-available/locationinfo/page.inc.php
index ccf37d0e..dec022b2 100644
--- a/modules-available/locationinfo/page.inc.php
+++ b/modules-available/locationinfo/page.inc.php
@@ -259,10 +259,13 @@ class Page_LocationInfo extends Page
$dbresult = Database::queryFirst("SELECT * FROM `setting_location_info` WHERE serverid = :serverid", array('serverid' => $serverid));
$serverInstance = CourseBackend::getInstance($dbresult['servertype']);
- $serverInstance->setCredentials(json_decode($dbresult['credentials'], true), $dbresult['serverurl'], $serverid);
- $setCred = $serverInstance->checkConnection();
+ $setCredentials = $serverInstance->setCredentials(json_decode($dbresult['credentials'], true), $dbresult['serverurl'], $serverid);
- if (!$setCred) {
+ if ($setCredentials) {
+ $setCred = $serverInstance->checkConnection();
+ }
+
+ if (!$setCredentials || !$setCred) {
$error['timestamp'] = time();
$error['error'] = $serverInstance->getError();
Database::exec("UPDATE `setting_location_info` Set error=:error WHERE serverid=:id", array('id' => $serverid, 'error' => json_encode($error, true)));
@@ -491,7 +494,7 @@ class Page_LocationInfo extends Page
$credential['type'] = "array";
$credential['array'] = $selection;
}
-
+
$backend['credentials'][] = $credential;
}
$serverBackends[] = $backend;