diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index eb764ad..f0e0a11 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -4,13 +4,14 @@
-
-
-
+
+
+
+
-
+
@@ -115,7 +116,7 @@
-
+
@@ -157,7 +158,23 @@
1705630515269
-
+
+
+ 1705673592045
+
+
+
+ 1705673592045
+
+
+
+ 1705675225498
+
+
+
+ 1705675225498
+
+
@@ -168,6 +185,8 @@
-
+
+
+
\ No newline at end of file
diff --git a/M6/emensamobile/app/Http/Controllers/MainController.php b/M6/emensamobile/app/Http/Controllers/MainController.php
index 2aa10d4..7954615 100644
--- a/M6/emensamobile/app/Http/Controllers/MainController.php
+++ b/M6/emensamobile/app/Http/Controllers/MainController.php
@@ -2,10 +2,12 @@
namespace App\Http\Controllers;
use App\Models\bewertungen;
+use App\Models\benutzer;
use Illuminate\Routing\Controller as BaseController;
use App\Models\Gerichte;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
+use Illuminate\Routing\Redirector;
class MainController extends BaseController
@@ -21,8 +23,12 @@ class MainController extends BaseController
$gericht = new Gerichte();
$data = $gericht->db_gericht_select_karte();
+ $bewertung = new bewertungen();
+ $bewertungen = $bewertung->hervorgehobene_bewertungen();
+
return view('main.index', [
'data'=>$data,
+ "bewertungen" => $bewertungen,
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"
]);
}
@@ -41,6 +47,8 @@ class MainController extends BaseController
]);
}
+ $b = new bewertungen();
+
if($rd->isMethod("get")) {
$data = $rd;
@@ -55,11 +63,25 @@ class MainController extends BaseController
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"
]);
}
+
+ if($data["hervorheben"]!=null){
+ $b->hervorheben($data["hervorheben"]);
+ return redirect('/bewertung');
+ }
+ if($data["dehervorheben"]!=null){
+ $b->dehervorheben($data["dehervorheben"]);
+ return redirect('/bewertung');
+ }
}
- $b = new bewertungen();
+
+
$bewertungen = $b->bewertungen();
+ $benutzer = new benutzer();
+ $admin = $benutzer->isAdmin(session("benutzer_id"),0);
+
return view('main.bewertung', [
+ "admin" => $admin,
"bewertungen" => $bewertungen,
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"
]);
@@ -80,19 +102,12 @@ class MainController extends BaseController
$check = $b->bewerten($benutzer,$id,$sterne, $bemerkung);
$bewertungen = $b->bewertungen();
-
- return view('main.bewertung', [
- "bewertungen" => $bewertungen,
- 'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}./bewertungen"
- ]);
+ return redirect('/bewertung');
}
public function meinebewertungen(Request $rd){
if(session("start",0)== 0){
- session(["bewertung" => 1]);
- return view('m5_a1.anmeldung', [
- 'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}"
- ]);
+ return redirect('/bewertung');
}
$benutzer_id = session("benutzer_id",0);
@@ -109,7 +124,9 @@ class MainController extends BaseController
if ($data["loschen"] != null) {
$check = $b->loschen($data["loschen"]);
+ return redirect('/meinebewertungen');
}
+
}
@@ -117,7 +134,6 @@ class MainController extends BaseController
$meine = $b->meine_bewertungen($benutzer_id);
return view('main.meine_bewertungen', [
- "check" => $check,
"meine_bewertungen" => $meine,
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}./bewertungen"
]);
diff --git a/M6/emensamobile/app/Models/benutzer.php b/M6/emensamobile/app/Models/benutzer.php
index 140a51b..5d0301a 100644
--- a/M6/emensamobile/app/Models/benutzer.php
+++ b/M6/emensamobile/app/Models/benutzer.php
@@ -51,4 +51,12 @@ class Benutzer extends Model
}
return 0;
}
+
+ public function isAdmin(int $id){
+ $sql = "SELECT benutzer.admin FROM benutzer WHERE benutzer.id =".$id;
+ $result = DB::select($sql);
+
+ return $result[0]->admin;
+ }
+
}
diff --git a/M6/emensamobile/app/Models/bewertungen.php b/M6/emensamobile/app/Models/bewertungen.php
index 74b1ff8..bdfa05a 100644
--- a/M6/emensamobile/app/Models/bewertungen.php
+++ b/M6/emensamobile/app/Models/bewertungen.php
@@ -21,14 +21,14 @@ class bewertungen extends Model
}
function bewertungen(){
- $sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.sterne, bewertungen.bemerkung FROM bewertungen ORDER BY bewertungen.erstellungsdatum LIMIT 30";
+ $sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.id, bewertungen.sterne, bewertungen.bemerkung, bewertungen.hervorgehoben FROM bewertungen ORDER BY bewertungen.erstellungsdatum LIMIT 30";
$result_sql_bewertungen = DB::select($sql_bewertungen);
$result = [];
foreach ($result_sql_bewertungen as $row) {
$sql = "SELECT gericht.name FROM gericht WHERE gericht.id=". $row->gericht_id;
- array_push($result,[DB::select($sql),$row->sterne,$row->bemerkung]);
+ array_push($result,[DB::select($sql),$row->sterne,$row->bemerkung,$row->id,$row->hervorgehoben]);
}
return $result;
@@ -53,6 +53,10 @@ class bewertungen extends Model
$sql_bewertungen = "SELECT bewertungen.ersteller_id FROM bewertungen WHERE bewertungen.id =". $id;
$result_sql_bewertungen = DB::select($sql_bewertungen);
+ if($result_sql_bewertungen == null){
+ return 0;
+ }
+
if($result_sql_bewertungen[0]->ersteller_id != session("benutzer_id",0)){
return 0;
}
@@ -62,4 +66,46 @@ class bewertungen extends Model
return 1;
}
+
+ function hervorheben(int $id){
+ $benutzer = new benutzer();
+ if($benutzer->isAdmin(session("benutzer_id",0))!=1){
+ return 0;
+ }
+
+ $sql = "UPDATE bewertungen SET hervorgehoben =1 WHERE id =" .$id;
+ DB::update($sql);
+
+ return 1;
+
+ }
+
+ function dehervorheben(int $id){
+ $benutzer = new benutzer();
+ if($benutzer->isAdmin(session("benutzer_id",0))!=1){
+ return 0;
+ }
+
+ $sql = "UPDATE bewertungen SET hervorgehoben =0 WHERE id =" .$id;
+ DB::update($sql);
+
+ return 1;
+
+ }
+
+ function hervorgehobene_bewertungen(){
+ $sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.id, bewertungen.sterne, bewertungen.bemerkung, bewertungen.hervorgehoben FROM bewertungen WHERE bewertungen.hervorgehoben = 1 ORDER BY bewertungen.erstellungsdatum LIMIT 30";
+ $result_sql_bewertungen = DB::select($sql_bewertungen);
+
+ $result = [];
+
+ foreach ($result_sql_bewertungen as $row) {
+ $sql = "SELECT gericht.name FROM gericht WHERE gericht.id=". $row->gericht_id;
+ array_push($result,[DB::select($sql),$row->sterne,$row->bemerkung,$row->id,$row->hervorgehoben]);
+ }
+
+ return $result;
+
+ }
+
}
diff --git a/M6/emensamobile/resources/views/layouts/main_layout.blade.php b/M6/emensamobile/resources/views/layouts/main_layout.blade.php
index aba28e5..f90cf95 100644
--- a/M6/emensamobile/resources/views/layouts/main_layout.blade.php
+++ b/M6/emensamobile/resources/views/layouts/main_layout.blade.php
@@ -18,6 +18,8 @@
@yield("text")
@yield("gerichte")
+
+ @yield("bewertungen")
@@ -27,4 +29,4 @@