Releases: peckadesign/pd.ajax
Releases · peckadesign/pd.ajax
Oprava `btnSpinner` extension po přidání `forceReload`
- V extension
btnSpinner
se nově neodstraňuje spinner z DOM i v případě, že v JSONu AJAXové odpovědi přijde poleforceReload
. V tu chvíli je chování extensionbtnSpinner
totožné s případem, kdy dojdeforceRedirect
.
Přidáno extension `forceReload`
- Nové extension: Přidáno extension
forceReload
, které zajistí znovunačtení stránky v případě, že v odpovědi přišloforceRedirect: true
. Pokud je v odpovědi i_fid
, je přidáno do URL pro načtení. - V extension
spinner
se nově neodstraňuje spinner z DOM i v případě, že v JSONu AJAXové odpovědi přijde poleforceReload
. V tu chvíli je chování extensionspinner
totožné s případem, kdy dojdeforceRedirect
.
Oprava titulku stránky v souvislosti s pdboxem
- Oprava titulku stránky v případě, že pdbox obsahuje redirect.
- Oprava titulku stránky po zavření pdboxu.
Oprava umístění souborů pro extension `inpCombined` a `inpNumber`.
1.4.1 Oprava umístění souborů pro extension `inpCombined` a `inpNumber`.
1.4.0
- U pdboxu je možné nastavit způsob fungování historie po zavření. Výchozí je, že po zavření přejde prohlížeč zpět do stavu před otevřením a v historii prohlížeče je pdbox možno otevřít tlačítkem vpřed. Pomocí
data-pdbox-history="forwards"
je možné nastavit, že při zavření se vytvoří nový stav do historie, tj. tlačítko zpět v prohlížeči otevře znovu tento pdbox. - V jednotlivých extension je v
settings.pd
dostupné pole pro request zapnutých pd extension. - Do extension se neukládá každý
xhr
, ale pouze ty, které opravdu souvisí spdboxem
. Stejně tak k rušení dojde pouze v případě, že oba requesty (probíhající i nový) souvisí spdboxem
. Opravuje #7. - Přesunutí automatického přidávání class
js-pdbox
(obecně dle nastaveníautoclass
u extension) tak, aby i připopstate
došlo k nastavení class uvnitř pdboxu, opravuje #15. - Nové extension: Přidáno extension
replaceState
pro zachování změny url bez vytváření nových stavů. Toto extension je možné použít obecně vždy, když chceme mít aktuální url, ale v historii nechceme vytvářet nový stav. Například přepínání barev produktů nebo formuláře v pdboxu. - Nové extension: Přidáno extension
suggest
pro obsluhu našeptávače. Pro funkční použití je potřeba na formulář přidat classjs-suggest
, dále je nutné označit input (js-suggest__input
), našeptávací tlačítko (js-suggest__btn
) a snippet s výsledky našeptávání (js-suggest__suggest
). - Nové extension: Přidáno extension
inpCombined
pro styl inputů s labelem uvnitř. - Nové extension: Přidáno extension
inpNumber
pro inputy s tlačítky + a −.
data-pdbox-history="forwards"
.
Update extension `uniqueForm`
Extension uniqueForm
nechává tlačítka disabled, pokud v odpovědi přišel forceRedirect
. V takovém případě není žádoucí odebrat disabled
, nicméně běží dál 60s limit. Jde o sjednocení chování s extension btnSpinner
, které spinner už nyní neodstraňovalo v případě přesměrování.
1.3.0: #0 update extension `pdbox` a `btnSpinner`
- Extension
pdbox
nyní zachovává vypnutí historie pro automaticky zAJAXované odkazy a formuláře uvnitř otevřeného pdboxu. Tj. pokud je historie vypnutá při otevření pdboxu, zůstane i v rámci tohoto pdboxu vypnutá. - Extension
btnSpinner
je možné použít nejen pro<button>
, ale pro libovolný element spouštějící AJAXový požadavek (vzhledem k tomu, jak extension funguje, nejde použít např. pro<input>
, protože do něj nelze vložit html kód).
1.2.3: - oprava chyby `scrollTo` extension, kdy:
- oprava chyby
scrollTo
extension, kdy:- nebylo možno nastavit přes data atribut offset na 0
- došlo k JS chybě, pokud nebyl
settings.nette.el
1.2.2
- extension
scrollTo
je přepsané pro lepší použití uvnitř otevřeného pdboxu a je více modifikovatelné:- přidán nastavení pro scroll offset (výchozí hodnota je 0):
- globálně:
$.nette.ext('scrollTo').offset = 30;
- ad-hoc:
<a href="#" class="ajax" data-scroll-to="#target" data-scroll-to-offset="30">...</a>
- globálně:
- přidána možnost nastavit, kdy dochází ke scrollu (podpora
before
asuccess
, výchozí jebefore
)- globálně:
$.nette.ext('scrollTo').defaultEvent = 'success';
- ad-hoc
<a href="#" class="ajax" data-scroll-to="#target" data-scroll-to-event="success"></a>
- globálně:
- přidán nastavení pro scroll offset (výchozí hodnota je 0):