v0.5.15b - Fixed bug

This commit is contained in:
frederikpyt 2020-08-10 10:21:09 +02:00
parent 3263663f3d
commit 1bea8401b4
4 changed files with 56 additions and 9 deletions

View File

@ -82,7 +82,7 @@ class EventController extends Controller
$news->name = "Ny aktivitet";
$news->subname = $event->name;
$news->content = "<p>" . substr($event->description, 0, 300) . "</p>" .
$news->content = "<p>" . $this->closetags(substr($event->description, 0, 300)) . "</p>" .
'<div class="row align-items-center">'.
'<a style="width: 33%; margin: 0; padding: 0; font-weight: 700;" class="sde-blue" href="'. route("userevents.create", ["event_id" => $event->id ]) .'">Tilmeld</a>'.
'<a style="width: 33%; margin: 0; padding: 0; text-align: center; font-weight: 700;" class="sde-blue" href="'. route("events.show", ["event" => $event->id ]) .'">Læs mere...</a>'.
@ -179,7 +179,7 @@ class EventController extends Controller
$news->name = "Aktivitet opdateret";
$news->subname = $event->name;
$news->content = "<p>" . substr($event->description, 0, 300). "</p>" .
$news->content = "<p>" . $this->closetags(substr($event->description, 0, 300)). "</p>" .
'<div class="row align-items-center">'.
'<a style="width: 33%; margin: 0; padding: 0; font-weight: 700;" class="sde-blue" href="'. route("userevents.create", ["event_id" => $event->id ]) .'">Tilmeld</a>'.
'<a style="width: 33%; margin: 0; padding: 0; text-align: center; font-weight: 700;" class="sde-blue" href="'. route("events.show", ["event" => $event->id ]) .'">Læs mere...</a>'.
@ -263,7 +263,25 @@ class EventController extends Controller
}
public function closetags($html) {
preg_match_all('#<(?!meta|img|br|hr|input\b)\b([a-z]+)(?: .*)?(?<![/|/ ])>#iU', $html, $result);
$openedtags = $result[1];
preg_match_all('#</([a-z]+)>#iU', $html, $result);
$closedtags = $result[1];
$len_opened = count($openedtags);
if (count($closedtags) == $len_opened) {
return $html;
}
$openedtags = array_reverse($openedtags);
for ($i=0; $i < $len_opened; $i++) {
if (!in_array($openedtags[$i], $closedtags)) {
$html .= '</'.$openedtags[$i].'>';
} else {
unset($closedtags[array_search($openedtags[$i], $closedtags)]);
}
}
return $html;
}
}

View File

@ -6,6 +6,7 @@ use App\Guide;
use App\News;
use Illuminate\Http\Response;
use Illuminate\Http\Request;
use tidy;
class GuideController extends Controller
{
@ -75,7 +76,8 @@ class GuideController extends Controller
$news->name = "Ny Vejledning";
$news->subname = $guide->name;
$news->content = substr($guide->guide_articles, 0, 300). '<br><br><a href="' . route("guides.show", ["guide" => $guide]). '" class="sde-blue ">Læse mere...</a>';
$news->content = $this->closetags(substr($guide->guide_articles, 0, 300)). '<br><a style="font-weight: 700;" href="' . route("guides.show", ["guide" => $guide]). '" class="sde-blue ">Læse mere...</a>';
$news->save();
@ -136,7 +138,8 @@ class GuideController extends Controller
$news->name = "Vejledning opdateret";
$news->subname = $guidee->name;
$news->content = substr($guidee->guide_articles, 0, 300). '<br><br><a href="' . route("guides.show", ["guide" => $guide]). '" class="sde-blue ">Læse mere...</a>';
$news->content = $this->closetags(substr($guidee->guide_articles, 0, 300)). '<br><a style="font-weight: 700;" href="' . route("guides.show", ["guide" => $guide]). '" class="sde-blue ">Læse mere...</a>';
$news->save();
}
@ -158,4 +161,25 @@ class GuideController extends Controller
return redirect()->route("guides.index");
}
public function closetags($html) {
preg_match_all('#<(?!meta|img|br|hr|input\b)\b([a-z]+)(?: .*)?(?<![/|/ ])>#iU', $html, $result);
$openedtags = $result[1];
preg_match_all('#</([a-z]+)>#iU', $html, $result);
$closedtags = $result[1];
$len_opened = count($openedtags);
if (count($closedtags) == $len_opened) {
return $html;
}
$openedtags = array_reverse($openedtags);
for ($i=0; $i < $len_opened; $i++) {
if (!in_array($openedtags[$i], $closedtags)) {
$html .= '</'.$openedtags[$i].'>';
} else {
unset($closedtags[array_search($openedtags[$i], $closedtags)]);
}
}
return $html;
}
}

View File

@ -17,7 +17,8 @@
"laravel/tinker": "^2.0",
"laravel/ui": "^2.0",
"laravelcollective/html": "^6.1",
"spatie/laravel-permission": "^3.13"
"spatie/laravel-permission": "^3.13",
"ext-tidy": "*"
},
"require-dev": {
"facade/ignition": "^2.0",

View File

@ -71,16 +71,20 @@
div.header {
background-color: #00788a;
color: white;
padding: 1px;
padding: 8px;
font-size: 10px;
text-align: center;
}
div.container {
padding: 5px;
padding: 8px;
text-align: justify;
line-height: 1.5;
}
ol {
padding-right: 8px;
}
</style>
<main>
@ -88,7 +92,7 @@
<div class="card">
<div class="header">
<p><b>{{ $new->name }}</b></p>
<h1>{{ $new->subname }}</h1>
<h3>{{ $new->subname }}</h3>
</div>
<div class="container">