<?php

// Web routes  for account.

include('routes.php');


if (Trans::isMultilingual()) {
    Route::group(
        [
            'prefix' => '{trans}',
            'where'  => ['trans' => Trans::keys('|')],
        ],
        function () {
            include('routes.php');

        }
    );
}

// Workflow routes for invoice

Route::prefix('{guard}/invoice')->group(function () {

    Route::get('/workflow/{invoice}/{user}', 'InvoiceWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{invoice}/{user}', 'InvoiceWorkflowController@post');

    Route::get('/action/{invoice}/{user}', 'InvoiceActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{invoice}/{user}', 'InvoiceActionController@post');

});


// Workflow routes for coa

Route::prefix('{guard}/coa')->group(function () {

    Route::get('/workflow/{coa}/{user}', 'CoaWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{coa}/{user}', 'CoaWorkflowController@post');

    Route::get('/action/{coa}/{user}', 'CoaActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{coa}/{user}', 'CoaActionController@post');

});


// Workflow routes for payrec

Route::prefix('{guard}/payrec')->group(function () {

    Route::get('/workflow/{payrec}/{user}', 'PayrecWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{payrec}/{user}', 'PayrecWorkflowController@post');

    Route::get('/action/{payrec}/{user}', 'PayrecActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{payrec}/{user}', 'PayrecActionController@post');

});
// Workflow routes for product

Route::prefix('{guard}/product')->group(function () {

    Route::get('/workflow/{product}/{user}', 'ProductWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{product}/{user}', 'ProductWorkflowController@post');

    Route::get('/action/{product}/{user}', 'ProductActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{product}/{user}', 'ProductActionController@post');

});


// Workflow routes for costcenter

Route::prefix('{guard}/costcenter')->group(function () {

    Route::get('/workflow/{costcenter}/{user}', 'CostcenterWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{costcenter}/{user}', 'CostcenterWorkflowController@post');

    Route::get('/action/{costcenter}/{user}', 'CostcenterActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{costcenter}/{user}', 'CostcenterActionController@post');

});


// Workflow routes for account

Route::prefix('{guard}/account')->group(function () {

    Route::get('/workflow/{account}/{user}', 'AccountWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{account}/{user}', 'AccountWorkflowController@post');

    Route::get('/action/{account}/{user}', 'AccountActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{account}/{user}', 'AccountActionController@post');

});


// Workflow routes for drcrnote

Route::prefix('{guard}/drcrnote')->group(function () {

    Route::get('/workflow/{drcrnote}/{user}', 'DrcrnoteWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{drcrnote}/{user}', 'DrcrnoteWorkflowController@post');

    Route::get('/action/{drcrnote}/{user}', 'DrcrnoteActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{drcrnote}/{user}', 'DrcrnoteActionController@post');

});


// Workflow routes for drcrnote_detail

Route::prefix('{guard}/drcrnote_detail')->group(function () {

    Route::get('/workflow/{drcrnote_detail}/{user}', 'DrcrnoteDetailWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{drcrnote_detail}/{user}', 'DrcrnoteDetailWorkflowController@post');

    Route::get('/action/{drcrnote_detail}/{user}', 'DrcrnoteDetailActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{drcrnote_detail}/{user}', 'DrcrnoteDetailActionController@post');

});


// Workflow routes for bank

Route::prefix('{guard}/bank')->group(function () {

    Route::get('/workflow/{bank}/{user}', 'BankWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{bank}/{user}', 'BankWorkflowController@post');

    Route::get('/action/{bank}/{user}', 'BankActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{bank}/{user}', 'BankActionController@post');

});


// Workflow routes for customer

Route::prefix('{guard}/customer')->group(function () {

    Route::get('/workflow/{customer}/{user}', 'CustomerWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{customer}/{user}', 'CustomerWorkflowController@post');

    Route::get('/action/{customer}/{user}', 'CustomerActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{customer}/{user}', 'CustomerActionController@post');

});
// Workflow routes for acknowledgement_detail

Route::prefix('{guard}/acknowledgement_detail')->group(function () {

    Route::get('/workflow/{acknowledgement_detail}/{user}', 'AcknowledgementDetailWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{acknowledgement_detail}/{user}', 'AcknowledgementDetailWorkflowController@post');

    Route::get('/action/{acknowledgement_detail}/{user}', 'AcknowledgementDetailActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{acknowledgement_detail}/{user}', 'AcknowledgementDetailActionController@post');

});
// Workflow routes for journal

Route::prefix('{guard}/journal')->group(function () {

    Route::get('/workflow/{journal}/{user}', 'JournalWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{journal}/{user}', 'JournalWorkflowController@post');

    Route::get('/action/{journal}/{user}', 'JournalActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{journal}/{user}', 'JournalActionController@post');

});
// Workflow routes for transactions_detail

Route::prefix('{guard}/transactions_detail')->group(function () {

    Route::get('/workflow/{transactions_detail}/{user}', 'TransactionsDetailWorkflowController@get')
        ->name('bixo.account.workflow');
    Route::post('/workflow/{transactions_detail}/{user}', 'TransactionsDetailWorkflowController@post');

    Route::get('/action/{transactions_detail}/{user}', 'TransactionsDetailActionController@get')
        ->name('bixo.account.action');
    Route::post('/action/{transactions_detail}/{user}', 'TransactionsDetailActionController@post');

});