убрал конфликт наложения модальных окон и контента на главной странице

This commit is contained in:
developer 2026-05-07 10:33:26 +08:00
parent 7323d700c0
commit e1f3b522bb
4 changed files with 23 additions and 29 deletions

View File

@ -1,5 +1,13 @@
<?php
/**
* Этот контроллер обеспечивает прием данных со стороны битрикса.
* На входе - обязательный параметр "action"
* и токен объекта, по которому определяется, с каким объектом продолжать работу.
* Метод index проверяет action и если нашел его среди констант класса,
* направляет в соответствующий обработчик.
* Если action не найден, то возвращает false.
* Если по токену не найден объект, то возвращает false.
*/
namespace Modules\Bitrix\Http\Controllers;
use App\Http\Controllers\Controller;
@ -21,22 +29,21 @@ class BitrixApiController extends Controller
public const ACTION_CONFIRM_DEAL = 'confirm_deal';
public const ACTION_UPDATE_CONTRACT = 'update_contract';
public const ACTION_CONFIRM_COMPANY = 'confirm_company';
public function index(Request $request)
public function index(Request $request): bool
{
if (!$bxId = BitrixId::where('token', $request->token)->first()) {
return false;
};
$object = $bxId->bitrixable;
//print_r($object);die();
switch ($request->action) {
case $this::ACTION_CONFIRM_DEAL:
$this->confirmDeal($object, $request);
return $this->confirmDeal($object, $request);
break;
case $this::ACTION_UPDATE_CONTRACT:
$this->updateContract($object, $request);
return $this->updateContract($object, $request);
break;
case $this::ACTION_CONFIRM_COMPANY:
$this->confirmCompany($request, $object);
return $this->confirmCompany($request, $object);
break;
}
return false;
@ -45,7 +52,7 @@ public function index(Request $request)
public function confirmCompany(Request $request, $company)
{
$confirmer = new ConfirmCompanyController;
$confirmer($request, $company);
return $confirmer($request, $company);
}
public function confirmDeal(Deal $deal, Request $request)
{
@ -61,31 +68,17 @@ public function confirmDeal(Deal $deal, Request $request)
$deal->status = DealStatus::NOT_UNIQUE;
$agent->user->notify(new NotUniqueContact($deal));
}
if (!$agent->bitrixId()) {
$agent->setBitrixId($request->agent_id);
}
Log::build([
'driver' => 'single',
'path' => storage_path('logs/bitrix.log'),
])->error(
json_encode(
[
'is_unique' => $request->is_unique,
'deal' => $deal->id,
'status' => $deal->status
]
)
);
$deal->save();
return $deal->id;
return true;
}
public function updateContract(Deal $deal, Request $request)
{
//print_r($request->all());die();
$contract = new ContractUpdateController;
$contract($deal, $request);
return $contract($deal, $request);
}
}

View File

@ -172,18 +172,18 @@ class="bi bi-plus-circle" viewBox="0 0 16 16">
<button type="button" style="width:30px" class="btn btn-secondary dropdown-toggle dropdown-toggle-split " data-bs-toggle="dropdown" aria-expanded="false" data-bs-reference="parent">
<span class="visually-hidden">Toggle Dropdown</span>
</button>
<ul class="dropdown-menu dropdown-menu-end">
<div class="dropdown-menu dropdown-menu-end row">
@foreach ($complexes as $complex)
<li>
<div class="dropdown-item">
<div class="dropdown-item col-6">
<input wire:model.live="selectedObjects.{{ $complex['id'] }}" class="form-check-input" type="checkbox" id="complex_selector_{{ $complex['id'] }}">
<label class="form-check-label" for="complex_selector_{{ $complex['id'] }}">
{{ $complex['name'] }}
</label>
</div>
</li>
@endforeach
</ul>
</div>
</div>
@if(count($selectedObjects))

View File

@ -18,6 +18,7 @@
max-height:380px;
overflow:hidden;
transition: max-height .25s ease-out;
z-index:2000;
}
.form-wrap:hover {

View File

@ -132,7 +132,7 @@
</div>
@if(array_key_exists('plan7_iframe', DESIGN_PARAMETERS))
<!-- Plan 7 Modal -->
<div class="modal fade" id="plan7Modal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal fade" id="plan7Modal" style="z-index:3000" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-fullscreen">
<div class="modal-content">
<div class="modal-header">