3 Commits

Author SHA1 Message Date
Robert
c13606c2c1 Css für optinale aufgabe 1 2024-01-24 12:21:20 +01:00
Robert
91856073e1 Alles 2024-01-19 17:59:21 +01:00
Robert
15d9287b47 Alles bis auf paar sachen 2024-01-19 17:35:34 +01:00
12 changed files with 257 additions and 147 deletions

45
.idea/workspace.xml generated
View File

@@ -4,14 +4,10 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="6dcbe3e4-9d68-41d8-8c39-5cfbe5cd4a21" name="Changes" comment="Bewertungs model">
<list default="true" id="6dcbe3e4-9d68-41d8-8c39-5cfbe5cd4a21" name="Changes" comment="Alles">
<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/public/css/style.css" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/public/css/style.css" 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/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" />
@@ -68,7 +64,7 @@
&quot;WebServerToolWindowFactoryState&quot;: &quot;false&quot;,
&quot;database.data.extractors.current.export.id&quot;: &quot;Comma-separated (CSV)_id&quot;,
&quot;git-widget-placeholder&quot;: &quot;dev/m6__robert&quot;,
&quot;last_opened_file_path&quot;: &quot;C:/Users/rober/Documents/GitHub/DBWT-Praktika/M6/emensamobile/public&quot;,
&quot;last_opened_file_path&quot;: &quot;C:/Users/rober/Documents/GitHub/DBWT-Praktika/M6/Dossier&quot;,
&quot;node.js.detected.package.eslint&quot;: &quot;true&quot;,
&quot;node.js.detected.package.tslint&quot;: &quot;true&quot;,
&quot;node.js.selected.package.eslint&quot;: &quot;(autodetect)&quot;,
@@ -85,11 +81,11 @@
}</component>
<component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS">
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\Dossier" />
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\emensamobile\public" />
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\emensamobile\resources\views" />
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\emensamobile\app\Models" />
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\emensamobile\resources\css" />
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\emensamobile\app\Http\Controllers" />
</key>
<key name="MoveFile.RECENT_KEYS">
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\emensamobile\app\Models\Anmeldung" />
@@ -116,7 +112,8 @@
<workItem from="1705492444098" duration="553000" />
<workItem from="1705493014644" duration="21207000" />
<workItem from="1705627589042" duration="2719000" />
<workItem from="1705630465063" duration="10294000" />
<workItem from="1705630465063" duration="13412000" />
<workItem from="1706091740788" duration="2624000" />
</task>
<task id="LOCAL-00001" summary="Webseite ohne Anmeldung läuft auf laravel">
<option name="closed" value="true" />
@@ -174,7 +171,31 @@
<option name="project" value="LOCAL" />
<updated>1705675225498</updated>
</task>
<option name="localTasksCounter" value="8" />
<task id="LOCAL-00008" summary="Alles bis auf paar sachen">
<option name="closed" value="true" />
<created>1705679416721</created>
<option name="number" value="00008" />
<option name="presentableId" value="LOCAL-00008" />
<option name="project" value="LOCAL" />
<updated>1705679416721</updated>
</task>
<task id="LOCAL-00009" summary="Alles bis auf paar sachen">
<option name="closed" value="true" />
<created>1705682140622</created>
<option name="number" value="00009" />
<option name="presentableId" value="LOCAL-00009" />
<option name="project" value="LOCAL" />
<updated>1705682140622</updated>
</task>
<task id="LOCAL-00010" summary="Alles">
<option name="closed" value="true" />
<created>1705683562748</created>
<option name="number" value="00010" />
<option name="presentableId" value="LOCAL-00010" />
<option name="project" value="LOCAL" />
<updated>1705683562748</updated>
</task>
<option name="localTasksCounter" value="11" />
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
@@ -187,6 +208,8 @@
<MESSAGE value="Aufgabe 1 ca 80%" />
<MESSAGE value="Aufgabe 1" />
<MESSAGE value="Bewertungs model" />
<option name="LAST_COMMIT_MESSAGE" value="Bewertungs model" />
<MESSAGE value="Alles bis auf paar sachen" />
<MESSAGE value="Alles" />
<option name="LAST_COMMIT_MESSAGE" value="Alles" />
</component>
</project>

