Merge remote-tracking branch 'origin/main'
Tests & Lint & Deploy to Railway / build (2.6.6, 20.x, 8.3) (push) Successful in 1m49s Details
Tests & Lint & Deploy to Railway / deploy (push) Successful in 32s Details

This commit is contained in:
aslan 2024-03-21 14:57:14 +03:00
commit 09f4ed38f8
4 changed files with 106 additions and 111 deletions

1
.gitignore vendored
View File

@ -23,3 +23,4 @@ yarn-error.log
/_ide_helper.php /_ide_helper.php
/_ide_helper_models.php /_ide_helper_models.php
/public/img/icons/play-button.png /public/img/icons/play-button.png
/tabit.sql

View File

@ -61,10 +61,10 @@ class CalculatorController extends Controller
$faculty = Faculty::find($department->faculty_id); $faculty = Faculty::find($department->faculty_id);
// phpcs:disable // phpcs:disable
$fon_3 = URL::to('img/front-page/bakalavr-special/fon3_blok.png'); $fon_3 = URL::to('img/front-page/bakalavr-special/fon3_blok.png');
return "{$acc} <tr class=\"\"> return "{$acc} <tr class=\"border-bottom border-white my-3\">
<td id=\"faculty\"> {$faculty->name} </td>
<td> <td class='w-25 '>
<a class=\" border border-white rounded-3 p-2 hover1\" type=\"button\" data-bs-toggle=\"offcanvas\" data-bs-target=\"#offcanvasScrolling-{$direction->id}{$direction->id }\" aria-controls=\"offcanvasScrolling\" role=\"button\">{$direction->name}</a> <a class=\"hover2 \" type=\"button\" data-bs-toggle=\"offcanvas\" data-bs-target=\"#offcanvasScrolling-{$direction->id}{$direction->id }\" aria-controls=\"offcanvasScrolling\" role=\"button\">{$direction->name}</a>
<div class=\"offcanvas offcanvas-bottom\" data-bs-scroll=\"true\" data-bs-backdrop=\"false\" tabindex=\"-1\" id=\"offcanvasScrolling-{$direction->id }{$direction->id}\" aria-labelledby=\"offcanvasScrollingLabel-{$direction->id}{$direction->id}\" style=\"height: 100%; font-family: Geologica-Medium; overflow-y: auto ; background-image: url({$fon_3}); color: #004329\"> <div class=\"offcanvas offcanvas-bottom\" data-bs-scroll=\"true\" data-bs-backdrop=\"false\" tabindex=\"-1\" id=\"offcanvasScrolling-{$direction->id }{$direction->id}\" aria-labelledby=\"offcanvasScrollingLabel-{$direction->id}{$direction->id}\" style=\"height: 100%; font-family: Geologica-Medium; overflow-y: auto ; background-image: url({$fon_3}); color: #004329\">
@ -134,8 +134,9 @@ class CalculatorController extends Controller
</div> </div>
</div> </div>
</td> </td>
<td class=\"text-end\"> {$direction->cost_paid_place}</td>
<td class=\"text-end\"> {$direction->period} </td> <td class=\"text-end\"> {$direction->period} </td>
</tr>"; </tr>";
}; };
// phpcs:enable // phpcs:enable

View File

