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('&').split('<').join('<').split('"').join('"');
|
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 };
|