FSN#27568 begintijd 00:00 ook in showmode tonen. Begintijd ook tracken.
Ook: toTimeString accepteert 8.5 voor 08:30 Ook: save2db ondersteunt foreign voor niet-"key" types svn path=/Website/trunk/; revision=19279
This commit is contained in:
@@ -26,6 +26,11 @@
|
||||
if (einduur == -1)
|
||||
einduur = "";
|
||||
|
||||
function uurForeign(tm)
|
||||
{
|
||||
return toTimeString(tm, false); // geen seconden
|
||||
}
|
||||
|
||||
var fields = [ { dbs: "ALG_VERDIEPING_KEY", typ: "key", frm: "verdiepingkey" },
|
||||
{ dbs: "ALG_SRTRUIMTE_KEY", typ: "key", frm: "room_srt", track: L("lcl_estate_ruimte_man_sort") , foreign: "alg_srtruimte" },
|
||||
{ dbs: "ALG_RUIMTE_NR", typ: "varchar", frm: "room_nr", track: L("lcl_estate_ruimte_man_nr") },
|
||||
@@ -42,9 +47,9 @@
|
||||
{ dbs: "ALG_RUIMTE_OPP_GEVELBEKLEDING", typ: "float", frm: "room_gebe" },
|
||||
{ dbs: "ALG_RUIMTE_OPP_ALT1", typ: "float", frm: "room_oppa1", track: L("lcl_estate_ruimte_opp_alt1") },
|
||||
{ dbs: "ALG_RUIMTE_OPP_ALT2", typ: "float", frm: "room_oppa2", track: L("lcl_estate_ruimte_opp_alt2") },
|
||||
{ dbs: "MLD_DIENSTNIVEAU_KEY", typ: "key", frm: "dienstniveau", track: L("lcl_mld_dienst_niveau"), foreign: "mld_dienstniveau" },
|
||||
{ dbs: "ALG_RUIMTE_BEGINUUR", typ: "float", val: beginuur },
|
||||
{ dbs: "ALG_RUIMTE_EINDUUR", typ: "float", val: einduur },
|
||||
{ dbs: "MLD_DIENSTNIVEAU_KEY", typ: "key", frm: "dienstniveau", track: L("lcl_mld_dienst_niveau"), foreign: "mld_dienstniveau" },
|
||||
{ dbs: "ALG_RUIMTE_BEGINUUR", typ: "float", val: beginuur, track: L("lcl_estate_gebouw_beginuur"), foreign: uurForeign },
|
||||
{ dbs: "ALG_RUIMTE_EINDUUR", typ: "float", val: einduur, track: L("lcl_estate_gebouw_einduur"), foreign: uurForeign },
|
||||
{ dbs: "ALG_RUIMTE_WERKDAGEN", typ: "number", frm: "room_werkdagen" }
|
||||
];
|
||||
|
||||
|
||||
@@ -52,8 +52,8 @@ var bld_y = oRs("alg_gebouw_y").value;
|
||||
var bld_bez = oRs("alg_gebouw_bez").value;
|
||||
var bld_deleted = oRs("alg_gebouw_verwijder").value != null;
|
||||
var dienstniveau = oRs("mld_dienstniveau_key").value;
|
||||
var beginuur = oRs("alg_gebouw_beginuur").value? oRs("alg_gebouw_beginuur").value : -1;
|
||||
var einduur = oRs("alg_gebouw_einduur").value? oRs("alg_gebouw_einduur").value : -1;
|
||||
var beginuur = oRs("alg_gebouw_beginuur").value;
|
||||
var einduur = oRs("alg_gebouw_einduur").value;
|
||||
var werkdagen = oRs("alg_gebouw_werkdagen").value;
|
||||
oRs.Close();
|
||||
%>
|
||||
@@ -164,21 +164,9 @@ oRs.Close();
|
||||
ROFIELDTR("fld", L("lcl_geoycoord"), bld_y, {suppressEmpty:true});
|
||||
ROCHECKBOXTR("fldalgbez", L("lcl_estate_gebouw_bez"), bld_bez==1);
|
||||
|
||||
var dd = new Date();
|
||||
if (beginuur >= 0)
|
||||
{
|
||||
var hh = Math.floor(beginuur);
|
||||
var mm = (beginuur*60) % 60;
|
||||
dd.setHours(hh,mm,0,0);
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(dd) );
|
||||
}
|
||||
if (einduur > 0)
|
||||
{
|
||||
var hh = Math.floor(einduur);
|
||||
var mm = (einduur*60) % 60;
|
||||
dd.setHours(hh,mm,0,0);
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), toTimeString(dd) );
|
||||
}
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(beginuur), {suppressEmpty:true} );
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), toTimeString(einduur), {suppressEmpty:true} );
|
||||
|
||||
ROCHECKBOXTR("fldalgwerk", L("lcl_estate_gebouw_werkdagen"), werkdagen==1);
|
||||
|
||||
BLOCK_END();
|
||||
|
||||
@@ -72,8 +72,8 @@ var room_inh = oRs("alg_ruimte_inhoud").value;
|
||||
var room_opm = oRs("alg_ruimte_opmerking").value;
|
||||
var room_oppa1 = oRs("alg_ruimte_opp_alt1").value;
|
||||
var room_oppa2 = oRs("alg_ruimte_opp_alt2").value;
|
||||
var beginuur = oRs("alg_ruimte_beginuur").value? oRs("alg_ruimte_beginuur").value : -1;
|
||||
var einduur = oRs("alg_ruimte_einduur").value? oRs("alg_ruimte_einduur").value : -1;
|
||||
var beginuur = oRs("alg_ruimte_beginuur").value;
|
||||
var einduur = oRs("alg_ruimte_einduur").value;
|
||||
var werkdagen = oRs("alg_ruimte_werkdagen").value;
|
||||
var room_deleted = oRs("alg_ruimte_verwijder").value != null;
|
||||
var contour_opp = oRs("cad_imp_contour_opp").value;
|
||||
@@ -193,21 +193,8 @@ oRs.Close();
|
||||
ROFIELDTR("fldshort", L("lcl_estate_ruimte_man_inhoud"), room_inh, {suppressEmpty:true});
|
||||
ROFIELDTR("fld", L("lcl_estate_ruimte_man_opmerk"), room_opm, {suppressEmpty:true});
|
||||
|
||||
var dd = new Date();
|
||||
if (beginuur >= 0)
|
||||
{
|
||||
var hh = Math.floor(beginuur);
|
||||
var mm = (beginuur*60) % 60;
|
||||
dd.setHours(hh,mm,0,0);
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(dd) );
|
||||
}
|
||||
if (einduur > 0)
|
||||
{
|
||||
var hh = Math.floor(einduur);
|
||||
var mm = (einduur*60) % 60;
|
||||
dd.setHours(hh,mm,0,0);
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), toTimeString(dd) );
|
||||
}
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_beginuur"), toTimeString(beginuur), {suppressEmpty:true} );
|
||||
ROFIELDTR("fld", L("lcl_estate_gebouw_einduur"), toTimeString(einduur), {suppressEmpty:true} );
|
||||
|
||||
switch (werkdagen)
|
||||
{
|
||||
|
||||
@@ -525,6 +525,14 @@ function toTimeString(jsDate, bWithSeconds)
|
||||
jsDate = new Date(jsDate.value);
|
||||
if (typeof jsDate == "date") // een oRs("datum").value
|
||||
jsDate = new Date(jsDate);
|
||||
if (typeof jsDate == "number") // 8.5 voor 08:30
|
||||
{
|
||||
if (jsDate < 0 || jsDate > 24)
|
||||
return "";
|
||||
var hh = Math.floor(jsDate);
|
||||
var mm = (jsDate*60) % 60;
|
||||
jsDate = (new Date).setHours(hh,mm,0,0);
|
||||
}
|
||||
|
||||
if (!jsDate)
|
||||
return "";
|
||||
|
||||
@@ -34,7 +34,8 @@
|
||||
val: kant en klare waarde, zelf berekend
|
||||
track: "een tekst" waaronder wijzigingen getrackt moeten worden
|
||||
of: true waardoor wel oldjsval wordt bepaald maar niet getrackt (mld_behandelaar_key)
|
||||
foreign: bij tracking nodig als typ=="key", een waarde uit foreignKeyTable
|
||||
foreign: bij tracking nodig als typ=="key", een waarde uit onderstaande foreignKeyTable
|
||||
of: een functie, voorals we zelf de waarde naar een (andere) tekst willen vertalen
|
||||
params: vooralsnog geen
|
||||
result: een sqlstatement met alvast het woord WHERE er achter (opdat het het niet vergeten)
|
||||
|
||||
@@ -83,55 +84,59 @@ function buildTrackText(typ, oldjsval, newjsval, params)
|
||||
params = params || {};
|
||||
var oldtxt = oldjsval;
|
||||
var newtxt = newjsval;
|
||||
switch (typ)
|
||||
|
||||
if (typeof params.foreign == "function")
|
||||
{
|
||||
case "datetime":
|
||||
oldtxt = params.foreign(oldjsval, params.oldjsvals);
|
||||
newtxt = params.foreign(newjsval);
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (typ)
|
||||
{
|
||||
var oldtxt = toDateTimeString(oldjsval);
|
||||
var newtxt = toDateTimeString(newjsval);
|
||||
break;
|
||||
}
|
||||
case "date":
|
||||
{
|
||||
var oldtxt = toDateString(oldjsval);
|
||||
var newtxt = toDateString(newjsval);
|
||||
break;
|
||||
}
|
||||
case "time":
|
||||
{
|
||||
var oldtxt = toTimeString(oldjsval);
|
||||
var newtxt = toTimeString(newjsval);
|
||||
break;
|
||||
}
|
||||
case "key": // hash foreign moet ook gedefinieerd zijn
|
||||
{
|
||||
if (typeof params.foreign == "function")
|
||||
case "datetime":
|
||||
{
|
||||
oldtxt = params.foreign(oldjsval, params.oldjsvals);
|
||||
newtxt = params.foreign(newjsval);
|
||||
var oldtxt = toDateTimeString(oldjsval);
|
||||
var newtxt = toDateTimeString(newjsval);
|
||||
break;
|
||||
}
|
||||
else if (!params.foreign)
|
||||
case "date":
|
||||
{
|
||||
abort_with_warning("INTERNAL ERROR:\nForeign key for tracking " + oldjsval + " to "+newjsval+" is not defined");
|
||||
var oldtxt = toDateString(oldjsval);
|
||||
var newtxt = toDateString(newjsval);
|
||||
break;
|
||||
}
|
||||
else if (!foreignKeyTable[params.foreign.toUpperCase()])
|
||||
case "time":
|
||||
{
|
||||
abort_with_warning("INTERNAL ERROR:\nForeign key for tracking " + params.foreign.toUpperCase()+" is not defined in foreignKeyTable");
|
||||
var oldtxt = toTimeString(oldjsval);
|
||||
var newtxt = toTimeString(newjsval);
|
||||
break;
|
||||
}
|
||||
else
|
||||
case "key": // hash foreign moet ook gedefinieerd zijn
|
||||
{
|
||||
var foreign = foreignKeyTable[params.foreign.toUpperCase()];
|
||||
var sqlf = "SELECT " + foreign.desc
|
||||
+ " FROM " + foreign.tbl + " " + (foreign.alias||"")
|
||||
if (foreign.where)
|
||||
sqlf += " WHERE " + foreign.where + " AND ";
|
||||
if (!params.foreign)
|
||||
{
|
||||
abort_with_warning("INTERNAL ERROR:\nForeign key for tracking " + oldjsval + " to "+newjsval+" is not defined");
|
||||
}
|
||||
else if (!foreignKeyTable[params.foreign.toUpperCase()])
|
||||
{
|
||||
abort_with_warning("INTERNAL ERROR:\nForeign key for tracking " + params.foreign.toUpperCase()+" is not defined in foreignKeyTable");
|
||||
}
|
||||
else
|
||||
sqlf += " WHERE ";
|
||||
sqlf += foreign.key + " = ";
|
||||
if (oldjsval) oldtxt = Oracle.Execute(sqlf + oldjsval)(0).Value;
|
||||
if (newjsval) newtxt = Oracle.Execute(sqlf + newjsval)(0).Value;
|
||||
{
|
||||
var foreign = foreignKeyTable[params.foreign.toUpperCase()];
|
||||
var sqlf = "SELECT " + foreign.desc
|
||||
+ " FROM " + foreign.tbl + " " + (foreign.alias||"")
|
||||
if (foreign.where)
|
||||
sqlf += " WHERE " + foreign.where + " AND ";
|
||||
else
|
||||
sqlf += " WHERE ";
|
||||
sqlf += foreign.key + " = ";
|
||||
if (oldjsval) oldtxt = Oracle.Execute(sqlf + oldjsval)(0).Value;
|
||||
if (newjsval) newtxt = Oracle.Execute(sqlf + newjsval)(0).Value;
|
||||
}
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (oldjsval == null || oldjsval == "") oldtxt = L("lcl_trackfromempty");
|
||||
|
||||
Reference in New Issue
Block a user