aboutsummaryrefslogtreecommitdiffhomepage
path: root/main/app/sprinkles
diff options
context:
space:
mode:
Diffstat (limited to 'main/app/sprinkles')
-rw-r--r--main/app/sprinkles/account/config/default.php2
-rw-r--r--main/app/sprinkles/admin/routes/posts.php4
-rw-r--r--main/app/sprinkles/admin/src/Controller/PostController.php22
3 files changed, 20 insertions, 8 deletions
diff --git a/main/app/sprinkles/account/config/default.php b/main/app/sprinkles/account/config/default.php
index 078c136..b018bcd 100644
--- a/main/app/sprinkles/account/config/default.php
+++ b/main/app/sprinkles/account/config/default.php
@@ -51,7 +51,7 @@ return [
'enable_email' => TRUE
],
'registration' => [
- 'enabled' => TRUE,
+ 'enabled' => FALSE, // TODO: Datenschutzerklärung before enabling registration
'captcha' => TRUE,
'require_email_verification' => TRUE,
'user_defaults' => [
diff --git a/main/app/sprinkles/admin/routes/posts.php b/main/app/sprinkles/admin/routes/posts.php
index ac523b2..9ae7d70 100644
--- a/main/app/sprinkles/admin/routes/posts.php
+++ b/main/app/sprinkles/admin/routes/posts.php
@@ -9,10 +9,10 @@
/**
* Routes for posting.
*/
-$app->get('/feed/{user_name}', 'UserFrosting\Sprinkle\Admin\Controller\PostController:getFeed')->add('authGuard');
-
$app->get('/image/{post_id}', 'UserFrosting\Sprinkle\Admin\Controller\PostController:showImage')->add('authGuard');
+$app->get('/api/feed/{user_name}', 'UserFrosting\Sprinkle\Admin\Controller\PostController:getFeed')->add('authGuard');
+
$app->group('/api/posts', function () {
$this->post('/image', 'UserFrosting\Sprinkle\Admin\Controller\PostController:postImage');
})->add('authGuard'); \ No newline at end of file
diff --git a/main/app/sprinkles/admin/src/Controller/PostController.php b/main/app/sprinkles/admin/src/Controller/PostController.php
index 18efff9..06d205d 100644
--- a/main/app/sprinkles/admin/src/Controller/PostController.php
+++ b/main/app/sprinkles/admin/src/Controller/PostController.php
@@ -43,22 +43,34 @@ class PostController extends SimpleController
// If the user doesn't exist, return 404
if (!$user) {
- throw new NotFoundException($request, $response);
+ throw new NotFoundException();
}
// Get friends first
$UsersFriends = DB::select("SELECT id FROM (SELECT user_id AS id FROM user_follow WHERE followed_by_id = $user->id UNION ALL SELECT followed_by_id FROM user_follow WHERE user_id = $user->id) t GROUP BY id HAVING COUNT(id) > 1");
+
/** @var UserFrosting\Sprinkle\Core\Util\ClassMapper $classMapper */
$classMapper = $this->ci->classMapper;
- foreach ($UsersFriends as $Key => $UsersFriendId) { // NOT THAT EFFICIENT...
+ $ImagesFromFriends = "";
+ $config = $this->ci->config;
+ foreach ($UsersFriends as $Key => $UsersFriendId) { // NOT THAT EFFICIENT... (get images from all friends in an array)
$UsersFriendInformation = $classMapper->createInstance('user')// raw select doesnt work with instance
- ->where('id', $UsersFriendId->id)
+ ->where('id', $UsersFriendId->id)
->get();
- $ImagesFromFriends[] = DB::table('image_posts')
+ $ImagesFromFriends = DB::table('image_posts')
->where('UserID', '=', $UsersFriendInformation[0]->id)
- ->value('File');
+ ->select('PostID as image_id')
+ ->get();
+
+ foreach ($ImagesFromFriends as $ImageFromFriend) {
+ $ImageFromFriend->image_url = $config["site.uri.public"] . "/image/" . $ImageFromFriend->image_id;
+ $ImageFromFriend->username = $UsersFriendInformation[0]->user_name; // ADD USERNAME TO IMAGE ID
+ $ImageFromFriend->avatar = $UsersFriendInformation[0]->avatar;
+ }
}
+
+ return $response->withJson($ImagesFromFriends, 200, JSON_PRETTY_PRINT);
}
/**