HomeHelpTrac

Changeset 14546


Ignore:
Timestamp:
10/22/10 02:14:12 (19 months ago)
Author:
Alexander Trofimov
Message:

Ticket #2250

Location:
trunk
Files:
4 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/administration/antispam.php

    r14544 r14546  
    2727$oBxDolDNSBlacklists = bx_instance('BxDolDNSBlacklists'); 
    2828 
     29 
    2930class BxDolAdmFormDnsblAdd extends BxTemplFormView { 
    3031 
    31     function BxDolAdmFormDnsblAdd () { 
     32    function BxDolAdmFormDnsblAdd ($aChains, $sDefaultMode) { 
    3233 
    3334        $aCustomForm = array( 
     
    3637            'id' => 'sys-adm-dnsbl-add', 
    3738            'name' => 'sys-adm-dnsbl-add', 
    38             'action' => BX_DOL_URL_ADMIN . 'antispam.php?action=dnsbl_add', 
     39            'action' => BX_DOL_URL_ADMIN . 'antispam.php?action=dnsbl_add&mode='.$sDefaultMode, 
    3940            'method' => 'post', 
    4041            ),       
     
    5455                    'name' => 'chain', 
    5556                    'caption' => _t('_sys_adm_fld_dnsbl_chain'), 
    56                     'values' => array ('spammers' => 'spammers', 'whitelist' => 'whitelist'), 
     57                    'values' => $aChains, 
    5758                    'value' => '', 
    5859                    'required' => true, 
     
    155156        case 'dnsbl_help': 
    156157            $sPopupTitle = _t('_sys_adm_btn_dnsbl_help'); 
    157             $sPopupContent = $GLOBALS['oAdmTemplate']->parseHtmlByName('dnsbl_help.html', array()); 
     158            $sPopupContent = $GLOBALS['oAdmTemplate']->parseHtmlByName('dnsbl_help.html', array('text' => _t('_sys_adm_btn_dnsbl_help_text'))); 
     159            break; 
     160        case 'dnsbluri_help': 
     161            $sPopupTitle = _t('_sys_adm_btn_dnsbl_help'); 
     162            $sPopupContent = $GLOBALS['oAdmTemplate']->parseHtmlByName('dnsbl_help.html', array('text' => _t('_sys_adm_btn_dnsbluri_help_text'))); 
    158163            break; 
    159164        case 'dnsbl_add': 
    160165            $sPopupTitle = _t('_sys_adm_btn_dnsbl_add'); 
    161             $oForm = new BxDolAdmFormDnsblAdd(); 
     166            $oForm = new BxDolAdmFormDnsblAdd(array ('spammers' => 'spammers', 'whitelist' => 'whitelist'), 'dnsbl'); 
     167            $sPopupContent = $oForm->getCode(); 
     168            break; 
     169        case 'dnsbluri_add': 
     170            $sPopupTitle = _t('_sys_adm_btn_dnsbl_add'); 
     171            $oForm = new BxDolAdmFormDnsblAdd(array ('uridns' => 'uridns'), 'dnsbluri'); 
    162172            $sPopupContent = $oForm->getCode(); 
    163173            break; 
     
    210220        'url' => BX_DOL_URL_ADMIN . 'antispam.php?mode=dnsbl', 
    211221        'func' => 'PageCodeDNSBL', 
     222        'func_params' => array(array(BX_DOL_DNSBL_CHAIN_SPAMMERS, BX_DOL_DNSBL_CHAIN_WHITELIST), 'dnsbl'), 
    212223    ), 
    213     'uridnsbl' => array ( 
     224    'dnsbluri' => array ( 
    214225        'title' => _t('_sys_adm_page_cpt_uridnsbl'), 
    215         'url' => BX_DOL_URL_ADMIN . 'antispam.php?mode=uridnsbl', 
    216         'func' => 'PageCodeURIDNSBL', 
     226        'url' => BX_DOL_URL_ADMIN . 'antispam.php?mode=dnsbluri', 
     227        'func' => 'PageCodeDNSBL', 
     228        'func_params' => array(array(BX_DOL_DNSBL_CHAIN_URIDNS), 'dnsbluri'), 
    217229    ), 
    218230    'akismet' => array ( 
     
    222234    ), 
    223235); 
     236 
    224237 
    225238if (!isset($_GET['mode']) || !isset($aPages[$_GET['mode']])) 
     
    241254 
    242255$sPageTitle = $aPages[$sMode]['title']; 
    243 $sFunc = $aPages[$sMode]['func']; 
    244 $_page_cont[$iNameIndex]['page_main_code'] = $sFunc(); 
     256$_page_cont[$iNameIndex]['page_main_code'] = call_user_func($aPages[$sMode]['func'], $aPages[$sMode]['func_params'][0], $aPages[$sMode]['func_params'][1]); 
    245257 
    246258$_page = array( 
     
    257269 
    258270 
    259 function PageCodeDNSBL() { 
     271function PageCodeDNSBL($aChains, $sMode) { 
    260272 
    261273    $sControls = BxTemplSearchResult::showAdminActionsPanel('adm-dnsbl-form', array( 
     
    265277    ), 'rules'); 
    266278     
    267     $aRules = $GLOBALS['MySQL']->getAll("SELECT * FROM `sys_dnsbl_rules` ORDER BY `chain`, `added`"); 
     279    $sChains = "'" . implode("','", $aChains) . "'"; 
     280 
     281    $aRules = $GLOBALS['MySQL']->getAll("SELECT * FROM `sys_dnsbl_rules` WHERE `chain` IN($sChains) ORDER BY `chain`, `added` "); 
    268282    foreach ($aRules as $k => $r) { 
    269283        $aRules[$k]['comment'] = bx_html_attribute ($r['comment']); 
     
    275289        'admin_url' => BX_DOL_URL_ADMIN, 
    276290        'global_message' => $GLOBALS['sGlMsg'], 
     291        'mode' => $sMode, 
    277292    )); 
    278293     
     
    280295} 
    281296 
    282 function PageCodeURIDNSBL() { 
    283     $s = '<div>TODO: 2<br />123</div>'; 
     297function PageCodeAkismet() { 
     298    $s = 'TODO:'; 
    284299    return DesignBoxContent ($GLOBALS['sPageTitle'], $s, 1, $GLOBALS['sActions']); 
    285300} 
    286301 
    287 function PageCodeAkismet() { 
    288     $s = 'TODO: 1'; 
    289     return DesignBoxContent ($GLOBALS['sPageTitle'], $s, 1, $GLOBALS['sActions']); 
    290 } 
    291  
    292302 
    293303?> 
  • trunk/administration/templates/base/dnsbl_help.html

    r14544 r14546  
    11<div class="bx_sys_default_padding" style="width:400px;"> 
    2     <bx_text:_sys_adm_btn_dnsbl_help_text /> 
     2    __text__ 
    33</div> 
  • trunk/administration/templates/base/manage_dnsbl.html

    r14544 r14546  
    22<div class="top_settings_block"> 
    33    <div style="padding:5px 9px 0 9px; text-align:right;"> 
    4         <a href="javascript:void(0);" onclick="showPopupAnyHtml ('__admin_url__antispam.php?popup=dnsbl_help');"><bx_text:_sys_adm_btn_dnsbl_help /></a> 
     4        <a href="javascript:void(0);" onclick="showPopupAnyHtml ('__admin_url__antispam.php?popup=__mode___help');"><bx_text:_sys_adm_btn_dnsbl_help /></a> 
    55        | 
    66        <a href="__admin_url__advanced_settings.php"><bx_text:_sys_adm_btn_dnsbl_settings /></a> 
    77        | 
    8         <a href="javascript:void(0);" onclick="showPopupAnyHtml ('__admin_url__antispam.php?popup=dnsbl_add');"><bx_text:_sys_adm_btn_dnsbl_add /></a> 
     8        <a href="javascript:void(0);" onclick="showPopupAnyHtml ('__admin_url__antispam.php?popup=__mode___add');"><bx_text:_sys_adm_btn_dnsbl_add /></a> 
    99    </div> 
    1010</div> 
     
    1212__global_message__ 
    1313</div> 
    14 <form id="adm-dnsbl-form" name="adm-dnsbl-form" action="__admin_url__antispam.php?mode=dnsbl" method="post"> 
     14<form id="adm-dnsbl-form" name="adm-dnsbl-form" action="__admin_url__antispam.php?mode=__mode__" method="post"> 
    1515    <table style="width:100%;"> 
    1616        <bx_repeat:items> 
  • trunk/inc/utils.inc.php

    r14544 r14546  
    562562        return $val; 
    563563 
     564    if ('on' == getParam('sys_uridnsbl_enable')) { 
     565        $oBxDolDNSURIBlacklists = bx_instance('BxDolDNSURIBlacklists'); 
     566        if ($oBxDolDNSURIBlacklists->isSpam($val)) { 
     567            echo sprintf(_t("_sys_spam_detected"), BX_DOL_URL_ROOT . 'contact.php'); 
     568            exit; 
     569        } 
     570    } 
     571 
    564572    // HTML Purifier plugin     
    565573    global $oHtmlPurifier; 
  • trunk/install/langs/lang-en.php

    r14544 r14546  
    26962696<a href="http://stats.dnsbl.com/">http://stats.dnsbl.com/</a><br /> 
    26972697<a href="http://www.moensted.dk/spam/">http://www.moensted.dk/spam/</a>', 
     2698    '_sys_adm_btn_dnsbluri_help_text' => 'A URI DNSBL is a DNSBL that lists the domain names and IP addresses which are found in the "clickable" links contained in the body of spams, but generally not found inside legitimate messages. 
     2699This antispam method scan submitted content for the urls and check them if any of them is a link to spam site. If such url detected in the text then content is not submitted.  
     2700<br /><br /> 
     2701More info about URI DNSBL: <br /> 
     2702<a href="http://www.surbl.org/">http://www.surbl.org/</a> <br /> 
     2703<a href="http://dnsbl.invaluement.com/ivmuri/">http://dnsbl.invaluement.com/ivmuri/</a>', 
    26982704    '_sys_adm_form_err_required_field' => 'This is required field', 
    26992705    '_sys_adm_fld_dnsbl_chain' => 'Chain', 
    27002706    '_sys_adm_fld_dnsbl_zonedomain' => 'Domain zone', 
    2701     '_sys_adm_fld_dnsbl_postvresp' => 'Return value', 
     2707    '_sys_adm_fld_dnsbl_postvresp' => 'Return value ("any" - any result)', 
    27022708    '_sys_adm_fld_dnsbl_url' => 'URL', 
    27032709    '_sys_adm_fld_dnsbl_recheck' => 'Recheck URL', 
     
    27052711    '_sys_adm_fld_dnsbl_active' => 'Active', 
    27062712    '_sys_sucess_result' => 'Data has been succesfully submited.', 
    2707     '' => '', 
     2713    '_sys_spam_detected' => 'Sorry, it looks like you are trying to submit spam, if you believe that it is not spam please submit false positive report here: %s', 
    27082714    '' => '', 
    27092715    '' => '', 
  • trunk/install/sql/v70.sql

    r14544 r14546  
    66 
    77SET NAMES 'utf8'; 
    8 DROP TABLE IF EXISTS `sys_account_custom_stat_elements`, `sys_admin_ban_list`, `sys_admin_dashboard`, `sys_menu_admin`, `sys_menu_admin_top`, `sys_menu_bottom`, `sys_albums`, `sys_albums_objects`,`sys_banners`, `sys_banners_clicks`, `sys_banners_shows`, `sys_block_list`, `sys_categories`, `sys_objects_categories`, `sys_objects_cmts`, `sys_cmts_profile`, `sys_cmts_track`, `sys_color_base`, `sys_countries`, `sys_email_templates`, `sys_menu_member`, `sys_friend_list`, `sys_options`, `sys_options_cats`, `sys_fave_list`, `sys_ip_list`, `sys_ip_members_visits`, `sys_localization_categories`, `sys_localization_keys`, `sys_localization_languages`, `sys_localization_string_params`, `sys_localization_strings`, `sys_acl_actions`, `sys_acl_actions_track`, `sys_acl_matrix`, `sys_acl_level_prices`, `sys_acl_levels`, `sys_messages`, `sys_page_compose`, `sys_page_compose_pages`, `sys_page_compose_privacy`, `sys_sessions`, `sys_stat_member`, `sys_pre_values`, `sys_profile_fields`, `sys_acl_levels_members`, `Profiles`, `sys_profile_views_track`, `sys_profiles_match`, `sys_profile_rating`, `sys_profile_voting_track`, `RayBoardCurrentUsers`, `RayBoardBoards`, `RayBoardUsers`, `RayChatCurrentUsers`, `RayChatMessages`, `RayChatProfiles`, `RayChatRooms`, `RayChatRoomsUsers`, `RayChatMembershipsSettings`, `RayChatMemberships`, `RayImContacts`, `RayImMessages`, `RayImPendings`, `RayImProfiles`, `RayMp3Files`, `RayMp3Tokens`, `RayShoutboxMessages`, `RayVideoFiles`, `RayVideoTokens`, `RayVideo_commentsFiles`, `RayVideo_commentsTokens`, `sys_objects_search`, `sys_shared_sites`, `sys_stat_site`, `sys_alerts`, `sys_alerts_handlers`, `sys_injections`, `sys_injections_admin`, `sys_modules`, `sys_modules_file_tracks`, `sys_permalinks`, `sys_privacy_actions`, `sys_privacy_defaults`, `sys_privacy_groups`, `sys_privacy_members`, `sys_tags`, `sys_objects_tag`, `sys_menu_top`, `sys_transactions`, `sys_objects_actions`, `sys_objects_auths`, `sys_greetings`, `sys_zip_codes`, `sys_objects_vote`, `sys_objects_views`, `sys_box_download`, `sys_cron_jobs`, `sys_sbs_users`, `sys_sbs_entries`, `sys_sbs_types`, `sys_sbs_queue`, `sys_sbs_messages`, `sys_profiles_match_mails`; 
     8DROP TABLE IF EXISTS `sys_account_custom_stat_elements`, `sys_admin_ban_list`, `sys_admin_dashboard`, `sys_menu_admin`, `sys_menu_admin_top`, `sys_menu_bottom`, `sys_albums`, `sys_albums_objects`,`sys_banners`, `sys_banners_clicks`, `sys_banners_shows`, `sys_block_list`, `sys_categories`, `sys_objects_categories`, `sys_objects_cmts`, `sys_cmts_profile`, `sys_cmts_track`, `sys_color_base`, `sys_countries`, `sys_email_templates`, `sys_menu_member`, `sys_friend_list`, `sys_options`, `sys_options_cats`, `sys_fave_list`, `sys_ip_list`, `sys_ip_members_visits`, `sys_localization_categories`, `sys_localization_keys`, `sys_localization_languages`, `sys_localization_string_params`, `sys_localization_strings`, `sys_acl_actions`, `sys_acl_actions_track`, `sys_acl_matrix`, `sys_acl_level_prices`, `sys_acl_levels`, `sys_messages`, `sys_page_compose`, `sys_page_compose_pages`, `sys_page_compose_privacy`, `sys_sessions`, `sys_stat_member`, `sys_pre_values`, `sys_profile_fields`, `sys_acl_levels_members`, `Profiles`, `sys_profile_views_track`, `sys_profiles_match`, `sys_profile_rating`, `sys_profile_voting_track`, `RayBoardCurrentUsers`, `RayBoardBoards`, `RayBoardUsers`, `RayChatCurrentUsers`, `RayChatMessages`, `RayChatProfiles`, `RayChatRooms`, `RayChatRoomsUsers`, `RayChatMembershipsSettings`, `RayChatMemberships`, `RayImContacts`, `RayImMessages`, `RayImPendings`, `RayImProfiles`, `RayMp3Files`, `RayMp3Tokens`, `RayShoutboxMessages`, `RayVideoFiles`, `RayVideoTokens`, `RayVideo_commentsFiles`, `RayVideo_commentsTokens`, `sys_objects_search`, `sys_shared_sites`, `sys_stat_site`, `sys_alerts`, `sys_alerts_handlers`, `sys_injections`, `sys_injections_admin`, `sys_modules`, `sys_modules_file_tracks`, `sys_permalinks`, `sys_privacy_actions`, `sys_privacy_defaults`, `sys_privacy_groups`, `sys_privacy_members`, `sys_tags`, `sys_objects_tag`, `sys_menu_top`, `sys_transactions`, `sys_objects_actions`, `sys_objects_auths`, `sys_greetings`, `sys_zip_codes`, `sys_objects_vote`, `sys_objects_views`, `sys_box_download`, `sys_cron_jobs`, `sys_sbs_users`, `sys_sbs_entries`, `sys_sbs_types`, `sys_sbs_queue`, `sys_sbs_messages`, `sys_profiles_match_mails`, `sys_dnsbl_rules`, `sys_dnsbl_block_log`, `sys_dnsbluri_zones`; 
    99ALTER DATABASE DEFAULT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci'; 
    1010 
     
    35763576CREATE TABLE IF NOT EXISTS `sys_dnsbl_rules` ( 
    35773577  `id` int(11) NOT NULL AUTO_INCREMENT, 
    3578   `chain` enum('spammers','whitelist') NOT NULL, 
     3578  `chain` enum('spammers','whitelist','uridns') NOT NULL, 
    35793579  `zonedomain` varchar(255) NOT NULL, 
    35803580  `postvresp` varchar(32) NOT NULL, 
     
    35923592(7, 'spammers', 'zomgbl.spameatingmonkey.net.', 'any', 'http://spameatingmonkey.com/index.html', '', 'This zone is guaranteed to block 100% of all IPs because it lists everything (0.0.0.0/0). This list should never be used in production but exists to verify overall functionality of the blacklist servers.', 1287642420, 0), 
    35933593(4, 'spammers', 'cn.countries.nerd.dk.', '127.0.0.2', 'http://countries.nerd.dk/', '', 'Country based zone, any ip from China is blocked', 1287642420, 0); 
    3594  
     3594(5, 'uridns', 'multi.surbl.org.', 'any', 'http://www.surbl.org/', 'http://george.surbl.org/lookup.html', 'SURBLs are lists of web sites that have appeared in unsolicited messages. Unlike most lists, SURBLs are not lists of message senders.', 1287642420, 1); 
    35953595 
    35963596CREATE TABLE IF NOT EXISTS `sys_dnsbl_block_log` ( 
     
    36003600) ENGINE=MyISAM DEFAULT CHARSET=utf8; 
    36013601 
    3602  
     3602CREATE TABLE IF NOT EXISTS `sys_dnsbluri_zones` ( 
     3603  `level` tinyint(4) NOT NULL, 
     3604  `zone` varchar(64) NOT NULL 
     3605) ENGINE=MyISAM DEFAULT CHARSET=utf8; 
     3606 
     3607 
Note: See TracChangeset for help on using the changeset viewer.