@@ -282,7 +282,7 @@ QueryBuilder.prototype.bindEvents = function() {
282
282
break ;
283
283
284
284
case 'value' :
285
- self . updateRuleValue ( node ) ;
285
+ self . updateRuleValue ( node , oldValue ) ;
286
286
break ;
287
287
}
288
288
}
@@ -297,7 +297,7 @@ QueryBuilder.prototype.bindEvents = function() {
297
297
break ;
298
298
299
299
case 'condition' :
300
- self . updateGroupCondition ( node ) ;
300
+ self . updateGroupCondition ( node , oldValue ) ;
301
301
break ;
302
302
}
303
303
}
@@ -446,10 +446,11 @@ QueryBuilder.prototype.deleteGroup = function(group) {
446
446
/**
447
447
* Performs actions when a group's condition changes
448
448
* @param {Group } group
449
+ * @param {object } previousCondition
449
450
* @fires QueryBuilder.afterUpdateGroupCondition
450
451
* @private
451
452
*/
452
- QueryBuilder . prototype . updateGroupCondition = function ( group ) {
453
+ QueryBuilder . prototype . updateGroupCondition = function ( group , previousCondition ) {
453
454
group . $el . find ( '>' + QueryBuilder . selectors . group_condition ) . each ( function ( ) {
454
455
var $this = $ ( this ) ;
455
456
$this . prop ( 'checked' , $this . val ( ) === group . condition ) ;
@@ -461,8 +462,9 @@ QueryBuilder.prototype.updateGroupCondition = function(group) {
461
462
* @event afterUpdateGroupCondition
462
463
* @memberof QueryBuilder
463
464
* @param {Group } group
465
+ * @param {object } previousCondition
464
466
*/
465
- this . trigger ( 'afterUpdateGroupCondition' , group ) ;
467
+ this . trigger ( 'afterUpdateGroupCondition' , group , previousCondition ) ;
466
468
467
469
this . trigger ( 'rulesChanged' ) ;
468
470
} ;
@@ -732,8 +734,9 @@ QueryBuilder.prototype.updateRuleFilter = function(rule, previousFilter) {
732
734
* @event afterUpdateRuleFilter
733
735
* @memberof QueryBuilder
734
736
* @param {Rule } rule
737
+ * @param {object } previousFilter
735
738
*/
736
- this . trigger ( 'afterUpdateRuleFilter' , rule ) ;
739
+ this . trigger ( 'afterUpdateRuleFilter' , rule , previousFilter ) ;
737
740
738
741
this . trigger ( 'rulesChanged' ) ;
739
742
} ;
@@ -747,6 +750,7 @@ QueryBuilder.prototype.updateRuleFilter = function(rule, previousFilter) {
747
750
*/
748
751
QueryBuilder . prototype . updateRuleOperator = function ( rule , previousOperator ) {
749
752
var $valueContainer = rule . $el . find ( QueryBuilder . selectors . value_container ) ;
753
+ var ruleValue = rule . value ;
750
754
751
755
if ( ! rule . operator || rule . operator . nb_inputs === 0 ) {
752
756
$valueContainer . hide ( ) ;
@@ -773,22 +777,24 @@ QueryBuilder.prototype.updateRuleOperator = function(rule, previousOperator) {
773
777
* @event afterUpdateRuleOperator
774
778
* @memberof QueryBuilder
775
779
* @param {Rule } rule
780
+ * @param {object } previousOperator
776
781
*/
777
- this . trigger ( 'afterUpdateRuleOperator' , rule ) ;
782
+ this . trigger ( 'afterUpdateRuleOperator' , rule , previousOperator ) ;
778
783
779
784
this . trigger ( 'rulesChanged' ) ;
780
785
781
786
// FIXME is it necessary ?
782
- this . updateRuleValue ( rule ) ;
787
+ this . updateRuleValue ( rule , ruleValue ) ;
783
788
} ;
784
789
785
790
/**
786
791
* Performs actions when rule's value changes
787
792
* @param {Rule } rule
793
+ * @param {object } previousValue
788
794
* @fires QueryBuilder.afterUpdateRuleValue
789
795
* @private
790
796
*/
791
- QueryBuilder . prototype . updateRuleValue = function ( rule ) {
797
+ QueryBuilder . prototype . updateRuleValue = function ( rule , previousValue ) {
792
798
if ( ! rule . _updating_value ) {
793
799
this . setRuleInputValue ( rule , rule . value ) ;
794
800
}
@@ -798,8 +804,9 @@ QueryBuilder.prototype.updateRuleValue = function(rule) {
798
804
* @event afterUpdateRuleValue
799
805
* @memberof QueryBuilder
800
806
* @param {Rule } rule
807
+ * @param {* } previousValue
801
808
*/
802
- this . trigger ( 'afterUpdateRuleValue' , rule ) ;
809
+ this . trigger ( 'afterUpdateRuleValue' , rule , previousValue ) ;
803
810
804
811
this . trigger ( 'rulesChanged' ) ;
805
812
} ;
0 commit comments