From acf94de6d5cd0b857b605679567a37ee8f2516c3 Mon Sep 17 00:00:00 2001 From: Thom Rawson Date: Sun, 6 May 2018 14:25:39 +0900 Subject: [PATCH] MDL-54551 core: AJAX call redirects to login page when session expired --- lang/en/webservice.php | 1 + lib/amd/build/ajax.min.js | 2 +- lib/amd/src/ajax.js | 19 +++++++++++++++---- lib/externallib.php | 4 ++-- 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/lang/en/webservice.php b/lang/en/webservice.php index b6cf1de44d0..20af1fe4612 100644 --- a/lang/en/webservice.php +++ b/lang/en/webservice.php @@ -186,6 +186,7 @@ $string['service'] = 'Service'; $string['servicehelpexplanation'] = 'A service is a set of functions. A service can be accessed by all users or just specified users.'; $string['servicename'] = 'Service name'; $string['servicenotavailable'] = 'Web service is not available (it doesn\'t exist or might be disabled)'; +$string['servicerequireslogin'] = 'Web service requires login (the session has been logged out or has expired. Please save any work on the current page before continuing)'; $string['servicesbuiltin'] = 'Built-in services'; $string['servicescustom'] = 'Custom services'; $string['serviceusers'] = 'Authorised users'; diff --git a/lib/amd/build/ajax.min.js b/lib/amd/build/ajax.min.js index 8247f327b0c..8a6dfe49193 100644 --- a/lib/amd/build/ajax.min.js +++ b/lib/amd/build/ajax.min.js @@ -1 +1 @@ -define(["jquery","core/config","core/log"],function(a,b,c){var d=!1,e=function(a){var b,c,d=this,e=null,f=0;if(a.error)for(;floginrequired) { if (defined('NO_MOODLE_COOKIES') && NO_MOODLE_COOKIES && !PHPUNIT_TEST) { - throw new moodle_exception('servicenotavailable', 'webservice'); + throw new moodle_exception('servicerequireslogin', 'webservice'); } if (!isloggedin()) { - throw new moodle_exception('servicenotavailable', 'webservice'); + throw new moodle_exception('servicerequireslogin', 'webservice'); } else { require_sesskey(); }