Aufgabe 1 ca 80%
This commit is contained in:
2196
.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml
generated
2196
.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml
generated
File diff suppressed because it is too large
Load Diff
@@ -1,2 +1,2 @@
|
||||
#n:emensawerbeseite
|
||||
!<md> [1705498483000, 0, null, null, -2147483648, -2147483648]
|
||||
!<md> [1705632330000, 0, null, null, -2147483648, -2147483648]
|
||||
|
||||
67
.idea/workspace.xml
generated
67
.idea/workspace.xml
generated
@@ -4,8 +4,19 @@
|
||||
<option name="autoReloadType" value="SELECTIVE" />
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="6dcbe3e4-9d68-41d8-8c39-5cfbe5cd4a21" name="Changes" comment="Anmeldung läuft">
|
||||
<list default="true" id="6dcbe3e4-9d68-41d8-8c39-5cfbe5cd4a21" name="Changes" comment="Abmeldung gefixt">
|
||||
<change afterPath="$PROJECT_DIR$/M6/emensamobile/resources/views/main/bewertung.blade.php" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c/storage_v2/_src_/schema/emensawerbeseite.YLWk-w.meta" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/dataSources/a1d1df29-b94a-4ad6-bd6f-a458b97a6c0c/storage_v2/_src_/schema/emensawerbeseite.YLWk-w.meta" afterDir="false" />
|
||||
<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/AnmeldungController.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/app/Http/Controllers/AnmeldungController.php" 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/Gerichte.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/app/Models/Gerichte.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/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/m5_a1/anmeldung_verifizieren.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/resources/views/m5_a1/anmeldung_verifizieren.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" />
|
||||
<change beforePath="$PROJECT_DIR$/M6/emensamobile/routes/web.php" beforeDir="false" afterPath="$PROJECT_DIR$/M6/emensamobile/routes/web.php" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
@@ -55,28 +66,28 @@
|
||||
<option name="hideEmptyMiddlePackages" value="true" />
|
||||
<option name="showLibraryContents" value="true" />
|
||||
</component>
|
||||
<component name="PropertiesComponent"><![CDATA[{
|
||||
"keyToString": {
|
||||
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||
"WebServerToolWindowFactoryState": "false",
|
||||
"database.data.extractors.current.export.id": "Comma-separated (CSV)_id",
|
||||
"git-widget-placeholder": "dev/m6__robert",
|
||||
"last_opened_file_path": "C:/Users/rober/Documents/GitHub/DBWT-Praktika/M6/emensamobile/public",
|
||||
"node.js.detected.package.eslint": "true",
|
||||
"node.js.detected.package.tslint": "true",
|
||||
"node.js.selected.package.eslint": "(autodetect)",
|
||||
"node.js.selected.package.tslint": "(autodetect)",
|
||||
"nodejs_package_manager_path": "npm",
|
||||
"settings.editor.selected.configurable": "preferences.pluginManager",
|
||||
"vue.rearranger.settings.migration": "true"
|
||||
<component name="PropertiesComponent">{
|
||||
"keyToString": {
|
||||
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||
"WebServerToolWindowFactoryState": "false",
|
||||
"database.data.extractors.current.export.id": "Comma-separated (CSV)_id",
|
||||
"git-widget-placeholder": "dev/m6__robert",
|
||||
"last_opened_file_path": "C:/Users/rober/Documents/GitHub/DBWT-Praktika/M6/emensamobile/public",
|
||||
"node.js.detected.package.eslint": "true",
|
||||
"node.js.detected.package.tslint": "true",
|
||||
"node.js.selected.package.eslint": "(autodetect)",
|
||||
"node.js.selected.package.tslint": "(autodetect)",
|
||||
"nodejs_package_manager_path": "npm",
|
||||
"settings.editor.selected.configurable": "preferences.pluginManager",
|
||||
"vue.rearranger.settings.migration": "true"
|
||||
},
|
||||
"keyToStringList": {
|
||||
"DatabaseDriversLRU": [
|
||||
"mariadb"
|
||||
"keyToStringList": {
|
||||
"DatabaseDriversLRU": [
|
||||
"mariadb"
|
||||
]
|
||||
}
|
||||
}]]></component>
|
||||
}</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="C:\Users\rober\Documents\GitHub\DBWT-Praktika\M6\emensamobile\public" />
|
||||
@@ -108,7 +119,8 @@
|
||||
<workItem from="1705414744237" duration="1967000" />
|
||||
<workItem from="1705488930166" duration="3342000" />
|
||||
<workItem from="1705492444098" duration="553000" />
|
||||
<workItem from="1705493014644" duration="7005000" />
|
||||
<workItem from="1705493014644" duration="21207000" />
|
||||
<workItem from="1705627589042" duration="2719000" />
|
||||
</task>
|
||||
<task id="LOCAL-00001" summary="Webseite ohne Anmeldung läuft auf laravel">
|
||||
<option name="closed" value="true" />
|
||||
@@ -134,7 +146,15 @@
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1705501430071</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="4" />
|
||||
<task id="LOCAL-00004" summary="Abmeldung gefixt">
|
||||
<option name="closed" value="true" />
|
||||
<created>1705501770457</created>
|
||||
<option name="number" value="00004" />
|
||||
<option name="presentableId" value="LOCAL-00004" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1705501770457</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="5" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
@@ -143,6 +163,7 @@
|
||||
<component name="VcsManagerConfiguration">
|
||||
<MESSAGE value="Webseite ohne Anmeldung läuft auf laravel" />
|
||||
<MESSAGE value="Anmeldung läuft" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="Anmeldung läuft" />
|
||||
<MESSAGE value="Abmeldung gefixt" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="Abmeldung gefixt" />
|
||||
</component>
|
||||
</project>
|
||||
@@ -74,6 +74,9 @@ class AnmeldungController extends BaseController
|
||||
session()->pull("name");
|
||||
session()->pull("uid");
|
||||
session()->pull("email");
|
||||
session()->pull("bewertung");
|
||||
|
||||
session()->regenerate();
|
||||
|
||||
|
||||
Log::info('Abmeldung erfolgreich!');
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
use App\Models\bewertungen;
|
||||
use Illuminate\Routing\Controller as BaseController;
|
||||
use App\Models\Gerichte;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -26,5 +27,56 @@ class MainController extends BaseController
|
||||
]);
|
||||
}
|
||||
|
||||
public function bewertung(Request $rd) {
|
||||
/*
|
||||
Wenn Sie hier landen:
|
||||
bearbeiten Sie diese Action,
|
||||
so dass Sie die Aufgabe löst
|
||||
*/
|
||||
|
||||
if(session("start",0)== 0){
|
||||
session(["bewertung" => 1]);
|
||||
return view('m5_a1.anmeldung', [
|
||||
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}"
|
||||
]);
|
||||
}
|
||||
|
||||
if($rd->isMethod("get")){
|
||||
$data = $rd;
|
||||
|
||||
$gericht = new Gerichte();
|
||||
$g = $gericht->db_gericht_bewertung($data["gerichtid"]);
|
||||
|
||||
return view('main.bewertung', [
|
||||
"gericht" => $g,
|
||||
"data" => $data,
|
||||
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
return view('main.bewertung', [
|
||||
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
public function bewertung_abschicken(Request $rd) {
|
||||
if($rd->isMethod("post")){
|
||||
$data = $rd;}
|
||||
|
||||
$id = $data["gericht_id"] ?? NULL;
|
||||
$sterne = $data["sterne"] ?? NULL;
|
||||
$bemerkung = $data["bemerkung"] ?? NULL;
|
||||
$benutzer = session("benutzer_id",0);
|
||||
|
||||
|
||||
$b = new bewertungen();
|
||||
$check = $b->bewerten($benutzer,$id,$sterne, $bemerkung);
|
||||
|
||||
return view('main.bewertung', [
|
||||
'url' => 'http' . (isset($_SERVER['HTTPS']) ? 's' : '') . '://' . "{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"
|
||||
]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -79,4 +79,16 @@ class Gerichte extends Model
|
||||
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
function db_gericht_name(int $id){
|
||||
$sql_gerichte = "SELECT gericht.name FROM gericht WHERE id =". $id;
|
||||
$result_sql_gerichte = DB::select($sql_gerichte);
|
||||
return $result_sql_gerichte;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -40,6 +40,7 @@ class Benutzer extends Model
|
||||
session(["login" => 1]);
|
||||
session(["name" => $row->name]);
|
||||
session(["email" => $row->email]);
|
||||
session(["benutzer_id"=> $row->id]);
|
||||
return 1;
|
||||
} else {
|
||||
|
||||
|
||||
@@ -7,6 +7,12 @@
|
||||
grid-template-columns: 200px auto 200px;
|
||||
}
|
||||
|
||||
|
||||
.grid_bewertung {
|
||||
display: grid;
|
||||
grid-template-columns: 200px 300px auto 200px;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
@@ -94,3 +100,11 @@ footer {
|
||||
padding-left: 20px;
|
||||
padding-right: 20px;
|
||||
}
|
||||
|
||||
|
||||
.bewertung{
|
||||
width: 300px;
|
||||
height: 300px;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -2,9 +2,17 @@
|
||||
|
||||
@section("main")
|
||||
|
||||
@if($anmeldung == 1)
|
||||
@if($anmeldung == 1){
|
||||
<meta http-equiv="refresh" content="/"/>
|
||||
<form id="form_ok" action="/"></form>
|
||||
<?php if(session("bewertung",0)==0){
|
||||
echo "<form id=\"form_ok\" action=\"/\"></form>";
|
||||
}else{
|
||||
echo "<form id=\"form_ok\" action=\"/bewertung\"></form>";
|
||||
session(["bewertung" => 0]);
|
||||
}
|
||||
|
||||
?>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
@@ -19,7 +27,7 @@
|
||||
|
||||
window.onload = formAutoSubmit;
|
||||
|
||||
</script>
|
||||
</script>}
|
||||
@else
|
||||
|
||||
<form method="post" id="auto_form" action="/anmeldung_fehler">
|
||||
|
||||
106
M6/emensamobile/resources/views/main/bewertung.blade.php
Normal file
106
M6/emensamobile/resources/views/main/bewertung.blade.php
Normal file
@@ -0,0 +1,106 @@
|
||||
@extends("layouts.main_layout", ['title' => "E-Mensa"])
|
||||
<?php use Illuminate\Support\Facades\Session; ?>
|
||||
|
||||
@section("header")
|
||||
<link rel="stylesheet" href="/css/style.css">
|
||||
@endsection
|
||||
|
||||
@section("nav")
|
||||
<div class="grid">
|
||||
<div>
|
||||
<img src="/img/fh-logo.jpg" alt="FH-Logo">
|
||||
</div>
|
||||
<div>
|
||||
<a href="#ankündigung">Ankündigung</a>
|
||||
<a href="#speisen">Speisen</a>
|
||||
<a href="#zahlen">Zahlen</a>
|
||||
<a href="#kontakt">Kontakt</a>
|
||||
<a href="#wichtig">Wichtig für uns</a>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
|
||||
@if(session("start",0)== 0)
|
||||
<a href="/anmeldung">Anmelden</a>
|
||||
@else
|
||||
Angemeldet als:<br>
|
||||
<div>{{ session("name")}}</div>
|
||||
<a href="/abmeldung">Abmelden</a>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endsection
|
||||
|
||||
@section("text")
|
||||
@if(isset($data))
|
||||
{{$id = $data["gerichtid"]}}
|
||||
@endif
|
||||
|
||||
@if(isset($gericht))
|
||||
<?php
|
||||
$gericht = $gericht[0];
|
||||
|
||||
$bildname = $gericht->bildname;
|
||||
|
||||
if ($bildname == Null) {
|
||||
$bildname = "00_image_missing.jpg";
|
||||
}
|
||||
|
||||
$bildname = "/img/gerichte/" . $bildname;
|
||||
|
||||
?>
|
||||
|
||||
<div class="grid_bewertung">
|
||||
<div>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<img class="bewertung" src="{{$bildname}}" alt="Bild vom Gericht" width= "10" height="10">
|
||||
</div>
|
||||
<div>
|
||||
<h1>{{$gericht->name}}</h1>
|
||||
|
||||
|
||||
<form action="/bewertung_abschicken" method="post">
|
||||
@method("post")
|
||||
@csrf <!-- {{ csrf_field() }} -->
|
||||
<label for="sterne">Sterne 1-4</label>
|
||||
<input id="sterne" name="sterne" type="number" placeholder="1-4" required maxlength="4">
|
||||
|
||||
<label for="Bemerkung">Bemerkung</label>
|
||||
<input id="bemerkung" name="bemerkung" type="text" placeholder="Bemerkung" required maxlength="200">
|
||||
|
||||
<input type="hidden" name="gericht_id" value={{ $id}}>
|
||||
|
||||
<button type="submit" >Bewerten</button>
|
||||
</form>
|
||||
</div>
|
||||
<div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@else
|
||||
|
||||
|
||||
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@section("gerichte")
|
||||
|
||||
|
||||
@endsection
|
||||
|
||||
@section("footer")
|
||||
|
||||
<tr>
|
||||
<td>(c) E-Mensa GmbH</td>
|
||||
<td>Şafak Hazinedar & Robert Joel</td>
|
||||
<td><a href="">Impressum</a></td>
|
||||
</tr>
|
||||
|
||||
@endsection
|
||||
@@ -64,7 +64,14 @@
|
||||
$verwendete_allergene_string = $data["allergene"];
|
||||
$allergene = $data["allergene1"];
|
||||
|
||||
$tabelle = "<table class=\"speisen\"><tr class=\"speisen\"> <td>Gerichte</td><td>Preis intern</td><td>Preis extern</td><td>Bild</td></tr>";
|
||||
$tabelle = "<table class=\"speisen\"><tr class=\"speisen\"> <td>Gerichte</td><td>Preis intern</td><td>Preis extern</td><td>Bild</td>";
|
||||
|
||||
if(session("start",0)== 1){
|
||||
$tabelle .= "<td>Bewerten</td></tr>";
|
||||
}
|
||||
else{
|
||||
$tabelle .= "</tr>";
|
||||
}
|
||||
|
||||
|
||||
foreach ($result_sql_gerichte as $row_gerichte) {
|
||||
@@ -80,8 +87,14 @@
|
||||
|
||||
$bildname = "/img/gerichte/" . $bildname;
|
||||
|
||||
$tabelle .= "<tr class=\"speisen\"><td>" . htmlspecialchars($row_gerichte->name) . " <sup>" . htmlspecialchars($allergene) . "</sup></td><td>" . htmlspecialchars($preisintern) . "€</td><td>" . htmlspecialchars($preisextern) . "€</td><td> <img src=\"" . $bildname . "\" alt =\"Bild vom Gericht\" width= \"10\" height=\"10\"> </td></tr>";
|
||||
$tabelle .= "<tr class=\"speisen\"><td>" . htmlspecialchars($row_gerichte->name) . " <sup>" . htmlspecialchars($allergene) . "</sup></td><td>" . htmlspecialchars($preisintern) . "€</td><td>" . htmlspecialchars($preisextern) . "€</td><td> <img src=\"" . $bildname . "\" alt =\"Bild vom Gericht\" width= \"10\" height=\"10\"> </td>";
|
||||
|
||||
if(session("start",0)== 1){
|
||||
$tabelle .= "<td><a href=\"/bewertung?gerichtid=".$row_gerichte->id ."\">Bewerten</a></td></tr>";
|
||||
}
|
||||
else{
|
||||
$tabelle .= "</tr>";
|
||||
}
|
||||
|
||||
}
|
||||
$tabelle .= "</table>";
|
||||
|
||||
@@ -17,6 +17,8 @@ use Illuminate\Http\Request;
|
||||
|
||||
//Main Controller
|
||||
Route::get('/', [MainController::class, 'index' ]);
|
||||
Route::get('/bewertung', [MainController::class, 'bewertung' ]);
|
||||
Route::post("/bewertung_abschicken",[MainController::class, 'bewertung_abschicken' ]);
|
||||
|
||||
//Anmeldungs Controller
|
||||
Route::get('/anmeldung', [AnmeldungController::class, 'start']);
|
||||
|
||||
Reference in New Issue
Block a user