M\á:l‹°;ZfbJôØèÞ®^—X£ß (qª·vÓIÍnÛ³séRÈEÜ]ð>=½ô €“²ñ–ïsHƒR<¿×™¦.¤yÈrHl‚·üêãpÞ´-)QAù€pëægÇv¼T†¶�hnç+4S·ç8G6DêÒâb ÙÇØ8~rtò§Öž%è»åèXõrg¬H;4™„üÕ3Â@œuÛÌ«ˆóS;dEþ w% cdÉN©ƒxËß‚–$ –û|JP¨®ã Lî�Ú|W~(ó Σ^£h>q…¿õí(F•"²Š`È|6^§XŠÖµÔ}™@†/®!…,‚þ—¸ö^2k × ¥¸o›¯ÊmPs=œRìšÀ×,™º„üByê*æBòäôÌü!ñJçü¿ úe�]bXñ©}zåÚÀK{̲_1ë_½bÏ¥wS ­Í2?Œ%Èl†Üã+'ÜmrmmùðßBõ›Ú"ZÌýºç¹â1ïÄÉN¯Æy× �ÊÈÀ%•žµ¤ü 8“’¢˜9{bP€m× ±1qñ¶ìÂŽç¦ n5kºàUB”øl𖘖ù=ªñ»tö=6}ù[‡âY�›¸›ë«8'—ïå^z8e � àáíÝh;Ò‡ ÜYÈöduê�~Tz"÷ë9å#ã-¯oP—ˆS¾Ó--Þͧ³fÂw™ZªCðË–¤uWáê®É–ÄíR£-Vº~dûÏV$`l�ѪP‹Ž"´ ó&¶‘‹>ë)Õâèuò5Ò]½~"ꀔÇ0?€Çiiéfr­âÉ‚¨¯XU¡w;Äìh"¶ÏAš¦ÿÓŠ õVχ¦7À,¤çqq<½'féœË·«·Ø¾É4`§p©Þœþõ¹(«Bÿ™t‡=èä]y‚d.ñLH°v¸Þ€ðÇãsZú)pf�ÞÏK #vxÒ»ÑøÚŸ*®‘Þ|i€ÿ¹Pü0ôC©qˆ7i'”m¤zÔà°”ŸÍð®P¹°ÄäÀØÑ|‚jèäD½SòB&öÙ Š1”ú‘¿®W]ó«ÿ^É4ø…¯;V¯ÛÔ>r¿DÐ~“SE²3AoÑç]Ѳ¬”¾³ oãí­§(«<™:‚ޏ&K>…ëû|½ä…Î íÔ9NÂ2€„Á—G·ç¿qç%AÂÞîTô8G„½é³›_W’� ¤‹7ݵåöº[¥¼°­ÛßÀŽÈíûqWqmQè”�.ø›Eýw€7ˆ�>ðm»¤Oì÷K‹¬KS©ko\h@a5“�>Ô=Jâ¾A«Añ«Ö«•ÿäÙàdölbÇu}{­A+G%‰À|“Ry›��&楼ÈÄ©øß]é!ÌÍε< W´UØzý6´Àqýu­AÎE“'Ó.ž¿£ù§‘e�YÝÙÄ�q)ºÂ{ª]`œøØ ïºÇãW†ä›Ž¶2ô;óù–¾!n·}µª¿÷ëϽY>|ÈÉü5¯Qêw"Jˆzti–`ê²<»[Fq×™;Ã2 ce\Eƒð� 2;uÉVÿÎñwÀ&vrà‹í¯J¸Mä1Xì˜!üæêÆb_íHÊñw;y±�Nˆž~-]Ź—Œ ¡”Mò¯3Ñ‹ƒn„ð1Gd˜¥ÃK‹êÏôšòÏ"9»0©%‰À|“Ry›��&楼ÈÄ©øß]é!ÌÍε< W´U’›çQi“‘@x¥Ä¬ÁEò¯3Ñ‹ƒn„ð1Gd˜¾”)FlèóœkÑ€x¬à‹í¯J¸Mä1Xì˜!üæêÆb_íHÊñw;y±�Nˆž~-]Ź—Œ ¡”M Cê§™OÿóöÍø3ÞS2Û½þ¾rLÈXêG¡.OÌà\Q‘jå‹Û\¿§°Œ·!Õ<±üÏŸ:fy7-ÎN‹Î©�FÝ \}ˆ\ÊXCƒB@�íS°PÝÒ„±ú��?–„‰ûþ‹lk̪Só±™Õûëäq²Õé˜,ß[ª)ïŸÑ þD=˜¿ Ä~‹.Pßw€7ˆ�>ðm»¤Oì÷¥Y˜K|F`ùØ™4¶iY̦ä»ÁZ5~5DëZrºX'™UM±¼1Þ­Tœ3k>ïÒcµÌÖI ï+¿Eò Ÿ”]&LØ{ìš0V˜Šu¹Ô€z»¯^½±.øûvàï¾Ð'ù`òЬãݽsz|ÕÑ@.‡vÀÿѽ»3¤¾V<�ÇÑÍ¥xtªÐÎÏ•Ø7ŸÑ þD=˜¿ Ä~‹.Pßw€7ˆ�>ðm»¤Oì÷Ö.ròK+ôƒ)ݘŃ ÒMæÅháYDä ]KØÉ~ÒWä°'ó^@�÷"¸?BÍ]/¼Û;'¢AÒ¨ {1•ýFf^E2ÿöÑN%‰À|“Ry›��&楼ÈÄ©øß]é!ÌÍε< W´UÃ/ 9•`òÉyÙ·Må“Üû®t/A«Í!SN$_ˆ2¤O²„¾Ð€‚.Ý‹•k>ïÒcµÌÖI ï+¿Eò Ÿ”]&LØ{ìš0V˜Šu¹Ô€z»¯^½±.øûvàï9®ïeE€d’Í ˜åLØ©ñïL±Ua ·šÛ$º¬CÅLðT«yA¬DæúNf¬i �ö¯J^pËoH}OlCÂ&cá|a|/åo)z˳ŒX &7 “Rtqûe‘�çšö«¶iØÉ~ÒWä°'ó^@�÷"}ÙmUô qž|‰ÂôUY�œ$ì].†h•ÀŽ»TæÉŠ·!Õ<±üÏŸ:fy7-ÎN‹Î©�FÝ \}ˆ\ÊXCˆ]­¾î£äóâç‹_ ½¶¬üA~Ÿèv \²ŸÑ þD=˜¿ Ä~‹.Pßw€7ˆ�>ðm»¤Oì÷Hsæï„‰Žî·yü—^¡vTJ¸ƒŽ¹wÃhÒ@5N莩™?°P^H굦s\ ­¹e ó†Põ»¬@ù–¾!n·}µª¿÷ëϽYéêäîÐ+€J›�ôô£‹¨Ý¨žnêþH©S„Ún. —aÇw§�[½ãîðm¡t‰€©n?"'´¹—K§‹W½G²¼Í¸ö¨S-.}h£t3È®Õ|a–12íávA±êu+ìjc²«d4«ðtÅFVšX믘‹·êÚJ@W|çbóWÂHÁõØMUöù¢"™™öñº`å÷5�‹–!å%ô«Œ‰È.,Òèó�/; \ø·[s³>f¡: åZ)WP‘5½éû«h(«$5µod/´àH�’›½—6spϰ1šÏX±{~V-�×óx­ ýM±¿s�¡¿sû(Š� FhN&KÏG›6`#ª¯ƒÐ†G~¹oH@�¼¹nÚŽØÛg¶Š}…~ƒ‰·®²±”—â§Ò‘t{HPRþCmÒtI¢­48=xÚTQb“B͸]NK† ƒ:jq¹EÏ:�Çx:o ú ¥m¸b‘‰?4q ÛeÞ,1󇜈„*£Ã�q=($¼¬½Üb ò_+œ…–ÃŒˆT»ôÁ‡+ =GsT鼜.92¨«ç¢¡MºÚ\—5ŽZ–^ Êy¿]Áö? 8¹!ð¬�7ËwŒG1 3ç¤ñb¥Ü;¯´1¨=µX•IþKÄ`El.•¯çúŠa¼8P‡|« W1¾õ›„ÓÄ ¢ZvÁ·ä@!àçS®=1­G¢•�›²ÅéaY+ªYæ…нšH².[lg‚+³Y¢ÇZ¡P î’v�Iì÷Ø™ÈÍDA´ù)£BæD:aÖA´îD²V¬Í´Èä|Û8ïƒÈôú’_åƒM÷�k ¬Xª‚´t‡-…FžÄeÔ|vì ;ð¸ˆë¬Xç\4eSôæE­#Ää%`ã…`=K5`¡ÓÄåTº¡*ÕŽ•†þÈưqùIHŒ¾×zÛýÁ CˆtSÙ“qB³ W@Èm½�Qå>nò?+D­CfÝKÅŸbò�$õޤ|£ J•Y|7%î±ÿ¬§‰Ÿ ?L¬7œ}Òò¨føîàûúJ§ymm3“BçŸcÿ5Ô{•)Üô|A•5FÁÿ¡º»5t ¼¹æE ocþk&ê©x[ª³Ý}uÉ+­ˆ\¢g åëÕž‘(ÀµiŽ1‘‹~¹ÔÙuhñþ༱xv –8ïƒÈôú’_åƒM÷�kŒ;�8¡¾„`Oüè ¥Z9€ÂŽÈ »ÿüÖ4tü¬e–y�¥™ØJ�&È�5¼,û€ ®ß�ŒO[¨ó©‹�+¤%ƒ’MYÍC£þâE/J·=í´‹Eõ¿‰xŸ+ˆtSÙ“qB³ W@Èm½�#ä�`s¡>üpU–q°®U|°r·Pš]±ô‘z)³~/{”ã÷häí…Û»h5Õa}qºüÉÁ»Ø¶ÐJ«êz‹N‹îIšô¬7üÔ†A¨YeR¨Œ„÷·óænzKëL1PIñT’èe/œ"Ô!Uø¿ÂDÚ`ü@Ä)ŸÆ•*ÄJ$^ÆcC!—)Ù¬¥—(ˆc°o{ÀoQçr^€�¥Bõ‡UYñ‚VM¸wBµ(}¢d"¬Ï^΂h-øPEf�P¹!ÈÓÛÆ;-.¤˜Úár €i›Îµ1s;JHµËö9 µi°º Q}”pÙ±7æíK{˜ñ]Æa9F6ÝýDh:´_*ÊÖX9Y»vpŠNA²•J(Ã*}‡øNÀ›}mÿ6•¾ïÄ@.�‡sF�>¸šZòkF�ìÕŠK…)§Ì— Ü ŸL&¥$’w䨇˜�ÜèÃJÏ�Yh™¶ø˜çN[D4F9¤„S¢[—¸oWÞè§|ä*.³ß.3«zJ»ª9®wuU”«hªFµ@¶²76€³ƒk‹ÿi¢j©È…Û&öjm°ÙËûŽ*J·-¦R5\„³»0Ê4íT/n1¾­y…AÆùm«Ä™ãžž:ýAqáÕ#•†ƒàÛ­÷í} y¤ì§‘Z&é݇ôÈf=lâÔl:&‡vëói�¾’ýf”ª=«ó–öîiB§™Ð àÍ#º7ìì�Á\¢€„°ÚâUoFñSsàÈëºB&µý*’oPtn™¿ÿÅ*)yó:zÒöÕèŽ ò&—¶ÒØõ1PIñT’èe/œ"Ô!U@Y�Ø"½áTòLήVY¼$ÿ‘®n«ÈMN£æùÀ‡Š¡ÐMËÕ¸ùêÁ¾Ž°HMf½Á|ê*šôð’ ÄÊ0˜S²‹¶�ü\:¯õ®üP§ît£Eƒ]… Õ&0ã…ìàL ½Å6¯oÔÅ>›g“‡{@’±_òñÇå¾Hr zdª§O?n»‘U!@n�šÐ'AÆœ/Èš:Ÿò�Õ(0:ЦcÈåò@kàss="php-comment"> */ 12: 13: namespace DataTables\Editor; 14: if (!defined('DATATABLES')) exit(); 15: 16: use DataTables; 17: 18: /** 19: * Common validation options that can be specified for all validation methods. 20: */ 21: class ValidateOptions extends DataTables\Ext { 22: private $_empty = true; 23: private $_message = 'Input not valid'; 24: private $_optional = true; 25: 26: function __construct( $opts=null ) 27: { 28: if ( $opts ) { 29: if ( isset( $opts['empty'] ) ) { 30: $this->allowEmpty( $opts['empty'] ); 31: } 32: if ( isset( $opts['message'] ) ) { 33: $this->message( $opts['message'] ); 34: } 35: if ( isset( $opts['optional'] ) ) { 36: $this->optional( $opts['optional'] ); 37: } 38: } 39: 40: return $this; 41: } 42: 43: /** 44: * Get / set the error message to use if validation fails 45: * @param string $msg Error message to use. If not given, the currently 46: * set message will be returned. 47: * @return ValidateOptions|string Self if setting, message if getting. 48: */ 49: public function message ( $msg=null ) { 50: if ( $msg === null ) { 51: return $this->_message; 52: } 53: 54: $this->_message = $msg; 55: return $this; 56: } 57: 58: /** 59: * Get / set the field empty option 60: * @param boolean $empty `false` if the field is not allowed to be 61: * empty. `true` if it can be. 62: * @return ValidateOptions|boolean Self if setting, current value if getting. 63: */ 64: public function allowEmpty ( $empty=null ) { 65: if ( $empty === null ) { 66: return $this->_empty; 67: } 68: 69: $this->_empty = $empty; 70: return $this; 71: } 72: 73: /** 74: * Get / set the field optional option 75: * @param boolean $optional `false` if the field does not need to be 76: * submitted. `true` if it must be. 77: * @return ValidateOptions|boolean Self if setting, current value if getting. 78: */ 79: public function optional ( $optional=null ) { 80: if ( $optional === null ) { 81: return $this->_optional; 82: } 83: 84: $this->_optional = $optional; 85: return $this; 86: } 87: 88: 89: /** 90: * @internal 91: */ 92: static public function select ( $user ) { 93: if ( $user ) { 94: return $user; 95: } 96: 97: return new ValidateOptions(); 98: } 99: }