I have the following code in my Laravel (5.1) view. The code in the PHP block decides which class I should apply to the first td element below.
@foreach($datesUnavailable as $dateUnavailable)
<?php
$unavailableDate = strtotime($dateUnavailable->unavailable_on);
$creationDate = strtotime($dateUnavailable->created_at);
$newformat = date('D, M d, Y',$unavailableDate);
$createdBefore = ($unavailableDate - $creationDate)/86400;
if($createdBefore >= 5) {
$class = "alert alert-success";
} else if ($createdBefore < 5 && $createdBefore >= 3) {
$class = "alert alert-warning";
} else {
$class = "alert alert-danger";
}
?>
<tr>
<td class={{ $class }}>{{ $newformat }}</td>
<td>{{ $dateUnavailable->unavailability_type }}</td>
<td>
{!! Form::open([
'method' => 'DELETE',
'route' => ['delete-unavailability', $alias, $dateUnavailable->uc_key],
'onsubmit' => 'return submitResult();'
]) !!}
{!! Form::submit('Delete', ['class' => 'btn btn-danger btn-xs']) !!}
{!! Form::close() !!}
</td>
</tr>
@endforeach
However, when the page renders, the classes on the td element show as
<td class="alert" alert-success="">Wed, Feb 28, 2018</td>
That is, I want it to show class="alert alert-success" (based on the logic) but it displays this weird string. If I do a var_dump($class), I see the value of the $class variable as "alert alert-success".
Any idea why this might be happening?