2024-07-18 16:05:32 +03:00
< ? php
namespace App\Controllers\Api\Admin\Images ;
use App\Services\ { Auth , Router , GenerateRandomStr , DB , Json , EXIF };
2024-07-21 04:43:25 +03:00
use App\Models\ { User , Vote , Photo };
2024-07-18 16:05:32 +03:00
class SetVisibility
{
public function __construct ()
{
2024-07-21 04:43:25 +03:00
$photo = new Photo ( $_GET [ 'id' ]);
$data = json_decode ( $photo -> i ( 'content' ), true );
if ( ! array_key_exists ( 'declineReason' , $data )) {
$data [ 'declineReason' ] = null ;
}
$data [ 'declineReason' ] = $_GET [ 'decline_reason' ];
$updatedJsonString = json_encode ( $data );
DB :: query ( 'UPDATE photos SET moderated=:mod, timeupload=:time, content=:c WHERE id=:id' , array ( ':id' => $_GET [ 'id' ], ':mod' => $_GET [ 'mod' ], ':time' => time (), ':c' => $updatedJsonString ));
2024-07-20 23:55:53 +03:00
$uid = DB :: query ( 'SELECT user_id FROM photos WHERE id=:id' , array ( ':id' => $_GET [ 'id' ]))[ 0 ][ 'user_id' ];
if ( $_GET [ 'mod' ] === 1 ) {
$followers = DB :: query ( 'SELECT * FROM followers WHERE user_id=:uid' , array ( ':uid' => $uid ));
foreach ( $followers as $f ) {
DB :: query ( 'INSERT INTO followers_notifications VALUES (\'0\', :uid, :fid, :pid, 0)' , array ( ':uid' => $uid , ':fid' => $f [ 'follower_id' ], ':pid' => $_GET [ 'id' ]));
}
}
2024-07-18 16:05:32 +03:00
header ( 'Location: ' . $_SERVER [ 'HTTP_REFERER' ]);
}
}