| Server IP : 213.186.33.4 / Your IP : 216.73.216.193 Web Server : Apache System : Linux webm006.cluster103.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : awebpaca ( 35430) PHP Version : 8.5.0 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/awebpaca/piwik/plugins/CoreHome/angularjs/multipairfield/ |
Upload File : |
/*!
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
/**
* Usage:
* <div matomo-multi-pair-field field1=".." field2="" ng-model="...">
*/
(function () {
angular.module('piwikApp').directive('matomoMultiPairField', matomoMultiPairField);
matomoMultiPairField.$inject = ['$document', 'piwik', '$filter'];
function matomoMultiPairField($document, piwik, $filter){
return {
restrict: 'A',
scope: {
name: '=',
field1: '=',
field2: '=',
field3: '=',
field4: '='
},
require: "?ngModel",
templateUrl: 'plugins/CoreHome/angularjs/multipairfield/multipairfield.directive.html?cb=' + piwik.cacheBuster,
controller: 'MultiPairFieldController',
controllerAs: 'multiPairField',
compile: function (element, attrs) {
return function (scope, element, attrs, ngModel) {
if (ngModel) {
ngModel.$setViewValue(scope.formValue);
}
scope.$watch('formValue', function (newValue, oldValue) {
if (newValue != oldValue) {
element.trigger('change', newValue);
}
}, true);
if (ngModel) {
ngModel.$render = function() {
if (angular.isString(ngModel.$viewValue)) {
scope.formValue = JSON.parse(ngModel.$viewValue);
} else {
scope.formValue = ngModel.$viewValue;
}
};
}
scope.$watch('formValue', function (newValue, oldValue) {
if (ngModel) {
ngModel.$setViewValue(newValue);
}
}, true);
};
}
};
}
})();