http://www.perlmonks.org?node_id=376121


in reply to complex checkbox group

You need Date::Calc from CPAN:
#!/usr/bin/perl use Date::Calc qw( Time_to_Date Day_of_Week ); my @weekday=( "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ); my ($y,$mo,$d,$h,$m,$s)=Time_to_Date(time); my $dow = Day_of_Week($y,$mo,$d); print "Today is $weekday[$dow]\n";

Replies are listed 'Best First'.
Re^2: complex checkbox group
by Anonymous Monk on Jul 21, 2004 at 00:38 UTC
    really I'm asking more about the checkboxes and how to break them into sub-check box groups ;-)
      Below is code I use for checkboxgroups. The code offered by hbo can still be used as it provides the necessary array of @weekday which you can use in my code below. Additionally if you wanted to just select a specific day set @selected to [$weekday[$num]] at the beginning and remove the where $num would represent the day of the week. I hope this code serves as a guide to help you to your own solution, unfortunately I'm at work at the moment and can't dedicate the time to writing the exact code for you. This should be pretty close I think without testing.
      ## whatever @selected is set to at the beginning ## is how your checkboxgroup will appear on loading ## Choose between one of these two lines #my @selected = @weekday; ##--> to select all #my @selected = ($weekday[#a number]); ##--> to select one foreach my $selected_day (@weekday) { my $checkbuttongroup = $rF->CheckbuttonGroup ( -list => [ $selected_day ], -orientation => 'vertical', -variable => \@selected, -font => 'bold', )->pack(-anchor => 'nw', -side => 'top', ); }
      Update: I should add that when you run the program whatever boxes you check is what @selected will contain. Eg. Monday, Wednesday etc. You can check it by using a "print $_ for @selected" on a button callback.

      Opps Update: Sorry this is how to do it in TK. I didn't see that you wanted it for CGI. If you ever get around to TK this is how its done. :-) <grinning>

      Dean
      The Funkster of Mirth
      Programming these days takes more than a lone avenger with a compiler. - sam
      RFC1149: A Standard for the Transmission of IP Datagrams on Avian Carriers