Changeset 4036


Ignore:
Timestamp:
04/15/11 08:44:02 (13 years ago)
Author:
rafaelraymundo
Message:

Ticket #1726 - Corrigido problema de lentidão e paginação. r4033 e r4035

Location:
branches/2.2.0.1/reports/inc
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • branches/2.2.0.1/reports/inc/class.functions.inc.php

    r3949 r4036  
    854854                } 
    855855 
     856                function get_count_user_sector($query, $contexts,$sizelimit) 
     857                { 
     858                        $dn                     = $GLOBALS['phpgw_info']['server']['ldap_root_dn']; 
     859                        $passwd         = $GLOBALS['phpgw_info']['server']['ldap_root_pw']; 
     860                        $ldap_conn      = ldap_connect($GLOBALS['phpgw_info']['server']['ldap_host']); 
     861                        ldap_set_option($ldap_conn, LDAP_OPT_PROTOCOL_VERSION, 3); 
     862                        ldap_set_option($ldap_conn, LDAP_OPT_REFERRALS, 0); 
     863                        ldap_bind($ldap_conn,$dn,$passwd);                       
     864                        // counting users by sector. 
     865                        foreach ($contexts as $index=>$context) { 
     866                                if($context == $GLOBALS['phpgw_info']['server'] ["ldap_context"]) { 
     867                                        $contexts[$index] = null; 
     868                                        $justthese = array("dn"); 
     869                                        $filter="(objectClass=OrganizationalUnit)"; 
     870                                        $search = ldap_list($ldap_conn, $context, $filter, $justthese); 
     871                                        $entries = ldap_get_entries($ldap_conn, $search); 
     872                                        $contexts = array(); 
     873                                        for ($i=0; $i< $entries['count']; $i++){ 
     874                                                $contexts[] = $entries[$i]['dn']; 
     875                                        } 
     876                                } 
     877                        }        
     878                        $filter="(&(phpgwAccountType=u)(|(uid=*)))"; 
     879                        $justthese = array("uidnumber"); 
     880                        $total_count = 0; 
     881                         
     882                        foreach ($contexts as $index=>$context) {                                
     883                                $search = ldap_search($ldap_conn, $context, $filter, $justthese, 0, $sizelimit); 
     884                                $total_count += ldap_count_entries($ldap_conn, $search);                                                         
     885                        } 
     886                        ldap_close($ldap_conn); 
     887                        return $total_count; 
     888                } 
     889 
    856890                function get_list_user_sector_logon($query, $contexts,$sizelimit,$numacesso) 
    857891                { 
  • branches/2.2.0.1/reports/inc/class.uireports_cota.inc.php

    r3949 r4036  
    157157                        { 
    158158                                // Conta a quantidade de Usuario do grupo raiz 
    159                                 $account_user = $this->functions->get_list_user_sector($contextsdn,$contexts,0); 
    160                                 $totaluser = "(".count($account_user).")"; 
     159                                $account_user = $this->functions->get_count_user_sector($contextsdn,$contexts,0); 
     160                                $totaluser = "(".$account_user.")"; 
    161161 
    162162                                $p->set_var('organizacao', $varorganizacao_nome); 
     
    287287                        {  
    288288                                //url do paginador  
    289                                 $url = '/index.php?menuaction=reports.uireports_cota.report_cota_group_setor_print'; 
     289                                $url = $GLOBALS['phpgw_info']['server']['webserver_url'].'/index.php?menuaction=reports.uireports_cota.report_cota_group_setor_print'; 
    290290 
    291291                                // **** Grupo de paginas **** 
  • branches/2.2.0.1/reports/inc/class.uireports_logon.inc.php

    r3903 r4036  
    350350                        { 
    351351                                // Conta a quantidade de Usuario do grupo raiz 
    352                                 $account_user = $this->functions->get_list_user_sector($contextsdn,$contexts,0); 
    353                                 $totaluser = "(".count($account_user).")"; 
     352                                $account_user = $this->functions->get_count_user_sector($contextsdn,$contexts,0); 
     353                                $totaluser = "(".$account_user.")"; 
    354354 
    355355                                $p->set_var('organizacao', $varorganizacao_nome); 
     
    486486                                if ($vnumacesso==0){ 
    487487                                        //url do paginador  
    488                                         $url = '/index.php?menuaction=reports.uireports_logon.report_logon_group_setor_print'; 
     488                                        $url = $GLOBALS['phpgw_info']['server']['webserver_url'].'/index.php?menuaction=reports.uireports_logon.report_logon_group_setor_print'; 
    489489         
    490490                                        // **** Grupo de paginas **** 
     
    697697                                // ******** caso não for zero não vai paginar ***************** 
    698698                                        //url do paginador  
    699                                         $url = '/index.php?menuaction=reports.uireports_logon.report_logon_group_setor_print'; 
     699                                        $url = $GLOBALS['phpgw_info']['server']['webserver_url'].'/index.php?menuaction=reports.uireports_logon.report_logon_group_setor_print'; 
    700700 
    701701                                        // conta total dos registros 
  • branches/2.2.0.1/reports/inc/class.uireports_maillists.inc.php

    r3666 r4036  
    382382                        {  
    383383                                //url do paginador  
    384                                 $url = '/index.php?menuaction=reports.uireports_maillists.report_maillists_print'; 
     384                                $url = $GLOBALS['phpgw_info']['server']['webserver_url'].'/index.php?menuaction=reports.uireports_maillists.report_maillists_print'; 
    385385 
    386386                                // **** Grupo de paginas **** 
  • branches/2.2.0.1/reports/inc/class.uireports_users.inc.php

    r3666 r4036  
    275275                        { 
    276276                                // Conta a quantidade de Usuario do grupo raiz 
    277                                 $account_user = $this->functions->get_list_user_sector($contextsdn,$contexts,0); 
    278                                 $totaluser = "(".count($account_user).")"; 
     277                                $account_user = $this->functions->get_count_user_sector($contextsdn,$contexts,0); 
     278                                $totaluser = "(".$account_user.")"; 
    279279 
    280280                                $p->set_var('organizacao', $varorganizacao_nome); 
     
    401401                        {  
    402402                                //url do paginador  
    403                                 $url = '/index.php?menuaction=reports.uireports_users.report_users_group_setor_print'; 
     403                                $url = $GLOBALS['phpgw_info']['server']['webserver_url'].'/index.php?menuaction=reports.uireports_users.report_users_group_setor_print'; 
    404404 
    405405                                // **** Grupo de paginas **** 
  • branches/2.2.0.1/reports/inc/class.uireports_usersgroups.inc.php

    r3666 r4036  
    379379                        {  
    380380                                //url do paginador  
    381                                 $url = '/index.php?menuaction=reports.uireports_usersgroups.report_usersgroups_print'; 
     381                                $url = $GLOBALS['phpgw_info']['server']['webserver_url'].'/index.php?menuaction=reports.uireports_usersgroups.report_usersgroups_print'; 
    382382 
    383383                                // **** Grupo de paginas **** 
Note: See TracChangeset for help on using the changeset viewer.