Ejemplo n.º 1
0
 /**
 // \fn public CalendarEvent(int id, string name, TimeSpan starttime, TimeSpan duration, int repeat, int priority, bool shuffle, bool loopatend, Playlist playlist)
 //
 // \brief Constructor.
 //
 // \author Simon Menetrey
 // \date 26.05.2014
 //
 // \param id        The identifier.
 // \param name      The name.
 // \param starttime The starttime.
 // \param duration  The duration.
 // \param repeat    The repeat.
 // \param priority  The priority.
 // \param shuffle   true to shuffle.
 // \param loopatend true to loopatend.
 // \param playlist  The playlist.
 **/
 public CalendarEvent(int id, string name, TimeSpan starttime, TimeSpan duration, int repeat, int priority, bool shuffle, bool loopatend, Playlist playlist)
 {
     this.Id = id;
     this.Name = name;
     this.StartTime = starttime;
     this.Duration = duration;
     this.Repeat = repeat;
     this.Priority = priority;
     this.Shuffle = shuffle;
     this.Loopatend = loopatend;
     this.Playlist = playlist;
 }
Ejemplo n.º 2
0
 /**
 // \fn public List<AudioFile> GetPlaylistContent(Playlist playlist)
 //
 // \brief Gets playlist content.
 //
 // \author Simon Menetrey
 // \date 26.05.2014
 //
 // \param playlist The playlist.
 //
 // \return The playlist content (AudioFile list).
 **/
 public List<AudioFile> GetPlaylistContent(Playlist playlist)
 {
     List<AudioFile> audioFiles = new List<AudioFile>();
     foreach (string filename in playlist.AudioFileList)
     {
         foreach (AudioFile af in this.Library)
         {
             if (af.Filename == filename)
                 audioFiles.Add(af);
         }
     }
     return audioFiles;
 }
Ejemplo n.º 3
0
 /**
 // \fn public CalendarEvent(string name, TimeSpan starttime, TimeSpan duration, int repeat, int priority, bool shuffle, bool loopatend, Playlist playlist) :this(0,name,starttime,duration,repeat,priority,shuffle,loopatend,playlist)
 //
 // \brief Constructor.
 //
 // \author Simon Menetrey
 // \date 26.05.2014
 //
 // \param name      The name.
 // \param starttime The starttime.
 // \param duration  The duration.
 // \param repeat    The repeat.
 // \param priority  The priority.
 // \param shuffle   true to shuffle.
 // \param loopatend true to loopatend.
 // \param playlist  The playlist.
 **/
 public CalendarEvent(string name, TimeSpan starttime, TimeSpan duration, int repeat, int priority, bool shuffle, bool loopatend, Playlist playlist)
     : this(0,name,starttime,duration,repeat,priority,shuffle,loopatend,playlist)
 {
     //NO CODE
 }
Ejemplo n.º 4
0
        /**
        // \fn public bool CreatePlaylist(string name, string webradioName, int webradioId, AudioType type, out Playlist newPlaylist)
        //
        // \brief Creates a playlist.
        //
        // \author Simon Menetrey
        // \date 26.05.2014
        //
        // \param name              The name.
        // \param webradioName      Name of the webradio.
        // \param webradioId        Identifier for the webradio.
        // \param type              The type.
        // \param [out] newPlaylist The new playlist.
        //
        // \return true if it succeeds, false if it fails.
        **/
        public bool CreatePlaylist(string name, string webradioName, int webradioId, AudioType type, out Playlist newPlaylist)
        {
            Webradio selectedWebradio = this.Webradios[webradioId];
            int id = Bdd.ERROR;
            newPlaylist = null;
            if (this.IsValidFilename(name))
            {
                string filename = DEFAULT_WEBRADIOS_FOLDER + webradioName + "/" + DEFAULT_PLAYLISTS_FOLDER + name + ".lst";
                if (type == AudioType.Music)
                    newPlaylist = new PlaylistMusic(name, filename);
                else
                    newPlaylist = new PlaylistAd(name, filename);
                id = this.Bdd.CreatePlaylist(newPlaylist, webradioId);
                if (id == Bdd.ERROR)
                    return false;
                else
                {
                    try
                    {
                        newPlaylist.Id = id;
                        newPlaylist.GenerateConfigFile();
                        selectedWebradio.Playlists.Add(newPlaylist);
                        this.UpdateObservers(webradioId);
                        return true;
                    }
                    catch
                    {
                        return false;
                    }

                }
            }
            else
            {
                return false;
            }
        }
