Вход Регистрация
Файл: protected/views/page/settings_deals.php
Строк: 309
<?php $this->pageTitle 'Сделки | Настройки'?>
<div class="clients-hat">
    <div class="settings-name">
        <?php echo CHtml::link('Настройки', array('page/settings_additional_field')); ?>
        <img src="/img/right-arrow-button.svg">
        Сделки
    </div>
    <div class="goback-link pull-right" style="margin-bottom: 25px;">

    </div>
</div>

<?php
$form 
$this->beginWidget('CActiveForm', array(
    
'id' => 'reason',
    
'htmlOptions' => [
        
'class' => 'page-form deals'
    
]
    
// 'enableAjaxValidation' => true,
));
?>

<main class="content full2 deals settingsLabels" role="main">
    <div class="box_edituser_left">
        <div class="edit_user_0anketa">
            <div class="content-01">
                <?php $this->renderPartial('settings_main_nav', array('deals' => true)); ?>

                <div class="user-table-block_pola fixWidth">
                    <ul id="ul-listTabs">
                        <?php
                        $typeDeals 
$typeDeals ?? array_keys($listTabs)[0];
                        foreach (
$listTabs as $key => $tab) {
                            echo
                                
'<li id="' $key '" class="button-change-table sectorsBlock '
                                
. ($typeDeals != $key ?: 'active') . '" onclick="changeTabs(' "'" $key "'" ');">' $tab '</li>';
                        }
                        
