/** * Load next/previous page of log history */ function loadLogPage(objectclass,id,start,count) { $.ajax({ type: "POST", url: "../ajax/loadLogPage.php", data: { objectclass: objectclass, id: id, start: start, count: count } }).success(function (data) { $('#logs_'+objectclass.toLowerCase()+"_"+id).html(data); }); } /** * Check document password quality */ function checkPasswordStrength(pwd) { score = testPassword(pwd); $('[id^=span_security]').addClass('hidden'); if(score < 16) { $('#span_security_very_weak').removeClass('hidden'); } else if(score < 25) { $('#span_security_weak').removeClass('hidden'); } else if(score < 35) { $('#span_security_medium').removeClass('hidden'); } else if(score < 45) { $('#span_security_strong').removeClass('hidden'); } else { $('#span_security_stronger').removeClass('hidden'); } } /** * show popup to enter password to download a decrypted file. * Called by Download button on document list. */ function showDownloadPopup(id,GEC_ROOT) { $('#password-modal').modal('show'); $('#password-modal .btn-primary').unbind("click"); $('#password-modal .btn-primary').click(function() { download(id,GEC_ROOT); }); } /** * download file, called by download doc popup after user enter password and validate */ function download(id,GEC_ROOT) { password = $('#input_password_modal')[0].value; if(password=='') { $('#password-modal .form-group').addClass('has-error'); $('#helpblock_password_modal').removeClass('hidden'); return; } else { $('#password-modal .form-group').removeClass('has-error'); $('#helpblock_password_modal').addClass('hidden'); } $.ajax({ type: "GET", url: GEC_ROOT+"/front/download.php", data: { id: id, password: password, testPassword: 1 } }).success(function (data) { if(data == 'ok') { $('#password-modal').modal('hide'); window.location = GEC_ROOT+'/front/download.php?id='+id+'&password='+password; } else { $('#password-modal .form-group').addClass('has-error'); $('#helpblock_password_modal').removeClass('hidden'); } }); } /** * Reload reference dropdown with matching category_id from category dropdown in contract form */ function changeOfDropdownCategory(categoryDropdown) { $.ajax({ type: "POST", url: "../ajax/getReferences.php", data: { category_id: categoryDropdown.value } }).success(function (data) { $('#div_reference_dropdown').html(data); }); } /** * check contrat form * forbid empty select value for reference / category */ function checkContractForm() { //check dropdowns are filled with a value if($('select[name="supplier_id"]')[0].value == 0) { $('select[name="supplier_id"]').parent().addClass('has-error'); return false; } $('select[name="supplier_id"]').parent().removeClass('has-error'); if($('select[name="contract_type_id"]')[0].value == 0) { $('select[name="contract_type_id"]').parent().addClass('has-error'); return false; } $('select[name="contract_type_id"]').parent().removeClass('has-error'); if($('select[name="category_id"]')[0].value == 0) { $('select[name="category_id"]').parent().addClass('has-error'); return false; } $('select[name="category_id"]').parent().removeClass('has-error'); if($('select[name="reference_id"]')[0].value == 0) { $('select[name="reference_id"]').parent().addClass('has-error'); return false; } $('select[name="reference_id"]').parent().removeClass('has-error'); //check start date <= end date var start_date = $('input[name="start_date"]')[0].value.replace(/-/g,''); var end_date = $('input[name="end_date"]')[0].value.replace(/-/g,''); if(end_date < start_date) { $('input[name="start_date"]').parent().addClass('has-error'); $('input[name="end_date"]').parent().addClass('has-error'); return false; } $('input[name="start_date"]').parent().removeClass('has-error'); $('input[name="end_date"]').parent().removeClass('has-error'); return true; } /** * Update search input with the correct type for selected field */ function updateSearchInput(class_name,rand) { //get current value in field field_type = document.getElementsByName('search_field_value_'+rand)[0].type; $.ajax({ type: "POST", url: "../ajax/getSearchInputField.php", data: { class_name: class_name, name: 'search_field_value_'+rand, index: $("select[name='search_field_index_"+rand+"']").val() } }).success(function (data) { $("[name='search_field_value_"+rand+"']").replaceWith(data); $('[data-toggle="tooltip"]').tooltip(); }); } /** * Remove search criteria and submit form to update results immediatly */ function deleteSearchCriteria(rand) { $('#search_div_'+rand).remove(); document.getElementById('search-form').submit(); } /** * show popup to customize search result columns * TODO : show loading dialog while waiting for popup content */ function showCustomizeColumnPopup(class_name) { $.ajax({ type: "POST", url: "../ajax/getCustomizeColumnResultSearch.php", data: { class_name: class_name } }).success(function (data) { $('#modal-customize-search-result-columns .modal-body').html(data); $('#modal-customize-search-result-columns').modal('show'); }); } /** * Move a column UP in table in customize search column popup */ function customizeColumnPopupMoveColumnUp(id) { //which tab is active ? var activeTab = 'user'; var foo = $('li[id^=tab-li-ccp-][class~=active]'); if(foo[0].id=='tab-li-ccp-global') activeTab='global'; var idx = $('#tabpanel-ccp-'+activeTab+' #tr-ccp-'+id).index(); var row = $('#tabpanel-ccp-'+activeTab+' #tr-ccp-'+id); if(idx > 1) { row.insertBefore(row.prev()); } } /** * Move a column DOWN in table in customize search column popup */ function customizeColumnPopupMoveColumnDown(id) { //which tab is active ? var activeTab = 'user'; var foo = $('li[id^=tab-li-ccp-][class~=active]'); if(foo[0].id=='tab-li-ccp-global') activeTab='global'; var idx = $('#tabpanel-ccp-'+activeTab+' #tr-ccp-'+id).index(); var row = $('#tabpanel-ccp-'+activeTab+' #tr-ccp-'+id); if(idx < $('#tabpanel-ccp-'+activeTab+' #table-ccp tr').length) { row.insertAfter(row.next()); } } /** * Remove a column in customize search column popup */ function customizeColumnPopupRemoveColumn(id) { //which tab is active ? var activeTab = 'user'; var foo = $('li[id^=tab-li-ccp-][class~=active]'); if(foo[0].id=='tab-li-ccp-global') activeTab='global'; //add row to dropdown add column //get column name var name = $('#tabpanel-ccp-'+activeTab+' #tr-ccp-'+id+' > td')[0].innerHTML; //add to dropdown $('#tabpanel-ccp-'+activeTab+' select[name="dropdown-new-column"]').append($('