From 9f0ce427e49ac681b642f84a1765aef9285b041d Mon Sep 17 00:00:00 2001
From: btalhaoui <9967432+btalhaoui@users.noreply.github.com>
Date: Wed, 31 Jan 2018 02:00:05 +0100
Subject: [PATCH] Link sensors to a server

---
 Web/app/Http/Controllers/OrganizationController.php | 6 +++++-
 Web/app/Models/Sensors.php                          | 7 ++++++-
 Web/app/Models/Server.php                           | 6 +++++-
 Web/resources/views/home.blade.php                  | 4 +++-
 Web/resources/views/org/detail.blade.php            | 2 +-
 5 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/Web/app/Http/Controllers/OrganizationController.php b/Web/app/Http/Controllers/OrganizationController.php
index 9476464..dd3d226 100644
--- a/Web/app/Http/Controllers/OrganizationController.php
+++ b/Web/app/Http/Controllers/OrganizationController.php
@@ -5,6 +5,7 @@ namespace App\Http\Controllers;
 use Illuminate\Http\Request;
 use App\Models\Organizations;
 use App\Models\Server;
+use App\Models\Sensors;
 use Illuminate\Support\Facades\Auth;
 
 class OrganizationController extends Controller
@@ -21,6 +22,9 @@ class OrganizationController extends Controller
         $org =  Organizations::where('name',$name)->first();
         if($org==null)abort(404);
         $servers = $org->servers()->get();
-        return view("org/detail",['organization' => $org , 'servers' => $servers]);
+        foreach($servers as $server){
+            $server->sensors($server->id);
+        }
+       return view("org/detail",['organization' => $org , 'servers' => $servers]);
     }
 }
diff --git a/Web/app/Models/Sensors.php b/Web/app/Models/Sensors.php
index 1d0a45f..bdee213 100644
--- a/Web/app/Models/Sensors.php
+++ b/Web/app/Models/Sensors.php
@@ -8,6 +8,11 @@ class Sensors extends Moloquent
 {
     protected $connection = 'mongodb';
     protected $collection = 'sensors';
-    protected $fillable = ['id','content'];
+    protected $fillable = ['id','content','server_id'];
+    protected $server;
 
+    public function server($id)
+    {
+        $server = Server::find($id);
+    }
 }
\ No newline at end of file
diff --git a/Web/app/Models/Server.php b/Web/app/Models/Server.php
index 4996e83..24bd5c9 100644
--- a/Web/app/Models/Server.php
+++ b/Web/app/Models/Server.php
@@ -7,9 +7,13 @@ use Illuminate\Database\Eloquent\Model;
 class Server extends Model
 {
     protected $fillable = ['name'];
-
+    public $sensors;
     public function organization()
     {
         return $this->belongsTo('App\Models\Organizations');
     }
+    public function sensors($id)
+    {
+        $this->sensors = json_encode(Sensors::where("server_id","".$id)->get());
+    }
 }
diff --git a/Web/resources/views/home.blade.php b/Web/resources/views/home.blade.php
index 4d035d8..e545ba7 100644
--- a/Web/resources/views/home.blade.php
+++ b/Web/resources/views/home.blade.php
@@ -13,7 +13,9 @@
                             {{ session('status') }}
                         </div>
                     @endif
-                    {{ $sensor }}
+            Look at your organizations : <a href="org">
+                            Organizations
+                        </a>
 
                 </div>
             </div>
diff --git a/Web/resources/views/org/detail.blade.php b/Web/resources/views/org/detail.blade.php
index 18890e4..81f503b 100644
--- a/Web/resources/views/org/detail.blade.php
+++ b/Web/resources/views/org/detail.blade.php
@@ -8,7 +8,7 @@
                 <div class="panel-heading">Organization : {{ $organization->name }}</div>
                 @foreach ($servers as $server)
                     <p> Server : {{ $server->name }}</p>
-
+                    <p> Sensors : {{ $server->sensors }}</p>
                 @endforeach
             </div>
         </div>
-- 
GitLab