Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions widget/assets/css/widget.app.css
Original file line number Diff line number Diff line change
@@ -1,4 +1,19 @@
/* Plugin CSS */

.media-button-container{
display: flex;
flex: 1;
justify-content: center;
align-items: center;
}
.media-container{
display: flex;
justify-content: center;
align-items: center;
flex-direction: row;
width: 100% !important;
}

.media-center-plugin.layout2 .people-banner .people-bg{
background:rgba(0,0,0,0.8);
}
Expand Down Expand Up @@ -285,7 +300,6 @@ html[browser="Firefox"] .layout3 .list-layout .list-item-media .list-media-holde
.holder.now-playing .media-player-btns .icon.icon-sm{
font-size:22px;
position:relative;
top:-7px;
color:#999;
}
.holder.now-playing .media-player-btns .icon{
Expand All @@ -297,7 +311,6 @@ html[browser="Firefox"] .layout3 .list-layout .list-item-media .list-media-holde
.holder.now-playing .media-player-btns .icon.icon-main{
font-size:58px;
position:relative;
top:6px;
}

/* Media Player Playlist Overlay */
Expand Down Expand Up @@ -358,7 +371,7 @@ html[browser="Firefox"] .layout3 .list-layout .list-item-media .list-media-holde
font-size:52px;
}
.holder.now-playing .media-player-btns .icon.icon-sm{
top:-5px;
top:0;
}
}

Expand Down
85 changes: 51 additions & 34 deletions widget/controllers/widget.home.controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,34 @@
var WidgetHome = this;
WidgetHome.currentTime = 0.0;
WidgetHome.volume = 1;
WidgetHome.isRangeDisabled = true;
$rootScope.openPlaylist = false;

var audioPlayer = Buildfire.services.media.audioPlayer;
WidgetHome.playList = [];
audioPlayer.getPlaylist((err,data) =>{
if(data && data.tracks) WidgetHome.playList = data.tracks;
audioPlayer.getCurrentTrack(function (track, err) {
if (track) {
if(WidgetHome.playList.findIndex(i => i.url === track) >= 0 ){
WidgetHome.currentTrack = track;
WidgetHome.isRangeDisabled = false;
console.log("Current track set");
$scope.$digest();
}
else{
console.log("current track null");
WidgetHome.currentTrack = null;
$scope.$digest();
}
}
else WidgetHome.currentTrack = null;
console.log('audioPlayer.getCurrentTrack method called--------------------------------', track, err);
});
})

/**
* audioPlayer is Buildfire.services.media.audioPlayer.
*/
var audioPlayer = Buildfire.services.media.audioPlayer;

audioPlayer.getCurrentTrack(function (track, err) {
console.log('audioPlayer.getCurrentTrack method called--------------------------------', track, err);
if (track) {
WidgetHome.currentTrack = track;
$scope.$digest();
}
});

