mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-07-09 03:14:30 -04:00
Merge fixes
This commit is contained in:
parent
2bf3e524db
commit
d6afc03c3b
@ -23,8 +23,8 @@ class CreatePaymentAPIRequest extends PaymentRequest
|
|||||||
{
|
{
|
||||||
if ( ! $this->invoice_id || ! $this->amount) {
|
if ( ! $this->invoice_id || ! $this->amount) {
|
||||||
return [
|
return [
|
||||||
'invoice_id' => 'required',
|
'invoice_id' => 'required|numeric|min:1',
|
||||||
'amount' => 'required',
|
'amount' => 'required|numeric|min:0.01',
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -184,6 +184,7 @@ trait PresentsInvoice
|
|||||||
'quote_to',
|
'quote_to',
|
||||||
'details',
|
'details',
|
||||||
'invoice_no',
|
'invoice_no',
|
||||||
|
'quote_no',
|
||||||
'valid_until',
|
'valid_until',
|
||||||
'client_name',
|
'client_name',
|
||||||
'address1',
|
'address1',
|
||||||
|
@ -606,8 +606,9 @@ class BasePaymentDriver
|
|||||||
$term = strtolower($matches[2]);
|
$term = strtolower($matches[2]);
|
||||||
$price = $invoice_item->cost;
|
$price = $invoice_item->cost;
|
||||||
if ($plan == PLAN_ENTERPRISE) {
|
if ($plan == PLAN_ENTERPRISE) {
|
||||||
if (count($matches)) {
|
preg_match('/###[\d] [\w]* (\d*)/', $invoice_item->notes, $numUserMatches);
|
||||||
$numUsers = $matches[1];
|
if (count($numUserMatches)) {
|
||||||
|
$numUsers = $numUserMatches[1];
|
||||||
} else {
|
} else {
|
||||||
$numUsers = 5;
|
$numUsers = 5;
|
||||||
}
|
}
|
||||||
|
@ -15,6 +15,7 @@ class PayPalExpressPaymentDriver extends BasePaymentDriver
|
|||||||
$data = parent::paymentDetails();
|
$data = parent::paymentDetails();
|
||||||
|
|
||||||
$data['ButtonSource'] = 'InvoiceNinja_SP';
|
$data['ButtonSource'] = 'InvoiceNinja_SP';
|
||||||
|
$data['solutionType'] = 'Sole'; // show 'Pay with credit card' option
|
||||||
|
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -210,8 +210,12 @@ NINJA.decodeJavascript = function(invoice, javascript)
|
|||||||
if (invoice.partial > 0 && field == 'balance_due') {
|
if (invoice.partial > 0 && field == 'balance_due') {
|
||||||
field = 'partial_due';
|
field = 'partial_due';
|
||||||
} else if (invoice.is_quote) {
|
} else if (invoice.is_quote) {
|
||||||
|
if (field == 'due_date') {
|
||||||
|
field = 'valid_until';
|
||||||
|
} else {
|
||||||
field = field.replace('invoice', 'quote');
|
field = field.replace('invoice', 'quote');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
var label = invoiceLabels[field];
|
var label = invoiceLabels[field];
|
||||||
if (match.indexOf('UC') >= 0) {
|
if (match.indexOf('UC') >= 0) {
|
||||||
label = label.toUpperCase();
|
label = label.toUpperCase();
|
||||||
|
@ -643,6 +643,7 @@ $LANG = array(
|
|||||||
'custom' => 'Custom',
|
'custom' => 'Custom',
|
||||||
'invoice_to' => 'Invoice to',
|
'invoice_to' => 'Invoice to',
|
||||||
'invoice_no' => 'Invoice No.',
|
'invoice_no' => 'Invoice No.',
|
||||||
|
'quote_no' => 'Quote No.',
|
||||||
'recent_payments' => 'Recent Payments',
|
'recent_payments' => 'Recent Payments',
|
||||||
'outstanding' => 'Outstanding',
|
'outstanding' => 'Outstanding',
|
||||||
'manage_companies' => 'Manage Companies',
|
'manage_companies' => 'Manage Companies',
|
||||||
@ -2069,7 +2070,7 @@ $LANG = array(
|
|||||||
'bot_emailed_notify_paid' => 'I\'ll email you when it\'s paid.',
|
'bot_emailed_notify_paid' => 'I\'ll email you when it\'s paid.',
|
||||||
'add_product_to_invoice' => 'Add 1 :product',
|
'add_product_to_invoice' => 'Add 1 :product',
|
||||||
'not_authorized' => 'Your are not authorized',
|
'not_authorized' => 'Your are not authorized',
|
||||||
'bot_get_email' => 'Hi! (wave)<br/>Thanks for trying the Invoice Ninja Bot.<br/>Send me your account email to get started.',
|
'bot_get_email' => 'Hi! (wave)<br/>Thanks for trying the Invoice Ninja Bot.<br/>You need to create a free account on <a href="https://www.invoiceninja.com">invoiceninja.com</a> to use this bot.<br/>Send me your account email address to get started.',
|
||||||
'bot_get_code' => 'Thanks! I\'ve sent a you an email with your security code.',
|
'bot_get_code' => 'Thanks! I\'ve sent a you an email with your security code.',
|
||||||
'bot_welcome' => 'That\'s it, your account is verified.<br/>',
|
'bot_welcome' => 'That\'s it, your account is verified.<br/>',
|
||||||
'email_not_found' => 'I wasn\'t able to find an available account for :email',
|
'email_not_found' => 'I wasn\'t able to find an available account for :email',
|
||||||
|
@ -23,7 +23,6 @@
|
|||||||
->autocomplete('on')
|
->autocomplete('on')
|
||||||
->rules([
|
->rules([
|
||||||
'name' => 'required',
|
'name' => 'required',
|
||||||
'website' => 'url',
|
|
||||||
]) !!}
|
]) !!}
|
||||||
|
|
||||||
{{ Former::populate($account) }}
|
{{ Former::populate($account) }}
|
||||||
|
@ -200,8 +200,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
window.loadedSearchData = false;
|
window.loadedSearchData = false;
|
||||||
function onSearchFocus() {
|
function onSearchBlur() {
|
||||||
$('#search').typeahead('val', '');
|
$('#search').typeahead('val', '');
|
||||||
|
}
|
||||||
|
|
||||||
|
function onSearchFocus() {
|
||||||
$('#search-form').show();
|
$('#search-form').show();
|
||||||
|
|
||||||
if (!window.loadedSearchData) {
|
if (!window.loadedSearchData) {
|
||||||
@ -320,6 +323,7 @@
|
|||||||
|
|
||||||
// Focus the search input if the user clicks forward slash
|
// Focus the search input if the user clicks forward slash
|
||||||
$('#search').focusin(onSearchFocus);
|
$('#search').focusin(onSearchFocus);
|
||||||
|
$('#search').blur(onSearchBlur);
|
||||||
|
|
||||||
$('body').keypress(function(event) {
|
$('body').keypress(function(event) {
|
||||||
if (event.which == 47 && !$('*:focus').length) {
|
if (event.which == 47 && !$('*:focus').length) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user