• Cadastro
  • Fóruns
  • Manual
  • Tradução
  • Tutoriais
  • OpenAtrium
Início

Login do usuário

  • Criar uma conta
  • Recuperar senha

Download

Últimas versões

Drupal 6.19 Drupal 5.23

Contribuições

Módulos Temas Tradução


Lista de Discussão

Drupal-BR

Pesquisa no site

Google

Treinamento Drupal 15 de maio e 24 de junho de 2010 em São Paulo e Rio de Janeiro

Itens ativos

  • Busca em site
  • ERRO NO SQL (EU ACHO)
  • Pagina Não encontrada
  • redirecionar para a listagem de conteúdo depois de adicionar algum conteúdo
  • Vaga: Líder Técnico PHP (Campinas/SP)
  • Ibmec Jr. Consultoria Empresarial
  • Resposta de usuário anônimo no Fórum
  • Treinamento Drupal em Curitiba
  • Upload
  • Views para lista de usuários sem repetição.
Veja mais

Posts mais lidos hoje

  • Manual
  • Vaga: Líder Técnico PHP (Campinas/SP)
  • Tutorial - Criando um site com caixas de notícias
  • Sobre o Drupal
  • Treinamento Drupal em Curitiba
  • Resposta de usuário anônimo no Fórum
  • Instalação
  • Ibmec Jr. Consultoria Empresarial
  • Instalação ilustrada em localhost
  • Mamão e Drupal com açucar, desmistificando o primeiro contato com o Drupal

Assine o RSS do Drupal-BR

RSS dos itens mais ativos

RSS do conteúdo

RSS dos comentários

Início

Colocando radios em duas colunas

Estou mexendo com o Ubercart nestes dias e precisei criar um campo do tipo radios (grupo de radio button) em duas colunas para colocar as parcelas do pagamento.

A solução foi muito simples, bastou eu criar um tema para o CAMPO.

Ficou assim:

//...

function uc_locaweb_visa_cart_form ($order) {
        // ...
        $parcelas = array(1 => "À Vista");
       
        for ($i=2; $i <= $max_parcels; $i++) {
                $juros_msg = $i > $juros_par ? 'com juros' : 'sem juros';
                $parcelas[$i] = "{$i}x {$juros_msg}";  
        }
       
        $form['visa_parcelas'] = array(
                '#type' => 'radios',
                '#title' => 'Parcelamento',
                '#description' => "Quando houver pagamento com juros: {$juros}% ao mês",
                '#default_value' => 1,
                '#options' => $parcelas,
                '#theme' => 'uc_locaweb_visa_parcelas'
        );
       
        return $form;
}

function theme_uc_locaweb_visa_parcelas($element) {
        $col1 = $col2 = '';
       
        $total = count($element['#options']);
        $metade = (int) $total / 2;
       
        for ($i=1; $i <= $total; $i++) {
                if ($i <= $metade) {
                        $col1 .= drupal_render($element[$i]);
                }
                else {
                        $col2 .= drupal_render($element[$i]);
                }
        }
 
        $output = '<table><tbody style="border: 0px;">';
        $output .= "<tr><td>{$col1}</td><td>{$col2}</td></tr>";
        $output .= '</tbody></table>';
 
        return $output;
}

//...

Resolvi postar aqui pois acho que é uma informação bastante válida pra todos.

flw!

Enviado por pedrofaria em 28/10/2008 - 10:30
  • Se logue ou se registre para poder enviar comentários
  • 511 leituras
Em 28/10/2008 - 10:44 Vuds disse:

Vc está fazendo um gateway para usar os pagamentos da Locaweb? Quais deles vc está abordando além do Visa (ou todos)?

Sobre as colunas: Uma possibilidade também é "falsear" colunas com o uso do CSS (colocando display:inline para estes form-items).

Abraço!

--
Conheça a garagem de Vuds no [SpecialCars]!

  • Se logue ou se registre para poder enviar comentários
Designimage

Este site é feito, orgulhosamente, com Drupal.