{"version":3,"sources":["components/directives/d_kermi_timeInput.js"],"names":["angular","module","directive","dateTimePickerModal","value","scope","model","start","end","utc","restrict","templateUrl","link","element","controller","$watch","init","selectDate","undefined","moment","isAfter","options","filter","day","isBefore","startOf","d","hideTime","data","asUTC","then","modal","close","DisplayValue","val","timeFormat","durationToTime","secondsToMs","time","changeValue","duration","_typeof","hours","minutes","format","seconds","timeToDuration","max","a","parseInt","b","tstart","ms","diff","t","Math","abs","floor","asHours"],"mappings":"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","file":"d_kermi_timeInput.js","sourcesContent":["angular.module('app.directives.kermiTimeInput', []).directive('kermiDate',\r\n ['dateTimePickerModal',\r\n function (dateTimePickerModal) {\r\n var obj = {\r\n scope: {\r\n // Object to Save\r\n model: '=model',\r\n start: \"=start\",\r\n end: \"=end\",\r\n utc : \"=utc\"\r\n },\r\n restrict: 'AE',\r\n templateUrl: 'views/form/kermi-date.html',\r\n\r\n // -------------------------------------------//\r\n // Link function\r\n // -------------------------------------------//\r\n link: function (scope, element, attrs, controller) {\r\n scope.$watch('model', function (value) {\r\n\r\n //if (value != scope.model || scope.model == undefined) {\r\n\r\n scope.init();\r\n // scope.updateModel();\r\n //}\r\n });\r\n\r\n scope.selectDate = function () {\r\n if(scope.utc)\r\n {\r\n if (scope.start != undefined && new moment.utc(scope.start).isAfter(scope.model)) {\r\n scope.model = new moment.utc(scope.start);\r\n }\r\n }else{\r\n if (scope.start != undefined && moment(scope.start).isAfter(scope.model)) {\r\n scope.model = moment(scope.start);\r\n }\r\n }\r\n\r\n var options = {\r\n filter: function (day) {\r\n\r\n if (day.isBefore(new moment().startOf('day'))) {\r\n return false;\r\n }\r\n if (scope.end != undefined && day.isAfter(scope.end)) {\r\n return false;\r\n }\r\n\r\n if (scope.start != undefined && day.isBefore( moment(scope.start).startOf('day') )) {\r\n return false;\r\n }\r\n return true;\r\n },\r\n hideDate: false,\r\n hideTime: false,\r\n asUTC: false\r\n\r\n };\r\n var d = moment(scope.model);\r\n\r\n dateTimePickerModal(d, options).then(function (modal) {\r\n modal.close.then(function (data) {\r\n if(data)\r\n {\r\n scope.model = moment(data);\r\n scope.DisplayValue = moment(data);\r\n }\r\n\r\n });\r\n });\r\n\r\n };\r\n\r\n scope.init = function () {\r\n if (scope.model) {\r\n scope.DisplayValue = moment(scope.model);\r\n }\r\n };\r\n scope.init();\r\n\r\n }\r\n };\r\n return obj;\r\n\r\n\r\n }])\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n .directive('kermiTimeDurationInput',\r\n [\r\n function () {\r\n var obj = {\r\n scope: {\r\n model: '=model',\r\n timeFormat: '=timeFormat',\r\n max : '=max'\r\n },\r\n\r\n templateUrl: 'views/form/kermiTimeDurationInput.html',\r\n link: function (scope) {\r\n var secondsToMs = 1000;\r\n scope.$watch('model', function (value) {\r\n if (value != scope.model || !scope.time) {\r\n scope.time = scope.durationToTime(value);\r\n }\r\n\r\n });\r\n\r\n scope.changeValue = function () {\r\n var duration = -1;\r\n\r\n if ( scope.time == undefined) {\r\n scope.time = {};\r\n }\r\n if (!typeof scope.time.hours == 'int') {\r\n scope.time.hours = '0';\r\n }\r\n if (!typeof scope.time.minutes == 'int') {\r\n scope.time.minutes = '0';\r\n }\r\n if (!typeof scope.time.seconds == 'int') {\r\n scope.time.seconds = '0';\r\n }\r\n\r\n duration = scope.timeToDuration( scope.time);\r\n\r\n if(duration >= 0)\r\n {\r\n if(scope.max != undefined && (scope.max ) <= duration)\r\n {\r\n\r\n scope.model = scope.max;\r\n duration = scope.max;\r\n }else{\r\n scope.model = duration;\r\n }\r\n\r\n }\r\n //alert(scope.max+'---'+duration);\r\n\r\n scope.time =scope.durationToTime(scope.model);\r\n };\r\n\r\n scope.timeToDuration = function (a) {\r\n if (!a.hours) {\r\n a.hours = 0;\r\n }\r\n if (!a.minutes) {\r\n a.minutes = 0;\r\n }\r\n if (!a.seconds) {\r\n a.seconds = 0;\r\n }\r\n\r\n var val = parseInt( secondsToMs * parseInt( ( (a.hours * (60 * 60)) ) + parseInt((a.minutes * 60 )) + parseInt(a.seconds) ) );\r\n switch(scope.timeFormat)\r\n {\r\n\r\n case \"s\":\r\n val = val / secondsToMs;\r\n break;\r\n }\r\n return val;\r\n };\r\n\r\n scope.durationToTime = function (a) {\r\n\r\n if(scope.model == -1){\r\n a = 0;\r\n }\r\n switch(scope.timeFormat)\r\n {\r\n\r\n case \"s\":\r\n a = a * secondsToMs;\r\n break;\r\n }\r\n let time;\r\n if(a == 0){\r\n time = {\r\n \"hours\":0,\r\n \"minutes\":0,\r\n \"seconds\": 0\r\n };\r\n }else{\r\n // alert(a);\r\n var b = new moment( a ).utc();\r\n // alert(b.format('hh:mm:ss'));\r\n var tstart = new moment('1970-01-01T00:00:00+00:00').utc();\r\n var ms = b.diff(tstart);\r\n var t = moment.duration(ms);\r\n\r\n time = {\r\n \"hours\": Math.abs(Math.floor(t.asHours())),\r\n \"minutes\": moment.utc(ms ).format(\"m\"),\r\n \"seconds\": moment.utc(ms).format(\"s\")\r\n };\r\n }\r\n\r\n return time;\r\n //( (a.hours * (60*60)) + (a.minutes * 60 ) + a.seconds )\r\n };\r\n }\r\n };\r\n return obj;\r\n\r\n }])\r\n;\r\n"],"sourceRoot":"../../../../app"}