114
M6/Dossier/ED 1 a).drawio Normal file
View File

@@ -0,0 +1,114 @@
<mxfile host="app.diagrams.net" modified="2024-01-17T16:40:46.603Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0" etag="yOiPrTY5I7Bd3XpJF8Jn" version="22.1.21" type="device">
<diagram name="Seite-1" id="uZLJn0IZBSqR1Bpxcyc-">
<mxGraphModel dx="988" dy="540" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="CqnDATPZ74Ucb4dWbnLU-7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-2" target="CqnDATPZ74Ucb4dWbnLU-4">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-23" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-2" target="CqnDATPZ74Ucb4dWbnLU-17">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-32" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-2" target="CqnDATPZ74Ucb4dWbnLU-31">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-2" value="Benutzer" style="whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="150" y="530" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-4" target="CqnDATPZ74Ucb4dWbnLU-5">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-4" value="erstellt" style="shape=rhombus;perimeter=rhombusPerimeter;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="360" y="520" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-19" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-5" target="CqnDATPZ74Ucb4dWbnLU-18">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-21" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-5" target="CqnDATPZ74Ucb4dWbnLU-13">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-22" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-5" target="CqnDATPZ74Ucb4dWbnLU-15">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-28" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-5" target="CqnDATPZ74Ucb4dWbnLU-27">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-29" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-5" target="CqnDATPZ74Ucb4dWbnLU-25">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-30" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-5" target="CqnDATPZ74Ucb4dWbnLU-26">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-39" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-5" target="CqnDATPZ74Ucb4dWbnLU-38">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-5" value="Bewertung" style="whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="590" y="530" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-9" value="" style="endArrow=none;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="500" y="550" as="sourcePoint" />
<mxPoint x="590" y="549.5" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-10" value="N" style="resizable=0;html=1;whiteSpace=wrap;align=right;verticalAlign=bottom;" connectable="0" vertex="1" parent="CqnDATPZ74Ucb4dWbnLU-9">
<mxGeometry x="1" relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-11" value="" style="endArrow=none;html=1;rounded=0;" edge="1" parent="1">
<mxGeometry relative="1" as="geometry">
<mxPoint x="340" y="549.76" as="sourcePoint" />
<mxPoint x="260" y="549.76" as="targetPoint" />
<Array as="points">
<mxPoint x="320" y="549.76" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-12" value="1" style="resizable=0;html=1;whiteSpace=wrap;align=right;verticalAlign=bottom;" connectable="0" vertex="1" parent="CqnDATPZ74Ucb4dWbnLU-11">
<mxGeometry x="1" relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-13" value="Sterne" style="ellipse;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="630" y="420" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-15" value="&lt;div&gt;Erstellungs&lt;/div&gt;&lt;div&gt;zeitpunkt&lt;/div&gt;" style="ellipse;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="500" y="420" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-17" value="Benutzer ID" style="ellipse;whiteSpace=wrap;html=1;align=center;fontStyle=4;" vertex="1" parent="1">
<mxGeometry x="150" y="440" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-18" value="Hervorgehoben" style="ellipse;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="690" y="610" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-25" value="&lt;div&gt;Gericht ID&lt;/div&gt;" style="ellipse;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="500" y="610" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-26" value="Benutzer ID" style="ellipse;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="727" y="530" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-27" value="Bemerkung" style="ellipse;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="600" y="670" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-33" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-31">
<mxGeometry relative="1" as="geometry">
<mxPoint x="480" y="790" as="targetPoint" />
<Array as="points">
<mxPoint x="200" y="790" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-31" value="admin" style="ellipse;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="150" y="620" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-36" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="CqnDATPZ74Ucb4dWbnLU-35" target="CqnDATPZ74Ucb4dWbnLU-18">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-35" value="hervorheben" style="shape=rhombus;perimeter=rhombusPerimeter;whiteSpace=wrap;html=1;align=center;" vertex="1" parent="1">
<mxGeometry x="480" y="760" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="CqnDATPZ74Ucb4dWbnLU-38" value="Bewertungs ID" style="ellipse;whiteSpace=wrap;html=1;align=center;fontStyle=4;" vertex="1" parent="1">
<mxGeometry x="727" y="470" width="100" height="40" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

