%PDF- %PDF-
Direktori : /var/www/html/bbw/farmaci/kritik-portale/public/js/backend/pharmacy/ |
Current File : /var/www/html/bbw/farmaci/kritik-portale/public/js/backend/pharmacy/editpharmacy.js |
var editpharmacy = { options: {autocompletedinit: false}, init: function () { $('#content').off('click', '.editPharmacy'); $('#content').on('click', '.editPharmacy', this.openPharmacyForm); $('#content').off('submit', '#pharmacyform'); $("#content").on('submit', '#pharmacyform', this.savePharmacy); $('#content').off('click', '[name=removePharmacy]'); $("#content").on('click', '[name=removePharmacy]', this.removePharmacyQuestion); $('#content').off('click', '[name=saveClose]'); $("#content").on('click', '[name=saveClose]', this.saveAndClosePharmacy); $("#content").off('change', '[name=activateRemove]'); $("#content").on('change', '[name=activateRemove]', this.activateRemove); // if(!editpharmacy.options.autocompletedinit && $('[name=ownerEmail]').length > 0) // { // editpharmacy.activateAutocomplete(); // editpharmacy.options.autocompletedinit = true; // } $("#content [name=plan_name]").change(function(){ editpharmacy.getPlanVersion(); }); editpharmacy.countChars("textarea[name=description]"); }, openPharmacyForm: function () { var id = $(this).attr("data-entityid"); window.location = "#backend/pharmacy/edit/id/" + id; }, savePharmacy: function (e) { e.preventDefault(); var route = $('#pharmacyform').attr('action'); var postFormData = $("#pharmacyform").serializeArray(); $.post(route, postFormData, function (data) { if (!data.error) { location.href = '/backend#/backend/pharmacy/edit/id/' + $("[name=id]").val() + "?tmp=" + Math.floor(Math.random() * 1000) ; } else { $('#content').html(data.html); $('body').animate({ scrollTop: $('.state-error:first').offset().top - 80 }, 200); } }); }, saveAndClosePharmacy: function (e) { e.preventDefault(); var route = $('#pharmacyform').attr('action'); var postFormData = $("#pharmacyform").serializeArray(); $.post(route, postFormData, function (data) { if (!data.error) { location.href = '/backend#/backend/pharmacy/pharmacytable'; } else { $('#content').html(data.html); $('body').animate({ scrollTop: $('.state-error:first').offset().top - 80 }, 200); } }); }, removePharmacyQuestion: function (e) { $.SmartMessageBox({ title: "Soll die Apotheke tatsächlich gelöscht werden?", content: "Sind Sie sicher?", buttons: '[Nein][Ja]' }, function (ButtonPressed) { if (ButtonPressed === "Ja") { editpharmacy.removePharmacy(e); } }); e.preventDefault(); }, removePharmacy: function (e) { e.preventDefault(); var route = '/backend/pharmacy/remove/id/' + $('[name=id]').val(); var postFormData = $("#pharmacyform").serializeArray(); $.post(route, postFormData, function (data) { location.href = "/backend#/backend/pharmacy/pharmacytable"; }); }, activateRemove: function (e) { e.preventDefault(); if($("#content [name=activateRemove]").prop("checked") == true){ $("#content [name=removePharmacy]").removeClass("hidden"); } else { $("#content [name=removePharmacy]").addClass("hidden"); } }, activateAutocomplete: function () { var base_url = window.location.origin; var dbAdapter = new Bloodhound({ datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'), queryTokenizer: Bloodhound.tokenizers.whitespace, limit: 10, remote: { rateLimitWait: 100, rateLimitBy: 'debounce', url: base_url + '/backend/pharmacy/typeahead/%QUERY', ajax: { type: "POST", dataType: "json", beforeSend: function (jqXhr, settings) { jqXhr.setRequestHeader('Content-Type', 'application/json; charset=UTF-8'); settings.data = JSON.stringify({query: $("[name=ownerEmail]").val()}); } } } }); dbAdapter.initialize(); $('[name=ownerEmail]').typeahead("destroy"); $('[name=ownerEmail]').typeahead({ hint: true, highlight: false, minLength: 1 }, { name: 'ownerEmail', displayKey: 'email', source: dbAdapter.ttAdapter(), templates: { header: '<h3 class="section-name">Registrierte Nutzer</h3>', empty: [ '<div class="empty-message">', 'Richtige Email Adresse?', '</div>' ].join('\n'), suggestion: function (data) { html = '<p>' + data.email + ' (' + data.name + ')</p>'; return html; } } } ); $('[name=ownerEmail]').unbind('typeahead:selected'); $('[name=ownerEmail]').unbind('typeahead:autocompleted'); $('[name=ownerEmail]').on('typeahead:selected', onAutocompleted); $('[name=ownerEmail]').on('typeahead:autocompleted', onAutocompleted); function onAutocompleted($e, datum) { $('[name=ownerEmail]').val(datum.email); } /* function onSelected($e, datum) { $('[name=ownerEmail]').val(datum.email); }*/ //fix input cant be focused in Safari Bug $('[name=ownerEmail]').click(function(e){ e.preventDefault(); $('[name=ownerEmail]').focus(); }); }, getPlanVersion: function(){ //modal.waitBox(); var route = '/backend/pharmacy/get-plan-versions'; var postFormData = {plan_name: $('[name=plan_name]').val()}; $.post(route, postFormData, function (data) { $('[name=plan_version]').html(data.versions); $('[name=plan_version]').val($('[name=plan_version] option:last').val()); //modal.hide(); },'json'); }, countChars: function(element){ //element exists if($(element).length > 0){ //append count if not exists if($(element).parent().find(".count").length < 1){ $(element).parent().append("<span class='count'></span>"); } var max = $(element).attr("data-maxlength"); //init current count value $(element).parent().find(".count").text($(element).val().length + " von " + max + ' Zeichen'); //bind event $(element).keyup(function(){ $(element).parent().find(".count").text($(element).val().length + " von " + max + ' Zeichen'); }); } } }; $(document).ready(function () { editpharmacy.init(); });