| Server IP : 104.21.21.239 / Your IP : 216.73.217.74 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
use classes\lib\CGRewards;
include('_mod_security.php');
form_prep('concierges', 'basic_info');
if ($_POST['ajax_event_submitted'] == '1') :
form_reload_check();
if (isset($_POST['active_tab'])) :
$active_tab = $_POST['active_tab'];
else :
$active_tab = 'basic_info';
endif;
$ar_err = array();
if (empty($_POST['first_name'])) :
$ar_err['first_name'] = 'First name is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if (empty($_POST['last_name'])) :
$ar_err['last_name'] = 'Last name is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if (empty($_POST['title'])) :
$ar_err['title'] = 'Title is required!';
$err_flag = true;
$err_tab = 'basic_info';
endif;
if (!$err_flag) :
if (!empty(nz(trim($_POST['cgr']),'0')) && empty(nz(trim($_POST['cgr_id']),''))) :
$sql_cgr_id = "SELECT COALESCE(MAX(cgr_id), 0) + 1 AS max_cgr_id FROM concierges ";
$result_cgr_id = $db->query($sql_cgr_id) or die('Database Error!');
$row_cgr_id = $result_cgr_id->fetch(PDO::FETCH_OBJ);
$_POST['cgr_id'] = $row_cgr_id->max_cgr_id;
$_POST['cgr_join_date'] = date('Y-m-d H:i:s');
if (!empty(nz(trim($_REQUEST['id']), ''))) :
$rewards_given_count = CGRewards::allocate_recent_cg_rewards(nz(trim($_REQUEST['id']), '0'));
if ($rewards_given_count > 0) :
$_POST['cgr_approved'] = 1;
endif;
endif;
endif;
$set = "title = ".$db->quote(trim($_POST['title'])).", ".
"first_name = ".$db->quote(trim($_POST['first_name'])).", ".
"last_name = ".$db->quote(trim($_POST['last_name'])).", ".
"primary_email = ".$db->quote(trim($_POST['primary_email'])).", ".
"secondary_email = ".$db->quote(trim($_POST['secondary_email'])).", ".
"email_3 = ".$db->quote(trim($_POST['email_3'])).", ".
"email_4 = ".$db->quote(trim($_POST['email_4'])).", ".
"cgr_email = ".$db->quote(trim($_POST['cgr_email'])).", ".
"work_phone = ".$db->quote(trim($_POST['work_phone'])).", ".
"cell_phone = ".$db->quote(trim($_POST['cell_phone'])).", ".
"concierge_service = ".$db->quote(trim($_POST['concierge_service'])).", ".
"job_category_id = ".nz(trim($_POST['job_category_id']), '0').", ".
"hotel_id = ".nz(trim($_POST['hotel_id']), '0').", ".
"nycahc_member = ".nz(trim($_POST['nycahc_member']),'0').", ".
"lcd = ".nz(trim($_POST['lcd']),'0').", ".
"cgr = ".nz(trim($_POST['cgr']),'0').", ".
"cgr_approved = ".nz(trim($_POST['cgr_approved']),'0').", ".
"cgr_manager = ".nz(trim($_POST['cgr_manager']),'0').", ".
"cgr_id = ".nz(trim($_POST['cgr_id']),'NULL').", ".
"cgr_join_date = ".nzdatetime(trim($_POST['cgr_join_date']),'NULL').", ".
"gte_certified = ".nz(trim($_POST['gte_certified']),'0').", ".
"fyi = ".nz(trim($_POST['fyi']),'0').", ".
"on_the_promenade = ".nz(trim($_POST['on_the_promenade']),'0').", ".
"fyi_email = ".nz(trim($_POST['fyi_email']),'0').", ".
"on_the_promenade_email = ".nz(trim($_POST['on_the_promenade_email']),'0').", ".
"status = ".nz(trim($_POST['status']),'0').", ".
"facebook = ".$db->quote(trim($_POST['facebook'])).", ".
"twitter = ".$db->quote(trim($_POST['twitter'])).", ".
"instagram = ".$db->quote(trim($_POST['instagram'])).", ".
"comments = ".$db->quote(trim($_POST['comments'])).", ".
sql_set_update();
if ($action == 'Edit') :
$sql = "UPDATE concierges set ".$set.
"WHERE concierge_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 concierges SET ".
sql_set_create().
$set;
//echo '==='.$sql.'===';
$db->query($sql) or die('Database Error!');
$_REQUEST['id'] = last_id();
$_POST['concierge_id'] = $_REQUEST['id'];
post_set_create_update();
endif;
endif;
$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=concierge_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 concierges WHERE concierge_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['concierge_id'] = $row->concierge_id;
$_POST['title'] = $row->title;
$_POST['first_name'] = $row->first_name;
$_POST['last_name'] = $row->last_name;
$_POST['primary_email'] = $row->primary_email;
$_POST['secondary_email'] = $row->secondary_email;
$_POST['email_3'] = $row->email_3;
$_POST['email_4'] = $row->email_4;
$_POST['cgr_email'] = $row->cgr_email;
$_POST['work_phone'] = $row->work_phone;
$_POST['cell_phone'] = $row->cell_phone;
$_POST['concierge_service'] = $row->concierge_service;
$_POST['job_category_id'] = $row->job_category_id;
$_POST['hotel_id'] = $row->hotel_id;
$_POST['nycahc_member'] = $row->nycahc_member;
$_POST['lcd'] = $row->lcd;
$_POST['cgr'] = $row->cgr;
$_POST['cgr_approved'] = $row->cgr_approved;
$_POST['cgr_manager'] = $row->cgr_manager;
$_POST['cgr_id'] = $row->cgr_id;
$_POST['cgr_join_date'] = nzdate_display_datetime($row->cgr_join_date);
$_POST['gte_certified'] = $row->gte_certified;
$_POST['fyi'] = $row->fyi;
$_POST['on_the_promenade'] = $row->on_the_promenade;
$_POST['fyi_email'] = $row->fyi_email;
$_POST['on_the_promenade_email'] = $row->on_the_promenade_email;
$_POST['status'] = $row->status;
$_POST['facebook'] = $row->facebook;
$_POST['twitter'] = $row->twitter;
$_POST['instagram'] = $row->instagram;
$_POST['comments'] = $row->comments;
post_set_load_create_update();
else :
echo form_fatal_error('Invalid Operation!');
return;
endif;
else :
if (!empty($_GET['hotel_id'])) :
$_POST['hotel_id'] = $_REQUEST['hotel_id'];
endif;
$_POST['status'] = 1;
endif;
endif;
?>
<script>
var active_page = '<?php echo $_REQUEST['IX']; ?>';
var active_tab = '';
concierge_event_update = function(cid, eid, field, obj)
{
//alert($(obj).val());
//alert($(obj).attr('type'));
//alert(field);
var value = $(obj).val();
if ($(obj).attr('type').toLowerCase() == 'checkbox')
{
if (obj.checked)
{
value = 1;
}
else
{
value = 0;
}
}
switch(field) {
case 'rsvp_1':
if (value == 1)
{
$("#conf_1_" + eid).prop('disabled', false);
$("#conf_1_" + eid).prop('checked', false);
$("#cancel_1_" + eid).prop('disabled', false);
$("#cancel_1_" + eid).prop('checked', false);
$("#attended_1_" + eid).prop('disabled', false);
$("#attended_1_" + eid).prop('checked', true);
$("#wait_1_" + eid).prop('checked', false);
$("#nbr_of_guests_" + eid).prop('disabled', false);
if ($("#nbr_of_guests_" + eid).val() == '')
{
$("#nbr_of_guests_" + eid).val('1');
}
}
else
{
$("#conf_1_" + eid).prop('disabled', true);
$("#conf_1_" + eid).prop('checked', false);
$("#cancel_1_" + eid).prop('disabled', true);
$("#cancel_1_" + eid).prop('checked', false);
$("#attended_1_" + eid).prop('disabled', true);
$("#attended_1_" + eid).prop('checked', false);
if (!$("#wait_1_" + eid).prop('checked') && !$("#rsvp_2_" + eid).prop('checked') && !$("#wait_2_" + eid).prop('checked') )
{
$("#nbr_of_guests_" + eid).prop('disabled', true);
$("#nbr_of_guests_" + eid).val('');
}
}
break;
case 'wait_1':
if (value == 1)
{
$("#rsvp_1_" + eid).prop('checked', false);
$("#conf_1_" + eid).prop('disabled', true);
$("#conf_1_" + eid).prop('checked', false);
$("#cancel_1_" + eid).prop('disabled', true);
$("#cancel_1_" + eid).prop('checked', false);
$("#attended_1_" + eid).prop('disabled', true);
$("#attended_1_" + eid).prop('checked', false);
$("#nbr_of_guests_" + eid).prop('disabled', false);
if ($("#nbr_of_guests_" + eid).val() == '')
{
$("#nbr_of_guests_" + eid).val('1');
}
}
else
{
if (!$("#wait_2_" + eid).prop('checked') && !$("#rsvp_2_" + eid).prop('checked') && !$("#rsvp_1_" + eid).prop('checked') )
{
$("#nbr_of_guests_" + eid).prop('disabled', true);
$("#nbr_of_guests_" + eid).val('');
}
}
break;
case 'cancel_1':
if (value == 1) {
$("#rsvp_1_" + eid).prop('disabled', true);
$("#rsvp_1_" + eid).prop('checked', false);
$("#conf_1_" + eid).prop('disabled', true);
$("#conf_1_" + eid).prop('checked', false);
$("#attended_1_" + eid).prop('disabled', true);
$("#attended_1_" + eid).prop('checked', false);
if (!$("#wait_2_" + eid).prop('checked') && !$("#rsvp_2_" + eid).prop('checked') && !$("#rsvp_2_" + eid).prop('checked')) {
$("#nbr_of_guests_" + eid).prop('disabled', true);
$("#nbr_of_guests_" + eid).val('');
}
} else {
$("#rsvp_1_" + eid).prop('disabled', false);
}
break;
case 'rsvp_2':
if (value == 1)
{
$("#conf_2_" + eid).prop('disabled', false);
$("#conf_2_" + eid).prop('checked', false);
$("#cancel_2_" + eid).prop('disabled', false);
$("#cancel_2_" + eid).prop('checked', false);
$("#attended_2_" + eid).prop('disabled', false);
$("#attended_2_" + eid).prop('checked', true);
$("#wait_2_" + eid).prop('checked', false);
$("#nbr_of_guests_" + eid).prop('disabled', false);
if ($("#nbr_of_guests_" + eid).val() == '')
{
$("#nbr_of_guests_" + eid).val('1');
}
}
else
{
$("#conf_2_" + eid).prop('disabled', true);
$("#conf_2_" + eid).prop('checked', false);
$("#cancel_2_" + eid).prop('disabled', true);
$("#cancel_2_" + eid).prop('checked', false);
$("#attended_2_" + eid).prop('disabled', true);
$("#attended_2_" + eid).prop('checked', false);
if (!$("#wait_2_" + eid).prop('checked') && !$("#rsvp_1_" + eid).prop('checked') && !$("#wait_1_" + eid).prop('checked') )
{
$("#nbr_of_guests_" + eid).prop('disabled', true);
$("#nbr_of_guests_" + eid).val('');
}
}
break;
case 'wait_2':
if (value == 1)
{
$("#rsvp_2_" + eid).prop('checked', false);
$("#conf_2_" + eid).prop('disabled', true);
$("#conf_2_" + eid).prop('checked', false);
$("#cancel_2_" + eid).prop('disabled', true);
$("#cancel_2_" + eid).prop('checked', false);
$("#attended_2_" + eid).prop('disabled', true);
$("#attended_2_" + eid).prop('checked', false);
$("#nbr_of_guests_" + eid).prop('disabled', false);
if ($("#nbr_of_guests_" + eid).val() == '')
{
$("#nbr_of_guests_" + eid).val('1');
}
}
else
{
if (!$("#wait_1_" + eid).prop('checked') && !$("#rsvp_1_" + eid).prop('checked') && !$("#rsvp_2_" + eid).prop('checked') )
{
$("#nbr_of_guests_" + eid).prop('disabled', true);
$("#nbr_of_guests_" + eid).val('');
}
}
break;
case 'cancel_2':
if (value == 1) {
$("#rsvp_2_" + eid).prop('disabled', true);
$("#rsvp_2_" + eid).prop('checked', false);
$("#conf_2_" + eid).prop('disabled', true);
$("#conf_2_" + eid).prop('checked', false);
$("#attended_2_" + eid).prop('disabled', true);
$("#attended_2_" + eid).prop('checked', false);
if (!$("#wait_1_" + eid).prop('checked') && !$("#rsvp_1_" + eid).prop('checked') && !$("#rsvp_1_" + eid).prop('checked')) {
$("#nbr_of_guests_" + eid).prop('disabled', true);
$("#nbr_of_guests_" + eid).val('');
}
} else {
$("#rsvp_2_" + eid).prop('disabled', false);
}
break;
}
//alert(val_checkbox($('#wait_2_' + eid + ':checked').val()));
$('#ajax_update').load('ajax.php?call=event_ajax&function=concierge' +
'&cid=' + cid +
'&eid=' + eid +
'&rsvp_1=' + val_checkbox($('#rsvp_1_' + eid + ':checked').val()) +
'&conf_1=' + val_checkbox($('#conf_1_' + eid + ':checked').val()) +
'&cancel_1=' + val_checkbox($('#cancel_1_' + eid + ':checked').val()) +
'&attended_1=' + val_checkbox($('#attended_1_' + eid + ':checked').val()) +
'&wait_1=' + val_checkbox($('#wait_1_' + eid + ':checked').val()) +
'&rsvp_2=' + val_checkbox($('#rsvp_2_' + eid + ':checked').val()) +
'&conf_2=' + val_checkbox($('#conf_2_' + eid + ':checked').val()) +
'&cancel_2=' + val_checkbox($('#cancel_2_' + eid + ':checked').val()) +
'&attended_2=' + val_checkbox($('#attended_2_' + eid + ':checked').val()) +
'&wait_2=' + val_checkbox($('#wait_2_' + eid + ':checked').val()) +
'&nbr_of_guests=' + $('#nbr_of_guests_' + eid).val()
,
function()
{
if ($('#ajax_update').html().toLowerCase == 'error')
alert('Error!');
} );
}
update_header = function()
{
if ($("#first_name").val() > "" && $("#last_name").val() > "" )
{
$("#header_repeater").text(" - " + $("#first_name").val() + ' ' + $("#last_name").val());
}
}
function cgr_toggle() {
if ($('#cgr').is(':checked')) {
$('#cgr_manager').prop('disabled', false);
$('#cgr_approved').prop('disabled', false);
} else {
$('#cgr_manager').prop('checked', false);
$('#cgr_manager').prop('disabled', true);
$('#cgr_approved').prop('checked', false);
$('#cgr_approved').prop('disabled', true);
}
}
$(document).ready(function()
{
switch_tab('<?php echo $active_tab; ?>');
update_header();
$(':input:not(.search)').change(function() {sheet_dirty = true; } );
}
)
</script>
<h1>Concierge - <?php echo $action; ?><span id="header_repeater"></span></h1>
<?php echo form_message($form_message); ?>
<form name="frm_concierge" id="frm_concierge" method="post" action="">
<input name="ajax_event_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,eventmgr,gte');
if (!empty($_REQUEST['id'])) :
form_tab_header('events', 'Events', 'admin,eventmgr');
if (!empty(nz(trim($_POST['cgr']),'0'))) :
form_tab_header('cgr', 'CG Rewards', 'admin,eventmgr');
endif;
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('concierge_id', 'text', 10, 0, false, false, true, '', '', 'concierge_id', 'Concierge ID');
form_field('first_name', 'text', 50, 0, true, false, false, '', '', 'first_name', 'First Name', array(), '', 'update_header();');
form_field('last_name', 'text', 50, 0, true, false, false, '', '', 'last_name', 'Last Name', array(), '', 'update_header();');
form_field('title', 'text', 50, 0, true, false, false, '', '', 'title', 'Title');
$sql = "SELECT id, description FROM job_categories ORDER BY description ";
$result = $db->query($sql) or die('Database Error!');
$ar_job_categories = $result->fetchAll(PDO::FETCH_KEY_PAIR);
form_field('job_category_id', 'select', 50, 0, false, false, false, '', '', 'job_category_id', 'Job Category', $ar_job_categories);
$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, false, '', '', 'hotel_id', 'Hotel', $ar_hotels);
$ar_status = array('1'=>'Active', '0'=>'Inactive', '2'=>'In Transition', );
form_field('status', 'radiogroup', 50, 0, false, false, false, '', '', 'status', 'Status', $ar_status);
?>
</div>
<div class="input_column">
<?php
form_field('primary_email', 'text', 50, 0, false, false, false, '', '', 'primary_email', 'Work Email');
form_field('secondary_email', 'text', 50, 0, false, false, false, '', '', 'secondary_email', 'Personal Email');
form_field('email_3', 'text', 75, 0, false, false, false, '', '', 'email_3', 'Email 3');
form_field('email_4', 'text', 75, 0, false, false, false, '', '', 'email_4', 'Email 4');
form_field('cgr_email', 'text', 50, 0, false, false, false, '', '', 'cgr_email', 'CG Rewards Email');
form_field('work_phone', 'text', 50, 0, false, false, false, '', '', 'work_phone', 'Work Phone');
form_field('cell_phone', 'text', 50, 0, false, false, false, '', '', 'cell_phone', 'Cell Phone');
form_field('concierge_service', 'select', 50, 0, false, false, false, '', '', 'concierge_service', 'Concierge Service', APP_CONCIERGE_SERVICES);
form_field('facebook', 'text', 100, 0, false, false, false, '', '', 'facebook', 'Facebook');
form_field('twitter', 'text', 100, 0, false, false, false, '', '', 'twitter', 'Twitter');
form_field('instagram', 'text', 100, 0, false, false, false, '', '', 'instagram', 'Instagram');
?>
</div>
<div class="input_column">
<?php
form_field('comments', 'textarea', 70, 9, false, false, false, '', '', 'comments', 'Comments');
form_field('nycahc_member', 'checkbox', 50, 0, false, false, false, '', '', 'nycahc_member', 'NYCAHC Member');
form_field('lcd', 'checkbox', 50, 0, false, false, false, '', '', 'lcd', 'LCD');
echo '<br /><br />';
form_field('cgr', 'checkbox', 50, 0, false, false, false, '', '', 'cgr', 'CG Rewards Member', [], 'cgr_toggle();');
form_field('cgr_approved', 'checkbox', 50, 0, false, ($_POST['cgr'] == '1' ? false : true), false, '', '', 'cgr_approved', 'CG Rewards Approved (for data pull)');
form_field('cgr_manager', 'checkbox', 50, 0, false, ($_POST['cgr'] == '1' ? false : true), false, '', '', 'cgr_manager', 'CG Rewards Manager');
form_field('cgr_id', 'text', 10, 0, false, false, true, '', '', 'cgr_id', 'CG Rewards ID');
form_field('cgr_join_date', 'text', 10, 0, false, false, true, '', '', 'cgr_join_date', 'CG Rewards Join Date');
echo '<br /><br />';
form_field('gte_certified', 'checkbox', 50, 0, false, false, false, '', '', 'gte_certified', 'GTE Certified');
form_field('fyi', 'checkbox', 50, 0, false, false, false, '', '', 'fyi', 'FYI');
form_field('on_the_promenade', 'checkbox', 50, 0, false, false, false, '', '', 'on_the_promenade', 'On The Promenade');
form_field('fyi_email', 'checkbox', 50, 0, false, false, false, '', '', 'fyi_email', 'FYI Email');
form_field('on_the_promenade_email', 'checkbox', 50, 0, false, false, false, '', '', 'on_the_promenade_email', 'On The Promenade Email');
?>
</div>
</div>
<!-- -------------------------------------------------------------------------------------------------------------- -->
<div class="tab_content" id="tab_content_events">
<div class="form_header">
Events
</div>
<div id="ajax_update" style="width:1px; height:1px; display:none;">
</div>
<?php
$ix_form = 'event_form';
db_navigator_bar(array('table_id'=>'db_grid_events', 'form'=>$ix_form, 'print_section'=>'db_grid_events', 'call'=>'concierge_events_ajax', 'sort_col'=>'2', 'sort_order'=>'1', 'subtab'=>'true', 'parm1'=>" ".nz($_REQUEST['id'], '0')." ", 'func'=>'grid' ));
?>
</div>
<!-- -------------------------------------------------------------------------------------------------------------- -->
<div class="tab_content" id="tab_content_cgr">
<div class="form_header">
CG Rewards
</div>
<div id="ajax_update" style="width:1px; height:1px; display:none;">
</div>
<?php
$ix_form = 'cgr_form&concierge_id='.trim(nz($_REQUEST['id'], ''));
db_navigator_bar(array('table_id'=>'db_grid_cgr', 'form'=>$ix_form, 'print_section'=>'db_grid_events', 'call'=>'concierge_cgr_ajax', 'sort_col'=>'1', 'sort_order'=>'1', 'subtab'=>'true', 'parm1'=>" AND cgr.concierge_id =".nz($_REQUEST['id'], '0')." ", 'func'=>'grid' ));
?>
</div>
<!-- -------------------------------------------------------------------------------------------------------------- -->
<?php form_button_strip('bottom'); ?>
</form>