//CHARGEMENT DE LA PAGE function init_plugin_example(){ switch($.urlParam('page')){ default: break; } $('#contacts').sortable_table({ onSort : example_contact_search }); } //Enregistrement des configurations function example_setting_save(){ $.action({ action: 'example_setting_save', fields: $('#example-setting-form').toJson() },function(){ $.message('success','Enregistré'); }); } /** CONTACT **/ //Récuperation d'une liste contact dans le tableau #contacts function example_contact_search(callback,exportMode){ var box = new FilterBox('#example_contact-filters'); if(exportMode) $('.btn-export').addClass('btn-preloader'); $('#contacts').fill({ action:'example_contact_search', filters: box.filters(), //Gestion du tri par colonnes de tableau (optionnel) sort: $('#contacts').sortable_table('get'), //Activation de l'export excel (optionnel) export: !exportMode ? false : exportMode, //exemple d'affichage de ligne personnalisé (optionnel) showing : function(item,i){ item.css({ transform:'translateX(-200px)', transition:'all 0.2s ease-in-out', opacity : 0 }).removeClass('hidden'); setTimeout(function(){ item.css({ transform:'translateX(0px)', opacity : 1 }) },(i+1)*5); } },function(response){ if(!exportMode) $('.results-count > span').text(response.pagination.total); if(callback!=null) callback(); }); } //Ajout ou modification contact function example_contact_save(){ var data = $('#contact-form').toJson(); $('input[data-type="radio"]:checked', '#contact-form').each(function(){ data[$(this).attr('name')] = $(this).val(); }); $.action(data,function(r){ $('#contact-form').attr('data-id',r.id); $.urlParam('id',r.id); $.message('success','Enregistré'); }); } //Suppression contact function example_contact_delete(element){ if(!confirm('Êtes vous sûr de vouloir supprimer cet item ?')) return; var line = $(element).closest('.item-line'); $.action({ action: 'example_contact_delete', id: line.attr('data-id') },function(r){ line.remove(); $.message('info','Item supprimé'); }); } /* QUICKFORM */ function example_quickform_buttons(){ $('.quickform-modal .modal-footer').append('
Ajouter
'); } // Callback du quickform on save function contact_submit_quickform(){ $('#quickform-modal').modal('hide'); } /* EXPORT MODELE */ function contact_export_pre_callback(){ console.log('Callback custom après chargement du modal'); setTimeout(function(){ $('#export-modal .cb-custom-btn').remove(); $('#export-modal .modal-footer').prepend('
Bouton ajouté avec le callback custom
'); },0); } function contact_export_post_callback(){ alert('Callback custom après export'); } /* LOCATION CALLBACK */ function example_location_select(location){ var attributes = {}; for(var key in location){ attributes['data-'+key] = location[key]; if($('#'+key)!='') $('#'+key).val(location[key]).text(location[key]); } } function example_location_geocode(infos){ alert("Latitude: "+infos.Response.View[0].Result[0].Location.DisplayPosition.Latitude+"\nLongitude: "+infos.Response.View[0].Result[0].Location.DisplayPosition.Longitude); } function example_map_click(args){ console.log('click on map with args',args); }