| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- var formChangeLoggerSvc = angular.module('formChangeLoggerSvc', []);
- formChangeLoggerSvc.factory('formChangeLoggerSvc', function($cookies, $rootScope, $http, $q,$window,
- $mdDialog, $mdToast) {
- var formChangeLoggerSvc = {};
- formChangeLoggerSvc.currentFieldName=null;
- formChangeLoggerSvc.currentFieldOldValue=null;
- formChangeLoggerSvc.currentFieldNewValue=null;
- formChangeLoggerSvc.listOfChanges = new Array();
-
-
- formChangeLoggerSvc.init = function() {
- formChangeLoggerSvc.currentFieldName=null;
- formChangeLoggerSvc.currentFieldOldValue=null;
- formChangeLoggerSvc.currentFieldNewValue=null;
- formChangeLoggerSvc.listOfChanges = new Array();
- }
-
- formChangeLoggerSvc.enterField = function(fieldName, fieldValue) {
- formChangeLoggerSvc.currentFieldName = fieldName;
- formChangeLoggerSvc.currentFieldOldValue = fieldValue;
- }
-
- formChangeLoggerSvc.exitField = function(fieldValue) {
- formChangeLoggerSvc.currentFieldNewValue = fieldValue;
- if (formChangeLoggerSvc.currentFieldNewValue != formChangeLoggerSvc.currentFieldOldValue) {
-
- console.log(formChangeLoggerSvc.currentFieldName + ": " + formChangeLoggerSvc.currentFieldOldValue + " -> " + formChangeLoggerSvc.currentFieldNewValue);
- formChangeLoggerSvc.listOfChanges.push(
- {
- fieldName: formChangeLoggerSvc.currentFieldName,
- oldValue: formChangeLoggerSvc.currentFieldOldValue,
- newValue: formChangeLoggerSvc.currentFieldNewValue,
- timestamp: new Date()
- })
- }
- }
-
- formChangeLoggerSvc.getChanges = function(){
- return formChangeLoggerSvc.listOfChanges;
- }
-
- formChangeLoggerSvc.onFocus = function(scope, event) {
-
- if (typeof event != "undefined") {
- var dataField;
- //datepicker workaround
- if (event.target)
- dataField = event.target;
- else
- dataField = event;
- var fieldName = dataField.getAttribute("ng-model");
- fieldName = fieldName.substring(fieldName.indexOf(".") + 1);
-
- var value = scope.$eval( dataField.getAttribute("ng-model"));
-
- //datepicker workaround
- // var value;
- // if (dataField.value)
- // value = dataField.value;
- // else
- // value = dataField.getElementsByTagName('input')[0].value
-
- formChangeLoggerSvc.enterField(fieldName, value);
- }
- }
-
- formChangeLoggerSvc.onBlur = function(scope, event) {
- if (typeof event != "undefined") {
- var dataField;
-
- if (event.target)
- dataField = event.target;
- else
- dataField = event;
- var value = scope.$eval( dataField.getAttribute("ng-model"));
-
- //datepicker workaround
- // var value;
- // if (dataField.value)
- // value = dataField.value;
- // else
- // value = dataField.getElementsByTagName('input')[0].value
-
- formChangeLoggerSvc.exitField(value);
- }
- }
-
-
- return formChangeLoggerSvc;
- });
|