2013-11-26 13:45:07 +01:00
|
|
|
<!DOCTYPE html>
|
2015-06-16 00:15:09 +02:00
|
|
|
<html lang="{{App::getLocale()}}">
|
2015-02-18 23:34:36 +01:00
|
|
|
<head>
|
2015-11-18 22:37:11 +01:00
|
|
|
@if (isset($hideLogo) && $hideLogo)
|
|
|
|
<title>{{ trans('texts.client_portal') }}</title>
|
|
|
|
@else
|
|
|
|
<title>{{ isset($title) ? ($title . ' | Invoice Ninja') : ('Invoice Ninja | ' . trans('texts.app_title')) }}</title>
|
|
|
|
<meta name="description" content="{{ isset($description) ? $description : trans('texts.app_description') }}" />
|
|
|
|
<link href="{{ asset('favicon.png') }}" rel="shortcut icon">
|
|
|
|
@endif
|
2014-06-02 18:21:47 +02:00
|
|
|
|
2014-05-25 20:38:40 +02:00
|
|
|
<!-- Source: https://github.com/hillelcoren/invoice-ninja -->
|
|
|
|
<!-- Version: {{ NINJA_VERSION }} -->
|
|
|
|
|
2013-11-26 13:45:07 +01:00
|
|
|
<meta charset="utf-8">
|
2015-04-02 06:09:32 +02:00
|
|
|
<meta property="og:site_name" content="Invoice Ninja" />
|
|
|
|
<meta property="og:url" content="{{ SITE_URL }}" />
|
|
|
|
<meta property="og:title" content="Invoice Ninja" />
|
2015-10-18 09:30:28 +02:00
|
|
|
<meta property="og:image" content="{{ SITE_URL }}/images/round_logo.png" />
|
2015-04-02 06:09:32 +02:00
|
|
|
<meta property="og:description" content="Simple, Intuitive Invoicing." />
|
2014-10-06 09:46:35 +02:00
|
|
|
|
2014-05-08 19:16:00 +02:00
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
2015-05-22 12:52:49 +02:00
|
|
|
<meta name="csrf-token" content="{{ csrf_token() }}">
|
2014-05-08 19:16:00 +02:00
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
2015-09-07 11:07:55 +02:00
|
|
|
<meta name="msapplication-config" content="none"/>
|
2014-05-08 19:16:00 +02:00
|
|
|
|
2015-06-16 00:19:05 +02:00
|
|
|
<link href="//fonts.googleapis.com/css?family=Roboto:400,700,900,100&subset=latin,latin-ext" rel="stylesheet" type="text/css">
|
|
|
|
<link href="//fonts.googleapis.com/css?family=Roboto+Slab:400,300,700&subset=latin,latin-ext" rel="stylesheet" type="text/css">
|
2015-04-02 06:09:32 +02:00
|
|
|
<link rel="canonical" href="{{ NINJA_APP_URL }}/{{ Request::path() }}" />
|
2015-02-18 23:34:36 +01:00
|
|
|
|
2015-04-21 13:42:31 +02:00
|
|
|
<script src="{{ asset('js/built.js') }}?no_cache={{ NINJA_VERSION }}" type="text/javascript"></script>
|
2014-05-04 17:49:57 +02:00
|
|
|
|
2014-01-02 14:21:15 +01:00
|
|
|
<script type="text/javascript">
|
2015-10-14 22:56:17 +02:00
|
|
|
var NINJA = NINJA || {};
|
|
|
|
NINJA.fontSize = 9;
|
|
|
|
|
2015-03-24 08:37:02 +01:00
|
|
|
NINJA.isRegistered = {{ \Utils::isRegistered() ? 'true' : 'false' }};
|
2015-02-18 23:34:36 +01:00
|
|
|
|
|
|
|
window.onerror = function(e) {
|
|
|
|
var message = e.message ? (e.message + ' - ' + e.filename + ': ' + e.lineno) : e;
|
|
|
|
try {
|
|
|
|
$.ajax({
|
|
|
|
type: 'GET',
|
|
|
|
url: '{{ URL::to('log_error') }}',
|
|
|
|
data: 'error='+encodeURIComponent(message)+'&url='+encodeURIComponent(window.location)
|
|
|
|
});
|
|
|
|
} catch(err) {}
|
|
|
|
return false;
|
2014-11-12 22:09:42 +01:00
|
|
|
}
|
2015-02-18 23:34:36 +01:00
|
|
|
|
|
|
|
/* Set the defaults for DataTables initialisation */
|
|
|
|
$.extend( true, $.fn.dataTable.defaults, {
|
|
|
|
"bSortClasses": false,
|
2015-04-28 22:13:52 +02:00
|
|
|
"sDom": "t<'row-fluid'<'span6'i><'span6'p>>l",
|
2015-02-18 23:34:36 +01:00
|
|
|
"sPaginationType": "bootstrap",
|
|
|
|
"bInfo": true,
|
|
|
|
"oLanguage": {
|
|
|
|
'sEmptyTable': "{{ trans('texts.empty_table') }}",
|
2015-04-28 22:13:52 +02:00
|
|
|
'sLengthMenu': '_MENU_ {{ trans('texts.rows') }}',
|
2015-02-18 23:34:36 +01:00
|
|
|
'sSearch': ''
|
|
|
|
}
|
|
|
|
} );
|
2015-08-03 10:52:47 +02:00
|
|
|
|
|
|
|
/*
|
2015-07-10 22:06:06 +02:00
|
|
|
$.extend( true, $.fn.datepicker.defaults, {
|
|
|
|
language:'{{App::getLocale()}}'
|
|
|
|
});
|
2015-08-03 10:52:47 +02:00
|
|
|
*/
|
|
|
|
|
2015-10-06 19:55:55 +02:00
|
|
|
@if (env('FACEBOOK_PIXEL'))
|
|
|
|
<!-- Facebook Pixel Code -->
|
|
|
|
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
|
|
|
|
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
|
|
|
|
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
|
|
|
|
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
|
|
|
|
document,'script','//connect.facebook.net/en_US/fbevents.js');
|
|
|
|
|
|
|
|
fbq('init', '{{ env('FACEBOOK_PIXEL') }}');
|
|
|
|
fbq('track', "PageView");
|
|
|
|
|
|
|
|
(function() {
|
|
|
|
var _fbq = window._fbq || (window._fbq = []);
|
|
|
|
if (!_fbq.loaded) {
|
|
|
|
var fbds = document.createElement('script');
|
|
|
|
fbds.async = true;
|
|
|
|
fbds.src = '//connect.facebook.net/en_US/fbds.js';
|
|
|
|
var s = document.getElementsByTagName('script')[0];
|
|
|
|
s.parentNode.insertBefore(fbds, s);
|
|
|
|
_fbq.loaded = true;
|
|
|
|
}
|
|
|
|
})();
|
|
|
|
|
|
|
|
@else
|
|
|
|
function fbq() {
|
|
|
|
// do nothing
|
|
|
|
};
|
|
|
|
@endif
|
|
|
|
|
|
|
|
window._fbq = window._fbq || [];
|
|
|
|
|
2014-01-02 14:21:15 +01:00
|
|
|
</script>
|
|
|
|
|
2015-10-02 10:32:13 +02:00
|
|
|
|
2013-11-26 13:45:07 +01:00
|
|
|
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
|
|
|
<!--[if lt IE 9]>
|
2015-02-18 23:34:36 +01:00
|
|
|
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
|
|
|
|
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
|
2013-11-26 13:45:07 +01:00
|
|
|
<![endif]-->
|
2013-12-07 19:45:00 +01:00
|
|
|
|
2015-02-18 23:34:36 +01:00
|
|
|
@yield('head')
|
|
|
|
|
|
|
|
</head>
|
2013-11-26 13:45:07 +01:00
|
|
|
|
2015-02-18 23:34:36 +01:00
|
|
|
<body>
|
2013-11-27 08:38:37 +01:00
|
|
|
|
2014-05-13 16:05:26 +02:00
|
|
|
@if (isset($_ENV['TAG_MANAGER_KEY']) && $_ENV['TAG_MANAGER_KEY'])
|
2015-02-18 23:34:36 +01:00
|
|
|
<!-- Google Tag Manager -->
|
|
|
|
<noscript><iframe src="//www.googletagmanager.com/ns.html?id={{ $_ENV['TAG_MANAGER_KEY'] }}"
|
|
|
|
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
|
|
|
|
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
|
|
|
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
|
|
|
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
|
|
|
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
|
|
|
})(window,document,'script','dataLayer','{{ $_ENV['TAG_MANAGER_KEY'] }}');</script>
|
|
|
|
<!-- End Google Tag Manager -->
|
|
|
|
|
|
|
|
<script>
|
2015-05-31 14:37:29 +02:00
|
|
|
function trackEvent(category, action) {}
|
2015-02-18 23:34:36 +01:00
|
|
|
</script>
|
2014-05-13 16:05:26 +02:00
|
|
|
@elseif (isset($_ENV['ANALYTICS_KEY']) && $_ENV['ANALYTICS_KEY'])
|
2015-02-18 23:34:36 +01:00
|
|
|
<script>
|
2014-05-13 16:05:26 +02:00
|
|
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
2015-02-18 23:34:36 +01:00
|
|
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
|
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
2014-05-13 16:05:26 +02:00
|
|
|
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
2015-02-18 23:34:36 +01:00
|
|
|
|
2015-03-17 15:25:53 +01:00
|
|
|
ga('create', '{{ $_ENV['ANALYTICS_KEY'] }}', 'auto');
|
2014-05-13 16:05:26 +02:00
|
|
|
ga('send', 'pageview');
|
2015-02-18 23:34:36 +01:00
|
|
|
|
2015-05-31 14:37:29 +02:00
|
|
|
function trackEvent(category, action) {
|
|
|
|
ga('send', 'event', category, action, this.src);
|
2014-05-13 16:05:26 +02:00
|
|
|
}
|
2015-02-18 23:34:36 +01:00
|
|
|
</script>
|
2014-05-11 20:24:30 +02:00
|
|
|
@else
|
2015-02-18 23:34:36 +01:00
|
|
|
<script>
|
2015-05-31 14:37:29 +02:00
|
|
|
function trackEvent(category, action) {}
|
2015-02-18 23:34:36 +01:00
|
|
|
</script>
|
2014-04-17 16:48:56 +02:00
|
|
|
@endif
|
2015-09-28 22:37:32 +02:00
|
|
|
|
2015-02-18 23:34:36 +01:00
|
|
|
@yield('body')
|
2013-11-26 13:45:07 +01:00
|
|
|
|
2015-02-18 23:34:36 +01:00
|
|
|
<script type="text/javascript">
|
2015-09-20 23:05:02 +02:00
|
|
|
NINJA.formIsChanged = {{ isset($formIsChanged) && $formIsChanged ? 'true' : 'false' }};
|
2015-09-28 22:37:32 +02:00
|
|
|
|
|
|
|
$(function() {
|
2014-04-18 10:57:31 +02:00
|
|
|
$('form.warn-on-exit input, form.warn-on-exit textarea, form.warn-on-exit select').change(function() {
|
2015-09-20 23:05:02 +02:00
|
|
|
NINJA.formIsChanged = true;
|
2014-04-17 16:48:56 +02:00
|
|
|
});
|
2015-06-03 19:55:48 +02:00
|
|
|
|
|
|
|
@if (Session::has('trackEventCategory') && Session::has('trackEventAction'))
|
2015-10-06 19:55:55 +02:00
|
|
|
trackEvent('{{ session('trackEventCategory') }}', '{{ session('trackEventAction') }}');
|
2015-10-09 07:57:37 +02:00
|
|
|
@if (Session::get('trackEventAction') === '/buy_pro_plan')
|
2015-10-06 19:55:55 +02:00
|
|
|
window._fbq.push(['track', '{{ env('FACEBOOK_PIXEL_BUY_PRO') }}', {'value':'{{ PRO_PLAN_PRICE }}.00','currency':'USD'}]);
|
|
|
|
@endif
|
2015-06-03 19:55:48 +02:00
|
|
|
@endif
|
2015-11-01 19:21:11 +01:00
|
|
|
|
|
|
|
@if (Session::has('onReady'))
|
|
|
|
{{ Session::get('onReady') }}
|
|
|
|
@endif
|
2015-02-18 23:34:36 +01:00
|
|
|
});
|
|
|
|
$('form').submit(function() {
|
2014-04-18 10:57:31 +02:00
|
|
|
NINJA.formIsChanged = false;
|
2015-02-18 23:34:36 +01:00
|
|
|
});
|
|
|
|
$(window).on('beforeunload', function() {
|
2014-04-17 16:48:56 +02:00
|
|
|
if (NINJA.formIsChanged) {
|
2015-02-18 23:34:36 +01:00
|
|
|
return "{{ trans('texts.unsaved_changes') }}";
|
2014-04-25 15:04:57 +02:00
|
|
|
} else {
|
2015-02-18 23:34:36 +01:00
|
|
|
return undefined;
|
2014-04-17 16:48:56 +02:00
|
|
|
}
|
2015-02-18 23:34:36 +01:00
|
|
|
});
|
|
|
|
function openUrl(url, track) {
|
2015-06-01 15:06:18 +02:00
|
|
|
trackEvent('/view_link', track ? track : url);
|
2015-02-18 23:34:36 +01:00
|
|
|
window.open(url, '_blank');
|
|
|
|
}
|
|
|
|
</script>
|
2014-04-17 16:48:56 +02:00
|
|
|
|
2015-02-18 23:34:36 +01:00
|
|
|
</body>
|
2013-11-26 13:45:07 +01:00
|
|
|
|
2013-12-07 19:45:00 +01:00
|
|
|
</html>
|