function parseTemplate_sendemail_js() { include_once dirname(__FILE__) . "/ressources/class.sockets.inc"; include_once dirname(__FILE__) . "/ressources/class.user.inc"; include_once dirname(__FILE__) . "/ressources/class.external_acl_squid_ldap.inc"; include_once dirname(__FILE__) . "/ressources/class.templates.inc"; $tpl = new templates(); $your_query_was_sent_to_administrator = $tpl->javascript_parse_text("{your_query_was_sent_to_administrator}", 0); $ARRAY = unserialize(base64_decode($_GET["serialize"])); $client_username = $ARRAY["clientname"]; $SquidGuardIPWeb = $ARRAY["SquidGuardIPWeb"]; $email = null; $t = time(); if ($client_username != null) { $sock = new sockets(); $EnableKerbAuth = intval($sock->GET_INFO("EnableKerbAuth")); if ($EnableKerbAuth == 1) { $ad = new external_acl_squid_ldap(); $array = $ad->ADLdap_userinfos($client_username); $email = $array[0]["mail"][0]; } else { $users = new user($client_username); if (count($users->email_addresses) > 0) { $email = $users->email_addresses[0]; } } } if ($email != null) { echo "\n\t\t// {$client_username}\n\t\tvar xSMTPNotifValues{$t}= function (obj) {\n\t\t\tvar results=obj.responseText;\n\t\t\tif(results.length>3){alert(results);}\n\t\t}\n\t\t\n\t\tfunction SMTPNotifValues{$t}(){\n\t\t\n\t\tvar jqxhr = \$.post( '{$SquidGuardIPWeb}',{'send-smtp-notif':'{$email}','MAIN_ARRAY':'{$_GET["serialize"]}'}, function(result) {\n\t\t\talert( '{$your_query_was_sent_to_administrator}' );\n\t\t})\n\t\t.done(function(result) {\n\t\talert('{$your_query_was_sent_to_administrator}' );\n\t\t})\n\t\t.fail(function() {\n\t\talert( '{$your_query_was_sent_to_administrator}' );\n\t\t})\n\t\t.always(function() {\n\t\t//alert( 'unknown' );\n\t\t});\n\t\t\n\t\t\n\t\t//\tvar XHR = new XHRConnection();\n\t\t//\tXHR.setLockOff();\n\t\t//\tXHR.appendData('send-smtp-notif','{$email}');\n\t\t//\tXHR.appendData('MAIN_ARRAY','{$_GET["serialize"]}');\n\t\t//\tXHR.sendAndLoad('{$SquidGuardIPWeb}', 'POST',xSMTPNotifValues{$t});\n\t\t}\n\t\tSMTPNotifValues{$t}();"; return; } $tpl = new templates(); $title = $tpl->javascript_parse_text("{give_your_email_address}"); echo " //{$client_username}\n\tvar xSMTPNotifValues{$t}= function (obj) {\n\t\tvar results=obj.responseText;\n\t\tif(results.length>3){alert(results);}\n\t}\n\t\n\tfunction SMTPNotifValues{$t}(){\n\t\tvar email=prompt('{$title}');\n\t\tif(!email){return;}\n\t\t\n\t\tvar jqxhr = \$.post( '{$SquidGuardIPWeb}',{'send-smtp-notif':email,'MAIN_ARRAY':'{$_GET["serialize"]}'}, function(result) {\n\t\t\talert( '{$your_query_was_sent_to_administrator}' );\n\t\t})\n\t\t.done(function(result) {\n\t\t\talert('{$your_query_was_sent_to_administrator}' );\n\t\t})\n\t\t.fail(function(xhr, textStatus, errorThrown){\n\t\t\t alert('{$your_query_was_sent_to_administrator}' +xhr.responseText);\n\t\t\t \t\t \n\t\t})\n\t\t.always(function() {\n\t\t //none\n\t\t});\n\t\t\n\t\t\n\t\t//var XHR = new XHRConnection();\n\t\t//XHR.appendData('send-smtp-notif',email);\n\t\t//XHR.appendData('MAIN_ARRAY','{$_GET["serialize"]}');\n\t\t//XHR.sendAndLoad('{$SquidGuardIPWeb}', 'POST',xSMTPNotifValues{$t});\n\t}\n\tSMTPNotifValues{$t}();"; return; }
function ufdbguard_checks($id) { LoadSettings(); if ($GLOBALS["VERBOSE"]) { $GLOBALS["output"] = true; echo "OPEN: /etc/squid3/ufdb.groups.{$id}.db\n"; } if (!is_file("/etc/squid3/ufdb.groups.{$id}.db")) { if ($GLOBALS["output"]) { echo "Cannot perform this operation\nYou have to create correctly a Web filtering rule\nIncluding blacklists and whitelists\nAnd compile your Web filtering rules in order to dump groups\n"; } return null; } $arrayGROUPS = unserialize(@file_get_contents("/etc/squid3/ufdb.groups.{$id}.db")); $FINAL = array(); $Hash = array(); if ($GLOBALS["VERBOSE"]) { echo "DUMP: ARRAY ***********************\n"; } if ($GLOBALS["VERBOSE"]) { print_r($arrayGROUPS); } if ($GLOBALS["VERBOSE"]) { echo "***********************************\n"; } if (isset($arrayGROUPS["EXT-LDAP"])) { if ($GLOBALS["VERBOSE"]) { echo "Found:EXT-LDAP\n"; } $extn_ldap = new ldap_extern(); while (list($index, $DNS) = each($arrayGROUPS["EXT-LDAP"])) { if ($GLOBALS["VERBOSE"]) { echo "DN:{$DNS}\n"; } $rr = $extn_ldap->HashUsersFromGroupDN($DNS); if ($GLOBALS["output"]) { echo "{$DNS} return " . count($rr) . " users\n"; } while (list($a, $b) = each($rr)) { $b = trim($b); if ($b == null) { continue; } echo "USER= {$b}\n"; $MemberArray[$a] = $a; } while (list($a, $b) = each($MemberArray)) { $FINAL[] = $a; } } } if (isset($arrayGROUPS["EXTLDAP"])) { while (list($index, $CONFS) = each($arrayGROUPS["EXTLDAP"])) { $rr = external_ldap_members($CONFS["DN"], $CONFS["CONF"]); if ($GLOBALS["output"]) { echo "{$CONFS["DN"]} return " . count($rr) . " users\n"; } while (list($a, $b) = each($rr)) { echo "USER= {$b}\n"; $MemberArray[$a] = $a; } } while (list($a, $b) = each($MemberArray)) { $FINAL[] = $a; } } if (isset($arrayGROUPS["AD"])) { while (list($index, $DNenc) = each($arrayGROUPS["AD"])) { $DN = base64_decode($DNenc); if ($GLOBALS["output"]) { echo "Loading Active Directory groups...\n"; } if ($GLOBALS["output"]) { echo "Branch {$DN}\n"; } if ($GLOBALS["VERBOSE"]) { echo "DN, {$DN}\n"; } $ldapExt = new external_acl_squid_ldap(); $members = $ldapExt->AdLDAP_MembersFromGroup($DN); if ($GLOBALS["VERBOSE"]) { echo "DN, {$DN} -> " . count($members) . "\n"; } while (list($a, $b) = each($members)) { $Hash[$b] = $b; } } while (list($a, $b) = each($Hash)) { if ($GLOBALS["VERBOSE"]) { echo "USER= {$b}\n"; } $FINAL[] = $b; } } if (isset($arrayGROUPS["LDAP"])) { while (list($index, $gpid) = each($arrayGROUPS["LDAP"])) { $Hash = HashUsersFromGPID($gpid); if (count($Hash) == 0) { WLOG("[QUERY]: ufdbguard_checks({$id}) GPID:{$gpid} store no user..."); continue; } while (list($a, $b) = each($Hash)) { if ($GLOBALS["VERBOSE"]) { echo "USER= {$b}\n"; } $FINAL[] = $b; } } } if ($GLOBALS["output"]) { echo "\nResults\n**********************************\n# # # # # # # # # # # # # # # # # # # # # #\n" . count($FINAL) . " item(s)\n# # # # # # # # # # # # # # # # # # # # # #\n"; } if (count($FINAL) == 0) { WLOG("[QUERY]: ufdbguard_checks({$id}) no user..."); return; } while (list($a, $Member) = each($FINAL)) { $Member = trim($Member); if ($Member == null) { continue; } $Member = str_replace(" ", "%20", $Member); $FINAL2[] = $Member; } echo @implode($FINAL2, "\n") . "\n"; }
function parseTemplate_if_in_ADGroup($adgroup, $client_username) { include_once dirname(__FILE__) . "/ressources/class.external_acl_squid_ldap.inc"; if (!isset($_SESSION["GROUPES_IN_AD"])) { $ad = new external_acl_squid_ldap(); $groupes = $ad->ADLdap_getgroups($client_username); while (list($GroupName, $none) = each($groupes)) { $GROUPES_IN_AD[trim(strtolower($GroupName))] = true; } $_SESSION["GROUPES_IN_AD"] = $GROUPES_IN_AD; } else { $GROUPES_IN_AD = $_SESSION["GROUPES_IN_AD"]; } if (strpos($adgroup, ",") > 0) { $QueriesGroups = explode(",", $adgroup); } else { $QueriesGroups[] = $adgroup; } while (list($none, $GroupName) = each($QueriesGroups)) { $GROUPES_TO_AD[trim(strtolower($GroupName))] = true; } while (list($GroupName, $none) = each($GROUPES_TO_AD)) { if (isset($GROUPES_IN_AD[$GroupName])) { return true; } } }
function ufdbguard_checks($id) { LoadSettings(); if ($GLOBALS["VERBOSE"]) { $GLOBALS["output"] = true; echo "OPEN: /etc/squid3/ufdb.groups.{$id}.db\n"; } $arrayGROUPS = unserialize(@file_get_contents("/etc/squid3/ufdb.groups.{$id}.db")); $FINAL = array(); $Hash = array(); if (isset($arrayGROUPS["EXT-LDAP"])) { if ($GLOBALS["VERBOSE"]) { echo "Found:EXT-LDAP\n"; } $extn_ldap = new ldap_extern(); while (list($index, $DNS) = each($arrayGROUPS["EXT-LDAP"])) { if ($GLOBALS["VERBOSE"]) { echo "DN:{$DNS}\n"; } $rr = $extn_ldap->HashUsersFromGroupDN($DNS); if ($GLOBALS["output"]) { echo "{$DNS} return " . count($rr) . " users\n"; } while (list($a, $b) = each($rr)) { $b = trim($b); if ($b == null) { continue; } echo "USER= {$b}\n"; $MemberArray[$a] = $a; } while (list($a, $b) = each($MemberArray)) { $FINAL[] = $a; } } } if (isset($arrayGROUPS["EXTLDAP"])) { while (list($index, $CONFS) = each($arrayGROUPS["EXTLDAP"])) { $rr = external_ldap_members($CONFS["DN"], $CONFS["CONF"]); if ($GLOBALS["output"]) { echo "{$CONFS["DN"]} return " . count($rr) . " users\n"; } while (list($a, $b) = each($rr)) { echo "USER= {$b}\n"; $MemberArray[$a] = $a; } } while (list($a, $b) = each($MemberArray)) { $FINAL[] = $a; } } if (isset($arrayGROUPS["AD"])) { while (list($index, $DNenc) = each($arrayGROUPS["AD"])) { $DN = base64_decode($DNenc); if ($GLOBALS["VERBOSE"]) { echo "DN, {$DN}\n"; } $ldapExt = new external_acl_squid_ldap(); $members = $ldapExt->AdLDAP_MembersFromGroup($DN); if ($GLOBALS["VERBOSE"]) { echo "DN, {$DN} -> " . count($members) . "\n"; } while (list($a, $b) = each($members)) { $Hash[$b] = $b; } } while (list($a, $b) = each($Hash)) { if ($GLOBALS["VERBOSE"]) { echo "USER= {$b}\n"; } $FINAL[] = $b; } } if (isset($arrayGROUPS["LDAP"])) { while (list($index, $gpid) = each($arrayGROUPS["LDAP"])) { $Hash = HashUsersFromGPID($gpid); if (count($Hash) == 0) { WLOG("[QUERY]: ufdbguard_checks({$id}) GPID:{$gpid} store no user..."); continue; } while (list($a, $b) = each($Hash)) { if ($GLOBALS["VERBOSE"]) { echo "USER= {$b}\n"; } $FINAL[] = $b; } } } if ($GLOBALS["output"]) { echo "\nResults\n**********************************\n# # # # # # # # # # # # # # # # # # # # # #\n" . count($FINAL) . " item(s)\n# # # # # # # # # # # # # # # # # # # # # #\n"; } if (count($FINAL) == 0) { WLOG("[QUERY]: ufdbguard_checks({$id}) no user..."); return; } while (list($a, $Member) = each($FINAL)) { $Member = trim($Member); if ($Member == null) { continue; } $Member = str_replace(" ", "%20", $Member); $FINAL2[] = $Member; } echo @implode($FINAL2, "\n") . "\n"; }
<?php include_once dirname(__FILE__) . "/ressources/class.user.inc"; include_once dirname(__FILE__) . "/ressources/class.groups.inc"; include_once dirname(__FILE__) . "/ressources/class.ldap.inc"; include_once dirname(__FILE__) . "/ressources/class.system.network.inc"; include_once dirname(__FILE__) . "/ressources/class.dansguardian.inc"; include_once dirname(__FILE__) . "/ressources/class.squid.inc"; include_once dirname(__FILE__) . "/ressources/class.squidguard.inc"; include_once dirname(__FILE__) . "/ressources/class.mysql.inc"; include_once dirname(__FILE__) . "/ressources/class.compile.ufdbguard.inc"; include_once dirname(__FILE__) . "/ressources/class.compile.dansguardian.inc"; include_once dirname(__FILE__) . '/framework/class.unix.inc'; include_once dirname(__FILE__) . "/framework/frame.class.inc"; include_once dirname(__FILE__) . '/ressources/class.ufdbguard-tools.inc'; include_once dirname(__FILE__) . "/ressources/class.os.system.inc"; include_once dirname(__FILE__) . "/ressources/class.external_acl_squid_ldap.inc"; $GLOBALS["VERBOSE"] = true; ini_set('display_errors', 1); ini_set('error_reporting', E_ALL); ini_set('error_prepend_string', null); ini_set('error_append_string', null); $ad = new external_acl_squid_ldap(); $array = $ad->ADLdap_userinfos("david"); $email = $array[0]["mail"][0]; echo $email . "\n";