Ejemplo n.º 5
0
 /**
 // \fn public bool DeletePlaylist(Playlist playlist, int webradioId)
 //
 // \brief Deletes the playlist.
 //
 // \author Simon Menetrey
 // \date 26.05.2014
 //
 // \param playlist   The playlist.
 // \param webradioId Identifier for the webradio.
 //
 // \return true if it succeeds, false if it fails.
 **/
 public bool DeletePlaylist(Playlist playlist, int webradioId)
 {
     if (this.Bdd.DeletePlaylist(playlist.Id))
     {
         this.Webradios[webradioId].Playlists.Remove(playlist);
         System.IO.File.Delete(playlist.Filename);
         this.UpdateObservers(webradioId);
         return true;
     }
     else
         return false;
 }
Ejemplo n.º 6
0
 /**
 // \fn public bool RemoveFromPlaylist(Playlist playlist, Dictionary<int,string> audioFiles)
 //
 // \brief Removes from playlist.
 //
 // \author Simon Menetrey
 // \date 23.05.2014
 //
 // \param playlist   The playlist.
 // \param audioFiles The audio files.
 //
 // \return true if it succeeds, false if it fails.
 **/
 public bool RemoveFromPlaylist(Playlist playlist, Dictionary<int,string> audioFiles)
 {
     return this.Model.RemoveFromPlaylist(audioFiles, playlist);
 }
Ejemplo n.º 7
0
        /**
        // \fn public bool AddToPlaylist(Playlist playlist, Dictionary<int, string> audioFiles)
        //
        // \brief Adds to the playlist.
        //
        // \author Simon Menetrey
        // \date 26.05.2014
        //
        // \param playlist   The playlist.
        // \param audioFiles The audio files.
        //
        // \return true if it succeeds, false if it fails.
        **/
        public bool AddToPlaylist(Playlist playlist, Dictionary<int, string> audioFiles)
        {
            bool state = true;
            foreach (KeyValuePair<int, string> audioFile in audioFiles)
            {
                if (this.Bdd.AddToPlaylist(audioFile.Key, playlist.Id))
                {
                    playlist.AudioFileList.Add(audioFile.Value);
                    state = true;
                }
                else
                {
                    state = false;
                    break;
                }

            }
            playlist.GenerateConfigFile();
            return state;
        }
Ejemplo n.º 8
0
 /**
 // \fn public bool DeletePlaylist(Playlist playlist, int webradioId)
 //
 // \brief Deletes the playlist.
 //
 // \author Simon Menetrey
 // \date 23.05.2014
 //
 // \param playlist   The playlist.
 // \param webradioId Identifier of the webradio.
 //
 // \return true if it succeeds, false if it fails.
 **/
 public bool DeletePlaylist(Playlist playlist, int webradioId)
 {
     return this.Model.DeletePlaylist(playlist, webradioId);
 }
Ejemplo n.º 9
0
 /**
 // \fn public List<AudioFile> GetPlaylistContent(Playlist playlist)
 //
 // \brief Gets playlist content.
 //
 // \author Simon Menetrey
 // \date 23.05.2014
 //
 // \param playlist The playlist.
 //
 // \return The playlist content.
 **/
 public List<AudioFile> GetPlaylistContent(Playlist playlist)
 {
     return this.Model.GetPlaylistContent(playlist);
 }
Ejemplo n.º 10
0
 /**
 // \fn public bool AddToPlaylist(Playlist playlist, Dictionary<int, string> audioFiles)
 //
 // \brief Adds to the playlist.
 //
 // \author Simon Menetrey
 // \date 23.05.2014
 //
 // \param playlist   The playlist.
 // \param audioFiles The audio files.
 //
 // \return true if it succeeds, false if it fails.
 **/
 public bool AddToPlaylist(Playlist playlist, Dictionary<int, string> audioFiles)
 {
     if (playlist != null)
         return this.Model.AddToPlaylist(playlist, audioFiles);
     else
         return false;
 }