View File

@@ -2,7 +2,6 @@
namespace App\Http\Controllers;
use App\Models\bewertungen;
use App\Models\Gericht;
use App\Models\benutzer;
use Illuminate\Routing\Controller as BaseController;
use App\Models\Gerichte;
@@ -55,14 +54,11 @@ class MainController extends BaseController
if ($data["gerichtid"] != null) {
$gericht = Gericht::query()->find($data["gerichtid"]);
$gerichtName = $gericht->getGerichtName();
$bildname = $gericht->getBildname();
$gericht = new Gerichte();
$g = $gericht->db_gericht_bewertung($data["gerichtid"]);
return view('main.bewertung', [
"gerichtName" => $gerichtName,
"bildname" => $bildname,
"gericht" => $g,
"data" => $data,
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"
]);
@@ -79,7 +75,7 @@ class MainController extends BaseController
}
$bewertungen = $b->getBewertungen();
$bewertungen = $b->bewertungen();
$benutzer = new benutzer();
$admin = $benutzer->isAdmin(session("benutzer_id"),0);
@@ -101,17 +97,11 @@ class MainController extends BaseController
$bemerkung = $data["bemerkung"] ?? NULL;
$benutzer = session("benutzer_id",0);
bewertungen::query()->firstOrCreate(
[
'ersteller_id' => $benutzer,
'gericht_id' => $id,
'bemerkung' => $bemerkung,
'sterne' => $sterne
]
);
$b = new bewertungen();
$bewertungen = $b->getBewertungen();
$check = $b->bewerten($benutzer,$id,$sterne, $bemerkung);
$bewertungen = $b->bewertungen();
return redirect('/bewertung');
}
@@ -133,14 +123,15 @@ class MainController extends BaseController
$data = $rd;
if ($data["loschen"] != null) {
$check = $b->deleteMeineBewertung($data["loschen"]);
$check = $b->loschen($data["loschen"]);
return redirect('/meinebewertungen');
}
}
$meine = $b->getMeineBewertungen($benutzer_id);
$meine = $b->meine_bewertungen($benutzer_id);
return view('main.meine_bewertungen', [
"meine_bewertungen" => $meine,

View File

@@ -1,69 +0,0 @@
<?php
namespace App\Models;
use Exception;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
class Gericht extends Model {
protected $table = 'gericht';
protected $primaryKey = 'id';
public $incrementing = true;
function getPreisIntern(){
return $this->formatPreis($this->attributes['preisintern']);
}
function getPreisExtern(){
return $this->formatPreis($this->attributes['preisextern']);
}
private function formatPreis($unformatted){
return number_format($unformatted, 2, ',');
}
function getBildname(){
return $this->attributes['bildname'];
}
function getGerichtName(){
return $this->attributes['name'];
}
function setVegetarischAttribut($value){
if ($value == 1 || $value == 0){
$this->attributes['vegetarisch'] = $value;
return;
}
$parsed = $this->parse_wahrheitswert($value) ;
$this->attributes['vegetarisch'] = $parsed;
}
function setVeganAttribut($value){
if ($value == 1 || $value == 0){
$this->attributes['vegan'] = $value;
return;
}
$parsed = $this->parse_wahrheitswert($value) ;
$this->attributes['vegetarisch'] = $parsed;
}
private function parse_wahrheitswert($value){
$value = strtolower(str_replace(" ", "", $value));
if ($value == "yes" || $value == "ja"){
return 1;
}
elseif ($value == "no" || $value == "nein"){
return 0;
}
else{
trigger_error("Could not parse value");
}
// Wenn versucht wird das in die Datenbank zu schreiben sollte es eine Fehlermeldung geben
}
}

View File

@@ -9,9 +9,14 @@ use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session;
class Gerichte extends Model {
class Gerichte extends Model
{
use HasFactory;
function db_gericht_select_karte(){
function db_gericht_select_karte()
{
try {
$sql_gerichte = "SELECT * FROM gericht ORDER BY RAND() LIMIT 5";
@@ -74,14 +79,12 @@ class Gerichte extends Model {
}
// Überflüssig
function db_gericht_bewertung(int $id){
$sql_gerichte = "SELECT gericht.name, gericht.bildname FROM gericht WHERE id =". $id;
$result_sql_gerichte = DB::select($sql_gerichte);
return $result_sql_gerichte;
}
//Überflüssig
function db_gericht_name(int $id){
$sql_gerichte = "SELECT gericht.name FROM gericht WHERE id =". $id;
$result_sql_gerichte = DB::select($sql_gerichte);

View File

@@ -8,42 +8,38 @@ use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session;
class bewertungen extends Model {
protected $table = 'bewertungen';
protected $primaryKey = 'id';
public $incrementing = true;
protected $attributes = [
'hervorgehoben' => 0
];
public $fillable = [
'ersteller_id',
'gericht_id',
'bemerkung',
'sterne'
];
public $timestamps = false;
class bewertungen extends Model
{
use HasFactory;
function getBewertungen()
{
$sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.sterne, bewertungen.bemerkung, bewertungen.hervorgehoben FROM bewertungen ORDER BY bewertungen.erstellungsdatum LIMIT 30";
function bewerten(int $ersteller, int $gericht, int $sterne, string $bemerkung){
if($ersteller != session("benutzerid",0)||$sterne <0||$sterne>4||strlen($bemerkung)<4||strlen($bemerkung)>100){
return 0;
}
$sql = "INSERT INTO bewertungen (ersteller_id,gericht_id,bemerkung,sterne,hervorgehoben) VALUES (".mysqli_real_escape_string($ersteller). ",". mysqli_real_escape_string($gericht).",\"". mysqli_real_escape_string($bemerkung)."\",".mysqli_real_escape_string($sterne).",0);";
DB::insert($sql);
return 1;
}
function bewertungen(){
$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,$row->hervorgehoben]);
array_push($result,[DB::select($sql),$row->sterne,$row->bemerkung,$row->id,$row->hervorgehoben]);
}
return $result;
}
function getMeineBewertungen(int $id)
{
$sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.id ,bewertungen.sterne, bewertungen.bemerkung FROM bewertungen WHERE bewertungen.ersteller_id =" . $id . " ORDER BY bewertungen.erstellungsdatum";
function meine_bewertungen(int $id){
$sql_bewertungen = "SELECT bewertungen.gericht_id, bewertungen.id ,bewertungen.sterne, bewertungen.bemerkung FROM bewertungen WHERE bewertungen.ersteller_id =". $id." ORDER BY bewertungen.erstellungsdatum";
$result_sql_bewertungen = DB::select($sql_bewertungen);
$result = [];
@@ -57,20 +53,19 @@ class bewertungen extends Model {
}
function deleteMeineBewertung(int $id)
{
$sql_bewertungen = "SELECT bewertungen.ersteller_id FROM bewertungen WHERE bewertungen.id =" . $id;
function loschen(int $id){
$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)) {
if($result_sql_bewertungen[0]->ersteller_id != session("benutzer_id",0)){
return 0;
}
$sql_bewertungen = "DELETE FROM bewertungen WHERE bewertungen.id = " . $id;
$sql_bewertungen = "DELETE FROM bewertungen WHERE bewertungen.id = ".$id;
DB::delete($sql_bewertungen);
return 1;

View File

@@ -50,7 +50,7 @@ return [
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'emensawerbeseite'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', 'wm#32'),
'password' => env('DB_PASSWORD', 'admin'),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',

View File

@@ -2,6 +2,36 @@
font-family: Arial;
}
@media screen and (max-width: 600px) {
.bewertungen_mobile::after {
content: '\A' !important;
white-space: pre !important;
}
body{
background-color: #0a3622;
}
#form{
content: '\A';
white-space: pre;
}
#sterne{
content: '\A';
white-space: pre;
}
.grid {
display: grid;
grid-template-columns: auto auto auto !important;
}
.grid_bewertung {
display: grid;
grid-template-columns: 1fr!important;
}
}
.grid {
display: grid;
grid-template-columns: 200px auto 200px;
@@ -10,7 +40,7 @@
.grid_bewertung {
display: grid;
grid-template-columns: 200px 300px auto 200px;
grid-template-columns: repeat(4, 1fr);
}
img {
@@ -107,4 +137,11 @@ footer {
height: 300px;
}
.bewertung_hervorgehoben{
border-color: black;
border-width: 1px;
border-style: solid;
}

View File

@@ -39,8 +39,11 @@
@if(isset($admin))
@endif
@if(isset($gerichtName, $bildname))
@if(isset($gericht))
<?php
$gericht = $gericht[0];
$bildname = $gericht->bildname;
if ($bildname == Null) {
$bildname = "00_image_missing.jpg";
@@ -51,20 +54,20 @@
?>
<div class="grid_bewertung">
<div>
<div class="leer">
</div>
<div>
<div class="image">
<img class="bewertung" src="{{$bildname}}" alt="Bild vom Gericht" width= "10" height="10">
</div>
<div>
<h1>{{$gerichtName}}</h1>
<h1>{{$gericht->name}}</h1>
<form action="/bewertung_abschicken" method="post">
<div class="bewertungen_mobile">
<form id ="form" action="/bewertung_abschicken" method="post">
@method("post")
@csrf <!-- {{ csrf_field() }} -->
<label for="sterne">Sterne 1-4</label>
<label id="label1" for="sterne">Sterne 1-4</label>
<input id="sterne" name="sterne" type="number" placeholder="1-4" required maxlength="4">
<label for="Bemerkung">Bemerkung</label>
@@ -74,8 +77,9 @@
<button type="submit" >Bewerten</button>
</form>
</div>
</div>
<div>
<div class = leer>
</div>
</div>
@@ -92,7 +96,13 @@
$bewertungs_id = $row[3];
$hervorgehoben = $row[4];
$echo = "<h1>".$name."</h1> Sterne: ". $bewertungen." Bemerkung: ".$bemerkung;
$echo = "";
if($hervorgehoben){
$echo = "<div class=\"bewertung_hervorgehoben\"> ";
}
$echo .= "<h1>".$name."</h1> Sterne: ". $bewertungen." Bemerkung: ".$bemerkung;
if($admin){
if($hervorgehoben){
@@ -102,6 +112,10 @@
}
}
if($hervorgehoben){
$echo .= "</div>";
}
echo $echo;
}
?>

View File

@@ -76,10 +76,10 @@
foreach ($result_sql_gerichte as $row_gerichte) {
$gericht = \App\Models\Gericht::query()->find($row_gerichte->id);
$preisintern = $gericht->getPreisIntern();
$preisextern = $gericht->getPreisExtern();;
$bildname = $gericht->getBildName();
$preisintern = number_format($row_gerichte->preisintern, 2, ',', '.');
$preisextern = number_format($row_gerichte->preisextern, 2, ',', '.');
$bildname = $row_gerichte->bildname;
if ($bildname == Null) {
$bildname = "00_image_missing.jpg";
@@ -118,6 +118,8 @@
@endsection
@section("bewertungen")
<h1>Meinungen unserer Gäste</h1>
@if(isset($bewertungen))
<?php
@@ -126,7 +128,7 @@
$bewertungen = $row[1];
$bemerkung = $row[2];
$echo = "<h1>".$name."</h1> Sterne: ". $bewertungen." Bemerkung: ".$bemerkung;
$echo = "<h3>".$name."</h3> Sterne: ". $bewertungen." Bemerkung: ".$bemerkung;