audioPlayer.settings.get(function (err, data) {
console.log('Got player settings first time-----------------------', err, data);
Expand All @@ -46,28 +59,7 @@
if (WidgetHome.settings && WidgetHome.settings.isPlayingCurrentTrack && WidgetHome.currentTrack) {
WidgetHome.playing = true;
} else {
audioPlayer.getCurrentTrack(function (track, err) {
console.log('audioPlayer.getCurrentTrack method called- from timeupdate event-------------------------------', track, err);
if (track) {
audioPlayer.settings.get(function (err, data) {
console.log('Got settings - from --timeupdate event-------------------', err, data);
if (data) {
WidgetHome.settings = data;
if (data.isPlayingCurrentTrack) {
WidgetHome.playing = true;
}
}
/*else{
var newSettings=new AudioSettings({autoPlayNext:false,loopPlaylist:false,autoJumpToLastPosition:false,shufflePlaylist:false,isPlayingCurrentTrack:true});
WidgetHome.settings=newSettings;
audioPlayer.settings.set(newSettings);
WidgetHome.playing = true;
}*/
});
WidgetHome.currentTrack = track;
$scope.$digest();
}
});

}
WidgetHome.currentTime = e.data.currentTime;
WidgetHome.duration = e.data.duration;
Expand Down Expand Up @@ -98,11 +90,13 @@
* Player related method and variables
*/
WidgetHome.playTrack = function () {
if(WidgetHome.currentTrack == null) return;
if (WidgetHome.settings) {
WidgetHome.settings.isPlayingCurrentTrack = true;
audioPlayer.settings.set(WidgetHome.settings);
}
WidgetHome.playing = true;
WidgetHome.isRangeDisabled = false;
WidgetHome.currentTrack.isPlaying = true;
if (WidgetHome.paused) {
audioPlayer.play();
Expand All @@ -111,6 +105,7 @@
}
};
WidgetHome.playlistPlay = function (track, index) {
WidgetHome.isRangeDisabled = false;
if (WidgetHome.settings) {
WidgetHome.settings.isPlayingCurrentTrack = true;
audioPlayer.settings.set(WidgetHome.settings);
Expand Down Expand Up @@ -206,32 +201,53 @@
}
};
WidgetHome.addToPlaylist = function () {
console.log('AddToPlaylist called-------------------------------');
audioPlayer.addToPlaylist(WidgetHome.currentTrack);
};
WidgetHome.removeFromPlaylist = function (track) {

Modals.removeTrackModal().then(function (data) {
if (WidgetHome.playList) {
var trackIndex = 0;
WidgetHome.playList.some(function (val, index) {
console.log(WidgetHome.playList);
if ((val.url == track.url) && (trackIndex == 0)) {
audioPlayer.removeFromPlaylist(index);
//trackIndex++;
}
return (val.url == track.url);

});
console.log('indexes------------track Index----------------------track==========', trackIndex);
}
if(WidgetHome.currentTrack && track.url == WidgetHome.currentTrack.url){
WidgetHome.currentTrack = null;
WidgetHome.currentTime = 0.0;
WidgetHome.playing = false;
WidgetHome.isRangeDisabled = true;
WidgetHome.playList[index].playing = false;
WidgetHome.settings.isPlayingCurrentTrack = false;
WidgetHome.setSettings(WidgetHome.settings);
}
console.log('Remove caleedddddddddddddddddddd----------------------------------------', data);
}, function (err) {
console.log('Error--------------While removing-------------', err);
});

console.log('removeFromPlaylist called-------------------------------');
};
WidgetHome.removeTrackFromPlayList = function (index) {

Modals.removeTrackModal().then(function (data) {
audioPlayer.removeFromPlaylist(index);
if(WidgetHome.playList && WidgetHome.currentTrack && WidgetHome.playList[index].url == WidgetHome.currentTrack.url ){
WidgetHome.currentTrack = null;
WidgetHome.currentTime = 0.0;
WidgetHome.settings.isPlayingCurrentTrack = false;
WidgetHome.playing = false;
WidgetHome.playList[index].playing = false;
WidgetHome.isRangeDisabled = true;
WidgetHome.setSettings(WidgetHome.settings);
}
console.log('Remove caleedddddddddddddddddddd----------------------------------------', data);
}, function (err) {
console.log('Error--------------While removing-------------', err);
Expand All @@ -250,6 +266,7 @@
trackIndex++;
console.log('Url MAtched--------------------------------- --------------');
track.playing = true;
WidgetHome.isRangeDisabled = false;
return true;
}
});
Expand Down
3 changes: 1 addition & 2 deletions widget/css/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,6 @@
.holder.now-playing .media-player-btns .icon.icon-main{
font-size:58px;
position:relative;
top:6px;
}

.ecommerce-plugin .list-layout.has-cart .list-item,
Expand Down Expand Up @@ -480,7 +479,7 @@ html[browser="Firefox"] .layout3 .list-layout .list-item-media .list-media-holde
font-size:52px;
}
.holder.now-playing .media-player-btns .icon.icon-sm{
top:-5px;
top:0px;
}
}

