invoiceninja/resources/views/list.blade.php

169 lines
5.6 KiB
PHP
Raw Normal View History

2015-03-17 07:45:25 +10:00
@extends('header')
@section('content')
2015-03-26 16:24:02 +10:00
{!! Former::open($entityType . 's/bulk')->addClass('listForm') !!}
2016-01-05 21:12:50 +02:00
2015-03-17 07:45:25 +10:00
<div style="display:none">
2015-03-26 16:24:02 +10:00
{!! Former::text('action') !!}
2016-01-05 21:12:50 +02:00
{!! Former::text('public_id') !!}
2015-03-17 07:45:25 +10:00
</div>
2015-05-27 19:52:10 +03:00
@if ($entityType == ENTITY_TASK)
{!! Button::primary(trans('texts.invoice'))->withAttributes(['class'=>'invoice', 'onclick' =>'submitForm("invoice")'])->appendIcon(Icon::create('check')) !!}
@endif
2015-04-01 18:44:55 +03:00
{!! DropdownButton::normal(trans('texts.archive'))->withContents([
2015-04-30 20:54:19 +03:00
['label' => trans('texts.archive_'.$entityType), 'url' => 'javascript:submitForm("archive")'],
['label' => trans('texts.delete_'.$entityType), 'url' => 'javascript:submitForm("delete")'],
2015-04-01 18:44:55 +03:00
])->withAttributes(['class'=>'archive'])->split() !!}
2015-03-17 07:45:25 +10:00
&nbsp;<label for="trashed" style="font-weight:normal; margin-left: 10px;">
<input id="trashed" type="checkbox" onclick="setTrashVisible()"
2015-09-03 10:32:39 +03:00
{{ Session::get("show_trash:{$entityType}") ? 'checked' : ''}}/>&nbsp; {{ trans('texts.show_archived_deleted')}} {{ Utils::transFlowText($entityType.'s') }}
2015-03-17 07:45:25 +10:00
</label>
<div id="top_right_buttons" class="pull-right">
2016-01-05 21:12:50 +02:00
<input id="tableFilter" type="text" style="width:140px;margin-right:17px;background-color: white !important"
class="form-control pull-left" placeholder="{{ trans('texts.filter') }}" value="{{ Input::get('filter') }}"/>
2015-05-27 19:52:10 +03:00
@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')) !!}
2015-06-16 22:35:35 +03:00
@elseif ($entityType == ENTITY_CLIENT)
{!! Button::normal(trans('texts.credits'))->asLinkTo(URL::to('/credits'))->appendIcon(Icon::create('list')) !!}
2015-05-27 19:52:10 +03:00
@endif
2015-08-04 17:33:30 +03:00
2015-09-03 10:32:39 +03:00
{!! Button::primary(trans("texts.new_$entityType"))->asLinkTo(URL::to("/{$entityType}s/create"))->appendIcon(Icon::create('plus-sign')) !!}
2015-03-17 07:45:25 +10:00
</div>
2015-03-26 16:24:02 +10:00
{!! Datatable::table()
2015-03-17 07:45:25 +10:00
->addColumn($columns)
->setUrl(route('api.' . $entityType . 's'))
->setOptions('sPaginationType', 'bootstrap')
2015-04-28 23:13:52 +03:00
->setOptions('aaSorting', [[isset($sortCol) ? $sortCol : '1', 'desc']])
2015-03-26 16:24:02 +10:00
->render('datatable') !!}
2015-03-17 07:45:25 +10:00
2015-03-26 16:24:02 +10:00
{!! Former::close() !!}
2015-03-17 07:45:25 +10:00
<script type="text/javascript">
function submitForm(action) {
if (action == 'delete') {
2015-06-03 20:55:48 +03:00
if (!confirm('{!! trans("texts.are_you_sure") !!}')) {
2015-03-17 07:45:25 +10:00
return;
}
}
$('#action').val(action);
$('form.listForm').submit();
}
function deleteEntity(id) {
2015-10-28 21:22:07 +02:00
$('#public_id').val(id);
2015-03-17 07:45:25 +10:00
submitForm('delete');
}
function archiveEntity(id) {
2015-10-28 21:22:07 +02:00
$('#public_id').val(id);
2015-03-17 07:45:25 +10:00
submitForm('archive');
}
function restoreEntity(id) {
2015-10-28 21:22:07 +02:00
$('#public_id').val(id);
2015-03-17 07:45:25 +10:00
submitForm('restore');
}
function convertEntity(id) {
2015-10-28 21:22:07 +02:00
$('#public_id').val(id);
2015-03-17 07:45:25 +10:00
submitForm('convert');
}
2015-10-29 16:42:05 +02:00
function markEntity(id) {
2015-10-28 21:22:07 +02:00
$('#public_id').val(id);
2015-10-29 16:42:05 +02:00
submitForm('markSent');
2015-03-17 07:45:25 +10:00
}
2015-05-27 19:52:10 +03:00
function stopTask(id) {
2015-10-28 21:22:07 +02:00
$('#public_id').val(id);
2015-05-27 19:52:10 +03:00
submitForm('stop');
}
function invoiceTask(id) {
2015-10-28 21:22:07 +02:00
$('#public_id').val(id);
2015-05-27 19:52:10 +03:00
submitForm('invoice');
}
2015-03-17 07:45:25 +10:00
function setTrashVisible() {
var checked = $('#trashed').is(':checked');
window.location = '{{ URL::to('view_archive/' . $entityType) }}' + (checked ? '/true' : '/false');
}
2015-05-10 22:02:35 +03:00
$(function() {
var tableFilter = '';
var searchTimeout = false;
var oTable0 = $('#DataTables_Table_0').dataTable();
var oTable1 = $('#DataTables_Table_1').dataTable();
function filterTable(val) {
if (val == tableFilter) {
return;
}
tableFilter = val;
oTable0.fnFilter(val);
}
$('#tableFilter').on('keyup', function(){
if (searchTimeout) {
window.clearTimeout(searchTimeout);
}
searchTimeout = setTimeout(function() {
filterTable($('#tableFilter').val());
2016-01-05 21:12:50 +02:00
}, 500);
2015-05-10 22:02:35 +03:00
})
2016-01-05 21:12:50 +02:00
if ($('#tableFilter').val()) {
filterTable($('#tableFilter').val());
}
2015-05-10 22:02:35 +03:00
window.onDatatableReady = function() {
2015-09-17 22:01:06 +03:00
$(':checkbox').click(function() {
2015-05-27 19:52:10 +03:00
setBulkActionsEnabled();
2015-05-10 22:02:35 +03:00
});
2015-09-17 22:01:06 +03:00
$('tbody tr').unbind('click').click(function(event) {
2015-05-10 22:02:35 +03:00
if (event.target.type !== 'checkbox' && event.target.type !== 'button' && event.target.tagName.toLowerCase() !== 'a') {
$checkbox = $(this).closest('tr').find(':checkbox:not(:disabled)');
2015-05-10 22:02:35 +03:00
var checked = $checkbox.prop('checked');
$checkbox.prop('checked', !checked);
2015-05-27 19:52:10 +03:00
setBulkActionsEnabled();
2015-05-10 22:02:35 +03:00
}
});
2015-11-11 14:17:58 +02:00
actionListHandler();
}
2015-05-10 22:02:35 +03:00
2015-05-27 19:52:10 +03:00
$('.archive, .invoice').prop('disabled', true);
2015-05-10 22:02:35 +03:00
$('.archive:not(.dropdown-toggle)').click(function() {
submitForm('archive');
});
$('.selectAll').click(function() {
$(this).closest('table').find(':checkbox:not(:disabled)').prop('checked', this.checked);
});
2015-05-27 19:52:10 +03:00
function setBulkActionsEnabled() {
2015-10-22 21:48:12 +03:00
var buttonLabel = "{{ trans('texts.archive') }}";
var count = $('tbody :checkbox:checked').length;
$('button.archive, button.invoice').prop('disabled', !count);
if (count) {
buttonLabel += ' (' + count + ')';
}
$('button.archive').not('.dropdown-toggle').text(buttonLabel);
2015-05-10 22:02:35 +03:00
}
});
2015-03-17 07:45:25 +10:00
2015-05-10 22:02:35 +03:00
</script>
2015-03-17 07:45:25 +10:00
@stop