(function ($) {
$.each(['show', 'hide'], function (i, ev) {
var el = $.fn[ev];
$.fn[ev] = function () {
this.trigger(ev);
return el.apply(this, arguments);
};
});
})(jQuery);
var idopontok = {};
idopontok.zarva = new Array();
idopontok.nyitva = {};
var imgData;
$(document).ready(function () {
var szolgok = {
url: "ajax.php?mod=szolglista&groupid=2&langid=1",
datatype: "json",
data: { lang: 1 },
datafields: [
{ name: 'id' },
{ name: 'label' },
{ name: 'note' }
],
async: false
};
var dataAdapter_szolgok = new $.jqx.dataAdapter(szolgok);
$('#szolg').jqxDropDownList({
source: dataAdapter_szolgok,
displayMember: "label",
valueMember: "id",
selectedIndex: 0,
width: '100%',
height: 2*18,
filterable: true,
searchMode: 'containsignorecase',
filterPlaceHolder: 'Válassza ki vagy kezdje el begépelni a kívánt szolgáltatás nevét!'
});
var dataAdapter_vszolgok;
var vszolgok = function(szid, langid) {
var vszolg_adapter = {
url: "ajax.php?mod=vszolglista&groupid=2&langid=1",
datatype: "json",
data: { lang: langid, szszid: szid },
datafields: [
{ name: 'id' },
{ name: 'label' },
{ name: 'note' }
],
async: false
};
dataAdapter_vszolgok = new $.jqx.dataAdapter(vszolg_adapter);
return dataAdapter_vszolgok;
}
$('#vszolg').jqxDropDownList({
source: vszolgok(0,1),
displayMember: "label",
valueMember: "id",
selectedIndex: 0,
width: '100%',
height: 2*18,
filterable: true,
searchMode: 'containsignorecase',
filterPlaceHolder: 'Válassza ki vagy kezdje el begépelni a közterület nevét!'
});
$("#naptar").jqxCalendar({
width: '100%',
height: 220,
culture: 'hu-HU',
dayNameFormat: 'default',
titleFormat: ['yyyy MMMM','yyyy','yyyy','yyyy'],
restrictedDates: idopontok.zarva,
disabled: true
});
$('#naptar').on('change', function(e) {
$('#idopont_keret').hide();
$('#nincsidopont_keret').hide();
$('#loader').show();
idopontAjax();
});
$('#idopont_keret').on('show', function(e) {
$('#loader').hide();
});
$('#nincsidopont_keret').on('show', function(e) {
$('#loader').hide();
});
$('#szolg').on('change', function(e) {
$('#loader').show();
var args = e.args;
$('#kiad_szolg').html(args.item.label);
dataAdapter_vszolgok = null;
var szolgmagassag = (args.item.label.match(/
x.id === args.item.value).note);
//$('#szolgmegj_keret').show();
var s = vszolgok( args.item.value, 1);
$('#vszolg').jqxDropDownList({ source: s });
console.log( s );
if ( $('#vszolg').jqxDropDownList('getItems').length > 0 ) {
$('#vszolg').jqxDropDownList('selectIndex',0);
$('#vszolg').jqxDropDownList('filterPlaceHolder', s.records[0].note );
if ( s.records[0].note == 'DISABLED' ) {
$('#vszolg').jqxDropDownList('filterable', false );
}
else {
$('#vszolg').jqxDropDownList('filterable', true );
}
$('#vszolg_keret').show();
$('#idopont_keret').hide();
$('#naptar_keret').hide();
$('#idopontok').empty();
$('#naptar').jqxCalendar('specialDates', []);
$('#naptar').jqxCalendar({'disabled': true});
$('#naptar_keret').hide();
return 1;
}
else {
$('#vszolg').jqxDropDownList('clear');
$('#vszolg_keret').hide();
$('#kiad_vszolg').empty();
$('#naptar_keret').hide();
$('#idopont_keret').hide();
$('#nincsidopont_keret').hide();
$('#idopontok').empty();
$.ajax({
url: 'ajax.php?mod=naptar&groupid=2&langid=1',
type: 'POST',
data: {
szid: args.item.value
},beforeSend: function() {
$('#naptar_keret').hide();
$('#naptar').jqxCalendar({'disabled': true});
$('#loader').show();
}
}).done( function(data) {
var jsonArr = $.parseJSON(data);
naptarUpdate( jsonArr );
idopontokUpdate( $('#naptar').jqxCalendar().val() );
$('#loader').hide();
$('#naptar_keret').show();
}).fail( function() {
notify('Kapcsolati hiba...','fail',1200,0);
});
}
}
$('#loader').hide();
});
$('#vszolg').on('change', function(e) {
$('#loader').show();
var args = e.args;
$('#kiad_vszolg').html(args.item.label);
var szolgmagassag = (args.item.label.match(/
x.id === args.item.value).note);
//$('#vszolgmegj_keret').show();
$('#vszolg_szoveg').hide();
$.ajax({
url: 'ajax.php?mod=naptar&groupid=2&langid=1',
type: 'POST',
data: {
szid: args.item.value
},beforeSend: function() {
$('#naptar_keret').hide();
$('#naptar').jqxCalendar({'disabled': true});
$('#loader').show();
}
}).done( function(data) {
var jsonArr = $.parseJSON(data);
naptarUpdate( jsonArr );
idopontokUpdate( $('#naptar').jqxCalendar().val() );
$('#loader').hide();
$('#naptar_keret').show();
}).fail( function() {
notify('Kapcsolati hiba...','fail',1200,0);
});
}
$('#loader').hide();
});
$(document).on( 'click', '.idopont_gomb_szabad', function(e) {
var szid = $('#szolg').val();
if ( $('#vszolg_keret').is(':visible') ) {
szid = $('#vszolg').val();
}
if ( document.getElementById('email') !== null ) {
if ( validateEmail($('#email').val()) ) {
idopontfoglalas(this, szid);
}
}
else {
idopontfoglalas(this, szid);
}
});
var intervalIdopontAjax = setInterval( function() {
idopontAjax();
}, 7000 );
$('#loader').hide();
$('#foglal').show();
$('#naptar_keret').hide();
$('#idopont_keret').hide();
$('#kiad_keret').hide();
$('#vszolg_keret').hide();
$('#szolgmegj_keret').hide();
$('#nincsidopont_keret').hide();
$('#naptar_keret').on('hide', function() {
$('#idopont_keret').hide();
$('#idopontok').empty();
});
$('#kiad_keret').on('show', function() {
clearInterval(intervalIdopontAjax);
});
$('#prn').jqxButton();
$('#prn').on('click', function() {
$('#prn').hide();
$('#png').hide();
window.print();
$('#prn').show();
$('#png').show();
});
$('#png').jqxButton();
$('#png').on('click', function() {
html2canvas($('#kiad_pngexport')[0]).then( function(canvas) {
imgData = canvas.toDataURL();
saveAs(imgData, 'jegy.png');
});
});
});
function saveAs(uri, filename) {
var link = document.createElement('a');
if (typeof link.download === 'string') {
link.href = uri;
link.download = filename;
//Firefox requires the link to be in the body
document.body.appendChild(link);
//simulate click
link.click();
//remove the link when done
document.body.removeChild(link);
} else {
window.open(uri);
}
}
function validateEmail(email) {
if ( email.length > 8 && email.search('[\.]') > 0 && email.search('[\@]') > 0 ) {
$('#email_need').css('border', 'none');
return (true);
}
$('#email_need').css('border', '2px solid red');
return (false);
}
function naptarUpdate( jsonArr ) {
idopontok.zarva = [];
idopontok.nyitva = [];
idopontok.dttol = new Date(jsonArr.dttol[0], jsonArr.dttol[1], jsonArr.dttol[2]);
idopontok.dtig = new Date(jsonArr.dtig[0], jsonArr.dtig[1], jsonArr.dtig[2]);
if ( jsonArr.racs.length === 0 ) {
$('#naptar_keret').hide();
$('#naptar').jqxCalendar({'disabled': true});
$('#nincsidopont_keret').show();
return true;
}
$('#naptar').jqxCalendar('specialDates', []);
$.each( jsonArr.racs, function(datum, idok) {
if ( idok.length == 0 ) {
idopontok.zarva.push(new Date(datum));
}
else {
var foglalt = 1;
$.each( idok, function(key, value) {
if ( value[1] > 0 && value[2] > 0 ) {
foglalt = 0;
}
});
if ( foglalt <= 0 ) {
idopontok.nyitva[datum] = idok;
$('#naptar').jqxCalendar('addSpecialDate', new Date(datum));
}
else {
idopontok.zarva.push(new Date(datum));
}
}
});
$('#naptar').jqxCalendar('setMinDate', idopontok.dttol);
$('#naptar').jqxCalendar('setMaxDate', idopontok.dtig);
$('#naptar').jqxCalendar({'disabled': false});
$('#naptar_keret').show();
}
function idopontokUpdate( onDate ) {
var y = new Date(onDate).getFullYear();
var m = new Date(onDate).getMonth()+1;
var d = new Date(onDate).getDate();
if ( m < 10 ) m = "0"+m;
if ( d < 10 ) d = "0"+d;
var onDateStr = y + "-" + m + "-" + d;
var appointments = idopontok.nyitva[onDateStr];
$('#idopont_keret').hide();
$('#nincsidopont_datum').empty();
$('#nincsidopont_keret').hide();
$('#idopontok').empty();
if ( typeof appointments !== 'undefined' ) {
//notify('Időpontok frissítve!','info',1000,0);
$.each( appointments, function(key,value) {
if ( value[1] > 0 && value[2] > 0 ) {
$('#idopontok').append("