source: companies/serpro/scripts-listas/apagaListasVaziasRHDS.php @ 903

Revision 903, 2.2 KB checked in by niltonneto, 15 years ago (diff)

Importacao inicial do Expresso do Serpro

Line 
1#!/usr/bin/php
2
3
4<?php
5
6        require('config.php');
7        require('functions.php');
8       
9
10        $connect=ldap_connect($server,$port);
11        ldap_set_option($connect, LDAP_OPT_PROTOCOL_VERSION, 3);
12        ldap_bind($connect, $rootdn, $pass);
13
14#Pesquisa listas funcionais
15        $filter="(&(!(mailforwardingaddress=*))(uid=listafunc*))";
16        $justthese = array("uid","mail");
17        $sr = @ldap_search($connect, $baseGravacao, $filter, $justthese);
18        $info = ldap_get_entries($connect, $sr);
19        $cont = $info['count'];
20#       echo "$cont\n";
21#       print_r($info);
22
23        $i = 1;
24        $j = 0;
25       
26#Inicia processo de exclusao de listas do tipo func     
27        while($i <= ($cont-1)) {
28#               echo "\n";
29                $mail = $info[$i]['mail'][0];
30                $uid = $info[$i]['uid'][0];
31                $dn = "uid=".$uid.","."$baseGravacao";
32                echo "Lista vazia -> $uid\n";
33                @ldap_delete($connect,$dn);
34#               echo "$mail\n";
35                $i++;
36        }
37   
38#Pesquisa listas Corporativas
39
40        $filter2="(&(!(mailforwardingaddress=*))(uid=listacorp*))";
41        $justthese = array("uid","mail");
42        $sr = @ldap_search($connect, $baseGravacao, $filter2, $justthese);
43        $info2 = ldap_get_entries($connect, $sr);
44        $cont2 = $info2['count'];
45#       echo "Listas Corp -> $cont2\n";
46#       print_r($info2);
47
48#Inicia processo de exclusao de listas corp
49        while($j <= ($cont2-1)) {
50#               echo "\n";
51                $mail2 = $info2[$j]['mail'][0];
52                $uid2 = $info2[$j]['uid'][0];
53                echo "Lista vazia -> $uid2\n";
54                $dn2 = "uid=".$uid2.","."$baseGravacao";
55#               echo "$dn2\n";
56                @ldap_delete($connect,$dn2);
57#               echo "$mail2\n";
58
59#Busca as listas hierarquica que contem a lista corp vazia
60
61                $filter3="(mailforwardingaddress=$mail2)";
62                $justthese = array("dn","uid","mailforwardingaddress");
63                $sr = @ldap_search($connect, $baseGravacao, $filter3, $justthese);
64                $info3 = ldap_get_entries($connect, $sr);
65#               print_r($info3);
66                $cont3 = $info3['count'];
67                $uid3 = $info3[$j]['uid'][0];
68#               echo "$cont3\n";
69#               echo "Lista -> $uid3\n";
70                $dn3 = "uid=".$uid3.","."$baseGravacao";
71#               echo "DN -> $dn3\n";
72#               echo "mail -> $mail2";
73                $removeUsuario["mailforwardingaddress"] = "$mail2";
74#Remove o endereco da lista pai
75                @ldap_mod_del($connect,$dn3,$removeUsuario);
76                $j++;
77       }
78       echo "Limpeza de listas Corp e Func vazias OK !!!\n";
79
80
81?>
Note: See TracBrowser for help on using the repository browser.