/
var
/
www
/
html
/
sugar14
/
include
/
chat_script
/
Upload File
HOME
<?php global $sugar_config, $db; //change $site_url = $sugar_config['site_url']; $is_updated = "No"; if (isset($_COOKIE['user_cookie'])) { $user_cookie = $_COOKIE['user_cookie']; $qry = "Select a.*, b.* from chat_tbl_user a LEFT Join chat_online_history b ON a.id=b.user_id WHERE b.user_cookie = '" . $_COOKIE["user_cookie"] . "'"; $res = $db->query($qry); if ($res) { while ($row = $db->fetchByAssoc($res)) { $user_id = $row['user_id']; $user_online_id = $row['online_id']; if ($row['user_name'] == '') { $is_updated = "No"; $user_name = "Visitor" . $row['user_id'] . ""; } else { $is_updated = "Yes"; $user_name = $row['user_name']; } } if (!isset($_COOKIE['chat_temp_cookie'])) { $sqlUp = "UPDATE chat_online_history SET is_online=1, visit_time= '" . time() . "', online_time = '" . date('Y-m-d H:i:s') . "' WHERE user_cookie = '" . $_COOKIE["user_cookie"] . "'"; $res = $db->query($sqlUp); } setcookie("chat_temp_cookie", 'chat_temp_cookie'); } } else { $user_cookie = uniqid(); $user_ip = $_SERVER['REMOTE_ADDR']; $curr_time = date('Y-m-d H:i:s'); $sql = "INSERT INTO chat_tbl_user(user_ip) VALUES('" . $user_ip . "')"; $last_id = $db->query($sql); $sql = "SELECT max(id) FROM chat_tbl_user"; $last_id = $GLOBALS['db']->getOne($sql); if ($last_id) { setcookie("user_cookie", $user_cookie, time() + 7600); setcookie("user_name", "visitor" . $last_id . "", time() + 7600); $sql2 = "INSERT INTO chat_online_history(user_id,user_cookie,online_time, visit_time) VALUES('" . $last_id . "','" . $user_cookie . "','" . $curr_time . "','" . time() . "')"; $last_user_history = $db->query($sql2); $sql = "SELECT max(online_id) FROM chat_online_history"; $last_user_history = $GLOBALS['db']->getOne($sql); $user_id = $last_id; $user_online_id = $last_user_history; $user_name = "Visitor" . $last_id . ""; } } ?> <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.6.3/css/font-awesome.min.css"> <style> .btn-white { border-color: #cccccc; color: #333333; background-color: #ffffff; } .portlet { border: 1px solid; } .portlet .portlet-heading { padding: 0 15px; } .portlet .portlet-heading h4 { padding: 1px 0; font-size: 16px; } .portlet .portlet-heading a { color: #fff; } .portlet .portlet-heading a:hover, .portlet .portlet-heading a:active, .portlet .portlet-heading a:focus { outline: none; } .portlet .portlet-widgets .dropdown-menu a { color: #333; } .portlet .portlet-widgets ul.dropdown-menu { min-width: 0; } .portlet .portlet-heading .portlet-title { float: left; } .portlet .portlet-heading .portlet-title h4 { margin: 10px 0; } .portlet .portlet-heading .portlet-widgets { float: right; margin: 8px 0; } .portlet .portlet-heading .portlet-widgets .tabbed-portlets { display: inline; } .portlet .portlet-heading .portlet-widgets .divider { margin: 0 5px; } .portlet .portlet-body { padding: 15px; background: #fff; } .portlet .portlet-footer { padding: 10px 15px; background: #e0e7e8; } .portlet .portlet-footer ul { margin: 0; } .portlet-green, .portlet-green > .portlet-heading { border-color: #16a085; } .portlet-green > .portlet-heading { color: #fff; background-color: #16a085; } .portlet-orange, .portlet-orange > .portlet-heading { border-color: #f39c12; } .portlet-orange > .portlet-heading { color: #fff; background-color: #f39c12; } .portlet-blue, .portlet-blue > .portlet-heading { border-color: #2980b9; } .portlet-blue > .portlet-heading { color: #fff; background-color: #2980b9; } .portlet-red, .portlet-red > .portlet-heading { border-color: #e74c3c; } .portlet-red > .portlet-heading { color: #fff; background-color: #e74c3c; } .portlet-purple, .portlet-purple > .portlet-heading { border-color: #8e44ad; } .portlet-purple > .portlet-heading { color: #fff; background-color: #8e44ad; } .portlet-default, .portlet-dark-blue, .portlet-default > .portlet-heading, .portlet-dark-blue > .portlet-heading { border-color: #34495e; } .portlet-default > .portlet-heading, .portlet-dark-blue > .portlet-heading { color: #fff; background-color: #34495e; } .portlet-basic, .portlet-basic > .portlet-heading { border-color: #333; } .portlet-basic > .portlet-heading { border-bottom: 1px solid #333; color: #333; background-color: #fff; } @media (min-width: 768px) { } .text-green { color: #16a085; } .text-orange { color: #f39c12; } .text-red { color: #e74c3c; } </style> <div id="updateuser"></div> <?php $msg_id = ''; $sql = "SELECT * FROM chat_messages WHERE reciever_id = " . $user_id . " OR sender_id = " . $user_id . " and user_cookie= '" . $user_cookie . "'"; $res = $db->query($sql); if ($res) { while ($rs = $db->fetchByAssoc($res)) { $msg_id = $rs['msg_id']; } } ?> <input type="hidden" class="msg_id" id="msg_id" value="<?php echo $msg_id; ?>"> <input type="hidden" id="chat_user_id" value="<?php echo $user_id; ?>"> <input type="hidden" id="chat_user_online_id" value="<?php echo $user_online_id; ?>"> <div class="admin_chat" style=" position:fixed; bottom:0px; right:0px;"> <div class="container bootstrap snippet"> <div class="row"> <div class="col-md-4"> </div> <div class="col-md-4"> </div> <div class="col-md-4"> <div class="portlet portlet-default"> <div class="portlet-heading"> <a href="javascript:void(0);" data-toggle="collapse" data-target="#chat" title="close chat"> <div class="portlet-title"> <h4><i class="fa fa-circle text-green"></i> SugarIQ</h4> </div> <div class="portlet-widgets"> <span class="divider"></span> </div> <div class="clearfix"></div> </a> </div> <div id="chat" class="panel-collapse collapse"> <div> <div class="portlet-body chat-widget" style="overflow-y:scroll; width: auto; height: 300px;"> <div class="row"> <div class="col-lg-12"> <p class="text-center text-muted small"><?php echo date("F j, Y"); ?></p> </div> </div> <div id="ChatWindow" <?php if (isset($is_updated) and $is_updated == "No") { echo 'style="display:none;"'; } ?>></div> <div class="form_div" <?php if (isset($is_updated) and $is_updated == "Yes") { echo 'style="display:none;"'; } ?>> <p class="text-muted small"> Please provide Information Below to Continue!!! </p> <form role="form" id="userinfoForm" method="post"> <input type="hidden" name="online_user_id" value="<?php echo $user_id; ?>"> <div class="form-group" id="user_name_error"> <input type="text" class="form-control" name="user_name" id="user_name" placeholder="Enter Your Name"> </div> <div class="form-group" id="user_email_error"> <input type="text" class="form-control" name="user_email" id="user_email" placeholder="Enter Email Address"> </div> <div class="form-group"> <input type="submit" class="btn btn-block btn-primary" value="Submit"> </div> </form> </div> </div> </div> <div class="portlet-footer"> <div id="start_chat" <?php if (isset($is_updated) and $is_updated == "No") { echo 'style="display:none;"'; } ?>> <form role="form" id="chatForm" method="post"> <div class="form-group"> <textarea class="form-control" name="message" id="msg" onkeypress="checkInput(event)" placeholder="Enter message..."></textarea> </div> </form> </div> </div> </div> </div> </div> </div> </div> </div> <script> jQuery(document).ready(function () { jQuery('#userinfoForm').on('submit', function (e) { if (jQuery('#user_name').val() == '') { jQuery('#user_name_error').addClass('has-error'); } if (jQuery('#user_email').val() == '') { jQuery('#user_email_error').addClass('has-error'); } if (jQuery('#user_name').val() == '' || jQuery('#user_email').val() == '') { return false; } else { jQuery.ajax({ type: 'POST', url: '<?php echo $site_url; ?>/index.php?entryPoint=update_users¶m=2', data: jQuery(this).serialize(), beforeSend: function () { }, success: function (data) { if (data == '1') { jQuery('.form_div').hide(); jQuery('#ChatWindow').show(); jQuery('#start_chat').show(); jQuery('#msg').focus(); } } }); return false; } }); var div = jQuery('.chat-widget'); var count = 0; setInterval(function () { count = count + 1; if (count == 1) { var pos = div.scrollTop(); div.scrollTop(pos + 10000000); } }, 1500); updateMsgs(); function updateMsgs() { online_user_id = jQuery('#chat_user_id').val(); jQuery('#ChatWindow').load('<?php echo $site_url; ?>/index.php?entryPoint=update_messages&online_user_id=' + online_user_id); setTimeout(function () { updateMsgs(); }, 500); } updateuser(); function updateuser() { online_user_id = jQuery('#chat_user_online_id').val(); jQuery('#updateuser').load('<?php echo $site_url; ?>/index.php?entryPoint=update_users¶m=1&online_user_id=' + online_user_id); setTimeout(function () { updateuser(); }, 500); } }); function checkInput(event) { var x = event.which || event.keyCode; if (x == 13 && msg != '') { submit_form(); } } function submit_form() { var message = jQuery.trim(jQuery('#msg').val()); var msg_id = jQuery.trim(jQuery('.msg_id').val()); var chat_user_id = jQuery('#chat_user_id').val(); if (message != '') { var data = { 'message': message, 'msg_id': msg_id, 'chat_user_id': chat_user_id, }; jQuery.ajax({ type: 'POST', url: '<?php echo $site_url; ?>/index.php?entryPoint=submit_chat_msgs', data: data, success: function (data) { console.log(data); jQuery('.msg_id').val(data); jQuery('textarea').filter('[id=msg]').val(''); } }); } else if (msg == '') { jQuery('#send').attr('disabled', true); alert('Enter some text please!!!'); } return false; } </script> </body> </html>