FSN#40662 singlepress functionaliteit aan iface BUTTON() toegevoegd

svn path=/Website/trunk/; revision=34638
This commit is contained in:
2017-07-17 14:36:24 +00:00
parent 2c998c9af6
commit 1b89d321ca
13 changed files with 87 additions and 18 deletions

View File

@@ -123,7 +123,7 @@ if (params.extFilter)
Please wait...
</div>
<%
BUTTON(L("lcl_do_upload_image"), {click: "doSubmitUpload()", dataicon: "cloud", id: "btn_upload"});
BUTTON(L("lcl_do_upload_image"), {click: "doSubmitUpload()", dataicon: "cloud", id: "btn_upload", singlepress: true});
IFACE.FORM_END();
%>
</FORM>

View File

@@ -387,7 +387,7 @@ var subject = (isReservering
, McltCallbackAndThen(gotoVis?bez_submit_add:bez_submit)
, "json");
}
return false;
return true;
}
function bez_submit()
@@ -654,7 +654,7 @@ var subject = (isReservering
{
if (afs_key > 0)
BUTTON(L("lcl_mobile_addvisitors"), {click: "afs_submit(true)", dataicon: "plus"});
BUTTON((afs_key>-1 ? L("lcl_submit") : L("lcl_mobile_bezoek")), {click: "afs_submit()", dataicon: "refresh"});
BUTTON((afs_key>-1 ? L("lcl_submit") : L("lcl_mobile_bezoek")), {click: "afs_submit()", dataicon: "refresh", singlepress: (afs_key == -1)});
}
CONTROLGROUP_END();
IFACE.FORM_END();

View File

@@ -135,7 +135,7 @@ var subject = isReservering
, $("form[name=bezoekers]").serialize()
, McltCallbackAndThen(bez_submit_callback)
, "json");
return false;
return true;
}
</script>
</head>
@@ -194,7 +194,7 @@ var subject = isReservering
GRID_END();
CONTROLGROUP_START();
BUTTON(L("lcl_submit"), {click: "bez_submit()", dataicon: "refresh"});
BUTTON(L("lcl_submit"), {click: "bez_submit()", dataicon: "refresh", singlepress: true});
CONTROLGROUP_END();
IFACE.FORM_END();
%>

View File

@@ -510,3 +510,5 @@ input[type="file"] {
line-height: 1.8em;
padding-left: 8px;
}
.btn-disabled { cursor: auto !important; }
.btn-enabled { cursor: pointer !important; }

View File

@@ -309,7 +309,8 @@ function BUTTON(plabel, params)
<%=params.dataajax ? " data-ajax='"+params.dataajax+"'" : ""%>
<%=params.transition ? " transition='"+params.transition+"'" : ""%>
<%=params.datarel ? " data-rel='"+safe.htmlattr(params.datarel)+"'" : ""%>
<%=params.click ? " onclick='"+safe.htmlattr(params.click)+"'" : ""%>
<%=params.click ? " onclick='mobile.button.click(event, this)' mobClick='"+safe.htmlattr(params.click)+"'" : ""%>
<%=params.singlepress? " singlepress=1":""%>
<%=params.linkid ? " href='"+safe.htmlattr(params.linkid)+"'" : ""%>><%=plabel%></a><%
}

View File

@@ -391,7 +391,7 @@ if (addSubheader)
// Misschien automatisch forcesave of juist alert dat probleem al gemeld is?
// 5.2.2 Gold D: inderdaad vooralsnog forcesafe
$.post($("form[name=meld]")[0].action, $("form[name=meld]").serialize(), McltCallbackAndThenAlways(mld_submit_callback), "json");
return false;
return true;
}
function mld_forward()
@@ -789,7 +789,7 @@ if (action != "forward")
CONTROLGROUP_START()
if (this_mld.canChange || mld_key == -1) {
BUTTON((mld_key>-1 ? L("lcl_submit") : L("lcl_newsubmit")), {click: "mld_submit()", dataicon: "refresh"});
BUTTON((mld_key>-1 ? L("lcl_submit") : L("lcl_newsubmit")), {click: "mld_submit()", dataicon: "refresh", singlepress: (mld_key == -1) });
}
if (mld_key > -1) {
if (this_mld.canAccept) {

View File

@@ -3,7 +3,7 @@
$Id$
File: mobile.js
Description: clientside functions for pda/*
Description: clientside functions for pda
*/
window.fcltmobile = 1;
@@ -89,6 +89,58 @@ var McltCallbackHome = McltCallbackAndThen(function (json)
window.location.href = "./facilitor.asp"
});
var mobile =
{
button:
{
click: function(evt, btn)
{
FcltMgr.stopPropagation(evt);
if (btn.getAttribute("singlepress") && $(btn).hasClass("btn_disabled"))
{ // FcltMgr.alert("Heb geduld");
return;
}
if (btn.getAttribute("singlepress"))
{
mobile.button.disable(btn);
}
var elem = btn.getAttribute("mobClick");
// window.fcltevent = evt;
var result = eval(elem);
// Dit lijkt erg onzinning (we zitten binnen mobile) maar soms als
// een scherm/dialoog net gesloten is door de action van de button
// blijkt de code toch nog hier te komen terwijl mobile weg is
if (typeof mobile == "undefined")
return;
if (result === false)
{
mobile.button.enable(btn);
}
},
disable: function(btn)
{
if (!btn || btn.tagName != 'A')
return; // not a mobile button
$(btn).toggleClass("btn_disabled", true)
.removeClass("btn_enabled");
},
enable: function(btn)
{
if (!btn || btn.tagName != 'A')
return; // not a mobile button
$(btn).toggleClass("btn_enabled", true)
.removeClass("btn_disabled");
}
}
}
function onBijlagenMobile(formurl, // protected
saveUrl, // protected
multi,
@@ -142,3 +194,17 @@ function onBijlagenMobile(formurl, // protected
$html.find("iframe").attr("src", formurl);
}
function disable(btn)
{
$(btn).attr("onclick", "return false;")
.toggleClass("btn-disabled", true)
.removeClass("btn-enabled");
}
function enable(btn)
{
$(btn).attr("onclick", "disable(this);" + $(btn).attr("data-onclick"))
.toggleClass("btn-enabled", true)
.removeClass("btn-disabled");
}

View File

@@ -257,7 +257,7 @@ var sql = "";
$("form[name=note_edit]").serialize(),
McltCallbackAndThen(note_submit_callback),
"json");
return false;
return true;
}
function note_submit_callback(data)
{
@@ -287,7 +287,7 @@ var sql = "";
}
CONTROLGROUP_START();
BUTTON(L("lcl_submit"), {click: "note_submit()", dataicon: "check"});
BUTTON(L("lcl_submit"), {click: "note_submit()", dataicon: "check", singlepress: true});
BUTTON(L("lcl_cancel"), {linkid: "#note-1-"+pkey, dataicon: "back"});
CONTROLGROUP_END();
IFACE.FORM_END();

