1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-10 21:22:58 +01:00
invoiceninja/resources/views/accounts/invoice_design.blade.php

187 lines
7.0 KiB
PHP
Raw Normal View History

2015-10-14 16:15:39 +02:00
@extends('header')
2015-03-16 22:45:25 +01:00
@section('head')
@parent
2015-10-18 09:30:28 +02:00
<script src="{{ asset('js/pdf.built.js') }}" type="text/javascript"></script>
2015-04-27 14:28:40 +02:00
2015-03-16 22:45:25 +01:00
@stop
@section('content')
@parent
2015-10-14 16:15:39 +02:00
@include('accounts.nav', ['selected' => ACCOUNT_INVOICE_DESIGN, 'advanced' => true])
2015-03-16 22:45:25 +01:00
<script>
2015-04-01 21:57:02 +02:00
var invoiceDesigns = {!! $invoiceDesigns !!};
var invoice = {!! json_encode($invoice) !!};
2015-03-16 22:45:25 +01:00
function getDesignJavascript() {
var id = $('#invoice_design_id').val();
if (id == '-1') {
showMoreDesigns();
$('#invoice_design_id').val(1);
return invoiceDesigns[0].javascript;
2015-07-21 20:51:56 +02:00
} else {
var design = _.find(invoiceDesigns, function(design){ return design.id == id});
return design ? design.javascript : '';
2015-03-16 22:45:25 +01:00
}
}
function getPDFString(cb) {
2015-04-01 21:57:02 +02:00
invoice.is_pro = {!! Auth::user()->isPro() ? 'true' : 'false' !!};
2015-03-16 22:45:25 +01:00
invoice.account.hide_quantity = $('#hide_quantity').is(":checked");
invoice.account.hide_paid_to_date = $('#hide_paid_to_date').is(":checked");
invoice.invoice_design_id = $('#invoice_design_id').val();
2015-09-07 11:07:55 +02:00
2015-03-16 22:45:25 +01:00
NINJA.primaryColor = $('#primary_color').val();
NINJA.secondaryColor = $('#secondary_color').val();
2015-05-22 09:22:24 +02:00
NINJA.fontSize = parseInt($('#font_size').val());
2015-03-16 22:45:25 +01:00
2015-11-21 22:10:26 +01:00
var fields = ['item', 'description', 'unit_cost', 'quantity', 'line_total', 'terms'];
2015-10-16 07:32:02 +02:00
invoiceLabels.old = {};
for (var i=0; i<fields.length; i++) {
var field = fields[i];
var val = $('#labels_' + field).val();
if (invoiceLabels.old.hasOwnProperty(field)) {
invoiceLabels.old[field] = invoiceLabels[field];
}
if (val) {
invoiceLabels[field] = val;
}
2015-10-16 07:32:02 +02:00
}
2015-10-16 07:32:02 +02:00
generatePDF(invoice, getDesignJavascript(), true, cb);
2015-03-16 22:45:25 +01:00
}
$(function() {
var options = {
preferredFormat: 'hex',
2015-04-01 21:57:02 +02:00
disabled: {!! Auth::user()->isPro() ? 'false' : 'true' !!},
2015-03-16 22:45:25 +01:00
showInitial: false,
showInput: true,
allowEmpty: true,
clickoutFiresChange: true,
};
$('#primary_color').spectrum(options);
$('#secondary_color').spectrum(options);
refreshPDF();
});
</script>
<div class="row">
2015-10-15 21:37:01 +02:00
<div class="col-md-12">
2015-03-16 22:45:25 +01:00
2015-04-01 21:57:02 +02:00
{!! Former::open()->addClass('warn-on-exit')->onchange('refreshPDF()') !!}
{!! Former::populate($account) !!}
{!! Former::populateField('hide_quantity', intval($account->hide_quantity)) !!}
{!! Former::populateField('hide_paid_to_date', intval($account->hide_paid_to_date)) !!}
2015-09-07 11:07:55 +02:00
@foreach ($invoiceLabels as $field => $value)
{!! Former::populateField("labels_{$field}", $value) !!}
@endforeach
2015-03-16 22:45:25 +01:00
2015-04-20 16:34:23 +02:00
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">{!! trans('texts.invoice_design') !!}</h3>
</div>
2015-10-15 21:37:01 +02:00
<div class="panel-body form-padding-right">
<div role="tabpanel">
<ul class="nav nav-tabs" role="tablist" style="border: none">
<li role="presentation" class="active"><a href="#generalSettings" aria-controls="generalSettings" role="tab" data-toggle="tab">{{ trans('texts.general_settings') }}</a></li>
<li role="presentation"><a href="#invoiceLabels" aria-controls="invoiceLabels" role="tab" data-toggle="tab">{{ trans('texts.invoice_labels') }}</a></li>
<li role="presentation"><a href="#invoiceOptions" aria-controls="invoiceOptions" role="tab" data-toggle="tab">{{ trans('texts.invoice_options') }}</a></li>
</ul>
</div>
<div class="tab-content">
<div role="tabpanel" class="tab-pane active" id="generalSettings">
<div class="panel-body">
@if (!Utils::isPro() || \App\Models\InvoiceDesign::count() == COUNT_FREE_DESIGNS_SELF_HOST)
2015-11-21 22:10:26 +01:00
{!! Former::select('invoice_design_id')
->style('display:inline; width:300px')
->fromQuery($invoiceDesigns, 'name', 'id')
->addOption(trans('texts.more_designs') . '...', '-1') !!}
2015-10-15 21:37:01 +02:00
@else
2015-11-21 22:10:26 +01:00
{!! Former::select('invoice_design_id')
->style('display:inline; width:300px')
->fromQuery($invoiceDesigns, 'name', 'id') !!}
2015-10-15 21:37:01 +02:00
@endif
2015-11-21 22:10:26 +01:00
{!! Former::text('font_size')
->style('width:300px')
->type('number')
->min('0')
->step('1') !!}
2015-10-15 21:37:01 +02:00
{!! Former::text('primary_color') !!}
{!! Former::text('secondary_color') !!}
</div>
</div>
<div role="tabpanel" class="tab-pane" id="invoiceLabels">
<div class="panel-body">
2015-11-21 22:10:26 +01:00
<div class="row">
<div class="col-md-6">
{!! Former::text('labels_item')->label(trans('texts.item')) !!}
{!! Former::text('labels_description')->label(trans('texts.description')) !!}
{!! Former::text('labels_unit_cost')->label(trans('texts.unit_cost')) !!}
</div>
<div class="col-md-6">
{!! Former::text('labels_quantity')->label(trans('texts.quantity')) !!}
{!! Former::text('labels_line_total')->label(trans('texts.line_total')) !!}
{!! Former::text('labels_terms')->label(trans('texts.terms')) !!}
</div>
</div>
2015-10-15 21:37:01 +02:00
</div>
</div>
<div role="tabpanel" class="tab-pane" id="invoiceOptions">
<div class="panel-body">
{!! Former::checkbox('hide_quantity')->text(trans('texts.hide_quantity_help')) !!}
{!! Former::checkbox('hide_paid_to_date')->text(trans('texts.hide_paid_to_date_help')) !!}
</div>
</div>
</div>
2015-04-20 16:34:23 +02:00
</div>
</div>
2015-03-16 22:45:25 +01:00
2015-10-16 07:32:02 +02:00
<br/>
{!! Former::actions(
2015-10-20 10:23:38 +02:00
Button::primary(trans('texts.customize'))
->appendIcon(Icon::create('edit'))
->asLinkTo(URL::to('/settings/customize_design'))
->large(),
Button::success(trans('texts.save'))
->submit()->large()
->appendIcon(Icon::create('floppy-disk'))
->withAttributes(['class' => 'save-button'])
2015-10-16 07:32:02 +02:00
) !!}
<br/>
@if (!Auth::user()->isPro())
2015-09-07 11:07:55 +02:00
<script>
$(function() {
2015-10-16 07:32:02 +02:00
$('form.warn-on-exit input, .save-button').prop('disabled', true);
2015-09-07 11:07:55 +02:00
});
</script>
2015-03-16 22:45:25 +01:00
@endif
2015-04-01 21:57:02 +02:00
{!! Former::close() !!}
2015-03-16 22:45:25 +01:00
</div>
2015-10-15 21:37:01 +02:00
</div>
2015-03-16 22:45:25 +01:00
@include('invoices.pdf', ['account' => Auth::user()->account, 'pdfHeight' => 800])
@stop