Datatable kontak dan user
This commit is contained in:
parent
5486e7cbbd
commit
22cfa5def0
@ -130,4 +130,8 @@ class AdminRefundController extends Controller
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
public function listRefund(Request $request){
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -8,6 +8,7 @@ use App\Http\Controllers\Controller;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Throwable;
|
||||
use Yajra\DataTables\DataTables;
|
||||
|
||||
class AdminSettingController extends Controller
|
||||
{
|
||||
@ -16,10 +17,7 @@ class AdminSettingController extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$settings = Setting::all();
|
||||
return view('admin.setting.index', [
|
||||
'settings' => $settings,
|
||||
]);
|
||||
return view('admin.setting.index');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -85,4 +83,53 @@ class AdminSettingController extends Controller
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function listSetting(Request $request){
|
||||
try{
|
||||
$subQuery = Setting::latest()->select('id','bulan','tahun','persentase','status');
|
||||
|
||||
if($request->has('search') && !empty($request->search['value'])){
|
||||
$searchSetting = $request->search['value'];
|
||||
|
||||
if (!is_numeric($searchSetting)) {
|
||||
$subQuery->where(function($a) use ($searchSetting){
|
||||
$a->whereRaw('LOWER(status) LIKE ?', ['%' . strtolower($searchSetting) . '%']);
|
||||
});
|
||||
} else {
|
||||
$subQuery->where(function($a) use ($searchSetting){
|
||||
$a->where('bulan',$searchSetting)
|
||||
->orWhere('tahun',$searchSetting)
|
||||
->orWhere('persentase',$searchSetting);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$querySetting = Setting::from(DB::raw("({$subQuery->toSql()}) as tmp"))
|
||||
->mergeBindings($subQuery->getQuery()) // Menggabungkan binding parameters
|
||||
->select('*')
|
||||
->get();
|
||||
|
||||
if($request->ajax()){
|
||||
return DataTables::of($querySetting)
|
||||
->addIndexColumn()
|
||||
->addColumn('action', function($row){
|
||||
$status = $row->status ? 'checked' : '';
|
||||
$html_code = '<label class="switch">
|
||||
<input type="checkbox" '.$status.'
|
||||
data-id="'. $row->id.'">
|
||||
<span class="slider round" data-on-text="Yes" data-off-text="No"
|
||||
id="checkOnOf"></span>
|
||||
</label>';
|
||||
return $html_code;
|
||||
})
|
||||
->rawColumns(['action'])
|
||||
->make(true);
|
||||
}
|
||||
|
||||
}catch(Throwable $e){
|
||||
Log::error($e->getMessage());
|
||||
|
||||
return response()->json(['success' => false, 'message' => 'Terjadi Kesalahan pada sisi server']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -49,4 +49,8 @@ class AdminTransactionController extends Controller
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public function listTransaction(Request $request){
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -17,11 +17,7 @@ class AdminUserController extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$users = User::where('role', 'User')
|
||||
->orderByRaw("CASE WHEN status = 'Progress' THEN 1 WHEN status = 'Finished' THEN 2 WHEN status = 'Rejected' THEN 3 ELSE 4 END ASC")
|
||||
->latest()
|
||||
->get();
|
||||
return view('admin.users.index', ['users' => $users]);
|
||||
return view('admin.users.index');
|
||||
}
|
||||
|
||||
/**
|
||||
@ -101,9 +97,10 @@ class AdminUserController extends Controller
|
||||
if ($request->has('search') && !empty($request->search['value'])) {
|
||||
$searchUser = $request->search['value'];
|
||||
$subQuery->where(function ($a) use ($searchUser) {
|
||||
$a->whereRaw('email LIKE ?', ['%' . $searchUser . '%'])
|
||||
->orWhereRaw('nama_depan LIKE ?', ['%' . $searchUser . '%'])
|
||||
->orWhereRaw('nama_belakang LIKE ?', ['%' . $searchUser . '%']);
|
||||
$a->whereRaw('LOWER(email) LIKE ?', ['%' . strtolower($searchUser) . '%'])
|
||||
->orWhereRaw('LOWER(nama_depan) LIKE ?', ['%' . strtolower($searchUser) . '%'])
|
||||
->orWhereRaw('LOWER(nama_belakang) LIKE ?', ['%' . strtolower($searchUser) . '%'])
|
||||
->orWhereRaw('LOWER(status) LIKE ?',['%'.strtolower($searchUser).'%']);
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -8,6 +8,9 @@ use App\Http\Controllers\Controller;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Throwable;
|
||||
use Yajra\DataTables\DataTables;
|
||||
|
||||
class UserContactController extends Controller
|
||||
{
|
||||
@ -16,8 +19,7 @@ class UserContactController extends Controller
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
$contacts = Contact::where('pemilik_kontak', Auth::user()->email)->get();
|
||||
return view('user.contact.index', ['contacts' => $contacts]);
|
||||
return view('user.contact.index');
|
||||
}
|
||||
|
||||
public function getContact()
|
||||
@ -35,29 +37,38 @@ class UserContactController extends Controller
|
||||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
$email_relasi = $request->input('email');
|
||||
$email_relasi = $request->email;
|
||||
if ($email_relasi == Auth::user()->email) {
|
||||
return response()->json([
|
||||
'status' => false,
|
||||
'message' => 'Kontak yang ingin didaftarkan tidak boleh sama',
|
||||
]);
|
||||
} else {
|
||||
$result = Contact::create([
|
||||
}
|
||||
|
||||
try{
|
||||
DB::beginTransaction();
|
||||
|
||||
Contact::create([
|
||||
'pemilik_kontak' => Auth::user()->email,
|
||||
'relasi_kontak' => $request->input('email'),
|
||||
'relasi_kontak' => $email_relasi,
|
||||
]);
|
||||
|
||||
if ($result) {
|
||||
return response()->json([
|
||||
'status' => true,
|
||||
'message' => 'Akun berhasil masuk ke kontak',
|
||||
]);
|
||||
} else {
|
||||
return response()->json([
|
||||
'status' => false,
|
||||
'message' => 'Akun gagal masuk ke kontak',
|
||||
]);
|
||||
}
|
||||
DB::commit();
|
||||
|
||||
return response()->json([
|
||||
'status' => true,
|
||||
'message' => 'Kontak berhasil ditambahkan.'
|
||||
]);
|
||||
|
||||
}catch(Throwable $e){
|
||||
DB::rollBack();
|
||||
|
||||
Log::error($e->getMessage());
|
||||
|
||||
return response()->json([
|
||||
'status' => false,
|
||||
'message' => 'Terjadi error di bagian server atau kontak sudah didaftarkan',
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -67,22 +78,25 @@ class UserContactController extends Controller
|
||||
public function destroy($id)
|
||||
{
|
||||
try {
|
||||
$result = Contact::destroy($id);
|
||||
if ($result) {
|
||||
return response()->json([
|
||||
'message' => 'Berhasil hapus data',
|
||||
'status' => true,
|
||||
]);
|
||||
} else {
|
||||
return response()->json([
|
||||
'message' => 'Gagal hapus data karena ' . $result,
|
||||
'status' => false,
|
||||
]);
|
||||
}
|
||||
} catch (\Exception $e) {
|
||||
DB::beginTransaction();
|
||||
|
||||
Contact::destroy($id);
|
||||
|
||||
DB::commit();
|
||||
|
||||
return response()->json([
|
||||
'message' => 'Berhasil hapus data',
|
||||
'status' => true,
|
||||
]);
|
||||
|
||||
} catch (Throwable $e) {
|
||||
DB::rollBack();
|
||||
|
||||
Log::error($e->getMessage());
|
||||
|
||||
return response()->json([
|
||||
'message' => 'Gagal hapus data, karena ' . $e,
|
||||
'status' => false,
|
||||
'message' => 'Terjadi error di bagian server.',
|
||||
]);
|
||||
}
|
||||
}
|
||||
@ -111,4 +125,61 @@ class UserContactController extends Controller
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
public function listContact(Request $request){
|
||||
try{
|
||||
$subQuery = Contact::join('users','contacts.relasi_kontak','=','users.email')
|
||||
->join('indonesia_villages','users.kode_kelurahan','=','indonesia_villages.code')
|
||||
->join('indonesia_districts','indonesia_villages.district_code','=','indonesia_districts.code')
|
||||
->join('indonesia_cities', 'indonesia_districts.city_code','=','indonesia_cities.code')
|
||||
->join('indonesia_provinces','indonesia_cities.province_code','=','indonesia_provinces.code')
|
||||
->where('pemilik_kontak', Auth::user()->email)
|
||||
->select('contacts.id', 'users.email as email as email', 'users.nohp as nohp', 'users.alamat as alamat', DB::raw("CONCAT(users.nama_depan, ' ', users.nama_belakang) as nama_lengkap"),'indonesia_villages.name as kelurahan','indonesia_districts.name as kecamatan','indonesia_cities.name as kota','indonesia_provinces.name as provinsi');
|
||||
|
||||
if($request->has('search') && !empty($request->search['value'])){
|
||||
$searchContact = $request->search['value'];
|
||||
$subQuery->where(function($a) use ($searchContact){
|
||||
$a->whereRaw('LOWER(users.nama_depan) LIKE ?',['%'.strtolower($searchContact).'%'])
|
||||
->orWhereRaw('LOWER(users.nama_belakang) LIKE ?',['%'.strtolower($searchContact).'%']);
|
||||
});
|
||||
}
|
||||
|
||||
$queryContact = Contact::from(DB::raw("({$subQuery->toSql()}) as tmp"))
|
||||
->mergeBindings($subQuery->getQuery()) // Menggabungkan binding parameters
|
||||
->select('*')
|
||||
->get();
|
||||
|
||||
if($request->ajax()){
|
||||
return DataTables::of($queryContact)
|
||||
->addIndexColumn()
|
||||
->addColumn('action', function($row){
|
||||
$village = $row->kelurahan;
|
||||
$city = $row->kota;
|
||||
$district = $row->kecamatan;
|
||||
$province = $row->provinsi;
|
||||
$html_code = '
|
||||
<button class="btn btn-info open-detail-modal" data-toggle="modal"
|
||||
data-target="#modaldetail" id="detailContact"
|
||||
data-nama="'.$row->nama_lengkap.'"
|
||||
data-nohp="'.$row->nohp.'"
|
||||
data-alamat="'.$row->alamat.'"
|
||||
data-email="'.$row->email.'"
|
||||
data-province="'.$province.'"
|
||||
data-city="'.$city.'"
|
||||
data-district="'.$district.'"
|
||||
data-village="'.$village.'">Detail</button>
|
||||
<button class="btn btn-danger open-detail-modal" id="deleteContact"
|
||||
data-id="'.$row->id.'">Hapus</button>
|
||||
';
|
||||
return $html_code;
|
||||
})
|
||||
->rawColumns(['action'])
|
||||
->make(true);
|
||||
}
|
||||
}catch(Throwable $e){
|
||||
Log::error($e->getMessage());
|
||||
|
||||
return response()->json(['success' => false, 'message' => 'Terjadi Kesalahan pada sisi server']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -107,4 +107,8 @@ class UserRefundController extends Controller
|
||||
'descriptions' => $refundDescription
|
||||
]);
|
||||
}
|
||||
|
||||
public function listRefund(Request $request){
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -821,4 +821,8 @@ class UserTransactionController extends Controller
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function listTransaction(Request $request){
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -92,7 +92,7 @@ class DatabaseSeeder extends Seeder
|
||||
'no_rek' => '01980921'
|
||||
]);
|
||||
|
||||
// User::factory(20)->create();
|
||||
User::factory(100)->create();
|
||||
|
||||
$now = Carbon::now()->tz('Asia/Jakarta');
|
||||
$bulan = $now->format('n');
|
||||
|
@ -3,6 +3,43 @@
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
|
||||
let listSetting = $('#table-setting').DataTable({
|
||||
processing: true,
|
||||
serverSide: true,
|
||||
ajax: "{{ route('admin-setting.list-setting') }}",
|
||||
columns: [{
|
||||
data: 'DT_RowIndex',
|
||||
name: 'DT_RowIndex',
|
||||
orderable: false,
|
||||
searchable: false,
|
||||
}, {
|
||||
data: 'bulan',
|
||||
name: 'bulan',
|
||||
}, {
|
||||
data: 'tahun',
|
||||
name: 'tahun',
|
||||
}, {
|
||||
data: 'persentase',
|
||||
name: 'persentase'
|
||||
}, {
|
||||
data: 'status',
|
||||
render: function(data, type, row) {
|
||||
if (row.status == 'Active') {
|
||||
return `<div class="badge badge-success">${row.status}</div>`;
|
||||
} else {
|
||||
return `<div class="badge badge-danger">${row.status}</div>`;
|
||||
}
|
||||
},
|
||||
orderable: true,
|
||||
searchable: true
|
||||
}, {
|
||||
data: 'action',
|
||||
name: 'action',
|
||||
orderable: false,
|
||||
searchable: false
|
||||
}]
|
||||
});
|
||||
|
||||
$("#bulan").select2();
|
||||
|
||||
$('#tambahModal').click(function() {
|
||||
@ -56,15 +93,13 @@
|
||||
confirmButtonText: 'OK',
|
||||
position: 'center',
|
||||
}).then(function() {
|
||||
Swal.close();
|
||||
if (response.status) {
|
||||
location.reload();
|
||||
Swal.close();
|
||||
listSetting.ajax.reload();
|
||||
}
|
||||
console.log(response);
|
||||
});
|
||||
},
|
||||
error: function(error) {
|
||||
console.log(error.responseText)
|
||||
|
||||
var response = JSON.parse(error.responseText);
|
||||
|
||||
@ -87,9 +122,7 @@
|
||||
}
|
||||
});
|
||||
|
||||
const table = $('#table-5').DataTable(); // Inisialisasi DataTable
|
||||
|
||||
$('#table-5').on('change', '.switch input[type="checkbox"]', function() {
|
||||
$('#table-setting').on('change', '.switch input[type="checkbox"]', function() {
|
||||
const parentRow = $(this).closest('tr');
|
||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||
const statusBadge = parentRow.find('.badge');
|
||||
@ -98,7 +131,7 @@
|
||||
const isChecked = $(this).prop('checked');
|
||||
let dataId = $(this).data("id");
|
||||
|
||||
const rowData = table.row(parentRow).data(); // Dapatkan data baris dari DataTable
|
||||
const rowData = listSetting.row(parentRow).data(); // Dapatkan data baris dari DataTable
|
||||
|
||||
$.ajaxSetup({
|
||||
headers: {
|
||||
@ -120,7 +153,6 @@
|
||||
confirmButtonText: 'OK'
|
||||
}).then(function() {
|
||||
if (isChecked) {
|
||||
// location.reload();
|
||||
statusBadge.text(onText === 'Yes' ? 'Active' :
|
||||
'Nonactive');
|
||||
statusBadge.removeClass('badge-danger').addClass(
|
||||
@ -161,7 +193,7 @@
|
||||
<a class="btn btn-success active" href="#" id="tambahModal">Tambah Data Kebijakan</a>
|
||||
</div>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped" id="table-5">
|
||||
<table class="table table-striped" id="table-setting">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center">
|
||||
@ -175,28 +207,7 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach ($settings as $setting)
|
||||
<tr>
|
||||
<td>{{ $loop->iteration }}</td>
|
||||
<td>{{ DateTime::createFromFormat('n', $setting->bulan)->format('F') }}</td>
|
||||
<td>{{ $setting->tahun }}</td>
|
||||
<td>{{ $setting->persentase }}</td>
|
||||
<td>
|
||||
<div
|
||||
class="badge {{ $setting->status == 'Active' ? 'badge-success' : 'badge-danger' }}">
|
||||
{{ $setting->status }}
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<label class="switch">
|
||||
<input type="checkbox" @if ($setting->status === 'Active') checked @endif
|
||||
data-id="{{ $setting->id }}">
|
||||
<span class="slider round" data-on-text="Yes" data-off-text="No"
|
||||
id="checkOnOf"></span>
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -46,7 +46,7 @@
|
||||
data: 'DT_RowIndex',
|
||||
name: 'DT_RowIndex',
|
||||
orderable: false,
|
||||
searchable: true,
|
||||
searchable: false,
|
||||
}, {
|
||||
data: 'id',
|
||||
name: 'id',
|
||||
@ -86,7 +86,7 @@
|
||||
return data;
|
||||
}
|
||||
}, {
|
||||
data: null,
|
||||
data: 'status',
|
||||
render: function(data, type, row) {
|
||||
if (row.status == 'Finished') {
|
||||
return `<a href="#" data-toggle="modal" data-target="#modalKeteranganStatus" class="badge badge-success">${row.status}</a>`;
|
||||
|
@ -23,7 +23,7 @@
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-striped" id="table-6">
|
||||
<table class="table table-striped" id="table-contact">
|
||||
<thead>
|
||||
<tr class="text-center">
|
||||
<th>#</th>
|
||||
@ -32,25 +32,7 @@
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach ($contacts as $contact)
|
||||
<tr>
|
||||
<td>{{ $loop->iteration }}</td>
|
||||
<td class="font-weight-600">
|
||||
{{ $contact->relasiKontak->nama_depan . ' ' . $contact->relasiKontak->nama_belakang }}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
<button class="btn btn-info open-detail-modal" data-toggle="modal"
|
||||
data-target="#modaldetail" id="detailContact"
|
||||
data-id="{{ $contact->relasiKontak }}"
|
||||
data-province="{{ $contact->relasiKontak->getProvinceName() }}"
|
||||
data-city="{{ $contact->relasiKontak->getCityName() }}"
|
||||
data-district="{{ $contact->relasiKontak->getDistrictName() }}"
|
||||
data-village="{{ $contact->relasiKontak->getVillageName() }}">Detail</button>
|
||||
<button class="btn btn-danger open-detail-modal" id="deleteContact"
|
||||
data-id="{{ $contact->id }}">Hapus</button>
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
@ -58,10 +40,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@include('user.contact.modal-detail-contact')
|
||||
@include('user.contact.modal-add-contact')
|
||||
</section>
|
||||
</div>
|
||||
@include('user.contact.modal-detail-contact')
|
||||
@include('user.contact.modal-add-contact')
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
let check = false;
|
||||
@ -73,16 +55,19 @@
|
||||
|
||||
$('#modaldetail').on('show.bs.modal', function(event) {
|
||||
var triggerLink = $(event.relatedTarget);
|
||||
let dataId = triggerLink.data('id');
|
||||
let dataNama = triggerLink.data('nama');
|
||||
let dataEmail = triggerLink.data('email');
|
||||
let dataNoHP = triggerLink.data('nohp');
|
||||
let dataAlamat = triggerLink.data('alamat');
|
||||
let dataProvince = triggerLink.data('province');
|
||||
let dataCity = triggerLink.data('city');
|
||||
let dataDistrict = triggerLink.data('district');
|
||||
let dataVillage = triggerLink.data('village');
|
||||
teksNama.innerHTML = dataId.nama_depan + " " + dataId.nama_belakang;
|
||||
teksAlamat.innerHTML = dataId.alamat + ", " + capital(dataVillage) + ", " + capital(
|
||||
teksNama.innerHTML = dataNama;
|
||||
teksAlamat.innerHTML = dataNama + ", " + capital(dataVillage) + ", " + capital(
|
||||
dataDistrict) + ", " + capital(dataCity) + ", " + capital(dataProvince);
|
||||
teksNohp.innerHTML = dataId.nohp;
|
||||
teksEmail.innerHTML = dataId.email;
|
||||
teksNohp.innerHTML = dataNoHP;
|
||||
teksEmail.innerHTML = dataEmail;
|
||||
});
|
||||
|
||||
function capital(text) {
|
||||
@ -91,7 +76,30 @@
|
||||
});
|
||||
}
|
||||
|
||||
$('#table-2').on('click', '#deleteContact', function() {
|
||||
let table_contact = $('#table-contact').DataTable({
|
||||
processing: true,
|
||||
serverSide: true,
|
||||
ajax: "{{ route('user-contact.list-contact') }}",
|
||||
columns: [{
|
||||
data: 'DT_RowIndex',
|
||||
name: 'DT_RowIndex',
|
||||
orderable: false,
|
||||
searchable: false,
|
||||
className: 'text-center'
|
||||
}, {
|
||||
data: 'nama_lengkap',
|
||||
name: 'nama_lengkap',
|
||||
className: 'text-center'
|
||||
}, {
|
||||
data: 'action',
|
||||
name: 'action',
|
||||
orderable: false,
|
||||
searchable: false,
|
||||
className: 'text-center'
|
||||
}],
|
||||
});
|
||||
|
||||
$('#table-contact').on('click', '#deleteContact', function() {
|
||||
let dataId = $(this).data('id');
|
||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||
Swal.fire({
|
||||
@ -137,7 +145,7 @@
|
||||
}).then(function() {
|
||||
Swal.close();
|
||||
if (response.status) {
|
||||
location.reload();
|
||||
table_contact.ajax.reload();
|
||||
}
|
||||
});
|
||||
},
|
||||
@ -157,7 +165,6 @@
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$('#checkButton').on('click', function() {
|
||||
const email = document.querySelector('[name="email"]').value;
|
||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||
@ -265,7 +272,8 @@
|
||||
}).then(function() {
|
||||
Swal.close();
|
||||
if (response.status) {
|
||||
location.reload();
|
||||
Swal.close();
|
||||
table_contact.ajax.reload();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
<div class="modal fade" id="modalForm" role="dialog">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal fade" id="modalForm" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
<!-- Modal Header -->
|
||||
<div class="modal-header">
|
||||
<h2 class="modal-title" id="exampleModalLongTitle">Tambah Kontak</h2>
|
||||
<button type="button" class="close" data-dismiss="modal">
|
||||
<span aria-hidden="true">×</span>
|
||||
<span class="sr-only">Close</span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="col-md-12">
|
||||
@ -14,21 +14,22 @@
|
||||
|
||||
<!-- Modal Body -->
|
||||
<div class="modal-body">
|
||||
<p class="statusMsg"></p>
|
||||
<form role="form" id="formContact">
|
||||
<div class="form-group">
|
||||
<label for="inputemail">Email</label>
|
||||
<input type="text" class="form-control" name="email" placeholder="Enter your email" />
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<button type="button" class="btn btn-primary" id="checkButton">Check</button>
|
||||
</div>
|
||||
<div class="section-body">
|
||||
<form role="form" id="formContact">
|
||||
<div class="form-group">
|
||||
<label for="inputemail">Email</label>
|
||||
<input type="text" class="form-control" name="email" placeholder="Enter your email" />
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<button type="button" class="btn btn-primary" id="checkButton">Check</button>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="exampleFormControlTextarea1" class="form-label">Hasil</label>
|
||||
<textarea class="form-control" rows="10" cols="10" readonly id="resultArea""></textarea>
|
||||
</div>
|
||||
</form>
|
||||
<div class="form-group">
|
||||
<label for="exampleFormControlTextarea1" class="form-label">Hasil</label>
|
||||
<textarea class="form-control" rows="10" cols="10" readonly id="resultArea""></textarea>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Modal Footer -->
|
||||
|
Loading…
Reference in New Issue
Block a user