View File

@@ -605,7 +605,7 @@ else
}
else
{
BUTTON(L("lcl_newsubmit"), {click: "opdr_submit()", dataicon: "refresh"});
BUTTON(L("lcl_newsubmit"), {click: "opdr_submit()", dataicon: "refresh", singlepress: true});
trackinglines = 0;
}
CONTROLGROUP_END()

View File

@@ -123,7 +123,7 @@ var wp_desc = Oracle.Execute(sql)("wpaanduiding").Value;
if (claimed)
Response.write(L("lcl_flexplek")+" "+safe.html(wp_desc)+" "+L("lcl_flexplekclaimed")+" "+user.naam() + " "+ L("lcl_flexplekclaimfooter"));
CONTROLGROUP_START();
BUTTON(L("lcl_mobile_claimconfirm"), {click: "document.forms.claimwp.submit()", dataicon: "check", dataajax: 'false'});
BUTTON(L("lcl_mobile_claimconfirm"), {click: "document.forms.claimwp.submit()", dataicon: "check", dataajax: 'false', singlepress: true});
CONTROLGROUP_END();
IFACE.FORM_END();

View File

@@ -340,7 +340,7 @@ if (!rsv.verwijderd) // geen script nodig als reservering verwijderd is.
, $("form[name=res]").serialize()
, McltCallbackAndThenAlways(res_submit_callback)
, "json");
return false;
return true;
}
function res_delete()
@@ -622,7 +622,7 @@ else
CONTROLGROUP_START();
if (this_res.canChange || rsv_ruimte_key == -1)
BUTTON((rsv_ruimte_key > -1 ? L("lcl_submit") : L("lcl_newsubmit")), {click: "res_submit()", dataicon: "refresh"});
BUTTON((rsv_ruimte_key > -1 ? L("lcl_submit") : L("lcl_newsubmit")), {click: "res_submit()", dataicon: "refresh", singlepress: (rsv_ruimte_key == -1)});
if (this_res.canChange && rsv_ruimte_key > -1)
BUTTON(L("lcl_mobile_bezoek"), {click: "res_vis()", dataicon: "grid"});
// Toon meldingenknop als er bijbehorende lopende meldingen zijn en ik die mag zien (kan vast nog scherper)

View File

@@ -497,7 +497,7 @@ if (rsv_ruimte_key == -1)
else // toggle bezorg/afhaal
{
CONTROLGROUP_START({ horizontal: true }); %>
<input type="radio" name="ab_mode" id="cvab-a" value="0" onChange="updateCvab(0)" <%=!(cvab & 1)? "checked" : ""%>>
<input type="radio" name="ab_mode" id="cvab-a" value="0" onChange="updateCvab(0)" <%=cvab & 1? "" : "checked"%>>
<label for="cvab-a"><%=L("lcl_res_afhalen")%></label>
<input type="radio" name="ab_mode" id="cvab-b" value="1" onChange="updateCvab(1)" <%=cvab & 1? "checked" : ""%>>
<label for="cvab-b"><%=L("lcl_res_bezorgen")%></label>

View File

@@ -446,7 +446,7 @@ FCLTHeader.Requires({ js: ["./modernizr-3.3.0.custom.min.js"],
//}
if (!van || times[tm] <= schoonvan)
{
BUTTON(L("lcl_pda_res_ruimtereserveer").format(toTimeString(times[tm]), periods[tm]), {click: "reserveer("+ times[tm].getTime()+")", dataicon: "star"});
BUTTON(L("lcl_pda_res_ruimtereserveer").format(toTimeString(times[tm]), periods[tm]), {click: "reserveer("+ times[tm].getTime()+")", dataicon: "star", singlepress: true});
}
// TODO: slider van maken?
// if (t1||t2||t3) {