$(document).ready(function() { if($('.toggleNav').length>0){ $('.toggleNav').on('click', function(){ $('html').toggleClass('navOpen'); }); } registerDeleteModal(); if($(".icheck").length>0){ $('input[type="checkbox"].icheck, input[type="radio"].icheck').iCheck({ checkboxClass: 'icheckbox_flat-red', radioClass: 'iradio_flat-red' }); } //Datepicker if($('.datepicker').length>0){ $(".datepicker").datetimepicker({ allowInputToggle: true, format: 'DD/MM/YYYY', locale: 'es' }); } //Selector de mes if($('.month-picker').length>0){ $(".month-picker").datepicker( { format: "mm/yyyy", startView: "months", minViewMode: "months", language: 'es', autoclose: true, }); } //Selector de año if($('.year-picker').length>0){ $(".year-picker").datepicker( { format: "yyyy", startView: "years", minViewMode: "years", language: 'es', autoclose: true, }); } //Timepicker if($('.timepicker').length>0){ $('.timepicker').datetimepicker({ allowInputToggle: true, format: 'HH:mm', stepping: 5, locale: 'es' }); } //Select2 if($('.select2').length>0){ $(".select2").select2(); } // Buscador del mapa if($('#map_searcher').length>0){ $('#map_searcher').keydown(function(event){ if( (event.keyCode == 13)) { event.preventDefault(); return false; } }); } if($('.user-btn').length>0){ $('.user-btn').click(function(){ $('.user-btn').toggleClass('open'); $('.profile-menu').toggleClass('open'); }); } if($('.menu').length>0){ $('.menu :nth-child(2) ul li a:not(:last-child)').click(function(){ $(this).toggleClass('open'); }); } if($('#menu-btn').length>0){ $('#menu-btn').click(function(){ $('.menu').toggleClass('open'); $('.content').toggleClass('open'); }); //Cerrar submenu cuando pulsas fuera $('body').on('click', function(event){ if(!$(event.target).closest('.user-btn').length) { $('.profile-menu').removeClass('open'); } if(!$(event.target).closest('#more').length) { $('#more').removeClass('open'); } }); } }); /** * Confirmar eliminacion de elemento */ function registerDeleteModal(){ $('.btn-confirm-delete').unbind('click'); $('.btn-confirm-delete').on('click', function(){ $('#delete_form').attr('action', $(this).data('action')); }); } function moveDataTableFilter(table, field, column) { var id = table.table().node().id; if (field == null) { $('#' + id + '_wrapper').prepend('
'); $('#' + id + '_toolbar').append($('#' + id + '_length select')); $('#' + id + '_length').removeClass('input-sm'); $('#' + id + '_filter input').attr('placeholder', $('#' + id + '_filter label').text().replace(':', '')); $('#' + id + '_filter input').removeClass('input-sm'); $('#' + id + '_filter input').addClass('pull-right'); $('#' + id + '_toolbar').append($('#' + id + '_filter input')); $('#' + id + '_length').parent().parent().remove(); } else { $('#' + id + '_toolbar').append(field); } } function registerDataTableFilter(table, field, column, callback){ event = field.hasClass('datepicker')?'dp.change':'change'; field.on(event, function (selected) { if(typeof filters != 'undefined'){ if(filters.searchCols && !filters.searchCols[column]){ filters.filters[column] = $(this).val(); console.log(filters.filters); } } if(callback){ callback(); } table.column(column) .search($(this).val(), true, false) .draw(); }); setSearchValue(field, column); } function changeSelected (select) { var $styledSelect = select.next('div.select-styled'); $styledSelect.text(select.find('option:selected').text()); } var filters = [null]; function saveSearch(class_name){ if(typeof filters != 'undefined'){ var data = {}; data[class_name] = filters; sessionStorage.setItem('filters', JSON.stringify(data)); } } function getSearch(class_name){ if(typeof filters != 'undefined'){ var data = JSON.parse(sessionStorage.getItem('filters')); return data && data[class_name]?data[class_name]:{filters: {}, searchCols: [null]}; } } function removeSearch(){ sessionStorage.removeItem('filters'); } function setSearchValue(input, index_col){ if(typeof filters != 'undefined'){ if(filters.searchCols && filters.searchCols[index_col]){ if(filters.searchCols[index_col].sSearch){ input.val(filters.searchCols[index_col].sSearch); } } // else if(filters.searchCols[index_col].search){ // input.val(filters.searchCols[index_col].search); // } } } function setFiltersValues(){ if(typeof filters != 'undefined'){ if(filters.filters){ $.each(filters.filters, function( index, value ) { if($("select[name='"+index+"']").length){ $("select[name='"+index+"']").val(value); } else if($("input[name='"+index+"']").length){ $("input[name='"+index+"']").val(value); } }); } } } //For internet explorer Math.trunc = Math.trunc || function(x) { if (isNaN(x)) { return NaN; } if (x > 0) { return Math.floor(x); } return Math.ceil(x); }; function time2seconds(time){ time = time.split(':'); return (+time[0]) * 60 * 60 + (+time[1]) * 60 + (+time[2]); } String.prototype.toTime = function () { var sec_num = parseInt(this, 10); // don't forget the second param var hours = Math.floor(sec_num / 3600); var minutes = Math.floor((sec_num - (hours * 3600)) / 60); var seconds = sec_num - (hours * 3600) - (minutes * 60); if (hours < 10) {hours = "0"+hours;} if (minutes < 10) {minutes = "0"+minutes;} if (seconds < 10) {seconds = "0"+seconds;} return hours+':'+minutes+':'+seconds; } String.prototype.toPauseTime = function () { var sec_num = parseInt(this, 10); // don't forget the second param var hours = Math.floor(sec_num / 3600); var minutes = Math.floor((sec_num - (hours * 3600)) / 60); var str = ''; if(hours > 0){ str+= hours+'h.'; } if(minutes>0 || str==''){ str+= ' '+minutes+'min.'; } return str.trim(); }