diff --git a/airtime_mvc/application/logging/Logging.php b/airtime_mvc/application/logging/Logging.php index 096dbd717..01ec88240 100644 --- a/airtime_mvc/application/logging/Logging.php +++ b/airtime_mvc/application/logging/Logging.php @@ -16,4 +16,9 @@ class Logging { public static function setLogPath($path){ self::$_path = $path; } + + public static function log($p_msg){ + $logger = self::getLogger(); + $logger->info($p_msg); + } } diff --git a/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py b/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py index 1b37b359f..a57e44507 100644 --- a/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py +++ b/python_apps/media-monitor/airtimefilemonitor/airtimemetadata.py @@ -49,6 +49,36 @@ class AirtimeMetadata: "isrc": "MDATA_KEY_ISRC",\ "copyright": "MDATA_KEY_COPYRIGHT",\ } + + self.cp1252toUnicode = { + u"\x80": u"\u20AC", # EURO SIGN + u"\x82": u"\u201A", # SINGLE LOW-9 QUOTATION MARK + u"\x83": u"\u0192", # LATIN SMALL LETTER F WITH HOOK + u"\x84": u"\u201E", # DOUBLE LOW-9 QUOTATION MARK + u"\x85": u"\u2026", # HORIZONTAL ELLIPSIS + u"\x86": u"\u2020", # DAGGER + u"\x87": u"\u2021", # DOUBLE DAGGER + u"\x88": u"\u02C6", # MODIFIER LETTER CIRCUMFLEX ACCENT + u"\x89": u"\u2030", # PER MILLE SIGN + u"\x8A": u"\u0160", # LATIN CAPITAL LETTER S WITH CARON + u"\x8B": u"\u2039", # SINGLE LEFT-POINTING ANGLE QUOTATION MARK + u"\x8C": u"\u0152", # LATIN CAPITAL LIGATURE OE + u"\x8E": u"\u017D", # LATIN CAPITAL LETTER Z WITH CARON + u"\x91": u"\u2018", # LEFT SINGLE QUOTATION MARK + u"\x92": u"\u2019", # RIGHT SINGLE QUOTATION MARK + u"\x93": u"\u201C", # LEFT DOUBLE QUOTATION MARK + u"\x94": u"\u201D", # RIGHT DOUBLE QUOTATION MARK + u"\x95": u"\u2022", # BULLET + u"\x96": u"\u2013", # EN DASH + u"\x97": u"\u2014", # EM DASH + u"\x98": u"\u02DC", # SMALL TILDE + u"\x99": u"\u2122", # TRADE MARK SIGN + u"\x9A": u"\u0161", # LATIN SMALL LETTER S WITH CARON + u"\x9B": u"\u203A", # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK + u"\x9C": u"\u0153", # LATIN SMALL LIGATURE OE + u"\x9E": u"\u017E", # LATIN SMALL LETTER Z WITH CARON + u"\x9F": u"\u0178", # LATIN CAPITAL LETTER Y WITH DIAERESIS + } self.logger = logging.getLogger() @@ -131,7 +161,8 @@ class AirtimeMetadata: self.logger.error("Exception %s", e) return None - + + self.logger.info("sDFSDFSDF") self.logger.info(file_info) if file_info is None: return None @@ -139,8 +170,16 @@ class AirtimeMetadata: if file_info is not None: for key in file_info.keys() : if key in self.mutagen2airtime : - md[self.mutagen2airtime[key]] = file_info[key][0] - + info = file_info[key][0] + while 1: + temp = re.search(u"[\x80-\x9f]", info) + if temp is not None: + s = temp.group(0) + replace = self.cp1252toUnicode.get(s) + info = re.sub(s, replace, info) + else: + break + md[self.mutagen2airtime[key]] = info if 'MDATA_KEY_TITLE' not in md: #get rid of file extention from original name, name might have more than 1 '.' in it. #filepath = to_unicode(filepath)