| Server IP : 104.21.21.239 / Your IP : 216.73.217.39 Web Server : Apache/2.4.68 (Amazon Linux) OpenSSL/3.5.5 System : Linux ip-172-31-69-123.ec2.internal 6.1.176-223.369.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jul 24 13:34:27 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/hotel-dev/public_html/mod/ |
Upload File : |
<?php include('_mod_security.php'); ?>
<?php
form_prep('hotels', 'basic_info');
if ($_POST['ajax_verification_submitted'] == '1') :
form_reload_check();
$ar_product_key = explode('|', $_POST['product_key']);
$_POST['product_id'] = $ar_product_key[0];
$_POST['drop_location'] = $ar_product_key[1];
if (isset($_POST['active_tab'])) :
$active_tab = $_POST['active_tab'];
else :
$active_tab = 'basic_info';
endif;
$ar_err = array();
if (empty($_POST['spoke_to'])) :
$ar_err['spoke_to'] = 'Spoke to is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if (empty($_POST['product_key'])) :
$ar_err['product_key'] = 'Product / Drop Location is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if (empty($_POST['verification_type'])) :
$ar_err['verification_type'] = 'Verification type is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if ($_POST['magazines_delivered'] <= ' ') :
$ar_err['magazines_delivered'] = 'Magazines delivered is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if (empty($_POST['occupancy'])) :
$ar_err['occupancy'] = 'Occupancy type is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if (!$err_flag) :
$set = "hotel_id = ".nz(trim($_POST['hotel_id']), '0').", ".
"product_id = ".nz($_POST['product_id'], '0').", ".
"drop_location = ".$db->quote(trim($_POST['drop_location'])).", ".
"verification_type = ".nz(trim($_POST['verification_type']),'0').", ".
"magazines_delivered = ".nz(trim($_POST['magazines_delivered']),'0').", ".
"all_distributed = ".nz(trim($_POST['all_distributed']),'0').", ".
"remaining_qty = ".nz(trim($_POST['remaining_qty']), '0' ).", ".
"remaining_na = ".nz(trim($_POST['remaining_na']),'NULL').", ".
"change_draw = ".nz(trim($_POST['change_draw']),'0').", ".
"old_qty = ".nz(trim($_POST['old_qty']),'0').", ".
"new_qty = ".nz(trim($_POST['new_qty']),'0').", ".
"occupancy = ".nzfloat(trim($_POST['occupancy']),'NULL').", ".
"spoke_to = ".$db->quote(trim($_POST['spoke_to'])).", ".
"comments = ".$db->quote(trim($_POST['comments'])).", ".
sql_set_update();
if ($action == 'Edit') :
$sql = "UPDATE verifications set ".$set.
"WHERE verification_id = ".nz(trim($_REQUEST['id']), '0')." ";
$db->query($sql) or die('Database Error!');
//echo '==='.$sql.'===';
post_set_update();
else :
if ($action == 'Add New') :
$sql = "INSERT INTO verifications SET ".
sql_set_create().
$set;
//echo '==='.$sql.'===';
$db->query($sql) or die('Database Error!');
$_REQUEST['id'] = last_id();
$_POST['verification_id'] = $_REQUEST['id'];
post_set_create_update();
$_POST['create_by_repeater'] = get_user($_POST['create_by']);
$_POST['create_date_repeater'] = nzdate_display_datetime($_POST['create_date']);
endif;
endif;
//************ Automatically update new draw qty on Product *************
if ($_POST['change_draw'] == '1') :
$sql = "UPDATE hotels_products SET ".
"dist_qty = ".nz($_POST['new_qty'],'0').", ".
"update_source = ".$db->quote(trim($_GET['IX'])).", ".
"update_by = ".$db->quote(trim($_SESSION['user_id'])).", ".
"update_date = '".date('Y-m-d H:i:s')."' ".
"WHERE hotel_id = ".nz($_POST['hotel_id'], '0')." AND product_id = ".nz($_POST['product_id'], '0')." AND drop_location = ".$db->quote(trim($_POST['drop_location']))." ";
//echo '==='.$sql.'===';
$db->query($sql) or die('Database Error!');
endif;
//************ Inactivate Concierges *************
foreach ($_POST['concierges_to_inactivate'] as $concierge_id) :
$sql = "UPDATE concierges SET ".
"status = 0, ".
sql_set_update().
"WHERE concierge_id = ".nz($concierge_id, '0');
//echo '==='.$sql.'===';
$db->query($sql) or die('Database Error!');
endforeach;
//***********************************************************************
$form_message = "Saved sucessfully!";
form_uid_reset();
if ($_POST['xsubmit'] == 'Save & Close') :
echo "<SCRIPT>";
//echo "window.location.href = 'index.php?IX=".$_REQUEST['ref']."'";
echo "appstack_pop()";
echo "</SCRIPT>";
endif;
if ($_POST['xsubmit'] == 'Save & New') :
echo "<SCRIPT>";
echo "window.location.href = 'index.php?IX=verification_form&ref=".urlencode($_REQUEST['ref'])."&hotel_id=".$_GET['hotel_id']."'";
echo "</SCRIPT>";
endif;
else :
$active_tab = $err_tab;
$form_message = "Errors found!";
endif;
else:
if ($action == 'Edit') :
$sql = "SELECT * FROM verifications WHERE verification_id = ".nz(trim($_REQUEST['id']), '0')." ";
$result = $db->query($sql) or die('Database Error!');
if ($result->rowCount() > 0) :
$row = $result->fetch(PDO::FETCH_OBJ);
$_POST['verification_id'] = $row->verification_id;
$_POST['hotel_id'] = $row->hotel_id;
$_POST['product_id'] = $row->product_id;
$_POST['drop_location'] = $row->drop_location;
$_POST['product_key'] = trim($_POST['product_id']).'|'.trim($_POST['drop_location']);
$_POST['verification_type'] = $row->verification_type;
$_POST['magazines_delivered'] = $row->magazines_delivered;
$_POST['all_distributed'] = $row->all_distributed;
$_POST['remaining_qty'] = $row->remaining_qty;
$_POST['remaining_na'] = $row->remaining_na;
$_POST['change_draw'] = $row->change_draw;
$_POST['old_qty'] = $row->old_qty;
$_POST['new_qty'] = $row->new_qty;
$_POST['occupancy'] = $row->occupancy;
$_POST['spoke_to'] = $row->spoke_to;
$_POST['comments'] = $row->comments;
post_set_load_create_update();
$_POST['create_by_repeater'] = get_user($row->create_by);
$_POST['create_date_repeater'] = nzdate_display_datetime($row->create_date);
else :
echo form_fatal_error('Invalid Operation!');
return;
endif;
else :
if (!empty($_GET['hotel_id'])) :
$_POST['hotel_id'] = $_REQUEST['hotel_id'];
/*
$sql = "SELECT dist_qty FROM hotels_products WHERE hotel_id = ".nz(trim($_POST['hotel_id']), '0')." AND product_id = ".APP_DEFAULT_PRODUCT." AND drop_location = ".$db->quote(APP_DEFAULT_DROP_LOCATION)." ORDER BY product_id DESC";
$result_product = $db->query($sql) or die('Database Error!');
if ($result_product->rowCount() > 0) :
$row_product = $result_product->fetch(PDO::FETCH_OBJ);
$_POST['old_qty'] = $row_product->dist_qty;
endif;
*/
$sql = "SELECT * FROM hotels_products WHERE hotel_id = ".nz($_POST['hotel_id'], '0')." AND product_id = ".APP_DEFAULT_PRODUCT." ";
$result = $db->query($sql) or die('Database Error!');
if ($result->rowCount() > 0) :
$row_product = $result->fetch(PDO::FETCH_OBJ);
$_POST['product_key'] = trim($row_product->product_id).'|'.trim($row_product->drop_location);
$_POST['old_qty'] = $row_product->dist_qty;
else :
//$_POST['product_key'] = APP_DEFAULT_PRODUCT.'|'.APP_DEFAULT_DROP_LOCATION;
endif;
endif;
endif;
endif;
?>
<script>
var active_page = '<?php echo $_REQUEST['IX']; ?>';
var active_tab = '';
check_draw = function()
{
if ($('#change_draw').prop('checked'))
{
$('#change_draw_caution').show();
$('#div_old_qty').show();
$('#div_new_qty').show();
}
else
{
$('#change_draw_caution').hide();
$('#div_old_qty').hide();
$('#div_new_qty').hide();
$('#new_qty').val('');
}
}
check_remaining = function()
{
if ($('#all_distributed').prop('checked'))
{
$('#remaining_qty').val('0').prop('readonly', true);
$('#remaining_na').prop('checked', false).prop('disabled', true);
}
else
{
$('#remaining_qty').prop('readonly', false);
$('#remaining_na').prop('disabled', false);
if ($('#remaining_na').prop('checked'))
{
$('#remaining_qty').val('').prop('readonly', true);
}
else
{
$('#remaining_qty').prop('readonly', false);
}
}
}
product_change = function()
{
$.ajax({
url: "ajax.php?call=verification_form_ajax&function=get_product&hotel_id=" + $('#hotel_id').val() + "&product_key=" + $('#product_key').val(),
cache: false,
dataType: "json",
headers: {
"Accept": "application/json"
},
success: function(json) {
$('#old_qty').val(json.old_qty);
}
,error: function (request, status, error) { alert(status + ", " + error); }
})
}
update_header = function()
{
/*
if ($("#first_name").val() > "" && $("#last_name").val() > "" )
{
$("#header_repeater").text(" - " + $("#first_name").val() + ' ' + $("#last_name").val());
}
*/
}
$(document).ready(function()
{
switch_tab('<?php echo $active_tab; ?>');
update_header();
$(':input:not(.search)').change(function() {sheet_dirty = true; } );
check_draw();
check_remaining();
}
)
</script>
<h1>Verification - <?php echo $action; ?><span id="header_repeater"></span></h1>
<?php echo form_message($form_message); ?>
<form style="" name="frm_verificaation" id="frm_verificaation" method="post" action="">
<input name="ajax_verification_submitted" type="hidden" value="1" />
<input name="id" type="hidden" value="<?php echo $_REQUEST['id']; ?>" />
<input name="active_tab" id="active_tab" type="hidden" value="basic_info" />
<?php form_button_strip('top'); ?>
<div class="tab_strip">
<?php
form_tab_header('basic_info', 'Basic Info', 'admin,verifier,gte');
if (!empty($_REQUEST['id'])) :
form_tab_header('photos', 'Photos', 'admin,verifier,gte');
endif;
?>
</div>
<div class="cleardiv">
</div>
<div class="tab_content" id="tab_content_basic_info">
<div class="form_header">
Basic Info
</div>
<div class="input_column">
<?php
form_field('verification_id', 'text', 10, 0, false, false, true, '', '', 'verification_id', 'Verification ID');
form_field('create_date_repeater', 'text', 25, 0, false, false, true, '', '', 'create_date_repeater', 'Date/Time');
form_field('create_by_repeater', 'text', 50, 0, false, false, true, '', '', 'create_by_repeater', 'Verified By');
$sql = "SELECT hotel_id, hotel_name FROM hotels ORDER BY hotel_name ";
$result = $db->query($sql) or die('Database Error!');
$ar_hotels = $result->fetchAll(PDO::FETCH_KEY_PAIR);
form_field('hotel_id', 'select', 50, 0, false, false, true, '', '', 'hotel_id', 'Hotel', $ar_hotels);
$sql = "SELECT CONCAT(p.product_id, '|', hp.drop_location), CONCAT(p.description, ' - ', hp.drop_location) FROM products p INNER JOIN hotels_products hp ON (p.product_id = hp.product_id) WHERE p.active = 1 AND hp.hotel_id = ".nz($_POST['hotel_id'], '0')." ORDER BY p.product_id, hp.drop_location ";
$result = $db->query($sql) or die('Database Error!');
$ar_products = $result->fetchAll(PDO::FETCH_KEY_PAIR);
form_field('product_key', 'select', 50, 0, true, false, false, '', '', 'product_key', 'Product / Drop Location', $ar_products, 'product_change();');
form_field('verification_type', 'select', 50, 0, true, false, false, '', '', 'verification_type', 'Verification Type', array('1'=>'Phone', '2'=>'In Person', ) );
//echo ' === '.$_POST['magazines_delivered'].' === ';
form_field('magazines_delivered', 'select', 50, 0, true, false, false, '', '', 'magazines_delivered', 'Magazines Delivered', array('1'=>'Yes','0'=>'No', '2'=>'Not Reported', ) );
form_field('occupancy', 'select', 50, 0, true, false, false, '', '', 'occupancy', 'Occupancy',['1.00'=>'1.0','0.75'=>'0.75', '0.50'=>'0.5', '0.35'=>'0.35'] );
$sql = "SELECT TRIM(CONCAT(first_name, ' ', last_name)) FROM concierges WHERE status = 1 AND hotel_id = ".nz(trim($_POST['hotel_id']),'0')." ORDER BY last_name, first_name ";
$result = $db->query($sql) or die('Database Error!');
$ar_spoke_to = $result->fetchAll(PDO::FETCH_COLUMN);
form_field('spoke_to', 'autocomplete', 50, 0, true, false, false, '', '', 'spoke_to', 'Spoke To', $ar_spoke_to);
?>
</div>
<div class="input_column">
<?php
form_field('all_distributed', 'checkbox', 50, 0, false, false, false, '', '', 'all_distributed', 'All Distributed', array(), 'check_remaining();');
echo '<div style="width:45%; min-width:130px; display:inline-block;">';
form_field('remaining_qty', 'text', 10, 0, false, false, false, '', '', 'remaining_qty', 'Remaining Qty');
echo '</div>';
echo '<div style="width:45%; min-width:130px; display:inline-block;">';
form_field('remaining_na', 'checkbox', 50, 0, false, false, false, '', '', 'remaining_na', 'N/A', array(), 'check_remaining();');
echo '</div>';
form_field('change_draw', 'checkbox', 50, 0, false, false, false, '', '', 'change_draw', 'Change Draw', array(), 'check_draw();');
echo '<div id="change_draw_caution" style="color:#b3b300;">Caution! This will update product distribution qty.</div>';
echo '<div style="width:45%; min-width:130px; display:inline-block;" id="div_old_qty">';
form_field('old_qty', 'text', 10, 0, false, false, false, '', '', 'old_qty', 'Old Qty');
echo '</div>';
echo '<div style="width:45%; min-width:130px; display:inline-block;" id="div_new_qty">';
form_field('new_qty', 'text', 10, 0, false, false, false, '', '', 'new_qty', 'New Qty');
echo '</div>';
form_field('comments', 'textarea', 70, 9, false, false, false, '', '', 'comments', 'Comments');
$sql = "SELECT concierge_id, TRIM(CONCAT(first_name, ' ', last_name)) FROM concierges WHERE status = 1 AND hotel_id = ".nz(trim($_POST['hotel_id']),'0')." ORDER BY last_name, first_name ";
$result = $db->query($sql) or die('Database Error!');
$ar_active_concierges = $result->fetchAll(PDO::FETCH_KEY_PAIR);
/*
foreach ($ar_active_concierges as $conciereg_id => $concierge_name) :
form_field('concierges_to_inactivate[]', 'checkbox', 50, 0, false, false, false, '', '', $conciereg_id, $concierge_name);
endforeach;
*/
form_field('concierges_to_inactivate', 'checkgroup', 50, 0, false, false, false, '', '', '', 'Concierges to inactivate', $ar_active_concierges);
echo '<br><br><input type="button" value="Add Concierge" onclick="window.open(\'index.php?IX=concierge_form&hotel_id='.nz(trim($_POST['hotel_id']),'0').'\')" style="width:auto;">';
?>
</div>
</div>
<!-- -------------------------------------------------------------------------------------------------------------- -->
<div class="tab_content" id="tab_content_photos">
<div class="form_header">
Photos
</div>
<?php
$ix_form = 'photo_form&verification_id='.nz($_REQUEST['id'], '0');
db_navigator_bar(array('table_id'=>'db_grid_photos', 'form'=>$ix_form, 'print_section'=>'db_grid_photos', 'call'=>'verification_photos_ajax', 'sort_col'=>'3', 'sort_order'=>'1', 'subtab'=>'true', 'parm1'=>" AND p.verification_id = ".nz($_REQUEST['id'], '0')." ", 'func'=>'grid' ));
?>
</div>
<!-- -------------------------------------------------------------------------------------------------------------- -->
<?php form_button_strip('bottom'); ?>
</form>