399 lines
14 KiB
JavaScript
399 lines
14 KiB
JavaScript
var ls = {};
|
|
var tw = {};
|
|
|
|
var maandArray=['januari', 'februari','maart','april','mei','juni','juli','augustus','september','oktober','november','december'];
|
|
var maandDagen=[31,28,31,30,31,30,31,31,30,31,30,31];
|
|
var weekArray=['zondag','maandag', 'dinsdag','woensdag','donderdag','vrijdag','zaterdag'];
|
|
|
|
ls.MsgAutoFade = function (msg,duration){
|
|
var alt = document.createElement("div");
|
|
alt.setAttribute("style","position:absolute;top:10px;left:80%;background-color:#ffffff; z-index:1120; border:3px solid red; padding:40px; text-align:center");
|
|
alt.innerHTML = msg;
|
|
setTimeout(function(){
|
|
alt.parentNode.removeChild(alt);
|
|
},duration);
|
|
document.body.appendChild(alt);
|
|
};
|
|
|
|
$(function () {
|
|
$.ajaxSetup({cache:false});
|
|
|
|
//setInterval(checkSession, 10000);
|
|
|
|
// tw.newloginModel.userName($("#username-init").val());
|
|
// tw.newloginModel.userToken($("#usertoken").val());
|
|
|
|
// function checkSession(){
|
|
// $.getJSON('index.php/home/check_session', function(data){
|
|
// if(!data.session){
|
|
// $("#lsOverlay").fadeIn(500, function(){
|
|
// $("#new-login").fadeIn(500);
|
|
// });
|
|
// }
|
|
// });
|
|
// }
|
|
$( document ).ajaxComplete( function ( event, xhr, settings ) {
|
|
try {
|
|
var result = JSON.parse(xhr.responseText);
|
|
if( result.offline === undefined || ! result.offline ) return true;
|
|
showLogin();
|
|
} catch (e) {
|
|
return true;
|
|
}
|
|
} );
|
|
|
|
function showLogin(){
|
|
//$("#log-in-jumbo" ).modal('show');
|
|
$.post("index.php/login/logout",function(){
|
|
location.reload();
|
|
});
|
|
}
|
|
$(document).on("click", ".help.butfooter", function () {
|
|
var win=window.open('index.php/ijkpartituur/documents/download_document' , '_blank');
|
|
win.focus();
|
|
});
|
|
|
|
$(document).on("click", ".popclose", function () {
|
|
var fade = true;
|
|
$(this).closest(".popup").css("z-index", 300);
|
|
$(this).closest(".popup").css("display", "none");
|
|
$(".popup").each(function (i, p) {
|
|
if ($(p).css("display") == "block") {
|
|
fade = false;
|
|
return false;
|
|
} // if
|
|
});
|
|
if (fade) {
|
|
$('#lsOverlay').fadeOut();
|
|
$("#lsOverlay").css({'z-index': 60});
|
|
}
|
|
$("#lsOverlay2").fadeOut();
|
|
});
|
|
$(document).on("click","#lsOverlay",function(){
|
|
$(".popclose").click();
|
|
});
|
|
|
|
|
|
$(document).on('click', '#set-globorg', function(){
|
|
if ($("#set-globorg").hasClass("disabled")) {return;}
|
|
tw.initGloborg();
|
|
});
|
|
|
|
$(document).on('click','#back-to-instrumenten', function(){
|
|
$.post("index.php/shared/portal/naarmodule/0" , function(){
|
|
location.reload();
|
|
});
|
|
});
|
|
|
|
$.datepicker.setDefaults({
|
|
dateFormat: 'dd-mm-yy',
|
|
changeMonth: true,
|
|
changeYear: true,
|
|
showOn: 'focus', // geen images laten zien. is wel zo strak voor wel een image moet deze waarde "both" zijn
|
|
buttonImage: '../css/images/calendar.gif',
|
|
buttonImageOnly: true,
|
|
dayNamesShort: ['zo','ma','di','wo','do','vr','za'],
|
|
dayNamesMin: ['zo','ma','di','wo','do','vr','za'],
|
|
firstDay: 1,
|
|
monthNamesShort:['Jan', 'Feb','Mrt', 'Apr','Mei','Jun','Jul','Aug','Sep','Okt','Nov','Dec'],
|
|
monthNames:['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December']
|
|
}
|
|
,
|
|
$.datepicker.regional['nl']
|
|
|
|
);
|
|
// $(document).on('focus', '.popdat', function () {
|
|
// $(".popdat").datepicker({
|
|
// "dateFormat": "dd-mm-yy",
|
|
// "dayNamesMin": ["zo", "ma", "di", "wo", "do", "vr", "za"],
|
|
// "monthNames": ["januari", "februari", "maart", "april", "mei", "juni", "juli",
|
|
// "augustus", "september", "oktober", "november", "december"],
|
|
// "changeYear": true
|
|
// });
|
|
// });
|
|
|
|
$(document).on("change",".bedrag", function(){
|
|
var testgetal = $(this).attr('value');
|
|
testgetal =testgetal.replace('.' , '');
|
|
testgetal= testgetal.replace(',' , '.');
|
|
var self = this;
|
|
if (testgetal === '') return;
|
|
if (! isNumber(testgetal)) {
|
|
apprise(testgetal + ' is geen valide getal.', { 'textOK': "OK"}, function(){
|
|
$(self).attr("value", 0,00);
|
|
$(self).focus();
|
|
});
|
|
}
|
|
else{
|
|
testgetal=parseFloat(testgetal).toFixed(2);
|
|
$(self).attr("value" , MaakNedFormat(testgetal, 2) );
|
|
} });
|
|
|
|
$(document).on("change", ".intveld", function () {
|
|
var testgetal = $(this).attr('value');
|
|
var self = this;
|
|
if (testgetal === '') return;
|
|
if (! isNumber(testgetal)) {
|
|
apprise(testgetal + ' is geen valide getal.', {
|
|
'textOK': "OK"
|
|
}, function (response) {
|
|
$(self).attr("value", "");
|
|
$(self).focus();
|
|
});
|
|
} // if not an integer
|
|
}); // function bij document change
|
|
|
|
$(document).on("change", ".dubbelint", function () {
|
|
var testgetal = $(this).attr('value');
|
|
var self = this;
|
|
|
|
if (testgetal === '') {
|
|
$(self).attr("value", "00");
|
|
return ;
|
|
}
|
|
if (! isNumber(testgetal)) {
|
|
apprise(testgetal + ' is geen valide getal.', {
|
|
'textOK': "OK"
|
|
}, function (response) {
|
|
$(self).attr("value", "00");
|
|
$(self).focus();
|
|
});
|
|
} // if not an integer
|
|
else {
|
|
if (testgetal < 10){
|
|
$(self).attr("value", "0" + parseInt(testgetal),10);
|
|
}
|
|
else {
|
|
$(self).attr("value", parseInt(testgetal),10);
|
|
}
|
|
} // else
|
|
});
|
|
|
|
|
|
$(document).on("change", ".realveld", function () {
|
|
var testgetal = $(this).attr('value');
|
|
var ingetal = testgetal;
|
|
var self = this;
|
|
if (testgetal === '') return;
|
|
testgetal = testgetal.replace(".", "");
|
|
testgetal = testgetal.replace(',', '.');
|
|
if (!(parseFloat(testgetal)) || isNaN(testgetal)) {
|
|
apprise(ingetal + ' is geen valide getal.', {
|
|
'textOK': "OK"
|
|
}, function (response) {
|
|
$(self).attr("value", "");
|
|
$(self).focus();
|
|
});
|
|
} // if not a real
|
|
|
|
});
|
|
|
|
|
|
// $(document).on("change", ".datveld", function () {
|
|
// var testdatum = $(this).attr('value');
|
|
// var self = this;
|
|
// if (!isValidDate(testdatum)) {
|
|
// apprise(testdatum + ' is geen valide datum.', {
|
|
// 'textOK': "OK"
|
|
// }, function (response) {
|
|
// $(self).attr("value", "");
|
|
// $(self).focus();
|
|
// }); // end apprise
|
|
// } // if not valid date
|
|
// }); // function bij document change
|
|
});
|
|
|
|
$(document).on('mouseover', '.draganchor', function(){
|
|
$(this).parent().parent('.popup').draggable("enable");
|
|
});
|
|
|
|
$(document).on('mouseleave',".draganchor",function(){
|
|
var index = $(this).parent().parent('.popup').css('z-index');
|
|
$(this).parent().parent('.popup').draggable("disable");
|
|
$(this).parent().parent().css('opacity', 100);
|
|
});
|
|
|
|
function setDrag(elNaam){
|
|
$(elNaam).draggable();
|
|
$(elNaam).draggable({containment:"body" });
|
|
$(elNaam).draggable("option","helper","");
|
|
$(elNaam).draggable("option","opacity",1);
|
|
$(elNaam).draggable('disable');
|
|
};
|
|
|
|
function isValidDate(s) {
|
|
if (s){
|
|
var bits = s.split('-');
|
|
var y = bits[2],
|
|
m = bits[1],
|
|
d = bits[0];
|
|
// Assume not leap year by default (note zero index for Jan)
|
|
var daysInMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
|
|
// If evenly divisible by 4 and not evenly divisible by 100,
|
|
// or is evenly divisible by 400, then a leap year
|
|
if ((!(y % 4) && y % 100) || !(y % 400)) {
|
|
daysInMonth[1] = 29;
|
|
}
|
|
if (y < 1970 || y > 3000) return false;
|
|
return d <= daysInMonth[--m]
|
|
}
|
|
else {return '';}
|
|
}
|
|
|
|
function MaakEnglishFormat(x) {
|
|
// verwacht een getal in het format 12.345,67
|
|
var x1 = x.replace('.', '');
|
|
var x2 = x1.replace(',', '.');
|
|
var x3 = parseFloat(x2);
|
|
return x3;
|
|
}
|
|
|
|
function MaakNedFormat(y, decplaces) {
|
|
var y2 = y * Math.pow(10, decplaces);
|
|
var fraction = Math.round((y2 - parseInt(y2),10) * 10 / 10);
|
|
if (fraction == -0.5) fraction = -0.6;
|
|
var y3 = Math.round(parseInt(y2,10) + fraction) / Math.pow(10, decplaces);
|
|
y3 += '';
|
|
var x = y3.split('.');
|
|
var x1 = x[0];
|
|
var x2 = x.length > 1 ? ',' + x[1] : '';
|
|
if (x2== '') {x2=",00"} // moet eigenlijk rekening houden met decplaces
|
|
var rgx = /(\d+)(\d{3})/;
|
|
while (rgx.test(x1)) {
|
|
x1 = x1.replace(rgx, '$1' + '.' + '$2');
|
|
}
|
|
return x1 + x2;
|
|
}
|
|
|
|
function NedDatNaarDateObj(nedDate) {
|
|
var vDate = new Date(nedDate.substr(6, 4), (parseInt(nedDate.substr(3, 2),10) - 1), nedDate.substr(0, 2));
|
|
vDate.setHours(0,0,0);
|
|
return vDate;
|
|
}
|
|
function EngDatNaarDateObj(engDate){
|
|
var vDate = new Date(engDate.substr(0, 4), (parseInt(engDate.substr(5, 2),10) - 1), engDate.substr(8, 2));
|
|
vDate.setHours(0,0,0);
|
|
return vDate;
|
|
}
|
|
function DateNaarNedDat(engDate) {
|
|
var dag = engDate.getDate();
|
|
if (parseInt(dag,10) < 10) {
|
|
dag = "0" + dag;
|
|
}
|
|
var maand = engDate.getMonth();
|
|
maand = parseInt(maand,10) + 1;
|
|
if (maand < 10) {
|
|
maand = '0' + maand;
|
|
}
|
|
var jaar = engDate.getFullYear();
|
|
var nieuwdatum = dag + '-' + maand + '-' + jaar;
|
|
return nieuwdatum;
|
|
}
|
|
|
|
function uploadResult(data){
|
|
apprise(data, {animate:true});
|
|
$("#upload-overlay").fadeOut(100);
|
|
tw.initDocuments();
|
|
}
|
|
function LSToonUploadResult(errors,id){
|
|
apprise(errors, {animate:true});
|
|
$("#LSupload-overlay").fadeOut(100);
|
|
$(".popclose").click();
|
|
}
|
|
function ToonUploadNote(errors,id){
|
|
$(".upload-overlay").fadeOut(100);
|
|
$("#popUploadANote").fadeOut(100);
|
|
apprise(errors, {animate:true}, function(){
|
|
ls.ModelPlanning.fSetNieuweNote(id);
|
|
} );
|
|
}
|
|
function GetDagen (maand, jaar){
|
|
var dagen = 30;
|
|
if (maand ==1 || maand == 3 || maand==5 ||
|
|
maand == 7 || maand == 8 || maand == 10 || maand == 12) dagen = 31;
|
|
if (maand == 2) {
|
|
dagen = 28;
|
|
if (jaar%4 == 0) {
|
|
if (jaar%100 !=0) {dagen = 29}
|
|
else if(jaar%400 ==0) {dagen = 29}
|
|
}
|
|
}
|
|
return dagen
|
|
}
|
|
|
|
function consoleMSG(msg){
|
|
var consoleOK = true;
|
|
if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){
|
|
var ieversion=new Number(RegExp.$1);
|
|
if (ieversion<=9) consoleOK = false;
|
|
}
|
|
|
|
}
|
|
|
|
function checkEmail(email){
|
|
var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
|
|
if(pattern.test(email)){
|
|
return true;
|
|
}else{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function ScoreNaarProfiel(score){
|
|
if (score <= 725) {return 1};
|
|
if (score > 725 && score <= 880) {return 2};
|
|
if (score > 880 && score <=964) {return 3};
|
|
if (score > 965 && score <= 1126) {return 4};
|
|
if (score >1126 && score <= 1300) {return 5};
|
|
}
|
|
function CodeNaarMinScore(code){
|
|
// code is 1 t/m 5, de "kleuren" dus
|
|
if (code == 1){return 0; } ;
|
|
if (code == 2){return 51; } ;
|
|
if (code == 3){return 66; } ;
|
|
if (code == 4){return 80; } ;
|
|
if (code == 5){return 91; } ;
|
|
}
|
|
function CodeNaarMaxScore(code){
|
|
// code is 1 t/m 5, de "kleuren" dus
|
|
if (code == 1){return 50; } ;
|
|
if (code == 2){return 65; } ;
|
|
if (code == 3){return 79; } ;
|
|
if (code == 4){return 90; } ;
|
|
if (code == 5){return 100; } ;
|
|
}
|
|
|
|
function SetMenus(partID){
|
|
// haal de partituur op en kijk of het de active part is. Zo ja, pas targetID aan en zet de menuitems op true
|
|
$.post("index.php/ijkpartituur/partituur/getPartituurActief/" + partID, function (data){
|
|
if (data ==1 ) {
|
|
$(".butTopMenu").removeAttr('disabled');
|
|
$('.sub').removeAttr("disabled");
|
|
}
|
|
else {
|
|
$.post("index.php/ijkpartituur/partituur/get_submenu", function(data){
|
|
$.each(data.menu, function(i, menu){
|
|
if (menu.always == 0) {
|
|
$("#menu-but-"+menu.id).css('disable', "disable");
|
|
}else {
|
|
$("#menu-but-"+menu.id).css('enable', "enable");
|
|
}
|
|
$.each(menu.submenu, function(j, submenu){
|
|
if (submenu.always == 0) {
|
|
$("#submenu-but-"+submenu.id).attr('disabled','disabled');
|
|
}else {
|
|
$("#submenu-but-"+submenu.id).attr('enabled','enabled');
|
|
}
|
|
}); // each submenu
|
|
}); // each data
|
|
},'json');
|
|
}
|
|
},'json');
|
|
}
|
|
|
|
function isNumber(n) {
|
|
return !isNaN(parseFloat(n)) && isFinite(n);
|
|
}
|
|
|