Changed web samples' name and updated snapshots
[profile/ivi/sdk/web-sample-build.git] / samples / web / Sample / Tizen / Web App / ModelloMultimediaPlayer / project / js / utils.js
1 /**
2  * @module MultimediaPlayerApplication
3  */
4
5 /**
6  * Utility class with helper methods for Multimedia player.
7  *
8  * @class Utils
9  */
10 var Utils = {
11         /**
12          * Provides default thumbnails for given media types.
13          *
14          * @method getDefaultThumbnailByType
15          * @param type {String} media type
16          */
17         getDefaultThumbnailByType : function(type) {
18                 "use strict";
19                 var thumbnail = "";
20                 switch (type) {
21                 case "AUDIO":
22                         thumbnail = "/images/audio-placeholder.jpg";
23                         break;
24                 case "VIDEO":
25                         thumbnail = "/images/video-placeholder.jpg";
26                         break;
27                 case "CONTAINER":
28                         thumbnail = "/images/container-placeholder.jpg";
29                         break;
30                 default:
31                         thumbnail = "/images/default-placeholder.jpg";
32                         break;
33                 }
34                 return thumbnail;
35         },
36         /**
37          * Gets thumbnail path out of media item object if exists otherwise gets default placeholder by type.
38          *
39          * @method getThumbnailPath
40          * @param mediaItem {Object}  media item object
41          * @param type {String} media type
42          * @return {String} thumbnail path
43          */
44         getThumbnailPath : function(mediaItem, type) {
45                 "use strict";
46                 if (!!mediaItem) {
47                         if (!!mediaItem.thumbnailURIs && mediaItem.thumbnailURIs.length) {
48                                 return mediaItem.thumbnailURIs[0];
49                         }
50                         if (!!mediaItem.type) {
51                                 return this.getDefaultThumbnailByType(mediaItem.type);
52                         }
53                 }
54                 return this.getDefaultThumbnailByType(type || "");
55         },
56         /**
57          * Gets artist's name out of media item object.
58          *
59          * @method getArtistName
60          * @param mediaItem {Object} media item
61          * @return {String} artist name
62          */
63         getArtistName : function(mediaItem) {
64                 "use strict";
65                 if (!!mediaItem && !!mediaItem.artists && mediaItem.artists.length) {
66                         return mediaItem.artists.join(", ");
67                 }
68                 return "Unknown";
69         },
70         /**
71          * Gets album name out of media item object.
72          *
73          * @method getAlbumName
74          * @param mediaItem {Object} media item
75          * @return {String} album name
76          */
77         getAlbumName : function(mediaItem) {
78                 "use strict";
79                 if (!!mediaItem && !!mediaItem.album && mediaItem.album !== "") {
80                         return mediaItem.album;
81                 }
82                 return "Unknown";
83         },
84         /**
85          * Gets media item title out of media item object.
86          *
87          * @method getMediaItemTitle
88          * @param mediaItem {Object} media item
89          * @return {String} media title
90          */
91         getMediaItemTitle : function(mediaItem) {
92                 "use strict";
93                 if (!!mediaItem && !!mediaItem.title && mediaItem.title !== "") {
94                         return mediaItem.title;
95                 }
96                 if (!!mediaItem && !!mediaItem.name && mediaItem.name !== "") {
97                         return mediaItem.name;
98                 }
99                 return "Unknown";
100         },
101         /**
102          * Calls fullscreen request for given html element.
103          *
104          * @method launchFullScreen
105          * @param element {Object}
106          */
107         launchFullScreen : function(element) {
108                 "use strict";
109                 console.log("Launching full screen");
110                 if (element.requestFullScreen) {
111                         element.requestFullScreen();
112                 } else if (element.mozRequestFullScreen) {
113                         element.mozRequestFullScreen();
114                 } else if (element.webkitRequestFullScreen) {
115                         element.webkitRequestFullScreen();
116                 }
117         }
118 };