{"version":3,"sources":["../../es6/WishWeek.js"],"names":["WishWeek","numberOfIntervals","weekNumber","ignoreAOnPublicHoliday","wishDays","Array","NUMBER_OF_NEW_INTERVALS","weekdays","i","length","feiertag","isACountedOnDay","document","getElementById","innerHTML","WishDay","j","setInterval","value","day","timeIntervalFrom","timeIntervalUntil","wertIntervall","getInterval","timeIntervall","numberOfAIntervallsOnDay","valueInterval","numberOfSegmentsOnDay","lastIntervalNotA","numberOfIntervalsBetweenSegments","aSegmentBegun","aSegmentEnd","wishBreak","dayOfWeek","getPublicHoliday"],"mappings":"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","sourcesContent":["class WishWeek{\r\n\r\n constructor(numberOfIntervals, weekNumber, ignoreAOnPublicHoliday){\r\n this.wishDays = new Array(6);\r\n this.numberOfIntervals = numberOfIntervals;\r\n this.weekNumber = weekNumber;\r\n this.ignoreAOnPublicHoliday = ignoreAOnPublicHoliday;\r\n this.NUMBER_OF_NEW_INTERVALS = 96;\r\n }\r\n setDays(){ //Achtung, sind im MAT die Uhrzeiten von 6-24 Uhr, so muss die Klasse WishWeekFromSixToTwelve genutzt werden.\r\n let weekdays = [\"mo\", \"di\", \"mi\", \"do\", \"fr\", \"sa\", \"so\"];\r\n for(let i = 0; i < weekdays.length; i++) {\r\n let feiertag = !isACountedOnDay(document.getElementById(\"w\" + this.weekNumber + \"_tagname\" + (i+1)).innerHTML, this.ignoreAOnPublicHoliday); //boolean will be toggled\r\n this.wishDays[i]= new WishDay(feiertag, weekdays[i]);\r\n for (let j = 0; j < this.numberOfIntervals; j++) {\r\n this.wishDays[i].setInterval(j, document.getElementById(\"w\" + this.weekNumber + \"_\" + weekdays[i] + (j)).value);\r\n }\r\n }\r\n }\r\n\r\n isAOnDaysBetweenTimeIntervals(day, timeIntervalFrom, timeIntervalUntil){\r\n for (let i = timeIntervalFrom; i < timeIntervalUntil; i++){\r\n let wertIntervall = this.wishDays[day].getInterval(i);\r\n if(wertIntervall != 'A' && wertIntervall != 'P' ){\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n isAOnDaysBeforeTime(day, timeIntervall){\r\n for(let i = timeIntervall; i >= 0; i --){\r\n let wertIntervall = this.wishDays[day].getInterval(i);\r\n if(wertIntervall == 'A' || wertIntervall == 'P' ){\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n isAOnDaysAfterTime(day, timeIntervall){\r\n for(let i = timeIntervall; i < 96; i ++){\r\n let wertIntervall = this.wishDays[day].getInterval(i);\r\n if(wertIntervall == 'A' || wertIntervall == 'P' ){\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n getNumberOfAIntervalls(day){\r\n let numberOfAIntervallsOnDay = 0;\r\n for(let i = 0; i < 96; i ++){\r\n let valueInterval = this.wishDays[day].getInterval(i);\r\n if(valueInterval == 'A'){\r\n numberOfAIntervallsOnDay ++;\r\n }\r\n }\r\n return numberOfAIntervallsOnDay;\r\n }\r\n getNumberOfASegments(day){\r\n let numberOfSegmentsOnDay = 0;\r\n let lastIntervalNotA = true;\r\n for(let i = 0; i < 96; i ++){\r\n let valueInterval = this.wishDays[day].getInterval(i);\r\n if(valueInterval == 'A' && lastIntervalNotA){\r\n lastIntervalNotA = false;\r\n numberOfSegmentsOnDay ++;\r\n }else if(valueInterval != 'A' && valueInterval != 'P'){\r\n lastIntervalNotA = true;\r\n }\r\n }\r\n return numberOfSegmentsOnDay;\r\n }\r\n getNumberOfIntervalsBetweenTwoASegments(day){\r\n let numberOfIntervalsBetweenSegments = 0;\r\n let aSegmentBegun = false;\r\n let aSegmentEnd = false;\r\n for(let i = 0; i < 96; i ++){\r\n let valueInterval = this.wishDays[day].getInterval(i);\r\n if(valueInterval == 'A' && aSegmentBegun == true && aSegmentEnd == true){\r\n return numberOfIntervalsBetweenSegments;\r\n }\r\n if(valueInterval != 'A' && aSegmentBegun == true){\r\n aSegmentEnd = true;\r\n numberOfIntervalsBetweenSegments ++;\r\n }\r\n if(valueInterval == 'A' && aSegmentBegun == false){\r\n aSegmentBegun = true;\r\n }\r\n }\r\n return numberOfIntervalsBetweenSegments;\r\n }\r\n getNumberOfIntervalsFirstSegment(day, wishBreak){\r\n let numberOfSegmentsOnDay = 0;\r\n let aSegmentBegun = false;\r\n for(let i = 0; i < 96; i ++){\r\n let valueInterval = this.wishDays[day].getInterval(i);\r\n if(valueInterval != 'A' && valueInterval != 'P' && aSegmentBegun && wishBreak == 0){\r\n return numberOfSegmentsOnDay;\r\n }else if(valueInterval != 'A' && aSegmentBegun && wishBreak == 1){\r\n return numberOfSegmentsOnDay;\r\n }else if(valueInterval == 'A'){\r\n if(!aSegmentBegun){\r\n aSegmentBegun = true;\r\n }\r\n numberOfSegmentsOnDay ++;\r\n }\r\n }\r\n return numberOfSegmentsOnDay;\r\n }\r\n getNumberOfIntervalsLastSegment(day, wishBreak){\r\n let numberOfSegmentsOnDay = 0;\r\n let aSegmentBegun = false;\r\n for(let i = 96; i > 0; i --){\r\n let valueInterval = this.wishDays[day].getInterval(i);\r\n if(valueInterval != 'A' && valueInterval != 'P' && aSegmentBegun && wishBreak == 0){\r\n return numberOfSegmentsOnDay;\r\n } else if(valueInterval != 'A' && aSegmentBegun && wishBreak == 1){\r\n return numberOfSegmentsOnDay;\r\n }else if(valueInterval == 'A'){\r\n if(!aSegmentBegun){\r\n aSegmentBegun = true;\r\n }\r\n numberOfSegmentsOnDay ++;\r\n }\r\n }\r\n return numberOfSegmentsOnDay;\r\n }\r\n isPublicHoliday(dayOfWeek){\r\n if(this.wishDays[dayOfWeek].getPublicHoliday() == true) {\r\n return 1;\r\n }else{\r\n return 0;\r\n }\r\n }\r\n}"],"file":"WishWeek.js"}