2013-12-07 19:45:00 +01:00
|
|
|
@extends('master')
|
|
|
|
|
2013-11-26 13:45:07 +01:00
|
|
|
|
2014-01-30 23:29:09 +01:00
|
|
|
@section('head')
|
2014-04-28 22:05:37 +02:00
|
|
|
|
2016-07-21 14:35:23 +02:00
|
|
|
<link href="{{ asset('css/built.css') }}?no_cache={{ NINJA_VERSION }}" rel="stylesheet" type="text/css"/>
|
2014-11-11 18:47:31 +01:00
|
|
|
|
2014-11-12 22:09:42 +01:00
|
|
|
<style type="text/css">
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
body {
|
2016-09-02 16:53:16 +02:00
|
|
|
background-color: #fcfcfc;
|
2016-09-01 17:52:26 +02:00
|
|
|
}
|
2016-08-23 19:28:45 +02:00
|
|
|
|
2016-09-02 16:53:16 +02:00
|
|
|
.navbar {
|
2016-09-05 07:10:39 +02:00
|
|
|
background-color: #337ab7 !important;
|
2016-09-02 16:53:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
.navbar-collapse {
|
2016-09-05 07:10:39 +02:00
|
|
|
background-color: #337ab7 !important;
|
2016-09-02 16:53:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
table.dataTable thead > tr > th,
|
|
|
|
table.invoice-table thead > tr > th {
|
2016-09-02 16:53:16 +02:00
|
|
|
background-color: #777 !important;
|
|
|
|
xbackground-color: #8f8f8f !important;
|
|
|
|
xbackground-color: #34495E !important;
|
2016-09-01 17:52:26 +02:00
|
|
|
color:#fff;
|
|
|
|
}
|
2016-08-23 19:28:45 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
thead th {
|
2016-09-02 16:53:16 +02:00
|
|
|
border-left: 1px solid #999;
|
2016-09-01 17:52:26 +02:00
|
|
|
}
|
2016-08-23 12:42:17 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.sidebar-nav {
|
2016-09-02 16:53:16 +02:00
|
|
|
background-color: #313131;
|
2016-09-01 17:52:26 +02:00
|
|
|
}
|
2016-08-23 12:42:17 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.sidebar-nav li {
|
2016-09-02 16:53:16 +02:00
|
|
|
border-bottom:solid 1px #4c4c4c;
|
2016-09-01 17:52:26 +02:00
|
|
|
}
|
2016-08-31 11:58:31 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.sidebar-nav i.fa {
|
|
|
|
color: white;
|
|
|
|
}
|
2016-08-31 11:58:31 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.menu-toggle i,
|
|
|
|
.sidebar-nav li > a {
|
|
|
|
color: #999999;
|
|
|
|
}
|
2016-08-23 12:42:17 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.menu-toggle:hover i,
|
|
|
|
.sidebar-nav li:hover > a,
|
|
|
|
.sidebar-nav li > a.active {
|
|
|
|
color: #fff;
|
|
|
|
}
|
2016-08-31 11:58:31 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.sidebar-nav li:hover,
|
|
|
|
.sidebar-nav li.active {
|
|
|
|
background: rgba(255,255,255,0.2);
|
|
|
|
}
|
|
|
|
|
|
|
|
.menu-toggle {
|
|
|
|
color: #999 !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
.menu-toggle:hover {
|
|
|
|
color: #fff !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.menu-toggle {
|
|
|
|
text-decoration: none;
|
|
|
|
}
|
|
|
|
.menu-toggle:hover {
|
|
|
|
text-decoration: none;
|
|
|
|
}
|
2016-08-23 12:42:17 +02:00
|
|
|
|
2016-09-02 16:53:16 +02:00
|
|
|
.icon-footer {
|
|
|
|
text-align: center;
|
|
|
|
position:fixed;
|
|
|
|
bottom:12px;
|
|
|
|
left:16px;
|
|
|
|
color:white;
|
|
|
|
font-size:16px
|
|
|
|
}
|
|
|
|
|
|
|
|
.icon-footer i {
|
|
|
|
width: 40px;
|
|
|
|
color: #999999;
|
|
|
|
}
|
|
|
|
|
|
|
|
.icon-footer i:hover {
|
|
|
|
color: #fff;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
/*
|
|
|
|
body {
|
|
|
|
background: white;
|
2016-08-23 12:42:17 +02:00
|
|
|
}
|
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
div.panel-body {
|
|
|
|
background-color: #f2f5fe;
|
2016-08-23 12:42:17 +02:00
|
|
|
}
|
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
table.dataTable thead > tr > th,
|
|
|
|
table.invoice-table thead > tr > th {
|
|
|
|
background-color: #0b4d78 !important;
|
|
|
|
color:#fff;
|
2016-08-31 11:58:31 +02:00
|
|
|
}
|
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
thead th {
|
|
|
|
border-left: 1px solid #7a8799;
|
|
|
|
}
|
2016-08-23 12:42:17 +02:00
|
|
|
|
|
|
|
.sidebar-nav {
|
2016-09-01 17:52:26 +02:00
|
|
|
background-color: #f2f5fe;
|
2016-08-23 12:42:17 +02:00
|
|
|
}
|
|
|
|
|
2016-08-31 21:10:41 +02:00
|
|
|
.sidebar-nav i.fa {
|
2016-09-01 17:52:26 +02:00
|
|
|
color: #7a8799;
|
2016-08-31 21:10:41 +02:00
|
|
|
}
|
|
|
|
|
2016-08-23 12:42:17 +02:00
|
|
|
.sidebar-nav li {
|
2016-09-01 17:52:26 +02:00
|
|
|
border-bottom:solid 1px #7a8799;
|
2016-08-31 21:10:41 +02:00
|
|
|
}
|
|
|
|
|
2016-08-31 11:58:31 +02:00
|
|
|
.sidebar-nav li > a {
|
2016-09-01 17:52:26 +02:00
|
|
|
color: #7a8799;
|
2016-08-23 12:42:17 +02:00
|
|
|
}
|
|
|
|
|
2016-08-31 11:58:31 +02:00
|
|
|
.sidebar-nav li:hover > a,
|
|
|
|
.sidebar-nav li > a.active {
|
2016-09-01 17:52:26 +02:00
|
|
|
color: #2b435d;
|
2016-08-31 11:58:31 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
.sidebar-nav li:hover,
|
|
|
|
.sidebar-nav li.active {
|
2016-09-01 17:52:26 +02:00
|
|
|
background: rgba(255,255,255,1);
|
2016-08-23 12:42:17 +02:00
|
|
|
}
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.menu-toggle {
|
|
|
|
color: #999 !important;
|
2016-08-31 21:10:41 +02:00
|
|
|
}
|
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
.menu-toggle:hover {
|
|
|
|
color: #fff !important;
|
2016-08-31 21:10:41 +02:00
|
|
|
}
|
2016-09-01 17:52:26 +02:00
|
|
|
*/
|
2015-05-05 11:48:23 +02:00
|
|
|
|
2015-07-12 21:43:45 +02:00
|
|
|
@if (Auth::check() && Auth::user()->dark_mode)
|
|
|
|
body {
|
|
|
|
background: #000 !important;
|
|
|
|
color: white !important;
|
|
|
|
}
|
|
|
|
|
|
|
|
.panel-body {
|
|
|
|
background: #272822 !important;
|
|
|
|
/*background: #e6e6e6 !important;*/
|
|
|
|
}
|
|
|
|
|
|
|
|
.panel-default {
|
|
|
|
border-color: #444;
|
|
|
|
}
|
|
|
|
@endif
|
|
|
|
|
2014-11-12 22:09:42 +01:00
|
|
|
</style>
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2015-04-22 21:21:04 +02:00
|
|
|
<script type="text/javascript">
|
|
|
|
|
|
|
|
@if (!Auth::check() || !Auth::user()->registered)
|
2016-05-15 22:16:08 +02:00
|
|
|
function validateSignUp(showError)
|
2015-04-22 21:21:04 +02:00
|
|
|
{
|
|
|
|
var isFormValid = true;
|
|
|
|
$(['first_name','last_name','email','password']).each(function(i, field) {
|
|
|
|
var $input = $('form.signUpForm #new_'+field),
|
2016-05-15 22:16:08 +02:00
|
|
|
val = $.trim($input.val());
|
2015-04-22 21:21:04 +02:00
|
|
|
var isValid = val && val.length >= (field == 'password' ? 6 : 1);
|
|
|
|
if (isValid && field == 'email') {
|
|
|
|
isValid = isValidEmailAddress(val);
|
|
|
|
}
|
|
|
|
if (isValid) {
|
|
|
|
$input.closest('div.form-group').removeClass('has-error').addClass('has-success');
|
|
|
|
} else {
|
|
|
|
isFormValid = false;
|
|
|
|
$input.closest('div.form-group').removeClass('has-success');
|
|
|
|
if (showError) {
|
|
|
|
$input.closest('div.form-group').addClass('has-error');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
if (!$('#terms_checkbox').is(':checked')) {
|
|
|
|
isFormValid = false;
|
|
|
|
}
|
|
|
|
|
|
|
|
$('#saveSignUpButton').prop('disabled', !isFormValid);
|
|
|
|
|
|
|
|
return isFormValid;
|
|
|
|
}
|
|
|
|
|
|
|
|
function validateServerSignUp()
|
|
|
|
{
|
|
|
|
if (!validateSignUp(true)) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
$('#signUpDiv, #signUpFooter').hide();
|
|
|
|
$('#working').show();
|
|
|
|
|
|
|
|
$.ajax({
|
|
|
|
type: 'POST',
|
|
|
|
url: '{{ URL::to('signup/validate') }}',
|
|
|
|
data: 'email=' + $('form.signUpForm #new_email').val(),
|
2016-05-15 22:16:08 +02:00
|
|
|
success: function(result) {
|
|
|
|
if (result == 'available') {
|
2015-04-22 21:21:04 +02:00
|
|
|
submitSignUp();
|
|
|
|
} else {
|
|
|
|
$('#errorTaken').show();
|
|
|
|
$('form.signUpForm #new_email').closest('div.form-group').removeClass('has-success').addClass('has-error');
|
|
|
|
$('#signUpDiv, #signUpFooter').show();
|
|
|
|
$('#working').hide();
|
|
|
|
}
|
|
|
|
}
|
2016-05-15 22:16:08 +02:00
|
|
|
});
|
2015-04-22 21:21:04 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
function submitSignUp() {
|
|
|
|
$.ajax({
|
|
|
|
type: 'POST',
|
|
|
|
url: '{{ URL::to('signup/submit') }}',
|
2016-05-15 22:16:08 +02:00
|
|
|
data: 'new_email=' + encodeURIComponent($('form.signUpForm #new_email').val()) +
|
|
|
|
'&new_password=' + encodeURIComponent($('form.signUpForm #new_password').val()) +
|
|
|
|
'&new_first_name=' + encodeURIComponent($('form.signUpForm #new_first_name').val()) +
|
2015-04-22 21:21:04 +02:00
|
|
|
'&new_last_name=' + encodeURIComponent($('form.signUpForm #new_last_name').val()) +
|
|
|
|
'&go_pro=' + $('#go_pro').val(),
|
2016-05-15 22:16:08 +02:00
|
|
|
success: function(result) {
|
2015-04-22 21:21:04 +02:00
|
|
|
if (result) {
|
2015-11-01 19:21:11 +01:00
|
|
|
handleSignedUp();
|
2015-04-22 21:21:04 +02:00
|
|
|
NINJA.isRegistered = true;
|
|
|
|
$('#signUpButton').hide();
|
2015-11-01 19:21:11 +01:00
|
|
|
$('#myAccountButton').html(result);
|
|
|
|
}
|
2015-04-22 21:21:04 +02:00
|
|
|
$('#signUpSuccessDiv, #signUpFooter, #closeSignUpButton').show();
|
|
|
|
$('#working, #saveSignUpButton').hide();
|
|
|
|
}
|
2015-11-01 19:21:11 +01:00
|
|
|
});
|
|
|
|
}
|
2015-10-20 10:23:38 +02:00
|
|
|
@endif
|
|
|
|
|
2015-11-01 19:21:11 +01:00
|
|
|
function handleSignedUp() {
|
|
|
|
localStorage.setItem('guest_key', '');
|
|
|
|
fbq('track', 'CompleteRegistration');
|
|
|
|
window._fbq.push(['track', '{{ env('FACEBOOK_PIXEL_SIGN_UP') }}', {'value':'0.00','currency':'USD'}]);
|
|
|
|
trackEvent('/account', '/signed_up');
|
|
|
|
}
|
|
|
|
|
2015-04-22 21:21:04 +02:00
|
|
|
function checkForEnter(event)
|
|
|
|
{
|
|
|
|
if (event.keyCode === 13){
|
2016-05-15 22:16:08 +02:00
|
|
|
event.preventDefault();
|
2015-04-22 21:21:04 +02:00
|
|
|
validateServerSignUp();
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function logout(force)
|
|
|
|
{
|
|
|
|
if (force) {
|
|
|
|
NINJA.formIsChanged = false;
|
|
|
|
}
|
|
|
|
|
2016-05-15 22:16:08 +02:00
|
|
|
if (force || NINJA.isRegistered) {
|
2015-04-22 21:21:04 +02:00
|
|
|
window.location = '{{ URL::to('logout') }}';
|
|
|
|
} else {
|
2016-05-15 22:16:08 +02:00
|
|
|
$('#logoutModal').modal('show');
|
2015-04-22 21:21:04 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2015-10-11 16:41:09 +02:00
|
|
|
function showSignUp() {
|
|
|
|
$('#signUpModal').modal('show');
|
|
|
|
}
|
|
|
|
|
|
|
|
function hideSignUp() {
|
|
|
|
$('#signUpModal').modal('hide');
|
2015-04-22 21:21:04 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
function buyProduct(affiliateKey, productId) {
|
|
|
|
window.open('{{ Utils::isNinjaDev() ? '' : NINJA_APP_URL }}/license?affiliate_key=' + affiliateKey + '&product_id=' + productId + '&return_url=' + window.location);
|
|
|
|
}
|
|
|
|
|
|
|
|
function hideMessage() {
|
|
|
|
$('.alert-info').fadeOut();
|
|
|
|
$.get('/hide_message', function(response) {
|
|
|
|
console.log('Reponse: %s', response);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
function wordWrapText(value, width)
|
|
|
|
{
|
|
|
|
@if (Auth::user()->account->auto_wrap)
|
|
|
|
var doc = new jsPDF('p', 'pt');
|
|
|
|
doc.setFont('Helvetica','');
|
|
|
|
doc.setFontSize(10);
|
|
|
|
|
|
|
|
var lines = value.split("\n");
|
|
|
|
for (var i = 0; i < lines.length; i++) {
|
|
|
|
var numLines = doc.splitTextToSize(lines[i], width).length;
|
|
|
|
if (numLines <= 1) continue;
|
|
|
|
var j = 0; space = lines[i].length;
|
|
|
|
while (j++ < lines[i].length) {
|
|
|
|
if (lines[i].charAt(j) === ' ') space = j;
|
|
|
|
}
|
|
|
|
if (space == lines[i].length) space = width/6;
|
|
|
|
lines[i + 1] = lines[i].substring(space + 1) + ' ' + (lines[i + 1] || '');
|
|
|
|
lines[i] = lines[i].substring(0, space);
|
|
|
|
}
|
|
|
|
|
|
|
|
var newValue = (lines.join("\n")).trim();
|
|
|
|
|
|
|
|
if (value == newValue) {
|
|
|
|
return newValue;
|
|
|
|
} else {
|
|
|
|
return wordWrapText(newValue, width);
|
|
|
|
}
|
|
|
|
@else
|
|
|
|
return value;
|
|
|
|
@endif
|
|
|
|
}
|
|
|
|
|
2015-10-11 16:41:09 +02:00
|
|
|
function setSignupEnabled(enabled) {
|
2015-11-01 19:21:11 +01:00
|
|
|
$('.signup-form input[type=text]').prop('disabled', !enabled);
|
|
|
|
if (enabled) {
|
|
|
|
$('.signup-form a.btn').removeClass('disabled');
|
|
|
|
} else {
|
|
|
|
$('.signup-form a.btn').addClass('disabled');
|
|
|
|
}
|
2015-10-11 16:41:09 +02:00
|
|
|
}
|
|
|
|
|
2015-10-18 09:30:28 +02:00
|
|
|
function setSocialLoginProvider(provider) {
|
|
|
|
localStorage.setItem('auth_provider', provider);
|
|
|
|
}
|
|
|
|
|
2016-03-14 09:25:08 +01:00
|
|
|
window.loadedSearchData = false;
|
2016-08-23 22:20:03 +02:00
|
|
|
function onSearchFocus() {
|
2016-02-29 10:40:52 +01:00
|
|
|
$('#search').typeahead('val', '');
|
2016-02-19 10:41:03 +01:00
|
|
|
$('#search-form').show();
|
2016-05-15 22:16:08 +02:00
|
|
|
|
2016-03-14 09:25:08 +01:00
|
|
|
if (!window.loadedSearchData) {
|
2016-08-23 22:20:03 +02:00
|
|
|
window.loadedSearchData = true;
|
2015-10-11 16:41:09 +02:00
|
|
|
trackEvent('/activity', '/search');
|
2016-07-27 14:46:05 +02:00
|
|
|
var request = $.get('{{ URL::route('get_search_data') }}', function(data) {
|
2016-02-28 21:43:43 +01:00
|
|
|
$('#search').typeahead({
|
|
|
|
hint: true,
|
|
|
|
highlight: true,
|
2016-02-29 10:40:52 +01:00
|
|
|
}
|
2016-03-14 09:09:18 +01:00
|
|
|
@if (Auth::check() && Auth::user()->account->custom_client_label1)
|
|
|
|
,{
|
|
|
|
name: 'data',
|
2016-04-10 14:44:45 +02:00
|
|
|
limit: 3,
|
2016-03-14 09:09:18 +01:00
|
|
|
display: 'value',
|
|
|
|
source: searchData(data['{{ Auth::user()->account->custom_client_label1 }}'], 'tokens'),
|
|
|
|
templates: {
|
|
|
|
header: ' <span style="font-weight:600;font-size:16px">{{ Auth::user()->account->custom_client_label1 }}</span>'
|
|
|
|
}
|
2016-05-15 22:16:08 +02:00
|
|
|
}
|
2016-03-14 09:09:18 +01:00
|
|
|
@endif
|
|
|
|
@if (Auth::check() && Auth::user()->account->custom_client_label2)
|
|
|
|
,{
|
|
|
|
name: 'data',
|
2016-04-10 14:44:45 +02:00
|
|
|
limit: 3,
|
2016-03-14 09:09:18 +01:00
|
|
|
display: 'value',
|
|
|
|
source: searchData(data['{{ Auth::user()->account->custom_client_label2 }}'], 'tokens'),
|
|
|
|
templates: {
|
|
|
|
header: ' <span style="font-weight:600;font-size:16px">{{ Auth::user()->account->custom_client_label2 }}</span>'
|
|
|
|
}
|
2016-05-15 22:16:08 +02:00
|
|
|
}
|
2016-03-14 09:09:18 +01:00
|
|
|
@endif
|
2016-02-29 10:40:52 +01:00
|
|
|
@foreach (['clients', 'contacts', 'invoices', 'quotes', 'navigation'] as $type)
|
|
|
|
,{
|
2016-02-28 21:43:43 +01:00
|
|
|
name: 'data',
|
2016-04-10 14:44:45 +02:00
|
|
|
limit: 3,
|
2016-02-28 21:43:43 +01:00
|
|
|
display: 'value',
|
2016-03-14 09:09:18 +01:00
|
|
|
source: searchData(data['{{ $type }}'], 'tokens', true),
|
2016-02-28 21:43:43 +01:00
|
|
|
templates: {
|
2016-02-29 10:40:52 +01:00
|
|
|
header: ' <span style="font-weight:600;font-size:16px">{{ trans("texts.{$type}") }}</span>'
|
2016-02-28 21:43:43 +01:00
|
|
|
}
|
2016-02-29 10:40:52 +01:00
|
|
|
}
|
|
|
|
@endforeach
|
|
|
|
).on('typeahead:selected', function(element, datum, name) {
|
2016-02-22 22:23:28 +01:00
|
|
|
window.location = datum.url;
|
2016-05-15 22:16:08 +02:00
|
|
|
}).focus();
|
2015-04-22 21:21:04 +02:00
|
|
|
});
|
2016-07-04 09:59:30 +02:00
|
|
|
|
|
|
|
request.error(function(httpObj, textStatus) {
|
|
|
|
// if the session has expried show login page
|
|
|
|
if (httpObj.status == 401) {
|
|
|
|
location.reload();
|
|
|
|
}
|
|
|
|
});
|
2016-02-15 18:58:18 +01:00
|
|
|
}
|
|
|
|
}
|
2016-05-15 22:16:08 +02:00
|
|
|
|
2016-02-15 18:58:18 +01:00
|
|
|
$(function() {
|
2016-05-15 22:16:08 +02:00
|
|
|
window.setTimeout(function() {
|
2016-02-15 18:58:18 +01:00
|
|
|
$(".alert-hide").fadeOut();
|
|
|
|
}, 3000);
|
|
|
|
|
2016-07-11 19:08:43 +02:00
|
|
|
/* Set the defaults for Bootstrap datepicker */
|
|
|
|
$.extend(true, $.fn.datepicker.defaults, {
|
2016-07-31 20:47:29 +02:00
|
|
|
//language: '{{ $appLanguage }}', // causes problems with some languages (ie, fr_CA) if the date includes strings (ie, July 31, 2016)
|
2016-07-11 19:08:43 +02:00
|
|
|
weekStart: {{ Session::get('start_of_week') }}
|
|
|
|
});
|
|
|
|
|
2015-04-22 21:21:04 +02:00
|
|
|
if (isStorageSupported()) {
|
|
|
|
@if (Auth::check() && !Auth::user()->registered)
|
|
|
|
localStorage.setItem('guest_key', '{{ Auth::user()->password }}');
|
|
|
|
@endif
|
|
|
|
}
|
|
|
|
|
|
|
|
@if (!Auth::check() || !Auth::user()->registered)
|
|
|
|
validateSignUp();
|
|
|
|
|
|
|
|
$('#signUpModal').on('shown.bs.modal', function () {
|
2015-06-01 15:06:18 +02:00
|
|
|
trackEvent('/account', '/view_sign_up');
|
2015-04-22 21:21:04 +02:00
|
|
|
$(['first_name','last_name','email','password']).each(function(i, field) {
|
|
|
|
var $input = $('form.signUpForm #new_'+field);
|
|
|
|
if (!$input.val()) {
|
2016-05-15 22:16:08 +02:00
|
|
|
$input.focus();
|
2015-04-22 21:21:04 +02:00
|
|
|
return false;
|
|
|
|
}
|
|
|
|
});
|
|
|
|
})
|
|
|
|
@endif
|
|
|
|
|
|
|
|
@if (Auth::check() && !Utils::isNinja() && !Auth::user()->registered)
|
|
|
|
$('#closeSignUpButton').hide();
|
2016-05-15 22:16:08 +02:00
|
|
|
showSignUp();
|
2015-04-22 21:21:04 +02:00
|
|
|
@elseif(Session::get('sign_up') || Input::get('sign_up'))
|
|
|
|
showSignUp();
|
|
|
|
@endif
|
|
|
|
|
2016-02-17 11:12:39 +01:00
|
|
|
$('ul.navbar-settings, ul.navbar-search').hover(function () {
|
2015-07-12 21:43:45 +02:00
|
|
|
if ($('.user-accounts').css('display') == 'block') {
|
|
|
|
$('.user-accounts').dropdown('toggle');
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
2015-04-22 21:21:04 +02:00
|
|
|
@yield('onReady')
|
|
|
|
|
2015-08-14 14:04:33 +02:00
|
|
|
@if (Input::has('focus'))
|
|
|
|
$('#{{ Input::get('focus') }}').focus();
|
|
|
|
@endif
|
|
|
|
|
2015-10-11 16:41:09 +02:00
|
|
|
// Ensure terms is checked for sign up form
|
|
|
|
@if (Auth::check() && !Auth::user()->registered)
|
|
|
|
setSignupEnabled(false);
|
|
|
|
$("#terms_checkbox").change(function() {
|
|
|
|
setSignupEnabled(this.checked);
|
|
|
|
});
|
|
|
|
@endif
|
|
|
|
|
2016-02-17 10:49:20 +01:00
|
|
|
// Focus the search input if the user clicks forward slash
|
2016-08-23 22:20:03 +02:00
|
|
|
$('#search').focusin(onSearchFocus);
|
|
|
|
|
2016-02-17 10:49:20 +01:00
|
|
|
$('body').keypress(function(event) {
|
2016-02-25 23:07:48 +01:00
|
|
|
if (event.which == 47 && !$('*:focus').length) {
|
2016-02-19 10:41:03 +01:00
|
|
|
event.preventDefault();
|
2016-08-23 22:20:03 +02:00
|
|
|
$('#search').focus();
|
2016-02-17 10:49:20 +01:00
|
|
|
}
|
|
|
|
});
|
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
// manage sidebar state
|
2016-08-23 19:28:45 +02:00
|
|
|
$("#left-menu-toggle").click(function(e) {
|
|
|
|
e.preventDefault();
|
2016-08-31 11:58:31 +02:00
|
|
|
$("#wrapper").toggleClass("toggled-left");
|
|
|
|
|
|
|
|
var toggled = $("#wrapper").hasClass("toggled-left") ? '1' : '0';
|
2016-08-23 22:20:03 +02:00
|
|
|
$.get('{{ url('save_sidebar_state') }}?show_left=' + toggled);
|
2016-08-23 19:28:45 +02:00
|
|
|
});
|
2016-08-23 22:20:03 +02:00
|
|
|
|
2016-08-31 11:58:31 +02:00
|
|
|
$("#right-menu-toggle").click(function(e) {
|
|
|
|
e.preventDefault();
|
|
|
|
$("#wrapper").toggleClass("toggled-right");
|
|
|
|
|
|
|
|
var toggled = $("#wrapper").hasClass("toggled-right") ? '1' : '0';
|
|
|
|
$.get('{{ url('save_sidebar_state') }}?show_right=' + toggled);
|
|
|
|
});
|
|
|
|
|
2016-09-05 14:28:59 +02:00
|
|
|
if (window.location.hash) {
|
|
|
|
setTimeout(function() {
|
|
|
|
$('.nav-tabs a[href="' + window.location.hash + '"]').tab('show');
|
|
|
|
}, 1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2015-04-22 21:21:04 +02:00
|
|
|
});
|
|
|
|
|
2016-05-15 22:16:08 +02:00
|
|
|
</script>
|
2015-04-22 21:21:04 +02:00
|
|
|
|
2013-12-07 19:45:00 +01:00
|
|
|
@stop
|
2013-11-27 08:38:37 +01:00
|
|
|
|
2013-12-07 19:45:00 +01:00
|
|
|
@section('body')
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-08-23 19:28:45 +02:00
|
|
|
<nav class="navbar navbar-default navbar-fixed-top" role="navigation" style="height:60px;">
|
2014-04-03 19:54:06 +02:00
|
|
|
|
|
|
|
<div class="navbar-header">
|
|
|
|
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse-1">
|
|
|
|
<span class="sr-only">Toggle navigation</span>
|
|
|
|
<span class="icon-bar"></span>
|
|
|
|
<span class="icon-bar"></span>
|
|
|
|
<span class="icon-bar"></span>
|
|
|
|
</button>
|
2016-09-01 17:52:26 +02:00
|
|
|
<a href="#" id="left-menu-toggle" class="menu-toggle" title="{{ trans('texts.toggle_navigation') }}">
|
|
|
|
<div class="navbar-brand">
|
2016-09-01 17:57:04 +02:00
|
|
|
<i class="fa fa-bars hide-phone" style="width:32px;padding-top:2px;float:left"></i>
|
2016-09-01 17:52:26 +02:00
|
|
|
{{-- Per our license, please do not remove or modify this link. --}}
|
|
|
|
<img src="{{ asset('images/invoiceninja-logo.png') }}" width="193" height="25" style="float:left"/>
|
|
|
|
</div>
|
|
|
|
</a>
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
|
|
|
|
2016-09-01 17:52:26 +02:00
|
|
|
<a id="right-menu-toggle" class="menu-toggle hide-phone pull-right" title="{{ trans('texts.toggle_history') }}" style="cursor:pointer">
|
2016-09-01 17:57:04 +02:00
|
|
|
<div class="fa fa-bars"></div>
|
2016-09-01 17:52:26 +02:00
|
|
|
</a>
|
|
|
|
|
2014-04-03 19:54:06 +02:00
|
|
|
<div class="collapse navbar-collapse" id="navbar-collapse-1">
|
2016-09-01 17:52:26 +02:00
|
|
|
<div class="navbar-form navbar-right">
|
2016-08-23 12:42:17 +02:00
|
|
|
|
2014-05-25 12:57:19 +02:00
|
|
|
@if (Auth::check())
|
|
|
|
@if (!Auth::user()->registered)
|
2016-02-15 18:58:18 +01:00
|
|
|
{!! Button::success(trans('texts.sign_up'))->withAttributes(array('id' => 'signUpButton', 'data-toggle'=>'modal', 'data-target'=>'#signUpModal', 'style' => 'max-width:100px;;overflow:hidden'))->small() !!}
|
2016-02-11 16:12:27 +01:00
|
|
|
@elseif (Utils::isNinjaProd() && (!Auth::user()->isPro() || Auth::user()->isTrial()))
|
2016-06-05 20:05:11 +02:00
|
|
|
{!! Button::success(trans('texts.plan_upgrade'))->asLinkTo(url('/settings/account_management?upgrade=true'))->withAttributes(array('style' => 'max-width:100px;overflow:hidden'))->small() !!}
|
2014-05-25 12:57:19 +02:00
|
|
|
@endif
|
2014-04-22 22:10:14 +02:00
|
|
|
@endif
|
2014-03-19 17:17:26 +01:00
|
|
|
|
2015-06-16 21:35:35 +02:00
|
|
|
<div class="btn-group user-dropdown">
|
2014-04-03 19:54:06 +02:00
|
|
|
<button type="button" class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown">
|
2016-08-23 22:20:03 +02:00
|
|
|
<div id="myAccountButton" class="ellipsis" style="max-width:{{ Utils::hasFeature(FEATURE_USERS) ? '130' : '100' }}px;">
|
2015-06-16 21:35:35 +02:00
|
|
|
@if (session(SESSION_USER_ACCOUNTS) && count(session(SESSION_USER_ACCOUNTS)))
|
|
|
|
{{ Auth::user()->account->getDisplayName() }}
|
|
|
|
@else
|
|
|
|
{{ Auth::user()->getDisplayName() }}
|
|
|
|
@endif
|
2014-11-12 16:22:54 +01:00
|
|
|
<span class="caret"></span>
|
2016-03-14 22:37:13 +01:00
|
|
|
</div>
|
2016-05-15 22:16:08 +02:00
|
|
|
</button>
|
2015-08-03 09:15:58 +02:00
|
|
|
<ul class="dropdown-menu user-accounts">
|
2015-06-16 21:35:35 +02:00
|
|
|
@if (session(SESSION_USER_ACCOUNTS))
|
|
|
|
@foreach (session(SESSION_USER_ACCOUNTS) as $item)
|
2015-07-07 22:08:16 +02:00
|
|
|
@if ($item->user_id == Auth::user()->id)
|
|
|
|
@include('user_account', [
|
|
|
|
'user_account_id' => $item->id,
|
|
|
|
'user_id' => $item->user_id,
|
|
|
|
'account_name' => $item->account_name,
|
|
|
|
'user_name' => $item->user_name,
|
2016-03-22 21:19:55 +01:00
|
|
|
'logo_url' => isset($item->logo_url) ? $item->logo_url : "",
|
2015-07-07 22:08:16 +02:00
|
|
|
'selected' => true,
|
|
|
|
])
|
|
|
|
@endif
|
|
|
|
@endforeach
|
|
|
|
@foreach (session(SESSION_USER_ACCOUNTS) as $item)
|
|
|
|
@if ($item->user_id != Auth::user()->id)
|
|
|
|
@include('user_account', [
|
|
|
|
'user_account_id' => $item->id,
|
|
|
|
'user_id' => $item->user_id,
|
|
|
|
'account_name' => $item->account_name,
|
|
|
|
'user_name' => $item->user_name,
|
2016-03-22 21:19:55 +01:00
|
|
|
'logo_url' => isset($item->logo_url) ? $item->logo_url : "",
|
2015-07-07 22:08:16 +02:00
|
|
|
'selected' => false,
|
|
|
|
])
|
|
|
|
@endif
|
2015-06-16 21:35:35 +02:00
|
|
|
@endforeach
|
|
|
|
@else
|
2015-07-07 22:08:16 +02:00
|
|
|
@include('user_account', [
|
2016-05-15 22:16:08 +02:00
|
|
|
'account_name' => Auth::user()->account->name ?: trans('texts.untitled'),
|
2015-07-07 22:08:16 +02:00
|
|
|
'user_name' => Auth::user()->getDisplayName(),
|
2016-03-22 21:19:55 +01:00
|
|
|
'logo_url' => Auth::user()->account->getLogoURL(),
|
2015-07-07 22:08:16 +02:00
|
|
|
'selected' => true,
|
|
|
|
])
|
2016-05-15 22:16:08 +02:00
|
|
|
@endif
|
2016-03-16 00:08:00 +01:00
|
|
|
<li class="divider"></li>
|
|
|
|
@if (Utils::isAdmin())
|
|
|
|
@if (count(session(SESSION_USER_ACCOUNTS)) > 1)
|
|
|
|
<li>{!! link_to('/manage_companies', trans('texts.manage_companies')) !!}</li>
|
|
|
|
@elseif (!session(SESSION_USER_ACCOUNTS) || count(session(SESSION_USER_ACCOUNTS)) < 5)
|
|
|
|
<li>{!! link_to('/login?new_company=true', trans('texts.add_company')) !!}</li>
|
|
|
|
@endif
|
2015-08-03 09:15:58 +02:00
|
|
|
@endif
|
2015-06-16 21:35:35 +02:00
|
|
|
<li>{!! link_to('#', trans('texts.logout'), array('onclick'=>'logout()')) !!}</li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
|
2016-05-15 22:16:08 +02:00
|
|
|
</div>
|
|
|
|
|
2016-08-23 12:42:17 +02:00
|
|
|
<form id="search-form" class="navbar-form navbar-right" role="search">
|
|
|
|
<div class="form-group">
|
|
|
|
<input type="text" id="search" style="width: 240px;padding-top:0px;padding-bottom:0px"
|
|
|
|
class="form-control" placeholder="{{ trans('texts.search') . ': ' . trans('texts.search_hotkey')}}">
|
|
|
|
</div>
|
|
|
|
</form>
|
|
|
|
|
|
|
|
@if (false && Utils::isAdmin())
|
2016-08-18 21:52:59 +02:00
|
|
|
<ul class="nav navbar-nav navbar-right">
|
|
|
|
<li class="dropdown">
|
2016-08-23 12:42:17 +02:00
|
|
|
@section('self-updater')
|
2016-08-18 21:52:59 +02:00
|
|
|
<a href="{{ URL::to('self-update') }}" class="dropdown-toggle">
|
|
|
|
<span class="glyphicon glyphicon-cloud-download" title="{{ trans('texts.update_invoiceninja_title') }}"></span>
|
|
|
|
</a>
|
|
|
|
@show
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
@endif
|
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
<ul class="nav navbar-nav hide-non-phone" style="font-weight: bold">
|
|
|
|
@foreach ([
|
|
|
|
'dashboard' => false,
|
|
|
|
'clients' => false,
|
|
|
|
'credits' => false,
|
|
|
|
'tasks' => false,
|
|
|
|
'expenses' => false,
|
|
|
|
'vendors' => false,
|
|
|
|
'quotes' => false,
|
|
|
|
'invoices' => false,
|
|
|
|
'recurring_invoices' => 'recurring',
|
|
|
|
'payments' => false,
|
|
|
|
'settings' => false,
|
|
|
|
] as $key => $value)
|
|
|
|
{!! Form::nav_link($key, $value ?: $key) !!}
|
|
|
|
@endforeach
|
|
|
|
</ul>
|
2016-08-23 12:42:17 +02:00
|
|
|
</div><!-- /.navbar-collapse -->
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-08-23 12:42:17 +02:00
|
|
|
</nav>
|
2016-08-31 11:58:31 +02:00
|
|
|
|
|
|
|
<div id="wrapper" class='{!! session(SESSION_LEFT_SIDEBAR) ? 'toggled-left' : '' !!} {!! session(SESSION_RIGHT_SIDEBAR, true) ? 'toggled-right' : '' !!}'>
|
2016-08-23 12:42:17 +02:00
|
|
|
|
|
|
|
<!-- Sidebar -->
|
2016-09-01 17:52:26 +02:00
|
|
|
<div id="left-sidebar-wrapper" class="hide-phone">
|
2016-08-31 21:10:41 +02:00
|
|
|
<ul class="sidebar-nav">
|
2016-08-23 12:42:17 +02:00
|
|
|
@foreach([
|
2016-08-31 21:10:41 +02:00
|
|
|
'dashboard',
|
|
|
|
'clients',
|
|
|
|
'invoices',
|
|
|
|
'payments',
|
|
|
|
'recurring_invoices',
|
|
|
|
'credits',
|
|
|
|
'quotes',
|
|
|
|
'tasks',
|
|
|
|
'expenses',
|
|
|
|
'vendors',
|
|
|
|
'settings'
|
|
|
|
] as $option)
|
|
|
|
<li class="{{ Request::is("{$option}*") ? 'active' : '' }}">
|
2016-09-02 16:53:16 +02:00
|
|
|
@if ($option == 'settings')
|
|
|
|
<a type="button" class="btn btn-default btn-sm pull-right"
|
|
|
|
href="{{ url(NINJA_DOCS_URL) }}" target="_blank">
|
|
|
|
<i class="fa fa-question-circle" style="width:20px" title="{{ trans('texts.help') }}"></i>
|
|
|
|
</a>
|
|
|
|
@elseif ($option != 'dashboard')
|
2016-08-31 11:58:31 +02:00
|
|
|
@if (Auth::user()->can('create', substr($option, 0, -1)))
|
2016-09-02 16:53:16 +02:00
|
|
|
<a type="button" class="btn btn-primary btn-sm pull-right"
|
2016-08-31 11:58:31 +02:00
|
|
|
href="{{ url("/{$option}/create") }}">
|
2016-08-31 21:10:41 +02:00
|
|
|
<i class="fa fa-plus-circle" style="width:20px" title="{{ trans('texts.create_new') }}"></i>
|
2016-08-31 11:58:31 +02:00
|
|
|
</a>
|
|
|
|
@endif
|
|
|
|
@endif
|
|
|
|
<a href="{{ url($option == 'recurring' ? 'recurring_invoice' : $option) }}"
|
2016-08-23 19:28:45 +02:00
|
|
|
style="font-size:16px; padding-top:6px; padding-bottom:6px"
|
2016-08-23 12:42:17 +02:00
|
|
|
class="{{ Request::is("{$option}*") ? 'active' : '' }}">
|
2016-08-31 21:10:41 +02:00
|
|
|
<i class="fa fa-{{ \App\Models\EntityModel::getIcon($option) }}" style="width:46px; padding-right:10px"></i>
|
2016-08-23 19:28:45 +02:00
|
|
|
{{ ($option == 'recurring_invoices') ? trans('texts.recurring') : trans("texts.{$option}") }}
|
2016-08-31 11:58:31 +02:00
|
|
|
</a>
|
2016-08-23 12:42:17 +02:00
|
|
|
</li>
|
|
|
|
@endforeach
|
|
|
|
</ul>
|
|
|
|
</div>
|
2016-08-31 11:58:31 +02:00
|
|
|
<!-- /#left-sidebar-wrapper -->
|
|
|
|
|
2016-09-02 16:53:16 +02:00
|
|
|
<div id="right-sidebar-wrapper" class="hide-phone" style="overflow-y:hidden">
|
2016-08-31 21:10:41 +02:00
|
|
|
<ul class="sidebar-nav">
|
2016-09-01 17:52:26 +02:00
|
|
|
{!! \App\Libraries\HistoryUtils::renderHtml(Auth::user()->account_id) !!}
|
2016-08-31 21:10:41 +02:00
|
|
|
</ul>
|
2016-08-31 11:58:31 +02:00
|
|
|
</div>
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-08-23 12:42:17 +02:00
|
|
|
<!-- Page Content -->
|
|
|
|
<div id="page-content-wrapper">
|
|
|
|
<div class="container-fluid">
|
2016-02-15 18:58:18 +01:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
@include('partials.warn_session', ['redirectTo' => '/dashboard'])
|
2016-05-15 22:16:08 +02:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
@if (Session::has('warning'))
|
|
|
|
<div class="alert alert-warning">{!! Session::get('warning') !!}</div>
|
|
|
|
@endif
|
2016-05-15 22:16:08 +02:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
@if (Session::has('message'))
|
|
|
|
<div class="alert alert-info alert-hide">
|
|
|
|
{{ Session::get('message') }}
|
|
|
|
</div>
|
|
|
|
@elseif (Session::has('news_feed_message'))
|
|
|
|
<div class="alert alert-info">
|
|
|
|
{!! Session::get('news_feed_message') !!}
|
|
|
|
<a href="#" onclick="hideMessage()" class="pull-right">{{ trans('texts.hide') }}</a>
|
|
|
|
</div>
|
|
|
|
@endif
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
@if (Session::has('error'))
|
|
|
|
<div class="alert alert-danger">{!! Session::get('error') !!}</div>
|
|
|
|
@endif
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
@if (!isset($showBreadcrumbs) || $showBreadcrumbs)
|
|
|
|
{!! Form::breadcrumbs(isset($entityStatus) ? $entityStatus : '') !!}
|
|
|
|
@endif
|
2014-04-03 19:54:06 +02:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
@yield('content')
|
2016-09-01 17:52:26 +02:00
|
|
|
<br/>
|
2016-08-23 22:20:03 +02:00
|
|
|
<div class="row">
|
|
|
|
<div class="col-md-12">
|
2015-09-26 23:08:59 +02:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
@if (Utils::isNinjaProd())
|
|
|
|
@if (Auth::check() && Auth::user()->isTrial())
|
|
|
|
{!! trans(Auth::user()->account->getCountTrialDaysLeft() == 0 ? 'texts.trial_footer_last_day' : 'texts.trial_footer', [
|
|
|
|
'count' => Auth::user()->account->getCountTrialDaysLeft(),
|
|
|
|
'link' => link_to('/settings/account_management?upgrade=true', trans('texts.click_here'))
|
|
|
|
]) !!}
|
|
|
|
@endif
|
|
|
|
@else
|
|
|
|
{{ trans('texts.powered_by') }}
|
|
|
|
{{-- Per our license, please do not remove or modify this section. --}}
|
|
|
|
{!! link_to('https://www.invoiceninja.com/?utm_source=powered_by', 'InvoiceNinja.com', ['target' => '_blank', 'title' => 'invoiceninja.com']) !!} -
|
|
|
|
{!! link_to(RELEASES_URL, 'v' . NINJA_VERSION, ['target' => '_blank', 'title' => trans('texts.trello_roadmap')]) !!} |
|
|
|
|
@if (Auth::user()->account->hasFeature(FEATURE_WHITE_LABEL))
|
|
|
|
{{ trans('texts.white_labeled') }}
|
|
|
|
@else
|
|
|
|
<a href="#" onclick="loadImages('#whiteLabelModal');$('#whiteLabelModal').modal('show');">{{ trans('texts.white_label_link') }}</a>
|
|
|
|
|
|
|
|
<div class="modal fade" id="whiteLabelModal" tabindex="-1" role="dialog" aria-labelledby="whiteLabelModalLabel" aria-hidden="true">
|
|
|
|
<div class="modal-dialog">
|
|
|
|
<div class="modal-content">
|
|
|
|
<div class="modal-header">
|
|
|
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
|
|
|
<h4 class="modal-title" id="myModalLabel">{{ trans('texts.white_label_header') }}</h4>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="panel-body">
|
|
|
|
<p>{{ trans('texts.white_label_text', ['price' => WHITE_LABEL_PRICE])}}</p>
|
|
|
|
<div class="row">
|
|
|
|
<div class="col-md-6">
|
|
|
|
<h4>{{ trans('texts.before') }}</h4>
|
|
|
|
<img src="{{ BLANK_IMAGE }}" data-src="{{ asset('images/pro_plan/white_label_before.png') }}" width="100%" alt="before">
|
|
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
|
|
|
<h4>{{ trans('texts.after') }}</h4>
|
|
|
|
<img src="{{ BLANK_IMAGE }}" data-src="{{ asset('images/pro_plan/white_label_after.png') }}" width="100%" alt="after">
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2014-03-18 21:43:12 +01:00
|
|
|
|
2016-08-23 22:20:03 +02:00
|
|
|
<div class="modal-footer" id="signUpFooter" style="margin-top: 0px">
|
|
|
|
<button type="button" class="btn btn-default" data-dismiss="modal">{{ trans('texts.close') }} </button>
|
|
|
|
{{-- DropdownButton::success_lg(trans('texts.buy'), [
|
|
|
|
['url' => URL::to(""), 'label' => trans('texts.pay_with_paypal')],
|
|
|
|
['url' => URL::to(""), 'label' => trans('texts.pay_with_card')]
|
|
|
|
])->addClass('btn-lg') --}}
|
|
|
|
<button type="button" class="btn btn-primary" onclick="buyProduct('{{ WHITE_LABEL_AFFILIATE_KEY }}', '{{ PRODUCT_WHITE_LABEL }}')">{{ trans('texts.buy') }} </button>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
@endif
|
|
|
|
</div>
|
|
|
|
@endif
|
|
|
|
</div>
|
2016-08-23 12:42:17 +02:00
|
|
|
</div>
|
2016-08-23 22:20:03 +02:00
|
|
|
|
2014-10-05 23:00:42 +02:00
|
|
|
</div>
|
2016-08-23 12:42:17 +02:00
|
|
|
<!-- /#page-content-wrapper -->
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
|
|
|
|
2016-08-23 12:42:17 +02:00
|
|
|
|
2014-04-03 19:54:06 +02:00
|
|
|
@if (!Auth::check() || !Auth::user()->registered)
|
|
|
|
<div class="modal fade" id="signUpModal" tabindex="-1" role="dialog" aria-labelledby="signUpModalLabel" aria-hidden="true">
|
|
|
|
<div class="modal-dialog">
|
|
|
|
<div class="modal-content">
|
|
|
|
<div class="modal-header">
|
|
|
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
2014-04-06 11:02:04 +02:00
|
|
|
<h4 class="modal-title" id="myModalLabel">{{ trans('texts.sign_up') }}</h4>
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
|
|
|
|
|
|
|
<div style="background-color: #fff; padding-right:20px" id="signUpDiv" onkeyup="validateSignUp()" onclick="validateSignUp()" onkeydown="checkForEnter(event)">
|
|
|
|
<br/>
|
|
|
|
|
2015-11-09 15:53:18 +01:00
|
|
|
{!! Former::open('signup/submit')->addClass('signUpForm')->autocomplete('on') !!}
|
2014-04-03 19:54:06 +02:00
|
|
|
|
|
|
|
@if (Auth::check())
|
2015-03-26 04:48:41 +01:00
|
|
|
{!! Former::populateField('new_first_name', Auth::user()->first_name) !!}
|
|
|
|
{!! Former::populateField('new_last_name', Auth::user()->last_name) !!}
|
|
|
|
{!! Former::populateField('new_email', Auth::user()->email) !!}
|
2014-04-03 19:54:06 +02:00
|
|
|
@endif
|
|
|
|
|
2014-04-13 10:19:10 +02:00
|
|
|
<div style="display:none">
|
2015-03-26 04:48:41 +01:00
|
|
|
{!! Former::text('path')->value(Request::path()) !!}
|
|
|
|
{!! Former::text('go_pro') !!}
|
2014-04-13 10:19:10 +02:00
|
|
|
</div>
|
|
|
|
|
2016-05-15 22:16:08 +02:00
|
|
|
|
2015-10-11 16:41:09 +02:00
|
|
|
<div class="row signup-form">
|
|
|
|
<div class="col-md-11 col-md-offset-1">
|
|
|
|
{!! Former::checkbox('terms_checkbox')->label(' ')->text(trans('texts.agree_to_terms', ['terms' => '<a href="'.URL::to('terms').'" target="_blank">'.trans('texts.terms_of_service').'</a>']))->raw() !!}
|
|
|
|
<br/>
|
|
|
|
</div>
|
2015-11-01 19:21:11 +01:00
|
|
|
@if (Utils::isOAuthEnabled())
|
2015-10-11 16:41:09 +02:00
|
|
|
<div class="col-md-4 col-md-offset-1">
|
|
|
|
<h4>{{ trans('texts.sign_up_using') }}</h4><br/>
|
2015-10-18 09:30:28 +02:00
|
|
|
@foreach (App\Services\AuthService::$providers as $provider)
|
2016-05-15 22:16:08 +02:00
|
|
|
<a href="{{ URL::to('auth/' . $provider) }}" class="btn btn-primary btn-block"
|
2015-10-18 09:30:28 +02:00
|
|
|
onclick="setSocialLoginProvider('{{ strtolower($provider) }}')" id="{{ strtolower($provider) }}LoginButton">
|
|
|
|
<i class="fa fa-{{ strtolower($provider) }}"></i>
|
|
|
|
{{ $provider }}
|
|
|
|
</a>
|
|
|
|
@endforeach
|
2015-10-11 16:41:09 +02:00
|
|
|
</div>
|
|
|
|
<div class="col-md-1">
|
|
|
|
<div style="border-right:thin solid #CCCCCC;height:110px;width:8px;margin-bottom:10px;"></div>
|
|
|
|
{{ trans('texts.or') }}
|
|
|
|
<div style="border-right:thin solid #CCCCCC;height:110px;width:8px;margin-top:10px;"></div>
|
|
|
|
</div>
|
|
|
|
<div class="col-md-6">
|
2016-05-15 22:16:08 +02:00
|
|
|
@else
|
2015-10-11 16:41:09 +02:00
|
|
|
<div class="col-md-12">
|
|
|
|
@endif
|
|
|
|
{{ Former::setOption('TwitterBootstrap3.labelWidths.large', 1) }}
|
|
|
|
{{ Former::setOption('TwitterBootstrap3.labelWidths.small', 1) }}
|
2016-05-15 22:16:08 +02:00
|
|
|
|
2015-11-09 15:53:18 +01:00
|
|
|
{!! Former::text('new_first_name')
|
|
|
|
->placeholder(trans('texts.first_name'))
|
|
|
|
->autocomplete('given-name')
|
|
|
|
->label(' ') !!}
|
|
|
|
{!! Former::text('new_last_name')
|
|
|
|
->placeholder(trans('texts.last_name'))
|
|
|
|
->autocomplete('family-name')
|
|
|
|
->label(' ') !!}
|
|
|
|
{!! Former::text('new_email')
|
|
|
|
->placeholder(trans('texts.email'))
|
|
|
|
->autocomplete('email')
|
|
|
|
->label(' ') !!}
|
|
|
|
{!! Former::password('new_password')
|
|
|
|
->placeholder(trans('texts.password'))
|
|
|
|
->label(' ') !!}
|
2016-05-15 22:16:08 +02:00
|
|
|
|
2015-10-11 16:41:09 +02:00
|
|
|
{{ Former::setOption('TwitterBootstrap3.labelWidths.large', 4) }}
|
|
|
|
{{ Former::setOption('TwitterBootstrap3.labelWidths.small', 4) }}
|
|
|
|
</div>
|
2016-02-11 16:12:27 +01:00
|
|
|
|
|
|
|
<div class="col-md-11 col-md-offset-1">
|
|
|
|
<div style="padding-top:20px;padding-bottom:10px;">{{ trans('texts.trial_message') }}</div>
|
|
|
|
</div>
|
2015-10-11 16:41:09 +02:00
|
|
|
</div>
|
|
|
|
|
2015-03-26 04:48:41 +01:00
|
|
|
{!! Former::close() !!}
|
2016-05-15 22:16:08 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
2014-04-06 11:02:04 +02:00
|
|
|
<center><div id="errorTaken" style="display:none"> <br/>{{ trans('texts.email_taken') }}</div></center>
|
2014-04-03 19:54:06 +02:00
|
|
|
<br/>
|
2014-03-10 12:04:15 +01:00
|
|
|
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
2013-12-02 20:54:24 +01:00
|
|
|
|
2014-04-03 19:54:06 +02:00
|
|
|
<div style="padding-left:40px;padding-right:40px;display:none;min-height:130px" id="working">
|
2014-04-06 11:02:04 +02:00
|
|
|
<h3>{{ trans('texts.working') }}...</h3>
|
2014-04-03 19:54:06 +02:00
|
|
|
<div class="progress progress-striped active">
|
|
|
|
<div class="progress-bar" role="progressbar" aria-valuenow="100" aria-valuemin="0" aria-valuemax="100" style="width: 100%"></div>
|
|
|
|
</div>
|
2014-01-30 23:29:09 +01:00
|
|
|
</div>
|
|
|
|
|
2014-02-23 15:51:52 +01:00
|
|
|
<div style="background-color: #fff; padding-right:20px;padding-left:20px; display:none" id="signUpSuccessDiv">
|
2014-04-03 19:54:06 +02:00
|
|
|
<br/>
|
2014-04-06 11:02:04 +02:00
|
|
|
<h3>{{ trans('texts.success') }}</h3>
|
2014-11-11 09:29:43 +01:00
|
|
|
@if (Utils::isNinja())
|
2014-11-19 20:51:53 +01:00
|
|
|
{{ trans('texts.success_message') }}
|
2014-11-11 09:29:43 +01:00
|
|
|
@endif
|
2014-11-19 20:51:53 +01:00
|
|
|
<br/>
|
2014-01-30 23:29:09 +01:00
|
|
|
</div>
|
|
|
|
|
2016-05-15 22:16:08 +02:00
|
|
|
<div class="modal-footer" id="signUpFooter" style="margin-top: 0px">
|
2014-11-11 09:29:43 +01:00
|
|
|
<button type="button" class="btn btn-default" id="closeSignUpButton" data-dismiss="modal">{{ trans('texts.close') }} <i class="glyphicon glyphicon-remove-circle"></i></button>
|
2014-04-10 21:29:01 +02:00
|
|
|
<button type="button" class="btn btn-primary" id="saveSignUpButton" onclick="validateServerSignUp()" disabled>{{ trans('texts.save') }} <i class="glyphicon glyphicon-floppy-disk"></i></button>
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2014-03-05 21:56:34 +01:00
|
|
|
|
2014-04-03 19:54:06 +02:00
|
|
|
|
|
|
|
<div class="modal fade" id="logoutModal" tabindex="-1" role="dialog" aria-labelledby="logoutModalLabel" aria-hidden="true">
|
|
|
|
<div class="modal-dialog">
|
|
|
|
<div class="modal-content">
|
|
|
|
<div class="modal-header">
|
|
|
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
2014-04-06 11:02:04 +02:00
|
|
|
<h4 class="modal-title" id="myModalLabel">{{ trans('texts.logout') }}</h4>
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
|
|
|
|
2016-05-15 22:16:08 +02:00
|
|
|
<div class="container">
|
2014-04-06 11:02:04 +02:00
|
|
|
<h3>{{ trans('texts.are_you_sure') }}</h3>
|
2016-05-15 22:16:08 +02:00
|
|
|
<p>{{ trans('texts.erase_data') }}</p>
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
|
|
|
|
2016-05-15 22:16:08 +02:00
|
|
|
<div class="modal-footer" id="signUpFooter">
|
2014-04-06 11:02:04 +02:00
|
|
|
<button type="button" class="btn btn-default" data-dismiss="modal">{{ trans('texts.cancel') }}</button>
|
2016-05-15 22:16:08 +02:00
|
|
|
<button type="button" class="btn btn-primary" onclick="logout(true)">{{ trans('texts.logout') }}</button>
|
2014-04-03 19:54:06 +02:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
@endif
|
|
|
|
|
2015-10-14 16:15:39 +02:00
|
|
|
</div>
|
2014-04-03 19:54:06 +02:00
|
|
|
|
|
|
|
<p> </p>
|
|
|
|
|
2014-03-19 17:17:26 +01:00
|
|
|
|
2016-05-10 21:41:30 +02:00
|
|
|
@stop
|