<?php

use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
/*
Route::get('/clear-cache', function() {
    $exitCode = Artisan::call('config:clear');
    return 'DONE';
});
*/


Route::get('/createnewibcom', [App\Http\Controllers\CronController::class, 'createnewibcom'])->name('createnewibcom');
Route::get('/addpammdatadeal', [App\Http\Controllers\CronController::class, 'addpammdatadeal'])->name('addpammdatadeal');
Route::get('/createclosedtrades', [App\Http\Controllers\CronController::class, 'createclosedtrades'])->name('createclosedtrades');
/*** cron route ***/
Route::get('/vertexlogin', [App\Http\Controllers\CronController::class, 'VertexLogin'])->name('apilogin');
/**** end cron route ***/

Route::get('/', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');

Auth::routes();
Route::group(['middleware' => ['auth']],function(){
	Route::post('/logout', [App\Http\Controllers\Auth\LoginController::class, 'logout'])->name('logout');
	Route::get('/logout', [App\Http\Controllers\Auth\LoginController::class, 'logout'])->name('logout');
	Route::get('/client/documentupload', [App\Http\Controllers\client\DashboardController::class, 'Documents'])->name('document');
	Route::get('/client/documentpoi', [App\Http\Controllers\client\DashboardController::class, 'documentpoi'])->name('documentpoi');
	Route::get('/client/documentpoa', [App\Http\Controllers\client\DashboardController::class, 'documentpoa'])->name('documentpoa');
});

/***new document***/
Route::post('/client/savepoidocuments', [App\Http\Controllers\client\DashboardController::class, 'storepoi'])->name('storepoi');
Route::post('/client/savepoadocuments', [App\Http\Controllers\client\DashboardController::class, 'storepoa'])->name('storepoa');
Route::post('/client/savedocuments', [App\Http\Controllers\client\DashboardController::class, 'SaveUploadDocuments'])->name('storedocument');
Route::get('/client/documents/delete/{id}', [App\Http\Controllers\client\DashboardController::class, 'documentdeleteuser'])->name('deletedocument');
Route::get('/client/bankdata', [App\Http\Controllers\client\DashboardController::class, 'BankData'])->name('bankdetails');
Route::post('/client/savebankdata', [App\Http\Controllers\client\DashboardController::class, 'BankDataSave'])->name('storebankdetails');
Route::get('/client/bankdata/edit/{id}', [App\Http\Controllers\client\DashboardController::class, 'BankDataEdit'])->name('editbankdetails');
Route::post('/client/updatebankdata', [App\Http\Controllers\client\DashboardController::class, 'BankDataUpdate'])->name('updatebankdetails');


// Crypto
Route::get('/client/dcryptoliink', [App\Http\Controllers\client\DepositController::class, 'paynow'])->name('paynow');
Route::post('/client/storcryptoliink', [App\Http\Controllers\client\DepositController::class, 'paynowstore'])->name('paynowstore');



Route::get('/login', [App\Http\Controllers\Auth\LoginController::class, 'showLoginForm'])->name('login');
Route::post('/login', [App\Http\Controllers\Auth\LoginController::class, 'Login'])->name('login');
Route::get('/register', [App\Http\Controllers\Auth\RegisterController::class, 'showRegistrationForm'])->name('register');
Route::post('/register', [App\Http\Controllers\Auth\RegisterController::class, 'register'])->name('register');

Route::get('/client/register/{id}', [App\Http\Controllers\Auth\RegisterController::class, 'registerreferral'])->name('registerreferral');
Route::post('/storereferralregister', [App\Http\Controllers\Auth\RegisterController::class, 'storereferralregister'])->name('registerreferral');

Route::get('/register/{id}', [App\Http\Controllers\Auth\RegisterController::class, 'marketingregister'])->name('marketingregister');
Route::post('/storemarketingregister', [App\Http\Controllers\Auth\RegisterController::class, 'storemarketingregister'])->name('storemarketingregister');

Route::get('/dashboard', [App\Http\Controllers\client\DashboardController::class, 'index'])->name('dashboard');
Route::get('/client/openaccount', [App\Http\Controllers\client\DashboardController::class, 'openaccount'])->name('openaccount');
Route::post('/client/openaccountstore', [App\Http\Controllers\client\DashboardController::class, 'openaccountstore'])->name('openaccount');
Route::get('/client/accountlisting', [App\Http\Controllers\client\DashboardController::class, 'accountlisting'])->name('accountlisting');
Route::get('/client/accountoverview/{id}', [App\Http\Controllers\client\DashboardController::class, 'accountoverview'])->name('accountoverview');
Route::get('/client/changemt5pass', [App\Http\Controllers\client\DashboardController::class, 'changemtpass'])->name('changemtpass');
Route::post('/client/savemtpass', [App\Http\Controllers\client\DashboardController::class, 'savemtpass'])->name('savemtpass');



Route::get('/userprofile', [App\Http\Controllers\client\DashboardController::class, 'userprofile'])->name('userprofile');
Route::get('/profile', [App\Http\Controllers\client\DashboardController::class, 'profile'])->name('profile');
Route::post('/profile', [App\Http\Controllers\client\DashboardController::class, 'postprofile'])->name('postprofile');
Route::get('/changepass', [App\Http\Controllers\client\DashboardController::class, 'getChangePass'])->name('getChangePass');
Route::post('/changepass', [App\Http\Controllers\client\DashboardController::class, 'changePass'])->name('changePassstore');

Route::get('/client/changevertexpass', [App\Http\Controllers\client\DashboardController::class, 'changevertexpass'])->name('changevertexpass');
Route::post('/client/storechangevertexpass', [App\Http\Controllers\client\DashboardController::class, 'storechangevertexpass'])->name('storechangevertexpass');

// IB Reports

Route::get('/client/teamdeposit', [App\Http\Controllers\client\DashboardController::class, 'monthlydepositsub'])->name('monthlydepositsub');
Route::get('/client/teamwithdrawreport', [App\Http\Controllers\client\ReportController::class, 'WithdrawalReportTeam'])->name('WithdrawalReportTeam');
Route::get('/client/ibwalletreport', [App\Http\Controllers\client\ReportController::class, 'ibwalletreport'])->name('ibwalletreport');
Route::get('/client/lotreport', [App\Http\Controllers\client\ReportController::class, 'lotreporttest'])->name('lotreporttest');



/* client deposit */
Route::get('/client/dodeposit', [App\Http\Controllers\client\DepositController::class, 'newdeposit'])->name('newdeposit');
Route::get('/client/deposit', [App\Http\Controllers\client\DepositController::class, 'index'])->name('indexdeposit');
Route::post('/client/deposit/store', [App\Http\Controllers\client\DepositController::class, 'store'])->name('storedeposit');
Route::get('/client/cashdeposit', [App\Http\Controllers\client\DepositController::class, 'CashDeposit'])->name('cashdeposit');
Route::get('/client/depositreport', [App\Http\Controllers\client\ReportController::class, 'depositreport'])->name('depositreport');

/* client deposit */

/* client withdraw */
Route::get('/client/withdrawmethodlisting', [App\Http\Controllers\client\WithdrawController::class, 'withdrawmethodlisting'])->name('withdrawmethodlisting');
Route::get('/client/withdraw', [App\Http\Controllers\client\WithdrawController::class, 'index'])->name('indexwithdraw');
Route::get('/client/withdrawbank', [App\Http\Controllers\client\WithdrawController::class, 'withdrawbank'])->name('withdrawbank');
Route::post('/client/withdraw/store', [App\Http\Controllers\client\WithdrawController::class, 'store'])->name('storewithdraw');
Route::get('/client/withdraw/delete/{id}', [App\Http\Controllers\client\WithdrawController::class, 'deletewithdraw'])->name('deletewithdraw');
Route::get('/client/withdrawreport', [App\Http\Controllers\client\ReportController::class, 'withdrawreport'])->name('withdrawreport');

/* client withdraw */



/* reset client password */ 
Route::get('/password/reset', [App\Http\Controllers\Auth\ForgotPasswordController::class, 'ClientPasswordReset'])->name('resetpassword');
Route::post('/password/resetsave', [App\Http\Controllers\Auth\RegisterController::class, 'Clientsendlink'])->name('sendlink');
Route::get('/clientresetpass/{token1}/{token2}', [App\Http\Controllers\Auth\RegisterController::class, 'saveClientpassform'])->name('resetpassword');
Route::post('/storeclientpass', [App\Http\Controllers\Auth\RegisterController::class, 'saveClientpass'])->name('savepassword');
Route::get('/verify/{token1}/{token2}', [App\Http\Controllers\Auth\LoginController::class, 'emailverification'])->name('emailverification');
/* end reset client password */

/* client wallet */
Route::get('/client/wallethistory', [App\Http\Controllers\client\ReportController::class, 'walletreport'])->name('walletreport');
Route::get('/client/depositwallet', [App\Http\Controllers\client\WalletController::class, 'WalletDeposit'])->name('WalletDeposit');
Route::post('/client/storewallet', [App\Http\Controllers\client\WalletController::class, 'WalletDepositSave'])->name('WalletDepositSave');
Route::get('/client/deposittowallet', [App\Http\Controllers\client\WalletController::class, 'index'])->name('deposittowallet');
Route::post('/client/storetowallet', [App\Http\Controllers\client\WalletController::class, 'storetowallet'])->name('storetowallet');
Route::get('/client/deposittoaccount', [App\Http\Controllers\client\WalletController::class, 'wallettoaccount'])->name('wallettoaccount');
Route::post('/client/withdrawfromwallet', [App\Http\Controllers\client\WalletController::class, 'withdrawfromwallet'])->name('withdrawfromwallet');



/* client wallet */

// Client Internal Transfer
Route::get('/client/internaltransfer', [App\Http\Controllers\client\DepositController::class, 'itransfer'])->name('itransfer');
Route::post('/client/savetransfer', [App\Http\Controllers\client\DepositController::class, 'storeinternal'])->name('storeinternal');

// transaction history

Route::get('/client/transactionhistory', [App\Http\Controllers\client\DashboardController::class, 'TransactionHistory'])->name('TransactionHistory');
Route::get('/client/transferhistory', [App\Http\Controllers\client\DashboardController::class, 'TransferHistory'])->name('TransferHistory');


Route::get('/client/closedtradesreport', [App\Http\Controllers\client\DashboardController::class, 'closedtradesreport'])->name('closedtradesreport');
Route::get('/client/opentradesreport', [App\Http\Controllers\client\DashboardController::class, 'opentradesreport'])->name('opentradesreport');

// client IB menu starts here

Route::get('/client/ibdashboard', [App\Http\Controllers\client\DashboardController::class, 'ibdashboard'])->name('ibdashboard');
Route::get('/client/myclients', [App\Http\Controllers\client\DashboardController::class, 'MyClientList'])->name('MyClientList');
Route::get('/client/mycommission', [App\Http\Controllers\client\DashboardController::class, 'MyClientscommission'])->name('MyClientscommission');
Route::get('/client/ibwithdraw', [App\Http\Controllers\client\DashboardController::class, 'ibwithdraw'])->name('ibwithdraw');
Route::post('/client/storeibwithd', [App\Http\Controllers\client\DashboardController::class, 'storeibwithd'])->name('storeibwithd');
Route::get('/client/ibcreate', [App\Http\Controllers\client\DashboardController::class, 'beanib'])->name('beanib');
Route::post('/client/ibstore', [App\Http\Controllers\client\DashboardController::class, 'ibcreate'])->name('ibcreate');


// Client Pamm Starts here
Route::get('/client/pammlist', [App\Http\Controllers\client\PammController::class, 'PammList'])->name('PammList');
Route::get('/client/moneymanagerlist', [App\Http\Controllers\client\PammController::class, 'MoneyManagerList'])->name('MoneyManagerList');
Route::get('/client/openpamm', [App\Http\Controllers\client\PammController::class, 'OpenPammList'])->name('OpenPammList');
Route::get('/client/myinvestment', [App\Http\Controllers\client\PammController::class, 'MyInvestment'])->name('MyInvestment');
Route::get('/client/pamminvest', [App\Http\Controllers\client\PammController::class, 'PammInvest'])->name('PammInvest');
Route::post('/client/pamminvest/store', [App\Http\Controllers\client\PammController::class, 'PammInvestSave'])->name('PammInvestSave');

Route::get('/client/pammwithdraw', [App\Http\Controllers\client\PammController::class, 'PammWithdraw'])->name('PammWithdraw');
Route::post('/client/pammwithdraw/store', [App\Http\Controllers\client\PammController::class, 'PammWithdrawSave'])->name('PammWithdrawSave');

// Ticket Client

Route::get('/client/ticket/mytickets', [App\Http\Controllers\client\TicketsController::class, 'mytickets'])->name('mytickets');
Route::get('/client/ticket/newticket', [App\Http\Controllers\client\TicketsController::class, 'newticket'])->name('newticket');
Route::post('/client/ticket/newticketstore', [App\Http\Controllers\client\TicketsController::class, 'newticketstore'])->name('newticketstore');
Route::get('/client/ticket/{id}', [App\Http\Controllers\client\TicketsController::class, 'viewticket'])->name('viewticket');
Route::post('/client/ticket/comment', [App\Http\Controllers\client\CommentsController::class, 'ticketcomment'])->name('ticketcomment');



// MONEY MANAGER
Route::get('/mm/login', [App\Http\Controllers\Auth\LoginController::class, 'MoneyManagerLogin'])->name('MoneyManagerLogin');
Route::get('/mm/register', [App\Http\Controllers\Auth\RegisterController::class, 'MoneyManagerRegister'])->name('MoneyManagerRegister');
Route::post('/mm/register', [App\Http\Controllers\Auth\RegisterController::class, 'MoneyManagerRegisterSave'])->name('MoneyManagerRegisterSave');

Route::get('/mm/dashboard', [App\Http\Controllers\mm\MoneyManagerController::class, 'index'])->name('index');
Route::get('/mm/mypamm', [App\Http\Controllers\mm\MoneyManagerController::class, 'MyPammList'])->name('MyPammList');
Route::get('/mm/mypamminvest/{id}', [App\Http\Controllers\mm\MoneyManagerController::class, 'MyPammInvestmentList'])->name('MyPammInvestmentList');
Route::get('/mm/mypammprofit/{id}', [App\Http\Controllers\mm\MoneyManagerController::class, 'PammRecordsList'])->name('PammRecordsList');

Route::get('/mm/investorlist', [App\Http\Controllers\mm\MoneyManagerController::class, 'InvestorList'])->name('InvestorList');
Route::get('/mm/totaldeposit', [App\Http\Controllers\mm\MoneyManagerController::class, 'MyPammTotalInvestmentList'])->name('MyPammTotalInvestmentList');
Route::get('/mm/totalprofit', [App\Http\Controllers\mm\MoneyManagerController::class, 'TotalProfitList'])->name('TotalProfitList');

Route::get('/documentupload', [App\Http\Controllers\mm\MoneyManagerController::class, 'Documents'])->name('Documents');
Route::get('/mm/documentpoi', [App\Http\Controllers\mm\MoneyManagerController::class, 'documentpoi'])->name('documentpoi');
Route::get('/mm/documentpoa', [App\Http\Controllers\mm\MoneyManagerController::class, 'documentpoa'])->name('documentpoa');

// MONEY MANAGER ENDS HERE



/**** Admin Auth ***/
Route::get('/admin', [App\Http\Controllers\AdminAuth\LoginController::class, 'showLoginForm'])->name('login');
Route::get('/admin/login', [App\Http\Controllers\AdminAuth\LoginController::class, 'showLoginForm'])->name('adminlogin');
Route::post('/admin/login', [App\Http\Controllers\AdminAuth\LoginController::class, 'adminLogin'])->name('alogin');
Route::get('/admin/password/reset', [App\Http\Controllers\AdminAuth\ForgotPasswordController::class, 'showForgotPasswordForm'])->name('forgotpassword');
Route::post('/admin/password/email', [App\Http\Controllers\AdminAuth\ForgotPasswordController::class, 'sendResetLinkEmail'])->name('sendlink');
Route::get('/admin/password/reset/{token}', [App\Http\Controllers\AdminAuth\ResetPasswordController::class, 'showResetPasswordForm'])->name('resetpassword');
Route::post('/admin/password/reset', [App\Http\Controllers\AdminAuth\ResetPasswordController::class, 'reset'])->name('reset');

/*********Admin Backend Menu Starts*********/

// Deposit Detail from backend

// Route::get('/admin/depositdetails', [App\Http\Controllers\admin\UserController::class, 'depositdetails'])->name('depositdetails');
// Route::post('/admin/depositdetailsstore', [App\Http\Controllers\admin\UserController::class, 'depositdetailsstore'])->name('depositdetailsstore');
Route::get('/admin/managementscreen', [App\Http\Controllers\admin\UserController::class, 'managementscreen'])->name('managementscreen');

Route::get('/admin/depositdetail', [App\Http\Controllers\admin\UserController::class, 'depositdetailsedit'])->name('depositdetailsedit');
Route::post('/admin/editdepositdetailsstore', [App\Http\Controllers\admin\UserController::class, 'editdepositdetailsstore'])->name('editdepositdetailsstore');

Route::get('/admin/loginuser/{id}', [App\Http\Controllers\admin\UserController::class, 'loginusingid'])->name('loginusingid');

// Bonus Add

Route::get('/admin/bonuslist', [App\Http\Controllers\admin\UserController::class, 'bonuslist'])->name('bonuslist');
Route::get('/admin/addbonus', [App\Http\Controllers\admin\UserController::class, 'addcredit'])->name('addcredit');
Route::post('/admin/givecredit', [App\Http\Controllers\admin\UserController::class, 'givecredit'])->name('givecredit');

Route::get('/admin/bonusoutlist', [App\Http\Controllers\admin\UserController::class, 'bonusoutlist'])->name('bonusoutlist');
Route::get('/admin/creditout', [App\Http\Controllers\admin\UserController::class, 'creditout'])->name('creditout');
Route::post('/admin/takecredit', [App\Http\Controllers\admin\UserController::class, 'takecredit'])->name('takecredit');

//Admin dashboard
Route::get('/admin', [App\Http\Controllers\admin\DashboardController::class, 'index']);
Route::get('/admin/dashboard', [App\Http\Controllers\admin\DashboardController::class, 'index'])->name('dashboard');

// Add Admin
Route::get('/admin/addadmin', [App\Http\Controllers\admin\AdminController::class, 'addadmin'])->name('addadmin');
Route::post('/admin/newadminstore', [App\Http\Controllers\admin\AdminController::class, 'adminuserstore'])->name('adminuserstore');

Route::get('/admin/permission', [App\Http\Controllers\admin\DashboardController::class, 'adminpermission'])->name('adminpermission');
Route::post('/admin/storeadminpermission', [App\Http\Controllers\admin\DashboardController::class, 'storeadminpermission'])->name('storeadminpermission');

Route::get('/admin/permission/edit/{id}', [App\Http\Controllers\admin\DashboardController::class, 'EditAdminPermission'])->name('EditAdminPermission');
Route::post('/admin/updateadminpermission', [App\Http\Controllers\admin\DashboardController::class, 'updateadminpermission'])->name('updateadminpermission');

Route::get('/admin/managerdetails', [App\Http\Controllers\admin\UserController::class, 'ManagerDetails'])->name('ManagerDetails');

// Promotion Popup

Route::get('/admin/setting/promotion', [App\Http\Controllers\admin\UserController::class, 'promotion'])->name('promotion');
Route::post('/admin/setting/promotionstore', [App\Http\Controllers\admin\UserController::class, 'promotionstore'])->name('promotionstore');
Route::get('/admin/setting/promotionlist', [App\Http\Controllers\admin\UserController::class, 'promotionlist'])->name('promotionlist');
Route::get('/admin/setting/promotion/active/{id}', [App\Http\Controllers\admin\UserController::class, 'promotionactive'])->name('promotionactive');
Route::get('/admin/setting/promotion/inactive/{id}', [App\Http\Controllers\admin\UserController::class, 'promotioninactive'])->name('promotioninactive');
Route::get('/admin/setting/promotion/delete/{id}', [App\Http\Controllers\admin\UserController::class, 'promotiondelete'])->name('promotiondelete');




//Admin user management for add/edit/delete/list
Route::get('/admin/user/userlist', [App\Http\Controllers\admin\UserController::class, 'UserList'])->name('userlist');
Route::get('/admin/user/create', [App\Http\Controllers\admin\UserController::class, 'create'])->name('createuser');
Route::post('/admin/user/store', [App\Http\Controllers\admin\UserController::class, 'store'])->name('storeuser');
Route::get('/admin/user/{id}/edit', [App\Http\Controllers\admin\UserController::class, 'edit'])->name('edituser');
Route::post('/admin/user/{id}/update', [App\Http\Controllers\admin\UserController::class, 'update'])->name('updateuser');
Route::get('/admin/user/{id}/delete', [App\Http\Controllers\admin\UserController::class, 'userdelete'])->name('deleteuser');
Route::get('/admin/user/{id}/view', [App\Http\Controllers\admin\UserController::class, 'fulluserdetails'])->name('fulluserdetails');
//Promote user as IB
Route::get('/admin/ib/approve/{id}', [App\Http\Controllers\admin\UserController::class, 'approveib'])->name('approveib');
Route::post('/admin/useribapprove', [App\Http\Controllers\admin\UserController::class, 'useribapprove'])->name('saveapproveib');
Route::get('/admin/ib/ibrequests', [App\Http\Controllers\admin\UserController::class, 'iblistrequest'])->name('iblistrequest');
Route::get('/admin/ib/user', [App\Http\Controllers\admin\UserController::class, 'iblist'])->name('iblist');
Route::get('/admin/ib/myclients/{id}', [App\Http\Controllers\admin\UserController::class, 'MyClientListing'])->name('MyClientListing');

Route::get('/admin/mycommission/{id}', [App\Http\Controllers\admin\DashboardController::class, 'MyClientscommission'])->name('MyClientscommission');

Route::get('/admin/ibplan', [App\Http\Controllers\admin\UserController::class, 'IbPlanList'])->name('IbPlanList');
Route::get('/admin/addibplan', [App\Http\Controllers\admin\UserController::class, 'AddIbPlan'])->name('AddIbPlan');
Route::post('/admin/saveibplan', [App\Http\Controllers\admin\UserController::class, 'SaveIbPlan'])->name('SaveIbPlan');

Route::get('/admin/commissiongroup', [App\Http\Controllers\admin\UserController::class, 'CommissionGroup'])->name('CommissionGroup');
Route::get('/admin/commissiongroup/add', [App\Http\Controllers\admin\UserController::class, 'AddCommissionGroup'])->name('AddCommissionGroup');
Route::post('/admin/savecommissiongroup', [App\Http\Controllers\admin\UserController::class, 'SaveCommissionGroup'])->name('SaveCommissionGroup');

Route::get('/admin/commissiongroup/edit/{id}', [App\Http\Controllers\admin\UserController::class, 'EditCommissionGroup'])->name('EditCommissionGroup');
Route::post('/admin/updatecommissiongroup', [App\Http\Controllers\admin\UserController::class, 'UpdateCommissionGroup'])->name('UpdateCommissionGroup');

Route::get('/admin/usercommission', [App\Http\Controllers\admin\UserController::class, 'UserCommission'])->name('UserCommission');
Route::get('/admin/usercommission/add', [App\Http\Controllers\admin\UserController::class, 'AddUserCommission'])->name('AddUserCommission');
Route::post('/admin/saveusercommission', [App\Http\Controllers\admin\UserController::class, 'SaveUserCommission'])->name('SaveUserCommission');
Route::get('/admin/usercommission/edit/{id}', [App\Http\Controllers\admin\UserController::class, 'EditUserCommission'])->name('EditUserCommission');
Route::post('/admin/updateusercommission', [App\Http\Controllers\admin\UserController::class, 'updateUserCommission'])->name('updateUserCommission');

Route::get('/admin/ib/clienttoib', [App\Http\Controllers\admin\UserController::class, 'assignmtibtoclient'])->name('assignmtibtoclient');
Route::post('/admin/storeibtoclient', [App\Http\Controllers\admin\UserController::class, 'storeibtoclient'])->name('storeibtoclient');

// PAMM 

Route::get('/admin/addmoneymanager', [App\Http\Controllers\admin\UserController::class, 'CreateNewMoneyManager'])->name('CreateNewMoneyManager');
Route::post('/admin/savemoneymanager', [App\Http\Controllers\admin\UserController::class, 'SaveNewMoneyManager'])->name('SaveNewMoneyManager');

Route::get('/admin/moneymanagerlist', [App\Http\Controllers\admin\UserController::class, 'MoneyManagerList'])->name('MoneyManagerList');

Route::get('/admin/createpamm', [App\Http\Controllers\admin\MoneyManagerController::class, 'CreatePamm'])->name('CreatePamm');
Route::post('/admin/createpamm/store', [App\Http\Controllers\admin\MoneyManagerController::class, 'CreatePammSave'])->name('CreatePammSave');

Route::get('/admin/editpamm/{id}', [App\Http\Controllers\admin\MoneyManagerController::class, 'EditPamm'])->name('EditPamm');
Route::post('/admin/editpamm/update', [App\Http\Controllers\admin\MoneyManagerController::class, 'EditPammSave'])->name('EditPammSave');

Route::get('/admin/mypamminvest/{id}', [App\Http\Controllers\admin\MoneyManagerController::class, 'MyPammInvestmentList'])->name('MyPammInvestmentList');

Route::get('/admin/mypammprofit/{id}', [App\Http\Controllers\admin\MoneyManagerController::class, 'PammRecordsList'])->name('PammRecordsList');
Route::get('/admin/shareprofit/{id}', [App\Http\Controllers\admin\MoneyManagerController::class, 'sharepamm'])->name('sharepamm');





Route::get('/admin/pammlist', [App\Http\Controllers\admin\MoneyManagerController::class, 'PammList'])->name('PammList');

Route::get('/admin/pammwithdraw', [App\Http\Controllers\admin\MoneyManagerController::class, 'PammWithdraw'])->name('PammWithdraw');
Route::get('/admin/pammwithdrawlist', [App\Http\Controllers\admin\MoneyManagerController::class, 'PammWithdrawList'])->name('PammWithdrawList');
Route::post('/admin/addpammwithdrawcomment', [App\Http\Controllers\admin\MoneyManagerController::class, 'addpammwithdrawcomment'])->name('addpammwithdrawcomment');
Route::post('/admin/pammwithdrawcomment', [App\Http\Controllers\admin\MoneyManagerController::class, 'pammwithdrawcommentstore'])->name('pammwithdrawcommentstore');



/**** marketing ***/
Route::get('/admin/marketing/marketinglist',  [App\Http\Controllers\admin\MarketingController::class, 'marketinglist'])->name('admin.marketing.marketinglist');
Route::get('/admin/marketing/add', [App\Http\Controllers\admin\MarketingController::class, 'addMarketing'])->name('admin.marketing.addMarketing');
Route::get('/admin/marketing/edit/{id}', [App\Http\Controllers\admin\MarketingController::class, 'editMarketing'])->name('admin.marketing.editMarketing');
Route::post('/admin/marketing/create', [App\Http\Controllers\admin\MarketingController::class, 'createMarketing'])->name('admin.marketing.createMarketing');
Route::post('/admin/marketing/update/{id}', [App\Http\Controllers\admin\MarketingController::class, 'updateMarketing'])->name('admin.marketing.updateMarketing');
Route::get('/admin/marketing/delete/{id}', [App\Http\Controllers\admin\MarketingController::class, 'deleteMarketing'])->name('admin.marketing.deleteMarketing');


// Exchanger admin

Route::get('/admin/exchanger', [App\Http\Controllers\admin\ExchangerController::class, 'index'])->name('indexexchanger');
Route::get('/admin/exchanger/create', [App\Http\Controllers\admin\ExchangerController::class, 'create'])->name('createexchanger');
Route::post('/admin/exchanger/store', [App\Http\Controllers\admin\ExchangerController::class, 'store'])->name('storeexchanger');
Route::get('/admin/exchanger/{id}/edit', [App\Http\Controllers\admin\ExchangerController::class, 'edit'])->name('editexchanger');
Route::put('/admin/exchanger/update/{id}', [App\Http\Controllers\admin\ExchangerController::class, 'update'])->name('updateexchanger');

Route::get('/admin/exchanger/{id}/delete', [App\Http\Controllers\admin\ExchangerController::class, 'destroy'])->name('destroy');
Route::get('/admin/exchanger/unhide/{id}', [App\Http\Controllers\admin\ExchangerController::class, 'unhide'])->name('unhide');

Route::get('/admin/exchangers/transfer', [App\Http\Controllers\admin\ExchangerController::class, 'exinternal'])->name('exinternal');
Route::post('/admin/exchangertransfer', [App\Http\Controllers\admin\ExchangerController::class, 'savetransfer'])->name('savetransfer');

Route::get('/admin/exchangers/depositreport', [App\Http\Controllers\admin\ExchangerController::class, 'depositreport'])->name('depositreport');
Route::get('/admin/exchangers/withdrawreport', [App\Http\Controllers\admin\ExchangerController::class, 'withdrawreport'])->name('withdrawreport');

Route::get('/admin/exchangers/ibwithdrawreport', [App\Http\Controllers\admin\ExchangerController::class, 'ibwithdrawreport'])->name('ibwithdrawreport');

// Notication 

Route::get('/admin/readnotification', [App\Http\Controllers\admin\UserController::class, 'ReadNotificationListing'])->name('ReadNotificationListing');
Route::get('/admin/notification', [App\Http\Controllers\admin\UserController::class, 'NotificationListing'])->name('NotificationListing');
Route::get('/admin/mark-as-read/{id}', [App\Http\Controllers\admin\UserController::class, 'markNotification'])->name('markNotification');
Route::get('/admin/mark-all-read', [App\Http\Controllers\admin\UserController::class, 'markNotificationAll'])->name('markNotificationAll');


// SEND EMAILS

Route::get('/admin/sendemail', [App\Http\Controllers\admin\DashboardController::class, 'sendemails'])->name('sendemails');
Route::post('/admin/sendemail', [App\Http\Controllers\admin\DashboardController::class, 'SendEmail'])->name('SendEmail');


// Tickets

Route::get('/admin/ticket/ticketlist', [App\Http\Controllers\admin\TicketsController::class, 'ticketlist'])->name('ticketlist');
Route::get('/admin/ticket/{id}', [App\Http\Controllers\admin\TicketsController::class, 'viewticket'])->name('viewticket');
Route::post('/admin/ticket/close/{id}', [App\Http\Controllers\admin\TicketsController::class, 'closeticket'])->name('closeticket');
Route::post('/admin/ticket/comment', [App\Http\Controllers\admin\CommentsController::class, 'ticketcomment'])->name('ticketcomment');


//User bank details
Route::get('/admin/bankdata', [App\Http\Controllers\admin\DashboardController::class, 'BankDataAdmin'])->name('bankdetails');
Route::post('/admin/saveadminbankdata', [App\Http\Controllers\admin\DashboardController::class, 'AdminBankDataSave'])->name('savebankdetails');
//Change user admin
Route::get('/admin/user/changepassword', [App\Http\Controllers\admin\UserController::class, 'ChangeUserPassword'])->name('ChangeUserPassword');
Route::post('/admin/savechangeuserpassword', [App\Http\Controllers\admin\UserController::class, 'SaveChangeUserPassword'])->name('SaveChangeUserPassword');
//Resend mail link
Route::get('/admin/resendlink', [App\Http\Controllers\admin\UserController::class, 'resendvlink'])->name('resendvlink');
Route::post('/admin/resendverification', [App\Http\Controllers\admin\UserController::class, 'sendvlink'])->name('sendvlink'); 
//Upload user documents
Route::get('/admin/uploaduserdoc', [App\Http\Controllers\admin\UserController::class, 'uploaduserdo'])->name('uploaduserdo');
Route::post('/admin/submitdoc', [App\Http\Controllers\admin\UserController::class, 'storeuserdoc'])->name('storeuserdoc'); 
//Pending Documents
Route::get('/admin/user/docverification', [App\Http\Controllers\admin\UserController::class, 'docverification'])->name('docverification');
Route::get('/admin/user/docreview/{id}', [App\Http\Controllers\admin\UserController::class, 'docreview'])->name('docreview');

Route::post('/admin/user/docmodal', [App\Http\Controllers\admin\UserController::class, 'docmodal'])->name('docmodal'); 
Route::post('/admin/editbank', [App\Http\Controllers\admin\UserController::class, 'editbank'])->name('editbank'); 
Route::post('/admin/user/docverify', [App\Http\Controllers\admin\UserController::class, 'checkverification'])->name('checkverification'); 
Route::post('/admin/user/bankdoc', [App\Http\Controllers\admin\UserController::class, 'bankdocdetails'])->name('bankdocdetails'); 
Route::post('/admin/user/addcomment', [App\Http\Controllers\admin\UserController::class, 'addcomment'])->name('addcomment'); 
Route::post('/admin/user/submitcomment', [App\Http\Controllers\admin\UserController::class, 'submitcomment'])->name('submitcomment'); 
Route::post('/admin/editsavebank', [App\Http\Controllers\admin\UserController::class, 'editsavebank'])->name('editsavebank'); 
Route::post('/admin/editsavebank', [App\Http\Controllers\admin\UserController::class, 'editsavebank'])->name('editsavebank'); 

Route::get('/admin/user/documents', [App\Http\Controllers\admin\UserController::class, 'docverificationlist'])->name('docverificationlist');

// Add Group
Route::get('/admin/group/list', [App\Http\Controllers\admin\GroupController::class, 'index'])->name('grouplist');
Route::get('/admin/group/add', [App\Http\Controllers\admin\GroupController::class, 'create'])->name('groupcreate');
Route::post('/admin/group/store', [App\Http\Controllers\admin\GroupController::class, 'store'])->name('groupstore');

Route::get('/admin/group/{id}/edit', [App\Http\Controllers\admin\GroupController::class, 'edit'])->name('groupedit');
Route::post('/admin/group/{id}/update', [App\Http\Controllers\admin\GroupController::class, 'update'])->name('updategroup');

Route::get('/admin/existinggroup/add', [App\Http\Controllers\admin\GroupController::class, 'existinggroup'])->name('existinggroup');
Route::post('/admin/existinggroup/store', [App\Http\Controllers\admin\GroupController::class, 'existinggroupstore'])->name('existinggroupstore');

Route::get('/admin/groupupdatereport', [App\Http\Controllers\admin\UserController::class, 'groupupdatereport'])->name('groupupdatereport');

Route::get('/admin/updateclientgroup', [App\Http\Controllers\admin\UserController::class, 'updategroup'])->name('updategroup');
Route::post('/admin/storeclientgroup', [App\Http\Controllers\admin\UserController::class, 'storegroupclient'])->name('storegroupclient');

// Admin IB withdraw request
Route::get('/admin/transaction/ibwithdraw', [App\Http\Controllers\admin\DashboardController::class, 'ibwithdraw'])->name('ibwithdraw');


// Add Mtaccount
Route::get('/admin/user/addvertexid', [App\Http\Controllers\admin\UserController::class, 'addvertexid'])->name('addvertexid');
Route::post('/admin/user/storevertexid', [App\Http\Controllers\admin\UserController::class, 'storevertexid'])->name('storevertexid'); 
// followup list
Route::get('/admin/user/followup', [App\Http\Controllers\admin\UserController::class, 'followup'])->name('followup');
// Mt user list
Route::get('/admin/user/vertexuserlisttest', [App\Http\Controllers\admin\MTUserController::class, 'index'])->name('vertexuserlist');
Route::get('/admin/user/vertexuserlist', [App\Http\Controllers\admin\MTUserController::class, 'vertexuserlisttest'])->name('vertexuserlisttest');
// user password details
Route::get('/admin/user/passdetails', [App\Http\Controllers\admin\UserController::class, 'userpasswords'])->name('userpasswords');

// Deposit
Route::get('/admin/clientdeposit', [App\Http\Controllers\admin\DashboardController::class, 'ClientDeposit'])->name('ClientDeposit');
Route::get('/admin/getmt5accountdeposit/{id}', [App\Http\Controllers\admin\DashboardController::class, 'getmt5accountdeposituser'])->name('getmt5accountdeposituser');
Route::post('/admin/clientdepositsave', [App\Http\Controllers\admin\DashboardController::class, 'ClientDepositSave'])->name('ClientDepositSave');

Route::get('/admin/transaction/deposit', [App\Http\Controllers\admin\DashboardController::class, 'deposit'])->name('depositcheck');
Route::get('/admin/transaction/depositlist', [App\Http\Controllers\admin\DashboardController::class, 'depositlist'])->name('depositlist');

Route::post('/admin/transaction/adddecomment', [App\Http\Controllers\admin\DashboardController::class, 'adddepositcomment'])->name('adddepositcomment');
Route::post('/admin/transaction/depositcomment', [App\Http\Controllers\admin\DashboardController::class, 'depositcommentstore'])->name('depositcommentstore');
	
// Withdraw
Route::get('/admin/clientwithdraw', [App\Http\Controllers\admin\DashboardController::class, 'ClientWithdraw'])->name('ClientWithdraw');
Route::get('/admin/getmt5account/{id}', [App\Http\Controllers\admin\DashboardController::class, 'getmt5accountuser'])->name('getmt5accountuser');
Route::get('/admin/getbankaccount/{id}', [App\Http\Controllers\admin\DashboardController::class, 'getbankaccountuser'])->name('getbankaccountuser');
Route::get('/admin/getusername/{id}', [App\Http\Controllers\admin\DashboardController::class, 'getusername'])->name('getusername');
Route::post('/admin/clientwithdrawsave', [App\Http\Controllers\admin\DashboardController::class, 'ClientWithdrawSave'])->name('ClientWithdrawSave');


// Add existing client
Route::get('/admin/assignmtid', [App\Http\Controllers\admin\UserController::class, 'assignmt5id'])->name('assignmt5id');
Route::post('/admin/storemtid', [App\Http\Controllers\admin\UserController::class, 'storemtid'])->name('storemtid');


// Pending Wallet Request 
Route::get('/admin/wallet/pending', [App\Http\Controllers\admin\UserController::class, 'WalletPendingList'])->name('WalletPendingList');
Route::get('/admin/wallet/{id}/approved', [App\Http\Controllers\admin\UserController::class, 'WalletApproved'])->name('WalletApproved');
Route::get('/admin/wallet/{id}/rejected', [App\Http\Controllers\admin\UserController::class, 'WalletRejected'])->name('WalletRejected');

// All reports

Route::get('/admin/pendingdeposit', [App\Http\Controllers\admin\UserController::class, 'pendingdeporeport'])->name('pendingdeporeport');
Route::get('/admin/pendingwithdraw', [App\Http\Controllers\admin\UserController::class, 'pendingwithreport'])->name('pendingwithreport');
Route::get('/admin/ibwithdrawreports', [App\Http\Controllers\admin\UserController::class, 'ibwithdrawreports'])->name('ibwithdrawreports');
Route::get('/admin/walletreport', [App\Http\Controllers\admin\UserController::class, 'walletreport'])->name('walletreport');
Route::get('/admin/walletbalance', [App\Http\Controllers\admin\UserController::class, 'walletbalance'])->name('walletbalance');
Route::get('/admin/internaltransferreport', [App\Http\Controllers\admin\UserController::class, 'internaltransferreport'])->name('internaltransferreport');

// new route
Route::get('/admin/transaction/withdraw', [App\Http\Controllers\admin\DashboardController::class, 'withdraw'])->name('withdraw');
Route::get('/admin/transaction/approveddeposit', [App\Http\Controllers\admin\UserController::class, 'depositreportapprove'])->name('depositreportapprove');
Route::get('/admin/transaction/withdrawapproved', [App\Http\Controllers\admin\UserController::class, 'withdrawreportapprove'])->name('withdrawreportapprove');
Route::get('/admin/transaction/withdrawlist', [App\Http\Controllers\admin\DashboardController::class, 'withdrawlist'])->name('withdrawlist');
Route::post('/admin/transaction/addwicomment', [App\Http\Controllers\admin\DashboardController::class, 'addwithdrawcomment'])->name('addwithdrawcomment');
Route::post('/admin/transaction/withdrawcomment', [App\Http\Controllers\admin\DashboardController::class, 'withdrawcommentstore'])->name('withdrawcommentstore');
Route::get('/admin/transaction/ibwithdrawlist', [App\Http\Controllers\admin\DashboardController::class, 'ibwithdrawlist'])->name('ibwithdrawlist');


// admin IB Report static Tab

Route::get('/client/ibreports', [App\Http\Controllers\client\DashboardController::class, 'ibreports'])->name('ibreports');


Route::get('/admin/importuser', [App\Http\Controllers\admin\UserController::class, 'importuser2'])->name('importuser2');
Route::get('/admin/importuserlist', [App\Http\Controllers\admin\UserController::class, 'importuserlist'])->name('importuserlist');


// Route::get('/admin/pendingdeposit', [App\Http\Controllers\admin\DashboardController::class, 'pendingdeposit'])->name('pendingdeposit');

// Open Demo account
Route::get('/opendemoaccount', [App\Http\Controllers\DemoController::class, 'opendemoaccount'])->name('opendemoaccount');
Route::post('/storedemo', [App\Http\Controllers\DemoController::class, 'savedemoaccount'])->name('savedemoaccount');



/*********Admin Backend Menu ends*********/

Route::group(['middleware' => ['admin']],function(){
	Route::post('/admin/logout', [App\Http\Controllers\AdminAuth\LoginController::class, 'logout'])->name('logout');
	Route::get('/admin/logout', [App\Http\Controllers\AdminAuth\LoginController::class, 'logout'])->name('logout');
});

/**** Marketing Auth ***/
Route::get('/marketing', [App\Http\Controllers\MarketingAuth\LoginController::class, 'showLoginForm'])->name('login');
Route::get('/marketing/login', [App\Http\Controllers\MarketingAuth\LoginController::class, 'showLoginForm'])->name('adminlogin');
Route::post('/marketing/login', [App\Http\Controllers\MarketingAuth\LoginController::class, 'adminLogin'])->name('alogin');

Route::group(['middleware' => ['marketing']], function () {
	Route::post('/marketing/logout', [App\Http\Controllers\MarketingAuth\LoginController::class, 'logout'])->name('logout');
	Route::get('/marketing/logout', [App\Http\Controllers\MarketingAuth\LoginController::class, 'logout'])->name('logout');
});

Route::get('/marketing', [App\Http\Controllers\marketing\DashboardController::class, 'index']);
Route::get('/marketing/dashboard', [App\Http\Controllers\marketing\DashboardController::class, 'index'])->name('marketing.dashboard');

Route::get('/marketing/user/userlist', [App\Http\Controllers\marketing\UserController::class, 'index'])->name('marketing.user.userlist');
Route::get('/marketing/user/add', [App\Http\Controllers\marketing\UserController::class, 'create'])->name('marketing.user.add');
Route::post('/marketing/user/store', [App\Http\Controllers\marketing\UserController::class, 'store'])->name('marketing.user.store');

Route::get('/marketing/user/edit/{id}', [App\Http\Controllers\marketing\UserController::class, 'edit'])->name('marketing.user.edit');
Route::post('/marketing/user/update/{id}', [App\Http\Controllers\marketing\UserController::class, 'update'])->name('marketing.user.update');

Route::get('/admin/user/{id}/delete', [App\Http\Controllers\marketing\UserController::class, 'userdelete'])->name('deleteuser');
Route::get('/admin/user/{id}/view', [App\Http\Controllers\marketing\UserController::class, 'fulluserdetails'])->name('fulluserdetails');


// Add Mtaccount
Route::get('/marketing/user/addvertexid', [App\Http\Controllers\marketing\UserController::class, 'addvertexid'])->name('addvertexid');
Route::post('/marketing/user/storevertexid', [App\Http\Controllers\marketing\UserController::class, 'storevertexid'])->name('storevertexid'); 
Route::get('/marketing/user/vertexuserlist', [App\Http\Controllers\marketing\UserController::class, 'vertexuserlisttest'])->name('vertexuserlisttest');

//Resend mail link
Route::get('/marketing/user/resendlink', [App\Http\Controllers\marketing\UserController::class, 'resendvlink'])->name('resendvlink');
Route::post('/marketing/user/resendverification', [App\Http\Controllers\marketing\UserController::class, 'sendvlink'])->name('sendvlink'); 

// Marketing Ib

Route::get('/marketing/ib/user', [App\Http\Controllers\marketing\UserController::class, 'iblist'])->name('iblist');
Route::get('/marketing/ib/myclients/{id}', [App\Http\Controllers\marketing\UserController::class, 'MyClientListing'])->name('MyClientListing');
Route::get('/marketing/mycommission/{id}', [App\Http\Controllers\marketing\UserController::class, 'MyClientscommission'])->name('MyClientscommission');

Route::get('/marketing/ib/approve/{id}', [App\Http\Controllers\marketing\UserController::class, 'approveib'])->name('approveib');
Route::get('/marketing/ib/ibrequests', [App\Http\Controllers\marketing\UserController::class, 'iblistrequest'])->name('iblistrequest');
Route::get('/marketing/commissiongroup', [App\Http\Controllers\marketing\UserController::class, 'CommissionGroup'])->name('CommissionGroup');

Route::get('/marketing/ibplan', [App\Http\Controllers\marketing\UserController::class, 'IbPlanList'])->name('IbPlanList');
Route::get('/marketing/addibplan', [App\Http\Controllers\marketing\UserController::class, 'AddIbPlan'])->name('AddIbPlan');
Route::post('/marketing/saveibplan', [App\Http\Controllers\marketing\UserController::class, 'SaveIbPlan'])->name('SaveIbPlan');

Route::get('/marketing/usercommission', [App\Http\Controllers\marketing\UserController::class, 'UserCommission'])->name('UserCommission');
Route::get('/marketing/usercommission/add', [App\Http\Controllers\marketing\UserController::class, 'AddUserCommission'])->name('AddUserCommission');
Route::post('/marketing/saveusercommission', [App\Http\Controllers\marketing\UserController::class, 'SaveUserCommission'])->name('SaveUserCommission');
Route::get('/marketing/usercommission/edit/{id}', [App\Http\Controllers\marketing\UserController::class, 'EditUserCommission'])->name('EditUserCommission');
Route::post('/marketing/updateusercommission', [App\Http\Controllers\marketing\UserController::class, 'updateUserCommission'])->name('updateUserCommission');

Route::get('/marketing/ib/clienttoib', [App\Http\Controllers\marketing\UserController::class, 'assignmtibtoclient'])->name('assignmtibtoclient');
Route::post('/marketing/storeibtoclient', [App\Http\Controllers\marketing\UserController::class, 'storeibtoclient'])->name('storeibtoclient');

Route::get('/marketing/updateclientgroup', [App\Http\Controllers\marketing\UserController::class, 'updategroup'])->name('updategroup');
Route::post('/marketing/storeclientgroup', [App\Http\Controllers\marketing\UserController::class, 'storegroupclient'])->name('storegroupclient');

Route::get('/marketing/pendingdeposit', [App\Http\Controllers\marketing\UserController::class, 'pendingdeporeport'])->name('pendingdeporeport');
Route::get('/marketing/pendingwithdraw', [App\Http\Controllers\marketing\UserController::class, 'pendingwithreport'])->name('pendingwithreport');
Route::get('/marketing/ibwithdrawreports', [App\Http\Controllers\marketing\UserController::class, 'ibwithdrawreports'])->name('ibwithdrawreports');