Skip to content

Přidána backendová část validace

Compare
Choose a tag to compare
@zipper zipper released this 06 Sep 08:43
· 99 commits to master since this release
0d18b39

PHP

  • přidána nově celá backend část (viz dokumentace)
  • přidány testy a napojení na Travis CI

JS změny

  • Nepovinná pravidla (měkká validace) a AJAXová pravidla lze nyní na backendu připojovat přes addRule.
  • U asynchronních pravidel jsou automaticky vyplněny inputy, které jsou nastaveny v arg.dependentInputs a jejichž hodnoty dojdou v payload.dependentInputs. Dříve toto řešil manuálně callback pro danou validaci, např. PdFormsRules_validTIN.
  • Přidána metoda pdForms.getRuleByOp(rules, op), která vrátí první pravidlo z rules, které má jméno op.
  • BC breaky:
    • Všechny validátory jsou nyní v Nette.validators, validátory z pdForms.validators byly přesunuty tamtéž.
    • Přejmenování objektu pro callbacky, nově je to pdForms.ajaxCallbacks, místo původního pdForms.asyncCallbacks.
    • Přejmenování interních metod, které by neměly být používány mimo knihovnu. Pokud ano, může být BC break. Přejmenované metody:
      • pdForms.isRuleOptional -> pdForms.isOptionalRule
      • pdForms.normalizeRulesArg -> pdForms.normalizeRules
    • Refactor metod a proměnných nahrazením async za ajax.
    • Odebrání AJAXového pravidla (včetně callbacku) PdFormsRules_validTIN a jeho nahrazení za obecné PdFormsRules_ajax.
    • Není nutné vytvářet prázdný callback pro identifikaci AJAXového pravidla. To je nyní rozpoznáno díky příznaku z back-endu.
    • Přejmenována metoda na ověření, zda pravidla obsahují ajaxové pravidla. Nově pdForms.hasAjaxRule místo pdForms.hasAsyncRule.
    • Očekávaný placeholder pro AJAX spinner má třídu pdforms-ajax-spinner--HTML_ID_INPUTU místo ajax-validation-spinner--HTML_ID_INPUTU
    • Nastavení messageType v payload u AJAXových validací má nejvyšší prioritu při nastavení class validační zprávy. V případě nepovinného pravidla se automaticky mění error na info.