229
229
var full_uri = module.get_absolute_uri(original_uri);
230
230
for (var name in LP.cache) {
231
231
var cached_object = LP.cache[name];
232
if (!Y.Lang.isValue(cached_object))
232
234
if (cached_object['self_link'] == full_uri) {
233
235
Y.log(name + ' cached object has been updated.');
234
236
update_cached_object(name, cached_object, entry);
763
765
} else if (o.status >= 500) {
764
766
var server_error =
765
767
'Server error, please contact an administrator.';
766
if (o.getResponseHeader('X-Lazr-OopsId')) {
767
server_error = server_error + ' OOPS ID:' +
768
o.getResponseHeader('X-Lazr-OOPSid');
768
var oops_id = self.get_oops_id(o);
770
server_error = server_error + ' OOPS ID:' + oops_id;
770
772
self.showError(server_error);
771
773
// Otherwise we send some sane text as an error
774
} else if (o.status == 412){
775
self.showError(o.status + ' ' + o.statusText);
773
self.showError(o.responseText);
777
self.showError(self.get_generic_error(o));
781
get_oops_id: function(response) {
782
return response.getResponseHeader('X-Lazr-OopsId');
784
get_generic_error: function(response) {
785
return response.responseText;
779
789
module.ErrorHandler = ErrorHandler;
792
var FormErrorHandler = function() {};
795
FormErrorHandler.prototype = new ErrorHandler();
798
FormErrorHandler.prototype.get_oops_id = function(response) {
799
var oops_re = /code class\="oopsid">(OOPS-[^<]*)/;
800
var result = response.responseText.match(oops_re);
801
if (result === null) {
808
FormErrorHandler.prototype.get_generic_error = function(response) {
809
if (response.status !== 403){
810
return "Sorry, you don't have permission to make this change.";
813
return response.status + ' ' + response.statusText;
818
module.FormErrorHandler = FormErrorHandler;
781
821
}, "0.1" ,{"requires":["attribute", "io", "json-parse", "json-stringify"]});