assets/javascripts/semantic_ui/definitions/behaviors/state.js in less-rails-semantic_ui-1.9.2.0 vs assets/javascripts/semantic_ui/definitions/behaviors/state.js in less-rails-semantic_ui-1.10.0.0
- old
+ new
@@ -190,17 +190,24 @@
},
toggle: {
state: function() {
var
- apiRequest
+ apiRequest,
+ requestCancelled
;
if( module.allows('active') && module.is.enabled() ) {
module.refresh();
if($.fn.api !== undefined) {
- apiRequest = $module.api('get request');
- if(apiRequest) {
+ apiRequest = $module.api('get request');
+ requestCancelled = $module.api('was cancelled');
+ if( requestCancelled ) {
+ module.debug('API Request cancelled by beforesend');
+ settings.activateTest = function(){ return false; };
+ settings.deactivateTest = function(){ return false; };
+ }
+ else if(apiRequest) {
module.listenTo(apiRequest);
return;
}
}
module.change.state();
@@ -228,15 +235,10 @@
}
module.change.state();
})
;
}
- // xhr exists but set to false, beforeSend killed the xhr
- else {
- settings.activateTest = function(){ return false; };
- settings.deactivateTest = function(){ return false; };
- }
},
// checks whether active/inactive state can be given
change: {
@@ -392,11 +394,11 @@
.html(text)
;
}
}
else {
- module.debug('Text is already sane, ignoring update', text);
+ module.debug('Text is already set, ignoring update', text);
}
}
},
setting: function(name, value) {
@@ -577,41 +579,41 @@
};
$.fn.state.settings = {
// module info
- name : 'State',
+ name : 'State',
// debug output
- debug : false,
+ debug : false,
// verbose debug output
- verbose : true,
+ verbose : true,
// namespace for events
- namespace : 'state',
+ namespace : 'state',
// debug data includes performance
- performance: true,
+ performance : true,
// callback occurs on state change
- onActivate : function() {},
- onDeactivate : function() {},
- onChange : function() {},
+ onActivate : function() {},
+ onDeactivate : function() {},
+ onChange : function() {},
// state test functions
activateTest : function() { return true; },
deactivateTest : function() { return true; },
// whether to automatically map default states
- automatic : true,
+ automatic : true,
// activate / deactivate changes all elements instantiated at same time
- sync : false,
+ sync : false,
// default flash text duration, used for temporarily changing text of an element
- flashDuration : 1000,
+ flashDuration : 1000,
// selector filter
filter : {
text : '.loading, .disabled',
active : '.disabled'
@@ -619,10 +621,11 @@
context : false,
// error
error: {
- method : 'The method you called is not defined.'
+ beforeSend : 'The before send function has cancelled state change',
+ method : 'The method you called is not defined.'
},
// metadata
metadata: {
promise : 'promise',