Skip to content

Instantly share code, notes, and snippets.

@danyeah
Created September 16, 2013 09:01
Show Gist options
  • Select an option

  • Save danyeah/6578231 to your computer and use it in GitHub Desktop.

Select an option

Save danyeah/6578231 to your computer and use it in GitHub Desktop.
FormHandler
formHandler: function(options) {
var defaults = {
form: "form",
languages: "en",
jsPath: "js/"
}
var settings = typeof options !== "undefined" ? $.extend(options, settings) : defaults;
if ( $(settings.form).length == 0 ) { throw( settings.form + " is not present in DOM") };
var $form = $(settings.form);
//Se nell html non è stato settato lang allora uso il primo linguaggio di settings.languages
var defaultLang = ($("html").attr("lang")) ? getLang($("html").attr("lang")) : getLang(settings.languages);
var scriptsUrl = settings.jsPath;
// Modificare questa parte con le proprie regole di validazione http://docs.jquery.com/Plugins/Validation#Validator
var submitHandler = function() {
$form.validate();
};
//Chiamata ajax per gli script validate come callback chiamo scriptsLoader
$.getScript(scriptsUrl + 'jquery.validate.min.js',function() {
scriptsLoader(defaultLang);
}).fail(function() {
throw("jQuery Validate not found");
});
var scriptsLoader = function(lang) {
// Se lang è vuoto allora continuo con l'inglese
if (lang === "" ) { submitHandler(); return false}
$.getScript(scriptsUrl + lang, function() {
submitHandler();
});
};
// File di traduzioni
// Per il valore del case usare http://www.w3schools.com/tags/ref_language_codes.asp
// Per i file di traduzione https://github.com/jzaefferer/jquery-validation/tree/master/localization
function getLang(lang) {
switch (lang) {
case "it":
return 'messages_it.js';
break;
case "de":
return 'messages_de.js';
break;
case "es":
return 'messages_es.js';
break;
case "en":
return "";
break;
default:
console.log("language hasn't been added yet, im loading english");
return "";
}
}
},//formHandler
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment