Alles bis auf paar sachen

This commit is contained in:
Robert
2024-01-19 16:50:14 +01:00
parent 98a3c6c790
commit 462eee8994
7 changed files with 149 additions and 23 deletions

33
.idea/workspace.xml generated
View File

@@ -4,13 +4,14 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="6dcbe3e4-9d68-41d8-8c39-5cfbe5cd4a21" name="Changes" comment="Aufgabe 1 ca 80%">
<change afterPath="$PROJECT_DIR$/M6/Dossier/m6_1.sql" afterDir="false" />
<change afterPath="$PROJECT_DIR$/M6/emensamobile/resources/views/main/meine_bewertungen.blade.php" afterDir="false" />
<list default="true" id="6dcbe3e4-9d68-41d8-8c39-5cfbe5cd4a21" name="Changes" comment="Bewertungs model">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/M6/emensamobile/app/Http/Controllers/MainController.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/app/Http/Controllers/MainController.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/M6/emensamobile/app/Models/benutzer.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/app/Models/benutzer.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/M6/emensamobile/app/Models/bewertungen.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/app/Models/bewertungen.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/M6/emensamobile/resources/views/layouts/main_layout.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/resources/views/layouts/main_layout.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/M6/emensamobile/resources/views/main/bewertung.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/resources/views/main/bewertung.blade.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/M6/emensamobile/routes/web.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/routes/web.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/M6/emensamobile/resources/views/main/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/resources/views/main/index.blade.php" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -115,7 +116,7 @@
<workItem from="1705492444098" duration="553000" />
<workItem from="1705493014644" duration="21207000" />
<workItem from="1705627589042" duration="2719000" />
<workItem from="1705630465063" duration="4764000" />
<workItem from="1705630465063" duration="10294000" />
</task>
<task id="LOCAL-00001" summary="Webseite ohne Anmeldung läuft auf laravel">
<option name="closed" value="true" />
@@ -157,7 +158,23 @@
<option name="project" value="LOCAL" />
<updated>1705630515269</updated>
</task>
<option name="localTasksCounter" value="6" />
<task id="LOCAL-00006" summary="Aufgabe 1">
<option name="closed" value="true" />
<created>1705673592045</created>
<option name="number" value="00006" />
<option name="presentableId" value="LOCAL-00006" />
<option name="project" value="LOCAL" />
<updated>1705673592045</updated>
</task>
<task id="LOCAL-00007" summary="Bewertungs model">
<option name="closed" value="true" />
<created>1705675225498</created>
<option name="number" value="00007" />
<option name="presentableId" value="LOCAL-00007" />
<option name="project" value="LOCAL" />
<updated>1705675225498</updated>
</task>
<option name="localTasksCounter" value="8" />
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
@@ -168,6 +185,8 @@
<MESSAGE value="Anmeldung läuft" />
<MESSAGE value="Abmeldung gefixt" />
<MESSAGE value="Aufgabe 1 ca 80%" />
<option name="LAST_COMMIT_MESSAGE" value="Aufgabe 1 ca 80%" />
<MESSAGE value="Aufgabe 1" />
<MESSAGE value="Bewertungs model" />
<option name="LAST_COMMIT_MESSAGE" value="Bewertungs model" />
</component>
</project>

View File

@@ -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');
}
$b = new bewertungen();
if($data["dehervorheben"]!=null){
$b->dehervorheben($data["dehervorheben"]);
return redirect('/bewertung');
}
}
$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"
]);

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -18,6 +18,8 @@
@yield("text")
@yield("gerichte")
@yield("bewertungen")
</div>
<div></div>
</div>

View File

@@ -36,6 +36,8 @@
@if(isset($data))
{{$id = $data["gerichtid"]}}
@endif
@if(isset($admin))
@endif
@if(isset($gericht))
<?php
@@ -90,10 +92,21 @@
$name = $row[0][0]->name;
$bewertungen = $row[1];
$bemerkung = $row[2];
$bewertungs_id = $row[3];
$hervorgehoben = $row[4];
echo "<h1>".$name."</h1> Sterne: ". $bewertungen." Bemerkung: ".$bemerkung;
$echo = "<h1>".$name."</h1> Sterne: ". $bewertungen." Bemerkung: ".$bemerkung;
if($admin){
if($hervorgehoben){
$echo .= " <a href=\"/bewertung?dehervorheben=".$bewertungs_id."\">Hervorhebung abwählen</a>";
}else{
$echo .= " <a href=\"/bewertung?hervorheben=".$bewertungs_id."\">Hervorheben</a>";
}
}
echo $echo;
}
?>

View File

@@ -117,6 +117,28 @@
@endsection
@section("bewertungen")
@if(isset($bewertungen))
<?php
foreach ($bewertungen as $row){
$name = $row[0][0]->name;
$bewertungen = $row[1];
$bemerkung = $row[2];
$echo = "<h1>".$name."</h1> Sterne: ". $bewertungen." Bemerkung: ".$bemerkung;
echo $echo;
}
?>
@endif
@endsection
@section("footer")
<tr>