/* $Revision$ $Id$ File: res_list.js Remark: Functies voor res-lijsten Parameters: Context: */ // Resultaat: URL om de data op te halen function inlineVoorzieningUrl(row) { //var rsv_ruimte_key = row.getAttribute("ROWKEY"); var resData = eval("(" + row.getAttribute("ROWDATA") + ")"); if (resData) { var resRsvRuimteKey = resData.resRsvRuimteKey; return "objects_list_tiny.asp?rsv_ruimte_key=" + resRsvRuimteKey + "&urole=" + urole + "&closed=" + res_closed; } } function resEdit(row) { $(row).addClass('dirty'); //var rsv_ruimte_key = row.getAttribute("ROWKEY"); var resData = eval("(" + row.getAttribute("ROWDATA") + ")"); if (resData) { var resRsvRuimteKey = resData.resRsvRuimteKey; var url = "appl/res/res_reservering.asp?urole=" + urole + "&rsv_ruimte_key=" + resRsvRuimteKey; FcltMgr.openDetail(url, { reuse: true }); } } // BO/MI functions // zie ook objects_list_tiny.asp function resClose(rowArray) { var rsv_ruimte_key; var resData; var resFuture = false; var resKeyString = getKeyString(rowArray); var resPartkeyArray = []; var resPartTypeArray = []; for (var i = 0; i < rowArray.length; i++) { resData = eval('(' + rowArray[i].getAttribute("ROWDATA") + ')'); if (resData) { resFuture = resFuture || (resData.resFuture == 1); resPartkeyArray.push(resData.resPartkey); // rsv_ruimte_key, rsv_deel_key of rsv_artikel_key resPartTypeArray.push(resData.resPartType); // reserveringstype ('C', 'V', 'R') } } if (resFuture) { if (rowArray.length > 1) { // multi window.alert(L("lcl_res_all_future")); return; } else if (!window.confirm(L("lcl_res_future_res"))) return; } // Afmelden kan beginnen var data = { partres_key: (groupres? resKeyString : resPartkeyArray.join(",")) , part_type: resPartTypeArray.join(",") , group: groupres }; protectRequest.dataToken(data); $.post("res_close.asp", data, FcltCallbackAndThen(function () { // Reservering is nu afgemeld. Geef afvinkbox weer aan het eind van de regel resKeyArray = resKeyString.split(","); for (var i = 0; i < resKeyArray.length; i++) { $("#afm" + resKeyArray[i]).html('' + todayString + '  -  ' + user_naam + ''); } }), "json"); } function resNoShow(row) { function resNoShowCallback(json, modalParams) { $(row).addClass('dirty'); } var resData = eval("(" + row.getAttribute("ROWDATA") + ")"); if (resData) { var resKey = resData.resKey; var resVolgnr = resData.resVolgnr; var resRsvRuimteKey = resData.resRsvRuimteKey; url = "../res/res_noshow.asp?urole=" + urole + "&rsv_ruimte_key=" + resRsvRuimteKey; FcltMgr.openModalDetail(url, L("lcl_res_reservation") + " " + resKey + "/" + resVolgnr, {callback: resNoShowCallback}); } } function reloadList() { // liefst doe ik FcltMgr.reload maar dit is een POST form. Dat komt niet over. parent.document.forms.u2.submit(); } function insCheckIn(row) { var rsv_deel_key = row.getAttribute("ROWKEY"); var resData = eval('(' + row.getAttribute("ROWDATA") + ')'); FcltMgr.openModalDetail("../ins/ins_deel_free.asp?rsv_deel_key="+resData.res_rsv_deel_key, L("lcl_ins_insinn"), {callback: reloadList}); } function insCheckOut(row) { var rsv_deel_key = row.getAttribute("ROWKEY"); var resData = eval('(' + row.getAttribute("ROWDATA") + ')'); FcltMgr.openModalDetail("../ins/ins_deel_free.asp?rsv_deel_key="+resData.res_rsv_deel_key, L("lcl_ins_lend_out"), {callback: reloadList}); } // Uitleen flexkenmerken bewerken. function insAdapt(row) { var rsv_deel_key = row.getAttribute("ROWKEY"); var resData = eval('(' + row.getAttribute("ROWDATA") + ')'); FcltMgr.openModalDetail("../ins/ins_deel_free.asp?adapt=1&rsv_deel_key="+resData.res_rsv_deel_key, L("lcl_ins_adapt"), {callback: reloadList}); } function toggleFlag(evt, resRsvRuimteKey) { FcltMgr.stopPropagation(evt); var flagkey = $('#resflagimg' + resRsvRuimteKey).attr('flagkey'); var data = { rsv_ruimte_key: resRsvRuimteKey, flagkey: flagkey }; protectRequest.dataToken(data); $.post("../res/res_flag.asp" , data , FcltCallbackAndThen(setFlag) , "json" ); } function setFlag(data) { // Zet de flag en het volgnummer van de flag. var rsv_ruimte_key = data.rsv_ruimte_key; var flagkey = data.newflag; var flagimg = '../Pictures/resflag' + flagkey + '.png'; // Alle gekleurde balletjes met dezelfde id. Met $(#id) pak je alleen het eerste bolletje. Alle voorzieningen (en ruimte) pakken. $("img[id^='resflagimg" + rsv_ruimte_key + "']").attr('flagkey', flagkey); $("img[id^='resflagimg" + rsv_ruimte_key + "']").attr('src', flagimg); $("img[id^='resflagimg" + rsv_ruimte_key + "']").parent().attr('title', L("lcl_res_flag" + flagkey)); $("img[id^='resflagimg" + rsv_ruimte_key + "']").next().text(flagkey || 999); // Hidden span voor sorteren $('#restable th').removeClass('sorttable_sorted sorttable_sorted_reverse'); // sortable cache't namelijk }