69 lines
2.1 KiB
JavaScript
69 lines
2.1 KiB
JavaScript
/*
|
|
Template Name: Minton - Responsive Bootstrap 4 Admin Dashboard
|
|
Author: CoderThemes
|
|
Website: https://coderthemes.com/
|
|
Contact: support@coderthemes.com
|
|
File: Chat init js
|
|
*/
|
|
|
|
!function($) {
|
|
"use strict";
|
|
|
|
var ChatApp = function() {
|
|
this.$body = $("body"),
|
|
this.$chatInput = $('.chat-input'),
|
|
this.$chatList = $('.conversation-list'),
|
|
this.$chatSendBtn = $('.chat-send'),
|
|
this.$chatForm = $("#chat-form")
|
|
};
|
|
|
|
ChatApp.prototype.save = function() {
|
|
var chatText = this.$chatInput.val();
|
|
var chatTime = moment().format("h:mm");
|
|
if (chatText == "") {
|
|
this.$chatInput.focus();
|
|
return false;
|
|
} else {
|
|
$('<li class="clearfix odd"><div class="chat-avatar"><img src="../assets/images/users/avatar-1.jpg" alt="male"><i>' + chatTime + '</i></div><div class="conversation-text"><div class="ctext-wrap"><i>Nik</i><p>' + chatText + '</p></div></div></li>').appendTo('.conversation-list');
|
|
this.$chatInput.focus();
|
|
this.$chatList.animate({ scrollTop: this.$chatList.prop("scrollHeight") + 100 }, 1000);
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// init
|
|
ChatApp.prototype.init = function () {
|
|
var $this = this;
|
|
//binding keypress event on chat input box - on enter we are adding the chat into chat list -
|
|
$this.$chatInput.keypress(function (ev) {
|
|
var p = ev.which;
|
|
if (p == 13) {
|
|
$this.save();
|
|
return false;
|
|
}
|
|
});
|
|
|
|
|
|
//binding send button click
|
|
$this.$chatForm.on('submit', function (ev) {
|
|
ev.preventDefault();
|
|
$this.save();
|
|
$this.$chatInput.val('');
|
|
|
|
setTimeout(function() {
|
|
$this.$chatForm.removeClass('was-validated');
|
|
});
|
|
|
|
return false;
|
|
});
|
|
},
|
|
//init ChatApp
|
|
$.ChatApp = new ChatApp, $.ChatApp.Constructor = ChatApp
|
|
|
|
}(window.jQuery),
|
|
|
|
//initializing main application module
|
|
function($) {
|
|
"use strict";
|
|
$.ChatApp.init();
|
|
}(window.jQuery); |