diff --git a/app/Http/Controllers/ClientController.php b/app/Http/Controllers/ClientController.php index badcdfc35728..c5ed7e5b4154 100644 --- a/app/Http/Controllers/ClientController.php +++ b/app/Http/Controllers/ClientController.php @@ -68,9 +68,6 @@ class ClientController extends BaseController ->addColumn('last_login', function ($model) { return Utils::timestampToDateString(strtotime($model->last_login)); }) ->addColumn('balance', function ($model) { return Utils::formatMoney($model->balance, $model->currency_id); }) ->addColumn('dropdown', function ($model) { - if ($model->is_deleted) { - return '
'; - } $str = ''; + } + + return $str.'
  • '.trans('texts.delete_client').'
  • '; }) ->make(); diff --git a/app/Http/Controllers/InvoiceController.php b/app/Http/Controllers/InvoiceController.php index 40a89714eb93..557ddf95588f 100644 --- a/app/Http/Controllers/InvoiceController.php +++ b/app/Http/Controllers/InvoiceController.php @@ -58,24 +58,20 @@ class InvoiceController extends BaseController $data = [ 'title' => trans('texts.invoices'), 'entityType' => ENTITY_INVOICE, - 'columns' => Utils::trans(['checkbox', 'invoice_number', 'client', 'invoice_date', 'invoice_total', 'balance_due', 'due_date', 'status', 'action']), + 'columns' => Utils::trans([ + 'checkbox', + 'invoice_number', + 'client', + 'invoice_date', + 'invoice_total', + 'balance_due', + 'due_date', + 'status', + 'action' + ]), ]; - $recurringInvoices = Invoice::scope()->where('is_recurring', '=', true); - - if (Session::get('show_trash:invoice')) { - $recurringInvoices->withTrashed(); - } else { - $recurringInvoices->join('clients', 'clients.id', '=', 'invoices.client_id') - ->where('clients.deleted_at', '=', null); - } - - if ($recurringInvoices->count() > 0) { - $data['secEntityType'] = ENTITY_RECURRING_INVOICE; - $data['secColumns'] = Utils::trans(['checkbox', 'frequency', 'client', 'start_date', 'end_date', 'invoice_total', 'action']); - } - - return View::make('list', $data); + return response()->view('list', $data); } public function getDatatable($clientPublicId = null) diff --git a/app/Http/Controllers/QuoteController.php b/app/Http/Controllers/QuoteController.php index 1c8098126854..d2b9db18906e 100644 --- a/app/Http/Controllers/QuoteController.php +++ b/app/Http/Controllers/QuoteController.php @@ -53,18 +53,19 @@ class QuoteController extends BaseController $data = [ 'title' => trans('texts.quotes'), 'entityType' => ENTITY_QUOTE, - 'columns' => Utils::trans(['checkbox', 'quote_number', 'client', 'quote_date', 'quote_total', 'valid_until', 'status', 'action']), + 'columns' => Utils::trans([ + 'checkbox', + 'quote_number', + 'client', + 'quote_date', + 'quote_total', + 'valid_until', + 'status', + 'action' + ]), ]; - /* - if (Invoice::scope()->where('is_recurring', '=', true)->count() > 0) - { - $data['secEntityType'] = ENTITY_RECURRING_INVOICE; - $data['secColumns'] = Utils::trans(['checkbox', 'frequency', 'client', 'start_date', 'end_date', 'quote_total', 'action']); - } - */ - - return View::make('list', $data); + return response()->view('list', $data); } public function getDatatable($clientPublicId = null) diff --git a/app/Http/Controllers/RecurringInvoiceController.php b/app/Http/Controllers/RecurringInvoiceController.php new file mode 100644 index 000000000000..c59370647bb0 --- /dev/null +++ b/app/Http/Controllers/RecurringInvoiceController.php @@ -0,0 +1,36 @@ +invoiceRepo = $invoiceRepo; + } + + public function index() + { + $data = [ + 'title' => trans('texts.recurring_invoices'), + 'entityType' => ENTITY_RECURRING_INVOICE, + 'columns' => Utils::trans([ + 'checkbox', + 'frequency', + 'client', + 'start_date', + 'end_date', + 'invoice_total', + 'action' + ]) + ]; + + return response()->view('list', $data); + } + +} \ No newline at end of file diff --git a/app/Http/routes.php b/app/Http/routes.php index 999e24fe70b2..8870519c3a6f 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -155,6 +155,7 @@ Route::group(['middleware' => 'auth'], function() { Route::get('api/invoices/{client_id?}', array('as'=>'api.invoices', 'uses'=>'InvoiceController@getDatatable')); Route::get('invoices/create/{client_id?}', 'InvoiceController@create'); Route::get('recurring_invoices/create/{client_id?}', 'InvoiceController@createRecurring'); + Route::get('recurring_invoices', 'RecurringInvoiceController@index'); Route::get('invoices/{public_id}/clone', 'InvoiceController@cloneInvoice'); Route::post('invoices/bulk', 'InvoiceController@bulk'); diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index efb642bfeda4..44820dbfab18 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -41,11 +41,13 @@ class AppServiceProvider extends ServiceProvider {
  • '.trans("texts.new_$type").'
  • '; if ($type == ENTITY_INVOICE) { - $str .= '
  • '.trans("texts.new_recurring_invoice").'
  • '; + $str .= '
  • +
  • '.trans("texts.recurring_invoices").'
  • +
  • '.trans("texts.new_recurring_invoice").'
  • '; if (Auth::user()->isPro()) { $str .= '
  • -
  • '.trans("texts.quotes").'
  • -
  • '.trans("texts.new_quote").'
  • '; +
  • '.trans("texts.quotes").'
  • +
  • '.trans("texts.new_quote").'
  • '; } } else if ($type == ENTITY_CLIENT) { $str .= '
  • diff --git a/resources/views/list.blade.php b/resources/views/list.blade.php index ed8c610e3a0f..87f119d41869 100644 --- a/resources/views/list.blade.php +++ b/resources/views/list.blade.php @@ -26,6 +26,7 @@ @if (Auth::user()->isPro() && $entityType == ENTITY_INVOICE) {!! Button::normal(trans('texts.quotes'))->asLinkTo(URL::to('/quotes'))->appendIcon(Icon::create('list')) !!} + {!! Button::normal(trans('texts.recurring'))->asLinkTo(URL::to('/recurring_invoices'))->appendIcon(Icon::create('list')) !!} @elseif ($entityType == ENTITY_CLIENT) {!! Button::normal(trans('texts.credits'))->asLinkTo(URL::to('/credits'))->appendIcon(Icon::create('list')) !!} @endif @@ -34,14 +35,6 @@ - @if (isset($secEntityType)) - {!! Datatable::table() - ->addColumn($secColumns) - ->setUrl(route('api.' . $secEntityType . 's')) - ->setOptions('sPaginationType', 'bootstrap') - ->render('datatable') !!} - @endif - {!! Datatable::table() ->addColumn($columns) ->setUrl(route('api.' . $entityType . 's')) @@ -115,9 +108,6 @@ } tableFilter = val; oTable0.fnFilter(val); - @if (isset($secEntityType)) - oTable1.fnFilter(val); - @endif } $('#tableFilter').on('keyup', function(){