after a series of bug fixes plus Non MNO logic for Sender IDs, unfinished leave management and holiday modules

This commit is contained in:
Kwesi Banson Jnr
2025-03-19 10:33:04 +00:00
parent 6cede6d980
commit cf39ff2682
112 changed files with 26812 additions and 496 deletions

View File

@@ -0,0 +1,150 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('content')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<li><a href="{!! url('infrastructure/vpn') !!}">VPN List</a></li>
<li class="active">New VPN Configs</li>
</ol>
</div>
</div>
<div class="clearfix"></div>
<div class="row">
@include('commons.notifications')
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
New VPN Configs
<div class="clearfix"></div>
</div>
{{-- start of content --}}
<div class="x_content">
<br>
{!! Form::open(['url' => 'infrastructure/storevpn', 'class' => 'form-horizontal form-label-left', 'files' => 'true']) !!}
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="partnerType">Partner Type</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('partner_type') ? 'has-error' : ''}}">
{!! Form::select('partner_type', $partner_type_arr ,old('partner_type'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'- Select -' , 'id' => 'partnerType', 'required' => 'true']) !!}
{!! $errors->first('partner_type', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="partnerTypeID">Partner *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('partner_type_id') ? 'has-error' : ''}}">
{!! Form::select('partner_type_id', $partners_arr, old('partner_type_id'), ['class' => 'form-control', 'placeholder'=>'- Select -' , 'id' => 'partnerTypeID', 'required' => 'true']) !!}
{!! $errors->first('partner_type_id', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="vpnServices">Services</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('services') ? 'has-error' : ''}}">
{!! Form::select('services', $services_arr, old('services'), ['class' => 'form-control col-md-7 col-xs-12', 'id' => 'vpnServices', 'multiple' => 'true']) !!}
{!! $errors->first('services', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="vpn_device">VPN Device (Maker/Model)</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('vpn_device') ? 'has-error' : ''}}">
{!! Form::text('vpn_device', old('vpn_device'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote VPN Device' , 'id' => 'remoteVpnDevice']) !!}
{!! $errors->first('vpn_device', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remotePeerIp">Remote Peer IP *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('remotePeerIp') ? 'has-error' : ''}}">
{!! Form::text('remote_peer_ip', old('remote_peer_ip'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote Peer IP' , 'id' => 'remotePeerIp']) !!}
{!! $errors->first('remote_peer_ip', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remoteIps">Remote IPs (ACLs) *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('partner_access_control_list') ? 'has-error' : ''}}">
{!! Form::text('partner_access_control_list', old('partner_access_control_list'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote IPs seperated by commas' , 'id' => 'remoteIps']) !!}
{!! $errors->first('partner_access_control_list', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="localIps">Local IPs (ACLs) *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('local_access_control_list') ? 'has-error' : ''}}">
{!! Form::text('local_access_control_list', old('local_access_control_list'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter local IPs seperated by commas' , 'id' => 'localIps']) !!}
{!! $errors->first('local_access_control_list', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="dateReceived">Date Received</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('date_received') ? 'has-error' : ''}}">
{!! Form::text('date_received', old('date_received'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter date' , 'id' => 'dateReceived']) !!}
{!! $errors->first('date_received', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="vpnFormFile">VPN Form</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('vpn_form') ? 'has-error' : ''}}">
{!! Form::file('vpn_form', old('vpn_form'), ['class' => 'form-control col-md-7 col-xs-12', 'id' => 'vpnFormFile']) !!}
{!! $errors->first('vpn_form', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
<div class="clearfix"></div>
<div class="ln_solid"></div>
<div class="col-md-6">
<h4 class="text-center"><strong>Phase 1 Settings</strong></h4>
<div class="form-group">
<div class="col-md-12 {{ $errors->has('phase_1_raw_settings') ? 'has-error' : ''}}">
{!! Form::textarea('phase_1_raw_settings', old('phase_1_raw_settings'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'phase1RawSettings']) !!}
{!! $errors->first('phase_1_raw_settings', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
<div class="col-md-6">
<h4 class="text-center"><strong>Phase 2 Settings</strong></h4>
<!-- <p class="text-center">Enter Phase 2 Settings</p> -->
<div class="form-group">
<div class="col-md-12 {{ $errors->has('phase_2_raw_settings') ? 'has-error' : ''}}">
{!! Form::textarea('phase_2_raw_settings', old('phase_2_raw_settings'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'phase2RawSettings']) !!}
{!! $errors->first('phase_2_raw_settings', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-md-12">
<button type="submit" class="btn btn-success btn-block"><i class="fa fa-save"></i> Save</button>
</div>
</div>
{!! Form::close() !!}
</div>
{{-- end of x_content --}}
</div>
{{-- end of x_panel --}}
</div>
</div>
</div>
@endsection
@section('javascript')
<script type="text/javascript" src="{{ url('public/assets/js/vpn_configs.js') }}"></script>
<script type="text/javascript">
$(function(){
$('select').select2();
});
</script>
@endsection

View File

@@ -0,0 +1,122 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('content')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<li><a href="{!! url('infrastructure/vpn') !!}">VPN List</a></li>
<li class="active">New VPN Configs</li>
</ol>
</div>
</div>
<div class="clearfix"></div>
<div class="row">
@include('commons.notifications')
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
New VPN Configs
<div class="clearfix"></div>
</div>
{{-- start of content --}}
<div class="x_content">
<br>
{!! Form::open(['url' => 'infrastructure/storevpn', 'class' => 'form-horizontal form-label-left']) !!}
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remoteClientMno">Remote Client/MNO *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('remote_client_mno') ? 'has-error' : ''}}">
{!! Form::text('remote_client_mno', old('remote_client_mno'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder' => '' , 'id' => 'remoteClientMno']) !!}
{!! $errors->first('remote_client_mno', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="vpn_device">VPN Device (Maker/Model)</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('vpn_device') ? 'has-error' : ''}}">
{!! Form::text('vpn_device', old('vpn_device'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote VPN Device' , 'id' => 'remoteVpnDevice']) !!}
{!! $errors->first('vpn_device', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remotePeerIp">Remote Peer IP *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('remotePeerIp') ? 'has-error' : ''}}">
{!! Form::text('remote_peer_ip', old('remote_peer_ip'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote Peer IP' , 'id' => 'remotePeerIp']) !!}
{!! $errors->first('remote_peer_ip', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remoteIps">Remote IPs (ACLs) *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('remote_ips') ? 'has-error' : ''}}">
{!! Form::text('remote_ips', old('remote_ips'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote IPs seperated by commas' , 'id' => 'remoteIps']) !!}
{!! $errors->first('remote_ips', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="localIps">Local IPs (ACLs) *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('local_ips') ? 'has-error' : ''}}">
{!! Form::text('local_ips', old('local_ips'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter local IPs seperated by commas' , 'id' => 'localIps']) !!}
{!! $errors->first('local_ips', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="goLiveDate">Go Live Date </label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('go_live_date') ? 'has-error' : ''}}">
{!! Form::text('go_live_date', old('go_live_date'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter date' , 'id' => 'goLiveDate']) !!}
{!! $errors->first('go_live_date', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
<div class="clearfix"></div>
<div class="ln_solid"></div>
<div class="col-md-12">
<h4 class="text-center"><strong>Phase 1 & 2 Settings</strong></h4>
<div class="form-group">
<div class="col-md-12 {{ $errors->has('phase_1_and_2_settings') ? 'has-error' : ''}}">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="phase1And2Settings">Phase 1 & 2 Settings </label>
{!! Form::file('phase_1_and_2_settings', old('phase_1_and_2_settings'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'phase1And2Settings']) !!}
{!! $errors->first('phase_1_and_2_settings', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<div class="col-md-12 {{ $errors->has('original_vpn_form') ? 'has-error' : ''}}">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="originalVpnForm">Original VPN Form </label>
{!! Form::file('original_vpn_form', old('original_vpn_form'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'originalVpnForm']) !!}
{!! $errors->first('original_vpn_form', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-md-12">
<button type="submit" class="btn btn-success btn-block"><i class="fa fa-save"></i> Save</button>
</div>
</div>
{!! Form::close() !!}
</div>
{{-- end of x_content --}}
</div>
{{-- end of x_panel --}}
</div>
</div>
</div>
@endsection
@section('javascript')
<script type="text/javascript">
$(function(){
$('select').select2();
});
</script>
@endsection

View File

@@ -0,0 +1,205 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('content')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<li><a href="{!! url('infrastructure/vpn') !!}">VPN List</a></li>
<li class="active">New VPN Configs</li>
</ol>
</div>
</div>
<div class="clearfix"></div>
<div class="row">
@include('commons.notifications')
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
New VPN Configs
<div class="clearfix"></div>
</div>
{{-- start of content --}}
<div class="x_content">
<br>
{!! Form::open(['url' => 'infrastructure/storevpn', 'class' => 'form-horizontal form-label-left']) !!}
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remoteClientMno">Remote Client/MNO *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('remote_client_mno') ? 'has-error' : ''}}">
{!! Form::text('remote_peer_ip', old('remote_client_mno'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder' => '' , 'id' => 'remoteClientMno']) !!}
{!! $errors->first('remote_client_mno', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remotePeerIp">Remote Peer IP *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('server_number') ? 'has-error' : ''}}">
{!! Form::text('remote_peer_ip', old('remote_peer_ip'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote Peer IP' , 'id' => 'remotePeerIp']) !!}
{!! $errors->first('remote_peer_ip', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remoteIps">Remote IPs (ACLs) *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('friendly_name') ? 'has-error' : ''}}">
{!! Form::text('remote_ips', old('remote_ips'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Remote IPs seperated by commas' , 'id' => 'remoteIps']) !!}
{!! $errors->first('remote_ips', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="localIps">Local IPs (ACLs) *</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('local_ips') ? 'has-error' : ''}}">
{!! Form::text('local_ips', old('local_ips'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter local IPs seperated by commas' , 'id' => 'localIps']) !!}
{!! $errors->first('local_ips', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="goLiveDate">Go Live Date </label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('go_live_date') ? 'has-error' : ''}}">
{!! Form::text('go_live_date', old('go_live_date'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter date' , 'id' => 'goLiveDate']) !!}
{!! $errors->first('go_live_date', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
<div class="clearfix"></div>
<div class="ln_solid"></div>
<div class="col-md-6">
<h4 class="text-center"><strong>Phase 1 Settings</strong></h4>
<!-- <p class="text-center">Enter Phase 1 Settings</p> -->
<div class="form-group">
<label class="control-label col-md-5" for="keyExchangeVersion">Key Exchange Version (IKE) </label>
<div class="col-md-6 {{ $errors->has('key_exchange_version') ? 'has-error' : ''}}">
{!! Form::text('key_exchange_version', old('key_exchange_version'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'keyExchangeVersion']) !!}
{!! $errors->first('key_exchange_version', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="encryptionType">Encyption Type (Proposal) </label>
<div class="col-md-6 {{ $errors->has('encryptionType') ? 'has-error' : ''}}">
{!! Form::text('encryptionType', old('encryptionType'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'encryptionType']) !!}
{!! $errors->first('encryptionType', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="negotiationMode">Negotiation Mode</label>
<div class="col-md-6 {{ $errors->has('negotiation_mode') ? 'has-error' : ''}}">
{!! Form::text('main_negotiation_modeuse', old('negotiation_mode'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'negotiationMode']) !!}
{!! $errors->first('negotiation_mode', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="dhGroup">Diffie-Hellman Group- IKE </label>
<div class="col-md-6 {{ $errors->has('dhgroup') ? 'has-error' : ''}}">
{!! Form::text('dhgroup', old('dhgroup'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'dhGroup']) !!}
{!! $errors->first('dhgroup', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="remarks">Encryption Algorithm </label>
<div class="col-md-6 {{ $errors->has('remarks') ? 'has-error' : ''}}">
{!! Form::text('encryption_algorithm', old('encryption_algorithm'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'encryption_algorithm']) !!}
{!! $errors->first('encryption_algorithm', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="hashingAlgorithm">Hashing Algorithm </label>
<div class="col-md-6{{ $errors->has('hashing_algorithm') ? 'has-error' : ''}}">
{!! Form::text('remarks', old('hashing_algorithm'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'hashingAlgorithm']) !!}
{!! $errors->first('hashing_algorithm', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="remarks">Renegotiate IKE SA every </label>
<div class="col-md-6 {{ $errors->has('renegotiate_ike_sa') ? 'has-error' : ''}}">
{!! Form::text('remarks', old('renegotiate_ike_sa'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'renegotiateIkeSa']) !!}
{!! $errors->first('renegotiate_ike_sa', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
<div class="col-md-6">
<h4 class="text-center"><strong>Phase 2 Settings</strong></h4>
<!-- <p class="text-center">Enter Phase 2 Settings</p> -->
<div class="form-group">
<label class="control-label col-md-5" for="ipSec">IPSec </label>
<div class="col-md-6 {{ $errors->has('ipsec') ? 'has-error' : ''}}">
{!! Form::text('ipsec', old('ipsec'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'ipSec']) !!}
{!! $errors->first('ipsec', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="encryptionAlgIpsec">Encryption Algorithm IPSec </label>
<div class="col-md-6 {{ $errors->has('encryption_alg_ipsec') ? 'has-error' : ''}}">
{!! Form::text('encryption_alg_ipsec', old('encryption_alg_ipsec'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'encryptionAlgIpsec']) !!}
{!! $errors->first('encryption_alg_ipsec', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="hashingAlgIpsec">Hashing Algorithm IPSec</label>
<div class="col-md-6 {{ $errors->has('hashing_alg_ipsec') ? 'has-error' : ''}}">
{!! Form::text('hashing_alg_ipsec', old('hashing_alg_ipsec'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'hashingAlgIpsec']) !!}
{!! $errors->first('hashing_alg_ipsec', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="renegotiateIpsecSa">Renegotiate IPSec SA every</label>
<div class="col-md-6 {{ $errors->has('renegotiate_ipsec_sa') ? 'has-error' : ''}}">
{!! Form::text('renegotiate_ipsec_sa', old('renegotiate_ipsec_sa'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'' , 'id' => 'renegotiateIpsecSa']) !!}
{!! $errors->first('renegotiate_ipsec_sa', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="perfectForwardSecrecy">Perfect forward secrecy (pfs) </label>
<div class="col-md-6 col-sm-8 {{ $errors->has('perfect_forward_secrecy') ? 'has-error' : ''}}">
{!! Form::text('perfect_forward_secrecy', old('perfect_forward_secrecy'), ['class' => 'form-control col-md-7', 'placeholder'=>'' , 'id' => 'perfectForwardSecrecy']) !!}
{!! $errors->first('perfect_forward_secrecy', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="encryptionDomainRemote">Encryption Domain (Remote) </label>
<div class="col-md-6 {{ $errors->has('encryption_domain_remote') ? 'has-error' : ''}}">
{!! Form::text('encryption_domain', old('encryption_domain_remote'), ['class' => 'form-control col-md-7', 'placeholder'=>'' , 'id' => 'encryptionDomainRemote']) !!}
{!! $errors->first('encryption_domain_remote', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-5" for="encryptionDomainLocal">Encryption Domain (Local) </label>
<div class="col-md-6 {{ $errors->has('encryption_domain_local') ? 'has-error' : ''}}">
{!! Form::text('encryption_domain', old('encryption_domain_local'), ['class' => 'form-control col-md-7', 'placeholder'=>'' , 'id' => 'encryptionDomainLocal']) !!}
{!! $errors->first('encryption_domain_local', '<p class="help-block">:message</p>') !!}
</div>
</div>
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-md-12">
<button type="submit" class="btn btn-success btn-block"><i class="fa fa-save"></i> Save</button>
</div>
</div>
{!! Form::close() !!}
</div>
{{-- end of x_content --}}
</div>
{{-- end of x_panel --}}
</div>
</div>
</div>
@endsection
@section('javascript')
<script type="text/javascript">
$(function(){
$('select').select2();
});
</script>
@endsection

View File

@@ -0,0 +1,98 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('content')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<li class="active"><a href="{!! url('senderids') !!}">Sender IDs</a></li>
<li class="active">Update Sender ID</li>
</ol>
</div>
</div>
<div class="clearfix"></div>
<div class="row">
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
Update Sender ID
@include('commons.notifications')
<div class="clearfix"></div>
</div>
{{-- start of content --}}
<div class="x_content">
<br>
{!! Form::model($senderid, [
'method' => 'PATCH',
'url' => ['senderids', $senderid],
'class' => 'form-horizontal form-label-left'
]) !!}
<div class="row">
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="senderIDD">Sender ID</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('senderid') ? 'has-error' : ''}}">
{!! Form::text('senderid', old('senderid'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter sender ID' , 'id' => 'senderIDD', 'required' => 'true']) !!}
{!! $errors->first('name', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="clientID">Client</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('name') ? 'has-error' : ''}}">
{!! Form::select('client_id', $clients, old('client_id'), ['class' => 'form-control', 'placeholder'=>'Select Client' , 'id' => 'clientID', 'required' => 'true']) !!}
{!! $errors->first('client_id', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="status">Status</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('status') ? 'has-error' : ''}}">
{!! Form::select('status', $status ,old('status'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Select Status ' , 'id' => 'status', 'required' => 'true']) !!}
{!! $errors->first('status', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="network">Network</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('network') ? 'has-error' : ''}}">
{!! Form::select('network_id', $network_arr, old('network_id'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Select Network ' , 'id' => 'network', 'required' => 'true']) !!}
{!! $errors->first('network', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="remarks">Remarks</label>
<div class="col-md-6 col-sm-6 col-xs-12 {{ $errors->has('remarks') ? 'has-error' : ''}}">
{!! Form::text('remarks', old('remarks'), ['class' => 'form-control col-md-7 col-xs-12', 'placeholder'=>'Enter remarks here' , 'id' => 'remarks']) !!}
{!! $errors->first('remarks', '<p class="help-block">:message</p>') !!}
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-md-6 col-sm-6 col-xs-12 col-md-offset-3">
<button type="submit" class="btn btn-success btn-block"><i class="fa fa-save"></i> Submit</button>
</div>
</div>
{!! Form::close() !!}
</div>
{{-- end of x_content --}}
</div>
{{-- end of x_panel --}}
</div>
</div>
</div>
@endsection
@section('javascript')
<script type="text/javascript">
$(function(){
$('select').select2();
});
</script>
@endsection

View File

@@ -0,0 +1,187 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('css')
@endsection('css')
@section('content')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<!-- <li><a href="{!! url('infrastructure/vpn') !!}">VPN List</a></li> -->
<li class="active">VPN List</li>
</ol>
</div>
</div>
<div class="x_content">
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
<h2><i class="fa fa-shield"></i> VPN Configurations</h2>
<div class="pull-right">
<a class="btn btn-primary btn-sm" href="{!! url('infrastructure/vpn-create') !!}"><i class="fa fa-plus-circle"></i> New Config
</a>
</div>
<div class="clearfix"></div>
</div>
<div class="x_content">
<div id="vpnListTableP"></div>
<table class="table table-striped projects">
<thead>
<tr>
<th style="width: 1%">#</th>
<th style="width: 20%">Partner Name</th>
<th>Partner ACL</th>
<th style="width: 20%">Edit</th>
</tr>
</thead>
<tbody>
@if ($vpn_list->isEmpty())
<tr>
<td class="" colspan="6">No Records found</td>
</tr>
@else
<?php $counter = 1; ?>
@foreach ($vpn_list as $row)
<tr>
<td>{{ $counter }}</td>
<td>
<a>{{ $row->mno_info->name }} ({{ $row->mno_info->country }})</a>
<br />
<small class="text-success"><u>Peer : {{ $row->remote_peer_ip }}</u></small>
<br>
<small>{{ $row->vpn_device }}</small>
</td>
<td>
<ul class="list">
<li>
<b>Local ACL </b> : {{ $row->local_access_control_list }}
</li>
<li>
<b>Remote ACL </b> : {{ $row->partner_access_control_list }}
</li>
</ul>
</td>
<td>
<a href="#" class="btn btn-info btn-xs"><i class="fa fa-pencil"></i> Edit </a>
<!-- <a href="#" class="btn btn-danger btn-xs"><i class="fa fa-trash-o"></i> Delete </a> -->
</td>
</tr>
<?php $counter++; ?>
@endforeach
@endif
</tbody>
</table>
{{ $vpn_list->links() }} <br>
Page : {{ $vpn_list->currentPage() }} of {{ $vpn_list->lastPage() }} |
Total Records : <span id="totalRecords">{{ $vpn_list->total() }}</span>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('javascript')
<script src="{!! url('public/assets/vendors/tabulator/js/tabulator.js') !!}"></script>
<script type="text/javascript">
$(document).ready(function(){
// function link(cell, formatterParams){
// var url = cell.getValue();
// var rowID = cell.getData().id
// return "<a href='"+ base_url + "/vpnlist/"+rowID+"/edit' class='btn btn-link'>"+url+"</a>";
// }
// function cellDesign (cell, formatterParams){
// var value = cell.getValue();
// return "<span style='color:#54B4D3; font-weight:bold;'>" + value + "</span>";
// }
// function statusDesign (cell, formatterParams){
// var value = cell.getValue();
// if(value === 'Approved'){
// return "<span style='color:#3FB449; font-weight:bold;'>" + value + "</span>";
// }
// else{
// return "<span style='color:#E4A11B;'>" + value + "</span>";
// }
// }
// var table = new Tabulator("#vpnListTable", {
// ajaxURL: "senderids/all",
// paginationSize: 15,
// layout: "fitColumns",
// pagination: "remote",
// selectable: false,
// printAsHtml: true,
// ajaxLoaderLoading: $('#logo_spinner').html(),
// columns: [
// {
// title: "Partner",
// field: "remote_partner_name",
// sorter: "string",
// formatter:link,
// },
// {
// title: "VPN Device",
// field: "vpn_device",
// sorter: "string",
// },
// {
// title: "Remote Peer IP",
// field: "remote_peer_ip",
// sorter: "string",
// formatter: cellDesign,
// },
// {
// title: "Remote IPs",
// field: "remote_ips",
// sorter: "string",
// formatter: statusDesign,
// },
// {
// title: "Local IPs",
// field: "local_ips",
// sorter: "string",
// },
// {
// title: "Go-Live Date",
// field: "go_live_date",
// sorter: "string",
// },
// {
// title: "Created By",
// field: "createdBy",
// sorter: "string",
// },
// {
// title: "Last Modified By",
// field: "modifiedBy",
// sorter: "string",
// }
// ],
// rowClick:function(e, row){
// var userID = row.getData().id;
// //$('#userEditModal').modal('show');
// },
// });
// $('#keywordField').on('keyup', function(){
// console.log('up');
// var keyword = $(this).val();
// table.setData("senderids/all?keyword=" + keyword);
// });
// 172.17.1.40, 172.17.1.13, 172.17.1.15, 172.17.1.39, 172.17.1.41, 172.17.1.42, 10.3.104.135, 172.17.1.42:2775, 172.17.12.26
});
</script>
@endsection

View File

@@ -0,0 +1,88 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('css')
@endsection('css')
@section('content')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<li class="active">Servers</li>
</ol>
</div>
</div>
<div class="x_content">
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
<h2><i class="fa fa-align-left"></i> VPN Configurations</h2>
<div class="pull-right">
<a class="btn btn-primary btn-sm" href="{!! url('infrastructure/vpn-create') !!}"><i class="fa fa-plus-circle"></i> New Config
</a>
</div>
<div class="clearfix"></div>
</div>
<div class="x_content">
<div class="col-md-12">
@if ($vpn_list->isEmpty())
<tr>
<td class="" colspan="6">No Records found</td>
</tr>
@else
@foreach ($vpn_list as $row)
<div class="col-md-3 col-sm-6 col-xs-12">
<div class="pricing">
<div class="title">
<h2>{{ $row->mno_info->name }}</h2>
<h1>Peer : {{ $row->remote_peer_ip }}</h1>
</div>
<div class="x_content">
<div class="">
<div class="pricing_features">
<ul class="list-unstyled text-left">
<li>
{{ $row->partner_access_control_list }}
</li>
<li>
{{ $row->click_access_control_list }}
</li>
</ul>
</div>
</div>
<div class="pricing_footer">
<a href="javascript:void(0);" class="btn btn-success btn-block" role="button">Download <span> Form!</span></a>
</div>
</div>
</div>
</div>
@endforeach
@endif
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('javascript')
<script src="{!! url('public/assets/vendors/tabulator/js/tabulator.js') !!}"></script>
<script type="text/javascript">
$(document).ready(function(){
});
</script>
@endsection

View File

@@ -0,0 +1,188 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('css')
@endsection
@section('content')
@include('vpn.partials.phases_show')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<!-- <li><a href="{!! url('infrastructure/vpn') !!}">VPN List</a></li> -->
<li class="active">VPN Config List</li>
</ol>
</div>
<div class="title_rightP">
<div class="row">
<form method="GET" action="">
<div class="col-md-5 col-sm-5 col-xs-12 form-group pull-right top_search" style="margin-top: -2px;">
<div class="input-group">
<input type="text" name="keyword" class="form-control" id="search" placeholder="Keyword here...">
<span class="input-group-btn">
<button type="button" class="btn btn-primary" style="color: #fff;" type="button">Go!</button>
</span>
</div>
</div>
</form>
</div>
<div class="row">
<div class="col-sm-12">
<div class="pull-right"></div>
</div>
</div>
</div>
</div>
<div class="x_content">
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
<h2><i class="fa fa-shield"></i> VPN Configs | <span class="green"><em> <b> Click Peer IP : 216.55.137.19 </b></em> </span> </h2>
<div class="pull-right">
<a class="btn btn-primary btn-sm" href="{!! url('infrastructure/vpn-create') !!}"><i class="fa fa-plus-circle"></i> New Config
</a>
</div>
<div class="clearfix"></div>
</div>
<div class="x_content">
<div id="vpnListTableP"></div>
<table class="table table-striped projects">
<thead>
<tr>
<th style="width: 1%">#</th>
<th style="width: 20%">Partner Name</th>
<th>Encrypted Domain(ACL)</th>
<th style="width: 20%">Actions</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('javascript')
<script type="text/javascript">
$(document).ready(function(){
console.log('heere at the wall');
$('#search').on('keyup', function(){
console.log('clicked');
search();
});
// var pop = keyword = $('#search').val();
// console.log(pop == '');
search();
function search(){
var keyword = $('#search').val();
console.log(keyword);
// if (keyword == '') {
// }
$.post('{{ url("infrastructure/vpn/raw") }}',{
_token: $('meta[name="csrf-token"]').attr('content'),
keyword:keyword
},
function(data){
table_post_row(data);
console.log(data);
});
}
// table row with ajax
function table_post_row(result){
let htmlView = '';
if(result.data.length <= 0){
htmlView += `
<tr>
<td colspan="6">No data.</td>
</tr>`;
}
for(let i = 0; i < result.data.length; i++){
let theVpnDevice = result.data[i].vpn_device == null ? 'N/A' : result.data[i].vpn_device;
htmlView += `
<tr>
<td>`+ (i+1) +`</td>
<td><a>` + result.data[i].mnoName + `</a><br />
<small class="text-success"><u>Peer : ` + result.data[i].remote_peer_ip + `</u></small> <br>
<small>`+ theVpnDevice + `</small>
</td>
<td>
<ul class="list">
<li> <b>Local ACL </b> : ` + result.data[i].local_access_control_list + `</li>
<li><b>Remote ACL </b> : ` + result.data[i].partner_access_control_list + `</li>
</ul>
</td>
<td>
<button class="btn btn-warning btn-xs viewConfigsBtn""><i class="fa fa-eye"></i> View</button>
<input type="hidden" name="vpn_list_id" class="vpnListId" value="`+ result.data[i].id + `">
<a href="" class="btn btn-info btn-xs"` + base_url + `/infrastructure/vpn/edit/`+result.data[i].id+`/edit"><i class="fa fa-edit"></i> Edit</a>
</td>
</tr>`;
}
$('tbody').html(htmlView);
}
$(document).on('click', '.viewConfigsBtn', function(ckevt){
// $('.viewConfigsBtn').click(function(ckevt){
ckevt.preventDefault();
var vpnListIDD = $(this).siblings('.vpnListId').val();
console.log('hipnotized at : ' + vpnListIDD);
$.ajax({
type: "GET",
url: base_url + '/infrastructure/vpn/get_phases/' + vpnListIDD,
processData: false,
contentType: false,
async: false,
success: function (data){
console.log(data);
if (data.code === 1) {
// console.log(theIDD);
// $('#paymentIdEdit').val(theIDD);
// $('#financeServicesEdit').val(data.services_arr).change();
// $('#invoiceNumberEdit').val(data.result.invoice_number);
// $('#invoiceAmountEdit').val(data.result.invoice_amount);
// $('#invoiceDateEdit').val(data.result.invoice_date);
// $('#financeShortCodeEdit').val(data.result.short_code);
// $('#invoiceStatusEdit').val(data.result.invoice_status).change();
// $('#remarksEdit').val(data.result.remarks);
$('#phasesShowModal').modal('show');
}
else if (data.code > 1) {
$.alert({
title: 'Alert!',
content: data.msg,
});
}
else {
$.alert({
title: 'Alert!',
content: 'Your request could not be handled. Try again !',
});
}
}
});
});
});
</script>
@endsection

View File

@@ -0,0 +1,116 @@
@extends('layouts.master')
@section('page_title')
@if(isset($page_title))
{{ $page_title }}
@endif
@endsection
@section('css')
@endsection('css')
@section('content')
<div class="">
<div class="page-title">
<div class="title_left" style="width:800px !important;">
<ol class="breadcrumb">
<li><a href="{!! url('dashboard') !!}">Dashboard</a></li>
<li class="active">Servers</li>
</ol>
</div>
</div>
<div class="x_content">
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
<h2><i class="fa fa-align-left"></i> VPN Configurations</h2>
<div class="pull-right">
<a class="btn btn-primary btn-sm" href="{!! url('infrastructure/vpn-create') !!}"><i class="fa fa-plus-circle"></i> New Config
</a>
</div>
<div class="clearfix"></div>
</div>
<div class="x_content">
<div id="">
<?php $counter = 1; ?>
@foreach($vpn_list as $row)
@if($row->partner_vpn_form == null)
<?php continue; ?>
@endif
<p class="vpnListFile<?php echo $counter; ?> ">
{{ url('public/vpn_form_files/' . $row->partner_vpn_form) }}
</p>
<input type="file" name="vpn_list_file" value="<?php url('public/vpn_form_files/' . $row->partner_vpn_form); ?>">
<?php $counter++; ?>
@endforeach
</div>
</div>
</div>
</div>
</div>
</div>
@endsection
@section('javascript')
<script src="{!! url('public/assets/vendors/tabulator/js/tabulator.js') !!}"></script>
<script src="{!! url('public/assets/vendors/tabulator/js/xlsx.full.min.js') !!}"></script>
<script type="text/javascript">
$(document).ready(function(){
var reader = new FileReader();
var targetFile = $('#vpnListFile1')
reader.readAsArrayBuffer(targetFile);
reader.onload = function(event){
var data = new Uint8Array(reader.result);
var work_book = XLSX.read(data, {type:'array'});
var sheet_name = work_book.SheetNames;
var sheet_data = XLSX.utils.sheet_to_json(work_book.Sheets[sheet_name[0]], {header:1});
if(sheet_data.length > 0)
{
var table_output = '<table class="table table-striped table-bordered">';
for(var row = 0; row < sheet_data.length; row++)
{
table_output += '<tr>';
for(var cell = 0; cell < sheet_data[row].length; cell++)
{
if(row == 0)
{
table_output += '<th>'+sheet_data[row][cell]+'</th>';
}
else
{
table_output += '<td>'+sheet_data[row][cell]+'</td>';
}
}
table_output += '</tr>';
}
table_output += '</table>';
document.getElementById('excel_data').innerHTML = table_output;
}
excel_file.value = '';
}
});
</script>
@endsection

View File

@@ -0,0 +1,16 @@
<div class="modal fade" id="phasesShowModal" tabindex="-1" role="dialog" aria-labelledby="phasesShowModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title text-center" id="phasesShowModalLabelHeading">Phase 1 & 2 Configs</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<p>One fine body</p>
</div>
</div>
</div>
</div>