Updated Quote and Invoice GUI further adding footers to the html printables, added Quote view with details and an alert

This commit is contained in:
johnny@pittpc.com 2019-09-14 22:57:48 -04:00
parent 62b088e79d
commit f4557a961d
7 changed files with 71 additions and 72 deletions

View File

@ -56,6 +56,7 @@ if(isset($_GET['invoice_id'], $_GET['url_key'])){
}
$config_company_email = $row['config_company_email'];
$config_invoice_logo = $row['config_invoice_logo'];
$config_invoice_footer = $row['config_invoice_footer'];
$config_stripe_enable = $row['config_stripe_enable'];
$config_stripe_publishable = $row['config_stripe_publishable'];
$config_stripe_secret = $row['config_stripe_secret'];
@ -132,9 +133,7 @@ if(isset($_GET['invoice_id'], $_GET['url_key'])){
</div>
</div>
<div class="row mb-4">
<div class="col-sm">
<div class="col-sm">
<ul class="list-unstyled">
<li><h4><strong><?php echo $company_name; ?></strong></h4></li>
<li><?php echo $config_company_address; ?></li>
@ -269,6 +268,9 @@ if(isset($_GET['invoice_id'], $_GET['url_key'])){
</div>
</div>
<hr class="mt-5">
<center><?php echo $config_invoice_footer; ?></center>
<?php
}else{

View File

@ -56,9 +56,18 @@ if(isset($_GET['quote_id'], $_GET['url_key'])){
}
$config_company_email = $row['config_company_email'];
$config_invoice_logo = $row['config_invoice_logo'];
$config_quote_footer = $row['config_quote_footer'];
$ip = get_ip();
$os = get_os();
$browser = get_web_browser();
$device = get_device();
//Mark viewed in history
mysqli_query($mysqli,"INSERT INTO history SET history_date = CURDATE(), history_status = '$quote_status', history_description = 'Quote viewed', history_created_at = NOW(), quote_id = $quote_id, company_id = $company_id");
//Mark viewed in history
mysqli_query($mysqli,"INSERT INTO history SET history_date = CURDATE(), history_status = '$quote_status', history_description = 'Quote viewed - $ip - $os - $browser - $device', history_created_at = NOW(), quote_id = $quote_id, company_id = $company_id");
mysqli_query($mysqli,"INSERT INTO alerts SET alert_type = 'Quote Viewed', alert_message = 'Quote $quote_number has been viewed by $client_name - $ip - $os - $browser - $device', alert_date = NOW(), company_id = $company_id");
//Update status to Viewed only if invoice_status = "Sent"
if($quote_status == 'Sent'){
@ -81,10 +90,7 @@ if(isset($_GET['quote_id'], $_GET['url_key'])){
?>
<div class="row d-print-none">
<div class="col-md-6">
<h2>Quote <?php echo $quote_number; ?><span class="p-2 ml-2 badge badge-<?php echo $quote_badge_color; ?>"><?php echo $quote_status; ?></span></h2>
</div>
<div class="col-md-6">
<div class="col-md-12">
<div class="float-right">
<a class="btn btn-primary" href="#" onclick="window.print();"><i class="fa fa-fw fa-print"></i> Print</a>
<a class="btn btn-primary" download target="_blank" href="guest_post.php?pdf_quote=<?php echo $quote_id; ?>&url_key=<?php echo $url_key; ?>"><i class="fa fa-fw fa-download"></i> Download</a>
@ -98,59 +104,52 @@ if(isset($_GET['quote_id'], $_GET['url_key'])){
</div>
</div>
<hr>
<hr class="d-print-none">
<div class="row mb-4">
<div class="col-sm-2">
<img class="img-fluid" src="<?php echo $config_invoice_logo; ?>">
</div>
</div>
<div class="col-sm-10">
<h3 class="text-right"><strong>Quote</strong><br><small class="text-secondary"><?php echo $quote_number; ?></small></h3>
</div>
</div>
<div class="row mb-4">
<div class="col-sm">
<div class="card">
<div class="card-header">
From
</div>
<div class="card-body">
<ul class="list-unstyled">
<li><strong><?php echo $company_name; ?></strong></li>
<li><?php echo $config_company_address; ?></li>
<li class="mb-3"><?php echo "$config_company_city $config_company_state $config_company_zip"; ?></li>
<li><?php echo $config_company_phone; ?></li>
<li><?php echo $config_company_email; ?></li>
</ul>
</div>
</div>
<ul class="list-unstyled">
<li><h4><strong><?php echo $company_name; ?></strong></h4></li>
<li><?php echo $config_company_address; ?></li>
<li><?php echo "$config_company_city $config_company_state $config_company_zip"; ?></li>
<li>P: <?php echo $config_company_phone; ?></li>
<li><?php echo $config_company_email; ?></li>
</ul>
</div>
<div class="col-sm">
<div class="card">
<div class="card-header">
Quote To
</div>
<div class="card-body">
<ul class="list-unstyled">
<li><strong><?php echo $client_name; ?></strong></li>
<li><?php echo $client_address; ?></li>
<li class="mb-3"><?php echo "$client_city $client_state $client_zip"; ?></li>
<li><?php echo $client_phone; ?></li>
<li><?php echo $client_email; ?></li>
</ul>
</div>
</div>
<ul class="list-unstyled text-right">
<li><h4><strong><?php echo $client_name; ?></strong></h4></li>
<li><?php echo $client_address; ?></li>
<li><?php echo "$client_city $client_state $client_zip"; ?></li>
<li>P: <?php echo $client_phone; ?></li>
<li>E: <?php echo $client_email; ?></li>
</ul>
</div>
<div class="col-sm">
<div class="card">
<div class="card-header">
Details
</div>
<div class="card-body">
<ul class="list-unstyled">
<li class="mb-1"><strong>Quote Number:</strong> <div class="float-right"><?php echo $quote_number; ?></div></li>
<li class="mb-1"><strong>Quote Date:</strong> <div class="float-right"><?php echo $quote_date; ?></div></li>
</ul>
</div>
</div>
</div>
<div class="row mb-4">
<div class="col-sm-8">
</div>
<div class="col-sm-4">
<table class="table">
<tr>
<td>Quote Date</td>
<td class="text-right"><?php echo $quote_date; ?></td>
</tr>
</table>
</div>
</div>
@ -159,10 +158,6 @@ if(isset($_GET['quote_id'], $_GET['url_key'])){
<div class="row mb-4">
<div class="col-md-12">
<div class="card">
<div class="card-header">
Items
</div>
<table class="table">
<thead>
<tr>
@ -215,9 +210,6 @@ if(isset($_GET['quote_id'], $_GET['url_key'])){
<div class="row mb-4">
<div class="col-7">
<div class="card">
<div class="card-header">
Notes
</div>
<div class="card-body">
<div><?php echo $quote_note; ?></div>
</div>
@ -252,6 +244,10 @@ if(isset($_GET['quote_id'], $_GET['url_key'])){
</div>
</div>
<hr class="mt-5">
<center><?php echo $config_quote_footer; ?></center>
<?php
}else{
echo "GTFO";

View File

@ -285,6 +285,10 @@ if(isset($_GET['invoice_id'])){
</form>
<hr class="d-none d-print-block mt-5">
<center class="d-none d-print-block"><?php echo $config_invoice_footer; ?></center>
<div class="row d-print-none mb-3">
<div class="col-sm">
<div class="card">

View File

@ -102,7 +102,7 @@ if(isset($_POST['add_company'])){
mkdir("uploads/settings/$company_id");
mkdir("uploads/tmp/$company_id");
mysqli_query($mysqli,"INSERT INTO settings SET company_id = $company_id, config_company_name = '$name', config_invoice_prefix = 'INV-', config_invoice_next_number = 1, config_invoice_overdue_reminders = '1,3,7', config_quote_prefix = 'QUO-', config_quote_next_number = 1, config_api_key = '$config_api_key', config_recurring_auto_send_invoice = 1, config_default_net_terms = 7, config_send_invoice_reminders = 0, config_enable_cron = 0, config_ticket_next_number = 1, config_base_url = '$config_base_url'");
mysqli_query($mysqli,"INSERT INTO settings SET company_id = $company_id, config_company_name = '$name', config_invoice_prefix = 'INV-', config_invoice_next_number = 1, config_invoice_overdue_reminders = '1,3,7', config_quote_prefix = 'QUO-', config_quote_next_number = 1, config_api_key = '$config_api_key', config_recurring_auto_send_invoice = 1, config_default_net_terms = 7, config_send_invoice_reminders = 0, config_enable_cron = 0, config_ticket_next_number = 1");
//logging
mysqli_query($mysqli,"INSERT INTO logs SET log_type = 'Company', log_action = 'Created', log_description = '$name', log_created_at = NOW()");
@ -162,7 +162,6 @@ if(isset($_POST['verify'])){
if(isset($_POST['edit_general_settings'])){
$config_base_url = strip_tags(mysqli_real_escape_string($mysqli,$_POST['config_base_url']));
$config_api_key = strip_tags(mysqli_real_escape_string($mysqli,$_POST['config_api_key']));
$path = "$config_invoice_logo";
@ -177,7 +176,7 @@ if(isset($_POST['edit_general_settings'])){
move_uploaded_file($_FILES['file']['tmp_name'], $path);
}
mysqli_query($mysqli,"UPDATE settings SET config_invoice_logo = '$path', config_api_key = '$config_api_key', config_base_url = '$config_base_url' WHERE company_id = $session_company_id");
mysqli_query($mysqli,"UPDATE settings SET config_invoice_logo = '$path', config_api_key = '$config_api_key' WHERE company_id = $session_company_id");
//logging
mysqli_query($mysqli,"INSERT INTO logs SET log_type = 'Settings', log_action = 'Modified', log_description = 'General', log_created_at = NOW(), company_id = $session_company_id, user_id = $session_user_id");

View File

@ -247,6 +247,10 @@ if(isset($_GET['quote_id'])){
</div>
</form>
<hr class="d-none d-print-block mt-5">
<center class="d-none d-print-block"><?php echo $config_quote_footer; ?></center>
<div class="row mb-3">
<div class="col-sm d-print-none">
<div class="card">

View File

@ -9,16 +9,6 @@
<div class="card-body">
<form class="p-3" action="post.php" method="post" enctype="multipart/form-data" autocomplete="off">
<div class="form-group">
<label>Base URL</label>
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fa fa-fw fa-globe"></i></span>
</div>
<input type="text" class="form-control" name="config_base_url" placeholder="Base URL ex example.com/crm or example.com" value="<?php echo $config_base_url; ?>">
</div>
</div>
<div class="form-group">
<label>API Key</label>
<div class="input-group">

View File

@ -71,6 +71,7 @@ if(isset($_POST['add_database'])){
$database = $_POST['database'];
$username = $_POST['username'];
$password = $_POST['password'];
$config_base_url = $_SERVER['HTTP_HOST'] . dirname($_SERVER['REQUEST_URI']);
$myfile = fopen("config.php", "w");
@ -90,6 +91,10 @@ if(isset($_POST['add_database'])){
fwrite($myfile, $txt);
$txt = "\$config_base_url = '\$config_base_url';\n";
fwrite($myfile, $txt);
fclose($myfile);
include("config.php");
@ -165,7 +170,6 @@ if(isset($_POST['add_company_settings'])){
$config_company_phone = preg_replace("/[^0-9]/", '',$config_company_phone);
$config_company_site = strip_tags(mysqli_real_escape_string($mysqli,$_POST['config_company_site']));
$config_api_key = keygen();
$config_base_url = $_SERVER['HTTP_HOST'] . dirname($_SERVER['REQUEST_URI']);
mysqli_query($mysqli,"INSERT INTO companies SET company_name = '$config_company_name', company_created_at = NOW()");
@ -178,7 +182,7 @@ if(isset($_POST['add_company_settings'])){
mysqli_query($mysqli,"INSERT INTO user_companies SET user_id = $user_id, company_id = $company_id");
mysqli_query($mysqli,"INSERT INTO settings SET company_id = $company_id, config_company_name = '$config_company_name', config_company_address = '$config_company_address', config_company_city = '$config_company_city', config_company_state = '$config_company_state', config_company_zip = '$config_company_zip', config_company_phone = $config_company_phone, config_company_site = '$config_company_site', config_start_page = 'dashboard.php', config_invoice_prefix = 'INV-', config_invoice_next_number = 1, config_invoice_overdue_reminders = '1,3,7', config_quote_prefix = 'QUO-', config_quote_next_number = 1, config_api_key = '$config_api_key', config_recurring_auto_send_invoice = 1, config_default_net_terms = 7, config_send_invoice_reminders = 0, config_enable_cron = 0, config_ticket_next_number = 1, config_base_url = '$config_base_url'");
mysqli_query($mysqli,"INSERT INTO settings SET company_id = $company_id, config_company_name = '$config_company_name', config_company_address = '$config_company_address', config_company_city = '$config_company_city', config_company_state = '$config_company_state', config_company_zip = '$config_company_zip', config_company_phone = $config_company_phone, config_company_site = '$config_company_site', config_start_page = 'dashboard.php', config_invoice_prefix = 'INV-', config_invoice_next_number = 1, config_invoice_overdue_reminders = '1,3,7', config_quote_prefix = 'QUO-', config_quote_next_number = 1, config_api_key = '$config_api_key', config_recurring_auto_send_invoice = 1, config_default_net_terms = 7, config_send_invoice_reminders = 0, config_enable_cron = 0, config_ticket_next_number = 1");
//Create Some Data