public function getAllowDenyList() { $content = array(); PHPWS_Core::initModClass('access', 'Allow_Deny.php'); if (!PHPWS_Settings::get('access', 'allow_deny_enabled')) { return "Order Allow,Deny\nAllow from all\n\n"; } $deny_all = PHPWS_Settings::get('access', 'deny_all'); $allow_all = PHPWS_Settings::get('access', 'allow_all'); $deny_str = $allow_str = NULL; if ($deny_all && $allow_all) { return NULL; } elseif ($deny_all) { $deny_str = 'Deny from all'; } elseif ($allow_all) { $allow_str = 'Allow from all'; } $db = new PHPWS_DB('access_allow_deny'); $db->addWhere('active', 1); if ($deny_all) { $db->addWhere('allow_or_deny', 1); } elseif ($allow_all) { $db->addWhere('allow_or_deny', 0); } $result = $db->getObjects('Access_Allow_Deny'); if ($deny_all) { $content[] = 'Order Deny,Allow'; $content[] = $deny_str; $content[] = 'Allow from 127.0.0.1'; $content[] = 'Allow from ' . Current_User::getIP(); if (!empty($result)) { foreach ($result as $ad) { $content[] = 'Allow from ' . $ad->ip_address; } } } elseif ($allow_all) { $content[] = 'Order Allow,Deny'; $content[] = $allow_str; if (!empty($result)) { foreach ($result as $ad) { $content[] = 'Deny from ' . $ad->ip_address; } } } else { if (!empty($result)) { $content[] = 'Order Deny,Allow'; foreach ($result as $ad) { if ($ad->allow_or_deny) { $allows[] = 'Allow from ' . $ad->ip_address; } else { $denys[] = 'Deny from ' . $ad->ip_address; } } if (!empty($denys)) { $content[] = implode("\n", $denys); } if (!empty($allows)) { $content[] = implode("\n", $allows); } } } return implode("\n", $content) . "\n\n"; }