/*eslint-disable */
$(document).ready(function () {
var toggleMenu = localStorage.getItem('main_menu') ? localStorage.getItem('main_menu') : 'open';
if ($(document).width() < 1200) {
$(".main-menu").addClass("is-toggled");
} else {
if(toggleMenu == 'close'){
console.log(toggleMenu == 'close');
$(".main-menu").addClass("is-toggled");
}else if(toggleMenu == 'open'){
$(".main-menu").removeClass("is-toggled");
}
}
$(window).resize(function (e) {
if ($(document).width() < 1200) {
$(".main-menu").addClass("is-toggled");
} else {
$(".main-menu").removeClass("is-toggled");
}
});
svg4everybody();
// button ripple
//$('[ripple]').append('
');
var cleanUp, debounce, i, len, ripple, rippleContainer, ripples, showRipple, outClose;
debounce = function (func, delay) {
var inDebounce;
inDebounce = undefined;
return function () {
var args, context;
context = this;
args = arguments;
clearTimeout(inDebounce);
return inDebounce = setTimeout(function () {
return func.apply(context, args);
}, delay);
};
};
showRipple = function (e) {
var pos, ripple, rippler, size, style, x, y;
ripple = this;
rippler = document.createElement('span');
size = ripple.offsetWidth;
pos = ripple.getBoundingClientRect();
x = e.offsetX - (size / 2);
y = e.offsetY - (size / 2);
style = 'top:' + y + 'px; left: ' + x + 'px; height: ' + size + 'px; width: ' + size + 'px;';
ripple.rippleContainer.appendChild(rippler);
return rippler.setAttribute('style', style);
};
cleanUp = function () {
while (this.rippleContainer.firstChild) {
this.rippleContainer.removeChild(this.rippleContainer.firstChild);
}
};
outClose = function (time) {
time = time ? time : 150;
// header notification
$('.profile__item--notification').removeClass('active').find('.notification-list').slideUp(time);
// profile menu
$('.profile__user').removeClass('active').find('.profile__menu').slideUp(time);
$('.dropdown, .dropdown-select').removeClass('active');
$('.dropdown-list').slideUp(time, function () {
$(this).find('.assign--buttons').show();
$(this).find('.assign--list').hide();
});
$('.form__search_type').slideUp(150);
$('.form__search_results').slideUp(150);
}
dropdownSelectRender = function (el) {
var select = $(el).find('select');
var options = [];
var value;
select.find('option').each(function (i, el) {
options.push({
val: $(el).val(),
text: $(el).text(),
selected: $(el).is(':selected')
});
if ($(el).is(':selected')) {
value = $(el).text();
}
});
var heskPath = $('input[type="hidden"][name="HESK_PATH"]').val();
var template = '' + escapeHtml(value) + '
';
for (var i in options) {
if (options[i].selected) $(el).attr('data-value', options[i].val);
template += '- ' + escapeHtml(options[i].text) + '
'
}
template += '
';
$(el).append(template);
}
ripples = document.querySelectorAll('[ripple]');
for (i = 0, len = ripples.length; i < len; i++) {
ripple = ripples[i];
rippleContainer = document.createElement('div');
rippleContainer.className = 'ripple--container';
ripple.addEventListener('mousedown', showRipple);
ripple.addEventListener('mouseup', debounce(cleanUp, 10000));
ripple.rippleContainer = rippleContainer;
ripple.appendChild(rippleContainer);
}
// show/hide password
$('.input-group-append--icon').on('click', function (e) {
var $passwordField = $(this).closest('.form-group').find('input');
var $iconUrl = $(this).find('use').attr('xlink:href');
if ($passwordField.attr('type') == 'text') {
$passwordField.attr('type', 'password');
$(this).find('svg').removeClass('icon-eye-open').addClass('icon-eye-close');
$iconUrl = $iconUrl.replace('eye-open', 'eye-close');
$(this).find('use').attr('xlink:href', $iconUrl);
} else if ($passwordField.attr('type') == 'password') {
$passwordField.attr('type', 'text');
$(this).toggleClass('passwordIsHidden');
$iconUrl = $iconUrl.replace('eye-close', 'eye-open');
$(this).find('use').attr('xlink:href', $iconUrl);
$(this).find('svg').removeClass('icon-eye-close').addClass('icon-eye-open');
}
});
// end show/hide password
// toggle submenu
$(".listitem.submenu").click(
function (e) {
if (!$(this).hasClass('submenu-is-opened')) {
$('.submenu.submenu-is-opened .submenu__list').slideUp(400, function () {
$(this).closest('.submenu-is-opened').removeClass('submenu-is-opened');
});
}
if (!$(e.target).closest('.submenu__list').length) {
e.preventDefault();
console.log($(this).hasClass('submenu-is-opened'));
$(this).find(".submenu__list").stop(true, true).slideToggle(150);
$(this).toggleClass("submenu-is-opened");
} else {
location.href = $(e.target).find('a').attr('href');
}
}
);
// $(".is-toggled .listitem").hover(
// function () {
// var $lengthToTop = $(this).closest(".listitem").offset();
// $(this).find(".listitem__menu").css("top", $lengthToTop.top)
// });
// end toggle submenu
// toggle Main menu
$("#navbarToggler").click(function () {
console.log()
if(!$(this).closest(".main-menu").hasClass("is-toggled")){
localStorage.setItem('main_menu', 'close');
$(this).closest(".main-menu").addClass("is-toggled");
}else{
localStorage.setItem('main_menu', 'open');
$(this).closest(".main-menu").removeClass("is-toggled");
}
})
// end toggle Main menu
if ($(".table").length > 0) {
$(".table__td-id .checkbox-custom label").click(function () {
$(this).closest("tr").toggleClass("is-checked");
})
}
$('.checkbox-custom input[type="checkbox"]').change(function (e) {
if ($(e.target).is(':checked')) {
$(e.target).closest('.checkbox-custom').addClass('checked');
} else {
$(e.target).closest('.checkbox-custom').removeClass('checked');
}
});
// Custom select
var x, i, j, selElmnt, a, b, c;
/*look for any elements with the class "select-custom":*/
x = document.getElementsByClassName('select-custom');
for (i = 0; i < x.length; i++) {
selElmnt = x[i].getElementsByTagName('select')[0];
/*for each element, create a new DIV that will act as the selected item:*/
a = document.createElement('DIV');
a.setAttribute('class', 'select-selected');
a.dataset.value = selElmnt[0].value;
a.innerHTML = selElmnt.options[selElmnt.selectedIndex].innerHTML;
x[i].insertBefore(a, selElmnt);
// x[i].insertBefore(a, x[i].firstChild);
/*for each element, create a new DIV that will contain the option list:*/
b = document.createElement('DIV');
b.setAttribute('class', 'select-items select-hide');
for (j = 1; j < selElmnt.length; j++) {
/*for each option in the original select element,
create a new DIV that will act as an option item:*/
c = document.createElement('DIV');
c.innerHTML = selElmnt.options[j].innerHTML;
c.addEventListener('click', function (e) {
/*when an item is clicked, update the original select box,
and the selected item:*/
var y, i, k, s, h;
s = this.parentNode.parentNode.getElementsByTagName('select')[0];
h = this.parentNode.previousSibling;
for (i = 0; i < s.length; i++) {
if (s.options[i].innerHTML == this.innerHTML) {
s.selectedIndex = i;
h.innerHTML = this.innerHTML;
y = this.parentNode.getElementsByClassName('same-as-selected');
for (k = 0; k < y.length; k++) {
y[k].removeAttribute('class');
}
this.setAttribute('class', 'same-as-selected');
h.dataset.value = s.options[i].getAttribute('value');
break;
}
}
h.click();
});
b.appendChild(c);
}
x[i].insertBefore(b, selElmnt);
a.addEventListener('click', function (e) {
/*when the select box is clicked, close any other select boxes,
and open/close the current select box:*/
e.stopPropagation();
closeAllSelect(this);
this.nextSibling.classList.toggle('select-hide');
this.classList.toggle('select-arrow-active');
});
}
function closeAllSelect(elmnt) {
/*a function that will close all select boxes in the document,
except the current select box:*/
var x, y, i, arrNo = [];
x = document.getElementsByClassName('select-items');
y = document.getElementsByClassName('select-selected');
for (i = 0; i < y.length; i++) {
if (elmnt == y[i]) {
arrNo.push(i);
} else {
y[i].classList.remove('select-arrow-active');
}
}
for (i = 0; i < x.length; i++) {
if (arrNo.indexOf(i)) {
x[i].classList.add('select-hide');
}
}
if (!$(elmnt.target).closest('.out-close').length) outClose();
if ($(elmnt.target).closest('.dropdown').length) return;
event.stopPropagation();
}
/*if the user clicks anywhere outside the select box,
then close all select boxes:*/
var documentClick = true;
$(document).click(closeAllSelect);
$(document).on('touchend', 'body', function (e) {
if (documentClick) {
$(document).unbind('click');
documentClick = false;
}
closeAllSelect(e);
});
// $('body').on('click', '.selectize-dropdown', function(e){
// console.log(e);
// });
// Toggle table filters
if ($(".filters").length > 0) {
var filtersListing = $("#filtersListing");
var filtersBtnToggle = $("#btnToggleFilters");
var filtersAction = $("#filtersAction");
function toggleFilters() {
filtersBtnToggle.find(".toggler-value").text(filtersListing.find(".filter-item").length);
if (filtersListing.hasClass("is-collapsed")) {
filtersListing.removeClass("is-collapsed");
filtersListing.find(".overflowed").unwrap().removeClass("overflowed");
filtersBtnToggle.find(".toggler-text").text("Hide");
} else {
filtersBtnToggle.find(".toggler-text").text("Show all");
var btnWidth = filtersBtnToggle.width() + parseInt(filtersBtnToggle.css("marginLeft"));
var temporaryWidth = filtersListing.width() - btnWidth - filtersAction.width() + 200;
var filtersListingRowWidth = btnWidth + filtersAction.width();
filtersListing.children('.filter-item').each(function (index, value) {
var tempWidth = filtersListingRowWidth + $(this).width() + parseInt($(this).css('marginLeft'), 10);
if (temporaryWidth > tempWidth) {
filtersListingRowWidth = tempWidth;
} else {
$(this).addClass('overflowed');
}
})
filtersBtnToggle.removeClass("overflowed");
filtersListing.find(".overflowed").wrapAll("");
filtersListing.addClass('is-collapsed');
}
}
toggleFilters()
filtersBtnToggle.click(function () {
toggleFilters()
})
}
$('.filters-mobile [data-action="mobile-filters-more"]').click(function () {
$('.filters-mobile').toggleClass('open');
});
$('.filters-mobile [data-action="mobile-filters-hide"]').click(function () {
$('.filters-mobile').toggleClass('open');
});
// end Toggle table filters
$('[data-action="go-back"]').click(function (e) {
window.history.go(-1);
e.preventDefault();
});
/* ===========================================================
FORM VALIDATION
============================================================*/
$('#login-form').submit(function (e) {
var login = $.trim($('#regInputUsername').val()).length;
var pass = $('#regInputPassword').val().length;
if (!login) {
$('#regInputUsername').closest('.form-group').addClass('error');
e.preventDefault();
}
if (!pass) {
$('#regInputPassword').closest('.form-group').addClass('error');
e.preventDefault();
}
if (login && pass) {
// For example
$(e.target).addClass('invalid');
e.preventDefault();
}
});
$('#login-form input').keyup(function (e) {
if ($(e.target).val()) {
$(e.target).closest('.form-group').removeClass('error');
}
});
$('#delInputPassword').keyup(function (e) {
// For example
if ($(e.target).val().length) {
$('#delete-form .btn-full').removeAttr('disabled');
} else {
$('#delete-form .btn-full').attr('disabled', 'disabled');
}
});
$('#header-search').focus(function (e) {
$('.form__search').addClass('focus');
if(!$('.form__search').hasClass('type')){
$('.form__search_type').slideDown(150);
}
});
$('#header-search').blur(function (e) {
$('.form__search').removeClass('focus');
});
$('#header-search').keyup(function (e) {
var val = $.trim($(this).val());
if (val.length) {
$('.form__search').addClass('value');
} else {
$('.form__search').removeClass('value');
}
});
$('.form__search .search--type').click(function(e){
$('.form__search_results').slideUp(150);
$('.form__search_type').slideDown(150);
});
$('.form__search_type .type--list [data-type]').click(function(e){
var type = $(this).attr('data-type');
$('.form__search').addClass('type value').find('input').attr('placeholder', '').prop('readonly', false).focus();
$('.form__search .search-clear').show();
$('.form__search .search--type').html(type+':').show();
$('.form__search_type').slideUp(150);
});
$('.form__search .search-clear').click(function (e) {
$('#header-search').val('').attr('placeholder', 'Search for tickets, templates, articles, team members').prop('readonly', true);
$('.form__search').removeClass(['value', 'type']);
$('#header-search').focus();
$('.form__search .search--type').hide().html('');
$('.form__search_results').slideUp(150);
});
$('.topmenu__list .topmenu__item').mouseenter(function (e) {
if (!$(this).find('.topmenu__dropdown').length) return;
var w = $(this).find('.topmenu__dropdown').width();
var left = $(this).offset().left - ((w / 2) - ($(this).width() / 2)) < 0;
var right = ($(this).offset().left + $(this).width()) + ((w / 2) - ($(this).width() / 2)) > $(document).width();
if (left) {
$(this).find('.topmenu__dropdown').css('left', 0);
} else if (right) {
$(this).find('.topmenu__dropdown').css({
'left': 'auto',
'right': 0
});
} else {
$(this).find('.topmenu__dropdown').removeAttr('style');
}
});
$('[data-action="advanced-search"]').click(function(e){
$('.right-bar.advanced-search').fadeIn(150);
});
/* ===========================================================
Dropdown & dropdown selects
============================================================*/
$('.dropdown-select').each(function (i, el) {
dropdownSelectRender(el);
});
$('body').on('click', '.dropdown > label', function (e) {
if ($(e.currentTarget).closest('.dropdown').hasClass('active')) {
$(e.currentTarget).closest('.dropdown').removeClass('active').find('.dropdown-list').slideUp(150);
} else {
$('.dropdown').removeClass('active');
$('.dropdown-list').slideUp(150);
$(e.currentTarget).closest('.dropdown').addClass('active').find('.dropdown-list').slideDown(150);
}
});
$('body').on('click', '.dropdown-list > li', function (e) {
if ($(e.currentTarget).hasClass('noclose')) return;
$(e.currentTarget).closest('.dropdown').removeClass('active').find('.dropdown-list').slideUp(150);
});
$('body').on('click', '.dropdown-select .label', function (e) {
if ($(e.currentTarget).closest('.dropdown-select').hasClass('active')) {
$(e.currentTarget).closest('.dropdown-select').removeClass('active').find('.dropdown-list').slideUp(150);
} else {
$('.dropdown-select').removeClass('active');
$('.dropdown-list').slideUp(150);
$(e.currentTarget).closest('.dropdown-select').addClass('active').find('.dropdown-list').slideDown(150);
}
});
$('body').on('click', '.dropdown-list > li', function (e) {
if ($(e.currentTarget).hasClass('noclose')) return;
$(e.currentTarget).closest('.dropdown').removeClass('active').find('.dropdown-list').slideUp(150);
});
$('body').on('click', '.dropdown-select .dropdown-list li', function (e) {
var text, value;
value = $(e.currentTarget).attr('data-option');
if ($(e.currentTarget).closest('.dropdown-select').hasClass('submit-us')) {
text = value.length ? 'Submit as ' + $(e.currentTarget).text() : $(e.currentTarget).text();
text = text.toLowerCase().charAt(0).toUpperCase() + text.toLowerCase().substr(1);
} else {
text = $(e.currentTarget).text();
}
$(e.currentTarget).closest('.dropdown-list').find('li').removeClass('selected');
$(e.currentTarget).addClass('selected');
$(e.currentTarget).closest('.dropdown-select').attr('data-value', value).find('.label span').text(text);;
$(e.currentTarget).closest('.dropdown-select').removeClass('active');
$(e.currentTarget).closest('.dropdown-list').slideUp(150);
$(e.currentTarget).closest('.dropdown-select').find('select option[value="' + value + '"]').prop('selected', true);
$(e.currentTarget).closest('.dropdown-select').find('select').trigger('change');
});
// End Dropdown & dropdown selects
/* ===========================================================
Ticket details
============================================================*/
$('.ticket__replies_link').click(function (e) {
if ($(e.currentTarget).hasClass('visible')) {
$(e.currentTarget).removeClass('visible');
$('.ticket__replies_list').slideUp(150);
} else {
$('.ticket__replies_list').slideDown(150);
$(e.currentTarget).addClass('visible');
}
});
// Ticket upload file
var ticketFiles = [];
$('.block--attach input[type="file"]').change(function (e) {
for (i = 0; i < e.target.files.length; i++) {
ticketFiles.push(e.target.files[i]);
var extension = '.' + e.target.files[i].name.split('.')[e.target.files[i].name.split('.').length - 1];
var name = '';
for (n = 0; n < e.target.files[i].name.split('.').length; n++) {
if (n < (e.target.files[i].name.split('.').length - 1)) {
name += e.target.files[i].name.split('.')[n];
}
}
if (name.length > 16) name = name.slice(0, 10) + '...' + name.slice((name.length - 8), name.length);
var label = '' + name + extension + '
';
$('.block--attach-list').append(label);
$('.block--attach-list div').each(function (i, el) {
$(el).attr('data-i', i);
});
}
});
$('body').on('click', '.block--attach-list div i', function (e) {
var i = Number($(e.target).closest('div').attr('data-i'));
ticketFiles.splice(i, 1);
$(e.currentTarget).closest('div').slideUp(150, function () {
$(e.currentTarget).closest('div').remove();
$('.block--attach-list div').each(function (i, el) {
$(el).attr('data-i', i);
})
});
console.log(ticketFiles);
});
$('.accordion-title').click(function (e) {
if ($(e.currentTarget).closest('.accordion').hasClass('visible')) {
$(e.currentTarget).closest('.accordion').find('.accordion-body').slideUp(150);
$(e.currentTarget).closest('.accordion').removeClass('visible');
} else {
$(e.currentTarget).closest('.accordion').find('.accordion-body').slideDown(150);
$(e.currentTarget).closest('.accordion').addClass('visible');
}
});
$('.filter-item .close').click(function(e){
e.preventDefault();
e.stopPropagation();
$(this).closest('.filter-item').remove();
$('#btnToggleFilters .toggler-value').text($('.filters .filters__listing .filter-item').length);
});
$('.filter-item.group input[type="checkbox"]').change(function(e){
e.preventDefault();
e.stopPropagation();
$('.filter-item.group input[type="checkbox"]:checked').prop('checked', false);
$(this).prop('checked', true);
});
/* ===========================================================
Templates
============================================================*/
// Template Create/Edit
var openCreateTemplate = function (e) {
$('.right-bar.template-create').fadeIn(150, function () {
$(this).find('.right-bar__body').css('transform', 'translateX(0%)');
});
};
var closeRightBar = function (e) {
var link = $('.right-bar__body h3 a')[0];
if (link && link.href !== '' && link.href !== 'javascript:') {
window.location.href = link.href;
}
$('.right-bar').fadeOut(150);
$('body').removeClass('noscroll');
};
$('body').on('click', '[data-action="create-template"], [data-action="edit-template"]', function (e) {
openCreateTemplate(e);
$('input:text:visible:first').focus();
e.preventDefault();
});
$('.right-bar').click(function (e) {
if ($(e.target).closest('.right-bar__body').length) return;
closeRightBar(e);
});
$('.right-bar__body h3 a').click(function (e) {
closeRightBar(e);
if (e.currentTarget.href === '' || e.currentTarget.href === 'javascript:') {
e.preventDefault();
}
});
$('[data-action="delete-template"]').click(function (e) {
openCreateTemplate(e);
e.preventDefault();
});
// Template Delete
var lastDeletedTemplate = {};
$('body').on('click', '[data-action="delete"]', function (e) {
var name = $(e.target).closest('li').find('h3').text();
var type = $(e.target).closest('ul').attr('class') == 'response__list' ? 'response' : 'ticket';
$(this).closest('li').addClass('pre-delete');
$('.modal.templates .modal__description').html(name);
$('.modal.templates h3 span').html(type);
openModal(e, $('.modal.templates'));
e.preventDefault();
});
$('.modal').click(function (e) {
if ($(e.target).hasClass('modal')) closeModal(e);
//if($(e.target).attr('data-action') == 'modal-close' || $(e.target).closest('[data-action="modal-close"]').length || $(e.target).closest('.modal__body').length == 0)closeModal(e);
});
$('[data-action="template-delete-confirm"]').click(function (e) {
var type = $('.pre-delete').closest('ul').attr('class') == 'response__list' ? 'response' : 'ticket';
var name = $('.pre-delete h3').text();
$('.pre-delete').slideUp(150, function (e) {
$(this).addClass('deleted');
$(this).closest('ul').find('li').each(function (i, el) {
if ($(this).hasClass('deleted')) {
lastDeletedTemplate = {
type: type,
position: i,
el: el
}
}
});
$(this).remove();
console.log(lastDeletedTemplate);
});
closeModal();
$('[data-type="template-delete"] .notification--title').text('You deleted the ' + type);
$('[data-type="template-delete"] .notification--text').text(name);
$('[data-type="template-delete"]').fadeIn(150);
});
$('[data-action="template-delete-cancel"]').click(function (e) {
var type = lastDeletedTemplate.type == 'response' ? '.response__list' : '.ticket__list';
if (lastDeletedTemplate.position == 0) {
$(type).prepend(lastDeletedTemplate.el);
} else {
$(type + ' li:nth-child(' + lastDeletedTemplate.position + ')').after(lastDeletedTemplate.el);
}
$('.deleted').slideDown(150, function () {
$(this).removeClass('deleted');
});
$(this).closest('.notification-flash').fadeOut(150);
});
/* ===========================================================
Header
============================================================*/
// Header events
$('[data-action="show-notification"]').click(function (e) {
if ($(this).closest('.profile__item').hasClass('active')) {
$(this).closest('.profile__item').removeClass('active').find('.notification-list').slideUp(150);
} else {
outClose();
$(this).closest('.profile__item').addClass('active').find('.notification-list').slideDown(150);
}
});
$('[data-action="show-profile"]').click(function (e) {
if ($('.profile__user').hasClass('active')) {
$('.profile__user').removeClass('active').find('.profile__menu').slideUp(150);
} else {
outClose();
$('.profile__user').addClass('active').find('.profile__menu').slideDown(150);
}
});
/* ===========================================================
Modals
============================================================*/
var openModal = function (e, el) {
//$('body').addClass('noscroll');
el.fadeIn(150);
};
$('[data-modal]').click(function() {
$this = $(this);
if ($this.attr('data-callback') !== undefined) {
window[$this.attr('data-callback')]($this);
}
openModal(undefined, $('.modal' + $this.attr('data-modal')));
});
var closeModal = function (e) {
if ($('.right-bar').is(':hidden') || !$('.right-bar').length) {
$('body').removeClass('noscroll');
}
$('.modal').fadeOut(150);
$('.pre-delete').removeClass('pre-delete');
};
$('.notification-flash .close').click(function (e) {
$(this).closest('.notification-flash').fadeOut(150);
});
$('.notification-bar .close').click(function (e) {
$(this).closest('.notification-bar').fadeOut(150);
});
/* ===========================================================
Tickets list
============================================================*/
// Tickets Filters
$('[data-action="filter--search"]').keyup(function (e) {
if ($(e.target).val().length) {
$(this).closest('.form-group').find('.search-clear').css('opacity', 1);
} else {
$(this).closest('.form-group').find('.search-clear').css('opacity', 0);
}
$('.search--list .checkbox-custom').filter(function () {
$(this).toggle($(this).find('label').text().toLowerCase().indexOf($(e.target).val()) > -1);
});
});
$('.right-bar.filter-list .filter--search .search-clear').click(function (e) {
$('.search--list .checkbox-custom').filter(function () {
$(this).toggle($(this).find('label').text().toLowerCase().indexOf('') > -1);
});
$(this).closest('.form-group').find('[data-action="filter--search"]').val('');
$(this).css('opacity', 0);
});
$('.filter-list .section--title a').click(function (e) {
if ($(this).hasClass('all-selected')) {
$(this).removeClass('all-selected').text('Select all').closest('.filter-list__section').find('input[type="checkbox"]').prop('checked', false).change();
} else {
$(this).addClass('all-selected').text('Deselect all').closest('.filter-list__section').find('input[type="checkbox"]').prop('checked', true).change();
}
e.preventDefault();
});
$('.filter-list__section input[type="checkbox"]').change(function (e) {
var all = $(this).closest('.filter-list__section').find('input[type="checkbox"]').length;
var checked = $(this).closest('.filter-list__section').find('input[type="checkbox"]:checked').length;
if (all == checked) {
$(this).closest('.filter-list__section').find('.section--title a').addClass('all-selected').text('Deselect all')
} else {
if ($(this).closest('.filter-list__section').find('.section--title a').hasClass('all-selected')) {
$(this).closest('.filter-list__section').find('.section--title a').removeClass('all-selected').text('Select all')
}
}
});
$('table thead [data-action="select-all"]').change(function (e) {
var checked = $(this).is(':checked');
$(this).closest('table').find('tbody .table__first_td input[type="checkbox"]').prop('checked', checked);
if (checked) {
$('.topmenu, .botmenu').addClass('active');
} else {
$('.topmenu, .botmenu').removeClass('active');
}
});
$('.right-bar__body.filter-list__body input[type="checkbox"]').change(function (e) {
if ($('.right-bar__body.filter-list__body input[type="checkbox"]:checked').length) {
$('.right-bar__body.filter-list__body [data-action="filters-save-group"]').prop('disabled', false);
} else {
$('.right-bar__body.filter-list__body [data-action="filters-save-group"]').prop('disabled', true);
}
});
// $('.right-bar__body li').filter(function(){
// $(this).toggle($(this).text().toLowerCase().indexOf('at') > -1)
// });
// Tickets
if ($('.assign--list select').length) {
$('.assign--list select').selectize();
}
if ($('.bulk-actions select').length) {
$('.bulk-actions select').selectize();
}
if ($('.search-options select').length) {
$('.search-options select').selectize();
}
$('[data-action="add-filters"], [data-action="ticket-mobile-filters"]').click(function (e) {
$('body').toggleClass('noscroll');
$('.filter-list').fadeIn(150);
});
$('.dropdown.assignment .assign__body > li > a').click(function (e) {
var type = $(e.currentTarget).closest('li').attr('data-type')
console.log(type);
if (type == 'to-my') {
$(e.currentTarget).closest('.assign__wrapper').removeClass('unassigned').removeClass('assign').addClass('to-my');
$(e.currentTarget).closest('.assign__wrapper').find('.assign__head .assign__head_name b').text('To my');
$(e.currentTarget).closest('.assign__wrapper').find('.assign__head .assign__head_name span').text('Assigned to me');
$(e.currentTarget).closest('.dropdown').find('label span').text('To my');
outClose(10);
} else if (type == 'unassigned') {
$(e.currentTarget).closest('.assign__wrapper').removeClass('to-my').removeClass('assign').addClass('unassigned');
$(e.currentTarget).closest('.assign__wrapper').find('.assign__head .assign__head_name b').text('Unassigned');
$(e.currentTarget).closest('.assign__wrapper').find('.assign__head .assign__head_name span').text('This ticket is not assigned to anyone');
$(e.currentTarget).closest('.dropdown').find('label span').text('Unassigned');
outClose(10);
} else if (type == 'assign') {
var $select = $(e.currentTarget).closest('.dropdown').find('select').selectize();
var selectize = $select[0].selectize; // This stores the selectize object to a variable (with name 'selectize')
selectize.clear();
$(e.currentTarget).closest('.dropdown').find('.assign--buttons').hide();
$(e.currentTarget).closest('.dropdown').find('.assign--list').show();
}
e.preventDefault();
});
$('.dropdown.assignment .assign--list [data-action="close"]').click(function (e) {
$(e.currentTarget).closest('.dropdown').find('.assign--buttons').show();
$(e.currentTarget).closest('.dropdown').find('.assign--list').hide();
});
$('.dropdown.assignment .assign--list [data-action="save"]').click(function (e) {
var val = $(e.currentTarget).closest('.assign--list').find('select').val();
if ($.trim(val).length) {
$(e.currentTarget).closest('.dropdown').find('.assign__wrapper').removeClass('unassigned').removeClass('to-my').addClass('assign');
$(e.currentTarget).closest('.dropdown').find('.assign__head .assign__head_name b').text(val);
$(e.currentTarget).closest('.dropdown').find('.assign__head .assign__head_name span').text('Assigned to ' + val);
$(e.currentTarget).closest('.dropdown').find('label span').text(val);
outClose(10);
}
});
$('#default-table .table__first_td input[type="checkbox"]').change(function (e) {
if ($(this).is(':checked')) {
$(this).closest('tr').addClass('selected');
} else {
$(this).closest('tr').removeClass('selected');
}
var checked = $('#default-table .table__first_td input[type="checkbox"]:checked').length;
$('.topmenu > p').text(checked + ' tasks selected')
if (checked > 0) {
$('.topmenu, .botmenu').addClass('active');
} else {
$('.topmenu, .botmenu').removeClass('active');
}
});
$('.tickets__mobile_head [data-action="ticket-mobile-actions"]').click(function (e) {
$('.main__content.tickets').toggleClass('actions');
});
$('[data-action="tickets-select-dismiss"]').click(function (e) {
$('.topmenu, .botmenu').removeClass('active');
$('#default-table .table__first_th input[type="checkbox"]:checked, #default-table .table__first_td input[type="checkbox"]:checked').prop('checked', false);
})
/* ===========================================================
Clipboard
============================================================*/
function coptToClipboard(text) {
var textArea = document.createElement("textarea");
textArea.style.position = 'absolute';
textArea.style.top = '-10000px';
textArea.style.left = '-10000px';
textArea.value = text;
document.body.appendChild(textArea);
textArea.focus();
textArea.select();
try {
var successful = document.execCommand("copy");
var msg = successful ? "successful" : "unsuccessful";
console.log("Fallback: Copying text command was " + msg);
} catch (err) {
console.error("Fallback: Oops, unable to copy", err);
}
document.body.removeChild(textArea);
}
function copyTextToClipboard(text) {
if (!navigator.clipboard) {
fallbackCopyTextToClipboard(text);
return;
}
navigator.clipboard.writeText(text).then(
function () {
console.log("Async: Copying to clipboard was successful!");
},
function (err) {
console.error("Async: Could not copy text: ", err);
}
);
}
/* ===========================================================
Categories
============================================================*/
$(document).on('click', '[data-action="generate-link"]', function (e) {
coptToClipboard($(this).data('link'));
$('[data-type="link-generate-message"]').fadeIn(150, function () {
var notification = $(this);
setTimeout(function () {
notification.fadeOut(150);
}, 3000);
});
e.preventDefault();
});
$('[data-action="category-create"]').click(function (e) {
$('.right-bar.category-create').fadeIn(150);
$('body').addClass('noscroll');
$('input:text:visible:first').focus();
e.preventDefault();
});
$('select[name="modal-dropdown"]').selectize();
/* ===========================================================
Team
============================================================*/
$('[data-action="team-create"]').click(function (e) {
$('.right-bar.team-create').fadeIn(150);
$('body').addClass('noscroll');
$('input:text:visible:first').focus();
e.preventDefault();
});
$('.right-bar.team-create [data-action="next"]').click(function (e) {
var step = Number($('.right-bar.team-create .right-bar__body').attr('data-step')) + 1;
$('.right-bar.team-create .right-bar__body').attr('data-step', step);
});
$('.right-bar.team-create [data-action="back"]').click(function (e) {
var step = Number($('.right-bar.team-create .right-bar__body').attr('data-step')) - 1;
$('.right-bar.team-create .right-bar__body').attr('data-step', step);
});
$('.right-bar.team-create [data-action="save"]').click(function (e) {
// FOR EXEMPLES
var rand = 0 - 0.5 + Math.random() * (7 - 0 + 1)
rand = Math.round(rand);
var newTeam = '' + $($('.table tbody tr')[rand]).html() + '
';
$('.team .table tbody').prepend(newTeam);
$('.right-bar.team-create').fadeOut(150).find('.right-bar__body').attr('data-step', 1);
$('.notification-flash[data-type="team-created-confirm"]').fadeIn(150, function () {
var notification = $(this);
setTimeout(function () {
notification.fadeOut(150);
}, 3000);
});
});
$('.modal.team-delete [data-action="cancel"]').click(function () {
$('.modal.team-delete').fadeOut(150);
});
$('.modal.team-delete [data-action="close"]').click(function (e) {
$('.team-create').fadeOut(150, closeModal).find('.right-bar__body').attr('data-step', 1);
});
/* ===========================================================
Create ticket
============================================================*/
if ( $.isFunction($.fn.datepicker) ) {
$('.datepicker').datepicker({
language: 'en',
position: 'right top',
autoClose: true,
onSelect: function (formattedDate, date, inst) {
if (formattedDate.length) {
inst.$el
.parent()
.parent()
.find('.calendar--value').fadeIn(150).find('span').text(formattedDate);
}
},
onHide: function (inst, animationCompleted) {
$('.param.calendar button').removeClass('active');
}
});
} /* End if datepicker */
$('.param.calendar button').click(function (e) {
$(this).addClass('active');
$(this).parent()
.find('.datepicker')
.data("datepicker")
.show();
});
$('.param.calendar .close').click(function (e) {
$(this).parent().parent()
.find('.calendar--button')
.find('.datepicker')
.data("datepicker")
.clear();
$(this).parent().parent().find('.calendar--value').fadeOut(150, function () {
$(this).find('span').text('');
})
});
$('.right-bar.ticket-create .step-1 .cayrgory-list li').click(function (e) {
$('.right-bar.ticket-create .right-bar__body').attr('data-step', 2);
});
$('.right-bar.ticket-create [data-action="next"]').click(function (e) {
var step = Number($('.right-bar.ticket-create .right-bar__body').attr('data-step')) + 1;
$('.right-bar.ticket-create .right-bar__body').attr('data-step', step);
});
$('.right-bar.ticket-create [data-action="back"]').click(function (e) {
var step = Number($('.right-bar.ticket-create .right-bar__body').attr('data-step')) - 1;
$('.right-bar.ticket-create .right-bar__body').attr('data-step', step);
});
$('.right-bar.ticket-create [data-action="save"]').click(function (e) {
// FOR EXEMPLES
var rand = 0 - 0.5 + Math.random() * (7 - 0 + 1)
rand = Math.round(rand);
var newTeam = '' + $($('.table tbody tr')[rand]).html() + '
';
$('.table.ticket-list tbody').prepend(newTeam);
$('.right-bar.ticket-create').fadeOut(150).find('.right-bar__body').attr('data-step', 1);
$('.notification-flash[data-type="ticket-created-confirm"]').fadeIn(150, function () {
var notification = $(this);
setTimeout(function () {
notification.fadeOut(150);
}, 3000);
});
$('body').removeClass('noscroll');
});
/* ===========================================================
Profile
============================================================*/
$('.right-bar .step-bar li').click(function (e) {
var step = Number($(this).attr('data-link'));
var current = Number($(this).closest('.right-bar__body').attr('data-step'));
if (step != current) {
$(this).closest('.right-bar__body').attr('data-step', step);
}
});
$('.main__content.profile [data-action="profile-edit"]').click(function (e) {
$('.right-bar.profile-edit').fadeIn(150);
$('body').addClass('noscroll');
});
$('.main__content.profile [data-action="profile-delete"]').click(function (e) {
$('.modal.profile-delete').fadeIn(150);
e.preventDefault();
});
$('.modal [data-action="cancel"]').click(function (e) {
e.preventDefault();
closeModal();
});
$('[data-action="profile-log-out"]').click(function (e) {
$('.modal.log-out').fadeIn(150);
e.preventDefault();
});
$('.right-bar.profile-edit [data-action="save"]').click(function (e) {
$(this).closest('.right-bar').fadeOut(150);
$('body').removeClass('noscroll');
$('.notification-bar[data-type="profile-saved"]').fadeIn(150);
});
$('.main__content.profile [data-action="profile-password"]').click(function (e) {
$('.right-bar.profile-password').fadeIn(150);
$('body').addClass('noscroll');
});
$('.right-bar.profile-password [data-action="save"]').click(function (e) {
$(this).closest('.right-bar').fadeOut(150);
$('body').removeClass('noscroll');
$('.notification-bar[data-type="profile-saved"]').fadeIn(150);
});
$('#profile-photo-upload').change(function (e) {
var reader = new FileReader();
var img = $(this).closest('.profile__photo').find('.profile__photo_wrapper img');
if (this.files && this.files[0]) {
reader.onload = function (e) {
img.attr('src', e.target.result);
//el.html(img);
}
reader.readAsDataURL(this.files[0]);
$(this).closest('.edit-modal__photo').find('.edit-modal__photo_delete').show();
}
});
/* ===========================================================
Emails
============================================================*/
/*$('.email__list_aside .list--item').click(function (e) {
$('.email__list_aside .list--item').removeClass('current');
$(this).addClass('current');
if ($(this).hasClass('new')) $(this).removeClass('new');
});
$('.emails__head_tabs li').click(function (e) {
var target = $(this).attr('data-link');
$('.emails__head_tabs li').removeClass('current');
$(this).addClass('current');
$('.email__tabs').attr('class', 'email__tabs')
$('.email__tabs').attr('data-current', target);
});
$('.main__content.emails [data-action="new-email"]').click(function (e) {
$('.right-bar.email-create').fadeIn(150);
$('body').addClass('noscroll');
e.preventDefault();
});*/
if ($('#email-create-destination').length) {
$('#email-create-destination').selectize();
};
if ($('#email-batch-process').length) {
$('#email-batch-process').selectize();
};
/* ===========================================================
Tools
============================================================*/
$('[data-action="create-service-message"]').click(function (e) {
console.log(e);
$('.right-bar.service-message-create').fadeIn(150);
$('body').addClass('noscroll');
$('input:text:visible:first').focus();
});
$('.right-bar.service-message-create [data-action="back"]').click(function (e) {
$('.right-bar.service-message-create .right-bar__body').attr('data-step', 1);
});
$('.right-bar.service-message-create [data-action="next"]').click(function (e) {
$('.right-bar.service-message-create .right-bar__body').attr('data-step', 2);
});
$('.right-bar.service-message-create [data-action="save"]').click(function (e) {
// To do something
$('.right-bar.service-message-create').fadeOut(150);
$('body').removeClass('noscroll');
});
$('[data-action="edit-tools-email-template"]').click(function (e) {
$('.right-bar.tools-email-template-edit').fadeIn(150);
$('body').addClass('noscroll');
e.preventDefault();
});
$('.right-bar.tools-email-template-edit [data-action="save-changes"]').click(function (e) {
// To do something
$('.right-bar.tools-email-template-edit').fadeOut(150);
$('body').removeClass('noscroll');
});
$('[data-action="create-custom-field"]').click(function (e) {
$('.right-bar.create-custom-field').fadeIn(150);
$('body').addClass('noscroll');
$('input:text:visible:first').focus();
});
$('.right-bar.create-custom-field [data-action="save"]').click(function (e) {
// To do something
$('.right-bar.create-custom-field').fadeOut(150);
$('body').removeClass('noscroll');
});
$('[data-action="create-custom-status"]').click(function (e) {
$('.right-bar.create-status').fadeIn(150);
$('body').addClass('noscroll');
$('input:text:visible:first').focus();
});
$('.right-bar.create-status [data-action="save"]').click(function (e) {
// To do something
$('.right-bar.create-status').fadeOut(150);
$('body').removeClass('noscroll');
});
$('.right-bar.create-status [data-action="status-color"]').change(function (e) {
var isOk = /^#[0-9A-F]{6}$/i.test($(this).val());
if (isOk) {
$(this).css('color', $(this).val());
$(this).closest('.form-group').find('span').css('color', $(this).val());
} else {
$(this).css('color', '#26282a').val('');
$(this).closest('.form-group').find('span').css('color', '#26282a');
}
});
/* ===========================================================
Tooltyps
============================================================*/
$('body').on('mouseenter', '.tooltype', function (e) {
//$(this).find('.tooltype__content').fadeIn(150);
});
$('body').on('mouseleave', '.tooltype', function (e) {
//$(this).find('.tooltype__content').fadeOut(150);
});
/* ===========================================================
Settings
============================================================*/
$('.input-tags').selectize({
persist: false,
createOnBlur: true,
create: true
});
if ($('#timezone-select').length) {
$('#timezone-select').selectize();
};
/* ===========================================================
Knowledge base
============================================================*/
$('.knowledge__head_tabs li').click(function (e) {
var target = $(this).attr('data-link');
$('.knowledge__head_tabs li').removeClass('current');
$(this).addClass('current');
$('.knowledge__tabs').attr('data-current', target);
});
$('.main__content.knowledge.category .category__list_head .toogle, .main__content.knowledge.category .category__list_head .show').click(function (e) {
if ($(this).closest('.category__list').hasClass('visible')) {
$(this).closest('.category__list').removeClass('visible').find('.category__list_table').slideUp(150);
} else {
$(this).closest('.category__list').addClass('visible').find('.category__list_table').slideDown(150);
}
e.preventDefault();
});
$('#knowledge-article-edit-keywords').selectize({
plugins: ['remove_button'],
delimiter: ',',
persist: false,
create: function (input) {
return {
value: input,
text: input
}
}
});
$('.knowledge [data-action="knowledge-category-create"]').click(function (e) {
$('.right-bar.knowledge-category-create').fadeIn(150);
$('body').addClass('noscroll');
e.preventDefault();
});
$('.knowledge [data-action="knowledge-sub-category-create"]').click(function (e) {
$('.right-bar.knowledge-sub-category-create').fadeIn(150);
$('body').addClass('noscroll');
e.preventDefault();
});
$('.knowledge [data-action="knowledge-category-edit"]').click(function (e) {
$('.right-bar.knowledge-category-edit').fadeIn(150);
$('body').addClass('noscroll');
e.preventDefault();
});
$('.knowledge [data-action="knowledge-category-edit"]').click(function (e) {
$('.right-bar.knowledge-category-edit').fadeIn(150);
$('body').addClass('noscroll');
e.preventDefault();
});
$('.knowledge [data-action="knowledge-sub-category-edit"]').click(function (e) {
$('.right-bar.knowledge-sub-category-edit').fadeIn(150);
$('body').addClass('noscroll');
e.preventDefault();
});
$('.knowledge').on('click', '[data-action="generate-link"]', function (e) {
var generateLink = 'https://some-generate-link.html'
coptToClipboard(generateLink);
$('[data-type="link-generate-message"]').fadeIn(150, function () {
var notification = $(this);
setTimeout(function () {
notification.fadeOut(150);
}, 3000);
});
e.preventDefault();
});
if ( $.isFunction($.fn.datepicker) ) {
$('#search-datepicker').datepicker({
language: 'en',
position: 'left top',
autoClose: true,
range: true,
multipleDatesSeparator: ' - ',
toggleSelected: false,
onSelect: function (formattedDate, date, inst) {
if (formattedDate.length) {
//$('.ticket-create .param.calendar .calendar--value').fadeIn(150).find('span').text(formattedDate);
}
},
onHide: function (inst, animationCompleted) {
//$('.ticket-create .param.calendar button').removeClass('active');
}
});
} /* End if datepicker */
/* ===========================================================
MOBILE LOGIC
============================================================*/
$('.header__mobile [data-action="toggle-menu"]').click(function (e) {
$('body').removeClass('show-search');
$('body').toggleClass('show-menu');
});
$('.header__mobile [data-action="toggle-search"]').click(function (e) {
$('body').toggleClass('show-search');
});
// Never allow typing in dropdowns
$('.selectize-input input').prop('readonly', true);
});
// Show mail description
$('.email__list_aside .list--item').click(function (e) {
var title = $(this).find('.head h5').text();
$('.email__list_descr .head h3').text(title);
$('.email__list_article').fadeIn(150).animate({ right: 0 }, 300);
});
$(".btn-hide-article").click(function () {
$(this).closest('.email__list_article').animate({ right: "-100vw" }, 300);
});
// Search autocomplete
$('#header-search').keyup(function (e) {
var val = $.trim($(this).val());
if (val.length) {
$('.form__search_results').slideDown(150);
} else {
$('.form__search_results').slideUp(150);
}
});
// $('.right-bar__body li').filter(function(){
// $(this).toggle($(this).text().toLowerCase().indexOf('at') > -1)
// });
/*
window.onload = function(){
$('#loader').fadeOut(150);
};*/
function escapeHtml(html){
var text = document.createTextNode(html);
var p = document.createElement('p');
p.appendChild(text);
return p.innerHTML;
}