Rezerwacja poszczególnego dnia wygląda w htmlu tak:
dla nie potwierdzonej rezerwacji:
dla potwierdzonej rezewacji:
dla wolnego dnia:
tak wygląda baza:
id |desc_pl | code | state| list_order |class |show_in_key
4 | Niepotwierdzone | pr | 1 | 0 |booked_pr | 1
1 | Rezerwacja | b | 1 | 1 |booked | 1
Po kliknięciu w poszczególny dzień poprzez ajax getem jest wykonywana komenda:
update_calendar.ajax.php?id_item=2&the_date=2017-09-04&lang=pl&id_state=
tylko, że zawsze po kliknięciu nie chwyta id_state i zawsze updatuje pierwszy z bazy czyli id_state=4,
doszedłem do tego ,że za ten błąd odpowiada JS:
function update_calendar(el,date_num){ var el=document.id(''+el.id+''); var id_pre_state=""; if(document.id('id_predefined_state')){ id_pre_state=$('id_predefined_state').get('value'); } var req = new Request({ method: 'get', url: url_ajax_update, data: { 'id_item':id_item, 'the_date':el.id.replace("date_",""), 'lang':lang, 'id_state':id_pre_state }, evalScripts:true, onRequest: function() { // loading image }, onSuccess: function(response) { // split response to get class,date and desc tmp=response.split('|'); // add returned class el.addClass(tmp[0]); // change title to reflect new state el_title=el.getProperty('title'); new_title=tmp[1]+" - "+tmp[2]; el.setProperty('title',new_title); // show message if(show_message) new_msg(tmp[1]+" "+tmp[2]); } }).send(); }
tylko skąd się to ma brać: id_predefined_state ? przecież w kodzie html nie ma tego , przypominam, że skrypt nie jest mojego autorstwa.