?>
                    </ul>
                </div>

                <? if ($isShowBlockSave) { ?>
                    <script type="module">
                        import {NotificationBar} from '/js/notificationBar.js';
                        const notificationBar = new NotificationBar({
                            type: 'success',
                            title: 'Сохранено',
                            description: 'Поле успешно изменено'
                        });
                        notificationBar.show();
                    </script>
                <? ?>

                <div id="refusalBlock" class="hide">
                    <? if ($listTabs['refusal']) { ?>
                        <div class="centre_setting_3">
                            <div class="block-info editSelect" id="selectOptions">

                                <div class="block-row addSelectOption">
                                    <div class="row-label">Причины отказов:<span class="star">*</span></div>
                                    <div class="row-label label-weight">№:<span class="star">*</span></div>
                                </div>

                                <div class="block-options addSelectOption">
                                    <?
                                    
foreach ($reasons as $reason) {
                                        
$countClient 0;
                                        
$countClient count(DealAndReason::model()->findAll('deals_reason_id = ' $reason->id));
                                        
?>
                                        <div class="block-row">
                                            <div class="row-input input-option hide" id="inputId">
                                                <? echo CHtml::textField("Reasons[$reason->id][id]"$reason->id?>
                                            </div>
                                            <div class="row-input input-option">
                                                <? echo CHtml::textField("Reasons[$reason->id][name]"$reason->name, ['maxlength' => 80'placeholder' => 'Вариант ' $reason->id'autocomplete' => 'off',]) ?>
                                            </div>

                                            <div class="row-input input-weight">
                                                <? echo CHtml::textField("Reasons[$reason->id][weight]"$reason->weight, ['maxlength' => 2'autocomplete' => 'off''class' => 'optionWeight''id' => "inputWeight"'pattern' => "^[ 0-9]+$"]) ?>
                                            </div>

                                            <? if ($countClient 1) { ?>
                                                <div class="row-input">
                                                    <img class="delDocument_set" onclick="deleteOption(event)"
                                                         src="/img/cancel_newdoc.svg" alt="">
                                                </div>
                                            <? } else { ?>
                                                <div class="row-input">
                                                    <img class="delDocument_set" id="delete<? echo $reason->id ?>"
                                                         onclick="showBlockDelete(event, <? echo $reason->id ?>)"
                                                         src="/img/cancel_newdoc.svg" alt="">
                                                </div>
                                            <? ?>
                                        </div>

                                        <div class="delete-option hide" id="blockDelete<? echo $reason->id ?>">Есть проигранные сделки (<? echo $countClient ?> шт.), в которых, указана эта причина отказа. Если удалить, тогда сделки примут причину отказа по умолчанию. Затем нажмите "Сохранить". <a onclick="deleteOption(event, <? echo $reason->id ?>)"style="cursor: pointer;"> Удалить</a>
                                        </div>
                                        <?
                                    
}

                                    
$count 1;
                                    foreach (
$customReason as $value) { ?>
                                        <div class="block-row">
                                            <div class="row-input input-option">
                                                <? echo CHtml::textField("Reasons[exampleId" $count "][name]"$value['name'], ['maxlength' => 80'placeholder' => 'Вариант ' $count'autocomplete' => 'off',]) ?>
                                            </div>

                                            <div class="row-input input-weight">
                                                <? echo CHtml::textField("Reasons[exampleId" $count "][weight]"$value['weight'], ['maxlength' => 2'autocomplete' => 'off''class' => 'optionWeight''id' => "inputWeight"'pattern' => "^[ 0-9]+$"]) ?>
                                            </div>
                                            <div class="row-input">
                                                <img class="delDocument_set" onclick="deleteOption(event)"
                                                     src="/img/cancel_newdoc.svg" alt="">
                                            </div>
                                        </div>
                                        <?
                                        $count
++;
                                    } 
?>

                                </div>
                                <div class="block-row addSelectOption buttonAdd">
                                    <a class="add" id="addOption" href="#">Добавить</a>
                                </div>


                                <? if ($errorMessageList) {
                                    foreach (
$errorMessageList as $error) {
                                        echo 
"
                                                <div class="
block-row addSelectOption">
                                                    <div class="
custom-error">$error[0]</div>
                                                </div>
                                            "
;
                                        break;
                                    }
                                    
?>
                                <? ?>

                            </div>
                        </div>
                    <? ?>
                </div>

                <div class="save_button">
                    <?php echo CHtml::submitButton('Сохранить', array('class' => 'btn''id' => 'save')); ?>
                    <div id="preloader"></div>
                </div>

                <?php $this->endWidget(); ?>

            </div>
        </div>
    </div>
    <div class="right-sidebar">
            <div class="title_name_2">Справка
                <div class="more"><img src="/img/external-link-symbol.svg"><a href="https://inclient.ru/category/help-crm/" target="_blank" style="color: #707070;">Подробнее</a></div>
            </div>
            <div class="popup__form_actions">
                <p><strong>Причины отказов</strong></p>
                <br>
                <p>Причины отказов используются в сделках. При закрытии проигранной сделки, нужно указать причину - почему контакт отказался от сделки. В будущем появится статистика отказов - это позволит понять, почему клиенты отказываются от сделок.</p>
            </div>
        </div>
</main>

<script>

    $("#reason").submit(function () {
        $("#preloader").addClass('preloader');
        $("#save_and_create").hide();
        $("#save").hide();
    });

    var tabActive = $('#ul-listTabs li.active');
    $('#' + tabActive[0].id + 'Block').show();
    changeTabs = function (tab) {
        tabActive.removeClass('active');
        $('#' + tabActive[0].id + 'Block').hide();

        tabActive = $('#' + tab);
        tabActive.addClass('active');
        $('#' + tabActive[0].id + 'Block').show();
    };

    var count = <?echo $count?>;

    $('#addOption').click(function () {
        event.preventDefault();
        var listOptions = $('.block-options.addSelectOption .block-row'),
            Weights = $('.optionWeight'),
            listWeight = [];
        // массив с весами
        for (var i = 0; i < Weights.length; i++) {
            listWeight.push(+Weights[i].value);
        }

        var weight = null;
        for (var i = 1; i <= listOptions.length; i++) {
            if (listWeight.indexOf(i) < 0) {
                weight = i;
                break;
            }
        }

        count++;

        weight = weight || listOptions.length + 1;
        var blockOption = '<div class="block-row">n' +
            '                                <div class="row-input input-option">n' +
            '                                    <input type="text" autocomplete="off" name="Reasons[exampleId' + count + '][name]" class="optionName" placeholder="Вариант ' + count + '" maxlength="80">' +
            '                                </div>n' +
            '                                <div class="row-input input-weight">n' +
            '                                    <input type="text" autocomplete="off" name="Reasons[exampleId' + count + '][weight]" id="inputWeight" pattern="^[ 0-9]+$" maxlength="2" class="optionWeight" value="' + weight + '">' +
            '                                </div>n' +
            '                                <div class="row-input">n' +
            '                                    <img class="delDocument_set" onclick="deleteOption(event)" src="/img/cancel_newdoc.svg" alt="">n' +
            '                                </div>n' +
            '                            </div>';
        var blockListOptions = $('.block-options.addSelectOption');
        blockListOptions.append(blockOption);
        changeShowButtonDelete();
    });

    deleteOption = function (event, id) {
        event.preventDefault();
        var blockOption = event.path[2];
        if (id) {
            var linkDelete = $('#delete' + id);
            linkDelete.show();
            $('#blockDelete' + id).hide();
            blockOption = linkDelete.closest('.block-row');
        }

        var listOptions = $('.block-options.addSelectOption .block-row');
        if (listOptions.length > 1) {
            blockOption.remove();
            $('#blockDelete' + id).remove();
            changeShowButtonDelete();
        } else {
            alert('Последнюю причину удалить невозможно')
        }
    };

    showBlockDelete = function (event, id) {
        event.preventDefault();
        var listOptions = $('.block-options.addSelectOption .block-row');
        if (listOptions.length > 1) {
            $('#blockDelete' + id).removeClass('hide');
        } else {
            alert('Последнюю причину удалить невозможно')
        }
    };

    function changeShowButtonDelete() {
        var listButtonDelete = $('.block-row').find('.delete');
        if (listButtonDelete.length <= 2) {
            $('.delete-option').addClass('hide');
            for (var i = 0; i <= listButtonDelete.length - 1; i++) {
                listButtonDelete[i].classList.add('hide');
            }
        } else {
            for (var i = 0; i <= listButtonDelete.length - 1; i++) {
                listButtonDelete[i].classList.remove('hide');
            }
            // затираем  ссылку "удалить" активного радиобаттон
            $("input:radio:checked").closest('.block-row').find('.delete').addClass('hide');

        }
    }

    cancelDelete = function (event, id) {
        event.preventDefault();
        $('#delete' + id).removeClass('hide');
        $('#blockDelete' + id).addClass('hide');
    };

    changeRadioActive = function (radioId) {
        $('input:radio').prop('checked', false);
        $('#radio' + radioId).prop("checked", true);
        // затираем  ссылку "блок опций удалить" активного радиобаттон
        var id = $("input:radio:checked").closest('.block-row').find('#inputId input').val();
        $('#blockDelete' + id).addClass('hide');
        changeShowButtonDelete();
    };

    function closeNotification(event) {
        var notification = event.target;
        notification = notification.closest('.save-message');
        notification.classList.add('hide');
    }
</script>
Онлайн: 1
Реклама