Changes between Initial Version and Version 1 of WF/CaixadeSelecaoMultipla-OptGroup


Ignore:
Timestamp:
07/24/07 15:01:40 (17 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WF/CaixadeSelecaoMultipla-OptGroup

    v1 v1  
     1== Plugin: wf_select_option_multiple_init == 
     2 '''Descrição:''' Insere código que referencia arquivos de javascript responsáveis pela funcionalidade. 
     3 
     4 
     5 
     6'''Parâmetros:''' <nenhum> 
     7 
     8 
     9 
     10'''Exemplo:''' 
     11 
     12{wf_select_option_multiple_init} 
     13 
     14 
     15 
     16 
     17 
     18Observação: antes de utilizar "wf_select_option_multiple" (seja uma ou mais vezes), deve-se fazer uma '''única''' chamada ao plugin "wf_select_option_multiple_init".  
     19 
     20 
     21 
     22---- 
     23 
     24== Plugin: wf_select_option_multiple == 
     25 
     26'''Descrição:''' Este plugin insere uma ''combo box'' e um ''select box'' múltiplo que permite ao usuário cadastrar vários ítens de uma lista. A ''combo'' é utilizada para mostrar todos os ítens "cadastráveis", que podem estar em formato de lista normal, ou uma lista dividida em grupos (utilizando '''optGroup'''). Ao selecionar um item, deve-se clicar no botão "Adicionar" para que a seleção seja copiada para o ''select box'', onde se encontram os itens a serem cadastrados. Ao adicionar um elemento, ele será desabilitado na ''combo'' para que não possa ser selecionado novamente. 
     27 
     28Para remover um ou mais itens do ''select'', basta selecioná-los e clicar no botão "Remover". Isso vai reabilitá-los na ''combo''. 
     29 
     30 
     31 
     32'''Parâmetros:''' 
     33 
     34  nameTop: o nome e id que a ''combo'' irá receber. 
     35 
     36  nameBottom: o nome e id que o ''select'' irá receber. 
     37 
     38  arrayTop: lista dos ítens a serem carregados na ''combo''. 
     39 
     40  arrayBottom: lista dos ítens a serem carregados no ''select''. 
     41 
     42  onChangeTop: chamada da função a ser executada no onChange da ''combo''. 
     43 
     44  onChangeBottom: chamada da função a ser executada no onChange do ''select''. 
     45 
     46  size: tamanho do ''select box''. 
     47 
     48  sortEnableBottom: valor (''true'' ou ''false'') indicando se deve-se executar a ordenação do ''select box''. 
     49 
     50  diffEnable: valor (''true'' ou ''false'') indicando se deve-se executar o diff entre a ''combo'' e o ''select box''. 
     51 
     52  style: para definir os estilos do ''select box''. 
     53 
     54 
     55 
     56'''Parâmetros obrigatórios:''' 
     57 
     58  nameTop 
     59 
     60  nameBottom 
     61 
     62 
     63 
     64'''Valor padrão:''' 
     65 
     66  size: 8 
     67 
     68  style: "width:400px" 
     69 
     70  sortEnableBottom: true 
     71 
     72  diffEnable: true 
     73 
     74 
     75 
     76A seguir, é apresentada a combo com uma lista dividida em grupos. Para isso, o array deve possuir o seguinte formato: 
     77 
     78{{{ 
     79 
     80array( 
     81 
     82    "Curitiba" => array( 
     83 
     84                    123 => "Araucária", 
     85 
     86                    134 => "Colombo", 
     87 
     88                     . 
     89 
     90                     . 
     91 
     92                    ), 
     93 
     94    "Londrina" => array( 
     95 
     96                    234 => "Cambé", 
     97 
     98                    245 => "Ibiporã", 
     99 
     100                     . 
     101 
     102                     . 
     103 
     104                    ) 
     105 
     106) 
     107 
     108}}} 
     109 
     110:[[Image(http://doc.workflow.celepar.parana/wiki/select_option_multiple_combo.png)]] 
     111 
     112 
     113 
     114Alguns elementos estão desabilitados pois já foram adicionados ao ''select''. 
     115 
     116 
     117 
     118Uma visão mais geral do componente é apresentada a seguir: 
     119 
     120:[[Image(http://doc.workflow.celepar.parana/wiki/select_option_multiple.png)]] 
     121 
     122 
     123 
     124Ao remover um elemento do ''select'', ele volta a ser habilitado na ''combo'' para que possa ser selecionado novamente, se necessário. 
     125 
     126 
     127 
     128'''Exemplo de utilização:''' 
     129 
     130{wf_select_option_multiple nameTop="disponiveis" nameBottom="cadastrados" arrayTop=$lista diffEnable=false} 
     131 
     132 
     133 
     134O exemplo acima cria o componente com o array $lista carregado na ''combo''. Se esse array tiver um formato semelhante ao exemplo da imagem acima, será utilizado o optGroup, mas se for um array normal, será criada uma ''combo'' com ''options'' normais. O parâmetro "diffEnable=false" indica que não será realizado o diff entre a ''combo'' e o ''select'', que nesse caso realmente não é necessário, pois o ''select'' está vazio. 
     135 
     136 
     137 
     138{wf_select_option_multiple nameTop="disponiveis" nameBottom="cadastrados" arrayTop=$listaCombo arrayBottom=$listaSelect sortEnableBottom=false} 
     139 
     140 
     141 
     142O exemplo acima cria o componente com a ''combo'' e o ''select'' carregados automaticamente com os arrays $listaCombo e $listaSelect, respectivamente. Quando não é especificado o '''diffEnable''', ou é definido "diffEnable=true", é efetuado o diff entre a ''combo'' e o ''select'', que desabilita os elementos da ''combo'' que forem encontrados no ''select''. Com "sortEnableBottom=false", os elementos do ''select'' não serão ordenados. Caso esse parâmetro não seja especificado, seu valor padrão é '''true'''. 
     143 
     144 
     145 
     146'''ATENÇÃO:''' Antes do formulário ser submetido, você deve chamar a função javascript do componente "selectAllOptions". Essa função recebe como parâmetro o nome do ''select'' a ter as ''options'' selecionadas. No PHP serão recuperados os ''values'' dos elementos selecionados.