From cdc97530093a1f028eb2ccde4cb91147df6841f1 Mon Sep 17 00:00:00 2001 From: checktheroads Date: Sat, 17 Jul 2021 21:45:55 -0700 Subject: [PATCH] #6372: Fix bulk form action form handling --- netbox/project-static/dist/netbox.js | Bin 694110 -> 694473 bytes netbox/project-static/dist/netbox.js.map | Bin 1636837 -> 1637998 bytes netbox/project-static/src/forms.ts | 37 +++++++++++++++++++++-- 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/netbox/project-static/dist/netbox.js b/netbox/project-static/dist/netbox.js index 76692f4ec1a7753ab2db042f42d3da84abf5ec98..b41ed07371b82c67d6a389a48ab34b1147b07f0f 100644 GIT binary patch delta 765 zcmY+BL1+^}6o#2b`!>O%(x|DFnyj?W)M2Ug;32Hyp$G9AQ1GyBHoMuC-Oak$O$i}b zB~a+aR@=T-kfyx~TBQ&~5j}bk#Jh?|4<37Wwuwp)12gm9DBZ?hjfNI zsm_tk(a!K5G7C+5-;IwR5;sbhB=E(*_U%kTzYu0o+#TY*VJtlrvVI6FidxVs8p zh=mW8f*nkndgYZrCT-gB5Jl1j*lX|ReIlk_?P4Tp- zU~RVzJu+-jX@yAxKG}dEWvMYbq!g4ON6Q_yZv=7;bICxpYHm=x%Hl zV>~HzPTACCZPqRdlT=gcloboKfgd*^CkX}ZK;h>mj7^AFtQa+4SfMuF>%#1u#sjrRt4hVR^w^CQ z+o_nW7=_JNf))(WG&N9sk(pAd`DU?iv#e?ZPagj2LZJ`{&iVg~3kHk(mvXtk^Bdbx s5~N9j1QRT+Hl%I8raOlP>N50hmw*$^ZZW delta 583 zcmZvZ%WKq76vnxoIw#YOl~&PinwbH)w}xP;h$ZANn2jqpUBonx$w*#Ilaw$FJ_rbd zB2%GfQWv()!ks7-QqYY{*X}9^Zo6~gPSl&3;sd;JxqO_D?|eV*hc_#qU#;BBNH&vI zvf1oRRy_o9K(??xfCb{=leg6iMQZ@9D*hb85o$wd7RNi#B*ZL!JcXqhEOwxd>$~up zn0T@aA+d1-;W0_d=Q5rh!6TC5?IDQxZUiTM{4xhg2wBgSEgIsd94?irJ5k?r2rH=? zBRN-F#KjyI=2F&6^seYg8m{Ib^04=NuuL5MvIp1Pgj%f6`idQNsU~kxrqrpUYO+rm zlg+@l6xOD!Z|ITXP`*Yh*Ra0b@pactxwQF|pWg=aUxPU{Od1sTpTS{;XvOvCutrE5 z@9cxai+tRN2SmeL2jE_8tBIWGZfq$UZ8RIQ5%@fsw( zX)z`0roFPiciKNxy}$cU@Hf@)f4Q4XYLp=j4lza8W<8H1Z2w{OP8sc3@QtVw_+mKy zkFYg2i$^cuCP%4_;mVRn*`!EGYpGYINZp8~R5GLxzb*?+ly20{;n;@TkZTjXxwIUWJX0WlZ(@CC_%)f5(T}mYm3x%Eo_}87~>LW z5HK+#!8hKKm>5Y+)I{B#{tevtA9(9W^iD54rv=3(zvkq5pZ7h_c|ZTqzWml|^=|^MG4D9)_o_fjKP~wTkNWW^F+3@%rVA( zd8`tmGO;YN-b<{(^zQO5C)mq5LgYSA9P#}$+c-?&hID8waf#LmOKQ#m_oxff&q8g`c_EkyXEHRx`HOfMX72=I^ZFV`X`=)w zAxfAMp|n%BQ#vR+D4mp@l&+?})*bu+@0O#-p>~6Rm^!E0x@Dk3)hZ%Y*VBe>y6LiE zt0ekHP>|P3Y-}b#DHaLMfgaBy`4j}M!b^jiN8(?yFq&{#$ojVe>9l0jFMry z@b!}zUqM1RqR|FLd-6z6+xyyDE7kbInHd^S#q$V+zzsUObd!$G=r` z3Z=YcJ%fYDu38pKBoMs(DaKDRxwm4t#C6MNq3Rl`q#r+t5u34j0rG87Aj z<@dpX1-@PI*5D2I`;cYY#R?p|8;ymAHeL+1IbML;0>1~On|ybK*?squoREOmuf$+% z+S}@8hhzIY`gT|lnxSd_#6h@sR)~~XePdA->_6SKP4{2hR&~_5Wk^-mrF-1sRb~uB nSLhx!*C}t+HD|{7PluVu(f#wQi##PtiBSZ~uIB2Zm~;LBu-z=W delta 314 zcmaF&C;92;F7M3ln-4mG&T}-Dl=5gpx-+z&bUp~~)(NV|M(LB&a#}mQ? z@&iGvP)D;s=jk7(vWjk-#9GeEoDt}~{m~589>M7kgxJ`Gvz>t295caWu9J?tqhtPb zLl!nkQByadgo`^!*3lXW9Gwll0;V6_#VXocY9)vu(6VRW?p8ATYgclYffrzYF(element, 'form'); + const href = element.getAttribute('href'); + if (form !== null && isTruthy(href)) { + form.setAttribute('action', href); + form.submit(); + } + } +} + +/** + * Initialize bulk form action links. + */ +function initFormActions() { + for (const element of getElements('a.formaction')) { + element.addEventListener('click', handleFormActionClick); + } +} + /** * Get form data from a form element and transform it into a body usable by fetch. * @@ -264,7 +291,13 @@ function initScopeSelector() { } export function initForms() { - for (const func of [initFormElements, initMoveButtons, initSpeedSelector, initScopeSelector]) { + for (const func of [ + initFormElements, + initFormActions, + initMoveButtons, + initSpeedSelector, + initScopeSelector, + ]) { func(); } }