ãbaserCMS4ãã¡ãŒã«ãã©ãŒã ã®submitã®æå¹/ç¡å¹å¶åŸ¡
ãååããååããã©ãŒã ã®ãã¿ã³ã©ãã«å€æŽã«å¯Ÿå¿ããã®ã§ããããå人æ å ±ä¿è·æ¹éãã¹ã¯ããŒã«ããŠæåŸãŸã§èªããŸã§ç¢ºèªãã¿ã³ãæŒããªãããã«ä¿®æ£ããŠã»ããããšåä¿®æ£æç€ºãåããŸãããã¹ã¯ããŒã«éã«ãã£ãŠ submit ãã¿ã³ã®æå¹ïŒç¡å¹ã®åãæ¿ããããã®ã¯ãJavaScript ã® function 远å ã§å¯Ÿå¿ã§ãããã ã£ãã®ã§ãããã¡ãã£ãšæããã£ãã®ã§ã«ã¹ã¿ãã€ãºæé ãå ±æããŸãã
submit ãã¿ã³ã®åæç¶æ ãç¡å¹èšå®ã«ãèªãã§ã»ããæç« ãã¹ã¯ããŒã«ããã§è¿œå ããŠãã¹ã¯ããŒã«éã察象æç« ã®æåŸã®è¡ã衚瀺ããé«ãã«éããããæå¹ã«åæãããšããæé ãèããŸãããïŒä»åã¯ã察象æç« ã®é«ãã®92%ã§æçµè¡ã衚瀺ãããŸããïŒ
ïŒïŒsubmit ãã¿ã³ã®åæç¶æ ãç¡å¹èšå®ã«ãã
ããããŒãã®Elements/mail_form.php ãç·šéããŠããã¿ã³ã®å±æ§ã« âdisabledâ ã远å ããŸãã
ïŒïŒè¿œå ããæç« ã®ã¹ã¯ããŒã«ã€ãã³ãã远å ãã
mail_form.php ã® submit ãã¿ã³ã®ã¯ãªãã¯ã€ãã³ã function ã®åŸãã«ã察象æç« ã®ã¹ã¯ããŒã«ã€ãã³ã function ãèšè¿°ããŸãã
ïŒïŒåäœç¢ºèªïŒïŒïŒ
ããååããã©ãŒã ã衚瀺ããŠã¿ããšãããsubmit ãã¿ã³ã¯ã¹ã¯ããŒã«ã«é¢ä¿ãªãæå¹ã§ãããconsole.debug()ã§ã€ãã³ãåŠçç¶æ³ã確èªãããšãã¹ã¯ããŒã«ã€ãã³ã function ã¯å®è¡ãããŠããŠããã¿ã³ã®ç¶æ 㯠disabled ãã enabled ã«å€æŽãããŠããŸããã§ãããã¿ã³ã¯åžžã«æå¹ã§æŒããã®ã§ãã
äœãåå ãªã®ãããããããŠãŒã¶ãŒãã©ãŒã©ã ãæ€çŽ¢ãããšããããååããã©ãŒã ã® submit ãã¿ã³ãç¡å¹ã§æŒããªããšãã以äžã®è³ªåãç®ã«çãŸããŸããã
ãm-singleãã¡ãŒã«ãã©ãŒã ã®ãå ¥åå 容ã確èªããããdisabledã«ãªã£ãŠããŸã
ãã®è³ªåã«å¯Ÿããåçã®äžã«ã/lib/Baser/Plugin/Mail/View/Elements/mail_token.phpã«ãããã¿ã³ãå¶åŸ¡ãããŠããããšããèšè¿°ãçºèŠããŠãmail_token.php ã®ã«ã¹ã¿ãã€ãºã§è§£æ±ºã§ããã®ã§ã¯ãªããïŒãšä»®èª¬ãç«ãŠãŸããã
ïŒïŒmail_token.php ã®ç¢ºèª
/lib/Baser/Plugin/Mail/View/Elements/mail_token.php ãããŠã³ããŒãããŠãããŒãã®ãšã¬ã¡ã³ãã«è¿œå ããŠããã®ãšã¬ã¡ã³ãã䜿çšãããããšã確èªããããã«console.debug()ã远å ããŸããã
ã³ã³ãœãŒã«ã«ãvalid token ãšè¡šç€ºãããããšã確èªã§ããã®ã§ããã®ãšã¬ã¡ã³ãã䜿çšãããããšã確èªã§ããŸããã詊ãã«submit ã®æå¹åïŒremoveAttr(âdisabledâ)ïŒãã³ã¡ã³ãã¢ãŠããããšãããsubmitããã¿ã³ãç¡å¹ã«ãªã£ãã®ã§ãããã§ãã¿ã³ãæå¹ã«ããŠããããšãããããŸããã
ãã®ãŸãŸã§ã¯ãæ»ããã¿ã³å¯Ÿå¿ãç¡å¹åãããŠãããããæ£ãããªãç¶æ ã§ããããã§ãã¡ãŒã«ãã©ãŒã ã«é ããã£ãŒã«ãã远å ããŠãTokenååŸæžã§ããããšãä¿æããŠãã¡ãŒã«ãã©ãŒã æ¬äœã§ã¹ã¯ããŒã«éã®å€å®ãšäœµããŠæ¡ä»¶ãšããŠäœ¿çšããããšã«ããŸããã
ïŒïŒé ããã£ãŒã«ãã®è¿œå
ãé ããã£ãŒã«ãã®åæå€ãfalseãšããŠç»é²ããŸãã
ïŒïŒmail_token.php ã«é ããã£ãŒã«ããžã®å€èšå®ã远å
ãé ããã£ãŒã«ãã®IDã¯ãç»é²ãããã£ãŒã«ãå âSetMailTokenâ ã®å é ã« âRowMessageâ ãä»å ãã âRowMessageSetMailTokenâ ã§ãããããæå¹ã«ããŸãã
ïŒïŒmail_form.php ã®ã¹ã¯ããŒã«ã€ãã³ã function ã«ãé ããã£ãŒã«ãã®æ¡ä»¶è¿œå
ããã ãã§ããã¿ã³ã¯ç¡å¹ã«ãªãã®ã§ãããèŠãç®ãæå¹æãšå€ãããªãã®ã§ãç¡å¹ç¶æ ã®ã¹ã¿ã€ã«ã mail_form.php ã«è¿œå ããŸãã
ïŒïŒåäœç¢ºèªïŒïŒïŒ
å¯Ÿè±¡ã®æç« ã®ã¹ã¯ããŒã«åã¯ãsubmit ãã¿ã³ãç¡å¹è¡šç€ºãããŠããŸãã
æåŸãŸã§ã¹ã¯ããŒã«ãããšãsubmit ãã¿ã³ãæå¹ã«ãªããŸããããã£ããŒïŒ(â©ÂŽâïœ)â©
ãŸãšã
ãååããã©ãŒã ã®ãã¿ã³å¶åŸ¡ã«ã¹ã¿ãã€ãºæé ã¯ã以äžã®ãšããã§ãã
elements/mail_form.php ã®ä¿®æ£ (1) submit ã®åæç¶æ ã«disabled=disabledã远å (2) å人æ å ±ã®ä¿è·æ¹éãdiv id "privacy",style overfllow=scrollã§è¿œå (3) å人æ å ±ã®ä¿è·æ¹éã®ã¹ã¯ããŒã«ã€ãã³ãfunction远å ããã¹ã¯ããŒã«éãå éšããã¹ãã®é«ãã®92%以äžã«ãªã£ãããsubmitã®prop disabled,falseã« (4) submit ã®disabled æã®ã¹ã¿ã€ã«è¿œå
 /lib/Baser/Plugin/Mail/View/Elements/mail_token.phpããããŒãã®elementsã«ã³ããŒ
ãååããã©ãŒã ã«é ãé ç®(åæå€false)远å
elements/mail.token.phpã®ä¿®æ£ submitã®removeAttrãã$('RowMessage[ãã£ãŒã«ãå]').val(true);ã«å€æŽ
elements/mail_form.php ã®åä¿®æ£ ã¹ã¯ããŒã«ã€ãã³ãã®functionã®ãã¹ã¯ããŒã«éãããã¹ãã®é«ãã®92%以äžãã€$('RowMessage[ãã£ãŒã«ãå]').val()==trueãªãsubmitãæå¹ã«ããã以å€ã¯submitç¡å¹ã«ä¿®æ£
詊è¡é¯èª€ããŠç®çãéæã§ããã®ã§ããšãŠãææçŸ©ãªå¹Žæ«å¹Žå§ã®é£äŒã«ãªããŸãããããããã
baserCMS ã®ãååããã©ãŒã ã®ã«ã¹ã¿ãã€ãºã¯ããŸãåºçªããªããããããŸããããã©ãªããã®ã圹ã«ç«ãŠããããããã§ãããŸãäœããã¿ãã§ãããæžããããšæããŸããã§ã¯ã


