Expand Down
37 changes: 24 additions & 13 deletions widget/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ <h4 class="margin-zero ellipsis whiteTheme">No Audio Currently Selected</h4>
min="0.0"
max="{{WidgetHome.duration || 163.94449}}"
ng-model="WidgetHome.currentTime"
ng-disabled="WidgetHome.isRangeDisabled"
ng-change="WidgetHome.changeTime(WidgetHome.currentTime)"
style="height:30px; border-radius:4px;background-color: transparent !important;"/>
</div>
Expand Down Expand Up @@ -114,19 +115,29 @@ <h4 class="margin-zero ellipsis whiteTheme">No Audio Currently Selected</h4>
<span class="icon icon-ellipsis icon-sm whiteTheme" ng-click="WidgetHome.openMoreInfoOverlay()"></span>
<span class="icon icon-cog icon-sm whiteTheme" ng-click="WidgetHome.getSettings()"></span>
</div>
<div class="media-player-btns margin-top-ten">
<span ng-class="(WidgetHome.settings && WidgetHome.settings.shufflePlaylist) ? 'primaryTheme bold' : 'whiteTheme'"
class="icon icon-shuffle icon-sm " ng-click="WidgetHome.shufflePlaylist()"></span>
<span class="icon icon-backward-circle whiteTheme" ng-click="WidgetHome.backward()"></span>
<span ng-if="!WidgetHome.playing" class="icon icon-play-circle icon-main whiteTheme"
ng-click="WidgetHome.playTrack()"></span>
<span ng-if="WidgetHome.playing" class="icon icon-pause-circle icon-main whiteTheme"
ng-click="WidgetHome.pauseTrack()"></span>
<span class="icon icon-forward-circle whiteTheme" ng-click="WidgetHome.forward()"></span>
<span ng-class="(WidgetHome.settings && WidgetHome.settings.loopPlaylist) ? 'primaryTheme bold' : 'whiteTheme'"
class="icon icon-repeat icon-sm" ng-click="WidgetHome.loopPlaylist()"></span>
<span class="icon icon-repeat-one icon-sm primaryTheme hidden whiteTheme"></span>
<span class="icon icon-repeat icon-sm primaryTheme hidden whiteTheme"></span>
<div class="media-player-btns margin-top-ten media-container">
<div class = "media-button-container">
<span ng-class="(WidgetHome.settings && WidgetHome.settings.shufflePlaylist) ? 'primaryTheme bold' : 'whiteTheme'"
class="icon icon-shuffle icon-sm " ng-click="WidgetHome.shufflePlaylist()"></span>
</div>
<div class = "media-button-container">
<span class="icon icon-backward-circle whiteTheme" ng-click="WidgetHome.backward()"></span>
</div>
<div class = "media-button-container">
<span ng-if="!WidgetHome.playing" class="icon icon-play-circle icon-main whiteTheme"
ng-click="WidgetHome.playTrack()"></span>
<span ng-if="WidgetHome.playing" class="icon icon-pause-circle icon-main whiteTheme"
ng-click="WidgetHome.pauseTrack()"></span>
</div>
<div class = "media-button-container">
<span class="icon icon-forward-circle whiteTheme" ng-click="WidgetHome.forward()"></span>
</div>
<div class = "media-button-container">
<span ng-class="(WidgetHome.settings && WidgetHome.settings.loopPlaylist) ? 'primaryTheme bold' : 'whiteTheme'"
class="icon icon-repeat icon-sm" ng-click="WidgetHome.loopPlaylist()"></span>
<span class="icon icon-repeat-one icon-sm primaryTheme hidden whiteTheme"></span>
<span class="icon icon-repeat icon-sm primaryTheme hidden whiteTheme"></span>
</div>
</div>
</div>

Expand Down