Ejemplo n.º 11
0
        /**
        // \fn public int CreatePlaylist(Playlist playlist, int webradioid)
        //
        // \brief Creates a playlist.
        //
        // \author Simon Menetrey
        // \date 26.05.2014
        //
        // \param playlist   The playlist.
        // \param webradioid The webradio's id.
        //
        // \return The new playlist's id or error code.
        **/
        public int CreatePlaylist(Playlist playlist, int webradioId)
        {
            if(this.PlaylistExist(playlist,webradioId))
                return ERROR;

            Dictionary<string,string> data = new Dictionary<string,string>();
            data.Add("name", playlist.Name);
            data.Add("filename", playlist.Filename);
            data.Add("webradioid", webradioId.ToString());
            data.Add("typeid", ((int)playlist.Type).ToString());
            this.Controls.Insert("tplaylist", data);

            SQLiteDataReader reader = this.Controls.ExecuteDataReader("SELECT id FROM tplaylist WHERE name = '" + playlist.Name + "' AND webradioid = " + webradioId.ToString() + " AND typeid = " + ((int)playlist.Type).ToString());
            reader.Read();
            int id = int.Parse(reader["id"].ToString());
            reader.Close();
            return id;
        }
Ejemplo n.º 12
0
 /**
 // \fn public int AddGeneratedPlaylist(Playlist playlist, List<int> audioFilesId, int webradioId)
 //
 // \brief Adds a generated playlist.
 //
 // \author Simon Menetrey
 // \date 26.05.2014
 //
 // \param playlist     The playlist.
 // \param audioFilesId Identifier for the audio files.
 // \param webradioId   Identifier for the webradio.
 //
 // \return AThe new generated playlist's id.
 **/
 public int AddGeneratedPlaylist(Playlist playlist, List<int> audioFilesId, int webradioId)
 {
     int idPlaylist = this.CreatePlaylist(playlist, webradioId);
     if (idPlaylist == ERROR)
         return idPlaylist;
     foreach(int audioFileId in audioFilesId)
         this.AddToPlaylist(audioFileId, idPlaylist);
     return idPlaylist;
 }
Ejemplo n.º 13
0
 /**
 // \fn private bool PlaylistExist(Playlist playlist, int webradioid)
 //
 // \brief Playlist exists in the db.
 //
 // \author Simon Menetrey
 // \date 26.05.2014
 //
 // \param playlist   The playlist.
 // \param webradioid The webradio's id.
 //
 // \return true if it exists, false if it doesn't exist.
 **/
 private bool PlaylistExist(Playlist playlist, int webradioId)
 {
     SQLiteDataReader reader = this.Controls.ExecuteDataReader("SELECT COUNT(*) AS Count FROM tplaylist WHERE name = '"+playlist.Name+"' AND webradioid = "+webradioId.ToString()+" AND typeid = " + ((int)playlist.Type).ToString());
     reader.Read();
     bool result = Convert.ToBoolean(int.Parse(reader["Count"].ToString()));
     reader.Close();
     return result;
 }
Ejemplo n.º 14
0
 /**
 // \fn private void GetPlaylistContent(Playlist playlist)
 //
 // \brief Gets playlist content.
 //
 // \author Simon Menetrey
 // \date 23.05.2014
 //
 // \param playlist The playlist.
 **/
 private void GetPlaylistContent(Playlist playlist)
 {
     dgvPlaylistContent.Rows.Clear();
     TimeSpan totalDuration = new TimeSpan(0, 0, 0);
     List<AudioFile> audioFiles = this.Controller.GetPlaylistContent(playlist);
     foreach (AudioFile af in audioFiles)
     {
         totalDuration += af.Duration;
         dgvPlaylistContent.Rows.Add(af.GetInfosArray());
     }
     lblPlaylistDuration.Text = "Duration : " + totalDuration.ToString();
 }