|
|
@ -3,6 +3,7 @@ |
|
|
|
use App\Enumerators\SessionElement; |
|
|
|
use App\Wrappers\DatabaseInteractions; |
|
|
|
use App\Wrappers\SessionWrapper; |
|
|
|
use App\Wrappers\SQLQueryBuilderWrapper; |
|
|
|
use App\Wrappers\TwigWrapper; |
|
|
|
|
|
|
|
require_once __DIR__ . "/../vendor/autoload.php"; |
|
|
@ -11,15 +12,49 @@ require_once __DIR__ . "/../vendor/autoload.php"; |
|
|
|
$db = new DatabaseInteractions(); |
|
|
|
|
|
|
|
$yourTunes = $db->RunSelect( |
|
|
|
queryBuilder: \App\Wrappers\SQLQueryBuilderWrapper::SELECT( |
|
|
|
queryBuilder: SQLQueryBuilderWrapper::SELECT( |
|
|
|
table: 'Tunes' |
|
|
|
) |
|
|
|
->where(cond: 'T.CreatedBy LIKE :__user_id__') |
|
|
|
->bindValue(name: '__user_id__', value: SessionWrapper::Get(target: SessionElement::USER_ID)) |
|
|
|
->where(cond: 'T.CreatedBy LIKE :__user_id__') |
|
|
|
->bindValue(name: '__user_id__', value: SessionWrapper::Get(target: SessionElement::USER_ID)) |
|
|
|
); |
|
|
|
|
|
|
|
$yourTuneSets = $db->RunSelect( |
|
|
|
queryBuilder: SQLQueryBuilderWrapper::SELECT( |
|
|
|
table: 'TuneSets' |
|
|
|
) |
|
|
|
->cols(cols: [ |
|
|
|
"CONCAT('[', |
|
|
|
GROUP_CONCAT( |
|
|
|
CONCAT( |
|
|
|
'{\"ID\":', JSON_QUOTE(IFNULL(T_T.ID, '')), ',', |
|
|
|
'\"CreatedAt\":', JSON_QUOTE(IFNULL(T_TST.CreatedAt, '')), ',', |
|
|
|
'\"Title\":', JSON_QUOTE(IFNULL(T_T.Title, '')), ',', |
|
|
|
'\"TimesThrough\":', IFNULL(T_TST.TimesThrough, 0), '}' |
|
|
|
) |
|
|
|
), |
|
|
|
']' |
|
|
|
) AS TunesInSet" |
|
|
|
]) |
|
|
|
->join( |
|
|
|
join: 'LEFT', |
|
|
|
spec: 'TuneSetTunes AS T_TST', |
|
|
|
cond: 'T.ID=T_TST.TuneSetID' |
|
|
|
) |
|
|
|
->join( |
|
|
|
join: 'LEFT', |
|
|
|
spec: 'Tunes AS T_T', |
|
|
|
cond: 'T_TST.TuneID=T_T.ID' |
|
|
|
) |
|
|
|
->where(cond: 'T.CreatedBy LIKE :__user_id__') |
|
|
|
->bindValue(name: '__user_id__', value: SessionWrapper::Get(target: SessionElement::USER_ID)) |
|
|
|
); |
|
|
|
|
|
|
|
for($i = 0; $i < sizeof($yourTuneSets); $i++) |
|
|
|
$yourTuneSets[$i]["TunesInSet"] = json_decode($yourTuneSets[$i]["TunesInSet"], true); |
|
|
|
|
|
|
|
$yourLikedTunes = $db->RunSelect( |
|
|
|
queryBuilder: \App\Wrappers\SQLQueryBuilderWrapper::SELECT( |
|
|
|
queryBuilder: SQLQueryBuilderWrapper::SELECT( |
|
|
|
table: 'TuneRatings' |
|
|
|
) |
|
|
|
->cols(cols: [ |
|
|
@ -38,7 +73,7 @@ $yourLikedTunes = $db->RunSelect( |
|
|
|
); |
|
|
|
|
|
|
|
$yourDislikedTunes = $db->RunSelect( |
|
|
|
queryBuilder: \App\Wrappers\SQLQueryBuilderWrapper::SELECT( |
|
|
|
queryBuilder: SQLQueryBuilderWrapper::SELECT( |
|
|
|
table: 'TuneRatings' |
|
|
|
) |
|
|
|
->cols(cols: [ |
|
|
@ -60,9 +95,11 @@ TwigWrapper::RenderTwig( |
|
|
|
target: "Pages/profile.html.twig", |
|
|
|
arguments: [ |
|
|
|
"YourTunes" => $yourTunes, |
|
|
|
"YourDances" => [], |
|
|
|
"YourTuneSets"=> $yourTuneSets, |
|
|
|
"YourLikedTunes"=> $yourLikedTunes, |
|
|
|
"YourDislikedTunes"=> $yourDislikedTunes, |
|
|
|
"YourBookmarkedTunes"=> [], |
|
|
|
|
|
|
|
"YourDances" => [], |
|
|
|
], |
|
|
|
); |
|
|
|