Author: ygrego Date: 2015-05-28 08:44:37 +0000 (Thu, 28 May 2015) New Revision: 1516 Url: http://forge.nuiton.org/projects/sandbox/repository/revisions/1516 Log: The file "ProgrammeHelper.js" has been moved to directory "js/utils". Added: oipf/js/utils/ProgrammeHelper.js Removed: oipf/data/ProgrammeHelper.js Deleted: oipf/data/ProgrammeHelper.js =================================================================== --- oipf/data/ProgrammeHelper.js 2015-05-28 08:42:08 UTC (rev 1515) +++ oipf/data/ProgrammeHelper.js 2015-05-28 08:44:37 UTC (rev 1516) @@ -1,121 +0,0 @@ -/* - * To change this license header, choose License Headers in Project Properties. - * To change this template file, choose Tools | Templates - * and open the template in the editor. - */ -var XmlTvData = Class.extend({ - - map: { - "title": "name", - "-start": "startTime", - "desc": "description", - "length#text": "duration", - "episode-num#text": "episode" - }, - - channelNameMap: { - "ART1.kazer.org" : "ARTE", - "EUR2.kazer.org" : "D17", - "FRA2.kazer.org" : "FRANCE_2", - "FRA3.kazer.org" : "FRANCE_3", - "FRA4.kazer.org" : "FRANCE_4", - "FRA5.kazer.org" : "FRANCE_5", - "M61.kazer.org" : "M6", - "NRJ1.kazer.org" : "NRJ_12", - "NT11.kazer.org" : "NT1", - "RTL2.kazer.org" : "RTL9", - "TF11.kazer.org" : "TF1", - "TMC1.kazer.org" : "TMC", - "W91.kazer.org" : "W9" - }, - - programmes: null, - - init: function(data) { - this.channelService = new ChannelService(); - this.type = "XML_TV"; - this.programmes = []; - data && this.initProgrammes(data.tv.programme); - }, - - /* - * Description: - * Don't take in charge the "credits" property of a xmlTv programmes for the moment. - */ - initProgrammes: function(programmeList) { - for (var i = 0, l = programmeList.length; i < l; i++) { - var programme = {}; - var object = programmeList[i]; - var channelName; - var self = this; - var createProgramme = function(object, programme, parentKey) { - var keys = Object.keys(object); - for (var j = 0, l1 = keys.length; j < l1; j++) { - var key = keys[j]; - var element = object[key]; - if (element instanceof Object) { - createProgramme(element, programme, key); - } else { - if (key == "-start") { - element = self.transformInSecondSince01011970(element); - } - if (key == "-channel") { - channelName = self.channelNameMap[element]; - } - if (key == "#text") { - key = parentKey+key; - if (key == "length#text") { - element = self.minutesToSeconds(element); - } - } - var mapping = self.map[key]; - if (mapping) { - programme[mapping] = element; - } - } - } - }; - - createProgramme(object, programme); - programme.channel = this.initChannel(channelName); - programme.programmeID = createUUID(); - var programmeObject = new Programme(programme); - this.programmes.push(programmeObject); - } - }, - - initChannel: function(name) { - return this.channelService.getADvbTChannel(name); - }, - - transformToActualDate: function(wrongDateFormat) { - pattern = /(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})\s\+(\d{2})/; - - var tmpDate = wrongDateFormat; - tmpDate = pattern.exec(tmpDate); - var dateTmp = new Date(); - - /*year = parseInt(tmpSSTime[1]); - month = parseInt(tmpSSTime[2]); - day = parseInt(tmpSSTime[3]);*/ - var year = dateTmp.getFullYear(); - var month = dateTmp.getUTCMonth(); - var day = dateTmp.getUTCDate(); - var hs = parseInt(tmpDate[4]); - var mins = parseInt(tmpDate[5]); - var secs = parseInt(tmpDate[6]); - - var actualDate = new Date(year, month, day, hs, mins, secs); - return actualDate; - }, - - transformInSecondSince01011970: function(wrongDateFormat) { - return this.transformToActualDate(wrongDateFormat).getTime() / 1000; - }, - - minutesToSeconds: function(minutes) { - return minutes*60; - } - -}); - Copied: oipf/js/utils/ProgrammeHelper.js (from rev 1515, oipf/data/ProgrammeHelper.js) =================================================================== --- oipf/js/utils/ProgrammeHelper.js (rev 0) +++ oipf/js/utils/ProgrammeHelper.js 2015-05-28 08:44:37 UTC (rev 1516) @@ -0,0 +1,121 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +var XmlTvData = Class.extend({ + + map: { + "title": "name", + "-start": "startTime", + "desc": "description", + "length#text": "duration", + "episode-num#text": "episode" + }, + + channelNameMap: { + "ART1.kazer.org" : "ARTE", + "EUR2.kazer.org" : "D17", + "FRA2.kazer.org" : "FRANCE_2", + "FRA3.kazer.org" : "FRANCE_3", + "FRA4.kazer.org" : "FRANCE_4", + "FRA5.kazer.org" : "FRANCE_5", + "M61.kazer.org" : "M6", + "NRJ1.kazer.org" : "NRJ_12", + "NT11.kazer.org" : "NT1", + "RTL2.kazer.org" : "RTL9", + "TF11.kazer.org" : "TF1", + "TMC1.kazer.org" : "TMC", + "W91.kazer.org" : "W9" + }, + + programmes: null, + + init: function(data) { + this.channelService = new ChannelService(); + this.type = "XML_TV"; + this.programmes = []; + data && this.initProgrammes(data.tv.programme); + }, + + /* + * Description: + * Don't take in charge the "credits" property of a xmlTv programmes for the moment. + */ + initProgrammes: function(programmeList) { + for (var i = 0, l = programmeList.length; i < l; i++) { + var programme = {}; + var object = programmeList[i]; + var channelName; + var self = this; + var createProgramme = function(object, programme, parentKey) { + var keys = Object.keys(object); + for (var j = 0, l1 = keys.length; j < l1; j++) { + var key = keys[j]; + var element = object[key]; + if (element instanceof Object) { + createProgramme(element, programme, key); + } else { + if (key == "-start") { + element = self.transformInSecondSince01011970(element); + } + if (key == "-channel") { + channelName = self.channelNameMap[element]; + } + if (key == "#text") { + key = parentKey+key; + if (key == "length#text") { + element = self.minutesToSeconds(element); + } + } + var mapping = self.map[key]; + if (mapping) { + programme[mapping] = element; + } + } + } + }; + + createProgramme(object, programme); + programme.channel = this.initChannel(channelName); + programme.programmeID = createUUID(); + var programmeObject = new Programme(programme); + this.programmes.push(programmeObject); + } + }, + + initChannel: function(name) { + return this.channelService.getADvbTChannel(name); + }, + + transformToActualDate: function(wrongDateFormat) { + pattern = /(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})\s\+(\d{2})/; + + var tmpDate = wrongDateFormat; + tmpDate = pattern.exec(tmpDate); + var dateTmp = new Date(); + + /*year = parseInt(tmpSSTime[1]); + month = parseInt(tmpSSTime[2]); + day = parseInt(tmpSSTime[3]);*/ + var year = dateTmp.getFullYear(); + var month = dateTmp.getUTCMonth(); + var day = dateTmp.getUTCDate(); + var hs = parseInt(tmpDate[4]); + var mins = parseInt(tmpDate[5]); + var secs = parseInt(tmpDate[6]); + + var actualDate = new Date(year, month, day, hs, mins, secs); + return actualDate; + }, + + transformInSecondSince01011970: function(wrongDateFormat) { + return this.transformToActualDate(wrongDateFormat).getTime() / 1000; + }, + + minutesToSeconds: function(minutes) { + return minutes*60; + } + +}); +