annotate johndyer-mediaelement-13fa20a/src/js/me-utility.js @ 25:4a4bd554b4c1 tip

Closing this sub branch.
author Daniele Barchiesi <daniele.barchiesi@eecs.qmul.ac.uk>
date Mon, 25 Mar 2013 14:02:54 +0000
parents 032bc65ebafc
children
rev   line source
gyorgy@0 1
gyorgy@0 2 /*
gyorgy@0 3 Utility methods
gyorgy@0 4 */
gyorgy@0 5 mejs.Utility = {
gyorgy@0 6 encodeUrl: function(url) {
gyorgy@0 7 return encodeURIComponent(url); //.replace(/\?/gi,'%3F').replace(/=/gi,'%3D').replace(/&/gi,'%26');
gyorgy@0 8 },
gyorgy@0 9 escapeHTML: function(s) {
gyorgy@0 10 return s.toString().split('&').join('&amp;').split('<').join('&lt;').split('"').join('&quot;');
gyorgy@0 11 },
gyorgy@0 12 absolutizeUrl: function(url) {
gyorgy@0 13 var el = document.createElement('div');
gyorgy@0 14 el.innerHTML = '<a href="' + this.escapeHTML(url) + '">x</a>';
gyorgy@0 15 return el.firstChild.href;
gyorgy@0 16 },
gyorgy@0 17 getScriptPath: function(scriptNames) {
gyorgy@0 18 var
gyorgy@0 19 i = 0,
gyorgy@0 20 j,
gyorgy@0 21 path = '',
gyorgy@0 22 name = '',
gyorgy@0 23 script,
gyorgy@0 24 scripts = document.getElementsByTagName('script');
gyorgy@0 25
gyorgy@0 26 for (; i < scripts.length; i++) {
gyorgy@0 27 script = scripts[i].src;
gyorgy@0 28 for (j = 0; j < scriptNames.length; j++) {
gyorgy@0 29 name = scriptNames[j];
gyorgy@0 30 if (script.indexOf(name) > -1) {
gyorgy@0 31 path = script.substring(0, script.indexOf(name));
gyorgy@0 32 break;
gyorgy@0 33 }
gyorgy@0 34 }
gyorgy@0 35 if (path !== '') {
gyorgy@0 36 break;
gyorgy@0 37 }
gyorgy@0 38 }
gyorgy@0 39 return path;
gyorgy@0 40 },
gyorgy@0 41 secondsToTimeCode: function(seconds,forceHours) {
gyorgy@0 42 seconds = Math.round(seconds);
gyorgy@0 43 var hours,
gyorgy@0 44 minutes = Math.floor(seconds / 60);
gyorgy@0 45 if (minutes >= 60) {
gyorgy@0 46 hours = Math.floor(minutes / 60);
gyorgy@0 47 minutes = minutes % 60;
gyorgy@0 48 }
gyorgy@0 49 hours = hours === undefined ? "00" : (hours >= 10) ? hours : "0" + hours;
gyorgy@0 50 minutes = (minutes >= 10) ? minutes : "0" + minutes;
gyorgy@0 51 seconds = Math.floor(seconds % 60);
gyorgy@0 52 seconds = (seconds >= 10) ? seconds : "0" + seconds;
gyorgy@0 53 return ((hours > 0 || forceHours === true) ? hours + ":" :'') + minutes + ":" + seconds;
gyorgy@0 54 },
gyorgy@0 55 timeCodeToSeconds: function(timecode){
gyorgy@0 56 var tab = timecode.split(':');
gyorgy@0 57 return tab[0]*60*60 + tab[1]*60 + parseFloat(tab[2].replace(',','.'));
gyorgy@0 58 }
gyorgy@0 59 };