2024-06-17 15:10:10 +02:00
|
|
|
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
2024-05-25 00:33:32 +02:00
|
|
|
|
|
|
|
class Model_music extends CI_Model {
|
2024-06-17 15:10:10 +02:00
|
|
|
public function __construct(){
|
|
|
|
$this->load->database();
|
|
|
|
}
|
2024-05-25 00:33:32 +02:00
|
|
|
|
2024-06-17 15:10:10 +02:00
|
|
|
public function getAlbums(){
|
|
|
|
$query = $this->db->query(
|
|
|
|
"SELECT album.name, album.id, year, artist.name as artistName, genre.name as genreName, jpeg
|
|
|
|
FROM album
|
|
|
|
JOIN artist ON album.artistid = artist.id
|
|
|
|
JOIN genre ON genre.id = album.genreid
|
|
|
|
JOIN cover ON cover.id = album.coverid
|
|
|
|
ORDER BY year"
|
|
|
|
);
|
|
|
|
return $query->result();
|
|
|
|
}
|
2024-06-10 14:08:26 +02:00
|
|
|
|
2024-06-17 15:10:57 +02:00
|
|
|
<<<<<<< HEAD
|
2024-06-17 15:10:10 +02:00
|
|
|
public function getArtistes(){
|
|
|
|
$query = $this->db->query(
|
|
|
|
"SELECT artist.id AS artistId, artist.name AS artistName, album.name AS albumName, album.id AS albumId, album.year, cover.jpeg
|
|
|
|
FROM album
|
|
|
|
INNER JOIN artist ON album.artistId = artist.id
|
|
|
|
JOIN cover ON cover.id = album.coverId
|
|
|
|
GROUP BY artist.name, album.year"
|
|
|
|
);
|
|
|
|
return $query->result();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getMusics(){
|
|
|
|
$query = $this->db->query(
|
|
|
|
"SELECT
|
|
|
|
track.id AS trackId,
|
|
|
|
track.number AS trackNumber,
|
|
|
|
track.duration AS trackDuration,
|
|
|
|
track.diskNumber AS diskNumber,
|
|
|
|
album.id AS albumId,
|
|
|
|
album.name AS albumName,
|
|
|
|
album.year AS albumYear,
|
|
|
|
artist.name AS artistName,
|
|
|
|
song.id AS songId,
|
|
|
|
song.name AS songName,
|
|
|
|
cover.jpeg AS coverImage
|
|
|
|
FROM track
|
|
|
|
JOIN album ON track.albumId = album.id
|
|
|
|
JOIN artist ON album.artistId = artist.id
|
|
|
|
JOIN song ON track.songId = song.id
|
|
|
|
JOIN cover ON album.coverId = cover.id
|
|
|
|
ORDER BY album.id, track.diskNumber, track.number"
|
|
|
|
);
|
|
|
|
return $query->result();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getMusicsByAlbum($albumId){
|
|
|
|
$query = $this->db->query(
|
|
|
|
"SELECT
|
|
|
|
track.id AS trackId,
|
|
|
|
track.number AS trackNumber,
|
|
|
|
track.duration AS trackDuration,
|
|
|
|
track.diskNumber AS diskNumber,
|
|
|
|
album.id AS albumId,
|
|
|
|
album.name AS albumName,
|
|
|
|
artist.name AS artistName,
|
|
|
|
song.id AS songId,
|
|
|
|
song.name AS songName
|
|
|
|
FROM track
|
|
|
|
JOIN album ON track.albumId = album.id
|
|
|
|
JOIN artist ON album.artistId = artist.id
|
|
|
|
JOIN song ON track.songId = song.id
|
|
|
|
WHERE album.id = ?
|
|
|
|
ORDER BY track.diskNumber, track.number",
|
2024-06-17 15:10:57 +02:00
|
|
|
=======
|
2024-06-10 14:08:26 +02:00
|
|
|
public function getArtistes(){
|
|
|
|
$query = $this->db->query(
|
|
|
|
"SELECT artist.id AS artistId, artist.name AS artistName, album.name AS albumName, album.year, cover.jpeg
|
|
|
|
FROM album
|
|
|
|
INNER JOIN artist ON album.artistId = artist.id
|
|
|
|
JOIN cover ON cover.id = album.coverId
|
|
|
|
GROUP BY artist.name, album.year
|
|
|
|
"
|
|
|
|
);
|
|
|
|
|
|
|
|
return $query->result();
|
|
|
|
}
|
2024-06-14 14:56:16 +02:00
|
|
|
|
|
|
|
public function getTracksByAlbumId($albumId){
|
|
|
|
$query = $this->db->query(
|
|
|
|
"SELECT track.number, track.duration, song.name as songName
|
|
|
|
FROM track
|
|
|
|
JOIN album ON album.id = track.albumid
|
|
|
|
JOIN artist ON artist.id = album.artistId
|
|
|
|
JOIN song ON song.id = track.songId
|
|
|
|
WHERE track.albumId = ?
|
|
|
|
ORDER BY track.number",
|
2024-06-17 15:10:57 +02:00
|
|
|
>>>>>>> 1bd8d93ce58f04d7fc10d62db226dd012b1f7560
|
2024-06-17 15:10:10 +02:00
|
|
|
array($albumId)
|
|
|
|
);
|
|
|
|
return $query->result();
|
|
|
|
}
|
2024-06-17 15:10:57 +02:00
|
|
|
<<<<<<< HEAD
|
|
|
|
=======
|
2024-06-16 02:41:12 +02:00
|
|
|
|
|
|
|
public function get_tri_Albums($Ctri){
|
|
|
|
$query = $this->db->query(
|
|
|
|
"SELECT album.name,album.id,year,artist.name as artistName, genre.name as genreName,jpeg
|
|
|
|
FROM album
|
|
|
|
JOIN artist ON album.artistid = artist.id
|
|
|
|
JOIN genre ON genre.id = album.genreid
|
|
|
|
JOIN cover ON cover.id = album.coverid
|
|
|
|
ORDER BY album.name $Ctri
|
|
|
|
"
|
|
|
|
);
|
|
|
|
return $query->result();
|
|
|
|
}
|
2024-06-17 13:37:47 +02:00
|
|
|
|
|
|
|
public function searchAlbums($query){
|
|
|
|
$this->db->select('album.name, album.id, year, artist.name as artistName, genre.name as genreName, jpeg');
|
|
|
|
$this->db->from('album');
|
|
|
|
$this->db->join('artist', 'album.artistid = artist.id');
|
|
|
|
$this->db->join('genre', 'genre.id = album.genreid');
|
|
|
|
$this->db->join('cover', 'cover.id = album.coverid');
|
|
|
|
$this->db->like('album.name', $query);
|
|
|
|
$this->db->or_like('artist.name', $query);
|
|
|
|
$this->db->order_by('album.id', 'ASC');
|
|
|
|
$query = $this->db->get();
|
|
|
|
return $query->result();
|
|
|
|
}
|
2024-06-17 15:10:57 +02:00
|
|
|
>>>>>>> 1bd8d93ce58f04d7fc10d62db226dd012b1f7560
|
2024-05-25 00:33:32 +02:00
|
|
|
}
|