$(document).ready(function() { $(window).scroll(function() { if ($(window).width() >= 768 && $(this).scrollTop() > 72.6) { $('.col-content-left').css({'position':'fixed', 'top':'50px'}); $('.col-content-right').addClass('col-sm-offset-4 col-md-offset-3'); } else { $('.col-content-left').css({'position':'relative', 'top':'0'}); $('.col-content-right').removeClass('col-sm-offset-4 col-md-offset-3'); } }); if (typeof Cookies !== 'undefined') { // Retrieving csrf token csrftoken = Cookies.get('csrftoken'); // Appending csrf token to ajax post requests function csrfSafeMethod(method) { // these HTTP methods do not require CSRF protection return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method)); } $.ajaxSetup({ beforeSend: function(xhr, settings) { if (!csrfSafeMethod(settings.type) && !this.crossDomain) { xhr.setRequestHeader("X-CSRFToken", csrftoken); } } }); } }); function dateUTCToParis(date) { return moment.tz(date, 'UTC').tz('Europe/Paris'); } function amountDisplay(amount, is_cof=false, tri='') { if (tri == 'LIQ') return (- amount).toFixed(2) +'€'; return amountToUKF(amount, is_cof); } function amountToUKF(amount, is_cof=false) { var coef_cof = is_cof ? 1 + settings['subvention_cof'] / 100 : 1; return Math.round(amount * coef_cof * 10); } function isValidTrigramme(trigramme) { var pattern = /^[^a-z]{3}$/; return trigramme.match(pattern); } function getErrorsHtml(data) { var content = ''; if ('operation_group' in data['errors']) { content += 'Général'; content += ''; } if ('missing_perms' in data['errors']) { content += 'Permissions manquantes'; content += ''; } if ('negative' in data['errors']) { if (window.location.pathname.startsWith('/gestion/')) { var url_base = '/gestion/k-fet/accounts/'; } else { var url_base = '/k-fet/accounts/'; } for (var i=0; iAutorisation de négatif requise pour '+data['errors']['negative'][i]+''; } } if ('addcost' in data['errors']) { content += ''; } return content; } function requestAuth(data, callback, focus_next = null) { var content = getErrorsHtml(data); content += '
', $.confirm({ title: 'Authentification requise', content: content, backgroundDismiss: true, animation:'top', closeAnimation:'bottom', keyboardEnabled: true, confirm: function() { var password = this.$content.find('input').val(); callback(password); }, onOpen: function() { var that = this; var capslock = -1 ; // 1 -> caps on ; 0 -> caps off ; -1 or 2 -> unknown this.$content.find('input').on('keypress', function(e) { if (e.keyCode == 13) that.$confirmButton.click(); var s = String.fromCharCode(e.which); if ((s.toUpperCase() === s && s.toLowerCase() !== s && !e.shiftKey)|| //caps on, shift off (s.toUpperCase() !== s && s.toLowerCase() === s && e.shiftKey)) { //caps on, shift on capslock = 1 ; } else if ((s.toLowerCase() === s && s.toUpperCase() !== s && !e.shiftKey)|| //caps off, shift off (s.toLowerCase() !== s && s.toUpperCase() === s && e.shiftKey)) { //caps off, shift on capslock = 0 ; } if (capslock == 1) $('.capslock .glyphicon').show() ; else if (capslock == 0) $('.capslock .glyphicon').hide() ; }); // Capslock key is not detected by keypress this.$content.find('input').on('keydown', function(e) { if (e.which == 20) { capslock = 1-capslock ; } if (capslock == 1) $('.capslock .glyphicon').show() ; else if (capslock == 0) $('.capslock .glyphicon').hide() ; }); }, onClose: function() { if (focus_next) this._lastFocused = focus_next; } }); }