Ignore:
Timestamp:
05/30/11 18:04:29 (13 years ago)
Author:
airton
Message:

Ticket #1954 - Implementacao de busca avançada no contactcenter - Padronizacao da tela de busca avancada

Location:
sandbox/2.2.0.2/contactcenter
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • sandbox/2.2.0.2/contactcenter/inc/class.ui_data.inc.php

    r4544 r4548  
    8383                                $this -> typeContact = 'contacts'; 
    8484                        $this->preferences = $_SESSION['phpgw_info']['user']['preferences']['contactcenter']; 
     85                } 
     86                 
     87                function lg( $message, $path = '/tmp/natan.log' ) 
     88                { 
     89                    ob_start(); 
     90                    print_r( $message ); 
     91                    echo( "\n" ); 
     92                    $output = ob_get_clean(); 
     93                    file_put_contents( $path, file_get_contents( $path ) . $output ); 
    8594                } 
    8695 
     
    263272                        $GLOBALS['phpgw']->template->set_var('cc_msg_add_contact_to_group', lang('You did not add any contact for this group.')); 
    264273                        $GLOBALS['phpgw']->template->set_var('cc_msg_fill_field_name', lang('Fill the field Full Name')); 
     274 
     275                        /* 
     276                            * Monta Contactcenter Busca Avancada 
     277                            */ 
     278                        $c = CreateObject('phpgwapi.config','contactcenter'); 
     279                        $c->read_repository(); 
     280                        $current_config = $c->config_data; 
     281                        $this->lg( $current_config ); 
     282 
     283                        $arraySearch = array(); 
     284                        foreach ($current_config as $index => $value) 
     285                        { 
     286 
     287                            if(substr($index, 0, 24) == 'cc_attribute_searchable_') 
     288                            { 
     289                                if($value == 'true') 
     290                                    $arraySearch[] = substr($index, 24, strlen($index)); 
     291                            } 
     292                        } 
     293                        $advanceSearchArray = array(); 
     294                        foreach ($arraySearch as $value) 
     295                        { 
     296                            foreach ($current_config as $index => $value2) 
     297                            { 
     298                                if($value == substr($index, 22, strlen($index)) && substr($index, 0, 22) == 'cc_attribute_ldapname_') 
     299                                { 
     300                                    foreach ($current_config as $index2 => $value3) 
     301                                    { 
     302                                        if($value == substr($index2, 18, strlen($index2)) && substr($index2, 0, 18) == 'cc_attribute_name_') 
     303                                                $advanceSearchArray[$value2] =  $value3; 
     304                                    } 
     305                                } 
     306 
     307                            } 
     308                        } 
     309 
     310                        $advanceSearch = array(); 
     311                        foreach ($advanceSearchArray as $index => $value) 
     312                            $advanceSearch[] ='"'.$index.'":"'.$value.'"'; 
     313 
     314                        $advancedFields =  "{".implode(',',$advanceSearch)."}"; 
    265315                         
    266                          
    267  
    268  
    269                             /* 
    270                              * Monta Contactcenter Busca Avancada 
    271                              */ 
    272                             $c = CreateObject('phpgwapi.config','contactcenter'); 
    273                             $c->read_repository(); 
    274                             $current_config = $c->config_data; 
    275  
    276                             $arraySearch = array(); 
    277                             foreach ($current_config as $index => $value) 
    278                             { 
    279  
    280                                 if(substr($index, 0, 24) == 'cc_attribute_searchable_') 
    281                                 { 
    282                                     if($value == 'true') 
    283                                     { 
    284                                         $v = substr($index, 24, strlen($index)); 
    285                                         $arraySearch[] = $v; 
    286                                     } 
    287                                 } 
    288                             } 
    289                             $advanceSearchArray = array(); 
    290                             foreach ($arraySearch as $value) 
    291                             { 
    292                                 foreach ($current_config as $index => $value2) 
    293                                 { 
    294                                     if($value == substr($index, 22, strlen($index)) && substr($index, 0, 22) == 'cc_attribute_ldapname_') 
    295                                     { 
    296                                         foreach ($current_config as $index2 => $value3) 
    297                                         { 
    298                                             if($value == substr($index2, 18, strlen($index2)) && substr($index2, 0, 18) == 'cc_attribute_name_') 
    299                                                  $advanceSearchArray[$value2] =  $value3; 
    300                                         } 
    301                                     } 
    302  
    303                                 } 
    304                             } 
    305  
    306                             $advanceSearch = array(); 
    307                             foreach ($advanceSearchArray as $index => $value) 
    308                                 $advanceSearch[] ='"'.$index.'":"'.$value.'"'; 
    309  
    310                             $advancedFields =  "{".implode(',',$advanceSearch)."}"; 
     316                        $this->lg( $advancedFields ); 
    311317 
    312318 
     
    333339                                $GLOBALS['phpgw']->template->set_var('cc_contact_type', 'default'); 
    334340                        } 
     341 
    335342                        $GLOBALS['phpgw']->template->parse('out','index'); 
    336343 
  • sandbox/2.2.0.2/contactcenter/js/cc_config.js

    r4544 r4548  
    6767                 
    6868                var maior = 0; 
    69                 for (var i=1; i<vars.length; i++) { 
     69                for (var i=0; i<vars.length; i++) { 
    7070                        var tupla = vars[i]; 
    7171                        var linhaIndice = tupla.getElementsByTagName("input")[0]; 
  • sandbox/2.2.0.2/contactcenter/js/cc_full_search.js

    r4145 r4548  
    99ccFullSearch.prototype.showForm = function() { 
    1010        div = document.getElementById('cc_searchDiv'); 
    11         if(this.fields==null) 
    12                 this.fields = new Array(Element('cc_qa_given_names').value, Element('cc_corporate').value+":", Element('cc_qa_email').value, Element('cc_qa_phone').value); 
     11//      if(this.fields==null) 
     12//              this.fields = new Array(Element('cc_qa_given_names').value, Element('cc_corporate').value+":", Element('cc_qa_email').value, Element('cc_qa_phone').value); 
    1313        if(div) 
    1414                this.showWindow(div); 
  • sandbox/2.2.0.2/contactcenter/js/cc_search.js

    r4544 r4548  
    207207                this.DOMbtn3.disabled = 'disabled'; 
    208208                this.DOMbtn3.value =  v_label + ':'; 
    209 var btn = this.DOMbtn.cloneNode(true); 
    210209 
    211210                var btn = this.DOMbtn.cloneNode(true); 
     
    221220                    if( !target.innerHTML ) 
    222221                    { 
    223                         var overlay = document.createElement( 'DIV' ); 
    224  
    225                         var items = target.style.width = overlay.innerHTML = ''; 
    226  
    227                         var config = { "cn":"Nome", "uid":"Matricula" }; 
    228  
    229                         for( attr in config ) 
    230                             items += "<tr><td style='padding: 3px'>"+config[attr]+"</td><td style='padding: 5px;'><input type='text' name='advanced_search' label='"+attr+"'><br></td></tr>"; 
    231  
    232                         for( attr in advanced_search_fields ) 
    233                             items += "<tr><td style='padding: 3px'>"+advanced_search_fields[attr]+"</td><td style='padding: 5px;'><input type='text' name='advanced_search' label='"+attr+"'><br></td></tr>"; 
    234                          
     222                        var items = []; 
     223                        target.style.width = ''; 
     224 
     225                        var config = [ { "cn":"Nome", "uid":"Matricula" }, advanced_search_fields ]; 
     226 
     227                        for( var i = 0, counter = 2; i < config.length; i++ ) 
     228                            for( attr in config[i] ) 
     229                                items[counter++] = "<tr><td style='padding: 3px'>"+config[i][attr]+"</td><td style='padding: 5px;'><input type='text' name='advanced_search' label='"+attr+"'><br></td></tr>"; 
     230 
    235231                        var itemH = document.createElement('DIV'); 
    236232 
    237                         itemH.innerHTML = items ? '<table>' + items + '</table>' : ''; 
     233                        itemH.innerHTML = items ? '<table>' + items.join("") + '</table>' : ''; 
    238234                        target.appendChild( itemH ); 
    239235 
     
    257253                        closeBtn.type = 'button'; 
    258254                        closeBtn.onclick = function(){  
    259                             document.getElementById('Layer2').style.visibility = 'hidden'; 
     255                            win.close(); 
    260256                            document.getElementById('overlay').style.visibility = 'hidden'; 
    261257                        }; 
     
    273269 
    274270                        target.appendChild( holder ); 
     271                         
     272                        this.win = new dJSWin({ 
     273                                        id: 'ccSearch_Layer2', 
     274                                        content_id: 'Layer2', 
     275                                        width: '255px', 
     276                                        height: ( counter * 31 ) +'px', 
     277                                        title_color: '#3978d6', 
     278                                        bg_color: '#eee', 
     279                                        title: Element('cc_cs_title').value,                                             
     280                                        title_text_color: 'white', 
     281                                        button_x_img: Element('cc_phpgw_img_dir').value+'/winclose.gif', 
     282                                        border: true }); 
     283 
     284                        this.win.draw(); 
    275285                    } 
    276286 
    277                     var overlay = document.getElementById('overlay'); 
    278  
    279                     overlay.style.visibility = ( overlay.style.visibility === 'hidden' ? 'visible' : 'hidden' ); 
    280  
    281                     var pos = findPosY( this ); 
    282  
    283                     with( target.style ) 
    284                     { 
    285                         if( !visibility || visibility === 'visible' ) 
    286                             visibility = 'hidden'; 
    287                         else 
    288                         { 
    289                             visibility = 'visible'; 
    290                            top = 19 + pos + "px"; 
    291                         } 
    292                     } 
     287                    this.win.open(); 
    293288                }; 
    294289 
  • sandbox/2.2.0.2/contactcenter/templates/default/index.tpl

    r4544 r4548  
    259259</table> 
    260260        <div id="Layer1" style="position:absolute; top:178px; left:183px;width:auto; padding:2px; z-index:100000; background-color:#F2F3ED; border:1px solid #999999;visibility:hidden"></div> 
    261         <div id="Layer2" style="position:absolute; top:178px; left:183px;width:auto; padding:2px; z-index:100000; background-color:#F2F3ED; border:1px solid #999999;visibility:hidden"></div> 
     261        <div id="Layer2" style="width:auto; padding:2px; z-index:100000; visibility:hidden"></div> 
    262262        <div id="debug_layer" style="position:absolute;width:0px;height:0px;display:none"></div> 
    263263<!-- _END VIEW CARDS --> 
Note: See TracChangeset for help on using the changeset viewer.