272 lines
16 KiB
PHP
272 lines
16 KiB
PHP
<section class="no-print">
|
|
@include('crm::layouts.styles')
|
|
<nav class="navbar navbar-default crm-nav-wrap">
|
|
<div class="container-fluid">
|
|
<div class="navbar-header">
|
|
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#crm-navbar-collapse" aria-expanded="false">
|
|
<span class="sr-only">Toggle navigation</span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
</button>
|
|
<a class="navbar-brand crm-nav-brand" href="{{action([\Modules\Crm\Http\Controllers\CrmDashboardController::class, 'index'])}}">
|
|
<i class="fas fa-broadcast-tower"></i>
|
|
{{__('crm::lang.crm')}}
|
|
</a>
|
|
</div>
|
|
|
|
<div class="collapse navbar-collapse" id="crm-navbar-collapse">
|
|
@php
|
|
$business_id = $__business_id ?? session()->get('user.business_id', auth()->user()->business_id ?? null);
|
|
$crm_settings_nav = $__crm_settings ?? \Modules\Crm\Utils\TelemarketingUtil::mergeSettings(
|
|
(new \Modules\Crm\Utils\CrmUtil())->getCrmSettings($business_id)
|
|
);
|
|
$is_admin_nav = $__is_admin ?? app(\App\Utils\Util::class)->is_admin(auth()->user(), $business_id);
|
|
$tm_enabled = ! empty($crm_settings_nav['enable_telemarketing']);
|
|
$can_telemarketing = auth()->user()->can('superadmin')
|
|
|| auth()->user()->can('crm.telemarketing.access')
|
|
|| $is_admin_nav
|
|
|| auth()->user()->can('crm.access_all_leads')
|
|
|| auth()->user()->can('crm.access_own_leads');
|
|
$seg2 = request()->segment(2);
|
|
$seg3 = request()->segment(3);
|
|
$tax_type = request()->get('type');
|
|
$tm_active = $tm_enabled && $can_telemarketing && (
|
|
$seg2 === 'telemarketing' || $seg2 === 'phone-list'
|
|
);
|
|
$more_active = in_array($seg2, [
|
|
'reports', 'proposal-template', 'proposals', 'call-log',
|
|
'all-contacts-login', 'commissions', 'settings', 'b2b-marketplace',
|
|
], true) || in_array($tax_type, ['source', 'life_stage', 'followup_category'], true);
|
|
@endphp
|
|
|
|
<ul class="nav navbar-nav">
|
|
@if(auth()->user()->can('crm.access_all_leads') || auth()->user()->can('crm.access_own_leads'))
|
|
<li @if($seg2 == 'leads') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\LeadController::class, 'index']). '?lead_view=list_view'}}">
|
|
<i class="fas fa-user-tag"></i> @lang('crm::lang.leads')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
|
|
@if(auth()->user()->can('crm.access_all_schedule') || auth()->user()->can('crm.access_own_schedule'))
|
|
<li @if($seg2 == 'follow-ups') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\ScheduleController::class, 'index'])}}">
|
|
<i class="fas fa-calendar-check"></i> @lang('crm::lang.follow_ups')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
|
|
@if(auth()->user()->can('crm.access_all_campaigns') || auth()->user()->can('crm.access_own_campaigns'))
|
|
<li @if($seg2 == 'campaigns') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CampaignController::class, 'index'])}}">
|
|
<i class="fas fa-bullhorn"></i> @lang('crm::lang.campaigns')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
|
|
@if($tm_enabled && $can_telemarketing)
|
|
<li class="dropdown @if($tm_active) active @endif">
|
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
|
|
<i class="fas fa-headset"></i> @lang('crm::lang.nav_group_telemarketing') <span class="caret"></span>
|
|
</a>
|
|
<ul class="dropdown-menu">
|
|
<li @if($seg2 == 'telemarketing' && empty($seg3)) class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CallWorkspaceController::class, 'index'])}}">
|
|
<i class="fas fa-headset"></i> @lang('crm::lang.nav_tm_workspace')
|
|
</a>
|
|
</li>
|
|
@if(auth()->user()->can('crm.access_all_leads') || auth()->user()->can('crm.access_own_leads'))
|
|
<li @if($seg2 == 'phone-list') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\PhoneListController::class, 'index'])}}">
|
|
<i class="fas fa-list-ol"></i> @lang('crm::lang.phone_list')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
@if($is_admin_nav || auth()->user()->can('crm.telemarketing.view_all_queue'))
|
|
<li @if($seg2 == 'telemarketing' && $seg3 == 'queue') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CallQueueController::class, 'index'])}}">
|
|
<i class="fas fa-list"></i> @lang('crm::lang.call_queue')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
|
|
@if(
|
|
($is_admin_nav || auth()->user()->can('crm.telemarketing.supervisor_dashboard'))
|
|
|| ($is_admin_nav || auth()->user()->can('crm.telemarketing.manage_companies'))
|
|
|| ($is_admin_nav || auth()->user()->can('crm.telemarketing.manage_offers'))
|
|
|| ($is_admin_nav || auth()->user()->can('crm.telemarketing.manage_scripts'))
|
|
)
|
|
<li role="separator" class="divider"></li>
|
|
<li class="dropdown-header">@lang('crm::lang.nav_tm_management')</li>
|
|
@endif
|
|
|
|
@if($is_admin_nav || auth()->user()->can('crm.telemarketing.supervisor_dashboard'))
|
|
<li @if($seg2 == 'telemarketing' && $seg3 == 'dashboard') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\TelemarketingDashboardController::class, 'index'])}}">
|
|
<i class="fas fa-chart-line"></i> @lang('crm::lang.supervisor_dashboard')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
@if($is_admin_nav || auth()->user()->can('crm.telemarketing.manage_companies'))
|
|
<li @if($seg2 == 'telemarketing' && $seg3 == 'companies') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CompanyProfileController::class, 'index'])}}">
|
|
<i class="fas fa-building"></i> @lang('crm::lang.companies')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
@if($is_admin_nav || auth()->user()->can('crm.telemarketing.manage_offers'))
|
|
<li @if($seg2 == 'telemarketing' && $seg3 == 'offers') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\OfferCatalogController::class, 'index'])}}">
|
|
<i class="fas fa-gift"></i> @lang('crm::lang.offer_catalog')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
@if($is_admin_nav || auth()->user()->can('crm.telemarketing.manage_scripts'))
|
|
<li @if($seg2 == 'telemarketing' && $seg3 == 'scripts') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CallScriptController::class, 'index'])}}">
|
|
<i class="fas fa-scroll"></i> @lang('crm::lang.call_scripts')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
</ul>
|
|
</li>
|
|
@elseif(auth()->user()->can('crm.access_all_leads') || auth()->user()->can('crm.access_own_leads'))
|
|
<li @if($seg2 == 'phone-list') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\PhoneListController::class, 'index'])}}">
|
|
<i class="fas fa-list-ol"></i> @lang('crm::lang.phone_list')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
|
|
<li class="dropdown @if($more_active) active @endif">
|
|
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
|
|
<i class="fas fa-ellipsis-h"></i> @lang('crm::lang.nav_group_more') <span class="caret"></span>
|
|
</a>
|
|
<ul class="dropdown-menu">
|
|
@can('crm.view_reports')
|
|
<li @if($seg2 == 'reports') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\ReportController::class, 'index'])}}">
|
|
<i class="fas fa-chart-bar"></i> @lang('report.reports')
|
|
</a>
|
|
</li>
|
|
@endcan
|
|
|
|
@if((auth()->user()->can('crm.view_all_call_log') || auth()->user()->can('crm.view_own_call_log')) && config('constants.enable_crm_call_log'))
|
|
<li @if($seg2 == 'call-log') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CallLogController::class, 'index'])}}">
|
|
<i class="fas fa-phone-alt"></i> @lang('crm::lang.call_log')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
|
|
<li @if($seg2 == 'proposals') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\ProposalController::class, 'index'])}}">
|
|
<i class="fas fa-file-contract"></i> @lang('crm::lang.proposals')
|
|
</a>
|
|
</li>
|
|
<li @if($seg2 == 'proposal-template') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\ProposalTemplateController::class, 'index'])}}">
|
|
<i class="fas fa-file-alt"></i> @lang('crm::lang.proposal_template')
|
|
</a>
|
|
</li>
|
|
|
|
@can('crm.access_contact_login')
|
|
<li role="separator" class="divider"></li>
|
|
<li @if($seg2 == 'all-contacts-login') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\ContactLoginController::class, 'allContactsLoginList'])}}">
|
|
<i class="fas fa-sign-in-alt"></i> @lang('crm::lang.contacts_login')
|
|
</a>
|
|
</li>
|
|
<li @if($seg2 == 'commissions') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\ContactLoginController::class, 'commissions'])}}">
|
|
<i class="fas fa-percent"></i> @lang('crm::lang.commissions')
|
|
</a>
|
|
</li>
|
|
@endcan
|
|
|
|
@if(
|
|
auth()->user()->can('crm.access_sources')
|
|
|| auth()->user()->can('crm.access_life_stage')
|
|
)
|
|
<li role="separator" class="divider"></li>
|
|
@endif
|
|
|
|
@can('crm.access_sources')
|
|
<li @if($tax_type == 'source') class="active" @endif>
|
|
<a href="{{action([\App\Http\Controllers\TaxonomyController::class, 'index']) . '?type=source'}}">
|
|
<i class="fas fa-search"></i> @lang('crm::lang.sources')
|
|
</a>
|
|
</li>
|
|
@endcan
|
|
|
|
@can('crm.access_life_stage')
|
|
<li @if($tax_type == 'life_stage') class="active" @endif>
|
|
<a href="{{action([\App\Http\Controllers\TaxonomyController::class, 'index']) . '?type=life_stage'}}">
|
|
<i class="fas fa-life-ring"></i> @lang('crm::lang.life_stage')
|
|
</a>
|
|
</li>
|
|
<li @if($tax_type == 'followup_category') class="active" @endif>
|
|
<a href="{{action([\App\Http\Controllers\TaxonomyController::class, 'index']) . '?type=followup_category'}}">
|
|
<i class="fas fa-tags"></i> @lang('crm::lang.followup_category')
|
|
</a>
|
|
</li>
|
|
@endcan
|
|
|
|
@if(auth()->user()->can('crm.access_b2b_marketplace') && config('constants.enable_b2b_marketplace'))
|
|
<li @if($seg2 == 'b2b-marketplace') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CrmMarketplaceController::class, 'index'])}}">
|
|
<i class="fas fa-store"></i> @lang('crm::lang.b2b_marketplace')
|
|
</a>
|
|
</li>
|
|
@endif
|
|
|
|
<li role="separator" class="divider"></li>
|
|
<li @if($seg2 == 'settings') class="active" @endif>
|
|
<a href="{{action([\Modules\Crm\Http\Controllers\CrmSettingsController::class, 'index'])}}">
|
|
<i class="fas fa-cog"></i> @lang('business.settings')
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
</section>
|
|
|
|
<script>
|
|
(function initCrmNavDropdowns() {
|
|
if (typeof jQuery === 'undefined') {
|
|
setTimeout(initCrmNavDropdowns, 50);
|
|
return;
|
|
}
|
|
|
|
jQuery(function ($) {
|
|
var $nav = $('.crm-nav-wrap');
|
|
|
|
$nav.on('click', '.dropdown-toggle', function (e) {
|
|
e.preventDefault();
|
|
e.stopPropagation();
|
|
|
|
var $item = $(this).closest('.dropdown');
|
|
var willOpen = !$item.hasClass('open');
|
|
|
|
$nav.find('.dropdown').removeClass('open');
|
|
|
|
if (willOpen) {
|
|
$item.addClass('open');
|
|
}
|
|
});
|
|
|
|
$(document).on('click', function () {
|
|
$nav.find('.dropdown').removeClass('open');
|
|
});
|
|
|
|
$nav.on('click', '.dropdown-menu', function (e) {
|
|
e.stopPropagation();
|
|
});
|
|
});
|
|
})();
|
|
</script>
|