Compare commits
6 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
80afea9699 | ||
5f01f0d124 | |||
ce8b355248 | |||
6c18bb1a52 | |||
1af5e8a7da | |||
|
0d547ab4c3 |
@ -4,14 +4,33 @@ namespace App\Http\Controllers\Admin;
|
|||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
use Carbon\Carbon;
|
||||||
use App\Models\Transactions;
|
use App\Models\Transactions;
|
||||||
|
use App\Models\Transaction;
|
||||||
|
use App\Models\Refund;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
class AdminDashboardController extends Controller
|
class AdminDashboardController extends Controller
|
||||||
{
|
{
|
||||||
public function index(){
|
public function index(){
|
||||||
|
$sumSettlement = 0;
|
||||||
|
$sumCancelled = 0;
|
||||||
|
$sumRefund = 0;
|
||||||
|
$currentYear = Carbon::now()->year;
|
||||||
|
$dataChartTransaction = [];
|
||||||
|
$dataChartRefund = [];
|
||||||
|
for($bulan = 1; $bulan <= 12; $bulan++){
|
||||||
|
$transaction = Transaction::whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total_bayar');
|
||||||
|
// $transaction = Transaction::where('status','finished')->whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total_bayar');
|
||||||
|
// $refund = Refund::whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total');
|
||||||
|
// $refund = Refund::where('status','Partial Refund')->whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total');
|
||||||
|
$dataChartTransaction[] = intval($transaction);
|
||||||
|
// $dataChartRefund[] = intval($refund);
|
||||||
|
}
|
||||||
return view('admin.index',[
|
return view('admin.index',[
|
||||||
"transaction"=>Transactions::allTransactions()
|
"transaction"=>Transactions::allTransactions(),
|
||||||
|
"dataChartTransaction" => $dataChartTransaction,
|
||||||
|
// "dataChartRefund" => $dataChartRefund
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,10 +3,12 @@
|
|||||||
namespace App\Http\Controllers\Login;
|
namespace App\Http\Controllers\Login;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Mail\verificationMail;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
|
use Illuminate\Support\Facades\Mail;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use Illuminate\Support\Facades\Storage;
|
use Illuminate\Support\Facades\Storage;
|
||||||
use thiagoalessio\TesseractOCR\TesseractOCR;
|
use thiagoalessio\TesseractOCR\TesseractOCR;
|
||||||
@ -32,10 +34,6 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
public function login()
|
public function login()
|
||||||
{
|
{
|
||||||
$provinces = Province::all();
|
|
||||||
$cities = City::all();
|
|
||||||
$districts = District::all();
|
|
||||||
$villages = Village::all();
|
|
||||||
return view('index');
|
return view('index');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -47,10 +45,18 @@ class LoginController extends Controller
|
|||||||
public function authenticate(Request $request)
|
public function authenticate(Request $request)
|
||||||
{
|
{
|
||||||
// dd($request);
|
// dd($request);
|
||||||
$credentials = $request->validate([
|
$credentials = $request->validate(
|
||||||
|
[
|
||||||
'email' => ['required', 'email'],
|
'email' => ['required', 'email'],
|
||||||
'password' => ['required', 'min:8'],
|
'password' => ['required', 'min:8'],
|
||||||
]);
|
],
|
||||||
|
[
|
||||||
|
'email.required' => 'Alamat email wajib diisi.',
|
||||||
|
'email.email' => 'Alamat email harus berformat valid.',
|
||||||
|
'password.required' => 'Password wajib diisi.',
|
||||||
|
'password.min' => 'Password harus memiliki panjang minimal 8 karakter.',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
if (Auth::attempt($credentials)) {
|
if (Auth::attempt($credentials)) {
|
||||||
if (Auth::user()->status == 'Finished') {
|
if (Auth::user()->status == 'Finished') {
|
||||||
@ -61,17 +67,22 @@ class LoginController extends Controller
|
|||||||
} else {
|
} else {
|
||||||
return redirect()->intended('user');
|
return redirect()->intended('user');
|
||||||
}
|
}
|
||||||
|
} else if(Auth::user()->status == 'Rejected'){
|
||||||
|
Session::flash('message', 'Akun ditolak karena tidak memenuhi persyaratan');
|
||||||
|
return redirect()->back();
|
||||||
} else {
|
} else {
|
||||||
Session::flash('message', 'Akun tidak ditemukan atau sedang dalam pengajuan');
|
Session::flash('message', 'Akun tidak ditemukan atau sedang dalam pengajuan');
|
||||||
return redirect()->back();
|
return redirect()->back();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// $error = $credentials->errors();
|
||||||
|
// ->withInput($request->except('key'))
|
||||||
|
// ->withErrors($validator)
|
||||||
|
|
||||||
return redirect()
|
return redirect()
|
||||||
->back()
|
->back()
|
||||||
->withErrors([
|
->withErrors($credentials)
|
||||||
'email' => 'Email dengan' . $credentials['email'] . ' tidak tersedia.',
|
|
||||||
])
|
|
||||||
->onlyInput('email');
|
->onlyInput('email');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,7 +104,6 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
public function register(Request $request)
|
public function register(Request $request)
|
||||||
{
|
{
|
||||||
// input
|
|
||||||
$nama_depan = $request->get('nama-depan');
|
$nama_depan = $request->get('nama-depan');
|
||||||
$nama_belakang = $request->get('nama-belakang');
|
$nama_belakang = $request->get('nama-belakang');
|
||||||
$tanggal_lahir = $request->get('tanggal-lahir');
|
$tanggal_lahir = $request->get('tanggal-lahir');
|
||||||
@ -134,7 +144,7 @@ class LoginController extends Controller
|
|||||||
$image->greyscale(); // Convert to grayscale
|
$image->greyscale(); // Convert to grayscale
|
||||||
$image->contrast(10); // Increase contrast, adjust the value as needed
|
$image->contrast(10); // Increase contrast, adjust the value as needed
|
||||||
|
|
||||||
$preprocessedfotoKTP = storage_path('preprocessed_image.jpg');
|
$preprocessedfotoKTP = public_path('storage/preprocessed/preprocessed_image.jpg');
|
||||||
$image->save($preprocessedfotoKTP);
|
$image->save($preprocessedfotoKTP);
|
||||||
|
|
||||||
$result = (new TesseractOCR($preprocessedfotoKTP))->run();
|
$result = (new TesseractOCR($preprocessedfotoKTP))->run();
|
||||||
@ -142,9 +152,10 @@ class LoginController extends Controller
|
|||||||
// (5) Normalize
|
// (5) Normalize
|
||||||
|
|
||||||
$lines = explode("\n", $result);
|
$lines = explode("\n", $result);
|
||||||
|
$namaOCR = '';
|
||||||
$nikOCR = '';
|
$nikOCR = '';
|
||||||
$nikInputan = $nik;
|
$nikInputan = $nik;
|
||||||
$namaInputan = $nama_depan.' '.$nama_belakang;
|
$namaInputan = $nama_depan . ' ' . $nama_belakang;
|
||||||
|
|
||||||
foreach ($lines as $line) {
|
foreach ($lines as $line) {
|
||||||
// Mencari NIK
|
// Mencari NIK
|
||||||
@ -160,7 +171,7 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
//Selesai
|
//Selesai
|
||||||
|
|
||||||
$persentase_kemiripan = (similar_text($nikInputan, $nikOCR, $percent) + similar_text($namaOCR, $namaOCR, $percent))/2;
|
$persentase_kemiripan = (similar_text($nikInputan, $nikOCR, $percent) + similar_text($namaOCR, $namaOCR, $percent)) / 2;
|
||||||
// $status = 'Progress';
|
// $status = 'Progress';
|
||||||
|
|
||||||
// if (similar_text($nikInputan, $nikOCR, $percent) >= 70 && similar_text($namaOCR, $namaOCR, $percent) >= 70) {
|
// if (similar_text($nikInputan, $nikOCR, $percent) >= 70 && similar_text($namaOCR, $namaOCR, $percent) >= 70) {
|
||||||
@ -168,7 +179,6 @@ class LoginController extends Controller
|
|||||||
// } else {
|
// } else {
|
||||||
// $status = 'Progress';
|
// $status = 'Progress';
|
||||||
// }
|
// }
|
||||||
|
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
// $status = 'Progress';
|
// $status = 'Progress';
|
||||||
}
|
}
|
||||||
@ -178,11 +188,6 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
$password = Hash::make($new_password);
|
$password = Hash::make($new_password);
|
||||||
|
|
||||||
|
|
||||||
// return response()->json([
|
|
||||||
// 'status' => true,
|
|
||||||
// 'message' => Uuid::uuid4(),
|
|
||||||
// ]);
|
|
||||||
$result = User::create([
|
$result = User::create([
|
||||||
'id' => Uuid::uuid4(),
|
'id' => Uuid::uuid4(),
|
||||||
'nama_depan' => $nama_depan,
|
'nama_depan' => $nama_depan,
|
||||||
@ -265,4 +270,83 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
return response()->json($data);
|
return response()->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function kirimKodeVerifikasi(Request $request)
|
||||||
|
{
|
||||||
|
$email = $request->get('email');
|
||||||
|
$code = $request->get('code');
|
||||||
|
|
||||||
|
$verificationEmail = [
|
||||||
|
'code' => $code,
|
||||||
|
'email' => $email,
|
||||||
|
];
|
||||||
|
try {
|
||||||
|
Mail::to($email)->send(new verificationMail($verificationEmail));
|
||||||
|
return response()->json([
|
||||||
|
'message' => 'Kode verifikasi berhasil dikirim ke email. Silahkan cek di email anda.',
|
||||||
|
'status' => true,
|
||||||
|
]);
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
return response()->json([
|
||||||
|
'message' => 'Kode verifikasi gagal dikirim ke email. ' . $e,
|
||||||
|
'status' => false,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getOcr()
|
||||||
|
{
|
||||||
|
//OCR
|
||||||
|
// dd(phpinfo());
|
||||||
|
try {
|
||||||
|
$fotoKTP = public_path('storage/foto-ktp/ktp.jpg');
|
||||||
|
|
||||||
|
$image = Image::make($fotoKTP);
|
||||||
|
|
||||||
|
$image->greyscale(); // Convert to grayscale
|
||||||
|
$image->contrast(10); // Increase contrast, adjust the value as needed
|
||||||
|
|
||||||
|
$preprocessedfotoKTP = public_path('storage/preprocessed/preprocessed_image.jpg');
|
||||||
|
$image->save($preprocessedfotoKTP);
|
||||||
|
|
||||||
|
$result = (new TesseractOCR($preprocessedfotoKTP))->run();
|
||||||
|
|
||||||
|
// (5) Normalize
|
||||||
|
|
||||||
|
$lines = explode("\n", $result);
|
||||||
|
$nikOCR = '';
|
||||||
|
$namaOCR = '';
|
||||||
|
$nikInputan = '3471140209790001';
|
||||||
|
$namaInputan = 'RIYANTO. SE';
|
||||||
|
|
||||||
|
foreach ($lines as $line) {
|
||||||
|
// Mencari NIK
|
||||||
|
if (strpos($line, $nikInputan) !== false) {
|
||||||
|
$nikOCR = preg_replace('/[^0-9]/', '', $line);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Mencari nama
|
||||||
|
if (strpos($line, $namaInputan) !== false) {
|
||||||
|
$namaOCR = trim(substr($line, strpos($line, ':') + 1));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//Selesai
|
||||||
|
|
||||||
|
$persentase_kemiripan = (similar_text($nikInputan, $nikOCR, $percent) + similar_text($namaOCR, $namaOCR, $percent)) / 2;
|
||||||
|
// $status = 'Progress';
|
||||||
|
|
||||||
|
dd([$persentase_kemiripan, $lines]);
|
||||||
|
|
||||||
|
// if (similar_text($nikInputan, $nikOCR, $percent) >= 70 && similar_text($namaOCR, $namaOCR, $percent) >= 70) {
|
||||||
|
// $status = 'Progress';
|
||||||
|
// } else {
|
||||||
|
// $status = 'Progress';
|
||||||
|
// }
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
// $status = 'Progress';
|
||||||
|
dd($e);
|
||||||
|
}
|
||||||
|
//OCR
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,7 @@ use App\Models\User;
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class UserContactController extends Controller
|
class UserContactController extends Controller
|
||||||
{
|
{
|
||||||
@ -20,6 +21,16 @@ class UserContactController extends Controller
|
|||||||
// dd($contacts);
|
// dd($contacts);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getContact()
|
||||||
|
{
|
||||||
|
$data = DB::table('contacts')
|
||||||
|
->select('contacts.relasi_kontak', 'users.nama_depan', 'users.nama_belakang')
|
||||||
|
->join('users', 'contacts.relasi_kontak', '=', 'users.email')
|
||||||
|
->where('contacts.pemilik_kontak','=',Auth::user()->email)
|
||||||
|
->paginate(10);
|
||||||
|
return response()->json($data);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Show the form for creating a new resource.
|
* Show the form for creating a new resource.
|
||||||
*/
|
*/
|
||||||
@ -34,23 +45,23 @@ class UserContactController extends Controller
|
|||||||
public function store(Request $request)
|
public function store(Request $request)
|
||||||
{
|
{
|
||||||
$email_relasi = $request->input('email');
|
$email_relasi = $request->input('email');
|
||||||
if($email_relasi == Auth::user()->email){
|
if ($email_relasi == Auth::user()->email) {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Kontak yang ingin didaftarkan tidak boleh sama',
|
'message' => 'Kontak yang ingin didaftarkan tidak boleh sama',
|
||||||
]);
|
]);
|
||||||
}else{
|
} else {
|
||||||
$result = Contact::create([
|
$result = Contact::create([
|
||||||
'pemilik_kontak' => Auth::user()->email,
|
'pemilik_kontak' => Auth::user()->email,
|
||||||
'relasi_kontak' => $request->input('email'),
|
'relasi_kontak' => $request->input('email'),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if($result){
|
if ($result) {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => true,
|
'status' => true,
|
||||||
'message' => 'Akun berhasil masuk ke kontak',
|
'message' => 'Akun berhasil masuk ke kontak',
|
||||||
]);
|
]);
|
||||||
}else{
|
} else {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Akun gagal masuk ke kontak',
|
'message' => 'Akun gagal masuk ke kontak',
|
||||||
@ -64,7 +75,6 @@ class UserContactController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function show(Contact $contact)
|
public function show(Contact $contact)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -90,14 +100,14 @@ class UserContactController extends Controller
|
|||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$result = Contact::destroy($id);
|
$result = Contact::destroy($id);
|
||||||
if($result){
|
if ($result) {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'message' => 'Berhasil hapus data',
|
'message' => 'Berhasil hapus data',
|
||||||
'status' => true,
|
'status' => true,
|
||||||
]);
|
]);
|
||||||
}else{
|
} else {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'message' => 'Gagal hapus data karena '.$result,
|
'message' => 'Gagal hapus data karena ' . $result,
|
||||||
'status' => false,
|
'status' => false,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@ -112,13 +122,13 @@ class UserContactController extends Controller
|
|||||||
public function cekEmail($email)
|
public function cekEmail($email)
|
||||||
{
|
{
|
||||||
$result = User::where('email', $email)->get();
|
$result = User::where('email', $email)->get();
|
||||||
if ($result->isNotEmpty() && $result[0]->role == 'User') {
|
if ($result->isNotEmpty() && $result[0]->role == 'User' && $result[0]->status != 'Rejected') {
|
||||||
if($result[0]->status == 'Finished'){
|
if ($result[0]->status == 'Finished') {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => true,
|
'status' => true,
|
||||||
'message' => $result,
|
'message' => $result,
|
||||||
]);
|
]);
|
||||||
}else{
|
} else {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Akun dengen email ' . $email . ' tersedia dan belum diverifikasi',
|
'message' => 'Akun dengen email ' . $email . ' tersedia dan belum diverifikasi',
|
||||||
@ -127,7 +137,7 @@ class UserContactController extends Controller
|
|||||||
} else {
|
} else {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Akun dengen email ' . $email . ' tidak tersedia',
|
'message' => 'Akun dengen email ' . $email . ' tidak tersedia atau ditolak',
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,21 +3,34 @@
|
|||||||
namespace App\Http\Controllers\User;
|
namespace App\Http\Controllers\User;
|
||||||
|
|
||||||
use App\Models\Transaction;
|
use App\Models\Transaction;
|
||||||
|
use App\Models\TransactionDescription;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Models\Setting;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Models\TransactionUser;
|
use App\Models\TransactionUser;
|
||||||
|
use App\Models\User;
|
||||||
|
use Carbon\Carbon;
|
||||||
|
use Illuminate\Support\Facades\Http;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Ramsey\Uuid\Uuid;
|
||||||
|
use Midtrans\Config;
|
||||||
|
use Midtrans\Snap;
|
||||||
|
use Midtrans\Transaction as Trans;
|
||||||
|
|
||||||
class UserTransactionController extends Controller
|
class UserTransactionController extends Controller
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Display a listing of the resource.
|
* Display a listing of the resource.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function indexPembeli()
|
public function indexPembeli()
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.transaction-pembeli',[
|
return view('user.transaction.pembeli.index', [
|
||||||
'name'=>'npannisa',
|
'transactions' => Transaction::where('pembeli', Auth::user()->email)
|
||||||
'TransactionUser'=>TransactionUser::HistoryTransaction()
|
->latest()
|
||||||
|
->get(),
|
||||||
]);
|
]);
|
||||||
|
// dd(Transaction::where('pembeli',Auth::user()->email)->get());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -25,17 +38,19 @@ class UserTransactionController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function indexPenjual()
|
public function indexPenjual()
|
||||||
{
|
{
|
||||||
return view('user.transaction.penjual.transaction-penjual',[
|
return view('user.transaction.penjual.index', [
|
||||||
'name'=>'npannisa',
|
'transactions' => Transaction::where('penjual', Auth::user()->email)->get(),
|
||||||
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function detailTransaction($id){
|
public function detailTransaction($id)
|
||||||
return view('user.transaction.pembeli.detail-transaction',[
|
{
|
||||||
'name'=>'npannisa',
|
return view('user.transaction.pembeli.detail-transaction', [
|
||||||
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
'transaction' => Transaction::findOrFail($id),
|
||||||
|
'trackings' => TransactionDescription::where('order_id', $id)->get(),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
// dd(Transaction::findOrFail($id));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -43,10 +58,7 @@ class UserTransactionController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function createTransaction(Request $request)
|
public function createTransaction(Request $request)
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.new-transaction',[
|
return view('user.transaction.pembeli.new-transaction');
|
||||||
'name'=>'npannisa',
|
|
||||||
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -54,12 +66,186 @@ class UserTransactionController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function invoiceTransaction($id)
|
public function invoiceTransaction($id)
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.invoice-transaction',[
|
return view('user.transaction.pembeli.invoice-transaction', [
|
||||||
'name'=>'npannisa',
|
'name' => 'npannisa',
|
||||||
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
'TransactionUser' => TransactionUser::HistoryTransaction(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function storeTransaction(Request $request)
|
||||||
|
{
|
||||||
|
$pembeli = Auth::user()->email;
|
||||||
|
$penjual = $request->get('email_penjual');
|
||||||
|
$nama_barang = $request->get('nama_barang');
|
||||||
|
$satuan_barang = $request->get('satuan_barang');
|
||||||
|
$deskripsi_transaksi = $request->get('deskripsi');
|
||||||
|
$harga_barang = $request->get('harga_barang');
|
||||||
|
$jumlah_barang = $request->get('jumlah_barang');
|
||||||
|
|
||||||
|
$nama_depan_pembeli = Auth::user()->nama_depan;
|
||||||
|
$nama_belakang_pembeli = Auth::user()->nama_belakang;
|
||||||
|
$nohp_pembeli = Auth::user()->nohp;
|
||||||
|
$nama_penjual = User::where('email', $penjual)->value('nama_depan');
|
||||||
|
$alamat = ucwords(strtolower(Auth::user()->alamat));
|
||||||
|
$id = Uuid::uuid4();
|
||||||
|
|
||||||
|
$now = Carbon::now()->tz('Asia/Jakarta');
|
||||||
|
$bulan = $now->format('F');
|
||||||
|
$tahun = $now->year;
|
||||||
|
|
||||||
|
// $persentase_keuntungan = Setting::where('status','Active')
|
||||||
|
// ->where('bulan','=',$bulan)
|
||||||
|
// ->where('tahun','=',$tahun)->get();
|
||||||
|
$persentase_keuntungan = $request->get('persentase_keuntungan');
|
||||||
|
|
||||||
|
$total_harga = $request->get('total_harga');
|
||||||
|
$total_keuntungan = $request->get('total_keuntungan');
|
||||||
|
$total_bayar = $request->get('total_bayar');
|
||||||
|
|
||||||
|
$batas_pembayaran = $now->addDays(1)->toDateTimeString();
|
||||||
|
$batas_pengiriman_barang_awal = $now->addDays(2)->toDateTimeString();
|
||||||
|
$batas_pengiriman_barang_akhir = $now->addDays(5)->toDateTimeString();
|
||||||
|
|
||||||
|
$params = [
|
||||||
|
'transaction_details' => [
|
||||||
|
'order_id' => $id,
|
||||||
|
'gross_amount' => $total_bayar,
|
||||||
|
],
|
||||||
|
'item_details' => [
|
||||||
|
[
|
||||||
|
'id' => $nama_barang . time(),
|
||||||
|
'price' => $harga_barang,
|
||||||
|
'quantity' => $jumlah_barang,
|
||||||
|
'name' => $nama_barang,
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'id' => 'BA01',
|
||||||
|
'price' => $total_keuntungan,
|
||||||
|
'quantity' => 1,
|
||||||
|
'name' => 'Biaya Admin',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'customer_details' => [
|
||||||
|
'firts_name' => $nama_depan_pembeli,
|
||||||
|
'last_name' => $nama_belakang_pembeli,
|
||||||
|
'email' => $pembeli,
|
||||||
|
'phone' => $nohp_pembeli,
|
||||||
|
'billing' => [
|
||||||
|
'first_name' => $nama_depan_pembeli,
|
||||||
|
'last_name' => $nama_belakang_pembeli,
|
||||||
|
'email' => $pembeli,
|
||||||
|
'phone' => $nohp_pembeli,
|
||||||
|
'address' => Auth::user()->alamat,
|
||||||
|
'city' => Auth::user()->village->district->city->name,
|
||||||
|
'country_code' => 'IDN',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'callbacks' => [
|
||||||
|
'finish' => 'http://127.0.0.1:8000/user/user-transaction-pembeli/',
|
||||||
|
],
|
||||||
|
'expiry' => [
|
||||||
|
'start_time' => $now->format('Y-m-d H:i:s P'),
|
||||||
|
'unit' => 'hours',
|
||||||
|
'duration' => 24,
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
|
Config::$serverKey = 'SB-Mid-server-8rydZAwKoWuoQ6g_3ot0-K7p';
|
||||||
|
Config::$isProduction = false;
|
||||||
|
// Set sanitization on (default)
|
||||||
|
Config::$isSanitized = true;
|
||||||
|
// Set 3DS transaction for credit card to true
|
||||||
|
Config::$is3ds = true;
|
||||||
|
|
||||||
|
$snap_token = Snap::getSnapToken($params);
|
||||||
|
$token = $snap_token;
|
||||||
|
$status = 'pending';
|
||||||
|
$query = Transaction::create([
|
||||||
|
'id' => $id,
|
||||||
|
'pembeli' => $pembeli,
|
||||||
|
'penjual' => $penjual,
|
||||||
|
'nama_barang' => $nama_barang,
|
||||||
|
'deskripsi_transaksi' => $deskripsi_transaksi,
|
||||||
|
'satuan_barang' => $satuan_barang,
|
||||||
|
'harga_barang' => $harga_barang,
|
||||||
|
'jumlah_barang' => $jumlah_barang,
|
||||||
|
'persentase_keuntungan' => $persentase_keuntungan,
|
||||||
|
'total_keuntungan' => $total_keuntungan,
|
||||||
|
'total_harga' => $total_harga,
|
||||||
|
'total_bayar' => $total_bayar,
|
||||||
|
'token' => $token,
|
||||||
|
'status' => $status,
|
||||||
|
'batas_pembayaran' => $batas_pembayaran,
|
||||||
|
'batas_pengiriman_barang_awal' => $batas_pengiriman_barang_awal,
|
||||||
|
'batas_pengiriman_barang_akhir' => $batas_pengiriman_barang_akhir,
|
||||||
|
]);
|
||||||
|
|
||||||
|
if ($query) {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'order_id' => $id,
|
||||||
|
'status' => $status,
|
||||||
|
'user' => $pembeli,
|
||||||
|
'judul' => 'fa fa-plus',
|
||||||
|
'background' => 'bg-buyer',
|
||||||
|
'deskripsi' => $nama_depan_pembeli . ' telah membuat transaksi baru dengan ' . $nama_penjual,
|
||||||
|
]);
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Berhasil menambahkan transaksi. Silahkan lakukan pembayaran.',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Gagal menambahkan transaksi.',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function updateStatusTransaction(Request $request)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function acceptTransaction(Request $request)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public function paymentTransaction(Request $request, $id)
|
||||||
|
{
|
||||||
|
Config::$serverKey = 'SB-Mid-server-8rydZAwKoWuoQ6g_3ot0-K7p';
|
||||||
|
Config::$isProduction = false;
|
||||||
|
// Set sanitization on (default)
|
||||||
|
Config::$isSanitized = true;
|
||||||
|
// Set 3DS transaction for credit card to true
|
||||||
|
Config::$is3ds = true;
|
||||||
|
|
||||||
|
$payment = Trans::status($id);
|
||||||
|
$result = json_decode(json_encode($payment), true);
|
||||||
|
$query = Transaction::where('id', $id)->update([
|
||||||
|
'acquire' => $result['acquirer'],
|
||||||
|
'currency' => $result['currency'],
|
||||||
|
'fraud_status' => $result['fraud_status'],
|
||||||
|
'issuer' => $result['issuer'],
|
||||||
|
'merchant_id' => $result['merchant_id'],
|
||||||
|
'metode_pembayaran' => $result['payment_type'],
|
||||||
|
'tanggal_pembayaran' => $result['settlement_time'],
|
||||||
|
'signature_key' => $result['signature_key'],
|
||||||
|
'status' => $result['transaction_status'],
|
||||||
|
'tipe_transaction' => $result['transaction_type'],
|
||||||
|
'status_code' => $result['status_code'],
|
||||||
|
]);
|
||||||
|
if ($query) {
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Pembayaran sukses. Proses akan dilanjutkan ke penjual',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Pembayaran gagal',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display the specified resource.
|
* Display the specified resource.
|
||||||
*/
|
*/
|
||||||
|
59
app/Mail/verificationMail.php
Normal file
59
app/Mail/verificationMail.php
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Mail;
|
||||||
|
|
||||||
|
use Illuminate\Bus\Queueable;
|
||||||
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||||
|
use Illuminate\Mail\Mailable;
|
||||||
|
use Illuminate\Mail\Mailables\Content;
|
||||||
|
use Illuminate\Mail\Mailables\Envelope;
|
||||||
|
use Illuminate\Queue\SerializesModels;
|
||||||
|
|
||||||
|
class verificationMail extends Mailable
|
||||||
|
{
|
||||||
|
use Queueable, SerializesModels;
|
||||||
|
|
||||||
|
public $verificationEmail;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new message instance.
|
||||||
|
*/
|
||||||
|
public function __construct($verificationEmail)
|
||||||
|
{
|
||||||
|
$this->verificationEmail = $verificationEmail;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the message envelope.
|
||||||
|
*/
|
||||||
|
// public function envelope(): Envelope
|
||||||
|
// {
|
||||||
|
// return new Envelope(
|
||||||
|
// subject: 'Verification Mail',
|
||||||
|
// );
|
||||||
|
// }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the message content definition.
|
||||||
|
*/
|
||||||
|
// public function content(): Content
|
||||||
|
// {
|
||||||
|
// return new Content(
|
||||||
|
// view: 'view.name',
|
||||||
|
// );
|
||||||
|
// }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the attachments for the message.
|
||||||
|
*
|
||||||
|
* @return array<int, \Illuminate\Mail\Mailables\Attachment>
|
||||||
|
*/
|
||||||
|
// public function attachments(): array
|
||||||
|
// {
|
||||||
|
// return [];
|
||||||
|
// }
|
||||||
|
|
||||||
|
public function build(){
|
||||||
|
return $this->subject('Kode Verifikasi')->view('email.verification-email');
|
||||||
|
}
|
||||||
|
}
|
@ -23,7 +23,7 @@ class Refund extends Model
|
|||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function orders(){
|
public function orders(){
|
||||||
return $this->belongsTo(Transaction::class, 'order_id', 'order_id');
|
return $this->belongsTo(Transaction::class, 'id', 'order_id');
|
||||||
}
|
}
|
||||||
//Relasi
|
//Relasi
|
||||||
}
|
}
|
||||||
|
@ -18,12 +18,14 @@ class TransactionDescription extends Model
|
|||||||
'order_id',
|
'order_id',
|
||||||
'user',
|
'user',
|
||||||
'judul',
|
'judul',
|
||||||
|
'status',
|
||||||
|
'background',
|
||||||
'deskripsi'
|
'deskripsi'
|
||||||
];
|
];
|
||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function order(){
|
public function order(){
|
||||||
return $this->belongsTo(Transaction::class, 'order_id', 'order_id');
|
return $this->belongsTo(Transaction::class, 'id', 'order_id');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function user(){
|
public function user(){
|
||||||
|
@ -15,20 +15,23 @@ class Transaction extends Model
|
|||||||
* @var array<int, string>
|
* @var array<int, string>
|
||||||
*/
|
*/
|
||||||
protected $fillable = [
|
protected $fillable = [
|
||||||
|
'id',
|
||||||
'pembeli',
|
'pembeli',
|
||||||
'penjual',
|
'penjual',
|
||||||
'judul_transaksi',
|
'nama_barang',
|
||||||
'deskripsi transaksi',
|
'deskripsi_transaksi',
|
||||||
|
'satuan_barang',
|
||||||
|
'harga_barang',
|
||||||
|
'jumlah_barang',
|
||||||
'persentase_keuntungan',
|
'persentase_keuntungan',
|
||||||
'total_keuntungan',
|
'total_keuntungan',
|
||||||
'harga',
|
|
||||||
'biaya_admin',
|
|
||||||
'total_harga',
|
'total_harga',
|
||||||
'signature_key',
|
'total_bayar',
|
||||||
'metode_pembayaran',
|
'token',
|
||||||
'status',
|
'status',
|
||||||
'batas_pembayaran',
|
'batas_pembayaran',
|
||||||
'batas_pengiriman_barang',
|
'batas_pengiriman_barang_awal',
|
||||||
|
'batas_pengiriman_barang_akhir',
|
||||||
];
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -39,20 +42,20 @@ class Transaction extends Model
|
|||||||
protected $casts = [
|
protected $casts = [
|
||||||
'batas_pembayaran' => 'datetime',
|
'batas_pembayaran' => 'datetime',
|
||||||
'batas_pengiriman_barang' => 'datetime',
|
'batas_pengiriman_barang' => 'datetime',
|
||||||
'order_id' => 'string',
|
'id' => 'string',
|
||||||
];
|
];
|
||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function pembeli(){
|
public function data_pembeli(){
|
||||||
return $this->belongsTo(User::class, 'email', 'pembeli');
|
return $this->belongsTo(User::class, 'pembeli', 'email');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function penjual(){
|
public function data_penjual(){
|
||||||
return $this->belongsTo(User::class, 'email', 'penjual');
|
return $this->belongsTo(User::class, 'penjual', 'email');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function refunds(){
|
public function refunds(){
|
||||||
return $this->hasMany(Refund::class, 'order_id', 'order_id');
|
return $this->hasMany(Refund::class, 'order_id', 'id');
|
||||||
}
|
}
|
||||||
//Relasi
|
//Relasi
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
"laravel/sanctum": "^3.2",
|
"laravel/sanctum": "^3.2",
|
||||||
"laravel/tinker": "^2.8",
|
"laravel/tinker": "^2.8",
|
||||||
"laravolt/indonesia": "^0.34.0",
|
"laravolt/indonesia": "^0.34.0",
|
||||||
|
"midtrans/midtrans-php": "^2.5",
|
||||||
"nesbot/carbon": "^2.69",
|
"nesbot/carbon": "^2.69",
|
||||||
"pusher/pusher-php-server": "^7.2",
|
"pusher/pusher-php-server": "^7.2",
|
||||||
"ramsey/uuid": "^4.7",
|
"ramsey/uuid": "^4.7",
|
||||||
|
57
composer.lock
generated
57
composer.lock
generated
@ -4,7 +4,7 @@
|
|||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "eb6424bf82942b6b939788b88ee6586b",
|
"content-hash": "4dd1066d585142b363e4e114601be8ce",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "brick/math",
|
"name": "brick/math",
|
||||||
@ -2111,6 +2111,61 @@
|
|||||||
],
|
],
|
||||||
"time": "2023-08-05T12:09:49+00:00"
|
"time": "2023-08-05T12:09:49+00:00"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "midtrans/midtrans-php",
|
||||||
|
"version": "2.5.2",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/Midtrans/midtrans-php.git",
|
||||||
|
"reference": "a1ad0c824449ca8c68c4cf11b3417ad518311d2b"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://api.github.com/repos/Midtrans/midtrans-php/zipball/a1ad0c824449ca8c68c4cf11b3417ad518311d2b",
|
||||||
|
"reference": "a1ad0c824449ca8c68c4cf11b3417ad518311d2b",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"ext-curl": "*",
|
||||||
|
"ext-json": "*",
|
||||||
|
"php": ">=5.4"
|
||||||
|
},
|
||||||
|
"require-dev": {
|
||||||
|
"phpunit/phpunit": "5.7.*",
|
||||||
|
"psy/psysh": "0.4.*"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Midtrans\\": "Midtrans/"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Andri Setiawan",
|
||||||
|
"email": "andri.setiawan@veritrans.co.id"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Alvin Litani",
|
||||||
|
"email": "alvin.litani@veritrans.co.id"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Ismail Faruqi",
|
||||||
|
"email": "ismail.faruqi@veritrans.co.id"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "PHP Wrapper for Midtrans Payment API.",
|
||||||
|
"homepage": "https://midtrans.com",
|
||||||
|
"support": {
|
||||||
|
"issues": "https://github.com/Midtrans/midtrans-php/issues",
|
||||||
|
"source": "https://github.com/Midtrans/midtrans-php/tree/2.5.2"
|
||||||
|
},
|
||||||
|
"time": "2021-08-23T08:52:05+00:00"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "monolog/monolog",
|
"name": "monolog/monolog",
|
||||||
"version": "3.4.0",
|
"version": "3.4.0",
|
||||||
|
@ -12,21 +12,33 @@ return new class extends Migration
|
|||||||
public function up(): void
|
public function up(): void
|
||||||
{
|
{
|
||||||
Schema::create('transactions', function (Blueprint $table) {
|
Schema::create('transactions', function (Blueprint $table) {
|
||||||
$table->uuid('order_id')->primary(); //order_id
|
$table->uuid('id')->primary(); //order_id
|
||||||
$table->string('pembeli'); // untuk customer_details
|
$table->string('pembeli'); // untuk customer_details
|
||||||
$table->string('penjual'); //merchant_name
|
$table->string('penjual'); //merchant_name
|
||||||
$table->string('judul_transaksi'); // item_details -> item_name
|
$table->string('nama_barang'); // item_details -> item_name
|
||||||
$table->string('deskripsi_transaksi');
|
$table->string('deskripsi_transaksi')->nullable();
|
||||||
|
$table->string('satuan_barang');
|
||||||
|
$table->double('harga_barang'); // harga sebelum penambahan
|
||||||
|
$table->double('jumlah_barang');
|
||||||
$table->double('persentase_keuntungan'); // persentase keuntungan
|
$table->double('persentase_keuntungan'); // persentase keuntungan
|
||||||
$table->double('total_keuntungan'); // perolehan keuntungan
|
$table->double('total_keuntungan'); // perolehan keuntungan
|
||||||
$table->double('harga'); // harga sebelum penambahan
|
|
||||||
$table->double('biaya_admin'); // biaya tambahan
|
|
||||||
$table->double('total_harga'); // gross amount
|
$table->double('total_harga'); // gross amount
|
||||||
$table->string('signature_key');
|
$table->double('total_bayar');
|
||||||
$table->string('metode_pembayaran');
|
$table->string('signature_key')->nullable();
|
||||||
$table->enum('status',['Settlement','Capture','Pending','Cancel','Refund','Expire','Failure','Progress','Failed'])->default('Pending'); // transaction_status
|
$table->string('token');
|
||||||
|
$table->string('metode_pembayaran')->nullable();
|
||||||
|
$table->string('acquire')->nullable();
|
||||||
|
$table->string('issuer')->nullable();
|
||||||
|
$table->char('currency',3)->nullable();
|
||||||
|
$table->string('fraud_status')->nullable();
|
||||||
|
$table->string('merchant_id')->nullable();
|
||||||
|
$table->string('status_code')->nullable();
|
||||||
|
$table->string('tipe_transaction')->nullable();
|
||||||
|
$table->enum('status',['settlement','capture','pending','cancel','refund','expire','failure','progress','failed','sending','sended','finished'])->default('pending'); // transaction_status
|
||||||
$table->timestamp('batas_pembayaran');
|
$table->timestamp('batas_pembayaran');
|
||||||
$table->timestamp('batas_pengiriman_barang');
|
$table->timestamp('batas_pengiriman_barang_awal');
|
||||||
|
$table->timestamp('batas_pengiriman_barang_akhir');
|
||||||
|
$table->timestamp('tanggal_pembayaran')->nullable();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
$table->foreign('pembeli')->on('users')->references('email');
|
$table->foreign('pembeli')->on('users')->references('email');
|
||||||
$table->foreign('penjual')->on('users')->references('email');
|
$table->foreign('penjual')->on('users')->references('email');
|
||||||
|
@ -16,9 +16,9 @@ return new class extends Migration
|
|||||||
$table->foreignUuid('order_id');
|
$table->foreignUuid('order_id');
|
||||||
$table->double('total',10);
|
$table->double('total',10);
|
||||||
$table->timestamp('due_date');
|
$table->timestamp('due_date');
|
||||||
$table->enum('status',['Partial Refund','Deny','Pending'])->default('Pending');
|
$table->enum('status',['partial refund','deny','pending'])->default('Pending');
|
||||||
|
$table->timestamps();
|
||||||
$table->foreign('order_id')->on('transactions')->references('order_id');
|
$table->foreign('order_id')->on('transactions')->references('id');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,8 +15,8 @@ return new class extends Migration
|
|||||||
$table->id();
|
$table->id();
|
||||||
$table->string('bulan',20);
|
$table->string('bulan',20);
|
||||||
$table->string('tahun',5);
|
$table->string('tahun',5);
|
||||||
$table->string('persentase',5);
|
$table->integer('persentase');
|
||||||
$table->string('status',15);
|
$table->enum('status',['Active', 'Nonactive']);
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -16,11 +16,12 @@ return new class extends Migration
|
|||||||
$table->foreignUuid('order_id');
|
$table->foreignUuid('order_id');
|
||||||
$table->string('status',15);
|
$table->string('status',15);
|
||||||
$table->string('user');
|
$table->string('user');
|
||||||
|
$table->string('background');
|
||||||
$table->string('judul');
|
$table->string('judul');
|
||||||
$table->string('deskripsi');
|
$table->string('deskripsi');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
$table->foreign('order_id')->on('transactions')->references('order_id');
|
$table->foreign('order_id')->on('transactions')->references('id');
|
||||||
$table->foreign('user')->on('users')->references('email');
|
$table->foreign('user')->on('users')->references('email');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,8 @@ namespace Database\Seeders;
|
|||||||
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||||
use Illuminate\Database\Seeder;
|
use Illuminate\Database\Seeder;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
|
use Carbon\Carbon;
|
||||||
|
use App\Models\Setting;
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use Faker\Factory as FakerFactory;
|
use Faker\Factory as FakerFactory;
|
||||||
use Faker\Provider\id_ID\Person as Person;
|
use Faker\Provider\id_ID\Person as Person;
|
||||||
@ -28,27 +30,31 @@ class DatabaseSeeder extends Seeder
|
|||||||
'nama_depan' => $faker->firstName,
|
'nama_depan' => $faker->firstName,
|
||||||
'nama_belakang' => $faker->lastName,
|
'nama_belakang' => $faker->lastName,
|
||||||
'tanggal_lahir' => $faker->date($format = 'Y-m-d', $max = 'now'),
|
'tanggal_lahir' => $faker->date($format = 'Y-m-d', $max = 'now'),
|
||||||
'email' => fake()->unique()->safeEmail(),
|
'email' => 'admin@example.net',
|
||||||
'email_verified_at' => now(),
|
'email_verified_at' => now(),
|
||||||
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
|
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
|
||||||
'remember_token' => Str::random(10),
|
'remember_token' => Str::random(10),
|
||||||
'role' => 'Admin',
|
'role' => 'Admin',
|
||||||
'nik' => $faker->nik($faker->randomElement(['male','female']), $faker->dateTimeBetween('-65 years', '-18 years')),
|
'nik' => $faker->nik($faker->randomElement(['male', 'female']), $faker->dateTimeBetween('-65 years', '-18 years')),
|
||||||
'alamat'=> $faker->address,
|
'alamat' => $faker->address,
|
||||||
'nohp'=> $faker->phoneNumber(),
|
'nohp' => $faker->phoneNumber(),
|
||||||
'status'=> 'Finished',
|
'status' => 'Finished',
|
||||||
'persentase_kemiripan' => '100%',
|
'persentase_kemiripan' => '100%',
|
||||||
'gender' => $faker->randomElement(['Laki-laki', 'Perempuan']),
|
'gender' => $faker->randomElement(['Laki-laki', 'Perempuan']),
|
||||||
'kode_kelurahan' => '1101012002',
|
'kode_kelurahan' => '1101012002',
|
||||||
]);
|
]);
|
||||||
User::factory(20)->create();
|
User::factory(20)->create();
|
||||||
|
|
||||||
$this->call([
|
$now = Carbon::now()->tz('Asia/Jakarta');
|
||||||
ProvincesSeeder::class,
|
$bulan = $now->format('F');
|
||||||
CitiesSeeder::class,
|
$tahun = $now->year;
|
||||||
DistrictsSeeder::class,
|
Setting::create([
|
||||||
VillagesSeeder::class,
|
'bulan' => $bulan,
|
||||||
|
'tahun' => $tahun,
|
||||||
|
'persentase' => 5,
|
||||||
|
'status' => 'Active'
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
$this->call([ProvincesSeeder::class, CitiesSeeder::class, DistrictsSeeder::class, VillagesSeeder::class]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -846,8 +846,9 @@ tr:first-child > td > .fc-day-grid-event {
|
|||||||
border-top: 1px solid #f2f2f2;
|
border-top: 1px solid #f2f2f2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* 1.18 Select2 */
|
|
||||||
.select2-container--default
|
/* 1.18 Select2
|
||||||
|
/* .select2-container--default
|
||||||
.select2-search--dropdown
|
.select2-search--dropdown
|
||||||
.select2-search__field:focus {
|
.select2-search__field:focus {
|
||||||
outline: none;
|
outline: none;
|
||||||
@ -949,6 +950,7 @@ tr:first-child > td > .fc-day-grid-event {
|
|||||||
.select2-results__option {
|
.select2-results__option {
|
||||||
padding-right: 10px 15px;
|
padding-right: 10px 15px;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
/* 1.19 Selectric */
|
/* 1.19 Selectric */
|
||||||
.selectric {
|
.selectric {
|
||||||
|
1874
public/assets/css/components.min.css
vendored
1874
public/assets/css/components.min.css
vendored
File diff suppressed because one or more lines are too long
@ -58,6 +58,13 @@ video {
|
|||||||
z-index: 3;
|
z-index: 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.flex-input-btn {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-top: 3%;
|
||||||
|
}
|
||||||
|
|
||||||
form.sign-up-form {
|
form.sign-up-form {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: start;
|
align-items: start;
|
||||||
@ -103,8 +110,8 @@ form p {
|
|||||||
.input-field-signup-flex {
|
.input-field-signup-flex {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 55px;
|
height: 55px;
|
||||||
|
margin-top: 2%;
|
||||||
background-color: #f0f0f0;
|
background-color: #f0f0f0;
|
||||||
margin-top: 10px;
|
|
||||||
border-radius: 1rem;
|
border-radius: 1rem;
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: 15% 85%;
|
grid-template-columns: 15% 85%;
|
||||||
@ -113,6 +120,41 @@ form p {
|
|||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.input {
|
||||||
|
width: 100%;
|
||||||
|
height: 55px;
|
||||||
|
background-color: #f0f0f0;
|
||||||
|
border-radius: 1rem;
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 15% 85%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.input input {
|
||||||
|
width: 110%;
|
||||||
|
height: 100%;
|
||||||
|
background: none;
|
||||||
|
outline: none;
|
||||||
|
border: none;
|
||||||
|
border-radius: 1rem;
|
||||||
|
line-height: 1;
|
||||||
|
font-weight: 600;
|
||||||
|
margin-right: 1rem;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.input i {
|
||||||
|
padding: 0 1.5rem;
|
||||||
|
color: #acacac;
|
||||||
|
transition: 0.5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.up {
|
||||||
|
margin-top: 3%;
|
||||||
|
}
|
||||||
|
|
||||||
.input-field-signin-flex input,
|
.input-field-signin-flex input,
|
||||||
.input-field-signup-flex input {
|
.input-field-signup-flex input {
|
||||||
width: 82%;
|
width: 82%;
|
||||||
@ -233,6 +275,14 @@ form p {
|
|||||||
transform: translateY(-0.252m);
|
transform: translateY(-0.252m);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn-otp:disabled {
|
||||||
|
cursor: not-allowed; /* Mengganti cursor menjadi "not-allowed" saat tombol dinonaktifkan */
|
||||||
|
opacity: 0.6; /* Mengurangi opasitas tombol saat dinonaktifkan */
|
||||||
|
border-color: #ccc; /* Mengganti warna border saat dinonaktifkan */
|
||||||
|
color: #ccc; /* Mengganti warna teks saat dinonaktifkan */
|
||||||
|
pointer-events: none; /* Mencegah interaksi dengan tombol saat dinonaktifkan */
|
||||||
|
}
|
||||||
|
|
||||||
.panels-container {
|
.panels-container {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
File diff suppressed because it is too large
Load Diff
BIN
public/assets/images/google-removebg-preview.png
Normal file
BIN
public/assets/images/google-removebg-preview.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 18 KiB |
@ -114,13 +114,6 @@ form_4_back_btn.addEventListener("click", function () {
|
|||||||
form_4_progessbar.classList.remove("active");
|
form_4_progessbar.classList.remove("active");
|
||||||
});
|
});
|
||||||
|
|
||||||
// btn_done.addEventListener("click", function () {
|
|
||||||
// modal_wrapper.classList.add("active");
|
|
||||||
// });
|
|
||||||
|
|
||||||
// shadow.addEventListener("click", function () {
|
|
||||||
// modal_wrapper.classList.remove("active");
|
|
||||||
// });
|
|
||||||
/******************************************
|
/******************************************
|
||||||
* MULTIPLE FORM END
|
* MULTIPLE FORM END
|
||||||
******************************************/
|
******************************************/
|
||||||
|
@ -41,9 +41,17 @@ $("[data-checkboxes]").each(function () {
|
|||||||
// User
|
// User
|
||||||
$("#table-1").dataTable({
|
$("#table-1").dataTable({
|
||||||
columnDefs: [{ sortable: false, targets: [2, 7] }],
|
columnDefs: [{ sortable: false, targets: [2, 7] }],
|
||||||
|
searchable: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
// Refund, Setting, Transaction
|
// Refund, Setting, Transaction
|
||||||
$("#table-2").dataTable({
|
$("#table-2").dataTable({
|
||||||
ordering: true,
|
ordering: true,
|
||||||
|
searchable: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
// Transaksi pembeli
|
||||||
|
$("#table-3").dataTable({
|
||||||
|
columnDefs: [{ sortable: false, targets: [5] }],
|
||||||
|
searchable: true,
|
||||||
});
|
});
|
||||||
|
@ -1,14 +1,15 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
// ChartJS
|
// ChartJS
|
||||||
if(window.Chart) {
|
if (window.Chart) {
|
||||||
Chart.defaults.global.defaultFontFamily = "'Nunito', 'Segoe UI', 'Arial'";
|
Chart.defaults.global.defaultFontFamily = "'Nunito', 'Segoe UI', 'Arial'";
|
||||||
Chart.defaults.global.defaultFontSize = 11;
|
Chart.defaults.global.defaultFontSize = 11;
|
||||||
Chart.defaults.global.defaultFontStyle = 500;
|
Chart.defaults.global.defaultFontStyle = 500;
|
||||||
Chart.defaults.global.defaultFontColor = "#999";
|
Chart.defaults.global.defaultFontColor = "#999";
|
||||||
Chart.defaults.global.tooltips.backgroundColor = '#000';
|
Chart.defaults.global.tooltips.backgroundColor = "#000";
|
||||||
Chart.defaults.global.tooltips.titleFontFamily = "'Nunito', 'Segoe UI', 'Arial'";
|
Chart.defaults.global.tooltips.titleFontFamily =
|
||||||
Chart.defaults.global.tooltips.titleFontColor = '#fff';
|
"'Nunito', 'Segoe UI', 'Arial'";
|
||||||
|
Chart.defaults.global.tooltips.titleFontColor = "#fff";
|
||||||
Chart.defaults.global.tooltips.titleFontSize = 20;
|
Chart.defaults.global.tooltips.titleFontSize = 20;
|
||||||
Chart.defaults.global.tooltips.xPadding = 10;
|
Chart.defaults.global.tooltips.xPadding = 10;
|
||||||
Chart.defaults.global.tooltips.yPadding = 10;
|
Chart.defaults.global.tooltips.yPadding = 10;
|
||||||
@ -16,14 +17,14 @@ if(window.Chart) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// DropzoneJS
|
// DropzoneJS
|
||||||
if(window.Dropzone) {
|
if (window.Dropzone) {
|
||||||
Dropzone.autoDiscover = false;
|
Dropzone.autoDiscover = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Basic confirm box
|
// Basic confirm box
|
||||||
$('[data-confirm]').each(function() {
|
$("[data-confirm]").each(function () {
|
||||||
var me = $(this),
|
var me = $(this),
|
||||||
me_data = me.data('confirm');
|
me_data = me.data("confirm");
|
||||||
|
|
||||||
me_data = me_data.split("|");
|
me_data = me_data.split("|");
|
||||||
me.fireModal({
|
me.fireModal({
|
||||||
@ -31,149 +32,166 @@ $('[data-confirm]').each(function() {
|
|||||||
body: me_data[1],
|
body: me_data[1],
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
{
|
||||||
text: me.data('confirm-text-yes') || 'Yes',
|
text: me.data("confirm-text-yes") || "Yes",
|
||||||
class: 'btn btn-danger btn-shadow',
|
class: "btn btn-danger btn-shadow",
|
||||||
handler: function() {
|
handler: function () {
|
||||||
eval(me.data('confirm-yes'));
|
eval(me.data("confirm-yes"));
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: me.data('confirm-text-cancel') || 'Cancel',
|
text: me.data("confirm-text-cancel") || "Cancel",
|
||||||
class: 'btn btn-secondary',
|
class: "btn btn-secondary",
|
||||||
handler: function(modal) {
|
handler: function (modal) {
|
||||||
$.destroyModal(modal);
|
$.destroyModal(modal);
|
||||||
eval(me.data('confirm-no'));
|
eval(me.data("confirm-no"));
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
]
|
],
|
||||||
})
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Global
|
// Global
|
||||||
$(function() {
|
$(function () {
|
||||||
let sidebar_nicescroll_opts = {
|
let sidebar_nicescroll_opts = {
|
||||||
cursoropacitymin: 0,
|
cursoropacitymin: 0,
|
||||||
cursoropacitymax: .8,
|
cursoropacitymax: 0.8,
|
||||||
zindex: 892
|
zindex: 892,
|
||||||
}, now_layout_class = null;
|
},
|
||||||
|
now_layout_class = null;
|
||||||
|
|
||||||
var sidebar_sticky = function() {
|
var sidebar_sticky = function () {
|
||||||
if($("body").hasClass('layout-2')) {
|
if ($("body").hasClass("layout-2")) {
|
||||||
$("body.layout-2 #sidebar-wrapper").stick_in_parent({
|
$("body.layout-2 #sidebar-wrapper").stick_in_parent({
|
||||||
parent: $('body')
|
parent: $("body"),
|
||||||
|
});
|
||||||
|
$("body.layout-2 #sidebar-wrapper").stick_in_parent({
|
||||||
|
recalc_every: 1,
|
||||||
});
|
});
|
||||||
$("body.layout-2 #sidebar-wrapper").stick_in_parent({recalc_every: 1});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
};
|
||||||
sidebar_sticky();
|
sidebar_sticky();
|
||||||
|
|
||||||
var sidebar_nicescroll;
|
var sidebar_nicescroll;
|
||||||
var update_sidebar_nicescroll = function() {
|
var update_sidebar_nicescroll = function () {
|
||||||
let a = setInterval(function() {
|
let a = setInterval(function () {
|
||||||
if(sidebar_nicescroll != null)
|
if (sidebar_nicescroll != null) sidebar_nicescroll.resize();
|
||||||
sidebar_nicescroll.resize();
|
|
||||||
}, 10);
|
}, 10);
|
||||||
|
|
||||||
setTimeout(function() {
|
setTimeout(function () {
|
||||||
clearInterval(a);
|
clearInterval(a);
|
||||||
}, 600);
|
}, 600);
|
||||||
}
|
};
|
||||||
|
|
||||||
var sidebar_dropdown = function() {
|
var sidebar_dropdown = function () {
|
||||||
if($(".main-sidebar").length) {
|
if ($(".main-sidebar").length) {
|
||||||
$(".main-sidebar").niceScroll(sidebar_nicescroll_opts);
|
$(".main-sidebar").niceScroll(sidebar_nicescroll_opts);
|
||||||
sidebar_nicescroll = $(".main-sidebar").getNiceScroll();
|
sidebar_nicescroll = $(".main-sidebar").getNiceScroll();
|
||||||
|
|
||||||
$(".main-sidebar .sidebar-menu li a.has-dropdown").off('click').on('click', function() {
|
$(".main-sidebar .sidebar-menu li a.has-dropdown")
|
||||||
|
.off("click")
|
||||||
|
.on("click", function () {
|
||||||
var me = $(this);
|
var me = $(this);
|
||||||
|
|
||||||
me.parent().find('> .dropdown-menu').slideToggle(500, function() {
|
me.parent()
|
||||||
|
.find("> .dropdown-menu")
|
||||||
|
.slideToggle(500, function () {
|
||||||
update_sidebar_nicescroll();
|
update_sidebar_nicescroll();
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
sidebar_dropdown();
|
sidebar_dropdown();
|
||||||
|
|
||||||
if($("#top-5-scroll").length) {
|
if ($("#top-5-scroll").length) {
|
||||||
$("#top-5-scroll").css({
|
$("#top-5-scroll")
|
||||||
height: 315
|
.css({
|
||||||
}).niceScroll();
|
height: 315,
|
||||||
|
})
|
||||||
|
.niceScroll();
|
||||||
}
|
}
|
||||||
|
|
||||||
$(".main-content").css({
|
$(".main-content").css({
|
||||||
minHeight: $(window).outerHeight() - 95
|
minHeight: $(window).outerHeight() - 95,
|
||||||
})
|
});
|
||||||
|
|
||||||
$(".nav-collapse-toggle").click(function() {
|
$(".nav-collapse-toggle").click(function () {
|
||||||
$(this).parent().find('.navbar-nav').toggleClass('show');
|
$(this).parent().find(".navbar-nav").toggleClass("show");
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
$(document).on('click', function(e) {
|
$(document).on("click", function (e) {
|
||||||
$(".nav-collapse .navbar-nav").removeClass('show');
|
$(".nav-collapse .navbar-nav").removeClass("show");
|
||||||
});
|
});
|
||||||
|
|
||||||
var toggle_sidebar_mini = function(mini) {
|
var toggle_sidebar_mini = function (mini) {
|
||||||
let body = $('body');
|
let body = $("body");
|
||||||
|
|
||||||
if(!mini) {
|
if (!mini) {
|
||||||
body.removeClass('sidebar-mini');
|
body.removeClass("sidebar-mini");
|
||||||
$(".main-sidebar").css({
|
$(".main-sidebar").css({
|
||||||
overflow: 'hidden'
|
overflow: "hidden",
|
||||||
});
|
});
|
||||||
setTimeout(function() {
|
setTimeout(function () {
|
||||||
$(".main-sidebar").niceScroll(sidebar_nicescroll_opts);
|
$(".main-sidebar").niceScroll(sidebar_nicescroll_opts);
|
||||||
sidebar_nicescroll = $(".main-sidebar").getNiceScroll();
|
sidebar_nicescroll = $(".main-sidebar").getNiceScroll();
|
||||||
}, 500);
|
}, 500);
|
||||||
$(".main-sidebar .sidebar-menu > li > ul .dropdown-title").remove();
|
$(".main-sidebar .sidebar-menu > li > ul .dropdown-title").remove();
|
||||||
$(".main-sidebar .sidebar-menu > li > a").removeAttr('data-toggle');
|
$(".main-sidebar .sidebar-menu > li > a").removeAttr("data-toggle");
|
||||||
$(".main-sidebar .sidebar-menu > li > a").removeAttr('data-original-title');
|
$(".main-sidebar .sidebar-menu > li > a").removeAttr(
|
||||||
$(".main-sidebar .sidebar-menu > li > a").removeAttr('title');
|
"data-original-title"
|
||||||
}else{
|
);
|
||||||
body.addClass('sidebar-mini');
|
$(".main-sidebar .sidebar-menu > li > a").removeAttr("title");
|
||||||
body.removeClass('sidebar-show');
|
} else {
|
||||||
|
body.addClass("sidebar-mini");
|
||||||
|
body.removeClass("sidebar-show");
|
||||||
sidebar_nicescroll.remove();
|
sidebar_nicescroll.remove();
|
||||||
sidebar_nicescroll = null;
|
sidebar_nicescroll = null;
|
||||||
$(".main-sidebar .sidebar-menu > li").each(function() {
|
$(".main-sidebar .sidebar-menu > li").each(function () {
|
||||||
let me = $(this);
|
let me = $(this);
|
||||||
|
|
||||||
if(me.find('> .dropdown-menu').length) {
|
if (me.find("> .dropdown-menu").length) {
|
||||||
me.find('> .dropdown-menu').hide();
|
me.find("> .dropdown-menu").hide();
|
||||||
me.find('> .dropdown-menu').prepend('<li class="dropdown-title pt-3">'+ me.find('> a').text() +'</li>');
|
me.find("> .dropdown-menu").prepend(
|
||||||
}else{
|
'<li class="dropdown-title pt-3">' +
|
||||||
me.find('> a').attr('data-toggle', 'tooltip');
|
me.find("> a").text() +
|
||||||
me.find('> a').attr('data-original-title', me.find('> a').text());
|
"</li>"
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
me.find("> a").attr("data-toggle", "tooltip");
|
||||||
|
me.find("> a").attr(
|
||||||
|
"data-original-title",
|
||||||
|
me.find("> a").text()
|
||||||
|
);
|
||||||
$("[data-toggle='tooltip']").tooltip({
|
$("[data-toggle='tooltip']").tooltip({
|
||||||
placement: 'right'
|
placement: "right",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
$("[data-toggle='sidebar']").click(function() {
|
$("[data-toggle='sidebar']").click(function () {
|
||||||
var body = $("body"),
|
var body = $("body"),
|
||||||
w = $(window);
|
w = $(window);
|
||||||
|
|
||||||
if(w.outerWidth() <= 1024) {
|
if (w.outerWidth() <= 1024) {
|
||||||
body.removeClass('search-show search-gone');
|
body.removeClass("search-show search-gone");
|
||||||
if(body.hasClass('sidebar-gone')) {
|
if (body.hasClass("sidebar-gone")) {
|
||||||
body.removeClass('sidebar-gone');
|
body.removeClass("sidebar-gone");
|
||||||
body.addClass('sidebar-show');
|
body.addClass("sidebar-show");
|
||||||
}else{
|
} else {
|
||||||
body.addClass('sidebar-gone');
|
body.addClass("sidebar-gone");
|
||||||
body.removeClass('sidebar-show');
|
body.removeClass("sidebar-show");
|
||||||
}
|
}
|
||||||
|
|
||||||
update_sidebar_nicescroll();
|
update_sidebar_nicescroll();
|
||||||
}else{
|
} else {
|
||||||
body.removeClass('search-show search-gone');
|
body.removeClass("search-show search-gone");
|
||||||
if(body.hasClass('sidebar-mini')) {
|
if (body.hasClass("sidebar-mini")) {
|
||||||
toggle_sidebar_mini(false);
|
toggle_sidebar_mini(false);
|
||||||
}else{
|
} else {
|
||||||
toggle_sidebar_mini(true);
|
toggle_sidebar_mini(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -181,30 +199,38 @@ $(function() {
|
|||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
var toggleLayout = function() {
|
var toggleLayout = function () {
|
||||||
var w = $(window),
|
var w = $(window),
|
||||||
layout_class = $('body').attr('class') || '',
|
layout_class = $("body").attr("class") || "",
|
||||||
layout_classes = (layout_class.trim().length > 0 ? layout_class.split(' ') : '');
|
layout_classes =
|
||||||
|
layout_class.trim().length > 0 ? layout_class.split(" ") : "";
|
||||||
|
|
||||||
if(layout_classes.length > 0) {
|
if (layout_classes.length > 0) {
|
||||||
layout_classes.forEach(function(item) {
|
layout_classes.forEach(function (item) {
|
||||||
if(item.indexOf('layout-') != -1) {
|
if (item.indexOf("layout-") != -1) {
|
||||||
now_layout_class = item;
|
now_layout_class = item;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if(w.outerWidth() <= 1024) {
|
if (w.outerWidth() <= 1024) {
|
||||||
if($('body').hasClass('sidebar-mini')) {
|
if ($("body").hasClass("sidebar-mini")) {
|
||||||
toggle_sidebar_mini(false);
|
toggle_sidebar_mini(false);
|
||||||
$('.main-sidebar').niceScroll(sidebar_nicescroll_opts);
|
$(".main-sidebar").niceScroll(sidebar_nicescroll_opts);
|
||||||
sidebar_nicescroll = $(".main-sidebar").getNiceScroll();
|
sidebar_nicescroll = $(".main-sidebar").getNiceScroll();
|
||||||
}
|
}
|
||||||
|
|
||||||
$("body").addClass("sidebar-gone");
|
$("body").addClass("sidebar-gone");
|
||||||
$("body").removeClass("layout-2 layout-3 sidebar-mini sidebar-show");
|
$("body").removeClass(
|
||||||
$("body").off('click').on('click', function(e) {
|
"layout-2 layout-3 sidebar-mini sidebar-show"
|
||||||
if($(e.target).hasClass('sidebar-show') || $(e.target).hasClass('search-show')) {
|
);
|
||||||
|
$("body")
|
||||||
|
.off("click")
|
||||||
|
.on("click", function (e) {
|
||||||
|
if (
|
||||||
|
$(e.target).hasClass("sidebar-show") ||
|
||||||
|
$(e.target).hasClass("search-show")
|
||||||
|
) {
|
||||||
$("body").removeClass("sidebar-show");
|
$("body").removeClass("sidebar-show");
|
||||||
$("body").addClass("sidebar-gone");
|
$("body").addClass("sidebar-gone");
|
||||||
$("body").removeClass("search-show");
|
$("body").removeClass("search-show");
|
||||||
@ -215,77 +241,98 @@ $(function() {
|
|||||||
|
|
||||||
update_sidebar_nicescroll();
|
update_sidebar_nicescroll();
|
||||||
|
|
||||||
if(now_layout_class == 'layout-3') {
|
if (now_layout_class == "layout-3") {
|
||||||
let nav_second_classes = $(".navbar-secondary").attr('class'),
|
let nav_second_classes = $(".navbar-secondary").attr("class"),
|
||||||
nav_second = $(".navbar-secondary");
|
nav_second = $(".navbar-secondary");
|
||||||
|
|
||||||
nav_second.attr('data-nav-classes', nav_second_classes);
|
nav_second.attr("data-nav-classes", nav_second_classes);
|
||||||
nav_second.removeAttr('class');
|
nav_second.removeAttr("class");
|
||||||
nav_second.addClass('main-sidebar');
|
nav_second.addClass("main-sidebar");
|
||||||
|
|
||||||
let main_sidebar = $(".main-sidebar");
|
let main_sidebar = $(".main-sidebar");
|
||||||
main_sidebar.find('.container').addClass('sidebar-wrapper').removeClass('container');
|
main_sidebar
|
||||||
main_sidebar.find('.navbar-nav').addClass('sidebar-menu').removeClass('navbar-nav');
|
.find(".container")
|
||||||
main_sidebar.find('.sidebar-menu .nav-item.dropdown.show a').click();
|
.addClass("sidebar-wrapper")
|
||||||
main_sidebar.find('.sidebar-brand').remove();
|
.removeClass("container");
|
||||||
main_sidebar.find('.sidebar-menu').before($('<div>', {
|
main_sidebar
|
||||||
class: 'sidebar-brand'
|
.find(".navbar-nav")
|
||||||
|
.addClass("sidebar-menu")
|
||||||
|
.removeClass("navbar-nav");
|
||||||
|
main_sidebar
|
||||||
|
.find(".sidebar-menu .nav-item.dropdown.show a")
|
||||||
|
.click();
|
||||||
|
main_sidebar.find(".sidebar-brand").remove();
|
||||||
|
main_sidebar.find(".sidebar-menu").before(
|
||||||
|
$("<div>", {
|
||||||
|
class: "sidebar-brand",
|
||||||
}).append(
|
}).append(
|
||||||
$('<a>', {
|
$("<a>", {
|
||||||
href: $('.navbar-brand').attr('href'),
|
href: $(".navbar-brand").attr("href"),
|
||||||
}).html($('.navbar-brand').html())
|
}).html($(".navbar-brand").html())
|
||||||
));
|
)
|
||||||
setTimeout(function() {
|
);
|
||||||
sidebar_nicescroll = main_sidebar.niceScroll(sidebar_nicescroll_opts);
|
setTimeout(function () {
|
||||||
|
sidebar_nicescroll = main_sidebar.niceScroll(
|
||||||
|
sidebar_nicescroll_opts
|
||||||
|
);
|
||||||
sidebar_nicescroll = main_sidebar.getNiceScroll();
|
sidebar_nicescroll = main_sidebar.getNiceScroll();
|
||||||
}, 700);
|
}, 700);
|
||||||
|
|
||||||
sidebar_dropdown();
|
sidebar_dropdown();
|
||||||
$(".main-wrapper").removeClass("container");
|
$(".main-wrapper").removeClass("container");
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
$("body").removeClass("sidebar-gone sidebar-show");
|
$("body").removeClass("sidebar-gone sidebar-show");
|
||||||
if(now_layout_class)
|
if (now_layout_class) $("body").addClass(now_layout_class);
|
||||||
$("body").addClass(now_layout_class);
|
|
||||||
|
|
||||||
let nav_second_classes = $(".main-sidebar").attr('data-nav-classes'),
|
let nav_second_classes =
|
||||||
|
$(".main-sidebar").attr("data-nav-classes"),
|
||||||
nav_second = $(".main-sidebar");
|
nav_second = $(".main-sidebar");
|
||||||
|
|
||||||
if(now_layout_class == 'layout-3' && nav_second.hasClass('main-sidebar')) {
|
if (
|
||||||
nav_second.find(".sidebar-menu li a.has-dropdown").off('click');
|
now_layout_class == "layout-3" &&
|
||||||
nav_second.find('.sidebar-brand').remove();
|
nav_second.hasClass("main-sidebar")
|
||||||
nav_second.removeAttr('class');
|
) {
|
||||||
|
nav_second.find(".sidebar-menu li a.has-dropdown").off("click");
|
||||||
|
nav_second.find(".sidebar-brand").remove();
|
||||||
|
nav_second.removeAttr("class");
|
||||||
nav_second.addClass(nav_second_classes);
|
nav_second.addClass(nav_second_classes);
|
||||||
|
|
||||||
let main_sidebar = $(".navbar-secondary");
|
let main_sidebar = $(".navbar-secondary");
|
||||||
main_sidebar.find('.sidebar-wrapper').addClass('container').removeClass('sidebar-wrapper');
|
main_sidebar
|
||||||
main_sidebar.find('.sidebar-menu').addClass('navbar-nav').removeClass('sidebar-menu');
|
.find(".sidebar-wrapper")
|
||||||
main_sidebar.find('.dropdown-menu').hide();
|
.addClass("container")
|
||||||
main_sidebar.removeAttr('style');
|
.removeClass("sidebar-wrapper");
|
||||||
main_sidebar.removeAttr('tabindex');
|
main_sidebar
|
||||||
main_sidebar.removeAttr('data-nav-classes');
|
.find(".sidebar-menu")
|
||||||
|
.addClass("navbar-nav")
|
||||||
|
.removeClass("sidebar-menu");
|
||||||
|
main_sidebar.find(".dropdown-menu").hide();
|
||||||
|
main_sidebar.removeAttr("style");
|
||||||
|
main_sidebar.removeAttr("tabindex");
|
||||||
|
main_sidebar.removeAttr("data-nav-classes");
|
||||||
$(".main-wrapper").addClass("container");
|
$(".main-wrapper").addClass("container");
|
||||||
// if(sidebar_nicescroll != null)
|
// if(sidebar_nicescroll != null)
|
||||||
// sidebar_nicescroll.remove();
|
// sidebar_nicescroll.remove();
|
||||||
}else if(now_layout_class == 'layout-2') {
|
} else if (now_layout_class == "layout-2") {
|
||||||
$("body").addClass("layout-2");
|
$("body").addClass("layout-2");
|
||||||
}else{
|
} else {
|
||||||
update_sidebar_nicescroll();
|
update_sidebar_nicescroll();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
toggleLayout();
|
toggleLayout();
|
||||||
$(window).resize(toggleLayout);
|
$(window).resize(toggleLayout);
|
||||||
|
|
||||||
$("[data-toggle='search']").click(function() {
|
$("[data-toggle='search']").click(function () {
|
||||||
var body = $("body");
|
var body = $("body");
|
||||||
|
|
||||||
if(body.hasClass('search-gone')) {
|
if (body.hasClass("search-gone")) {
|
||||||
body.addClass('search-gone');
|
body.addClass("search-gone");
|
||||||
body.removeClass('search-show');
|
body.removeClass("search-show");
|
||||||
}else{
|
} else {
|
||||||
body.removeClass('search-gone');
|
body.removeClass("search-gone");
|
||||||
body.addClass('search-show');
|
body.addClass("search-show");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -294,49 +341,55 @@ $(function() {
|
|||||||
|
|
||||||
// popover
|
// popover
|
||||||
$('[data-toggle="popover"]').popover({
|
$('[data-toggle="popover"]').popover({
|
||||||
container: 'body'
|
container: "body",
|
||||||
});
|
});
|
||||||
|
|
||||||
// Select2
|
// Select2
|
||||||
if(jQuery().select2) {
|
// if(jQuery().select2) {
|
||||||
$(".select2").select2();
|
// $(".select2").select2();
|
||||||
}
|
// }
|
||||||
|
|
||||||
// Selectric
|
// Selectric
|
||||||
if(jQuery().selectric) {
|
if (jQuery().selectric) {
|
||||||
$(".selectric").selectric({
|
$(".selectric").selectric({
|
||||||
disableOnMobile: false,
|
disableOnMobile: false,
|
||||||
nativeOnMobile: false
|
nativeOnMobile: false,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
$(".notification-toggle").dropdown();
|
$(".notification-toggle").dropdown();
|
||||||
$(".notification-toggle").parent().on('shown.bs.dropdown', function() {
|
$(".notification-toggle")
|
||||||
|
.parent()
|
||||||
|
.on("shown.bs.dropdown", function () {
|
||||||
$(".dropdown-list-icons").niceScroll({
|
$(".dropdown-list-icons").niceScroll({
|
||||||
cursoropacitymin: .3,
|
cursoropacitymin: 0.3,
|
||||||
cursoropacitymax: .8,
|
cursoropacitymax: 0.8,
|
||||||
cursorwidth: 7
|
cursorwidth: 7,
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$(".message-toggle").dropdown();
|
$(".message-toggle").dropdown();
|
||||||
$(".message-toggle").parent().on('shown.bs.dropdown', function() {
|
$(".message-toggle")
|
||||||
|
.parent()
|
||||||
|
.on("shown.bs.dropdown", function () {
|
||||||
$(".dropdown-list-message").niceScroll({
|
$(".dropdown-list-message").niceScroll({
|
||||||
cursoropacitymin: .3,
|
cursoropacitymin: 0.3,
|
||||||
cursoropacitymax: .8,
|
cursoropacitymax: 0.8,
|
||||||
cursorwidth: 7
|
cursorwidth: 7,
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
if($(".chat-content").length) {
|
if ($(".chat-content").length) {
|
||||||
$(".chat-content").niceScroll({
|
$(".chat-content").niceScroll({
|
||||||
cursoropacitymin: .3,
|
cursoropacitymin: 0.3,
|
||||||
cursoropacitymax: .8,
|
cursoropacitymax: 0.8,
|
||||||
});
|
});
|
||||||
$('.chat-content').getNiceScroll(0).doScrollTop($('.chat-content').height());
|
$(".chat-content")
|
||||||
|
.getNiceScroll(0)
|
||||||
|
.doScrollTop($(".chat-content").height());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(jQuery().summernote) {
|
if (jQuery().summernote) {
|
||||||
$(".summernote").summernote({
|
$(".summernote").summernote({
|
||||||
dialogsInBody: true,
|
dialogsInBody: true,
|
||||||
minHeight: 250,
|
minHeight: 250,
|
||||||
@ -345,58 +398,58 @@ $(function() {
|
|||||||
dialogsInBody: true,
|
dialogsInBody: true,
|
||||||
minHeight: 150,
|
minHeight: 150,
|
||||||
toolbar: [
|
toolbar: [
|
||||||
['style', ['bold', 'italic', 'underline', 'clear']],
|
["style", ["bold", "italic", "underline", "clear"]],
|
||||||
['font', ['strikethrough']],
|
["font", ["strikethrough"]],
|
||||||
['para', ['paragraph']]
|
["para", ["paragraph"]],
|
||||||
]
|
],
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if(window.CodeMirror) {
|
if (window.CodeMirror) {
|
||||||
$(".codeeditor").each(function() {
|
$(".codeeditor").each(function () {
|
||||||
let editor = CodeMirror.fromTextArea(this, {
|
let editor = CodeMirror.fromTextArea(this, {
|
||||||
lineNumbers: true,
|
lineNumbers: true,
|
||||||
theme: "duotone-dark",
|
theme: "duotone-dark",
|
||||||
mode: 'javascript',
|
mode: "javascript",
|
||||||
height: 200
|
height: 200,
|
||||||
});
|
});
|
||||||
editor.setSize("100%", 200);
|
editor.setSize("100%", 200);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Follow function
|
// Follow function
|
||||||
$('.follow-btn, .following-btn').each(function() {
|
$(".follow-btn, .following-btn").each(function () {
|
||||||
var me = $(this),
|
var me = $(this),
|
||||||
follow_text = 'Follow',
|
follow_text = "Follow",
|
||||||
unfollow_text = 'Following';
|
unfollow_text = "Following";
|
||||||
|
|
||||||
me.click(function() {
|
me.click(function () {
|
||||||
if(me.hasClass('following-btn')) {
|
if (me.hasClass("following-btn")) {
|
||||||
me.removeClass('btn-danger');
|
me.removeClass("btn-danger");
|
||||||
me.removeClass('following-btn');
|
me.removeClass("following-btn");
|
||||||
me.addClass('btn-primary');
|
me.addClass("btn-primary");
|
||||||
me.html(follow_text);
|
me.html(follow_text);
|
||||||
|
|
||||||
eval(me.data('unfollow-action'));
|
eval(me.data("unfollow-action"));
|
||||||
}else{
|
} else {
|
||||||
me.removeClass('btn-primary');
|
me.removeClass("btn-primary");
|
||||||
me.addClass('btn-danger');
|
me.addClass("btn-danger");
|
||||||
me.addClass('following-btn');
|
me.addClass("following-btn");
|
||||||
me.html(unfollow_text);
|
me.html(unfollow_text);
|
||||||
|
|
||||||
eval(me.data('follow-action'));
|
eval(me.data("follow-action"));
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Dismiss function
|
// Dismiss function
|
||||||
$("[data-dismiss]").each(function() {
|
$("[data-dismiss]").each(function () {
|
||||||
var me = $(this),
|
var me = $(this),
|
||||||
target = me.data('dismiss');
|
target = me.data("dismiss");
|
||||||
|
|
||||||
me.click(function() {
|
me.click(function () {
|
||||||
$(target).fadeOut(function() {
|
$(target).fadeOut(function () {
|
||||||
$(target).remove();
|
$(target).remove();
|
||||||
});
|
});
|
||||||
return false;
|
return false;
|
||||||
@ -404,16 +457,16 @@ $(function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Collapsable
|
// Collapsable
|
||||||
$("[data-collapse]").each(function() {
|
$("[data-collapse]").each(function () {
|
||||||
var me = $(this),
|
var me = $(this),
|
||||||
target = me.data('collapse');
|
target = me.data("collapse");
|
||||||
|
|
||||||
me.click(function() {
|
me.click(function () {
|
||||||
$(target).collapse('toggle');
|
$(target).collapse("toggle");
|
||||||
$(target).on('shown.bs.collapse', function() {
|
$(target).on("shown.bs.collapse", function () {
|
||||||
me.html('<i class="fas fa-minus"></i>');
|
me.html('<i class="fas fa-minus"></i>');
|
||||||
});
|
});
|
||||||
$(target).on('hidden.bs.collapse', function() {
|
$(target).on("hidden.bs.collapse", function () {
|
||||||
me.html('<i class="fas fa-plus"></i>');
|
me.html('<i class="fas fa-plus"></i>');
|
||||||
});
|
});
|
||||||
return false;
|
return false;
|
||||||
@ -421,164 +474,166 @@ $(function() {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Gallery
|
// Gallery
|
||||||
$(".gallery .gallery-item").each(function() {
|
$(".gallery .gallery-item").each(function () {
|
||||||
var me = $(this);
|
var me = $(this);
|
||||||
|
|
||||||
me.attr('href', me.data('image'));
|
me.attr("href", me.data("image"));
|
||||||
me.attr('title', me.data('title'));
|
me.attr("title", me.data("title"));
|
||||||
if(me.parent().hasClass('gallery-fw')) {
|
if (me.parent().hasClass("gallery-fw")) {
|
||||||
me.css({
|
me.css({
|
||||||
height: me.parent().data('item-height'),
|
height: me.parent().data("item-height"),
|
||||||
});
|
});
|
||||||
me.find('div').css({
|
me.find("div").css({
|
||||||
lineHeight: me.parent().data('item-height') + 'px'
|
lineHeight: me.parent().data("item-height") + "px",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
me.css({
|
me.css({
|
||||||
backgroundImage: 'url("'+ me.data('image') +'")'
|
backgroundImage: 'url("' + me.data("image") + '")',
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
if(jQuery().Chocolat) {
|
if (jQuery().Chocolat) {
|
||||||
$(".gallery").Chocolat({
|
$(".gallery").Chocolat({
|
||||||
className: 'gallery',
|
className: "gallery",
|
||||||
imageSelector: '.gallery-item',
|
imageSelector: ".gallery-item",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Background
|
// Background
|
||||||
$("[data-background]").each(function() {
|
$("[data-background]").each(function () {
|
||||||
var me = $(this);
|
var me = $(this);
|
||||||
me.css({
|
me.css({
|
||||||
backgroundImage: 'url(' + me.data('background') + ')'
|
backgroundImage: "url(" + me.data("background") + ")",
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Custom Tab
|
// Custom Tab
|
||||||
$("[data-tab]").each(function() {
|
$("[data-tab]").each(function () {
|
||||||
var me = $(this);
|
var me = $(this);
|
||||||
|
|
||||||
me.click(function() {
|
me.click(function () {
|
||||||
if(!me.hasClass('active')) {
|
if (!me.hasClass("active")) {
|
||||||
var tab_group = $('[data-tab-group="' + me.data('tab') + '"]'),
|
var tab_group = $('[data-tab-group="' + me.data("tab") + '"]'),
|
||||||
tab_group_active = $('[data-tab-group="' + me.data('tab') + '"].active'),
|
tab_group_active = $(
|
||||||
target = $(me.attr('href')),
|
'[data-tab-group="' + me.data("tab") + '"].active'
|
||||||
links = $('[data-tab="'+me.data('tab') +'"]');
|
),
|
||||||
|
target = $(me.attr("href")),
|
||||||
|
links = $('[data-tab="' + me.data("tab") + '"]');
|
||||||
|
|
||||||
links.removeClass('active');
|
links.removeClass("active");
|
||||||
me.addClass('active');
|
me.addClass("active");
|
||||||
target.addClass('active');
|
target.addClass("active");
|
||||||
tab_group_active.removeClass('active');
|
tab_group_active.removeClass("active");
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Bootstrap 4 Validation
|
// Bootstrap 4 Validation
|
||||||
$(".needs-validation").submit(function() {
|
$(".needs-validation").submit(function () {
|
||||||
var form = $(this);
|
var form = $(this);
|
||||||
if (form[0].checkValidity() === false) {
|
if (form[0].checkValidity() === false) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
}
|
}
|
||||||
form.addClass('was-validated');
|
form.addClass("was-validated");
|
||||||
});
|
});
|
||||||
|
|
||||||
// alert dismissible
|
// alert dismissible
|
||||||
$(".alert-dismissible").each(function() {
|
$(".alert-dismissible").each(function () {
|
||||||
var me = $(this);
|
var me = $(this);
|
||||||
|
|
||||||
me.find('.close').click(function() {
|
me.find(".close").click(function () {
|
||||||
me.alert('close');
|
me.alert("close");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
if($('.main-navbar').length) {
|
if ($(".main-navbar").length) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Image cropper
|
// Image cropper
|
||||||
$('[data-crop-image]').each(function(e) {
|
$("[data-crop-image]").each(function (e) {
|
||||||
$(this).css({
|
$(this).css({
|
||||||
overflow: 'hidden',
|
overflow: "hidden",
|
||||||
position: 'relative',
|
position: "relative",
|
||||||
height: $(this).data('crop-image')
|
height: $(this).data("crop-image"),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Slide Toggle
|
// Slide Toggle
|
||||||
$('[data-toggle-slide]').click(function() {
|
$("[data-toggle-slide]").click(function () {
|
||||||
let target = $(this).data('toggle-slide');
|
let target = $(this).data("toggle-slide");
|
||||||
|
|
||||||
$(target).slideToggle();
|
$(target).slideToggle();
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
// Dismiss modal
|
// Dismiss modal
|
||||||
$("[data-dismiss=modal]").click(function() {
|
$("[data-dismiss=modal]").click(function () {
|
||||||
$(this).closest('.modal').modal('hide');
|
$(this).closest(".modal").modal("hide");
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
// Width attribute
|
// Width attribute
|
||||||
$('[data-width]').each(function() {
|
$("[data-width]").each(function () {
|
||||||
$(this).css({
|
$(this).css({
|
||||||
width: $(this).data('width')
|
width: $(this).data("width"),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Height attribute
|
// Height attribute
|
||||||
$('[data-height]').each(function() {
|
$("[data-height]").each(function () {
|
||||||
$(this).css({
|
$(this).css({
|
||||||
height: $(this).data('height')
|
height: $(this).data("height"),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Chocolat
|
// Chocolat
|
||||||
if($('.chocolat-parent').length && jQuery().Chocolat) {
|
if ($(".chocolat-parent").length && jQuery().Chocolat) {
|
||||||
$('.chocolat-parent').Chocolat();
|
$(".chocolat-parent").Chocolat();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sortable card
|
// Sortable card
|
||||||
if($('.sortable-card').length && jQuery().sortable) {
|
if ($(".sortable-card").length && jQuery().sortable) {
|
||||||
$('.sortable-card').sortable({
|
$(".sortable-card").sortable({
|
||||||
handle: '.card-header',
|
handle: ".card-header",
|
||||||
opacity: .8,
|
opacity: 0.8,
|
||||||
tolerance: 'pointer'
|
tolerance: "pointer",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Daterangepicker
|
// Daterangepicker
|
||||||
if(jQuery().daterangepicker) {
|
if (jQuery().daterangepicker) {
|
||||||
if($(".datepicker").length) {
|
if ($(".datepicker").length) {
|
||||||
$('.datepicker').daterangepicker({
|
$(".datepicker").daterangepicker({
|
||||||
locale: {format: 'YYYY-MM-DD'},
|
locale: { format: "YYYY-MM-DD" },
|
||||||
singleDatePicker: true,
|
singleDatePicker: true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if($(".datetimepicker").length) {
|
if ($(".datetimepicker").length) {
|
||||||
$('.datetimepicker').daterangepicker({
|
$(".datetimepicker").daterangepicker({
|
||||||
locale: {format: 'YYYY-MM-DD hh:mm'},
|
locale: { format: "YYYY-MM-DD hh:mm" },
|
||||||
singleDatePicker: true,
|
singleDatePicker: true,
|
||||||
timePicker: true,
|
timePicker: true,
|
||||||
timePicker24Hour: true,
|
timePicker24Hour: true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if($(".daterange").length) {
|
if ($(".daterange").length) {
|
||||||
$('.daterange').daterangepicker({
|
$(".daterange").daterangepicker({
|
||||||
locale: {format: 'YYYY-MM-DD'},
|
locale: { format: "YYYY-MM-DD" },
|
||||||
drops: 'down',
|
drops: "down",
|
||||||
opens: 'right'
|
opens: "right",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Timepicker
|
// Timepicker
|
||||||
if(jQuery().timepicker && $(".timepicker").length) {
|
if (jQuery().timepicker && $(".timepicker").length) {
|
||||||
$(".timepicker").timepicker({
|
$(".timepicker").timepicker({
|
||||||
icons: {
|
icons: {
|
||||||
up: 'fas fa-chevron-up',
|
up: "fas fa-chevron-up",
|
||||||
down: 'fas fa-chevron-down'
|
down: "fas fa-chevron-down",
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
8284
public/assets/modules/bootstrap/css/bootstrap.min.css
vendored
8284
public/assets/modules/bootstrap/css/bootstrap.min.css
vendored
File diff suppressed because one or more lines are too long
3956
public/assets/modules/fontawesome/css/all.css
vendored
3956
public/assets/modules/fontawesome/css/all.css
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
594
public/assets/modules/select2/dist/css/select2.css
vendored
594
public/assets/modules/select2/dist/css/select2.css
vendored
@ -3,49 +3,63 @@
|
|||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
position: relative;
|
position: relative;
|
||||||
vertical-align: middle; }
|
vertical-align: middle;
|
||||||
.select2-container .select2-selection--single {
|
}
|
||||||
|
.select2-container .select2-selection--single {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: block;
|
display: block;
|
||||||
height: 28px;
|
height: 28px;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
-webkit-user-select: none; }
|
-webkit-user-select: none;
|
||||||
.select2-container .select2-selection--single .select2-selection__rendered {
|
}
|
||||||
|
.select2-container .select2-selection--single .select2-selection__rendered {
|
||||||
display: block;
|
display: block;
|
||||||
padding-left: 8px;
|
padding-left: 8px;
|
||||||
padding-right: 20px;
|
padding-right: 20px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap; }
|
white-space: nowrap;
|
||||||
.select2-container .select2-selection--single .select2-selection__clear {
|
}
|
||||||
position: relative; }
|
.select2-container .select2-selection--single .select2-selection__clear {
|
||||||
.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
|
position: relative;
|
||||||
|
}
|
||||||
|
.select2-container[dir="rtl"]
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__rendered {
|
||||||
padding-right: 8px;
|
padding-right: 8px;
|
||||||
padding-left: 20px; }
|
padding-left: 20px;
|
||||||
.select2-container .select2-selection--multiple {
|
}
|
||||||
|
.select2-container .select2-selection--multiple {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: block;
|
display: block;
|
||||||
min-height: 32px;
|
min-height: 32px;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
-webkit-user-select: none; }
|
-webkit-user-select: none;
|
||||||
.select2-container .select2-selection--multiple .select2-selection__rendered {
|
}
|
||||||
|
.select2-container .select2-selection--multiple .select2-selection__rendered {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
padding-left: 8px;
|
padding-left: 8px;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap; }
|
white-space: nowrap;
|
||||||
.select2-container .select2-search--inline {
|
}
|
||||||
float: left; }
|
.select2-container .select2-search--inline {
|
||||||
.select2-container .select2-search--inline .select2-search__field {
|
float: left;
|
||||||
|
}
|
||||||
|
.select2-container .select2-search--inline .select2-search__field {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border: none;
|
border: none;
|
||||||
font-size: 100%;
|
font-size: 100%;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
padding: 0; }
|
padding: 0;
|
||||||
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
|
}
|
||||||
-webkit-appearance: none; }
|
.select2-container
|
||||||
|
.select2-search--inline
|
||||||
|
.select2-search__field::-webkit-search-cancel-button {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-dropdown {
|
.select2-dropdown {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
@ -56,47 +70,59 @@
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
left: -100000px;
|
left: -100000px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
z-index: 1051; }
|
z-index: 1051;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-results {
|
.select2-results {
|
||||||
display: block; }
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-results__options {
|
.select2-results__options {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0; }
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-results__option {
|
.select2-results__option {
|
||||||
padding: 6px;
|
padding: 6px;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
-webkit-user-select: none; }
|
-webkit-user-select: none;
|
||||||
.select2-results__option[aria-selected] {
|
}
|
||||||
cursor: pointer; }
|
.select2-results__option[aria-selected] {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--open .select2-dropdown {
|
.select2-container--open .select2-dropdown {
|
||||||
left: 0; }
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--open .select2-dropdown--above {
|
.select2-container--open .select2-dropdown--above {
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
border-bottom-left-radius: 0;
|
border-bottom-left-radius: 0;
|
||||||
border-bottom-right-radius: 0; }
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--open .select2-dropdown--below {
|
.select2-container--open .select2-dropdown--below {
|
||||||
border-top: none;
|
border-top: none;
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
border-top-right-radius: 0; }
|
border-top-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-search--dropdown {
|
.select2-search--dropdown {
|
||||||
display: block;
|
display: block;
|
||||||
padding: 4px; }
|
padding: 4px;
|
||||||
.select2-search--dropdown .select2-search__field {
|
}
|
||||||
|
.select2-search--dropdown .select2-search__field {
|
||||||
padding: 4px;
|
padding: 4px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
box-sizing: border-box; }
|
box-sizing: border-box;
|
||||||
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
|
}
|
||||||
-webkit-appearance: none; }
|
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
|
||||||
.select2-search--dropdown.select2-search--hide {
|
-webkit-appearance: none;
|
||||||
display: none; }
|
}
|
||||||
|
.select2-search--dropdown.select2-search--hide {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-close-mask {
|
.select2-close-mask {
|
||||||
border: 0;
|
border: 0;
|
||||||
@ -113,7 +139,8 @@
|
|||||||
opacity: 0;
|
opacity: 0;
|
||||||
z-index: 99;
|
z-index: 99;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
filter: alpha(opacity=0); }
|
filter: alpha(opacity=0);
|
||||||
|
}
|
||||||
|
|
||||||
.select2-hidden-accessible {
|
.select2-hidden-accessible {
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
@ -123,28 +150,45 @@
|
|||||||
overflow: hidden !important;
|
overflow: hidden !important;
|
||||||
padding: 0 !important;
|
padding: 0 !important;
|
||||||
position: absolute !important;
|
position: absolute !important;
|
||||||
width: 1px !important; }
|
width: 1px !important;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-selection--single {
|
.select2-container--default .select2-selection--single {
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
border-radius: 4px; }
|
border-radius: 4px;
|
||||||
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__rendered {
|
||||||
color: #444;
|
color: #444;
|
||||||
line-height: 28px; }
|
line-height: 28px;
|
||||||
.select2-container--default .select2-selection--single .select2-selection__clear {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__clear {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
float: right;
|
float: right;
|
||||||
font-weight: bold; }
|
font-weight: bold;
|
||||||
.select2-container--default .select2-selection--single .select2-selection__placeholder {
|
}
|
||||||
color: #999; }
|
.select2-container--default
|
||||||
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
.select2-selection--single
|
||||||
|
.select2-selection__placeholder {
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow {
|
||||||
height: 26px;
|
height: 26px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 1px;
|
top: 1px;
|
||||||
right: 1px;
|
right: 1px;
|
||||||
width: 20px; }
|
width: 20px;
|
||||||
.select2-container--default .select2-selection--single .select2-selection__arrow b {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow
|
||||||
|
b {
|
||||||
border-color: #888 transparent transparent transparent;
|
border-color: #888 transparent transparent transparent;
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-width: 5px 4px 0 4px;
|
border-width: 5px 4px 0 4px;
|
||||||
@ -154,49 +198,81 @@
|
|||||||
margin-top: -2px;
|
margin-top: -2px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
width: 0; }
|
width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
|
.select2-container--default[dir="rtl"]
|
||||||
float: left; }
|
.select2-selection--single
|
||||||
|
.select2-selection__clear {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
|
.select2-container--default[dir="rtl"]
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow {
|
||||||
left: 1px;
|
left: 1px;
|
||||||
right: auto; }
|
right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default.select2-container--disabled .select2-selection--single {
|
.select2-container--default.select2-container--disabled
|
||||||
|
.select2-selection--single {
|
||||||
background-color: #eee;
|
background-color: #eee;
|
||||||
cursor: default; }
|
cursor: default;
|
||||||
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
|
}
|
||||||
display: none; }
|
.select2-container--default.select2-container--disabled
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__clear {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
.select2-container--default.select2-container--open
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow
|
||||||
|
b {
|
||||||
border-color: transparent transparent #888 transparent;
|
border-color: transparent transparent #888 transparent;
|
||||||
border-width: 0 4px 5px 4px; }
|
border-width: 0 4px 5px 4px;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-selection--multiple {
|
.select2-container--default .select2-selection--multiple {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
cursor: text; }
|
cursor: text;
|
||||||
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__rendered {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0 5px;
|
padding: 0 5px;
|
||||||
width: 100%; }
|
width: 100%;
|
||||||
.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
|
}
|
||||||
list-style: none; }
|
.select2-container--default
|
||||||
.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
|
.select2-selection--multiple
|
||||||
|
.select2-selection__rendered
|
||||||
|
li {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__placeholder {
|
||||||
color: #999;
|
color: #999;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
float: left; }
|
float: left;
|
||||||
.select2-container--default .select2-selection--multiple .select2-selection__clear {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__clear {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
float: right;
|
float: right;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
margin-right: 10px; }
|
margin-right: 10px;
|
||||||
.select2-container--default .select2-selection--multiple .select2-selection__choice {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice {
|
||||||
background-color: #e4e4e4;
|
background-color: #e4e4e4;
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
@ -204,97 +280,177 @@
|
|||||||
float: left;
|
float: left;
|
||||||
margin-right: 5px;
|
margin-right: 5px;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
padding: 0 5px; }
|
padding: 0 5px;
|
||||||
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice__remove {
|
||||||
color: #999;
|
color: #999;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin-right: 2px; }
|
margin-right: 2px;
|
||||||
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
|
}
|
||||||
color: #333; }
|
.select2-container--default
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice__remove:hover {
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline {
|
.select2-container--default[dir="rtl"]
|
||||||
float: right; }
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice,
|
||||||
|
.select2-container--default[dir="rtl"]
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__placeholder,
|
||||||
|
.select2-container--default[dir="rtl"]
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-search--inline {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
|
.select2-container--default[dir="rtl"]
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice {
|
||||||
margin-left: 5px;
|
margin-left: 5px;
|
||||||
margin-right: auto; }
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
|
.select2-container--default[dir="rtl"]
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice__remove {
|
||||||
margin-left: 2px;
|
margin-left: 2px;
|
||||||
margin-right: auto; }
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default.select2-container--focus .select2-selection--multiple {
|
.select2-container--default.select2-container--focus
|
||||||
|
.select2-selection--multiple {
|
||||||
border: solid black 1px;
|
border: solid black 1px;
|
||||||
outline: 0; }
|
outline: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default.select2-container--disabled .select2-selection--multiple {
|
.select2-container--default.select2-container--disabled
|
||||||
|
.select2-selection--multiple {
|
||||||
background-color: #eee;
|
background-color: #eee;
|
||||||
cursor: default; }
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
|
.select2-container--default.select2-container--disabled
|
||||||
display: none; }
|
.select2-selection__choice__remove {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
|
.select2-container--default.select2-container--open.select2-container--above
|
||||||
|
.select2-selection--single,
|
||||||
|
.select2-container--default.select2-container--open.select2-container--above
|
||||||
|
.select2-selection--multiple {
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
border-top-right-radius: 0; }
|
border-top-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
|
.select2-container--default.select2-container--open.select2-container--below
|
||||||
|
.select2-selection--single,
|
||||||
|
.select2-container--default.select2-container--open.select2-container--below
|
||||||
|
.select2-selection--multiple {
|
||||||
border-bottom-left-radius: 0;
|
border-bottom-left-radius: 0;
|
||||||
border-bottom-right-radius: 0; }
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-search--dropdown .select2-search__field {
|
.select2-container--default .select2-search--dropdown .select2-search__field {
|
||||||
border: 1px solid #aaa; }
|
border: 1px solid #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-search--inline .select2-search__field {
|
.select2-container--default .select2-search--inline .select2-search__field {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
border: none;
|
border: none;
|
||||||
outline: 0;
|
outline: 0;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
-webkit-appearance: textfield; }
|
-webkit-appearance: textfield;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-results > .select2-results__options {
|
.select2-container--default .select2-results > .select2-results__options {
|
||||||
max-height: 200px;
|
max-height: 200px;
|
||||||
overflow-y: auto; }
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-results__option[role=group] {
|
.select2-container--default .select2-results__option[role="group"] {
|
||||||
padding: 0; }
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-results__option[aria-disabled=true] {
|
.select2-container--default .select2-results__option[aria-disabled="true"] {
|
||||||
color: #999; }
|
color: #999;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-results__option[aria-selected=true] {
|
.select2-container--default .select2-results__option[aria-selected="true"] {
|
||||||
background-color: #ddd; }
|
background-color: #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-results__option .select2-results__option {
|
.select2-container--default .select2-results__option .select2-results__option {
|
||||||
padding-left: 1em; }
|
padding-left: 1em;
|
||||||
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
|
}
|
||||||
padding-left: 0; }
|
.select2-container--default
|
||||||
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__group {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option {
|
||||||
margin-left: -1em;
|
margin-left: -1em;
|
||||||
padding-left: 2em; }
|
padding-left: 2em;
|
||||||
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option {
|
||||||
margin-left: -2em;
|
margin-left: -2em;
|
||||||
padding-left: 3em; }
|
padding-left: 3em;
|
||||||
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option {
|
||||||
margin-left: -3em;
|
margin-left: -3em;
|
||||||
padding-left: 4em; }
|
padding-left: 4em;
|
||||||
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option {
|
||||||
margin-left: -4em;
|
margin-left: -4em;
|
||||||
padding-left: 5em; }
|
padding-left: 5em;
|
||||||
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
}
|
||||||
|
.select2-container--default
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option
|
||||||
|
.select2-results__option {
|
||||||
margin-left: -5em;
|
margin-left: -5em;
|
||||||
padding-left: 6em; }
|
padding-left: 6em;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-results__option--highlighted[aria-selected] {
|
.select2-container--default
|
||||||
|
.select2-results__option--highlighted[aria-selected] {
|
||||||
background-color: #5897fb;
|
background-color: #5897fb;
|
||||||
color: white; }
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--default .select2-results__group {
|
.select2-container--default .select2-results__group {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
display: block;
|
display: block;
|
||||||
padding: 6px; }
|
padding: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-selection--single {
|
.select2-container--classic .select2-selection--single {
|
||||||
background-color: #f7f7f7;
|
background-color: #f7f7f7;
|
||||||
@ -305,20 +461,33 @@
|
|||||||
background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
|
background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
|
||||||
background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
|
background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
|
||||||
.select2-container--classic .select2-selection--single:focus {
|
}
|
||||||
border: 1px solid #5897fb; }
|
.select2-container--classic .select2-selection--single:focus {
|
||||||
.select2-container--classic .select2-selection--single .select2-selection__rendered {
|
border: 1px solid #5897fb;
|
||||||
|
}
|
||||||
|
.select2-container--classic
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__rendered {
|
||||||
color: #444;
|
color: #444;
|
||||||
line-height: 28px; }
|
line-height: 28px;
|
||||||
.select2-container--classic .select2-selection--single .select2-selection__clear {
|
}
|
||||||
|
.select2-container--classic
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__clear {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
float: right;
|
float: right;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin-right: 10px; }
|
margin-right: 10px;
|
||||||
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
|
}
|
||||||
color: #999; }
|
.select2-container--classic
|
||||||
.select2-container--classic .select2-selection--single .select2-selection__arrow {
|
.select2-selection--single
|
||||||
|
.select2-selection__placeholder {
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
.select2-container--classic
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow {
|
||||||
background-color: #ddd;
|
background-color: #ddd;
|
||||||
border: none;
|
border: none;
|
||||||
border-left: 1px solid #aaa;
|
border-left: 1px solid #aaa;
|
||||||
@ -333,8 +502,12 @@
|
|||||||
background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
|
background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
|
||||||
background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
|
background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); }
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0);
|
||||||
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
|
}
|
||||||
|
.select2-container--classic
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow
|
||||||
|
b {
|
||||||
border-color: #888 transparent transparent transparent;
|
border-color: #888 transparent transparent transparent;
|
||||||
border-style: solid;
|
border-style: solid;
|
||||||
border-width: 5px 4px 0 4px;
|
border-width: 5px 4px 0 4px;
|
||||||
@ -344,30 +517,46 @@
|
|||||||
margin-top: -2px;
|
margin-top: -2px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
width: 0; }
|
width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
|
.select2-container--classic[dir="rtl"]
|
||||||
float: left; }
|
.select2-selection--single
|
||||||
|
.select2-selection__clear {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
|
.select2-container--classic[dir="rtl"]
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow {
|
||||||
border: none;
|
border: none;
|
||||||
border-right: 1px solid #aaa;
|
border-right: 1px solid #aaa;
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
border-top-left-radius: 4px;
|
border-top-left-radius: 4px;
|
||||||
border-bottom-left-radius: 4px;
|
border-bottom-left-radius: 4px;
|
||||||
left: 1px;
|
left: 1px;
|
||||||
right: auto; }
|
right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic.select2-container--open .select2-selection--single {
|
.select2-container--classic.select2-container--open .select2-selection--single {
|
||||||
border: 1px solid #5897fb; }
|
border: 1px solid #5897fb;
|
||||||
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
|
}
|
||||||
|
.select2-container--classic.select2-container--open
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
border: none; }
|
border: none;
|
||||||
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
}
|
||||||
|
.select2-container--classic.select2-container--open
|
||||||
|
.select2-selection--single
|
||||||
|
.select2-selection__arrow
|
||||||
|
b {
|
||||||
border-color: transparent transparent #888 transparent;
|
border-color: transparent transparent #888 transparent;
|
||||||
border-width: 0 4px 5px 4px; }
|
border-width: 0 4px 5px 4px;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
|
.select2-container--classic.select2-container--open.select2-container--above
|
||||||
|
.select2-selection--single {
|
||||||
border-top: none;
|
border-top: none;
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
border-top-right-radius: 0;
|
border-top-right-radius: 0;
|
||||||
@ -375,9 +564,11 @@
|
|||||||
background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
|
background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
|
||||||
background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
|
background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
|
.select2-container--classic.select2-container--open.select2-container--below
|
||||||
|
.select2-selection--single {
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
border-bottom-left-radius: 0;
|
border-bottom-left-radius: 0;
|
||||||
border-bottom-right-radius: 0;
|
border-bottom-right-radius: 0;
|
||||||
@ -385,23 +576,34 @@
|
|||||||
background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
|
background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
|
||||||
background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
|
background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
|
||||||
background-repeat: repeat-x;
|
background-repeat: repeat-x;
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); }
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0);
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-selection--multiple {
|
.select2-container--classic .select2-selection--multiple {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
cursor: text;
|
cursor: text;
|
||||||
outline: 0; }
|
outline: 0;
|
||||||
.select2-container--classic .select2-selection--multiple:focus {
|
}
|
||||||
border: 1px solid #5897fb; }
|
.select2-container--classic .select2-selection--multiple:focus {
|
||||||
.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
|
border: 1px solid #5897fb;
|
||||||
|
}
|
||||||
|
.select2-container--classic
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__rendered {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding: 0 5px; }
|
padding: 0 5px;
|
||||||
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
|
}
|
||||||
display: none; }
|
.select2-container--classic
|
||||||
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
|
.select2-selection--multiple
|
||||||
|
.select2-selection__clear {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.select2-container--classic
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice {
|
||||||
background-color: #e4e4e4;
|
background-color: #e4e4e4;
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
@ -409,76 +611,110 @@
|
|||||||
float: left;
|
float: left;
|
||||||
margin-right: 5px;
|
margin-right: 5px;
|
||||||
margin-top: 5px;
|
margin-top: 5px;
|
||||||
padding: 0 5px; }
|
padding: 0 5px;
|
||||||
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
|
}
|
||||||
|
.select2-container--classic
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice__remove {
|
||||||
color: #888;
|
color: #888;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin-right: 2px; }
|
margin-right: 2px;
|
||||||
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
|
}
|
||||||
color: #555; }
|
.select2-container--classic
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice__remove:hover {
|
||||||
|
color: #555;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
|
.select2-container--classic[dir="rtl"]
|
||||||
float: right; }
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
|
.select2-container--classic[dir="rtl"]
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice {
|
||||||
margin-left: 5px;
|
margin-left: 5px;
|
||||||
margin-right: auto; }
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
|
.select2-container--classic[dir="rtl"]
|
||||||
|
.select2-selection--multiple
|
||||||
|
.select2-selection__choice__remove {
|
||||||
margin-left: 2px;
|
margin-left: 2px;
|
||||||
margin-right: auto; }
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic.select2-container--open .select2-selection--multiple {
|
.select2-container--classic.select2-container--open
|
||||||
border: 1px solid #5897fb; }
|
.select2-selection--multiple {
|
||||||
|
border: 1px solid #5897fb;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
|
.select2-container--classic.select2-container--open.select2-container--above
|
||||||
|
.select2-selection--multiple {
|
||||||
border-top: none;
|
border-top: none;
|
||||||
border-top-left-radius: 0;
|
border-top-left-radius: 0;
|
||||||
border-top-right-radius: 0; }
|
border-top-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
|
.select2-container--classic.select2-container--open.select2-container--below
|
||||||
|
.select2-selection--multiple {
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
border-bottom-left-radius: 0;
|
border-bottom-left-radius: 0;
|
||||||
border-bottom-right-radius: 0; }
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-search--dropdown .select2-search__field {
|
.select2-container--classic .select2-search--dropdown .select2-search__field {
|
||||||
border: 1px solid #aaa;
|
border: 1px solid #aaa;
|
||||||
outline: 0; }
|
outline: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-search--inline .select2-search__field {
|
.select2-container--classic .select2-search--inline .select2-search__field {
|
||||||
outline: 0;
|
outline: 0;
|
||||||
box-shadow: none; }
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-dropdown {
|
.select2-container--classic .select2-dropdown {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border: 1px solid transparent; }
|
border: 1px solid transparent;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-dropdown--above {
|
.select2-container--classic .select2-dropdown--above {
|
||||||
border-bottom: none; }
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-dropdown--below {
|
.select2-container--classic .select2-dropdown--below {
|
||||||
border-top: none; }
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-results > .select2-results__options {
|
.select2-container--classic .select2-results > .select2-results__options {
|
||||||
max-height: 200px;
|
max-height: 200px;
|
||||||
overflow-y: auto; }
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-results__option[role=group] {
|
.select2-container--classic .select2-results__option[role="group"] {
|
||||||
padding: 0; }
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-results__option[aria-disabled=true] {
|
.select2-container--classic .select2-results__option[aria-disabled="true"] {
|
||||||
color: grey; }
|
color: grey;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-results__option--highlighted[aria-selected] {
|
.select2-container--classic
|
||||||
|
.select2-results__option--highlighted[aria-selected] {
|
||||||
background-color: #3875d7;
|
background-color: #3875d7;
|
||||||
color: white; }
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic .select2-results__group {
|
.select2-container--classic .select2-results__group {
|
||||||
cursor: default;
|
cursor: default;
|
||||||
display: block;
|
display: block;
|
||||||
padding: 6px; }
|
padding: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
.select2-container--classic.select2-container--open .select2-dropdown {
|
.select2-container--classic.select2-container--open .select2-dropdown {
|
||||||
border-color: #5897fb; }
|
border-color: #5897fb;
|
||||||
|
}
|
||||||
|
File diff suppressed because one or more lines are too long
BIN
public/preprocessed_image.jpg
Normal file
BIN
public/preprocessed_image.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 226 KiB |
@ -8,7 +8,7 @@
|
|||||||
<div class="card card-statistic-2">
|
<div class="card card-statistic-2">
|
||||||
<div class="card-stats">
|
<div class="card-stats">
|
||||||
<div class="card-stats-title">List Transaction -
|
<div class="card-stats-title">List Transaction -
|
||||||
<div class="dropdown d-inline">
|
{{-- <div class="dropdown d-inline">
|
||||||
<a class="font-weight-600 dropdown-toggle" data-toggle="dropdown" href="#"
|
<a class="font-weight-600 dropdown-toggle" data-toggle="dropdown" href="#"
|
||||||
id="orders-month">August</a>
|
id="orders-month">August</a>
|
||||||
<ul class="dropdown-menu dropdown-menu-sm">
|
<ul class="dropdown-menu dropdown-menu-sm">
|
||||||
@ -26,7 +26,7 @@
|
|||||||
<li><a href="#" class="dropdown-item">November</a></li>
|
<li><a href="#" class="dropdown-item">November</a></li>
|
||||||
<li><a href="#" class="dropdown-item">December</a></li>
|
<li><a href="#" class="dropdown-item">December</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div> --}}
|
||||||
</div>
|
</div>
|
||||||
<div class="card-stats-items">
|
<div class="card-stats-items">
|
||||||
<div class="card-stats-item">
|
<div class="card-stats-item">
|
||||||
@ -41,6 +41,10 @@
|
|||||||
<div class="card-stats-item-count">23</div>
|
<div class="card-stats-item-count">23</div>
|
||||||
<div class="card-stats-item-label">Canceled</div>
|
<div class="card-stats-item-label">Canceled</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="card-stats-item">
|
||||||
|
<div class="card-stats-item-count">23</div>
|
||||||
|
<div class="card-stats-item-label">Refund</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-icon shadow-primary bg-primary">
|
<div class="card-icon shadow-primary bg-primary">
|
||||||
@ -170,8 +174,7 @@
|
|||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h4>Top 5 Users</h4>
|
<h4>Top 5 Users</h4>
|
||||||
<div class="card-header-action dropdown">
|
<div class="card-header-action dropdown">
|
||||||
<a href="#" data-toggle="dropdown"
|
<a href="#" data-toggle="dropdown" class="btn btn-primary dropdown-toggle">Month</a>
|
||||||
class="btn btn-primary dropdown-toggle">Month</a>
|
|
||||||
<ul class="dropdown-menu dropdown-menu-sm dropdown-menu-right">
|
<ul class="dropdown-menu dropdown-menu-sm dropdown-menu-right">
|
||||||
<li class="dropdown-title">Select Period</li>
|
<li class="dropdown-title">Select Period</li>
|
||||||
<li><a href="#" class="dropdown-item">Today</a></li>
|
<li><a href="#" class="dropdown-item">Today</a></li>
|
||||||
@ -184,8 +187,8 @@
|
|||||||
<div class="card-body" id="top-5-scroll">
|
<div class="card-body" id="top-5-scroll">
|
||||||
<ul class="list-unstyled list-unstyled-border">
|
<ul class="list-unstyled list-unstyled-border">
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-6.png')}}"
|
<img class="mr-3 rounded" width="55"
|
||||||
alt="product">
|
src="{{ asset('assets/img/avatar/avatar-6.png') }}" alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">86 Sales</div>
|
<div class="font-weight-600 text-muted text-small">86 Sales</div>
|
||||||
@ -204,8 +207,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-1.png')}}"
|
<img class="mr-3 rounded" width="55"
|
||||||
alt="product">
|
src="{{ asset('assets/img/avatar/avatar-1.png') }}" alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">67 Sales</div>
|
<div class="font-weight-600 text-muted text-small">67 Sales</div>
|
||||||
@ -224,8 +227,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-2.png')}}"
|
<img class="mr-3 rounded" width="55"
|
||||||
alt="product">
|
src="{{ asset('assets/img/avatar/avatar-2.png') }}" alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">63 Sales</div>
|
<div class="font-weight-600 text-muted text-small">63 Sales</div>
|
||||||
@ -244,8 +247,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-3.png')}}"
|
<img class="mr-3 rounded" width="55"
|
||||||
alt="product">
|
src="{{ asset('assets/img/avatar/avatar-3.png') }}" alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">28 Sales</div>
|
<div class="font-weight-600 text-muted text-small">28 Sales</div>
|
||||||
@ -264,8 +267,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-4.png')}}"
|
<img class="mr-3 rounded" width="55"
|
||||||
alt="product">
|
src="{{ asset('assets/img/avatar/avatar-4.png') }}" alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">19 Sales</div>
|
<div class="font-weight-600 text-muted text-small">19 Sales</div>
|
||||||
@ -373,6 +376,48 @@
|
|||||||
</div>
|
</div>
|
||||||
@include('admin.transaction.modal-tracking')
|
@include('admin.transaction.modal-tracking')
|
||||||
<script>
|
<script>
|
||||||
|
// Date picker range
|
||||||
|
$(document).ready(function() {
|
||||||
|
let searchParams = new URLSearchParams(window.location.search);
|
||||||
|
let dateInterval = searchParams.get('from-to');
|
||||||
|
let start = moment().subtract(29, 'days');
|
||||||
|
let end = moment();
|
||||||
|
|
||||||
|
if (dateInterval) {
|
||||||
|
dateInterval = dateInterval.split(' - ');
|
||||||
|
start = moment(dateInterval[0]);
|
||||||
|
end = moment(dateInterval[1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#date-range').daterangepicker({
|
||||||
|
"showDropdowns": true,
|
||||||
|
"showWeekNumbers": true,
|
||||||
|
"alwaysShowCalendars": true,
|
||||||
|
startDate: start,
|
||||||
|
endDate: end,
|
||||||
|
locale: {
|
||||||
|
format: 'YYYY-MM-DD',
|
||||||
|
firstDay: 1,
|
||||||
|
},
|
||||||
|
ranges: {
|
||||||
|
'Today': [moment(), moment()],
|
||||||
|
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
||||||
|
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
|
||||||
|
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
|
||||||
|
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
||||||
|
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1,
|
||||||
|
'month').endOf(
|
||||||
|
'month')],
|
||||||
|
'This Year': [moment().startOf('year'), moment().endOf('year')],
|
||||||
|
'Last Year': [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year')
|
||||||
|
.endOf(
|
||||||
|
'year')
|
||||||
|
],
|
||||||
|
'All time': [moment().subtract(30, 'year').startOf('month'), moment().endOf('month')],
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
// Set new default font family and font color to mimic Bootstrap's default styling
|
// Set new default font family and font color to mimic Bootstrap's default styling
|
||||||
Chart.defaults.global.defaultFontFamily = 'Nunito',
|
Chart.defaults.global.defaultFontFamily = 'Nunito',
|
||||||
'-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
|
'-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
|
||||||
@ -382,10 +427,12 @@
|
|||||||
var myChart = new Chart(ctx, {
|
var myChart = new Chart(ctx, {
|
||||||
type: 'line',
|
type: 'line',
|
||||||
data: {
|
data: {
|
||||||
labels: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "Oktober", "November", "December"],
|
labels: ["January", "February", "March", "April", "May", "June", "July", "August", "September",
|
||||||
|
"Oktober", "November", "December"
|
||||||
|
],
|
||||||
datasets: [{
|
datasets: [{
|
||||||
label: 'Transaction',
|
label: 'Transaction',
|
||||||
data: [3200, 18009, 4305, 3022, 6310, 5120, 5880, 6154, 0],
|
data: {{json_encode($dataChartTransaction)}},
|
||||||
borderWidth: 2,
|
borderWidth: 2,
|
||||||
backgroundColor: 'rgba(63,82,227,.8)',
|
backgroundColor: 'rgba(63,82,227,.8)',
|
||||||
borderWidth: 0,
|
borderWidth: 0,
|
||||||
@ -410,12 +457,12 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
options: {
|
options: {
|
||||||
layout:{
|
layout: {
|
||||||
padding: 20,
|
padding: 20,
|
||||||
},
|
},
|
||||||
legend: {
|
legend: {
|
||||||
display: true,
|
display: true,
|
||||||
labels:{
|
labels: {
|
||||||
padding: 20,
|
padding: 20,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -428,7 +475,7 @@
|
|||||||
},
|
},
|
||||||
ticks: {
|
ticks: {
|
||||||
beginAtZero: true,
|
beginAtZero: true,
|
||||||
stepSize: 15000,
|
stepSize: 15000000,
|
||||||
callback: function(value, index, values) {
|
callback: function(value, index, values) {
|
||||||
// return 'Rp.' + value;
|
// return 'Rp.' + value;
|
||||||
return new Intl.NumberFormat('id-ID', {
|
return new Intl.NumberFormat('id-ID', {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<footer class="main-footer">
|
<footer class="main-footer">
|
||||||
<div class="footer-left">
|
<div class="footer-left">
|
||||||
Copyright © 2020 <div class="bullet"></div> Design By <a href="#">Template</a>
|
Copysright © 2020 <div class="bullet"></div> Design By <a href="#">Template</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="footer-right">
|
<div class="footer-right">
|
||||||
|
|
||||||
|
@ -19,7 +19,8 @@
|
|||||||
<div class="dropdown-list-content dropdown-list-message">
|
<div class="dropdown-list-content dropdown-list-message">
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-1.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-1.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -30,7 +31,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-2.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-2.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Dedik Sugiharto</b>
|
<b>Dedik Sugiharto</b>
|
||||||
@ -40,7 +42,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-3.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-3.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -51,7 +54,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-4.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-4.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Ardian Rahardiansyah</b>
|
<b>Ardian Rahardiansyah</b>
|
||||||
@ -61,7 +65,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-5.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-5.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Alfa Zulkarnain</b>
|
<b>Alfa Zulkarnain</b>
|
||||||
@ -137,7 +142,7 @@
|
|||||||
</li>
|
</li>
|
||||||
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
||||||
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/ok.jpg')}}" class="rounded-circle mr-1">
|
<img alt="image" src="{{ asset('assets/img/avatar/ok.jpg') }}" class="rounded-circle mr-1">
|
||||||
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu dropdown-menu-right">
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
@ -152,7 +157,7 @@
|
|||||||
<i class="fas fa-cog"></i> Settings
|
<i class="fas fa-cog"></i> Settings
|
||||||
</a> --}}
|
</a> --}}
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<a href="{{route('logout')}}" class="dropdown-item has-icon text-danger">
|
<a href="{{ route('logout') }}" class="dropdown-item has-icon text-danger">
|
||||||
<i class="fas fa-sign-out-alt"></i> Logout
|
<i class="fas fa-sign-out-alt"></i> Logout
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -31,6 +31,29 @@
|
|||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
<<<<<<< HEAD
|
||||||
|
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
||||||
|
<title>REKBER</title>
|
||||||
|
|
||||||
|
<!-- General CSS Files -->
|
||||||
|
<link rel="stylesheet" href="assets/modules/bootstrap/css/bootstrap.min.css">
|
||||||
|
<link rel="stylesheet" href="assets/modules/fontawesome/css/all.min.css">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- CSS Libraries -->
|
||||||
|
<link rel="stylesheet" href="assets/modules/jqvmap/dist/jqvmap.min.css">
|
||||||
|
<link rel="stylesheet" href="assets/modules/summernote/summernote-bs4.css">
|
||||||
|
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css">
|
||||||
|
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css">
|
||||||
|
|
||||||
|
<!-- Template CSS -->
|
||||||
|
<link rel="stylesheet" href="assets/css/style.css">
|
||||||
|
<link rel="stylesheet" href="assets/css/components.css">
|
||||||
|
<!-- Start GA -->
|
||||||
|
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
||||||
|
=======
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
||||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||||
@ -56,6 +79,7 @@
|
|||||||
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}">
|
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}">
|
||||||
<!-- Start GA -->
|
<!-- Start GA -->
|
||||||
{{-- <script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
{{-- <script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
<script>
|
<script>
|
||||||
window.dataLayer = window.dataLayer || [];
|
window.dataLayer = window.dataLayer || [];
|
||||||
|
|
||||||
@ -65,6 +89,10 @@
|
|||||||
gtag('js', new Date());
|
gtag('js', new Date());
|
||||||
|
|
||||||
gtag('config', 'UA-94034622-3');
|
gtag('config', 'UA-94034622-3');
|
||||||
|
<<<<<<< HEAD
|
||||||
|
</script>
|
||||||
|
<!-- /END GA -->
|
||||||
|
=======
|
||||||
</script> --}}
|
</script> --}}
|
||||||
|
|
||||||
<!-- /END GA -->
|
<!-- /END GA -->
|
||||||
@ -72,11 +100,47 @@
|
|||||||
{{-- JS --}}
|
{{-- JS --}}
|
||||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/chart.min.js') }}"></script>
|
<script src="{{ asset('assets/modules/chart.min.js') }}"></script>
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<header class="header-area header-sticky">
|
<header class="header-area header-sticky">
|
||||||
|
<<<<<<< HEAD
|
||||||
|
@include('Admin.layout.header')
|
||||||
|
</header>
|
||||||
|
<!-- ***** Main Banner Area Start ***** -->
|
||||||
|
<main id="main" style="min-height: 100vh;">
|
||||||
|
@include('Admin.layout.sidebar')
|
||||||
|
@yield('content')
|
||||||
|
</main>
|
||||||
|
<!-- End #main -->
|
||||||
|
<footer id="footer">
|
||||||
|
@include('Admin.layout.footer')
|
||||||
|
</footer>
|
||||||
|
<!-- General JS Scripts -->
|
||||||
|
<script src="assets/modules/jquery.min.js"></script>
|
||||||
|
<script src="assets/modules/popper.js"></script>
|
||||||
|
<script src="assets/modules/tooltip.js"></script>
|
||||||
|
<script src="assets/modules/bootstrap/js/bootstrap.min.js"></script>
|
||||||
|
<script src="assets/modules/nicescroll/jquery.nicescroll.min.js"></script>
|
||||||
|
<script src="assets/modules/moment.min.js"></script>
|
||||||
|
<script src="assets/js/stisla.js"></script>
|
||||||
|
|
||||||
|
<!-- JS Libraies -->
|
||||||
|
<script src="assets/modules/jquery.sparkline.min.js"></script>
|
||||||
|
<script src="assets/modules/chart.min.js"></script>
|
||||||
|
<script src="assets/modules/owlcarousel2/dist/owl.carousel.min.js"></script>
|
||||||
|
<script src="assets/modules/summernote/summernote-bs4.js"></script>
|
||||||
|
<script src="assets/modules/chocolat/dist/js/jquery.chocolat.min.js"></script>
|
||||||
|
|
||||||
|
<!-- Page Specific JS File -->
|
||||||
|
<script src="assets/js/page/index.js"></script>
|
||||||
|
|
||||||
|
<!-- Template JS File -->
|
||||||
|
<script src="assets/js/scripts.js"></script>
|
||||||
|
<script src="assets/js/custom.js"></script>
|
||||||
|
=======
|
||||||
@include('admin.layout.header')
|
@include('admin.layout.header')
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
@ -91,48 +155,6 @@
|
|||||||
|
|
||||||
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
|
||||||
let searchParams = new URLSearchParams(window.location.search);
|
|
||||||
let dateInterval = searchParams.get('from-to');
|
|
||||||
let start = moment().subtract(29, 'days');
|
|
||||||
let end = moment();
|
|
||||||
|
|
||||||
if (dateInterval) {
|
|
||||||
dateInterval = dateInterval.split(' - ');
|
|
||||||
start = moment(dateInterval[0]);
|
|
||||||
end = moment(dateInterval[1]);
|
|
||||||
}
|
|
||||||
|
|
||||||
$('#date-range').daterangepicker({
|
|
||||||
"showDropdowns": true,
|
|
||||||
"showWeekNumbers": true,
|
|
||||||
"alwaysShowCalendars": true,
|
|
||||||
startDate: start,
|
|
||||||
endDate: end,
|
|
||||||
locale: {
|
|
||||||
format: 'YYYY-MM-DD',
|
|
||||||
firstDay: 1,
|
|
||||||
},
|
|
||||||
ranges: {
|
|
||||||
'Today': [moment(), moment()],
|
|
||||||
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
|
||||||
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
|
|
||||||
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
|
|
||||||
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
|
||||||
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1,
|
|
||||||
'month').endOf(
|
|
||||||
'month')],
|
|
||||||
'This Year': [moment().startOf('year'), moment().endOf('year')],
|
|
||||||
'Last Year': [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year')
|
|
||||||
.endOf(
|
|
||||||
'year')
|
|
||||||
],
|
|
||||||
'All time': [moment().subtract(30, 'year').startOf('month'), moment().endOf('month')],
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<!-- General JS Scripts -->
|
<!-- General JS Scripts -->
|
||||||
<script src="{{ asset('assets/modules/jquery.min.js') }}"></script>
|
<script src="{{ asset('assets/modules/jquery.min.js') }}"></script>
|
||||||
@ -180,6 +202,7 @@
|
|||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,21 +1,37 @@
|
|||||||
<div class="main-sidebar sidebar-style-2">
|
<div class="main-sidebar sidebar-style-2">
|
||||||
<aside id="sidebar-wrapper">
|
<aside id="sidebar-wrapper">
|
||||||
<div class="sidebar-brand">
|
<div class="sidebar-brand">
|
||||||
<a href="{{route('admin.index')}}">REKBER</a>
|
<a href="index.html">REKBER</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="sidebar-brand sidebar-brand-sm">
|
<div class="sidebar-brand sidebar-brand-sm">
|
||||||
<a href="{{route('admin.index')}}">RK</a>
|
<a href="index.html">RK</a>
|
||||||
</div>
|
</div>
|
||||||
<ul class="sidebar-menu">
|
<ul class="sidebar-menu">
|
||||||
<li class="menu-header">Dashboard</li>
|
<li class="menu-header">Dashboard</li>
|
||||||
<li ><a class="nav-link active" href="{{route('admin.index')}}"><i class="fas fa-fire"></i> <span>Dashboard</span></a></li>
|
|
||||||
|
<li><a class="nav-link active" href="/"><i class="fas fa-fire"></i> <span>Dashboard</span></a></li>
|
||||||
|
|
||||||
<li class="menu-header">Starter</li>
|
<li class="menu-header">Starter</li>
|
||||||
<li><a class="nav-link" href="{{route('admin-user.index')}}"><i class="far fa-user"></i> <span>User</span></a></li>
|
<li><a class="nav-link" href="/list_user"><i class="far fa-user"></i> <span>User</span></a></li>
|
||||||
<li><a class="nav-link" href="{{route('admin-transaction.index')}}"><i
|
<li><a class="nav-link" href="/history_transaction"><i
|
||||||
class="fas fa-columns"></i><span>Transaction</span></a></li>
|
class="fas fa-columns"></i><span>Transaction</span></a></li>
|
||||||
<li><a class="nav-link" href="{{route('admin-refund.index')}}"><i class="far fa-square"></i> <span>List Refund</span></a>
|
{{-- <li class="dropdown">
|
||||||
</li>
|
<a href="#" class="nav-link has-dropdown" data-toggle="dropdown"><i class="fas fa-columns"></i>
|
||||||
<li><a class="nav-link" href="{{route('admin-setting.index')}}"><i class="fas fa-cog"></i> <span>Setting</span></a></li>
|
<span>Transaction</span></a>
|
||||||
|
<ul class="dropdown-menu">
|
||||||
|
<li><a class="nav-link" href="/list_transaction">List Transaction</a></li>
|
||||||
|
<li><a class="nav-link" href="/history_transaction">History Transaction</a></li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
|
</li> --}}
|
||||||
|
<li><a class="nav-link" href="/history_refund"><i class="far fa-square"></i> <span>List Refund</span></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
{{-- <div class="mt-4 mb-4 p-3 hide-sidebar-mini">
|
||||||
|
<a href="https://getstisla.com/docs" class="btn btn-primary btn-lg btn-block btn-icon-split">
|
||||||
|
<i class="fas fa-rocket"></i> Documentation
|
||||||
|
</a>
|
||||||
|
</div> --}}
|
||||||
</aside>
|
</aside>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,19 +1,36 @@
|
|||||||
@extends('admin.layout.main')
|
@extends('Admin.layout.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section profile">
|
||||||
<h1>Profile</h1>
|
<div class="row">
|
||||||
|
<div class="col-xl-4">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body profile-card pt-4 d-flex flex-column align-items-center">
|
||||||
|
<img src="/assets/img/avatar/avatar-6.png" alt="Profile"
|
||||||
|
class="rounded-circle profile-img-preview shadow"
|
||||||
|
style="max-width: 150px; max-height: 150px;">
|
||||||
|
{{-- <h2>{{ Auth::user()->get_name() }}</h2> --}}
|
||||||
|
<h3>Super-Admin</h3>
|
||||||
|
<div class="card-footer text-center">
|
||||||
|
<a href="#" class="btn btn-social-icon btn-facebook mr-1">
|
||||||
|
<i class="fab fa-facebook-f"></i>
|
||||||
|
</a>
|
||||||
|
<a href="#" class="btn btn-social-icon btn-twitter mr-1">
|
||||||
|
<i class="fab fa-twitter"></i>
|
||||||
|
</a>
|
||||||
|
<a href="#" class="btn btn-social-icon btn-github mr-1">
|
||||||
|
<i class="fab fa-github"></i>
|
||||||
|
</a>
|
||||||
|
<a href="#" class="btn btn-social-icon btn-instagram">
|
||||||
|
<i class="fab fa-instagram"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body profile-card py-2 d-flex flex-column align-items-center text-center"
|
|
||||||
style="border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); position: relative; background: linear-gradient(45deg, #f3f3f3, #e0e0e0);">
|
|
||||||
|
|
||||||
<i class="bi bi-arrow-right" style="position: absolute; top: 10px; right: 10px; font-size: 24px;"></i>
|
|
||||||
<img src="assets/img/avatar/ok.jpg" alt="Profile" class="rounded-circle" style="width: 150px; height: 150px;">
|
|
||||||
<h2 class="mt-3">Nurul Prima Annisa</h2>
|
|
||||||
<h5 class="mb-0">#1238dsbias0-30832bjs</h5>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="col-xl-8">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body pt-3">
|
<div class="card-body pt-3">
|
||||||
<!-- Bordered Tabs -->
|
<!-- Bordered Tabs -->
|
||||||
@ -24,354 +41,70 @@
|
|||||||
data-bs-target="#profile-overview">Overview</button>
|
data-bs-target="#profile-overview">Overview</button>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#profile-edit">Edit
|
|
||||||
Profile</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab"
|
|
||||||
data-bs-target="#profile-settings">Settings</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#profile-change-password">Change
|
|
||||||
Password</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<div class="tab-content pt-2">
|
<div class="tab-content pt-2">
|
||||||
|
|
||||||
<div class="tab-pane fade show active profile-overview" id="profile-overview">
|
<div class="tab-pane fade show active profile-overview" id="profile-overview">
|
||||||
<h5 class="card-title">About</h5>
|
<h5 class="card-title">About</h5>
|
||||||
<p class="small fst-italic">Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
<p class="font-weight-italic justified-text">Lorem, ipsum dolor sit amet consectetur
|
||||||
annisa
|
adipisicing
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
elit. Ipsum
|
||||||
annisa Nurul prima annisa
|
aspernatur recusandae sapiente praesentium laboriosam reiciendis unde, tempora,
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
veniam
|
||||||
annisa Nurul prima annisa
|
asperiores vel omnis ratione corrupti consequatur officia laudantium commodi
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
enim, eum
|
||||||
annisa Nurul prima annisa
|
officiis. In earum non vero facere, obcaecati, repudiandae eaque dignissimos ut
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
iure
|
||||||
annisa Nurul prima annisa
|
tempora libero ea. Omnis eius sit neque aliquam, sequi corrupti soluta itaque
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
laborum
|
||||||
annisa Nurul prima annisa
|
non qui nisi nobis dicta, aperiam corporis voluptates! Ad dolore ipsam quo
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
molestias
|
||||||
annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul
|
neque consectetur at ipsa perspiciatis. Unde non possimus voluptas a, minus
|
||||||
prima
|
voluptatem
|
||||||
annisa
|
iure inventore fugiat officia iste vitae beatae odit architecto laborum amet
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
voluptates
|
||||||
annisa Nurul prima annisa
|
dolorum ut perspiciatis nulla nihil odio! Consequuntur, neque delectus!</p>
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h5 class="card-title">Profile Details</h5>
|
<h5 class="card-title">Profile Details</h5>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-3 col-md-4 label ">ID Number</div>
|
||||||
|
<div class="col-lg-9 col-md-8">94894893848</div>
|
||||||
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-3 col-md-4 label ">Full Name</div>
|
<div class="col-lg-3 col-md-4 label ">Full Name</div>
|
||||||
<div class="col-lg-9 col-md-8">Nurul Prima Annisa</div>
|
<div class="col-lg-9 col-md-8">JIlhan Haura</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-3 col-md-4 label">Company</div>
|
<div class="col-lg-3 col-md-4 label">Role</div>
|
||||||
<div class="col-lg-9 col-md-8">Ya apa yak</div>
|
<div class="col-lg-9 col-md-8">
|
||||||
|
Super-Admin
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Job</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Frontend Web </div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Country</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Indonesia</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-3 col-md-4 label">Address</div>
|
<div class="col-lg-3 col-md-4 label">Address</div>
|
||||||
<div class="col-lg-9 col-md-8">Depok city broww</div>
|
<div class="col-lg-9 col-md-8">Jl simpang komplek polda</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-3 col-md-4 label">Phone</div>
|
<div class="col-lg-3 col-md-4 label">Phone</div>
|
||||||
<div class="col-lg-9 col-md-8">(+62) 486-3538 29071</div>
|
<div class="col-lg-9 col-md-8">0345893853</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-3 col-md-4 label">Email</div>
|
<div class="col-lg-3 col-md-4 label">Email</div>
|
||||||
<div class="col-lg-9 col-md-8">npannisa23@gmail.com</div>
|
<div class="col-lg-9 col-md-8">jilhanhaura07@gmail.com</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tab-pane fade profile-edit pt-3" id="profile-edit">
|
|
||||||
|
|
||||||
<!-- Profile Edit Form -->
|
|
||||||
<form>
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="profileImage" class="col-md-4 col-lg-3 col-form-label">Profile Image</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<img id="profileImagePreview" src="assets/img/avatar/ok.jpg" alt="Profile"
|
|
||||||
style="max-width: 100%; max-height: 150px;">
|
|
||||||
<div class="d-flex justify-content-between align-items-center mt-2">
|
|
||||||
<label for="profileImageInput" class="btn btn-primary btn-sm"
|
|
||||||
title="Upload new profile image">
|
|
||||||
<i class="bi bi-upload"></i> Upload
|
|
||||||
<input type="file" id="profileImageInput" accept="image/*"
|
|
||||||
style="display: none;">
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="fullName" class="col-md-4 col-lg-3 col-form-label">Full Name</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="fullName" type="text" class="form-control" id="fullName"
|
|
||||||
value="Nurul Prima Annisa">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="about" class="col-md-4 col-lg-3 col-form-label">About</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<textarea name="about" class="form-control" id="about" style="height: 100px">
|
|
||||||
|
|
||||||
</textarea>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="company" class="col-md-4 col-lg-3 col-form-label">Company</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="company" type="text" class="form-control" id="company"
|
|
||||||
value="Abbauf Mulia Konsultan Teknologi">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Job" class="col-md-4 col-lg-3 col-form-label">Job</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="job" type="text" class="form-control" id="Job"
|
|
||||||
value="Frontend Web">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Country" class="col-md-4 col-lg-3 col-form-label">Country</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="country" type="text" class="form-control" id="Country"
|
|
||||||
value="Indonesia">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Address" class="col-md-4 col-lg-3 col-form-label">Address</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="address" type="text" class="form-control" id="Address"
|
|
||||||
value="Depok city broww">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Phone" class="col-md-4 col-lg-3 col-form-label">Phone</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="phone" type="text" class="form-control" id="Phone"
|
|
||||||
value="(+62) 486-3538 29071">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Email" class="col-md-4 col-lg-3 col-form-label">Email</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="email" type="email" class="form-control" id="Email"
|
|
||||||
value="npannisa23@gmail.com">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{{-- <div class="row mb-3">
|
|
||||||
<label for="Twitter" class="col-md-4 col-lg-3 col-form-label">Twitter Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="twitter" type="text" class="form-control" id="Twitter"
|
|
||||||
value="https://twitter.com/#">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Facebook" class="col-md-4 col-lg-3 col-form-label">Facebook
|
|
||||||
Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="facebook" type="text" class="form-control" id="Facebook"
|
|
||||||
value="https://facebook.com/#">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Instagram" class="col-md-4 col-lg-3 col-form-label">Instagram
|
|
||||||
Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="instagram" type="text" class="form-control" id="Instagram"
|
|
||||||
value="https://instagram.com/npannisa_?utm_source=qr&igshid=MzNlNGNkZWQ4Mg%3D%3D#">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Linkedin" class="col-md-4 col-lg-3 col-form-label">Linkedin
|
|
||||||
Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="linkedin" type="text" class="form-control" id="Linkedin"
|
|
||||||
value="https://github.com/npannisa#">
|
|
||||||
</div>
|
|
||||||
</div> --}}
|
|
||||||
|
|
||||||
<div class="text-center">
|
|
||||||
<a href="profile" type="submit" class="btn btn-primary">Save Changes</a>
|
|
||||||
</div>
|
|
||||||
</form><!-- End Profile Edit Form -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tab-pane fade pt-3" id="profile-settings">
|
|
||||||
|
|
||||||
<!-- Settings Form -->
|
|
||||||
<form>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="fullName" class="col-md-4 col-lg-3 col-form-label">Email
|
|
||||||
Notifications</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="changesMade" checked>
|
|
||||||
<label class="form-check-label" for="changesMade">
|
|
||||||
Changes made to your account
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="newProducts" checked>
|
|
||||||
<label class="form-check-label" for="newProducts">
|
|
||||||
Information on new products and services
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="proOffers">
|
|
||||||
<label class="form-check-label" for="proOffers">
|
|
||||||
Marketing and promo offers
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="securityNotify" checked
|
|
||||||
disabled>
|
|
||||||
<label class="form-check-label" for="securityNotify">
|
|
||||||
Security alerts
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="text-center">
|
|
||||||
<button type="submit" class="btn btn-primary">Save Changes</button>
|
|
||||||
</div>
|
|
||||||
</form><!-- End settings Form -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tab-pane fade pt-3" id="profile-change-password">
|
|
||||||
<!-- Change Password Form -->
|
|
||||||
<form>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="currentPassword" class="col-md-4 col-lg-3 col-form-label">Current
|
|
||||||
Password</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="password" type="password" class="form-control"
|
|
||||||
id="currentPassword">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="newPassword" class="col-md-4 col-lg-3 col-form-label">New Password</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="newpassword" type="password" class="form-control" id="newPassword">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="renewPassword" class="col-md-4 col-lg-3 col-form-label">Re-enter New
|
|
||||||
Password</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="renewpassword" type="password" class="form-control"
|
|
||||||
id="renewPassword">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="text-center">
|
|
||||||
<button type="submit" class="btn btn-primary">Change Password</button>
|
|
||||||
</div>
|
|
||||||
</form><!-- End Change Password Form -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div><!-- End Bordered Tabs -->
|
</div><!-- End Bordered Tabs -->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
|
||||||
</div>
|
</div>
|
||||||
{{-- profile --}}
|
</div>
|
||||||
<script>
|
</div>
|
||||||
document.addEventListener("DOMContentLoaded", function() {
|
@endsection
|
||||||
// Mendapatkan elemen-elemen tombol tab
|
|
||||||
const editProfileTab = document.querySelector('[data-bs-target="#profile-edit"]');
|
|
||||||
const settingsTab = document.querySelector('[data-bs-target="#profile-settings"]');
|
|
||||||
const changePasswordTab = document.querySelector('[data-bs-target="#profile-change-password"]');
|
|
||||||
const overviewTab = document.querySelector('[data-bs-target="#profile-overview"]');
|
|
||||||
|
|
||||||
// Menambahkan event listener untuk mengubah tab saat tombol diklik
|
|
||||||
editProfileTab.addEventListener("click", function() {
|
|
||||||
activateTabAndContent(editProfileTab, "#profile-edit");
|
|
||||||
});
|
|
||||||
|
|
||||||
settingsTab.addEventListener("click", function() {
|
|
||||||
activateTabAndContent(settingsTab, "#profile-settings");
|
|
||||||
});
|
|
||||||
|
|
||||||
changePasswordTab.addEventListener("click", function() {
|
|
||||||
activateTabAndContent(changePasswordTab, "#profile-change-password");
|
|
||||||
});
|
|
||||||
|
|
||||||
// Menambahkan event listener untuk kembali ke tab "Overview"
|
|
||||||
overviewTab.addEventListener("click", function() {
|
|
||||||
activateTabAndContent(overviewTab, "#profile-overview");
|
|
||||||
});
|
|
||||||
|
|
||||||
// Fungsi untuk mengaktifkan tab dan konten
|
|
||||||
function activateTabAndContent(tabButton, tabContentId) {
|
|
||||||
// Nonaktifkan tab aktif saat ini
|
|
||||||
const activeTabButton = document.querySelector(".nav-link.active");
|
|
||||||
const activeTabContent = document.querySelector(".tab-pane.active");
|
|
||||||
|
|
||||||
activeTabButton.classList.remove("active");
|
|
||||||
activeTabContent.classList.remove("show", "active");
|
|
||||||
|
|
||||||
// Aktifkan tab yang dipilih
|
|
||||||
tabButton.classList.add("active");
|
|
||||||
|
|
||||||
// Tampilkan konten tab yang dipilih
|
|
||||||
const selectedTabContent = document.querySelector(tabContentId);
|
|
||||||
selectedTabContent.classList.add("show", "active");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
{{-- profile --}}
|
|
||||||
@endsection
|
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
@extends('admin.layout.main')
|
@extends('Admin.layout.main')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
@ -14,53 +13,38 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
|
{{-- <div class="card-header">
|
||||||
|
<h2>Detail Refund</h2>
|
||||||
|
</div> --}}
|
||||||
@foreach ($detail_refund as $DetailRefund)
|
@foreach ($detail_refund as $DetailRefund)
|
||||||
<div class="card-body p-0">
|
<div class="card-body p-0">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<p><strong>Image/Video</strong></p>
|
<p><strong>Image/Video: </strong></p>
|
||||||
<img src="assets/images/dashboard/img_2.jpg" alt="Return Image" width="300">
|
<img src="assets/images/dashboard/img_2.jpg" alt="Return Image" width="300">
|
||||||
<img src="assets/images/dashboard/img_3.jpg" alt="Return Image" width="300">
|
<img src="assets/images/dashboard/img_3.jpg" alt="Return Image" width="300">
|
||||||
<img src="assets/images/dashboard/img_4.jpg" alt="Return Image" width="300">
|
<img src="assets/images/dashboard/img_4.jpg" alt="Return Image" width="300"><br><br>
|
||||||
<br><br>
|
<p><strong>ID Order:</strong> {{ $DetailRefund['orderId'] }}</p>
|
||||||
<div class="row">
|
<p><strong>Customer Name:</strong> {{ $DetailRefund['customer'] }}</p>
|
||||||
<div class="col-2"><strong>ID Order</strong></div>
|
<p><strong>Seller Name:</strong> {{ $DetailRefund['seller'] }}</p>
|
||||||
<div class="col">{{ $DetailRefund['orderId'] }}</div>
|
<p><strong>Total:</strong> {{ $DetailRefund['total'] }}</p>
|
||||||
</div><br>
|
<p><strong>Due Date:</strong> {{ $DetailRefund['date'] }}</p>
|
||||||
<div class="row">
|
<p class="justified-text"><strong>Reason Complaint:</strong>
|
||||||
<div class="col-2"><strong>Customer Name</strong></div>
|
{{ $DetailRefund['complaint'] }}</p>
|
||||||
<div class="col">{{ $DetailRefund['customer'] }}</div>
|
|
||||||
</div><br>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-2"><strong>Seller Name</strong></div>
|
|
||||||
<div class="col">{{ $DetailRefund['seller'] }}</div>
|
|
||||||
</div><br>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-2"><strong>Total</strong></div>
|
|
||||||
<div class="col">{{ $DetailRefund['total'] }}</div>
|
|
||||||
</div><br>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-2"><strong>Due Date</strong></div>
|
|
||||||
<div class="col">{{ $DetailRefund['date'] }}</div>
|
|
||||||
</div><br>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-2"><strong>Reason Complaint</strong></div>
|
|
||||||
<div class="col justified-text">{{ $DetailRefund['complaint'] }}</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="d-flex justify-content-center mt-3">
|
<div class="d-flex justify-content-center">
|
||||||
<a href="#" data-toggle="modal" data-target="#ModalRefund"
|
<a href="#" data-toggle="modal" data-target="#ModalRefund"
|
||||||
class="btn btn-primary mx-1">Accept</a>
|
class="btn btn-primary mx-1">Accept</a>
|
||||||
<a href="/history_refund" class="btn btn-danger mx-1">Decline</a>
|
<a href="/history_refund" class="btn btn-danger mx-1">Decline</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<br>
|
</div><br>
|
||||||
</div>
|
</div>
|
||||||
@endforeach
|
@endforeach
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@include('admin.refund.modal-next-detail-refund')
|
@include('Admin.refund.next-detail-refund')
|
||||||
@endsection
|
@endsection
|
||||||
|
105
resources/views/Admin/refund/history-refund.blade.php
Normal file
105
resources/views/Admin/refund/history-refund.blade.php
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
@extends('Admin.layout.main')
|
||||||
|
@section('content')
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h1>History Refund</h1>
|
||||||
|
<div class="section-header-breadcrumb">
|
||||||
|
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
||||||
|
<div class="breadcrumb-item">Refund</div>
|
||||||
|
<div class="breadcrumb-item">History</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="card">
|
||||||
|
{{-- <div class="card-header">
|
||||||
|
<h2>History Refund</h2>
|
||||||
|
</div> --}}
|
||||||
|
<div class="d-flex justify-content-between align-items-center p-4">
|
||||||
|
<div class="d-flex align-items-center">
|
||||||
|
<span class="mb-0 ml-2">Show:</span>
|
||||||
|
<select class="form-select ml-2">
|
||||||
|
<option>10</option>
|
||||||
|
<option>25</option>
|
||||||
|
<option>50</option>
|
||||||
|
<option>100</option>
|
||||||
|
</select>
|
||||||
|
<span class="ml-2">entries</span>
|
||||||
|
</div>
|
||||||
|
<div class="float-right">
|
||||||
|
<form>
|
||||||
|
<div class="input-group">
|
||||||
|
<input type="text" class="form-control" placeholder="Search">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-bordered table-md">
|
||||||
|
<tr>
|
||||||
|
<th>Order ID</th>
|
||||||
|
<th>Customer</th>
|
||||||
|
<th>Seller</th>
|
||||||
|
<th>Total</th>
|
||||||
|
<th>Due Date</th>
|
||||||
|
<th>Status</th>
|
||||||
|
<th>Action</th>
|
||||||
|
</tr>
|
||||||
|
@foreach ($history_refund as $HistoryRefund)
|
||||||
|
<tr>
|
||||||
|
<td class="font-weight-600">{{ $HistoryRefund['orderId'] }}</a></td>
|
||||||
|
<td class="font-weight-600">{{ $HistoryRefund['customer'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $HistoryRefund['seller'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $HistoryRefund['total'] }}</td>
|
||||||
|
<td>{{ $HistoryRefund['date'] }}</td>
|
||||||
|
<td>
|
||||||
|
<div class="badge badge-danger">{{ $HistoryRefund['status'] }}</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<div class="btn-group">
|
||||||
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
|
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
|
Action
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item" href="/detail_refund">Details</a>
|
||||||
|
<a class="dropdown-item" href="#">Edit</a>
|
||||||
|
<a class="dropdown-item" href="#">Delete</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</table>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="d-flex justify-content-end">
|
||||||
|
<nav aria-label="paginate">
|
||||||
|
<ul class="pagination">
|
||||||
|
<li class="page-item disabled">
|
||||||
|
<a class="page-link" href="#" tabindex="-1">Previous</a>
|
||||||
|
</li>
|
||||||
|
<li class="page-item active"><a class="page-link" href="#">1</a></li>
|
||||||
|
<li class="page-item ">
|
||||||
|
<a class="page-link" href="#">2 <span
|
||||||
|
class="sr-only">(current)</span></a>
|
||||||
|
</li>
|
||||||
|
<li class="page-item"><a class="page-link" href="#">3</a></li>
|
||||||
|
<li class="page-item">
|
||||||
|
<a class="page-link" href="#">Next</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endsection
|
30
resources/views/Admin/refund/next-detail-refund.blade.php
Normal file
30
resources/views/Admin/refund/next-detail-refund.blade.php
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
<!-- Modal -->
|
||||||
|
<div class="modal fade" id="ModalRefund" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
||||||
|
aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h5 class="modal-title" id="exampleModalLongTitle">Refund Confirmation</h5>
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<h6> Apakah kamu yakin untuk menerima pengembalian dana? </h6>
|
||||||
|
<h7><b>Jumlah Pengembalian Dana: </b></h7>
|
||||||
|
<p>Rp. 15000</p>
|
||||||
|
|
||||||
|
<input type="radio" id="yes" name="fav_language" value="yes">
|
||||||
|
<label for="yes">Ya! Terima pengembalian dana </label> <br>
|
||||||
|
<input type="radio" id="no" name="fav_language" value="no">
|
||||||
|
<label for="no">Tidak! Pengembalian dana tidak bisa dilanjutkan</label>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancel</button>
|
||||||
|
<a href="{{route('refund.index')}}" class="btn btn-primary mx-1">Accept Refund</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -0,0 +1,178 @@
|
|||||||
|
<!-- Modal -->
|
||||||
|
<div class="modal fade" id="ModalTransaction" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
||||||
|
aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h2 class="modal-title" id="exampleModalLongTitle">Tracking Information</h2>
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="section-body">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="activities">
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-comment-alt"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">2 min ago</span>
|
||||||
|
<span class="bullet"></span>
|
||||||
|
<a class="text-job" href="#">View</a>
|
||||||
|
<div class="float-right dropdown">
|
||||||
|
<a href="#" data-toggle="dropdown"><i
|
||||||
|
class="fas fa-ellipsis-h"></i></a>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<div class="dropdown-title">Options</div>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-eye"></i> View</a>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-list"></i> Detail</a>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<a href="#" class="dropdown-item has-icon text-danger"
|
||||||
|
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
||||||
|
data-confirm-text-yes="Yes, IDC"><i
|
||||||
|
class="fas fa-trash-alt"></i> Archive</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<p>Have commented on the task of "<a href="#">Responsive
|
||||||
|
design</a>".</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-arrows-alt"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job">1 hour ago</span>
|
||||||
|
<span class="bullet"></span>
|
||||||
|
<a class="text-job" href="#">View</a>
|
||||||
|
<div class="float-right dropdown">
|
||||||
|
<a href="#" data-toggle="dropdown"><i
|
||||||
|
class="fas fa-ellipsis-h"></i></a>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<div class="dropdown-title">Options</div>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-eye"></i> View</a>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-list"></i> Detail</a>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<a href="#" class="dropdown-item has-icon text-danger"
|
||||||
|
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
||||||
|
data-confirm-text-yes="Yes, IDC"><i
|
||||||
|
class="fas fa-trash-alt"></i> Archive</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<p>Moved the task "<a href="#">Fix some features that are bugs in
|
||||||
|
the master module</a>" from Progress to Finish.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-unlock"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job">4 hour ago</span>
|
||||||
|
<span class="bullet"></span>
|
||||||
|
<a class="text-job" href="#">View</a>
|
||||||
|
<div class="float-right dropdown">
|
||||||
|
<a href="#" data-toggle="dropdown"><i
|
||||||
|
class="fas fa-ellipsis-h"></i></a>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<div class="dropdown-title">Options</div>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-eye"></i> View</a>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-list"></i> Detail</a>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<a href="#" class="dropdown-item has-icon text-danger"
|
||||||
|
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
||||||
|
data-confirm-text-yes="Yes, IDC"><i
|
||||||
|
class="fas fa-trash-alt"></i> Archive</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<p>Login to the system with ujang@maman.com email and location in Bogor.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-trash"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job">Yesterday</span>
|
||||||
|
<span class="bullet"></span>
|
||||||
|
<a class="text-job" href="#">View</a>
|
||||||
|
<div class="float-right dropdown">
|
||||||
|
<a href="#" data-toggle="dropdown"><i
|
||||||
|
class="fas fa-ellipsis-h"></i></a>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<div class="dropdown-title">Options</div>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-eye"></i> View</a>
|
||||||
|
<a href="#" class="dropdown-item has-icon"><i
|
||||||
|
class="fas fa-list"></i> Detail</a>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<a href="#" class="dropdown-item has-icon text-danger"
|
||||||
|
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
||||||
|
data-confirm-text-yes="Yes, IDC"><i
|
||||||
|
class="fas fa-trash-alt"></i> Archive</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<p>Assign the task of "<a href="#">Redesigning website header and
|
||||||
|
make it responsive AF</a>" to <a href="#">Syahdan
|
||||||
|
Ubaidilah</a>.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<a href="/history_transaction" class="btn btn-primary mx-1">Back</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{{-- @extends('layout.main')
|
||||||
|
@section('content')
|
||||||
|
@foreach ($detail_transaction as $detail_transactions)
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="tracking-container">
|
||||||
|
<h2>Tracking Information</h2>
|
||||||
|
<div class="tracking-info">
|
||||||
|
<p>Tracking Number: <span
|
||||||
|
class="tracking-status">{{ $detail_transactions['tracking_number'] }}</span></p>
|
||||||
|
<p>Order ID: <span class="tracking-status">{{ $detail_transactions['orderId'] }}</span></p>
|
||||||
|
<p>Status: <span class="tracking-status">{{ $detail_transactions['status'] }}</span></p>
|
||||||
|
<p>Estimated: {{ $detail_transactions['estimated'] }}</p>
|
||||||
|
</div>
|
||||||
|
<h2>Tracking Details</h2>
|
||||||
|
<ul>
|
||||||
|
<li>{{ $detail_transactions['tracking_detail1'] }}</li>
|
||||||
|
<li>{{ $detail_transactions['tracking_detail2'] }}</li>
|
||||||
|
<li>{{ $detail_transactions['tracking_detail3'] }}</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
@endforeach
|
||||||
|
@endsection --}}
|
104
resources/views/Admin/transaction/History_Transaction.blade.php
Normal file
104
resources/views/Admin/transaction/History_Transaction.blade.php
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
@extends('Admin.layout.main')
|
||||||
|
@section('content')
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h1>History Transaction</h1>
|
||||||
|
<div class="section-header-breadcrumb">
|
||||||
|
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
||||||
|
<div class="breadcrumb-item">Transaction</div>
|
||||||
|
<div class="breadcrumb-item">History</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="d-flex justify-content-between align-items-center p-4">
|
||||||
|
<div class="d-flex align-items-center">
|
||||||
|
<span class="mb-0 ml-2">Show:</span>
|
||||||
|
<select class="form-select ml-2">
|
||||||
|
<option>10</option>
|
||||||
|
<option>25</option>
|
||||||
|
<option>50</option>
|
||||||
|
<option>100</option>
|
||||||
|
</select>
|
||||||
|
<span class="ml-2">entries</span>
|
||||||
|
</div>
|
||||||
|
<div class="float-right">
|
||||||
|
<form>
|
||||||
|
<div class="input-group">
|
||||||
|
<input type="text" class="form-control" placeholder="Search">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-bordered table-md">
|
||||||
|
<tr>
|
||||||
|
<th>Order ID</th>
|
||||||
|
<th>Customer</th>
|
||||||
|
<th>Seller</th>
|
||||||
|
<th>Total</th>
|
||||||
|
<th>Due Date</th>
|
||||||
|
<th>Status</th>
|
||||||
|
<th>Action</th>
|
||||||
|
</tr>
|
||||||
|
@foreach ($transaction as $transactions)
|
||||||
|
<tr>
|
||||||
|
<td><a href="#">{{ $transactions['orderId'] }}</a></td>
|
||||||
|
<td class="font-weight-600">{{ $transactions['customer'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $transactions['seller'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $transactions['total'] }}</td>
|
||||||
|
<td>{{ $transactions['date'] }}</td>
|
||||||
|
<td>
|
||||||
|
<div class="badge badge-success">{{ $transactions['status'] }}</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<div class="btn-group">
|
||||||
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
|
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
|
Action
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item" href="/detail_transaction">Details</a>
|
||||||
|
<a class="dropdown-item" href="#" data-toggle="modal"
|
||||||
|
data-target="#ModalTransaction">Tracking</a>
|
||||||
|
<a class="dropdown-item" href="#">Delete</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</table>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="d-flex justify-content-end">
|
||||||
|
<nav aria-label="paginate">
|
||||||
|
<ul class="pagination">
|
||||||
|
<li class="page-item disabled">
|
||||||
|
<a class="page-link" href="#" tabindex="-1">Previous</a>
|
||||||
|
</li>
|
||||||
|
<li class="page-item active"><a class="page-link" href="#">1</a></li>
|
||||||
|
<li class="page-item ">
|
||||||
|
<a class="page-link" href="#">2 <span
|
||||||
|
class="sr-only">(current)</span></a>
|
||||||
|
</li>
|
||||||
|
<li class="page-item"><a class="page-link" href="#">3</a></li>
|
||||||
|
<li class="page-item">
|
||||||
|
<a class="page-link" href="#">Next</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@include('Admin.transaction.Tracking')
|
||||||
|
@endsection
|
111
resources/views/Admin/transaction/Tracking.blade.php
Normal file
111
resources/views/Admin/transaction/Tracking.blade.php
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
<!-- Modal -->
|
||||||
|
<div class="modal fade" id="ModalTransaction" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
||||||
|
aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h2 class="modal-title" id="exampleModalLongTitle">Tracking Information</h2>
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="section-body">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="activities">
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-comment-alt"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 21, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>User Created Trade</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-arrows-alt"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 22, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>System Notified Admin</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-unlock"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 23, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>Admin Accepted Trade</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-trash"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>Trade in system</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-comment-alt"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>Transaction Success</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<a href="{{ route('admin-transaction.index') }}" class="btn btn-primary mx-1">Back</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{{-- @extends('layout.main')
|
||||||
|
@section('content')
|
||||||
|
@foreach ($detail_transaction as $detail_transactions)
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="tracking-container">
|
||||||
|
<h2>Tracking Information</h2>
|
||||||
|
<div class="tracking-info">
|
||||||
|
<p>Tracking Number: <span
|
||||||
|
class="tracking-status">{{ $detail_transactions['tracking_number'] }}</span></p>
|
||||||
|
<p>Order ID: <span class="tracking-status">{{ $detail_transactions['orderId'] }}</span></p>
|
||||||
|
<p>Status: <span class="tracking-status">{{ $detail_transactions['status'] }}</span></p>
|
||||||
|
<p>Estimated: {{ $detail_transactions['estimated'] }}</p>
|
||||||
|
</div>
|
||||||
|
<h2>Tracking Details</h2>
|
||||||
|
<ul>
|
||||||
|
<li>{{ $detail_transactions['tracking_detail1'] }}</li>
|
||||||
|
<li>{{ $detail_transactions['tracking_detail2'] }}</li>
|
||||||
|
<li>{{ $detail_transactions['tracking_detail3'] }}</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
@endforeach
|
||||||
|
@endsection --}}
|
@ -5,7 +5,7 @@
|
|||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>Detail Users</h1>
|
<h1>Detail Users</h1>
|
||||||
<div class="section-header-breadcrumb">
|
<div class="section-header-breadcrumb">
|
||||||
<div class="breadcrumb-item active"><a href="{{ route('admin.index') }}">Dashboard</a></div>
|
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item">Users</div>
|
<div class="breadcrumb-item">Users</div>
|
||||||
<div class="breadcrumb-item">Details</div>
|
<div class="breadcrumb-item">Details</div>
|
||||||
</div>
|
</div>
|
||||||
@ -15,33 +15,28 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div class="card-title pb-2 m-0">User Id<br /><span>#{{ $user->id }}</span>
|
<div class="card-title pb-2 m-0">User Id<br /><span>#324525</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex flex-column">
|
<div class="d-flex flex-column">
|
||||||
@if ($user->foto_profil == null)
|
<img src="/assets/img/avatar/avatar-6.png" class="rounded-circle shadow align-self-center"
|
||||||
<img src="{{ asset('assets/img/avatar/avatar-6.png') }}"
|
style="max-width: 130px;" alt="" srcset="">
|
||||||
class="rounded-circle shadow align-self-center"style="max-width: 130px;"
|
|
||||||
alt="" srcset="">
|
|
||||||
@else
|
|
||||||
<img src="{{ asset('storage/foto-profil/' . $user->foto_profil) }}"
|
|
||||||
class="rounded-circle shadow align-self-center" style="max-width: 130px;"
|
|
||||||
alt="" srcset="">
|
|
||||||
@endif
|
|
||||||
<h4 class="align-self-center mt-3">Status : {{$user->status == 'Finished' ? 'Selesai diverifikasi' : ($user->status == 'Progress' ? 'Sedang diverifikasi' : 'Tolak')}}</h4>
|
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">NIK</span>
|
<span class="fw-bold text-start">Name</span>
|
||||||
<span class="text-muted ">{{ $user->nik }}</span>
|
<span class="text-muted ">jilhan haura</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Nama</span>
|
<span class="fw-bold text-start">Gender</span>
|
||||||
<span
|
<span class="text-muted ">female</span>
|
||||||
class="text-muted ">{{ ucwords(strtolower($user->nama_depan . ' ' . $user->nama_belakang)) }}</span>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Jenis Kelamin</span>
|
<span class="fw-bold text-start">Religion</span>
|
||||||
<span class="text-muted ">{{ $user->gender }}</span>
|
<span class="text-muted ">muslim</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Blood Type</span>
|
||||||
|
<span class="text-muted ">ab</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
@ -53,220 +48,41 @@
|
|||||||
|
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Email</span>
|
<span class="fw-bold text-start">Email</span>
|
||||||
<span class="text-muted ">{{ $user->email }}</span>
|
<span class="text-muted ">jilhanhaura07@gmail.com</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Nomor HP</span>
|
<span class="fw-bold text-start">Phone Number</span>
|
||||||
<span class="text-muted ">{{ $user->nohp }}</span>
|
<span class="text-muted ">929382044824</span>
|
||||||
</div>
|
</div>
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div class="card-title pb-2 m-0">
|
<div class="card-title pb-2 m-0">
|
||||||
<h4>Alamat</h4>
|
<h4>Address</h4>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Provinsi</span>
|
<span class="fw-bold text-start">Province</span>
|
||||||
<span class="text-muted ">{{ ucwords(strtolower($user->getProvinceName())) }}</span>
|
<span class="text-muted ">sumbar</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Kota/Kabupaten</span>
|
<span class="fw-bold text-start">City</span>
|
||||||
<span class="text-muted ">{{ ucwords(strtolower($user->getCityName())) }}</span>
|
<span class="text-muted ">padang</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Kecamatan</span>
|
<span class="fw-bold text-start">District</span>
|
||||||
<span class="text-muted ">{{ ucwords(strtolower($user->getDistrictName())) }}</span>
|
<span class="text-muted ">asadcas</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Kelurahan</span>
|
<span class="fw-bold text-start">Village</span>
|
||||||
<span class="text-muted ">{{ ucwords(strtolower($user->getVillageName())) }}</span>
|
<span class="text-muted ">balaibaru</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Alamat</span>
|
<span class="fw-bold text-start">Detail</span>
|
||||||
<span class="text-muted ">{{ $user->alamat }}</span>
|
<span class="text-muted ">fafaafadad</span>
|
||||||
</div>
|
</div>
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
|
||||||
<div class="card-title pb-2 m-0">
|
|
||||||
<h4>Foto KTP dan Wajah</h4>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="container">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-6 col-sm-12 text-center">
|
|
||||||
<!-- Kolom pertama, col-md-6 untuk layar medium dan col-sm-12 untuk layar kecil -->
|
|
||||||
@if ($user->foto_ktp == null)
|
|
||||||
<a href="#" id="tampilKTP">
|
|
||||||
<img id="fotoKTP" src="{{ asset('storage/foto-ktp/ktp.jpg') }}"
|
|
||||||
alt="Foto KTP" class="align-self-center img-fluid"
|
|
||||||
style="max-width: 350px;">
|
|
||||||
</a>
|
|
||||||
@else
|
|
||||||
<a href="#" id="tampilKTP">
|
|
||||||
<img id="fotoKTP"
|
|
||||||
src="{{ asset('storage/foto-ktp/' . $user->foto_ktp) }}"
|
|
||||||
alt="Foto Wajah" class="align-self-center img-fluid"
|
|
||||||
style="max-width: 350px;">
|
|
||||||
</a>
|
|
||||||
@endif
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6 col-sm-12 text-center">
|
|
||||||
<!-- Kolom kedua, col-md-6 untuk layar medium dan col-sm-12 untuk layar kecil -->
|
|
||||||
@if ($user->foto_wajah == null)
|
|
||||||
<a href="#" id="tampilWajah">
|
|
||||||
<img id="fotoWajah" src="{{ asset('storage/foto-wajah/wajah.jpg') }}"
|
|
||||||
alt="Foto KTP" class="align-self-center img-fluid"
|
|
||||||
style="max-width: 350px;">
|
|
||||||
</a>
|
|
||||||
@else
|
|
||||||
<a href="#" id="tampilWajah">
|
|
||||||
<img id="fotoWajah"
|
|
||||||
src="{{ asset('storage/foto-wajah/' . $user->foto_wajah) }}"
|
|
||||||
alt="Foto Wajah" class="align-self-center img-fluid"
|
|
||||||
style="max-width: 350px;">
|
|
||||||
</a>
|
|
||||||
@endif
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="data-field mt-4">
|
|
||||||
<span class="fw-bold text-start">Persentase Kemiripan</span>
|
|
||||||
<span class="text-muted ">{{ $user->persentase_kemiripan }}</span>
|
|
||||||
</div>
|
|
||||||
@if ($user->status == 'Progress')
|
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
|
||||||
<div class="card-title pb-2 m-0">
|
|
||||||
<h4>Setujui pembuatan akun ini?</h4>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<a class="btn btn-primary text-white" id="approveUser"
|
|
||||||
data-id="{{ $user->id }}">Setujui</a>
|
|
||||||
<a class="btn btn-danger text-white" id="denyUser"
|
|
||||||
data-id="{{ $user->id }}">Tolak</a>
|
|
||||||
@endif
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
|
||||||
</div>
|
</div>
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
|
||||||
$('#tampilKTP').on('click', function() {
|
|
||||||
let fotoKTP = document.getElementById('fotoKTP').src;
|
|
||||||
console.log(fotoKTP);
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Foto KTP',
|
|
||||||
imageUrl: fotoKTP,
|
|
||||||
imageWidth: 600,
|
|
||||||
// imageHeight: 1500,
|
|
||||||
imageAlt: 'Foto KTP'
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#tampilWajah').on('click', function() {
|
|
||||||
let fotoWajah = document.getElementById('fotoWajah').src;
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Foto Wajah',
|
|
||||||
imageUrl: fotoWajah,
|
|
||||||
imageWidth: 600,
|
|
||||||
imageAlt: 'Foto Wajah'
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#approveUser').on('click', function() {
|
|
||||||
let id = $(this).data('id');
|
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Status Akun',
|
|
||||||
text: 'Apakah anda yakin menyetujui akun ini?',
|
|
||||||
icon: 'info',
|
|
||||||
confirmButtonText: 'Ya, setuju!',
|
|
||||||
showCancelButton: true,
|
|
||||||
cancelButtonText: 'Tidak'
|
|
||||||
}).then((result) => {
|
|
||||||
if (result.isConfirmed) {
|
|
||||||
$.ajaxSetup({
|
|
||||||
headers: {
|
|
||||||
'X-CSRF-TOKEN': csrfToken
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$.ajax({
|
|
||||||
url: "{{ route('admin-user.approve', ':id') }}".replace(
|
|
||||||
':id', id),
|
|
||||||
type: 'PUT',
|
|
||||||
success: function(response) {
|
|
||||||
Swal.fire({
|
|
||||||
title: response.status ? 'Berhasil!' :
|
|
||||||
'Gagal!',
|
|
||||||
text: response.message,
|
|
||||||
icon: response.status ? 'success' : 'error',
|
|
||||||
confirmButtonText: 'OK'
|
|
||||||
}).then(function() {
|
|
||||||
location.reload();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
error: function(error) {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal!',
|
|
||||||
text: 'Tidak ada data yang dihapus, karena ' +
|
|
||||||
error,
|
|
||||||
icon: 'error'
|
|
||||||
}).then(function() {
|
|
||||||
location.reload();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#denyUser').on('click', function() {
|
|
||||||
let id = $(this).data('id');
|
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Status Akun',
|
|
||||||
text: 'Apakah anda yakin menolak akun ini?',
|
|
||||||
icon: 'info',
|
|
||||||
confirmButtonText: 'Ya, setuju!',
|
|
||||||
showCancelButton: true,
|
|
||||||
cancelButtonText: 'Tidak'
|
|
||||||
}).then((result) => {
|
|
||||||
if (result.isConfirmed) {
|
|
||||||
$.ajaxSetup({
|
|
||||||
headers: {
|
|
||||||
'X-CSRF-TOKEN': csrfToken
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$.ajax({
|
|
||||||
url: "{{ route('admin-user.deny', ':id') }}".replace(
|
|
||||||
':id', id),
|
|
||||||
type: 'PUT',
|
|
||||||
success: function(response) {
|
|
||||||
Swal.fire({
|
|
||||||
title: response.status ? 'Berhasil!' :
|
|
||||||
'Gagal!',
|
|
||||||
text: response.message,
|
|
||||||
icon: response.status ? 'success' : 'error',
|
|
||||||
confirmButtonText: 'OK'
|
|
||||||
}).then(function() {
|
|
||||||
location.reload();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
error: function(error) {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal!',
|
|
||||||
text: 'Gagal mengubah status akun, karena ' +
|
|
||||||
error,
|
|
||||||
icon: 'info'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -21,7 +21,6 @@
|
|||||||
<th>Foto Profil</th>
|
<th>Foto Profil</th>
|
||||||
<th>Nama Panjang</th>
|
<th>Nama Panjang</th>
|
||||||
<th>Email</th>
|
<th>Email</th>
|
||||||
{{-- <th>Gender</th> --}}
|
|
||||||
<th>Tanggal Daftar</th>
|
<th>Tanggal Daftar</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Aksi</th>
|
<th>Aksi</th>
|
||||||
@ -37,7 +36,7 @@
|
|||||||
<img src="{{ $user->foto_profil != null ? asset('storage') : asset('assets/img/avatar/avatar-6.png') }}" alt="...">
|
<img src="{{ $user->foto_profil != null ? asset('storage') : asset('assets/img/avatar/avatar-6.png') }}" alt="...">
|
||||||
</figure>
|
</figure>
|
||||||
</td>
|
</td>
|
||||||
<td>{{ $user->nama }}</td>
|
<td>{{ $user->nama_depan.' '.$user->nama_belakang }}</td>
|
||||||
<td>{{ $user->email }}</td>
|
<td>{{ $user->email }}</td>
|
||||||
<td>{{ $user->created_at }}</td>
|
<td>{{ $user->created_at }}</td>
|
||||||
<td>
|
<td>
|
||||||
|
113
resources/views/Admin/users/list-user.blade.php
Normal file
113
resources/views/Admin/users/list-user.blade.php
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
@extends('Admin.layout.main')
|
||||||
|
@section('content')
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h1>User</h1>
|
||||||
|
<div class="section-header-breadcrumb">
|
||||||
|
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
||||||
|
<div class="breadcrumb-item">User</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="card">
|
||||||
|
{{-- <div class="card-header">
|
||||||
|
<h2 class="mb-4">List Users</h2>
|
||||||
|
</div> --}}
|
||||||
|
<div class="d-flex justify-content-between align-items-center p-4">
|
||||||
|
<div class="d-flex align-items-center">
|
||||||
|
<span class="mb-0 ml-2">Show:</span>
|
||||||
|
<select class="form-select ml-2">
|
||||||
|
<option>10</option>
|
||||||
|
<option>25</option>
|
||||||
|
<option>50</option>
|
||||||
|
<option>100</option>
|
||||||
|
</select>
|
||||||
|
<span class="ml-2">entries</span>
|
||||||
|
</div>
|
||||||
|
<div class="float-right">
|
||||||
|
<form>
|
||||||
|
<div class="input-group">
|
||||||
|
<input type="text" class="form-control" placeholder="Search">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-bordered table-md">
|
||||||
|
<tr>
|
||||||
|
<th>User Id</th>
|
||||||
|
<th>Avatar</th>
|
||||||
|
<th>NIK</th>
|
||||||
|
<th>FullName</th>
|
||||||
|
<th>Email</th>
|
||||||
|
{{-- <th>Gender</th> --}}
|
||||||
|
<th>Date</th>
|
||||||
|
<th>Status</th>
|
||||||
|
<th>Action</th>
|
||||||
|
</tr>
|
||||||
|
@foreach ($list_users as $list_user)
|
||||||
|
<tr>
|
||||||
|
<td class="font-weight-600"> {{ $list_user['userId'] }}</td>
|
||||||
|
<td>
|
||||||
|
<figure class="avatar mr-2 avatar-xl">
|
||||||
|
<img src="assets/img/avatar/avatar-6.png" alt="...">
|
||||||
|
</figure>
|
||||||
|
</td>
|
||||||
|
<td class="font-weight-600">{{ $list_user['nik'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $list_user['fullname'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $list_user['email'] }}</td>
|
||||||
|
{{-- <td class="font-weight-600">{{ $list_user['gender'] }}</td> --}}
|
||||||
|
<td>{{ $list_user['date'] }}</td>
|
||||||
|
<td>
|
||||||
|
<div class="badge badge-success">{{ $list_user['status'] }}</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<div class="btn-group">
|
||||||
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
|
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
|
Action
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item" href="/detail-user">Details</a>
|
||||||
|
<a class="dropdown-item" href="#">Edit</a>
|
||||||
|
<a class="dropdown-item" href="#">Delete</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</table>
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="d-flex justify-content-end">
|
||||||
|
<nav aria-label="paginate">
|
||||||
|
<ul class="pagination">
|
||||||
|
<li class="page-item disabled">
|
||||||
|
<a class="page-link" href="#" tabindex="-1">Previous</a>
|
||||||
|
</li>
|
||||||
|
<li class="page-item active"><a class="page-link" href="#">1</a></li>
|
||||||
|
<li class="page-item ">
|
||||||
|
<a class="page-link" href="#">2 <span
|
||||||
|
class="sr-only">(current)</span></a>
|
||||||
|
</li>
|
||||||
|
<li class="page-item"><a class="page-link" href="#">3</a></li>
|
||||||
|
<li class="page-item">
|
||||||
|
<a class="page-link" href="#">Next</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
@endsection
|
@ -1,4 +1,8 @@
|
|||||||
|
<<<<<<< HEAD
|
||||||
|
@extends('User.layout.main')
|
||||||
|
=======
|
||||||
@extends('user.layout.main')
|
@extends('user.layout.main')
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
@section('content')
|
@section('content')
|
||||||
<!-- Main Content -->
|
<!-- Main Content -->
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
@ -69,7 +73,11 @@
|
|||||||
<h4>Total Refund</h4>
|
<h4>Total Refund</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
<<<<<<< HEAD
|
||||||
|
100
|
||||||
|
=======
|
||||||
190
|
190
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -84,10 +92,17 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-wrap">
|
<div class="card-wrap">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
|
<<<<<<< HEAD
|
||||||
|
<h4>Total user</h4>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
100 </div>
|
||||||
|
=======
|
||||||
<h4>Total Transaction </h4>
|
<h4>Total Transaction </h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
109 </div>
|
109 </div>
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -104,6 +119,38 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header">
|
||||||
|
<h2>History Transaction</h2>
|
||||||
|
</div>
|
||||||
|
<div class="d-flex justify-content-between align-items-center p-4">
|
||||||
|
<div class="d-flex align-items-center">
|
||||||
|
<span class="mb-0 ml-2">Show:</span>
|
||||||
|
<select class="form-select ml-2">
|
||||||
|
<option>10</option>
|
||||||
|
<option>25</option>
|
||||||
|
<option>50</option>
|
||||||
|
<option>100</option>
|
||||||
|
</select>
|
||||||
|
<span class="ml-2">entries</span>
|
||||||
|
</div>
|
||||||
|
<div class="float-right">
|
||||||
|
<form>
|
||||||
|
<div class="input-group">
|
||||||
|
<input type="text" class="form-control" placeholder="Search">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-bordered table-md">
|
||||||
|
=======
|
||||||
|
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
@ -113,6 +160,7 @@
|
|||||||
<div class="card-body p-0">
|
<div class="card-body p-0">
|
||||||
<div class="table-responsive table-invoice">
|
<div class="table-responsive table-invoice">
|
||||||
<table class="table table-striped">
|
<table class="table table-striped">
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
<tr>
|
<tr>
|
||||||
<th>Order ID</th>
|
<th>Order ID</th>
|
||||||
<th>Customer</th>
|
<th>Customer</th>
|
||||||
@ -120,6 +168,35 @@
|
|||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Due Date</th>
|
<th>Due Date</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
|
<<<<<<< HEAD
|
||||||
|
<th>Action</th>
|
||||||
|
</tr>
|
||||||
|
@foreach ($transaction as $transactions)
|
||||||
|
<tr>
|
||||||
|
<td><a href="#">{{ $transactions['orderId'] }}</a></td>
|
||||||
|
<td class="font-weight-600">{{ $transactions['customer'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $transactions['seller'] }}</td>
|
||||||
|
<td class="font-weight-600">{{ $transactions['total'] }}</td>
|
||||||
|
<td>{{ $transactions['date'] }}</td>
|
||||||
|
<td>
|
||||||
|
<div class="badge badge-success">{{ $transactions['status'] }}</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<div class="btn-group">
|
||||||
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
|
data-toggle="dropdown" aria-haspopup="true"
|
||||||
|
aria-expanded="false">
|
||||||
|
Action
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item" href="/detail_transaction">Details</a>
|
||||||
|
<a class="dropdown-item" href="#" data-toggle="modal"
|
||||||
|
data-target="#ModalTransaction">Tracking</a>
|
||||||
|
<a class="dropdown-item" href="#">Delete</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
=======
|
||||||
<th>Image</th>
|
<th>Image</th>
|
||||||
</tr>
|
</tr>
|
||||||
@foreach ($refundUserss as $HistoryRefundUser)
|
@foreach ($refundUserss as $HistoryRefundUser)
|
||||||
@ -141,6 +218,7 @@
|
|||||||
{{ $HistoryRefundUser['uploadBukti'] }}</td>
|
{{ $HistoryRefundUser['uploadBukti'] }}</td>
|
||||||
<td>
|
<td>
|
||||||
|
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
</table>
|
</table>
|
||||||
@ -148,6 +226,12 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<<<<<<< HEAD
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
@include('Admin.transaction.Tracking')
|
||||||
|
=======
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@ -351,4 +435,5 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -84,7 +84,8 @@
|
|||||||
<div class="dropdown-list-content dropdown-list-message">
|
<div class="dropdown-list-content dropdown-list-message">
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-1.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-1.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -95,7 +96,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-2.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-2.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Dedik Sugiharto</b>
|
<b>Dedik Sugiharto</b>
|
||||||
@ -105,7 +107,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-3.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-3.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -116,7 +119,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-4.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-4.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Ardian Rahardiansyah</b>
|
<b>Ardian Rahardiansyah</b>
|
||||||
@ -126,7 +130,8 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-5.png')}}" class="rounded-circle">
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-5.png') }}"
|
||||||
|
class="rounded-circle">
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Alfa Zulkarnain</b>
|
<b>Alfa Zulkarnain</b>
|
||||||
@ -202,22 +207,40 @@
|
|||||||
</li>
|
</li>
|
||||||
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
||||||
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
||||||
<img alt="image" src="{{asset('assets/img/avatar/avatar-1.png')}}" class="rounded-circle mr-1">
|
<<<<<<< HEAD <img alt="image" src="assets/img/avatar/avatar-1.png" class="rounded-circle mr-1">
|
||||||
|
<div class="d-sm-none d-lg-inline-block">Hi, {{ $name }}</div>
|
||||||
|
</a>
|
||||||
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
|
<div class="dropdown-title">Logged in 5 min ago</div>
|
||||||
|
<a href="#" class="dropdown-item has-icon">
|
||||||
|
<i class="far fa-user"></i> Profile
|
||||||
|
</a>
|
||||||
|
<a href="features-activities.html" class="dropdown-item has-icon">
|
||||||
|
=======
|
||||||
|
<img alt="image" src="{{ asset('assets/img/avatar/avatar-1.png') }}"
|
||||||
|
class="rounded-circle mr-1">
|
||||||
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu dropdown-menu-right">
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
<div class="dropdown-title">Logged in 5 min ago</div>
|
<div class="dropdown-title">Logged in 5 min ago</div>
|
||||||
<a href="{{route('user.profile')}}" class="dropdown-item has-icon">
|
<a href="{{ route('user.profile') }}" class="dropdown-item has-icon">
|
||||||
<i class="far fa-user"></i> Profile
|
<i class="far fa-user"></i> Profile
|
||||||
</a>
|
</a>
|
||||||
{{-- <a href="features-activities.html" class="dropdown-item has-icon">
|
{{-- <a href="features-activities.html" class="dropdown-item has-icon">
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
<i class="fas fa-bolt"></i> Activities
|
<i class="fas fa-bolt"></i> Activities
|
||||||
</a>
|
</a>
|
||||||
<a href="features-settings.html" class="dropdown-item has-icon">
|
<a href="features-settings.html" class="dropdown-item has-icon">
|
||||||
<i class="fas fa-cog"></i> Settings
|
<i class="fas fa-cog"></i> Settings
|
||||||
|
<<<<<<< HEAD
|
||||||
|
</a>
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<a href="#" class="dropdown-item has-icon text-danger">
|
||||||
|
=======
|
||||||
</a> --}}
|
</a> --}}
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<a href="{{route('logout')}}" class="dropdown-item has-icon text-danger">
|
<a href="{{ route('logout') }}" class="dropdown-item has-icon text-danger">
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
<i class="fas fa-sign-out-alt"></i> Logout
|
<i class="fas fa-sign-out-alt"></i> Logout
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -34,29 +34,25 @@
|
|||||||
|
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
||||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
|
||||||
<title>REKBER</title>
|
<title>REKBER</title>
|
||||||
|
|
||||||
<!-- General CSS Files -->
|
<!-- General CSS Files -->
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/bootstrap/css/bootstrap.min.css') }}">
|
<link rel="stylesheet" href="assets/modules/bootstrap/css/bootstrap.min.css">
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/fontawesome/css/all.min.css') }}">
|
<link rel="stylesheet" href="assets/modules/fontawesome/css/all.min.css">
|
||||||
<link rel="stylesheet" href="https://cdn.materialdesignicons.com/5.4.55/css/materialdesignicons.min.css">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/jqvmap/dist/jqvmap.min.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/summernote/summernote-bs4.css') }}">
|
<!-- CSS Libraries -->
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css') }}">
|
<link rel="stylesheet" href="assets/modules/jqvmap/dist/jqvmap.min.css">
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css') }}">
|
<link rel="stylesheet" href="assets/modules/summernote/summernote-bs4.css">
|
||||||
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.css" />
|
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css">
|
||||||
|
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css">
|
||||||
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/datatables.min.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/DataTables-1.10.16/css/dataTables.bootstrap4.min.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/main.css') }}">
|
|
||||||
<!-- Template CSS -->
|
<!-- Template CSS -->
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
|
<link rel="stylesheet" href="assets/css/style.css">
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/components.css') }}">
|
<link rel="stylesheet" href="assets/css/components.css">
|
||||||
<!-- Start GA -->
|
<!-- Start GA -->
|
||||||
{{-- <script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script> --}}
|
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
||||||
{{-- <script>
|
<script>
|
||||||
window.dataLayer = window.dataLayer || [];
|
window.dataLayer = window.dataLayer || [];
|
||||||
|
|
||||||
function gtag() {
|
function gtag() {
|
||||||
@ -65,129 +61,46 @@
|
|||||||
gtag('js', new Date());
|
gtag('js', new Date());
|
||||||
|
|
||||||
gtag('config', 'UA-94034622-3');
|
gtag('config', 'UA-94034622-3');
|
||||||
</script> --}}
|
</script>
|
||||||
<!-- /END GA -->
|
<!-- /END GA -->
|
||||||
|
|
||||||
{{-- JS --}}
|
|
||||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
|
||||||
<script src="{{ asset('assets/modules/chart.min.js') }}"></script>
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<header class="header-area header-sticky">
|
<header class="header-area header-sticky">
|
||||||
@include('user.layout.header')
|
@include('User.layout.header')
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<!-- ***** Main Banner Area Start ***** -->
|
<!-- ***** Main Banner Area Start ***** -->
|
||||||
<main id="main" style="min-height: 100vh;">
|
<main id="main" style="min-height: 100vh;">
|
||||||
@include('user.layout.sidebar')
|
@include('User.layout.sidebar')
|
||||||
@yield('content')
|
@yield('content')
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<!-- End #main -->
|
<!-- End #main -->
|
||||||
<footer id="footer">
|
<footer id="footer">
|
||||||
@include('user.layout.footer')
|
@include('User.layout.footer')
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
|
||||||
let searchParams = new URLSearchParams(window.location.search);
|
|
||||||
let dateInterval = searchParams.get('from-to');
|
|
||||||
let start = moment().subtract(29, 'days');
|
|
||||||
let end = moment();
|
|
||||||
|
|
||||||
if (dateInterval) {
|
|
||||||
dateInterval = dateInterval.split(' - ');
|
|
||||||
start = moment(dateInterval[0]);
|
|
||||||
end = moment(dateInterval[1]);
|
|
||||||
}
|
|
||||||
|
|
||||||
$('#date-range').daterangepicker({
|
|
||||||
"showDropdowns": true,
|
|
||||||
"showWeekNumbers": true,
|
|
||||||
"alwaysShowCalendars": true,
|
|
||||||
startDate: start,
|
|
||||||
endDate: end,
|
|
||||||
locale: {
|
|
||||||
format: 'YYYY-MM-DD',
|
|
||||||
firstDay: 1,
|
|
||||||
},
|
|
||||||
ranges: {
|
|
||||||
'Today': [moment(), moment()],
|
|
||||||
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
|
||||||
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
|
|
||||||
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
|
|
||||||
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
|
||||||
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1,
|
|
||||||
'month').endOf(
|
|
||||||
'month')],
|
|
||||||
'This Year': [moment().startOf('year'), moment().endOf('year')],
|
|
||||||
'Last Year': [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year')
|
|
||||||
.endOf(
|
|
||||||
'year')
|
|
||||||
],
|
|
||||||
'All time': [moment().subtract(30, 'year').startOf('month'), moment().endOf('month')],
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<!-- General JS Scripts -->
|
<!-- General JS Scripts -->
|
||||||
<script src="{{ asset('assets/modules/jquery.min.js') }}"></script>
|
<script src="assets/modules/jquery.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/popper.js') }}"></script>i
|
<script src="assets/modules/popper.js"></script>
|
||||||
<script src="{{ asset('assets/modules/tooltip.js') }}"></script>
|
<script src="assets/modules/tooltip.js"></script>
|
||||||
<script src="{{ asset('assets/modules/bootstrap/js/bootstrap.min.js') }}"></script>
|
<script src="assets/modules/bootstrap/js/bootstrap.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/nicescroll/jquery.nicescroll.min.js') }}"></script>
|
<script src="assets/modules/nicescroll/jquery.nicescroll.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/moment.min.js') }}"></script>
|
<script src="assets/modules/moment.min.js"></script>
|
||||||
<script src="{{ asset('assets/js/stisla.js') }}"></script>
|
<script src="assets/js/stisla.js"></script>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
|
||||||
|
|
||||||
<!-- JS Libraies -->
|
<!-- JS Libraies -->
|
||||||
<script src="{{ asset('assets/modules/jquery.sparkline.min.js') }}"></script>
|
<script src="assets/modules/jquery.sparkline.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/owlcarousel2/dist/owl.carousel.min.js') }}"></script>
|
<script src="assets/modules/chart.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/summernote/summernote-bs4.js') }}"></script>
|
<script src="assets/modules/owlcarousel2/dist/owl.carousel.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/chocolat/dist/js/jquery.chocolat.min.js') }}"></script>
|
<script src="assets/modules/summernote/summernote-bs4.js"></script>
|
||||||
|
<script src="assets/modules/chocolat/dist/js/jquery.chocolat.min.js"></script>
|
||||||
<!-- JS Libraies -->
|
|
||||||
<script src="{{ asset('assets/modules/datatables/datatables.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/datatables/DataTables-1.10.16/js/dataTables.bootstrap4.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/datatables/Select-1.2.4/js/dataTables.select.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/jquery-ui/jquery-ui.min.js') }}"></script>
|
|
||||||
|
|
||||||
{{-- <script type="text/javascript">
|
|
||||||
$(function() {
|
|
||||||
$(document).on('click', '#payment', function(e) {
|
|
||||||
e.preventDefault();
|
|
||||||
var link = $(this).attr("href");
|
|
||||||
Swal.fire({
|
|
||||||
position: 'top-end',
|
|
||||||
icon: 'Success Payment!',
|
|
||||||
title: 'Your work has been saved',
|
|
||||||
showConfirmButton: false,
|
|
||||||
timer: 1500
|
|
||||||
})
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
</script> --}}
|
|
||||||
|
|
||||||
|
|
||||||
<!-- Page Specific JS File -->
|
<!-- Page Specific JS File -->
|
||||||
<script src="{{ asset('assets/js/page/modules-datatables.js') }}"></script>
|
<script src="assets/js/page/index.js"></script>
|
||||||
|
|
||||||
<!-- Page Specific JS File -->
|
|
||||||
{{-- <script src="{{ asset('assets/js/page/index.js') }}"></script> --}}
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.min.js"></script>i
|
|
||||||
{{-- <script src="{{ asset('assets/js/page/index-0.js') }}"></script> --}}
|
|
||||||
|
|
||||||
<!-- Template JS File -->
|
<!-- Template JS File -->
|
||||||
<script src="{{ asset('assets/js/scripts.js') }}"></script>
|
<script src="assets/js/scripts.js"></script>
|
||||||
<script src="{{ asset('assets/js/custom.js') }}"></script>
|
<script src="assets/js/custom.js"></script>
|
||||||
{{-- <script src="{{ asset('assets/js/main.js') }}"></script> --}}
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,32 +1,34 @@
|
|||||||
<div class="main-sidebar sidebar-style-2">
|
<div class="main-sidebar sidebar-style-2">
|
||||||
<aside id="sidebar-wrapper">
|
<aside id="sidebar-wrapper">
|
||||||
<div class="sidebar-brand">
|
<div class="sidebar-brand">
|
||||||
<a href="{{route('user.index')}}">REKBER</a>
|
<a href="{{ route('user.index') }}">REKBER</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="sidebar-brand sidebar-brand-sm">
|
<div class="sidebar-brand sidebar-brand-sm">
|
||||||
<a href="{{route('user.index')}}">RK</a>
|
<a href="{{ route('user.index') }}">RK</a>
|
||||||
</div>
|
</div>
|
||||||
<ul class="sidebar-menu">
|
<ul class="sidebar-menu">
|
||||||
<li class="menu-header">Dashboard</li>
|
<li class="menu-header">Dashboard</li>
|
||||||
|
|
||||||
<li><a class="nav-link active" href="{{route('user.index')}}"><i class="fas fa-fire"></i> <span>Dashboard</span></a></li>
|
<li><a class="nav-link active" href="{{ route('user.index') }}"><i class="fas fa-fire"></i>
|
||||||
|
<span>Dashboard</span></a></li>
|
||||||
|
|
||||||
<li class="menu-header">Starter</li>
|
<li class="menu-header">Starter</li>
|
||||||
|
|
||||||
<li class="drop-down ">
|
<li class="drop-down ">
|
||||||
<a class="nav-link" data-toggle="collapse" href="#submenuTransaction" aria-expanded="false" aria-controls="submenuTransaction">
|
<a class="nav-link" data-toggle="collapse" href="#submenuTransaction" aria-expanded="false"
|
||||||
|
aria-controls="submenuTransaction">
|
||||||
<i class="fas fa-columns"></i><span>Transaksi</span> <i class="fas fa-caret-down"></i>
|
<i class="fas fa-columns"></i><span>Transaksi</span> <i class="fas fa-caret-down"></i>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<div id="submenuTransaction" class="collapse">
|
<div id="submenuTransaction" class="collapse">
|
||||||
<ul class="nav flex-column sub-menu">
|
<ul class="nav flex-column sub-menu">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="{{route('user-transaction.index.pembeli')}}">
|
<a class="nav-link" href="{{ route('user-transaction.index.pembeli') }}">
|
||||||
<i class="fas fa-users"></i> Pembeli
|
<i class="fas fa-users"></i> Pembeli
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="{{route('user-transaction.index.penjual')}}">
|
<a class="nav-link" href="{{ route('user-transaction.index.penjual') }}">
|
||||||
<i class="fas fa-user"></i> Penjual
|
<i class="fas fa-user"></i> Penjual
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@ -34,14 +36,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a class="nav-link active" href="{{route('user-contact.index')}}">
|
<a class="nav-link active" href="{{ route('user-contact.index') }}">
|
||||||
<i class="fas fa-address-book"></i> <span>Kontak</span>
|
<i class="fas fa-address-book"></i> <span>Kontak</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
|
||||||
<li>
|
<li>
|
||||||
<a class="nav-link active" href="{{route('user-refund.index')}}">
|
<a class="nav-link active" href="{{ route('user-refund.index') }}">
|
||||||
<i class="fas fa-money-check-alt"></i> <span>Refund</span>
|
<i class="fas fa-money-check-alt"></i> <span>Refund</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@ -55,3 +57,4 @@
|
|||||||
</div> --}}
|
</div> --}}
|
||||||
</aside>
|
</aside>
|
||||||
</div>
|
</div>
|
||||||
|
<script src="{{ asset('assets/modules/nicescroll/jquery.nicescroll.min.js') }}"></script>
|
||||||
|
@ -12,7 +12,12 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
<h2 class="section-title">npannisa</h2>
|
<h2 class="section-title">
|
||||||
|
Admin</h2>
|
||||||
|
<h2 class="section-buyer">
|
||||||
|
{{ $transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang }}</h2>
|
||||||
|
<h2 class="section-seller">
|
||||||
|
{{ $transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang }}</h2>
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div class="card-title pb-2 m-0">
|
<div class="card-title pb-2 m-0">
|
||||||
<h4>Timeline</h4>
|
<h4>Timeline</h4>
|
||||||
@ -23,66 +28,37 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="activities">
|
<div class="activities">
|
||||||
|
{{-- Awal --}}
|
||||||
|
@forelse ($trackings as $tracking)
|
||||||
<div class="activity">
|
<div class="activity">
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
<div
|
||||||
<i class="fas fa-clipboard-list" style="font-size: 36px;"></i>
|
class="activity-icon {{ $tracking->background }} text-white shadow-primary">
|
||||||
|
<i class="{{ $tracking->judul }}" style="font-size: 30px;"
|
||||||
|
aria-hidden="true"></i>
|
||||||
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
||||||
</div>
|
</div>
|
||||||
<div class="activity-detail">
|
<div class="activity-detail">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
<span class="text-job text-primary">August 21, 2023, 8:30:15 am</span>
|
<span class="text-job text-primary">{{ $tracking->created_at }}</span>
|
||||||
</div>
|
</div>
|
||||||
<p>User Created Trade</p>
|
<p>{{ $tracking->deskripsi }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@empty
|
||||||
<div class="activity">
|
<div class="activity">
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
<i class="fas fa-bell" style="font-size: 36px;"></i>
|
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
||||||
<!-- Mengganti ikon dengan ikon bell dan mengatur ukuran ikon -->
|
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
||||||
</div>
|
</div>
|
||||||
<div class="activity-detail">
|
<div class="activity-detail">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
<span class="text-job text-primary">August 22, 2023, 8:30:15 am</span>
|
<span class="text-job text-primary">--</span>
|
||||||
</div>
|
</div>
|
||||||
<p>System Notified Admin</p>
|
<p>Tidak ada histori</p>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-check-circle" style="font-size: 36px;"></i>
|
|
||||||
<!-- Mengganti ikon dengan ikon check-circle dan mengatur ukuran ikon -->
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 23, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>Admin Accepted Trade</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-trash-alt" style="font-size: 36px;"></i>
|
|
||||||
<!-- Mengganti ikon dengan ikon trash-alt dan mengatur ukuran ikon -->
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>Trade in system</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-comment-alt" style="font-size: 36px;"></i>
|
|
||||||
<!-- Mengganti ikon dengan ikon comment-alt dan mengatur ukuran ikon -->
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>Transaction Success</p>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@endforelse
|
||||||
|
{{-- Akhir --}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -90,41 +66,50 @@
|
|||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
<div class="invoice">
|
<div class="invoice">
|
||||||
<div class="invoice-print">
|
<div class="invoice-print">
|
||||||
|
<h2 style="margin-bottom: -1em">REKBER</h2>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<hr>
|
<hr>
|
||||||
|
<div class="section-title">Keterangan</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<address>
|
<address>
|
||||||
<strong>Billed To:</strong><br>
|
<strong>Pembeli:</strong><br>
|
||||||
npannisa<br>
|
{{ ucwords(strtolower($transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang)) }}<br>
|
||||||
1234 Main<br>
|
{{ ucwords(strtolower($transaction->data_pembeli->alamat)) }}<br>
|
||||||
Apt. 4B<br>
|
{{ ucwords(strtolower($transaction->data_pembeli->getVillageName() . ', ' . $transaction->data_pembeli->getDistrictName())) }}<br>
|
||||||
Depok City, Indonesia
|
{{ ucwords(strtolower($transaction->data_pembeli->getCityName() . ', ' . $transaction->data_pembeli->getProvinceName())) }}
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6 text-md-right">
|
<div class="col-md-6 text-md-right">
|
||||||
<address>
|
<address>
|
||||||
<strong>Shipped To:</strong><br>
|
<strong>Penjual:</strong><br>
|
||||||
Jilhan Haura<br>
|
{{ ucwords(strtolower($transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang)) }}<br>
|
||||||
12345 Main<br>
|
{{ ucwords(strtolower($transaction->data_penjual->alamat)) }}<br>
|
||||||
Apt. 5B<br>
|
{{ ucwords(strtolower($transaction->data_penjual->getVillageName() . ', ' . $transaction->data_penjual->getDistrictName())) }}<br>
|
||||||
Bogor Barat, Indonesia
|
{{ ucwords(strtolower($transaction->data_penjual->getCityName() . ', ' . $transaction->data_penjual->getProvinceName())) }}
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<div class="col-md-12 text-md-left">
|
||||||
|
<address>
|
||||||
|
<strong>Tanggal Transaksi:</strong><br>
|
||||||
|
{{ $transaction->created_at }}<br><br>
|
||||||
|
</address>
|
||||||
|
</div>
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<address>
|
<address>
|
||||||
<strong>Payment Method:</strong><br>
|
<strong>Metode Pembayaran:</strong><br>
|
||||||
Visa ending **** 4242<br>
|
Visa ending **** 4242<br>
|
||||||
npannisa@gmail.com
|
npannisa@gmail.com
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6 text-md-right">
|
<div class="col-md-6 text-md-right">
|
||||||
<address>
|
<address>
|
||||||
<strong>Order Date:</strong><br>
|
<strong>Tanggal Pembayaran:</strong><br>
|
||||||
September 19, 2023<br><br>
|
{{ $transaction->updated_at }}<br><br>
|
||||||
|
{{-- {{$transaction->tanggal_pembayaran}}<br><br> --}}
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -133,53 +118,54 @@
|
|||||||
|
|
||||||
<div class="row mt-4">
|
<div class="row mt-4">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="section-title">Order Summary</div>
|
<div class="section-title">Rangkuman Transaksi</div>
|
||||||
<p class="section-lead">All items here cannot be deleted.</p>
|
<p class="section-lead">Semua barang yang didaftarkan dalam transaksi.</p>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped table-hover table-md">
|
<table class="table table-striped table-hover table-md">
|
||||||
<tr>
|
<tr>
|
||||||
<th data-width="40">#</th>
|
<th data-width="40">#</th>
|
||||||
<th>Item</th>
|
<th>Nama Barang</th>
|
||||||
<th class="text-center">Price</th>
|
<th class="text-center">Harga</th>
|
||||||
<th class="text-center">Quantity</th>
|
<th class="text-center">Jumlah</th>
|
||||||
<th class="text-right">Totals</th>
|
<th class="text-right">Total</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>1</td>
|
<td>1</td>
|
||||||
<td>Ayam Warna Warni</td>
|
<td>{{ $transaction->nama_barang }}</td>
|
||||||
<td class="text-center">Rp. 50.000.000</td>
|
<td class="text-center">{{ $transaction->harga_barang }}</td>
|
||||||
<td class="text-center">1</td>
|
<td class="text-center">{{ $transaction->jumlah_barang }}</td>
|
||||||
<td class="text-right">Rp. 50.000.000</td>
|
<td class="text-right">
|
||||||
|
{{ $transaction->harga_barang * $transaction->jumlah_barang }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mt-4">
|
<div class="row mt-4">
|
||||||
<div class="col-lg-8">
|
<div class="col-lg-8">
|
||||||
<div class="section-title">Payment Method</div>
|
<div class="section-title">Payment Method</div>
|
||||||
<p class="section-lead">The payment method that we provide
|
<p class="section-lead">{{$transaction->metode_pembayaran}}</p>
|
||||||
is to make it easier for
|
|
||||||
you to pay invoices.</p>
|
|
||||||
<div class="images">
|
<div class="images">
|
||||||
<img src="assets/img/visa.png" alt="visa">
|
<img src="{{ asset('assets/img/visa.png') }}" alt="visa">
|
||||||
<img src="assets/img/jcb.png" alt="jcb">
|
<img src="{{ asset('assets/img/jcb.png') }}" alt="jcb">
|
||||||
<img src="assets/img/mastercard.png" alt="mastercard">
|
<img src="{{ asset('assets/img/mastercard.png') }}" alt="mastercard">
|
||||||
<img src="assets/img/paypal.png" alt="paypal">
|
<img src="{{ asset('assets/img/paypal.png') }}" alt="paypal">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4 text-right">
|
<div class="col-lg-4 text-right">
|
||||||
<div class="invoice-detail-item">
|
<div class="invoice-detail-item">
|
||||||
<div class="invoice-detail-name">Subtotal</div>
|
<div class="invoice-detail-name">Subtotal</div>
|
||||||
<div class="invoice-detail-value">Rp.670.000.000</div>
|
<div class="invoice-detail-value">Rp {{ number_format($transaction->total_harga, 2, ',', '.') }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="invoice-detail-item">
|
<div class="invoice-detail-item">
|
||||||
<div class="invoice-detail-name">Shipping</div>
|
<div class="invoice-detail-name">Biaya Admin</div>
|
||||||
<div class="invoice-detail-value">Rp.15.000</div>
|
<div class="invoice-detail-value">
|
||||||
|
Rp {{ number_format($transaction->total_keuntungan, 2, ',', '.') }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<hr class="mt-2 mb-2">
|
<hr class="mt-2 mb-2">
|
||||||
<div class="invoice-detail-item">
|
<div class="invoice-detail-item">
|
||||||
<div class="invoice-detail-name">Total</div>
|
<div class="invoice-detail-name">Total</div>
|
||||||
<div class="invoice-detail-value invoice-detail-value-lg">
|
<div class="invoice-detail-value invoice-detail-value-lg">
|
||||||
Rp.6.715.000.000</div>
|
Rp {{ number_format($transaction->total_bayar, 2, ',', '.') }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -191,99 +177,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@endsection
|
</section>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{{-- <div class="col-12 col-md-12 col-lg-7">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body">
|
|
||||||
@foreach ($TransactionUser as $HistoryTransaction) --}}
|
|
||||||
{{-- <div class="d-flex flex-column">
|
|
||||||
<div class="data-fieldr">
|
|
||||||
<span class="fw-bold text-start">Order Details</span>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
@endsection
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Oder ID</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['orderId'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Customer</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['Customer'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Seller</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['seller'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Total</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['total'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Due Date</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['dueDate'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Status</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['status'] }}</span>
|
|
||||||
</div>
|
|
||||||
</div> --}}
|
|
||||||
|
|
||||||
{{-- @endforeach --}}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{{-- Pindahan modal --}}
|
|
||||||
{{-- awal modal transaksi --}}
|
|
||||||
{{-- <div class="modal fade" id="detailtransaksi" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1"
|
|
||||||
aria-labelledby="staticBackdropLabel" aria-hidden="true">
|
|
||||||
<div class="modal-dialog">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header d-flex justify-content-center">
|
|
||||||
<h1 class="modal-title fs-5" id="staticBackdropLabel">Detail Transaksi</h1>
|
|
||||||
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
@foreach ($TransactionUser as $HistoryTransaction)
|
|
||||||
<div class="d-flex flex-column">
|
|
||||||
<div class="data-fieldr">
|
|
||||||
<span class="fw-bold text-start">Order Details</span>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Oder ID</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['orderId'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Customer</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['Customer'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Seller</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['seller'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Total</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['total'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Due Date</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['dueDate'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Status</span>
|
|
||||||
<span class="text-muted ">{{ $HistoryTransaction['status'] }}</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endforeach
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<a href="/transaction" type="button" class="btn btn-primary">OK!</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div> --}}
|
|
||||||
|
@ -3,8 +3,6 @@
|
|||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
|
|
||||||
|
|
||||||
<div class="section-header-breadcrumb">
|
<div class="section-header-breadcrumb">
|
||||||
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
||||||
@ -17,44 +15,44 @@
|
|||||||
<div class="col-12 mb-4">
|
<div class="col-12 mb-4">
|
||||||
<div class="hero bg-primary text-white">
|
<div class="hero bg-primary text-white">
|
||||||
<div class="hero-inner">
|
<div class="hero-inner">
|
||||||
<h1>Welcome! npannisa</h1>
|
<h1>Welcome! {{ Auth::user()->nama_depan }}</h1>
|
||||||
<p class="lead">How Are You Today?</p>
|
<p class="lead">Mau belanja apa hari ini?</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="d-grid gap-2 d-md-flex justify-content-md-end" style="margin-bottom: 20px">
|
<div class="d-grid gap-2 d-md-flex justify-content-md-end" style="margin-bottom: 20px">
|
||||||
<a class="nav-link active" href="new-transaction">
|
<a class="nav-link active" href="{{ route('tambah-transaction.pembeli') }}">
|
||||||
<button class="btn btn-primary btn-lg">Lakukan Transaksi Baru</button>
|
<button class="btn btn-primary btn-lg">Lakukan Transaksi Baru</button>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped" id="table-1">
|
<table class="table table-striped" id="table-3">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>User ID</th>
|
<th>No</th>
|
||||||
<th>Order ID</th>
|
<th>Order ID</th>
|
||||||
<th>Customer</th>
|
<th>Penjual</th>
|
||||||
<th>Seller</th>
|
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Due Date</th>
|
<th>Tanggal Pembuatan</th>
|
||||||
|
<th>Tanggal Update</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Action</th>
|
<th>Aksi</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($TransactionUser as $HistoryTransaction)
|
@foreach ($transactions as $transaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $HistoryTransaction['userId'] }}</td>
|
<td>{{ $loop->iteration }}</td>
|
||||||
<td>{{ $HistoryTransaction['orderId'] }}</td>
|
<td>{{ $transaction->id }}</td>
|
||||||
<td>{{ $HistoryTransaction['Customer'] }}</td>
|
<td>{{ $transaction->data_penjual->nama_depan.' '.$transaction->data_penjual->nama_belakang }}</td>
|
||||||
<td>{{ $HistoryTransaction['seller'] }}</td>
|
<td>Rp {{number_format($transaction->total_bayar,2, ',', '.') }}</td>
|
||||||
<td>{{ $HistoryTransaction['total'] }}</td>
|
<td>{{ $transaction->created_at }}</td>
|
||||||
<td>{{ $HistoryTransaction['dueDate'] }}</td>
|
<td>{{ $transaction->updated_at }}</td>
|
||||||
<td>{{ $HistoryTransaction['status'] }}</td>
|
<td>{{ ($transaction->status == 'pending' ? 'Menunggu Pembayaran' : 'Selesai') }}</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
@ -64,16 +62,24 @@
|
|||||||
</button>
|
</button>
|
||||||
|
|
||||||
<ul class="dropdown-menu">
|
<ul class="dropdown-menu">
|
||||||
<li><a class="dropdown-item"
|
<li><a class="dropdown-item" href="{{route('user-transaction.detail.pembeli',$transaction->id)}}">Detail</a></li>
|
||||||
href="/detail-transaction">Detail</a></li>
|
{{-- @if ($transaction->status == 'Pending')
|
||||||
|
|
||||||
|
@endif --}}
|
||||||
<li><a class="dropdown-item"
|
<li><a class="dropdown-item"
|
||||||
href="/refund-transaction">Refund</a></li>
|
href="/refund-transaction">Refund</a></li>
|
||||||
{{-- <li><a class="dropdown-item"
|
{{-- <li><a class="dropdown-item"
|
||||||
href="/invoice-transaction">Bayar</a></li> --}}
|
href="/invoice-transaction">Bayar</a></li> --}}
|
||||||
<li><a class="dropdown-item" data-toggle="modal"
|
<li><a class="dropdown-item" id="bayar"
|
||||||
data-target="#bayar">Bayar</a></li>
|
data-id="{{ $transaction->id }}"
|
||||||
<li><a class="dropdown-item" data-toggle="modal"
|
data-token="{{$transaction->token}}">Bayar</a>
|
||||||
data-target="#selesai">Selesai</a></li>
|
{{-- data-id="{{ $transaction }}">Bayar</a> --}}
|
||||||
|
|
||||||
|
</li>
|
||||||
|
<li><a class="dropdown-item" id="selesai"
|
||||||
|
data-id="{{ $transaction->id }}">Selesai</a>
|
||||||
|
{{-- data-id="{{ $transaction }}">Selesai</a> --}}
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
@ -87,7 +93,90 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
</div>
|
||||||
@extends('user.transaction.pembeli.modal-bayar-transaction')
|
@extends('user.transaction.pembeli.modal-bayar-transaction')
|
||||||
@extends('user.transaction.pembeli.modal-end-transaction')
|
@extends('user.transaction.pembeli.modal-end-transaction')
|
||||||
@endsection
|
<script type="text/javascript" src="https://app.sandbox.midtrans.com/snap/snap.js"
|
||||||
|
data-client-key="SB-Mid-client-rk6kY5XbPLChy3Lg"></script>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
// Bayar
|
||||||
|
$('#table-3').on('click', '#bayar', function() {
|
||||||
|
const id = $(this).data('id');
|
||||||
|
const token =$(this).data('token');
|
||||||
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
|
|
||||||
|
snap.pay(token, {
|
||||||
|
onSuccess: function(result) {
|
||||||
|
const formData = new FormData();
|
||||||
|
formData.append('status', result.transaction_status);
|
||||||
|
formData.append('tanggal_pembayaran', result.transaction_time);
|
||||||
|
formData.append('metode_pembayaran', result.payment_type);
|
||||||
|
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers:{
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$.ajax({
|
||||||
|
url:"{{route('payment-transaction.pembeli',':id')}}".replace(':id',id),
|
||||||
|
type:"POST",
|
||||||
|
data: formData,
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
success:function(response){
|
||||||
|
Swal.fire({
|
||||||
|
title: response.status ? 'Berhasil' : 'Gagal',
|
||||||
|
text: response.message,
|
||||||
|
icon: response.status ? 'success' : 'error',
|
||||||
|
confirmButtonText: 'OK'
|
||||||
|
});
|
||||||
|
console.log(response);
|
||||||
|
},error:function(error){
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Gagal mengupdate pembayaran ke database',
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
console.log(result);
|
||||||
|
},
|
||||||
|
onPending: function(result) {
|
||||||
|
/* You may add your own implementation here */
|
||||||
|
// alert("wating your payment!");
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Ditunda',
|
||||||
|
text: 'Pemabayaran ditunda. Silahkan tunggu sebentar ' + result,
|
||||||
|
icon: 'info'
|
||||||
|
});
|
||||||
|
console.log(result);
|
||||||
|
},
|
||||||
|
onError: function(result) {
|
||||||
|
/* You may add your own implementation here */
|
||||||
|
Swal.fire({
|
||||||
|
title : 'Gagal',
|
||||||
|
text: 'Terjadi kesalahan ' + result,
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
console.log(result);
|
||||||
|
},
|
||||||
|
onClose: function(error) {
|
||||||
|
/* You may add your own implementation here */
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Ditunda',
|
||||||
|
text: 'Kamu menutup halaman pembayaran. Silahkan masuk lagi untuk melakukan pembayaran',
|
||||||
|
icon: 'warning'
|
||||||
|
});
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#table-3').on('click', '#selesai', function() {
|
||||||
|
const id = $(this).data('id');
|
||||||
|
console.log(id);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
@endsection
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
@extends('user.layout.main')
|
@extends('user.layout.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
|
{{-- <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" /> --}}
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/select2/dist/css/select2.min.css') }}">
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@ -14,123 +16,383 @@
|
|||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="form-row">
|
<div class="form-row">
|
||||||
<div class="form-group col-md-12">
|
<div class="form-group col-md-12">
|
||||||
<label for="inputpembeli">Nama Pembeli</label>
|
<label for="inputpembeli">
|
||||||
<input type="email" class="form-control" id="inputpembeli"
|
<h5>Nama Pembeli</h5>
|
||||||
placeholder="Masukkan nama pembeli">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="inputpenjual">Nama Penjual</label>
|
|
||||||
<input type="text" class="form-control" id="inputpenjual"
|
|
||||||
placeholder="Masukkan nama penjual">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="harga">Harga</label>
|
|
||||||
<input type="text" class="form-control" id="harga" placeholder="Rp.1000.000">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="inputjenis">Jenis Barang</label>
|
|
||||||
<input type="text" class="form-control" id="inputjenis" placeholder="">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label>Due Date</label>
|
|
||||||
<input type="date" class="form-control">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="inputdeskripsi">Deskripsi</label>
|
|
||||||
<textarea class="form-control resizable" id="deskripsi"
|
|
||||||
placeholder="Deskripsikan jenis apa transaksi yang anda lakukan"></textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-group mb-0">
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="gridCheck">
|
|
||||||
<label class="form-check-label" for="gridCheck">
|
|
||||||
Check me out
|
|
||||||
</label>
|
</label>
|
||||||
</div>
|
<input type="email" class="form-control" id="inputpembeli"
|
||||||
</div>
|
placeholder="Masukkan nama pembeli"
|
||||||
</div>
|
value="{{ Auth::user()->nama_depan . ' ' . Auth::user()->nama_belakang }}"
|
||||||
<div class="card-footer d-flex justify-content-center">
|
disabled>
|
||||||
<a href="/pembeli" class="btn btn-primary">Submit</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
<div class="form-group">
|
||||||
</div>
|
<label for="inputpenjual">
|
||||||
</div>
|
<h5>Penjual</h5>
|
||||||
|
</label>
|
||||||
|
<h6>Pilih dari kontak</h6>
|
||||||
|
<div class="input-group">
|
||||||
|
<select class="form-control" id="selectContact" name="select_penjual">
|
||||||
|
|
||||||
|
</select>
|
||||||
|
<button class="btn btn-danger" type="button" id="deleteOption">Hapus</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<h6>atau dari email</h6>
|
||||||
{{-- form transaksi --}}
|
<div class="input-group">
|
||||||
{{-- <div class="container">
|
<input type="email" class="form-control" id="inputPenjual"
|
||||||
<div class="row justify-content-center">
|
name="input_penjual" placeholder="Masukkan email penjual">
|
||||||
<div class="col-md-6">
|
<button class="btn btn-danger" type="button" id="checkButton">Check</button>
|
||||||
<div class="card">
|
|
||||||
<div class="card-body">
|
|
||||||
<form>
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="orderid" class="form-label">Order Id</label>
|
|
||||||
<input type="text" class="form-control" id="orderId" name="order" required>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="customer" class="form-label">Customer</label>
|
|
||||||
<input type="text" class="form-control" id="customer" name="customer" required>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="seller" class="form-label">Norek Asal</label>
|
|
||||||
<input type="text" class="form-control" id="norekasal" name="norekasal" pattern="[0-9]+" required>
|
|
||||||
<div class="invalid-feedback">
|
|
||||||
Harap masukkan hanya angka</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="seller" class="form-label">Seller</label>
|
|
||||||
<input type="text" class="form-control" id="seller" name="seller" required>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="seller" class="form-label">Norek Tujuan</label>
|
|
||||||
<input type="text" class="form-control" id="norektujuan" name="norektujuan" pattern="[0-9]+" required>
|
|
||||||
<div class="invalid-feedback">
|
|
||||||
Harap masukkan hanya angka.
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
<div class="mb-3">
|
<label for="inputBarang">
|
||||||
<label for="total" class="form-label">Total</label>
|
<h5>Nama Barang/Jasa</h5>
|
||||||
<input type="text" class="form-control" id="total" name="total">
|
</label>
|
||||||
|
<input type="text" class="form-control" id="inputBarang"
|
||||||
|
placeholder="Sepeda Motor" name="nama_barang">
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
<div class="mb-3">
|
<label for="hargaBarang">
|
||||||
<label for="seller" class="form-label">Due Date</label>
|
<h5>Harga Satuan</h5>
|
||||||
<input type="calendar" class="form-control" id="duedate" name="duedate" required>
|
</label>
|
||||||
|
<input type="number" class="form-control" name="harga_barang" id="hargaBarang"
|
||||||
|
placeholder="Rp. 1000.000">
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
<div class="mb-3">
|
<label for="hargaBarang">
|
||||||
<label for="textareadesc" class="form-label">Deskripsi</label>
|
<h5>Satuan</h5>
|
||||||
<textarea class="form-control" id="textareadesc" rows="3"></textarea>
|
</label>
|
||||||
|
<input type="text" class="form-control" name="satuan_barang" id="satuanBarang"
|
||||||
|
placeholder="Buah/Kg/Karung dll.">
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="jumlahBarang">
|
||||||
{{-- <div class="d-flex justify-content-center">
|
<h5>Jumlah Satuan</h5>
|
||||||
<button class="btn btn-info open-detail-modal" data-toggle="modal fade"
|
</label>
|
||||||
data-target="#confirmtransaction">Transaksi Sudah Benar</button>
|
<input type="number" class="form-control" name="jumlah_barang" id="jumlahBarang"
|
||||||
|
placeholder="Jumlah satuan">
|
||||||
|
</div>
|
||||||
|
{{-- <div class="form-group">
|
||||||
|
<label for="batasPengiriman">
|
||||||
|
<h5>Batas Pengiriman Barang</h5>
|
||||||
|
</label>
|
||||||
|
<input type="date" class="form-control" name="batas_pengiriman"
|
||||||
|
id="batasPengiriman" nama="batas_pengiriman">
|
||||||
</div> --}}
|
</div> --}}
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="inputDeskripsi">
|
||||||
|
<h5>Deskripsi</h5>
|
||||||
|
</label>
|
||||||
|
<textarea class="form-control resizable" name="deskripsi" id="inputDeskripsi" placeholder="Deskripsikan transaksi anda"></textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="d-flex justiffy-content-center">
|
<div class="dashed-line"></div>
|
||||||
<a href="/pembeli" type="button" class="btn btn-primary" data-bs-dismiss="modal">Transaksi Sudah
|
|
||||||
Benar</a>
|
<div class="form-row">
|
||||||
|
<label style="margin-right: 200px;" id="jumlah">Nominal</label>
|
||||||
|
<div style="display: inline-block;" id="totalBiaya">Rp 0,00</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
|
||||||
|
<div class="form-row">
|
||||||
|
<label style="margin-right: 200px;" id="biayaAdmin" data-admin="">Biaya Admin
|
||||||
|
(0.1%)</label>
|
||||||
|
<div style="display: inline-block;" id="totalBiayaAdmin">Rp 0,00</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-row">
|
||||||
|
<h6 style="margin-right: 200px;">Total Biaya</h6>
|
||||||
|
<div style="display: inline-block;">
|
||||||
|
<h6 id="totalBayar">Rp 0,00</h6>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="dashed-line"></div>
|
||||||
|
|
||||||
|
<div class="card-footer d-flex justify-content-center">
|
||||||
|
<button type="button" class="btn btn-primary" id="save">Buat</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{-- </div> --}}
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
let totalHarga = 0;
|
||||||
|
let biayaAdmin = 0.1;
|
||||||
|
let totalBiayaAdmin = 0;
|
||||||
|
let totalBayar = 0;
|
||||||
|
|
||||||
|
function tampilTotalHarga(harga) {
|
||||||
|
let tampilTotalNominal = document.getElementById('totalBiaya');
|
||||||
|
let tampilTotalBiaya = document.getElementById('totalBayar');
|
||||||
|
let tampilTotalBiayaAdmin = document.getElementById('totalBiayaAdmin');
|
||||||
|
totalBiayaAdmin = harga * biayaAdmin / 100
|
||||||
|
totalBayar = totalBiayaAdmin + harga
|
||||||
|
tampilTotalNominal.innerHTML = harga.toLocaleString('id-ID', {
|
||||||
|
style: 'currency',
|
||||||
|
currency: 'IDR'
|
||||||
|
});
|
||||||
|
tampilTotalBiaya.innerHTML = totalBayar.toLocaleString('id-ID', {
|
||||||
|
style: 'currency',
|
||||||
|
currency: 'IDR'
|
||||||
|
});;
|
||||||
|
tampilTotalBiayaAdmin.innerHTML = totalBiayaAdmin.toLocaleString('id-ID', {
|
||||||
|
style: 'currency',
|
||||||
|
currency: 'IDR'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#selectContact").select2({
|
||||||
|
placeholder: "Pilih Kontak",
|
||||||
|
ajax: {
|
||||||
|
url: "{{ route('user-contact.get') }}",
|
||||||
|
processResults: function({
|
||||||
|
data
|
||||||
|
}) {
|
||||||
|
return {
|
||||||
|
results: $.map(data, function(item) {
|
||||||
|
return {
|
||||||
|
id: item.relasi_kontak,
|
||||||
|
text: item.nama_depan + " " + item.nama_belakang,
|
||||||
|
};
|
||||||
|
}),
|
||||||
|
};
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#hargaBarang').change(function() {
|
||||||
|
let harga = $(this).val();
|
||||||
|
let jumlah = $('#jumlahBarang').val();
|
||||||
|
let biaya = document.getElementById('totalBiaya');
|
||||||
|
if (harga.trim() != '') {
|
||||||
|
if (jumlah.trim() != '') {
|
||||||
|
totalHarga = harga * jumlah;
|
||||||
|
} else {
|
||||||
|
totalHarga = harga * 0;
|
||||||
|
}
|
||||||
|
tampilTotalHarga(totalHarga);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#jumlahBarang').change(function() {
|
||||||
|
let jumlah = $(this).val();
|
||||||
|
let harga = $('#hargaBarang').val();
|
||||||
|
let nominal = document.getElementById('jumlah');
|
||||||
|
if (jumlah.trim() != '') {
|
||||||
|
if (jumlah == 0) {
|
||||||
|
nominal.innerHTML = 'Nominal';
|
||||||
|
} else {
|
||||||
|
nominal.innerHTML = 'Nominal (x' + jumlah + ')';
|
||||||
|
}
|
||||||
|
if (harga.trim() != '') {
|
||||||
|
totalHarga = harga * jumlah;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
totalHarga = 0 * jumlah;
|
||||||
|
}
|
||||||
|
tampilTotalHarga(totalHarga);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
$('#selectContact').change(function() {
|
||||||
|
let email = $('#selectContact').val();
|
||||||
|
if (email === null) {
|
||||||
|
$('#inputPenjual').prop('disabled', false);
|
||||||
|
$('#checkButton').prop('disabled', false);
|
||||||
|
$('#deleteOption').prop('disabled', false);
|
||||||
|
} else {
|
||||||
|
$('#inputPenjual').prop('disabled', true);
|
||||||
|
$('#deleteOption').prop('disabled', false);
|
||||||
|
$('#checkButton').prop('disabled', true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#deleteOption').click(function() {
|
||||||
|
$('#selectContact').val(null).trigger("change");
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#inputPenjual').on('input', function() {
|
||||||
|
let emailInput = $('#inputPenjual').val();
|
||||||
|
if (emailInput.trim() == '') {
|
||||||
|
$('#selectContact').prop('disabled', false);
|
||||||
|
$('#deleteOption').prop('disabled', false);
|
||||||
|
} else {
|
||||||
|
$('#selectContact').prop('disabled', true);
|
||||||
|
$('#deleteOption').prop('disabled', true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#checkButton').click(function() {
|
||||||
|
let email = document.querySelector('[name="input_penjual"]').value;
|
||||||
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
|
|
||||||
|
if (email.trim() == '') {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Email tidak boleh kosong',
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
if (email != "{{ Auth::user()->email }}") {
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('user-contact.email', ':email') }}".replace(':email',
|
||||||
|
email),
|
||||||
|
type: 'GET',
|
||||||
|
success: function(response) {
|
||||||
|
if (response.status) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Berhasil',
|
||||||
|
text: 'Akun tersedia',
|
||||||
|
icon: 'success'
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: response.message,
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Terjadi error karena, ' + error,
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Email penjual tidak boleh sama denggan email pembeli',
|
||||||
|
icon: 'error',
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#save').on('click', function() {
|
||||||
|
let opsiKontak = document.querySelector('[name="select_penjual"]').value;
|
||||||
|
let inputKontak = document.querySelector('[name="input_penjual"]').value;
|
||||||
|
let namaBarang = document.querySelector('[name="nama_barang"]').value;
|
||||||
|
let hargaBarang = document.querySelector('[name="harga_barang"]').value;
|
||||||
|
let satuanBarang = document.querySelector('[name="satuan_barang"]').value;
|
||||||
|
let jumlahBarang = document.querySelector('[name="jumlah_barang"]').value;
|
||||||
|
let deskripsi = document.querySelector('[name="deskripsi"]').value;
|
||||||
|
|
||||||
|
let emptyInput = [];
|
||||||
|
|
||||||
|
let penjual = '';
|
||||||
|
if (opsiKontak != "" && inputKontak != "") {
|
||||||
|
penjual = opsiKontak;
|
||||||
|
} else if (opsiKontak == "" && inputKontak != "") {
|
||||||
|
penjual = inputKontak;
|
||||||
|
} else if (inputKontak == "" && opsiKontak != "") {
|
||||||
|
penjual = opsiKontak;
|
||||||
|
} else {
|
||||||
|
console.log('Kosong');
|
||||||
|
emptyInput.push("Kolom penjual tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (penjual == "{{ Auth::user()->email }}") {
|
||||||
|
emptyInput.push("Email penjual tidak boleh sama dengan email pembeli");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (namaBarang == "") {
|
||||||
|
emptyInput.push("Nama barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hargaBarang == "") {
|
||||||
|
emptyInput.push("Harga barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (satuanBarang == "") {
|
||||||
|
emptyInput.push("Satuan barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (jumlahBarang == "") {
|
||||||
|
emptyInput.push("Jumlah barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
// if (batasPengiriman == "") {
|
||||||
|
// emptyInput.push("Batas pengiriman tidak boleh kosong");
|
||||||
|
// }
|
||||||
|
|
||||||
|
if (emptyInput.length > 0) {
|
||||||
|
const emptyInputError = emptyInput.join(', ');
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: emptyInputError,
|
||||||
|
icon: 'error',
|
||||||
|
confirmButtonText: 'OK',
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
|
const formData = new FormData();
|
||||||
|
formData.append('email_penjual', penjual);
|
||||||
|
formData.append('nama_barang', namaBarang);
|
||||||
|
formData.append('satuan_barang', satuanBarang);
|
||||||
|
formData.append('harga_barang', hargaBarang);
|
||||||
|
formData.append('jumlah_barang', jumlahBarang);
|
||||||
|
// formData.append('batas_pengiriman', batasPengiriman);
|
||||||
|
formData.append('deskripsi', deskripsi);
|
||||||
|
formData.append('persentase_keuntungan', 0.1);
|
||||||
|
formData.append('total_keuntungan', totalBiayaAdmin);
|
||||||
|
formData.append('total_harga', totalHarga);
|
||||||
|
formData.append('total_bayar', totalBayar);
|
||||||
|
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('store-transaction.pembeli') }}",
|
||||||
|
type: "POST",
|
||||||
|
data: formData,
|
||||||
|
processData: false,
|
||||||
|
contentType: false,
|
||||||
|
success: function(response) {
|
||||||
|
Swal.fire({
|
||||||
|
title: response.status ? 'Berhasil' : 'Gagal',
|
||||||
|
text: response.message,
|
||||||
|
icon: response.status ? 'success' : 'error',
|
||||||
|
confirmButtonText: 'OK'
|
||||||
|
}).then(function() {
|
||||||
|
location.href =
|
||||||
|
"{{ route('user-transaction.index.pembeli') }}"
|
||||||
|
});
|
||||||
|
console.log(response);
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Gagal mengirimkan data karena ' + error,
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
<div class="hero bg-primary text-white">
|
<div class="hero bg-primary text-white">
|
||||||
<div class="hero-inner">
|
<div class="hero-inner">
|
||||||
<h1>Welcome to the Rekber Aplication</h1>
|
<h1>Welcome to the Rekber Aplication</h1>
|
||||||
<p class="lead">Selamat Datang npannisa!</p>
|
<p class="lead">Selamat Datang {{ Auth::user()->nama_depan }}!</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -30,27 +30,26 @@
|
|||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>#</th>
|
<th>#</th>
|
||||||
<th>User ID</th>
|
|
||||||
<th>Order ID</th>
|
<th>Order ID</th>
|
||||||
<th>Customer</th>
|
<th>Pembeli</th>
|
||||||
<th>Seller</th>
|
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Due Date</th>
|
<th>Batas Pengiriman Barang</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Action</th>
|
<th>Action</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($TransactionUser as $key => $HistoryTransaction)
|
@foreach ($transactions as $transaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ ++$key }}</td>
|
<td>{{ $loop->iteration }}</td>
|
||||||
<td class="font-weight-600">{{ $HistoryTransaction['userId'] }}</td>
|
<td class="font-weight-600">{{ $transaction->id }}</td>
|
||||||
<td class="font-weight-600">{{ $HistoryTransaction['orderId'] }}</td>
|
<td class="font-weight-600">
|
||||||
<td class="font-weight-600">{{ $HistoryTransaction['Customer'] }}</td>
|
{{ ucwords(strtolower($transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang)) }}
|
||||||
<td class="font-weight-600">{{ $HistoryTransaction['seller'] }}</td>
|
</td>
|
||||||
<td class="font-weight-600">{{ $HistoryTransaction['total'] }}</td>
|
<td class="font-weight-600">{{ $transaction->total_bayar }}</td>
|
||||||
<td>{{ $HistoryTransaction['dueDate'] }}</td>
|
{{-- <td class="font-weight-600">{{ $transaction->batas_pengiriman_barang }}</td> --}}
|
||||||
<td class="font-weight-600">{{ $HistoryTransaction['status'] }}</td>
|
<td>{{ $transaction->batas_pengiriman_barang }}</td>
|
||||||
|
<td class="font-weight-600">{{ $transaction->status }}</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
@ -60,7 +59,8 @@
|
|||||||
</button>
|
</button>
|
||||||
<ul class="dropdown-menu">
|
<ul class="dropdown-menu">
|
||||||
<li><a class="dropdown-item"
|
<li><a class="dropdown-item"
|
||||||
href="/detail-transaction">Detail</a></li>
|
href="{{ route('user-transaction.detail.pembeli', $transaction->id) }}">Detail</a>
|
||||||
|
</li>
|
||||||
<li><a class="dropdown-item" data-toggle="modal"
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
data-target="#tracking">Tracking</a></li>
|
data-target="#tracking">Tracking</a></li>
|
||||||
{{-- <li><a class="dropdown-item" href="/tracking">Tracking</a></li> --}}
|
{{-- <li><a class="dropdown-item" href="/tracking">Tracking</a></li> --}}
|
||||||
@ -76,5 +76,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@extends('user.transaction.Penjual.tracking')
|
</div>
|
||||||
@endsection
|
</section>
|
||||||
|
</div>
|
||||||
|
@extends('user.transaction.penjual.modal-tracking')
|
||||||
|
@endsection
|
||||||
|
47
resources/views/email/verification-email.blade.php
Normal file
47
resources/views/email/verification-email.blade.php
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
||||||
|
<title>Verifikasi Email Pemulihan</title>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/bootstrap/css/bootstrap.min.css') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div id="app">
|
||||||
|
<section class="section">
|
||||||
|
<div class="container mt-5">
|
||||||
|
<div class="row justify-content-center">
|
||||||
|
<div class="col-md-10">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header d-flex justify-content-center bg-primary text-white">
|
||||||
|
<img class="mr-3 rounded" width="150"
|
||||||
|
src="{{ asset('assets/images/google-removebg-preview.png') }}">
|
||||||
|
</div>
|
||||||
|
<div class="d-flex justify-content-center bg-primary text-white">
|
||||||
|
<h2 class="mb-0">Verifikasi Email</h2>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card-body">
|
||||||
|
<p>Rekber mengirimkan kode verifikasi ke</p>
|
||||||
|
<p><b>{{ $verificationEmail['email'] }}</b></p>
|
||||||
|
<p class="mt-4">Gunakan kode ini untuk menyelesaikan syarat pendaftaran akun:</p>
|
||||||
|
<div class="d-flex justify-content-center">
|
||||||
|
<h1 class="verification-code">{{ $verificationEmail['code'] }}</h1>
|
||||||
|
</div>
|
||||||
|
<div class="text-center">
|
||||||
|
<p><b>Masa berlaku kode ini akan berakhir dalam 2 menit.</b> </p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
@ -1,3 +1,60 @@
|
|||||||
|
<<<<<<< HEAD
|
||||||
|
@extends('Admin.layout.main')
|
||||||
|
@section('content')
|
||||||
|
<!-- Main Content -->
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-4 col-md-4 col-sm-12">
|
||||||
|
<div class="card card-statistic-2">
|
||||||
|
<div class="card-stats">
|
||||||
|
<div class="card-stats-title">List Transaction -
|
||||||
|
<div class="dropdown d-inline">
|
||||||
|
<a class="font-weight-600 dropdown-toggle" data-toggle="dropdown" href="#"
|
||||||
|
id="orders-month">August</a>
|
||||||
|
<ul class="dropdown-menu dropdown-menu-sm">
|
||||||
|
<li class="dropdown-title">Select Month</li>
|
||||||
|
<li><a href="#" class="dropdown-item">January</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">February</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">March</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">April</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">May</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">June</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">July</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item active">August</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">September</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">October</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">November</a></li>
|
||||||
|
<li><a href="#" class="dropdown-item">December</a></li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-stats-items">
|
||||||
|
<div class="card-stats-item">
|
||||||
|
<div class="card-stats-item-count">114</div>
|
||||||
|
<div class="card-stats-item-label">Success</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-stats-item">
|
||||||
|
<div class="card-stats-item-count">12</div>
|
||||||
|
<div class="card-stats-item-label">Pending</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-stats-item">
|
||||||
|
<div class="card-stats-item-count">23</div>
|
||||||
|
<div class="card-stats-item-label">Canceled</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="card-icon shadow-primary bg-primary">
|
||||||
|
<i class="fas fa-archive"></i>
|
||||||
|
</div>
|
||||||
|
<div class="card-wrap">
|
||||||
|
<div class="card-header">
|
||||||
|
<h4>Total Transaction</h4>
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
159
|
||||||
|
</div>
|
||||||
|
=======
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
@ -87,7 +144,7 @@
|
|||||||
</div> --}}
|
</div> --}}
|
||||||
<!-- ======= MODAL ======= -->
|
<!-- ======= MODAL ======= -->
|
||||||
|
|
||||||
<div class="container">
|
<div class="container mt-5">
|
||||||
<div class="forms-container">
|
<div class="forms-container">
|
||||||
<div class="signin-signup">
|
<div class="signin-signup">
|
||||||
|
|
||||||
@ -102,8 +159,8 @@
|
|||||||
<div style="width: 100%; display: flex; align-items: center;">
|
<div style="width: 100%; display: flex; align-items: center;">
|
||||||
<div class="input-field-signin-flex">
|
<div class="input-field-signin-flex">
|
||||||
<i class="fas fa-envelope" aria-hidden="true"></i>
|
<i class="fas fa-envelope" aria-hidden="true"></i>
|
||||||
{{-- <input type="text" class="telp-input-signin" maxlength="13" oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 13);" placeholder="Nomer Telepon"> --}}
|
|
||||||
<input type="email" class="telp-input-signin" placeholder="Email" name="email" required>
|
<input type="email" class="telp-input-signin" placeholder="Email" name="email" required>
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="btn-otp solid" id="cekAkun">Cek Akun</button>
|
<button type="button" class="btn-otp solid" id="cekAkun">Cek Akun</button>
|
||||||
|
|
||||||
@ -161,7 +218,7 @@
|
|||||||
<div class="input-field-signup-flex">
|
<div class="input-field-signup-flex">
|
||||||
<i class="fas fa-user"></i>
|
<i class="fas fa-user"></i>
|
||||||
<input type="text" placeholder="Nama Depan" class="first-name-input"
|
<input type="text" placeholder="Nama Depan" class="first-name-input"
|
||||||
name="nama_depan" />
|
name="nama_depan" required />
|
||||||
</div>
|
</div>
|
||||||
<div class="input-field-signup-flex" style="margin-left: 3%">
|
<div class="input-field-signup-flex" style="margin-left: 3%">
|
||||||
<i class="fas fa-user"></i>
|
<i class="fas fa-user"></i>
|
||||||
@ -175,11 +232,21 @@
|
|||||||
maxlength="16"
|
maxlength="16"
|
||||||
oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 16);" />
|
oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 16);" />
|
||||||
</div>
|
</div>
|
||||||
<div class="input-field up">
|
<div class="flex-input-btn">
|
||||||
|
<div class="input">
|
||||||
<i class="fa fa-envelope" aria-hidden="true"></i>
|
<i class="fa fa-envelope" aria-hidden="true"></i>
|
||||||
<input type="email" placeholder="Email" class="email-input" name="new_email" />
|
<input type="email" placeholder="Email" class="email-input" name="new_email"
|
||||||
|
id="newEmail" />
|
||||||
|
</div>
|
||||||
|
<button id="verifikasiEmail" class="btn-otp" type="button"
|
||||||
|
disabled=true>Verifikasi</button>
|
||||||
|
</div>
|
||||||
|
<div class="input-field up">
|
||||||
|
<i class="fa fa-ellipsis-h" aria-hidden="true"></i>
|
||||||
|
<input type="text" class="telp-input-signup"
|
||||||
|
oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 6);"
|
||||||
|
placeholder="Kode Verifikasi Email" name="email_verification">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="input-field up">
|
<div class="input-field up">
|
||||||
<i class="fa fa-phone" aria-hidden="true"></i>
|
<i class="fa fa-phone" aria-hidden="true"></i>
|
||||||
<input type="text" class="telp-input-signup" maxlength="13"
|
<input type="text" class="telp-input-signup" maxlength="13"
|
||||||
@ -368,7 +435,7 @@
|
|||||||
<button class="btn transparent" id="sign-up-btn">
|
<button class="btn transparent" id="sign-up-btn">
|
||||||
Sign up
|
Sign up
|
||||||
</button>
|
</button>
|
||||||
<p><a href="/">kembali</a></p>
|
<p><a href="{{ route('login') }}">kembali</a></p>
|
||||||
</div>
|
</div>
|
||||||
<img src="{{ asset('assets/img/login_register/Payment Information-pana.svg') }}" class="image"
|
<img src="{{ asset('assets/img/login_register/Payment Information-pana.svg') }}" class="image"
|
||||||
alt="" />
|
alt="" />
|
||||||
@ -389,7 +456,12 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{-- <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> --}}
|
<<<<<<< HEAD
|
||||||
|
@include('Admin.transaction.Tracking')
|
||||||
|
@endsection
|
||||||
|
=======
|
||||||
|
|
||||||
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"
|
||||||
integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA=="
|
integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA=="
|
||||||
crossorigin="anonymous" referrerpolicy="no-referrer"></script>
|
crossorigin="anonymous" referrerpolicy="no-referrer"></script>
|
||||||
@ -400,9 +472,44 @@
|
|||||||
<script src="//cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
<script src="//cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||||
<script src="{{ asset('assets/js/login_register/app.js') }}"></script>
|
<script src="{{ asset('assets/js/login_register/app.js') }}"></script>
|
||||||
<script src="{{ asset('assets/js/login_register/script.js') }}"></script>
|
<script src="{{ asset('assets/js/login_register/script.js') }}"></script>
|
||||||
|
@if (Session::has('message'))
|
||||||
|
<script>
|
||||||
|
Swal.fire({
|
||||||
|
icon: 'error',
|
||||||
|
title: 'Gagal',
|
||||||
|
text: "{{ Session::get('message') }}",
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if ($errors->any())
|
||||||
|
<script>
|
||||||
|
Swal.fire({
|
||||||
|
icon: 'error',
|
||||||
|
title: 'Kesalahan',
|
||||||
|
text: @json($errors->all()).join(' '),
|
||||||
|
});
|
||||||
|
console.log(@json($errors->all()));
|
||||||
|
</script>
|
||||||
|
@endif
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
let verificationStatus = false;
|
||||||
|
let verificationCode = '';
|
||||||
|
let waktuSekarangDetik = 0;
|
||||||
|
|
||||||
|
// Generate Kode Verifikasi
|
||||||
|
function generateVerificationCode() {
|
||||||
|
const codeLength = 6;
|
||||||
|
let code = '';
|
||||||
|
for (let i = 0; i < codeLength; i++) {
|
||||||
|
code += Math.floor(Math.random() * 10); // Menghasilkan digit acak dari 0 hingga 9
|
||||||
|
}
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Login Awal
|
||||||
$('#cekAkun').on('click', function() {
|
$('#cekAkun').on('click', function() {
|
||||||
let email = document.querySelector('[name="email"]').value;
|
let email = document.querySelector('[name="email"]').value;
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
@ -469,6 +576,114 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
// Login Akhir
|
||||||
|
|
||||||
|
// Register Awal
|
||||||
|
$('#newEmail').on('input', function() {
|
||||||
|
const newEmail = $(this);
|
||||||
|
clearTimeout(newEmail.timer); // Menghapus timeout yang ada
|
||||||
|
const verificationButton = document.getElementById('verifikasiEmail');
|
||||||
|
verificationButton.disabled = true;
|
||||||
|
|
||||||
|
const email = newEmail.val().trim(); // Menghapus spasi di awal dan akhir
|
||||||
|
if (email != '') {
|
||||||
|
// Menunggu 5 detik sebelum menghasilkan kode verifikasi
|
||||||
|
newEmail.timer = setTimeout(function() {
|
||||||
|
if (waktuSekarangDetik == 0) {
|
||||||
|
verificationStatus = false;
|
||||||
|
verificationButton.disabled = false;
|
||||||
|
verificationButton.innerHTML = 'Verifikasi';
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
function isValidEmail(email) {
|
||||||
|
// Ekspresi reguler untuk memeriksa validitas alamat email
|
||||||
|
var emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
||||||
|
|
||||||
|
// Menggunakan test() untuk memeriksa apakah email sesuai dengan ekspresi reguler
|
||||||
|
return emailRegex.test(email);
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#verifikasiEmail').on('click', function() {
|
||||||
|
const newEmail = $(this);
|
||||||
|
const email = document.querySelector('[name="new_email"]').value;
|
||||||
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
|
verificationCode = generateVerificationCode();
|
||||||
|
verificationStatus = false
|
||||||
|
|
||||||
|
if (isValidEmail(email)) {
|
||||||
|
const formData = new FormData();
|
||||||
|
formData.append('email', email);
|
||||||
|
formData.append('code', verificationCode);
|
||||||
|
|
||||||
|
// Menonaktifkan tombol verifikasi
|
||||||
|
newEmail.prop('disabled', true);
|
||||||
|
|
||||||
|
// Mengatur waktu dalam detik (misalnya, 2 menit = 120 detik)
|
||||||
|
const waktuTotalDetik = 120;
|
||||||
|
waktuSekarangDetik = waktuTotalDetik;
|
||||||
|
|
||||||
|
// Mengupdate teks tombol dengan format menit:detik
|
||||||
|
function updateButtonText() {
|
||||||
|
const menit = Math.floor(waktuSekarangDetik / 60);
|
||||||
|
const detik = waktuSekarangDetik % 60 < 10 ? '0' + (waktuSekarangDetik % 60) :
|
||||||
|
waktuSekarangDetik % 60;
|
||||||
|
newEmail.text(`${menit}:${detik}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Memulai timer dan mengupdate teks tombol setiap detik
|
||||||
|
const timerInterval = setInterval(function() {
|
||||||
|
if (waktuSekarangDetik > 0) {
|
||||||
|
waktuSekarangDetik--;
|
||||||
|
updateButtonText();
|
||||||
|
} else {
|
||||||
|
clearInterval(timerInterval);
|
||||||
|
newEmail.text("Verifikasi"); // Mengembalikan teks awal tombol
|
||||||
|
newEmail.prop('disabled', false); // Mengaktifkan kembali tombol
|
||||||
|
}
|
||||||
|
}, 1000); // Setiap 1 detik
|
||||||
|
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('kirim.kode') }}",
|
||||||
|
type: 'POST',
|
||||||
|
data: formData,
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
success: function(response) {
|
||||||
|
Swal.fire({
|
||||||
|
title: response.status ? 'Berhasil' : 'Gagal',
|
||||||
|
text: response.message,
|
||||||
|
icon: response.status ? 'success' : 'error',
|
||||||
|
});
|
||||||
|
verificationStatus = true;
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Gagal karena kesalahan inputan atau jaringan',
|
||||||
|
icon: 'error',
|
||||||
|
});
|
||||||
|
console.log(error);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Kesalahan',
|
||||||
|
text: 'Inputan yang anda masukan bukan alamat email. Silahkan masukan alamat email yang benar.',
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
$('#signUp').on('click', function() {
|
$('#signUp').on('click', function() {
|
||||||
let emptyInput = [];
|
let emptyInput = [];
|
||||||
@ -479,6 +694,7 @@
|
|||||||
let email = document.querySelector('[name="new_email"]').value;
|
let email = document.querySelector('[name="new_email"]').value;
|
||||||
let nohp = document.querySelector('[name="nohp"]').value;
|
let nohp = document.querySelector('[name="nohp"]').value;
|
||||||
let gender = document.querySelector('[name="gender"]').value;
|
let gender = document.querySelector('[name="gender"]').value;
|
||||||
|
let emailVerification = document.querySelector('[name="email_verification"]').value;
|
||||||
|
|
||||||
// Tanggal lahir
|
// Tanggal lahir
|
||||||
let tanggalLahir = document.querySelector('[name="tanggal_lahir"]').value;
|
let tanggalLahir = document.querySelector('[name="tanggal_lahir"]').value;
|
||||||
@ -504,7 +720,7 @@
|
|||||||
let confirmPassword = document.querySelector('[name="confirm_password"]').value;
|
let confirmPassword = document.querySelector('[name="confirm_password"]').value;
|
||||||
|
|
||||||
// Pengecekan inputan yang kosong
|
// Pengecekan inputan yang kosong
|
||||||
if (namaDepan.trim() === "" || namaBelakang.trim() === "") {
|
if (namaDepan.trim() === "" && namaBelakang.trim() === "") {
|
||||||
emptyInput.push("Nama depan dan nama belakang tidak boleh kosong");
|
emptyInput.push("Nama depan dan nama belakang tidak boleh kosong");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -515,6 +731,15 @@
|
|||||||
if (email.trim() === "") {
|
if (email.trim() === "") {
|
||||||
emptyInput.push("Email tidak boleh kosong");
|
emptyInput.push("Email tidak boleh kosong");
|
||||||
}
|
}
|
||||||
|
if (!verificationStatus) {
|
||||||
|
emptyInput.push("Verifikasi email terlebih dahulu");
|
||||||
|
}
|
||||||
|
if (emailVerification.trim() === "") {
|
||||||
|
emptyInput.push("Kode verifikasi harus diisi");
|
||||||
|
}
|
||||||
|
if (emailVerification != verificationCode) {
|
||||||
|
emptyInput.push('Kode verifikasi harus sama dengan kode yang dikirim ke email');
|
||||||
|
}
|
||||||
|
|
||||||
if (nohp.trim() === "") {
|
if (nohp.trim() === "") {
|
||||||
emptyInput.push("nomor HP tidak boleh kosong");
|
emptyInput.push("nomor HP tidak boleh kosong");
|
||||||
@ -543,7 +768,7 @@
|
|||||||
emptyInput.push("Silahkan ambil foto KTP anda");
|
emptyInput.push("Silahkan ambil foto KTP anda");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (newPassword.trim() === "" || confirmPassword === "") {
|
if (newPassword.trim() === "" && confirmPassword === "") {
|
||||||
emptyInput.push("Password tidak boleh kosong");
|
emptyInput.push("Password tidak boleh kosong");
|
||||||
} else if (newPassword.trim() != confirmPassword) {
|
} else if (newPassword.trim() != confirmPassword) {
|
||||||
emptyInput.push("Password baru harus sama dengan password yang dikonfirmasi");
|
emptyInput.push("Password baru harus sama dengan password yang dikonfirmasi");
|
||||||
@ -609,8 +834,10 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
// Register Akhir
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
||||||
|
@ -93,29 +93,23 @@ Route::get('/next_detail_refund',function() {
|
|||||||
|
|
||||||
// --------------------------------------------------------------------------------------------
|
// --------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
// Route::get('/Ini', function () {
|
//Index
|
||||||
// return view('user/index',[
|
|
||||||
// 'name'=>'Jilhan Haura',
|
|
||||||
// "transaction"=>Transactions::allTransactions()
|
|
||||||
// ]);
|
|
||||||
// });
|
|
||||||
|
|
||||||
|
|
||||||
// Route::resource('/login',LoginController::class);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Login, logout dan register
|
// Login, logout dan register
|
||||||
Route::controller(LoginController::class)->group(function(){
|
Route::controller(LoginController::class)->group(function(){
|
||||||
Route::get('/','login')->name('login');
|
Route::get('/login','login')->name('login');
|
||||||
Route::get('/logout','logout')->name('logout');
|
Route::get('/logout','logout')->name('logout');
|
||||||
Route::post('/','authenticate')->name('authenticate');
|
Route::post('/authenticate','authenticate')->name('authenticate');
|
||||||
Route::post('/register','register')->name('register');
|
Route::post('/register','register')->name('register');
|
||||||
Route::get('/cek-email/{email}','statusAkun')->name('status.akun');
|
Route::get('/cek-email/{email}','statusAkun')->name('status.akun');
|
||||||
Route::get('/cari-provinsi','cariProvinsi')->name('cari.provinsi');
|
Route::get('/cari-provinsi','cariProvinsi')->name('cari.provinsi');
|
||||||
Route::get('/cari-kota/{code}','cariKota')->name('cari.kota');
|
Route::get('/cari-kota/{code}','cariKota')->name('cari.kota');
|
||||||
Route::get('/cari-kecamatan/{code}','cariKecamatan')->name('cari.kecamatan');
|
Route::get('/cari-kecamatan/{code}','cariKecamatan')->name('cari.kecamatan');
|
||||||
Route::get('/cari-kelurahan/{code}','cariKelurahan')->name('cari.kelurahan');
|
Route::get('/cari-kelurahan/{code}','cariKelurahan')->name('cari.kelurahan');
|
||||||
|
Route::post('/kode-verifikasi','kirimKodeVerifikasi')->name('kirim.kode');
|
||||||
|
Route::get('ocr','getOcr');
|
||||||
});
|
});
|
||||||
|
|
||||||
// admin dan user
|
// admin dan user
|
||||||
@ -157,12 +151,19 @@ Route::middleware(['auth'])->group(function(){
|
|||||||
Route::get('cek-contact/{email}','cekEmail')->name('user-contact.email');
|
Route::get('cek-contact/{email}','cekEmail')->name('user-contact.email');
|
||||||
Route::post('user-contact','store')->name('user-contact.store');
|
Route::post('user-contact','store')->name('user-contact.store');
|
||||||
Route::delete('user-contact/{id}','destroy')->name('user-contact.delete');
|
Route::delete('user-contact/{id}','destroy')->name('user-contact.delete');
|
||||||
|
Route::get('get-user-contact','getContact')->name('user-contact.get');
|
||||||
});
|
});
|
||||||
// Tampilan transaksi, bayar, update status pengiriman dan refund
|
// Tampilan transaksi, bayar, update status pengiriman dan refund
|
||||||
Route::controller(UserTransactionController::class)->group(function(){
|
Route::controller(UserTransactionController::class)->group(function(){
|
||||||
|
// Pembeli
|
||||||
Route::get('user-transaction-pembeli','indexPembeli')->name('user-transaction.index.pembeli');
|
Route::get('user-transaction-pembeli','indexPembeli')->name('user-transaction.index.pembeli');
|
||||||
|
Route::get('detail-user-transaction-pembeli/{id}','detailTransaction')->name('user-transaction.detail.pembeli');
|
||||||
|
Route::get('tambah-transaction','createTransaction')->name('tambah-transaction.pembeli');
|
||||||
|
Route::post('store-transaction','storeTransaction')->name('store-transaction.pembeli');
|
||||||
|
Route::post('payment-transaction/{id}','paymentTransaction')->name('payment-transaction.pembeli');
|
||||||
|
//Penjual
|
||||||
Route::get('user-transaction-penjual','indexPenjual')->name('user-transaction.index.penjual');
|
Route::get('user-transaction-penjual','indexPenjual')->name('user-transaction.index.penjual');
|
||||||
//bayar
|
|
||||||
|
|
||||||
});
|
});
|
||||||
// Tampilan refund
|
// Tampilan refund
|
||||||
|
BIN
storage/preprocessed_image.jpg
Normal file
BIN
storage/preprocessed_image.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 67 KiB |
Loading…
Reference in New Issue
Block a user