%^h "ҚR藳3`| LoLں[z=*ށn¯%[I,$Ƕn~>qڰlrYo3_H\JUG%k{EmQqdžSPD]7)YAtu) )B犗&S`jڦV-_i`=/9 nJq>&C IߏABqΛ-r#b?A9@GnX4)l~-};Bڭ/3zcՏj ڗUo2 8ۙ5"8жľ@I]6J U8VNp ́&7RHWkkVE0gE8Gx&.h$jzfqy@F1I/Fx2nҵ ޘzft]^sAl5F].Z00/  E`kbz~dhG=$ثXfz!*v={e5t~a}p\L#N>Fh7j!Ȫ(U N TW،ǹNG_Lӆ` [)wqZU>(?MKw*BIP}'[>7.w pX2=2/}cqJ"-)'%jA^2IZRn?[&tElz K~ M9H$Q>WEcꗧu?3?u[!ȝ Zx\:USd[}"TmӀg5̺U5lGr@\̄0&gv F:˦r+$IssИ"=`"jhP%oaGxފhۖQPI#tL~MYWDז'C.ɝ y㊋W-?Lup:p[(4Dr35P{b#;PڏY0#ږ&'f)p_ "h;3U౞!LCOsaV:*3(NOrv|O/ 7' ޖlmBiB=a-tD/$샋W[8m_!~(M׵,婦sR.ֵY([2W!TAdEuw|-. X @^FȞ5ĂatCl7Dbfn: !Ec 1$a}eѯ`/z!Et:![f ͈G:;7H!]uW9|s*"J}xT #C+~^nxAq!Qs:Fٴ@f.UMkȨhz%1јz\ЫOk,D=e^w7]2E iy+v")" (m(:*3(NOrBJEE`{鮜{YS CP)c#lSRf,P'(e%b`qw(Hts E_ [HbĠ+g"+Sxp:g+yn2ܯC#nxf|PQ+էO[8+v>JطsURD1xg`ph6NܮY'pq;j(hYh453obJ(0X9V)[<e}'fYQRZN?S`լ3XbVA_!ֹ|P2aּuI(taW 9۰i 89,#%lNc*a['k1N0 =~x@SĪ@)9YdTߊ}c)޲d1|_V@Jǟ/?XT-G5]2A*"T>4XRvSZEWr"&4,: yYPc`3%n/@RbȊy|/woVPޗQ*D4Ɛ2F}pxkvgLtJ?fS0̝M]lU5% .y`Qvtp6igݲN#Ϊpl{n,CoÍ#e~6%7NT MGp@q0K[wgFN5K]OHrmچFu<8DTf h prW\^IN;ۈ1c(#X\{|HQVpBOcaIM )Xt@:og+/_ NC]P/u50'cuw{ϐ͓D'TaF|M CNzSc `h;ݯL-zFlpL:++oOFJ(#{ǃJkϧGrҼ %ܰC>Iz8hf.UMkȨB\G099% UCW yYPc`3G;8f1J™sS=VڀɚpŠN.Aoџ; ƼVSrCg(3+iF +x̎vAECMVȶt"jZ[j8j_U>ZwU!>S"`Yï羳H djB .j1v0=% ?+mPd2E&`?K|;e2+&+-# ~{bDTdwgFN5K]Of5G(~'y̢' WVZBʖ7%4GsCHu_ۈ1c(#X\{|HQӾޯ%MїX/19hAjpqH\-j!uJ ]9{f;lvG (TA\/E>fKUjOנ!\,?vX fDmjͲ5y:U [O|&W+C3,=) L_ []Ig{膮AZtAvp/9FVg C3,x0lȵhjfu4N_fTudJRY|^>>  nĒN<1FZ =sXe+~Y6>ޯ%z|-vwֺCaVshB)-GnN>k0FFI@-dఐ#5x_=XO߸C5I04ABd.>]"orE.̺o݋/]fB %P$-+We:`swgFN5K]OeKtR[L-y8x>sa_preference_field}` = ? AND `{$this->sa_value_field}` = ?", $this->sa_user, $welcomelist_pref_name, $email ); // check address is not already blocklisted $sql_result = $db->query( "SELECT `value` FROM `{$this->sa_table}` WHERE `{$this->sa_username_field}` = ? " . "AND `{$this->sa_preference_field}` = ? AND `{$this->sa_value_field}` = ?", $this->sa_user, $blocklist_pref_name, $email ); if (!$db->fetch_array($sql_result)) { $db->query( "INSERT INTO `{$this->sa_table}` (`{$this->sa_username_field}`, `{$this->sa_preference_field}`, `{$this->sa_value_field}`)" . " VALUES (?, ?, ?)", $this->sa_user, $blocklist_pref_name, $email ); if ($debug) { rcube::write_log('markasjunk', $this->sa_user . ' blocklist ' . $email); } } } else { // delete any blocklisting for this address $db->query( "DELETE FROM `{$this->sa_table}` WHERE `{$this->sa_username_field}` = ? AND " . "`{$this->sa_preference_field}` = ? AND `{$this->sa_value_field}` = ?", $this->sa_user, $blocklist_pref_name, $email ); // check address is not already welcomelisted $sql_result = $db->query( "SELECT `value` FROM `{$this->sa_table}` WHERE `{$this->sa_username_field}` = ? " . "AND `{$this->sa_preference_field}` = ? AND `{$this->sa_value_field}` = ?", $this->sa_user, $welcomelist_pref_name, $email ); if (!$db->fetch_array($sql_result)) { $db->query( "INSERT INTO `{$this->sa_table}` (`{$this->sa_username_field}`, `{$this->sa_preference_field}`, `{$this->sa_value_field}`)" . " VALUES (?, ?, ?)", $this->sa_user, $welcomelist_pref_name, $email); if ($debug) { rcube::write_log('markasjunk', $this->sa_user . ' welcomelist ' . $email); } } } } } }