@ -2,9 +2,7 @@
namespace App\Services; namespace App\Services;
use App\Models\Direction;
use Illuminate\Support\Facades\URL; use Illuminate\Support\Facades\URL;
use PhpParser\Node\Expr\Array_;
class DirectonHtmlBuilder class DirectonHtmlBuilder
{ {
@ -15,6 +13,7 @@ class DirectonHtmlBuilder
{ {
$this->direction = $direction; $this->direction = $direction;
} }
public function getHTML() public function getHTML()
{ {
@ -22,12 +21,9 @@ class DirectonHtmlBuilder
$direction = $this->direction; $direction = $this->direction;
$fon_3 = URL::to('img/front-page/bakalavr-special/fon3_blok.png'); $fon_3 = URL::to('img/front-page/bakalavr-special/fon3_blok.png');
$educationForms = ''; $educationForms = '';
foreach ($direction['educationForms'] as $key => $educationForm) { foreach ($direction['educationForms'] as $key => $educationForm) {
$educationForms .= $key . ', '; $educationForms .= $key . ', ';
@ -35,7 +31,6 @@ class DirectonHtmlBuilder
$educationForms = substr($educationForms, 0, -2); $educationForms = substr($educationForms, 0, -2);
// phpcs:disable // phpcs:disable
$budget_places_array = array(); $budget_places_array = array();
@ -58,109 +53,106 @@ class DirectonHtmlBuilder
$profiles = ''; $profiles = '';
//if (array_key_exists('educationalInstitution',$direction)) echo '+++++'; else echo '----'; //if (array_key_exists('educationalInstitution',$direction)) echo '+++++'; else echo '----';
//exit(); //exit();
if (array_key_exists('educationalInstitution', $direction)) { // if (array_key_exists('educationalInstitution', $direction)) {
foreach ($direction['educationalInstitution'] as $educationalInstitution_name => $educationalInstitution) { // foreach ($direction['educationalInstitution'] as $educationalInstitution_name => $educationalInstitution) {
$profile_out = '<br>'; //
$profiles .= "<p> {$educationalInstitution_name}</p>"; // $profiles .= "<p> {$educationalInstitution_name}</p>";
foreach ($educationalInstitution as $profile_name => $profile) { // foreach ($educationalInstitution as $profile_name => $profile) {
foreach ($profile as $key => $value) { // $profile_out = '<br>';
$profile_out .= "<span style='font-family: Geologica-ExtraLight'>{$key}</span> - <strong> {$value['budget_places']} </strong><br>"; // foreach ($profile as $key => $value) {
} // $profile_out .= "<span style='font-family: Geologica-ExtraLight'>{$key}</span> - <strong> {$value['budget_places']} </strong><br>";
$tmp = str_replace(' ', '', $profile_name); // }
$profiles .= " // $tmp = str_replace(' ', '', $profile_name);
<div class=\"accordion \" id=\"accordionPanelsStayOpenExample\"> // $tmp = str_replace(',', '', $tmp);
<div class=\"accordion-item\"> //// $print_r = '<pre>' . print_r($direction,1) . '<pre>';
<h2 class=\"accordion-header\"> // $profiles .= "
<button class=\"accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#panelsStayOpen-{$tmp}\" aria-expanded=\"true\" aria-controls=\"panelsStayOpen-{$tmp}\"> // <div class=\"accordion \" id=\"accordionPanelsStayOpenExample\">
{$profile_name} // <div class=\"accordion-item\">
</button> // <h2 class=\"accordion-header\">
</h2> // <button class=\"accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#panelsStayOpen-{$tmp}\" aria-expanded=\"true\" aria-controls=\"panelsStayOpen-{$tmp}\">
<div id=\"panelsStayOpen-{$tmp}\" class=\"accordion-collapse collapse show\"> // {$profile_name}
<div class=\"accordion-body\"> // </button>
$profile_out // </h2>
</div> // <div id=\"panelsStayOpen-{$tmp}\" class=\"accordion-collapse collapse show\">
</div> // <div class=\"accordion-body\">
</div> // $profile_out
</div> //
"; //
} //
}; // </div>
} // </div>
// </div>
// </div>
// ";
// }
// };
// }
return "<div class=\"offcanvas offcanvas-bottom\" data-bs-scroll=\"true\" data-bs-backdrop=\"false\" tabindex=\"-1\" id=\"offcanvasScrolling-{$direction['id'] }\" aria-labelledby=\"offcanvasScrollingLabel-{$direction['id']}\" style=\"height: 100%; font-family: Geologica-Medium; overflow-y: auto ; background-image: url({$fon_3}); color: #004329\"> return "<div class=\"offcanvas offcanvas-bottom\" data-bs-scroll=\"true\" data-bs-backdrop=\"false\" tabindex=\"-1\" id=\"offcanvasScrolling-{$direction['id'] }\" aria-labelledby=\"offcanvasScrollingLabel-{$direction['id']}\" style=\"height: 100%; font-family: Geologica-Medium; overflow-y: auto ; background-image: url({$fon_3}); color: #004329\">
<div class=\"mx-5 \"> <div class=\"mx-5 \">
<div class=\"col-12 d-flex justify-content-end mt-4\"> <div class=\"col-12 d-flex justify-content-end mt-4\">
<button type=\"button\" class=\"btn-close text-reset\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\"> <button type=\"button\" class=\"btn-close text-reset\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\"></button>
</button>
</div> </div>
<div class='row'> <div class='row'>
<div class='col-md-6 col-12 d-block'> <div class='col-11 d-block'>
<div class='col'>
<div class=\"\">
<div class=\"display-6 \" style=\"font-family: Geologica-Light\"> {$direction['code']} </div> <div class=\"display-6 \" style=\"font-family: Geologica-Light\"> {$direction['code']} </div>
<div class=\"display-5 \" > {$direction['name']}</div> <div class=\"display-6 \" > {$direction['name']}</div>
</div> </div>
<div class='col d-flex justify-content-end'>
<div class=\"fs-5 \" style=\"font-family: Geologica-Light\">
<a href='#' role='button'> МГТУ </a> |
<a href='#' role='button' > Филиал МГТУ (пос. Яблоновский)</a>
</div>
</div>
</div>
<hr class='col-11 '>
<div class=\"mt-4\"> <div class=\"mt-4\">
<p style=\"text-align: justify;\">{$direction['description']}</p> <p style=\"text-align: justify;\">{$direction['description']}</p>
<div class='row'> <p class='fs-5'> Бюджетные места: </p> {$profiles} </div>
</div> </div>
</div> </div>
<div class='row'>
<div class='col-11 d-flex justify-content-end'> <a href='#' role='button'> Бюджет </a> | <a href='#' role='button' > Коммерция</a> </div>
<div class='col-md-6 col-12 d-flex justify-content-center align-items-center'> <div class=' col-4 '>
<div class=\"p-3 px-5 border-success fs-5\" style='border-radius: 20px; border: 2px solid;'>
<div class=\"p-3 px-5 border-success fs-4\" style='border-radius: 50px; border: 2px solid;'>
<div > Уровень образования: <div > Уровень образования:
<strong>{$direction['educationLevel']} </strong> <strong>{$direction['educationLevel']} </strong>
</div> </div>
<hr class='d-block d-md-none'><br>
<div > Форма обучения: <div > Форма обучения:
<strong> $educationForms <strong> $educationForms</strong>
</strong>
</div> </div>
<hr class='d-block d-md-none'><br>
<div > Бюджетные места:
{$budget_places}
</div>
<hr class='d-block d-md-none'><br>
<div > Квота:
<strong >{$direction['quota']} </strong>
</div>
<hr class='d-block d-md-none'><br>
<div > Места на контракт:
<strong >{$direction['paid_places']} </strong>
</div>
<hr class='d-block d-md-none'><br>
<div > Стоимость платного обучения:
</div>
<hr class='d-block d-md-none'><br>
<div > Период обучения (в годах): <div > Период обучения (в годах):
{$period} {$period}
</div> </div>
</div> </div>
</div> </div>
</div> <div class=' col-7 '>
<div class=\"p-3 px-5 border-success fs-5 h-100\" style='border-radius: 20px; border: 2px solid;'>
<div class=\"offcanvas-body mt-2\" style=\"font-family: Geologica-ExtraLight\"> Места для обучения:
</div>
</div>
</div>
<div class='row mt-3'>
<div class=' col-9 '>
<div class=\"p-3 px-5 border-success fs-5 h-100\" style='border-radius: 20px; border: 2px solid;'>
</div>
</div>
<div class=' col-2 '>
<div class=\"p-3 px-5 border-success fs-5 h-100\" style='border-radius: 20px; border: 2px solid;'>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> "; </div>
</div>";
} }
// phpcs:enable // phpcs:enable
} }

View File

@ -74,6 +74,7 @@
.hover1:hover { .hover1:hover {
transform: scale(1.1); transform: scale(1.1);
transition: all .3s ease-in-out; transition: all .3s ease-in-out;
z-index: 1052;
} }
@ -387,15 +388,15 @@
</div> </div>
<p class="text-center fs-3"> {{ $faculty->name }} </p> <p class="text-center fs-3"> {{ $faculty->name }} </p>
<div class="modal-body d-flex justify-content-center"> <div class="modal-body d-flex justify-content-center" >
<div class="col-11"> <div class="col-11">
<p class="fs-5">Основная информация</p> <p class="fs-5">Основная информация</p>
<p class="fs-6" <p class="fs-6"
style=" font-family: Geologica-ExtraLight; text-align: justify;"> {{ $faculty->description }}</p> style=" font-family: Geologica-ExtraLight; text-align: justify;"> {{ $faculty->description }}</p>
<p class="fs-5">Специальности</p> <p class="fs-5">Специальности</p>
<div class="table-responsive"> <div class="table-responsive ps-4">
<table class="table w-100 fs-6" <table class="table w-100 fs-6"
style=" font-family: Geologica-ExtraLight"> style=" font-family: Geologica-ExtraLight;">
<tr> <tr>
<th> Название</th> <th> Название</th>
<th> Код специальности</th> <th> Код специальности</th>
@ -561,7 +562,7 @@
data: 'ajx=get_napr&format=html&predmets=' + JSON.stringify(selected), data: 'ajx=get_napr&format=html&predmets=' + JSON.stringify(selected),
success: function (data) { success: function (data) {
$(".calcul_rez").html('<tr><th class="fs-5"> Факультет </th><th class="fs-5"> Направление </th><th class="fs-5" style="text-align: right;"> Период обучения (в годах)</th></tr>'); $(".calcul_rez").html('<tr><th class="fs-5"> Направление </th><th style="text-align: right;"> Цена за обучение</th><th class="fs-5" style="text-align: right;"> Период обучения (в годах)</th></tr>');
$(".calcul_rez").append(data.html); $(".calcul_rez").append(data.html);
} }
@ -572,15 +573,15 @@
</div> </div>
</div> </div>
<div class="col-md-6 mt-md-0 mt-5 col-12"> <div class="col-md-7 mt-md-0 mt-5 col-12">
<div class="d-flex border border-white py-5 justify-content-center align-items-center" <div class="d-flex border border-white py-5 justify-content-center align-items-center"
style="border-radius: 50px; min-height: 200px;"> style="border-radius: 50px; min-height: 200px;">
<div class="col-12 text-remove text-white w-100 text-center fs-4" <div class="col-12 text-remove text-white w-100 text-center fs-4"
style="font-family: Geologica-ExtraLight">Выберите предметы style="font-family: Geologica-ExtraLight">Выберите предметы
</div> </div>
<div class="table-responsive ps-5 " style="width: 90%"> <div class="table-responsive p-5 w-100 " style=" max-height: 700px; ">
<table class=" text-white px-5 calcul_rez" <table class=" text-white calcul_rez"
style="width: 90%; font-family: Geologica-ExtraLight;"> style="width: 90%; font-family: Geologica-ExtraLight;">