Book Edition/Online Access)"; #meeting name i.e. Fall Meeting my $late_reg_date = "20140215" ; #Late Registration date YYYYMMDD my $meeting_number="65"; #Meeting Number written to file (ask Daniel) my $meeting_date="May 30 - June 1, 2014"; #Date of meeting ie. Thrusday, June 21, 2001 or July 1-7, 2008 my $meeting_location="Hyatt Regency DFW International Airport, DFW Airport, TX"; # i.e. Richmond, VA my $refund_policy="\nNo refunds. All sales are final."; # Full text of the refund policy i.e. Full refund before June 1, 2000; 10% refund between June 1, 2000 and Jan 2, 2008; no refund after Jan 2, 2008 my $early_bird_date="0"; # set to 0 if there is no early bird special my $reginfo_buffer = ''; my $reginfo_buffer2 = ''; ###################### # Database Variables # ###################### my $update_database = 0; my $get_db_soldout = 1; my ($dsn); my ($sth); my @fields; my $SQL; my $member_no = ''; $main::cgi = new CGI; # to take advantage of the "param" decoding method $main::dbh = DBI->connect('DBI:mysql:spa:localhost', 'spadb_user','Alseides81', { PrintError => 0}) || die $DBI::errstr; !> #include ../../includes/header.iphtml remote_user(); $SQL = <prepare($SQL); $sth->execute; @fields = $sth->fetchrow; $sth->finish; $member_no = $fields[0]; } ################## # Sold Out Items # ################## my @sold_out_numbers; if ($get_db_soldout) { $sth = $main::dbh->prepare("SELECT workshop_no FROM meeting WHERE meeting_no = $meeting_number AND workshop_no > 0 AND total_registered >= capacity"); $sth->execute(); undef(@fields); while (@fields = $sth->fetchrow_array()) { push @sold_out_numbers, $fields[0]; } $sth->finish(); } else { @sold_out_numbers = qw(); # put WSNumbers of sold out workshops here } ##################### # Registration Types# ##################### my @reg_types; # @reg_types = (["T", "Testing", [1.5,1],[["SUB1", "Sub-Type 1"],["SUB2", "Sub-Type 2"]]]); # For Testing # Note -- Due to really poor planning if the reg_type does not have a sub_type but has a footnote you have to do this # @reg_types = (["T", "Testing", [1.5,1]); # For Testing # $reg_types[1][4] =1; @reg_types = (["1","IRPA Symposium Syllabus Book w/online syllabus access", [275, 275]]); # Registration types ##################### # Footnotes # ##################### #$reg_types[0][4]=[1]; #$reg_types[2][4]=[2]; #$reg_types[4][4]=[1,3]; #$reg_types[5][4]=[1,3]; #$reg_types[6][4]=[1,2]; #$reg_types[7][4]=[1,2]; #$reg_types[6][4]=[2]; # Formatting for @reg_types is (["Type1_Name_Written_to_File", "Type1_Description", [Type1_Late_Cost, Type1_Early_Cost], [["Sub_Type1_Name_Written_to_File", "Sub_Type1_Description"]], "Footnote_Number"],["Type2_Name_Written_to_File", "Type2_Description", [Type2_Late_Cost, Type2_Early_Cost]]) # i.e. (["Member","Society Member", [200, 100]],["NonMember", "Non-Member", [250, 200]]) # you can also do it this way if you like lots of lines and [] # $reg_types[0][0] = "Type1_Name_Written_to_File"; # use ONEDAY for oneday reg # $reg_types[0][1] = "Type1_Description"; # $reg_types[0][2][0] = "Type1_Late_cost"; # $reg_types[0][2][1] = "Type1_Early_cost"; # $reg_types[0][3][0][0] = "Type1_SubField1_Written_to_File"; # $reg_types[0][3][0][1] = "Type1_SubField1_Description"; # $reg_types[0][3][1][0] = "Type1_SubField2_Written_to_File"; # $reg_types[0][3][1][1] = "Type1_SubField2_Description"; # $reg_types[0][4] = ["Footnote Number"]; This is an arry in case there is more than one footnote ######################## # Accompanying Persons # ######################## my @extras; # =(50,35, 23002); my @mondaynightreception; # = (0,0, 23002); my @kidsmondaynightreception; # format @extras=(late_reg_price, early_reg_price, accountnumber) ################# # Workshops etc # ################# my @workshops; # @workshops = (["1" , "First Workshop", [1, .5], "200211011300", "200211011500", "000011"], ["2", "Second Workshop", [1, .5], "200211011400", "200211011500", "000011"]); # Workshops # @workshops = ( #["1", "Advanced Ultrasound Guided Regional Anesthesia", [250, 200], "201304021330", "23005"], #["2", "Simulation", [75, 60], "201304021330", "23005"], #["3", "Integrationg Acupuncture in Pediatric Peri-operative", [75, 60], "201304021330", "23005"], #); #Format for @workshops is (["WSNumber", "WS_Title", [WS_Late_Cost, WS_Early_Cost], "YYYYMMDDHHmm", "YYYYMMDDHHmm", "AccountNumber"]) # Get the WSNumbers and AccountNumbers from Daniel, Use 24hr clock for the date/time # if you like lots of lines and[] do it this way # $workshops[0][0]= "WSNumber"; # $workshops[0][1]= "WSTitle"; # $workshops[0][2][0]="Late_Cost"; # $workshops[0][2][1]="Early_Cost"; # $workshops[0][3]="YYYYMMDDHHmm"; Start Time # $workshops[0][4] = "AccountNumber"; ######## # PBLs # ######## my @pbls = (); # @pbls = ( #["9", "Table #1: T&A Gone Wild! Diagnosis and Treatment", [0, 0], "201304030730", "23004"], #["10", "Table #2: A six week onld with a 4-day history", [0, 0], "201304030730", "23004"], #["11", "Table #3: A Case of Lightening striking the same", [0, 0], "201304030730", "23004"], #["12", "Table #4: When your age-appropriate adolescent", [0, 0], "201304030730", "23004"], #["13", "Table #5: Circulatory Collapse in a Twelve Day", [0, 0], "201304030730", "23004"] #); ## Format is the same as workshops ####################### # Intensive Workshops # ####################### my @intensive_ws; #@intensive_ws=(["65", "Pediatric Pain Medicine Special Interest Group", [250, 250], "201303311000", "23006"]); # # @intensive_ws = (["1" , "Upper Extremity", [250, 200], "200204250800","40301"], ["2" , "Upper Extremity", [250, 200], "200204251300","40301"], ["3" , "Lower Extremity", [250, 200], "200204250800","40301"], ["4" , "Lower Extremity", [250, 200], "200204251300","40301"]); # # ## Format is the same as workshops ################## # Master Classes # ################## my @master_classes; # # @master_classes = (["23" , "Complications of Regional Anesthesia and Closed claim Cases", [65, 50], "200204261400","40303"], ["24" , "Making Upper Extremity Blocks Work in a Busy Clinical Practice", [65, 50], "200204261600","40303"], ["53" , "Imaging techniques for Chronic Pain Evaluation and Management", [65, 50], "200204270800","40303"], ["54" , "How to Appy Continuous Catheter Techniques for Orthopaedic Pain Management", [65, 50], "200204271000","40303"], ["55" , "Complimentary and Alternative Medical Therapies for Pain", [65, 50], "200204271400","40303"], ["56" , "New Drugs and Novel Techniques for Regional Anesthesia", [65, 50], "200204271600","40303"]); # # @master_classes = (["200", "WSNumber=200", [15, 3], "200204261400", "123"], # ["201", "WSNumber=201", [15, 2], "200204261400", "123"]); ## Format is the same as workshops #################### # Reception Guests # #################### my @guest_cost; #$guest_cost[1]="68"; #Reception guest cost -- Early reg #$guest_cost[0]="78"; #Reception guest cost -- Late reg my $gitem="33"; #WS number for reception (see Daniel) my $gaccount="24500"; # Account number for extra reception guests (see Gail) my $reception="Saturday BBQ"; # Text should read something like "I plan to attend the SPA Reception/Buffet at the Museum of Art" my $reception_guest; #="I plan to bring a guest "; ## This Really should be Intergrated with the Dinner Below ####################################################### # Dinner (different rates for each registration type) # ####################################################### my @receptions; # = (["1", "SNACC Dinner Symposium", # {"Member" => [0,0], # "NonMember" => [45,35], # "Resident" => [0,0], # "ResidentNonMem", => [45,35], # "CRNA" => [45,35], # "ONEDAY" => [175, 100] # }, "200210101800", "40340"], # ); # $receptions[0][0] # WS Number # $receptions[0][1] # Dinner Title # $receptions[0][2]{Reg_Type}[0]; # late fee # $receptions[0][2]{Reg_type}[1]; # early fee # $receptions[0][3] # YYYYMMDDhhmm Start Time # $receptions[0][4] # Account Number # $receptions[0][5] # Guests Not Yet Implemented ################# # Research Fund # ################# my $research_fund; # = $society . " Educational/Research Fund Donation (The $society is a 501(c) 3 organization and your donations are tax deductible as allowed by law. All voluntary contributions will be acknowledged.)" ; # Text for the research fund my @research; # = ("40230", "0", "0"); ############################# # Receptions, Dinners, etc. # ############################# my @bbq; #@bbq = (["33" , "Saturday BBQ", [78, 68], "200403060000", "24500"], ["34" , "Saturday Special Children's BBQ", [20, 15], "200403070100", "24500"] ); # like Workshops, but make sure times (which are not displayed on form) are different such as to make each entry unique - this does affect display ordering ################# # Custom Fields # ################# #This doen't work...didn't have time to do custom fields. ################### # Misc. Variables # ################### my $show_mbr_appl = 0; my %category; # %category=("C", "Cardiologist", "S", "Surgeon", "NA", "Neither"); # use O for Other (Other will be put into cat_other field) my @footnotes; # $footnotes[1]="Shipping and handling included"; # $footnotes[2]="Join $society now and save up to 25% on your registration fee."; # $footnotes[3]="You MUST complete the above membership application to select this registration category."; # $footnotes[4]="Pre-registration of Workshops/Evening Sessions is available to $society members only. If space is available, sessions will be opened to non-members on site."; my $filename = "/tmp/" . lc($form) . "_"; # where to write the txt files # my $pdf_form="../../events/2013/" . lc($form) . "/Regform.pdf:NOSSL"; #location of PDF registration form my $pdf_form="../ccassite/meetings/2013winter/CCAS_reg_form.pdf"; #location of PDF registration form print h2({-align=>'center'},"$meeting"); # print h3({-align=>'center'},"$meeting_location"); ################################### # Field List, and Required Fields # ################################### my %required_fields=("ssl_first_name", "First Name", "ssl_last_name", "Last Name", "ssl_ship_to_address2", "Address 2", "ssl_ship_to_city", "City", "ssl_ship_to_state", "State/Providence", "ssl_ship_to_zip", "Postal Code", "ssl_phone", "Office Phone", "ssl_email", "Email Address", "customer_name", "Name on Card", "ssl_card_number", "Credit Card Number", "ssl_exp_date", "Expiration Date", "ssl_cvv2cvc2", "Security Code", "ssl_avs_address", "Card Billing Address", "ssl_avs_zip", "Card Billing Zip Code", "reg_type", "Registration Type" ); ## Required Fields my %descriptions = ("Active", "Active (Physician): \$175", "Affiliate", "Affiliate (Non-Physician): \$175", "International", "International: \$50", "Active Joint SPA/CCAS", "Active Joint SPA/CCAS (Physician): \$200", "Affiliate Joint SPA/CCAS", "Affiliate Joint SPA/CCAS (Non-Physician): \$200", "International Joint SPA/CCAS", "Joint SPA/CCAS International: \$75", "Resident", "Resident: \$40", "Fellow", "Fellow: \$40", ); ############################# # Main Script -- Don't Edit # ############################# my %sold_out; foreach (@sold_out_numbers) { $sold_out{$_} = "1"; } my $cgi = new CGI; my $i =0; my $late_day=substr($late_reg_date, 6, 2); my $late_month=substr($late_reg_date, 4, 2)-1; my $late_year=substr($late_reg_date, 0, 4)-1900; my $cutoff_time = timelocal(59,59,23,$late_day,$late_month,$late_year); my $current_time = time; my $reduced_rate = 0; my $state = ""; if (substr($cgi->param('ssl_card_number'),0,1) eq "3") { $cgi->param(card_type => "Amex"); } elsif (substr($cgi->param('ssl_card_number'),0,1) eq "4") { $cgi->param(card_type => "Visa"); } elsif (substr($cgi->param('ssl_card_number'),0,1) eq "5") { $cgi->param(card_type => "MC"); } else { $cgi->param(card_type => "Disc"); } my $card_type_no = substr($main::cgi->param('ssl_card_number'), -4); if ((uc($cgi->param('country')) =~ /UNITED STATES/) || (uc($cgi->param('country')) =~ /U\.S\./) || (uc($cgi->param('country')) =~ /US/) || (uc($cgi->param('country')) =~ /USA/)) { $state = $cgi->param('ssl_ship_to_state'); } elsif (uc($cgi->param('ssl_ship_to_state')) ne "INTERNATIONAL") { $state = $cgi->param('ssl_ship_to_state'); } if ($cutoff_time >= $current_time) { $reduced_rate=1; } my $early_bird = 0; my $early_bird_cutoff_time; if ($early_bird_date > 0) { my $late_day=substr($early_bird_date, 6, 2); my $late_month=substr($early_bird_date, 4, 2)-1; my $late_year=substr($early_bird_date, 0, 4)-1900; $early_bird_cutoff_time = timelocal(0,0,0,$late_day,$late_month,$late_year); } if ($early_bird_cutoff_time > $ current_time) { $early_bird=1; } if ($cgi->param('Submit') eq "Continue") { my $mp = new PGP::GPG::MessageProcessor; $mp->{encrypt} = 1; $mp->{sign} = 0; $mp->{armor} = 1; $mp->{homedir} = "/home/apache/.gnupg"; $mp->{recipients} = [ '8749DDE6','B2B3B85A','F1501DD1' ]; my $input = new IO::Handle; # These could be be a Symbol::gensym my $output = new IO::Handle; my $error = ''; # It becomes ">&STDERR". my $status = new IO::Handle; my $pid = $mp->cipher( $input, $output, $error, $status ); my($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime; my $month=$mon+1; $year=$year+1900; $month = sprintf "%02.0f", $month; my $day = sprintf "%02.0f", $mday; my $date = $month . "/" . $day . "/" . $year; my $orderID=sprintf("%02d%02d%02d%02d%02d%02d%03d",$year % 100, $mon+1,$mday,$hour,$min,$sec,sprintf("%02d", rand(1000))); my $missing = ''; my $sender = $society . " Registration Request CGI "; my $recipient = "regforms\@societyhq.com"; my $subject = $society . " " . uc($form) . " - " . $cgi->param('ssl_last_name') . ", ". $cgi->param('ssl_first_name'); my $buffer = 0; my $cost = 0; my $regcost=0; my $j=0; my $counter = 1; my $tab=0; my $key = ""; my @text; my $subcat=$cgi->param('reg_type') . "reg_type_sub"; my @reg_types_sub=$cgi->param($subcat); # SPECIAL CASE FOR ONE WORKSHOP WITH ADDITIONAL INFO if ($cgi->param('WS201003240945A')) { $required_fields{'ws3represent'} = "Workshop 3: Representing"; $required_fields{'ws3team'} = "Workshop 3: Team Members"; } if ((%category) && (!$cgi->param('category'))) { $required_fields{'category'} = "Category"; } if ($show_mbr_appl) { if (($cgi->param('reg_type') eq "1" || $cgi->param('reg_type') eq "5" || $cgi->param('reg_type') eq "10") && (!$cgi->param('applyingfor'))) { $required_fields{"applyingfor"} = "You have selected a SPA Member Registration Category. You must complete the membership application: Category Applying For"; } } if (($show_mbr_appl) && ($cgi->param('applyingfor'))) { $required_fields{"month"} = "Date of Birth: Month"; $required_fields{"day"} = "Date of Birth: Day"; $required_fields{"year"} = "Date of Birth: Year"; $required_fields{"practice"} = "Type of Practice"; $required_fields{"institution"} = "Hospital/Institution"; } if (($cgi->param('applyingfor') eq "Resident" || $cgi->param('applyingfor') eq "Fellow")) { $required_fields{"endsmonth"} = "Residency/Fellowship Ends Date: Month"; $required_fields{"endsyear"} = "Residency/Fellowship Ends Date: Year"; $required_fields{"director"} = "Program Director"; } foreach (keys %required_fields) { if (!$cgi->param($_)) { $missing .= "
  • $required_fields{$_} is required
  • \n"; } if ($_ eq "reg_type") { for ($i=0; defined($reg_types[$i]); $i++) { # if (($reg_types[$i][0] eq $cgi->param('reg_type')) && (defined($reg_types[$i][3]))) { # if ((%category) && (!$cgi->param('category'))) { # $missing .= "
  • Category
  • \n"; # } # } } } } if ($cgi->param('fund')) { if (!($cgi->param('fund') =~ /^[0-9]*$/)) { $missing .= "
  • Education Research Fund Amount contains non-numeric characters
  • \n"; } } if ($cgi->param('extras')) { if (!($cgi->param('extras') =~ /^[0-9]*$/)) { $missing .= "
  • Number of guest contains non-numeric characters
  • \n"; } } if (($cgi->param('month')) || ($cgi->param('day')) || ($cgi->param('year'))) { if (!($cgi->param('month') =~ /^[0-9]*$/)) { $missing .= "
  • Date of Birth: Month contains non-numeric characters
  • \n"; } if (!($cgi->param('day') =~ /^[0-9]*$/)) { $missing .= "
  • Date of Birth: Day contains non-numeric characters
  • \n"; } if (!($cgi->param('year') =~ /^[0-9]*$/)) { $missing .= "
  • Date of Birth: Year contains non-numeric characters
  • \n"; } } if (($cgi->param('endsmonth')) || ($cgi->param('endsyear'))) { if (!($cgi->param('endsmonth') =~ /^[0-9]*$/)) { $missing .= "
  • Residency/Fellowship Ends: Month contains non-numeric characters
  • \n"; } if (!($cgi->param('endsyear') =~ /^[0-9]*$/)) { $missing .= "
  • Residency/Fellowship Ends: Year contains non-numeric characters
  • \n"; } } if (($cgi->param('adultguests')) || ($cgi->param('childguests'))) { if (!($cgi->param('adultguests') =~ /^[0-9]*$/)) { $missing .= "
  • Adult guests field contains non-numeric characters
  • \n"; } if (!($cgi->param('childguests') =~ /^[0-9]*$/)) { $missing .= "
  • Child guests field contains non-numeric characters
  • \n"; } } if ($missing) { print p({-style=>'color: #F00'},strong('Error - Required information was not provided on the submitted form. Please use the back button and correct the following:')); print "\n"; print p(""); } else { # print '\n"; print '
    '; $reginfo_buffer2 = ' '; $buffer = '
    Qty Description Price
    SALES RECEIPT Date: '.$date.'
       
    '; $buffer .= $society_name . '
    2209 Dickens Road
    Richmond, VA 23230
    (804) 282-9780 Phone
    (804) 282-0090 Fax
    ' . lc($society) . '@societyhq.com
    TO         '; $buffer .= $cgi->param('ssl_first_name') . " " . $cgi->param('ssl_last_name') . '
    '; $buffer .= $cgi->param('ssl_ship_to_address1') . '
    ' if $cgi->param('ssl_ship_to_address1'); $buffer .= $cgi->param('ssl_ship_to_address2') . '
    '; $buffer .= $cgi->param('ssl_ship_to_city') . ", " . $cgi->param('ssl_ship_to_state') . " " . $cgi->param('ssl_ship_to_zip') . '
    '; $buffer .= $cgi->param('ssl_ship_to_country') if $cgi->param('ssl_ship_to_country'); $buffer .= "
    Phone: " . $cgi->param('ssl_phone'); $buffer .= "
    Email: " . $cgi->param('ssl_email'); $buffer .= '
    '; $buffer .= '

    '; $buffer .= '
    PAYMENT METHOD CARD NUMBER
    ' . $cgi->param('card_type') . ' ****' . $card_type_no . '
    '; $buffer .= '

    '; $buffer .= ''; if ($cgi->param('category')) { $buffer .= "\nCategory: " . $cgi->param('category'); if ($cgi->param('category') eq "O") { $buffer .= " -- " . $cgi->param('cat_other'); } } # $buffer .= "\nAccompanying Person(s) Name(s): " . $cgi->param('accomp') if $cgi->param('accomp'); # $buffer .= "\nDietary Restrictions? " . $cgi->param('dietary') if $cgi->param('dietary'); # $buffer .= "\nABA Number: " . $cgi->param('aba_number'); # $buffer .="\n\nDescription:\n"; for ($i=0; defined($reg_types[$i]); $i++) { if ($cgi->param('reg_type') eq $reg_types[$i][0]) { # $buffer .= " " . $reg_types[$i][1]; $tab=length($reg_types[$i][1]); my $subtype_count=0; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= ""; $buffer .= "\n"; $reginfo_buffer2 .= "\n"; } else { # $buffer .=" \$"; # $buffer .= $reg_types[$i][2][$reduced_rate]; $buffer .= ""; $reginfo_buffer2 .= "\n"; $regcost = $reg_types[$i][2][$reduced_rate]; # if ($cgi->param('ssl_ship_to_country') ne "USA" and $cgi->param('ssl_ship_to_country') ne "Canada") { $regcost = $regcost+50; } $cost=$cost+$regcost; } } } #end first if $complete if ($cgi->param('ssl_ship_to_country') ne "USA" and $cgi->param('ssl_ship_to_country') ne "Canada") { $cost = $cost+50; $buffer .= ""; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $international=1; } my $mondaynightreceptioncost_total = $mondaynightreception[$reduced_rate] * $cgi->param('mondaynightreception'); $cost = $cost + $mondaynightreceptioncost_total; if ($cgi->param('mondaynightreception')) { my $mondaynightreception_total = 1; $buffer .= "\n\nI will attend the Friday Reception\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; for (my $i=0; $i < $mondaynightreception_total; $i++) { $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\"1"; $text[2] .= "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $mondaynightreception[2] . "\",\""; $text[2] .= $mondaynightreception[$reduced_rate] . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; $text[2] .= "TOTALCOST\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = 1 AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } } } my $extra_total = $extras[$reduced_rate] * $cgi->param('extras'); $cost = $cost + $extra_total; my $extras_total = $cgi->param('extras'); if ($cgi->param('extras')) { $buffer .= "\n" . $cgi->param('extras') . " Accompanying Person(s) \@ \$" . $extras[$reduced_rate] . "/person:\t\t\t\t \$" . $extra_total . "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; for (my $i=0; $i < $extras_total; $i++) { $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\"1"; $text[2] .= "\",\"0\",\""; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = 1 AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $extras[2] . "\",\""; $text[2] .= $extras[$reduced_rate] . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; $text[2] .= "TOTALCOST\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } if ($cgi->param('vegetarian')) { $buffer .= "\nI require vegetatrian meals\n"; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\"36"; $text[2] .= "\",\"0\",\""; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = 36 AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"\",\""; $text[2] .= "0\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; $text[2] .= "TOTALCOST\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } if ($cgi->param('kosher')) { $buffer .= "\nI require kosher meals\n"; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\"37"; $text[2] .= "\",\"0\",\""; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = 37 AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"\",\""; $text[2] .= "0\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; $text[2] .= "TOTALCOST\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } my $kidsmondaynightreceptioncost_total = $kidsmondaynightreception[$reduced_rate] * $cgi->param('kidsmondaynightreception'); $cost = $cost + $kidsmondaynightreceptioncost_total; my $kidsmondaynightreception_total = $cgi->param('kidsmondaynightreception'); if ($cgi->param('kidsmondaynightreception')) { $buffer .= "\n" . $cgi->param('kidsmondaynightreception') . " 12 and under Seafood Feast Attendees \@ \$" . $kidsmondaynightreception[$reduced_rate] . "/person:\t\t\t \$" . $kidsmondaynightreceptioncost_total . "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; for (my $i=0; $i < $kidsmondaynightreception_total; $i++) { $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\"1"; $text[2] .= "\",\"0\",\""; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = 1 AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $kidsmondaynightreception[2] . "\",\""; $text[2] .= $kidsmondaynightreception[$reduced_rate] . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; $text[2] .= "TOTALCOST\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } if (defined($workshops[0])) { # generate workshops for buffer and txt files $buffer .="\n\nWorkshops:\n"; my %u_dates; $u_dates{$_->[3]}++ for @workshops; my @wsdates=sort keys %u_dates; my $k=0; my $ws_count=0; for ($i=0; defined($wsdates[$i]); $i++) { if ($cgi->param("WS$wsdates[$i]A")) { for ($j=0; defined($workshops[$j]); $j++) { if ($cgi->param("WS$wsdates[$i]A") eq $workshops[$j][0]) { my $Wday=substr($workshops[$j][3], 6, 2); my $Wmonth=substr($workshops[$j][3],4,2); $Wmonth--; my $Wyear=substr($workshops[$j][3],0,4)-1900; my $Whour=substr($workshops[$j][3],8,2); my $Wmin=substr($workshops[$j][3],10,2); my $Wtime=timelocal(0,$Wmin,$Whour,$Wday,$Wmonth,$Wyear); my $Wdate = strftime("%B %d %Y -- %I:%M %p", (localtime($Wtime))); $buffer .= "\n\n$Wdate"; my $subbuffer = "\n -- " . $workshops[$j][1] . ":"; $buffer .= $subbuffer; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; # my $t_count=(floor((81 - length($workshops[$j][1]))/8+.5)-1); # my $t_count = 64 - length($workshops[$j][1]); my $t_count =72 - length($subbuffer); for (my $tabs = 1; $tabs<=$t_count; $tabs++) { # $buffer .= "\t"; $buffer .= " "; } $buffer .= "\t \$"; $buffer .= $workshops[$j][2][$reduced_rate]; $reginfo_buffer2 .= "\n"; $cost=$cost+$workshops[$j][2][$reduced_rate]; $ws_count++; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .=$workshops[$j][0] . "\",\"0\",\""; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = "$workshops[$j][0]" AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $workshops[$j][4] . "\",\""; if (($ws_count==2) && ($early_bird)) { $text[2] .= "0" . "\",\""; $buffer .= "\n\t\t\t\t\t\t\tEARLYBIRD BONUS\t-\$" . $workshops[$j][2][$reduced_rate]; $cost=$cost-$workshops[$j][2][$reduced_rate]; } else { $text[2] .= $workshops[$j][2][$reduced_rate] . "\",\""; } $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; if (($ws_count==2) && ($early_bird)) { $text[2] .= "TOTALCOST" . "\",\""; } else { $text[2] .= "TOTALCOST" . "\",\""; } $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } if ($cgi->param("WS$wsdates[$i]B")) { for ($j=0; defined($workshops[$j]); $j++) { if ($cgi->param("WS$wsdates[$i]B") eq $workshops[$j][0]) { $buffer .= "\n\t (Second Choice: $workshops[$j][1])"; } } } if ($cgi->param("WS$wsdates[$i]C")) { for ($j=0; defined($workshops[$j]); $j++) { if ($cgi->param("WS$wsdates[$i]C") eq $workshops[$j][0]) { $buffer .= "\n\t (Third Choice: $workshops[$j][1])"; } } } } else { $k++; } } if ($k==$i) { $buffer .= "\tNo workshops\n"; } } # end 2nd if complete if (defined($pbls[0])) { # generate PBLs for buffer and text files $buffer .= "\n\nPBLs: \n"; my %u_dates; $u_dates{$_->[3]}++ for @pbls; my @pbldates=sort keys %u_dates; my $k=0; for ($i=0; defined($pbldates[$i]); $i++) { if ($cgi->param("PBL$pbldates[$i]A")) { for ($j=0; defined($pbls[$j]); $j++) { if ($cgi->param("PBL$pbldates[$i]A") eq $pbls[$j][0]) { my $Wday=substr($pbls[$j][3], 6, 2); my $Wmonth=substr($pbls[$j][3],4,2); $Wmonth--; my $Wyear=substr($pbls[$j][3],0,4)-1900; my $Whour=substr($pbls[$j][3],8,2); my $Wmin=substr($pbls[$j][3],10,2); my $Wtime=timelocal(0,$Wmin,$Whour,$Wday,$Wmonth,$Wyear); my $Wdate = strftime("%B %d %Y -- %I:%M %p", (localtime($Wtime))); $buffer .= "\n\n$Wdate"; my $subbuffer .= "\n -- " . substr($pbls[$j][1],0,50) . " ... " . ":"; $buffer .= $subbuffer; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; # my $t_count=(floor((81 - length($subbuffer))/8+.5)-1); my $t_count=72 - length($subbuffer); for (my $tabs = 1; $tabs<=$t_count; $tabs++) { $buffer .= " "; # $buffer .= "\t"; } $buffer .= "\t \$"; $buffer .= $pbls[$j][2][$reduced_rate]; $reginfo_buffer2 .= "\n"; $cost=$cost+$pbls[$j][2][$reduced_rate]; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .= $pbls[$j][0] . "\",\"0\",\""; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = "$pbls[$j][0]" AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $pbls[$j][4] . "\",\""; $text[2] .= $pbls[$j][2][$reduced_rate] . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; $text[2] .= "TOTALCOST" . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } if ($cgi->param("PBL$pbldates[$i]B")) { for ($j=0; defined($pbls[$j]); $j++) { if ($cgi->param("PBL$pbldates[$i]B") eq $pbls[$j][0]) { $buffer .= "\n\t (Second Choice: PBL -- " . substr($pbls[$j][1],0,25) ."...)"; } } } if ($cgi->param("PBL$pbldates[$i]C")) { for ($j=0; defined($pbls[$j]); $j++) { if ($cgi->param("PBL$pbldates[$i]C") eq $pbls[$j][0]) { $buffer .= "\n\t (Third Choice: PBL -- " . substr($pbls[$j][1],0,25) ."...)"; } } } } else { $k++; } } if ($k==$i) { $buffer .= "\tNo pbls\n"; } } #end 3nd if $complete if (defined($intensive_ws[0])) { # generate intensive workshops for buffer and txt files $buffer .= "\n\nSpecial Interest Group - Pediatric Pain Medicine \n"; my %u_dates; $u_dates{$_->[3]}++ for @intensive_ws; my @wsdates=sort keys %u_dates; my $k=0; for ($i=0; defined($wsdates[$i]); $i++) { if ($cgi->param("IWS$wsdates[$i]A")) { for ($j=0; defined($intensive_ws[$j]); $j++) { if ($cgi->param("IWS$wsdates[$i]A") eq $intensive_ws[$j][0]) { my $Wday=substr($intensive_ws[$j][3], 6, 2); my $Wmonth=substr($intensive_ws[$j][3],4,2); $Wmonth--; my $Wyear=substr($intensive_ws[$j][3],0,4)-1900; my $Whour=substr($intensive_ws[$j][3],8,2); my $Wmin=substr($intensive_ws[$j][3],10,2); my $Wtime=timelocal(0,$Wmin,$Whour,$Wday,$Wmonth,$Wyear); my $Wdate = strftime("%B %d %Y -- %I:%M %p", (localtime($Wtime))); $buffer .= "\n\n$Wdate"; my $subbuffer .= "\n -- " . $intensive_ws[$j][1] . ":"; $buffer .= $subbuffer; # my $t_count=(floor((83 - length($intensive_ws[$j][1]))/8+.5)-1); my $t_count = 72 - length($subbuffer); for (my $tabs = 1; $tabs<=$t_count; $tabs++) { $buffer .= " "; # $buffer .= "\t"; } $buffer .= "\t \$"; $buffer .= $intensive_ws[$j][2][$reduced_rate]; $cost=$cost+$intensive_ws[$j][2][$reduced_rate]; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .=$intensive_ws[$j][0] . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $intensive_ws[$j][4] . "\",\""; $text[2] .= $intensive_ws[$j][2][$reduced_rate] . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\",\""; $text[2] .= "TOTALCOST" . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } if ($cgi->param("IWS$wsdates[$i]B")) { for ($j=0; defined($intensive_ws[$j]); $j++) { if ($cgi->param("IWS$wsdates[$i]B") eq $intensive_ws[$j][0]) { $buffer .= "\n\t (Second Choice: $intensive_ws[$j][1])"; } } } if ($cgi->param("IWS$wsdates[$i]C")) { for ($j=0; defined($intensive_ws[$j]); $j++) { if ($cgi->param("IWS$wsdates[$i]C") eq $intensive_ws[$j][0]) { $buffer .= "\n\t (Third Choice: $intensive_ws[$j][1])"; } } } } else { $k++; } } if ($k==$i) { $buffer .= "\tNo PALS Course\n"; } } #end 4nd if $complete if (defined($master_classes[0])) { # generate Master Classes for buffer and txt files $buffer .= "\n\nMaster Classes: \n"; my %u_dates; $u_dates{$_->[3]}++ for @master_classes; my @wsdates=sort keys %u_dates; my $k=0; my $ws_count=0; for ($i=0; defined($wsdates[$i]); $i++) { if ($cgi->param("MC$wsdates[$i]A")) { for ($j=0; defined($master_classes[$j]); $j++) { if ($cgi->param("MC$wsdates[$i]A") eq $master_classes[$j][0]) { my $Wday=substr($master_classes[$j][3], 6, 2); my $Wmonth=substr($master_classes[$j][3],4,2); $Wmonth--; my $Wyear=substr($master_classes[$j][3],0,4)-1900; my $Whour=substr($master_classes[$j][3],8,2); my $Wmin=substr($master_classes[$j][3],10,2); my $Wtime=timelocal(0,$Wmin,$Whour,$Wday,$Wmonth,$Wyear); my $Wdate = strftime("%B %d %Y -- %I:%M %p", (localtime($Wtime))); $buffer .= "\n\n$Wdate"; my $subbuffer .= "\n -- " . substr($master_classes[$j][1],0,50) . "... :"; $buffer .= $subbuffer; # my $t_count=(floor((77 - length($master_classes[$j][0]) - length($master_classes[$j][1]))/8+.5)-1); my $t_count = 72 - length($subbuffer); for (my $tabs = 1; $tabs<=$t_count; $tabs++) { $buffer .= " "; # $buffer .= "\t"; } $buffer .= "\t \$"; $buffer .= $master_classes[$j][2][$reduced_rate]; $cost=$cost+$master_classes[$j][2][$reduced_rate]; $ws_count++; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .=$master_classes[$j][0] . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $master_classes[$j][4] . "\",\""; $text[2] .= $master_classes[$j][2][$reduced_rate] . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); # if ($CyberCash) { # $text[2] .= "_C"; # } $text[2] .= "\",\""; $text[2] .= "TOTALCOST" . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } } else { $k++; } } if ($k==$i) { $buffer .= "\tNo Master Classes\n"; } } #end 5nd if $complete ### Begin Reception Guests # note proper tab spacing not yet implemented if (@guest_cost) { # 6th complete (for Reception Guests) my $gcost=0; if ($cgi->param('guests')==1) { $buffer .= "\n\t--Will attend Reception \n"; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .= $gitem . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $gaccount . "\", \"" . $gcost . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); # if ($CyberCash) { # $text[2] .= "_C"; # } $text[2] .= "\",\"" . $gcost . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; $gcost=$guest_cost[$reduced_rate]*$cgi->param('guests'); $cost=$cost+$gcost; $buffer .="Extra Reception Ticket (" . $cgi->param('guests') . "):\t\t\t\t\t\t \$" . $gcost . "\n"; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .= $gitem . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $gaccount . "\", \"" . $gcost . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); # if ($CyberCash) { # $text[2] .= "_C"; # } $text[2] .= "\",\"" . $gcost . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } else { if ($cgi->param('attend') eq "yes") { $gcost=0; $buffer .= "\n Will attend Reception \n"; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .= $gitem . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $gaccount . "\", \"" . $gcost . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); # if ($CyberCash) { # $text[2] .= "_C"; # } $text[2] .= "\",\"" . $gcost . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } } # end 6th complete ### End Reception Guest ### Begin Research Education Fund # Note proper tab spacing not yet implemented if (defined($research[0])) { # 7th complete for fund if ($cgi->param('fund')>0) { $cost=$cost+$cgi->param('fund'); $buffer .="\nResearch Education Fund:\t\t\t\t\t\t \$" . $cgi->param('fund') . "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $text[2] .="\"" . $orderID . "\",\"" . $research[1] . "\",\""; $text[2] .= $research[2] . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $research[0] . "\",\"" . $cgi->param('fund') . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); # if ($CyberCash) { # $text[2] .= "_C"; # } $text[2] .= "\",\"" . "TOTALCOST" . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } # End 7th complete ### End Research Education Fund ### Dinners if (defined($receptions[0])) { # 8th complete for dinners $buffer .= "\n\nDinners:"; my %u_dates; $u_dates{$_->[3]}++ for @receptions; my @wsdates=sort keys %u_dates; my $k=0; my $ws_count=0; for ($i=0; defined($wsdates[$i]); $i++) { # cycle through dates if ($cgi->param("dinner$wsdates[$i]")) { # Dinner check for ($j=0; defined($receptions[$j]); $j++) { # cycle through dinners if ($cgi->param("dinner$wsdates[$i]") eq $receptions[$j][0]) { # Selected Dinner matches my $Wday=substr($receptions[$j][3], 6, 2); my $Wmonth=substr($receptions[$j][3],4,2); $Wmonth--; my $Wyear=substr($receptions[$j][3],0,4)-1900; my $Whour=substr($receptions[$j][3],8,2); my $Wmin=substr($receptions[$j][3],10,2); my $Wtime=timelocal(0,$Wmin,$Whour,$Wday,$Wmonth,$Wyear); my $Wdate = strftime("%B %d %Y -- %I:%M %p", (localtime($Wtime))); $buffer .= "\n$Wdate"; my $subbuffer .= "\n -- " . substr($receptions[$j][1],0,50); if ($receptions[$j][1] ne substr($receptions[$j][1],0,50)) { $subbuffer .= "... :"; } else { $subbuffer .= ":"; } $buffer .= $subbuffer; # my $t_count=(floor((77 - length($receptions[$j][0]) - length($receptions[$j][1]))/8+.5)-1); my $t_count = 72 - length($subbuffer); for (my $tabs = 1; $tabs<=$t_count; $tabs++) { $buffer .= " "; # $buffer .= "\t"; } $buffer .= "\t \$"; $buffer .= $receptions[$j][2]{$cgi->param('reg_type')}[$reduced_rate]; $cost=$cost+$receptions[$j][2]{$cgi->param('reg_type')}[$reduced_rate]; $ws_count++; $text[2] .="\"" . $orderID . "\",\"" . $meeting_number . "\",\""; $text[2] .=$receptions[$j][0] . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $receptions[$j][4] . "\",\""; $text[2] .= $receptions[$j][2]{$cgi->param('reg_type')}[$reduced_rate] . "\",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); # if ($CyberCash) { # $text[2] .= "_C"; # } $text[2] .= "\",\""; $text[2] .= "TOTALCOST" . "\",\""; $text[2] .= $society . "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } } } else { $k++; } } if ($k==$i) { $buffer .= "\tNo Dinners\n"; } }# end 8th complete ### End Dinners my $guest_names = $cgi->param('guestnames'); if (($guest_names) && (($cgi->param('adultguests')>0) || ($cgi->param('childguests')>0))) { $buffer .="\nGuest names: " . $guest_names . "\n"; } ############################ # Calculate Membership Cost # ############################ if (($show_mbr_appl) && ($cgi->param('applyingfor'))) { my %membership = ("Active", 175, "Affiliate", 175, "International", 50, "Active Joint SPA/CCAS", 200, "Affiliate Joint SPA/CCAS", 200, "International Joint SPA/CCAS", 75, "Resident", 40, "Fellow", 40); $cost=$cost+$membership{$cgi->param('applyingfor')}; if ($membership{$cgi->param('applyingfor')} eq "200") { $text[2] .= "\"" . $orderID . "\",\"0\",\"" . "0" . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $dues_account . "\"," . "150" . ",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\"," . "TOTALCOST" . ",\""; $text[2] .= $society . "\",\""; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; $text[2] .= "\"" . $orderID . "\",\"0\",\"" . "0" . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . "23010" . "\"," . "50" . ",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\"," . "TOTALCOST" . ",\""; $text[2] .= $society . "\",\""; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } elsif ($membership{$cgi->param('applyingfor')} eq "75") { $text[2] .= "\"" . $orderID . "\",\"0\",\"" . "0" . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $dues_account . "\"," . "50" . ",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\"," . "TOTALCOST" . ",\""; $text[2] .= $society . "\",\""; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; $text[2] .= "\"" . $orderID . "\",\"0\",\"" . "0" . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . "23010" . "\"," . "25" . ",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\"," . "TOTALCOST" . ",\""; $text[2] .= $society . "\",\""; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } else { $text[2] .= "\"" . $orderID . "\",\"0\",\"" . "0" . "\",\"0\",\""; $text[2] .= $cgi->param('reg_type') . "\",\""; $text[2] .= $date . "\",\"" . $dues_account . "\"," . $membership{$cgi->param('applyingfor')} . ",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\"," . "TOTALCOST" . ",\""; $text[2] .= $society . "\",\""; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; } $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; $reginfo_buffer2 .= "\n"; ########################## # Membership Information # ########################## $buffer .= "\n============================================================================="; $buffer .= "\nMEMBERSHIP INFORMATION\n"; $buffer .= "\nApplication for: " . $descriptions{$cgi->param('applyingfor')}; $buffer .= "\n\nDate of Birth: " . $cgi->param('month') . "/" . $cgi->param('day') . "/" . $cgi->param('year'); $buffer .= "\nPractice Type: " . $cgi->param('practice'); $buffer .="\nInstitution:: " . $cgi->param('institution'); $buffer .="\nResidency/Fellowship ends: " . $cgi->param('endsmonth') . " - " . $cgi->param('endsyear'); $buffer .="\nProgram Director: " . $cgi->param('director'); } $buffer .= ''; $buffer .= ''; $buffer .= "
    QUANTITY DESCRIPTION COST
    " . $counter . "$reg_types[$i][1]"; $buffer .= "
    " . $counter . "$reg_types[$i][1]"; $counter++; for ($j=0; defined($reg_types[$i][3][$j]); $j++) { foreach my $rts (@reg_types_sub) { if ($rts eq $reg_types[$i][3][$j][0]) { $buffer .= "(" . $reg_types[$i][3][$j][1] . ")"; $tab += length($reg_types[$i][3][$j][1]) +2; $subtype_count++; } } } # my $t_count=(floor((75-$tab)/8+.5)-1); my $t_count= 64-$tab; if ($cgi->param('reg_type') eq "ONEDAY") { # $t_count = $t_count-3; $t_count = $t_count - 18; } for (my $tabs=0; $tabs<$t_count; $tabs++) { # $buffer .= "\t"; # $buffer .=" "; } ### Deal with ONEDAY costs here if ($cgi->param('reg_type') eq "ONEDAY") { $regcost=$subtype_count * $reg_types[$i][2][$reduced_rate]; $cost = $cost + $regcost; $buffer .= "$subtype_count days \@ \$" . $reg_types[$i][2][$reduced_rate] . "/day= \$" . $regcost; $reginfo_buffer2 .= " $subtype_count days \@ \$" . $reg_types[$i][2][$reduced_rate] . "/day\$$regcost
    \$$reg_types[$i][2][$reduced_rate]
    \$$reg_types[$i][2][$reduced_rate]
    1Additional international shipping fee\$50
    " . "1" . "Additional international shipping fee\$50
    " . $counter++ . "I will attend the Friday Reception\$$mondaynightreceptioncost_total
    " . $counter++ . "" . $cgi->param('extras') . " Accompanying Person(s) \@ \$" . $extras[$reduced_rate] . "/person\$$extra_total
    " . $counter++ . "" . $cgi->param('kidsmondaynightreception') . " 12 and under Seafood Feast Attendees \@ \$" . $kidsmondaynightreception[$reduced_rate] . "/person\$$kidsmondaynightreceptioncost_total
    " . $counter++ . "$workshops[$j][1]\$$workshops[$j][2][$reduced_rate]
    " . $counter++ . "$pbls[$j][1]\$$pbls[$j][2][$reduced_rate]
    " . $counter++ . "$society Education/Research Fund Donation\$" . $cgi->param('fund') . "
    " . $counter++ . "$descriptions{$cgi->param('applyingfor')}\$$membership{$cgi->param('applyingfor')}
    Total: $'.$cost.'

    "; $buffer .= '

    Thank you for your order!

    '; $reginfo_buffer2 .= "Total Amount Due: \n"; $reginfo_buffer2 .= "\$$cost\n"; $reginfo_buffer2 .= "\n"; ############################################## # Totals, Cybercash, Write to file, etc # ############################################## # $buffer .= "\n============================================================================="; # $buffer .= "\nTotal:\t\t\t\t\t\t\t\t\t \$" . $cost; # $buffer .= "\n\nCredit Card Information"; my $new_card_no = substr($cgi->param('ssl_card_number'), 0, 2) . "********" . substr($cgi->param('ssl_card_number'), -4); # $buffer .= "\n\nCard Type: " . $cgi->param('card_type') . "\nCard Number: " . $new_card_no . "\nExpiration. Date: " . $cgi->param('ssl_exp_date'); ########## # Survey # ########## if ($cgi->param('hear_about_meeting')) { my $survey_buffer .="\n\n\n\nSurvey\n"; $survey_buffer .= "How did you hear about the meeting? \n"; my @hear_about = $cgi->param('hear_about_meeting'); foreach (@hear_about) { $survey_buffer .= "\t -- $_ \n"; } $buffer .= $survey_buffer; } if ($cgi->param('vascular_track')) { my $survey2_buffer = "\n\nAre you attending this meeting this meeting because of the Vascular Track?\n"; my @vascular_track = $cgi->param('vascular_track'); foreach (@vascular_track) { $survey2_buffer .= "\t -- $_ \n"; } $buffer .= $survey2_buffer; } ## End Survey $buffer .= "

    Refund Policy: $refund_policy

    "; ################# # Write to File # ################# $text[1]="\"" . $orderID . "\",\"". $society . "\",\"" . $cgi->param('ssl_last_name') . "\",\""; $text[1] .= $cgi->param('title') . "\",\"" . $cgi->param('ssl_first_name') . "\",\""; $text[1] .= " \",\""; #Address3 field $text[1] .= $cgi->param('ssl_ship_to_address1') . "\",\"" . $cgi->param('ssl_ship_to_address2') . "\",\""; $text[1] .= $cgi->param('ssl_ship_to_city') . "\",\"" . $state . "\",\""; $text[1] .= $cgi->param('ssl_ship_to_zip') . "\",\"" . $cgi->param('ssl_ship_to_country') . "\",\""; $text[1] .= $cgi->param('ssl_phone') ."\",\"" . $cgi->param('fax') . "\",\""; $text[1] .= $cgi->param('ssl_email') . "\",\""; $text[1] .= $cgi->param('ssl_email') . "\",\""; $text[1] .= $cgi->param('aba_number') . "\",\""; $text[1] .= $member_no . "\"\n"; $text[2] .= "\"" . $orderID . "\",\"" . $meeting_number . "\",\"0\",\"0\",\""; if ($update_database) { $main::dbh->do(qq{LOCK TABLES meeting WRITE}); $main::dbh->do(qq{UPDATE meeting set total_registered = total_registered + 1 WHERE meeting_no = "$meeting_number" AND workshop_no = 0 AND breakout_no = 0}); $main::dbh->do(qq{UNLOCK TABLES}); } # if ($cgi->param('category')) { # $text[2] .= $cgi->param('category'). '/' . $cgi->param('reg_type'); # } else { $text[2] .= $cgi->param('reg_type'); # } foreach (@reg_types_sub) { $text[2] .= "/" . $_ ; } $text[2] .= "\",\""; if ($international) { $regcost = $regcost+50; } $text[2] .= $date . "\",\"" . $account . "\"," . $regcost . ",\""; $text[2] .= $cgi->param('card_type') . "*" . substr($cgi->param('ssl_card_number'), -4); $text[2] .= "\"," . "TOTALCOST" . ",\"" . $society; $text[2] .= "\","; $text[2] .= $cgi->param('ssl_last_name'); $text[2] .= "\",\""; $text[2] .= $cgi->param('ssl_first_name'); $text[2] .= "\"\n"; my @writefiles; $writefiles[1] = $filename . $orderID . "_1.txt"; $writefiles[2] = $filename . $orderID . "_12.txt"; my $writefile; for ($i=1; defined($text[$i]); $i++) { $text[$i] =~ s/TOTALCOST/$cost/g; } for ($i=1; $i<=2; $i++) { $writefile=$writefiles[$i]; # my $texttofile='$text' . $i; if(open(FILE, ">>$writefile")) { flock(FILE, 2); seek(FILE, 0, 2); print FILE $text[$i]; close FILE; # $main::dbh->disconnect(); } else { die "Could NOT open file $i"; } } my $bufferfile = $filename . $orderID . "_buffer"; if(open(FILE, ">$bufferfile")) { flock(FILE, 2); seek(FILE, 0, 2); print FILE $buffer; close FILE; } else { die "Could NOT write buffer file $bufferfile"; } # end Write to File print h4("Checkout"); print p("Please verify the following order and payment information before submitting. Use the back button to make corrections."); print p(""); $reginfo_buffer = '\n"; $reginfo_buffer .= "
    Shipping Information Receipt Information
    '; $reginfo_buffer .= $cgi->param('ssl_first_name'); $reginfo_buffer .= " " . $cgi->param('ssl_last_name'); $reginfo_buffer .= " " . $cgi->param('title') . "\n"; $reginfo_buffer .= "
    " . $cgi->param('ssl_ship_to_address1') if $cgi->param('ssl_ship_to_address1'); $reginfo_buffer .= "
    " . $cgi->param('ssl_ship_to_address2') if $cgi->param('ssl_ship_to_address2'); $reginfo_buffer .= "
    " . $cgi->param('ssl_ship_to_city') . ", " . $cgi->param('ssl_ship_to_state') . " " . $cgi->param('ssl_ship_to_zip'); $reginfo_buffer .= "
    " . $cgi->param('ssl_ship_to_country'); $reginfo_buffer .= "
    " . $cgi->param('ssl_phone') if $cgi->param('ssl_phone'); $reginfo_buffer .= "
    " . $cgi->param('email') if $cgi->param('ssl_email'); $reginfo_buffer .= "
    "; if ($cgi->param('ssl_email')) { $reginfo_buffer .= "Your receipt will be emailed to this email address. Receipts are sent by email only.\n"; $reginfo_buffer .= "

       " . $cgi->param('ssl_email'); } else { $reginfo_buffer .= "No email address was provided for delivery of your confirmation letter. Confirmation letters are sent by email only.\n"; } $reginfo_buffer .= "
    \n"; print "$reginfo_buffer"; print "$reginfo_buffer2"; print h4('Payment Information:'); my $new_card_no2 = substr($cgi->param('ssl_card_number'), 0, 2) . "********" . substr($cgi->param('ssl_card_number'), -4); print "

    " . $cgi->param('card_type') . ": " . $new_card_no2 . "
    \n"; print "Expiration Date: " . $cgi->param('ssl_exp_date') . "

    \n"; print "
    \n"; print hidden(-name=>'ssl_last_name'); print hidden(-name=>'ssl_first_name'); print hidden(-name=>'title'); print hidden(-name=>'ssl_ship_to_address1'); print hidden(-name=>'ssl_ship_to_address2'); print hidden(-name=>'ssl_ship_to_city'); print hidden(-name=>'ssl_ship_to_state'); print hidden(-name=>'ssl_ship_to_country'); print hidden(-name=>'ssl_phone'); print hidden(-name=>'ssl_email'); print hidden(-name=>'card_type'); print hidden(-name=>'customer_name'); print hidden(-name=>'ssl_card_number'); print hidden(-name=>'ssl_exp_date'); print hidden(-name=>'ssl_cvv2cvc2'); print hidden(-name=>'ssl_avs_address'); my $avs_zip = substr($cgi->param('ssl_avs_zip'), 0, 9); print< EOF print p(strong('Refund Policy:'), $refund_policy); print p({-style=>'color: #F00'},strong('By clicking submit, you authorize the society to charge your credit card. Please do NOT click submit more than once or you may be charged twice.')); print "\n"; # print ''; print "\n"; print "
    \n"; } } else { my @countries = ("Afghanistan","Albania","Algeria","Angola","Antigua and Barbuda","Argentina","Armenia","Australia","Austria","Azerbaijan","Bahamas","Bahrain","Bangladesh","Barbados","Belarus","Belgium","Belize","Benin","Bhutan","Bolivia","Bosnia and Herzegovina","Botswana","Brazil","Brunei Darussalam Bulgaria","Burkina Faso","Burma (Myanmar)","Burundi","Cambodia","Cameroon","Canada","Cape Verde","Central African Rep","Chad","Chile","China","Colombia","Comoros","Congo","Congo, Democratic Republic","Costa Rica","Cote d'Ivoire","Croatia","Cuba","Cyprus","Czech Republic","Denmark","Djibouti","Dominica","Dominican Republic","East Timor","Ecuador","Egypt","El Salvador","Equatorial Guinea","Eritrea","Estonia","Ethiopia","Fiji","Finland","France","Gabon","Gambia","Georgia","Germany","Ghana","Greece","Grenada","Guatemala","Guinea","Guinea-Bissau","Guyana","Haiti","Honduras","Hungary","Iceland","India","Indonesia","Iran","Iraq","Ireland","Israel","Italy","Jamaica","Japan","Jordan","Kazakhstan","Kenya","Kiribati","Kuwait","Kyrgyzstan","Laos","Latvia","Lebanon","Lesotho","Liberia","Libya","Liechtenstein","Lithuania","Luxembourg","Macedonia","Madagascar","Malawi","Malaysia","Maldives","Mali","Malta","Marshall Islands","Mauritania","Mauritius","Mexico","Micronesia","Moldova","Monaco","Mongolia","Morocco","Mozambique","Myanmar","Namibia","Nauru","Nepal","New Zealand","Nicaragua","Niger","Nigeria","North Korea","Norway","Oman","Pakistan","Palau","Panama","Papua New Guinea","Paraguay","Peru","Philippines","Poland","Portugal","Qatar","Romania","Russia","Rwanda","St. Kitts & Nevis","St.Lucia","St. Vincent","Samoa","San Marino","Sao Tome & Principe","Saudi Arabia","Senegal","Serbia & Montenegro","Seychelles","Sierra Leone","Singapore","Slovakia","Slovenia","Solomon Islands","Somalia","South Africa","South Korea","Spain","Sri Lanka","Sudan","Suriname","Swaziland","Sweden","Switzerland","Syria","Taiwan","Tajikistan","Tanzania","Thailand","The Netherlands","Togo","Tonga","Trinidad and Tobago","Tunisia","Turkey","Turkmenistan","Tuvalu","Uganda","Ukraine","United Arab Emirates","United Kingdom","USA","Uruguay","Uzbekistan","Vanuatu","Venezuela","Vietnam","Western Sahara","Yemen","Yugoslavia","Zaire","Zambia","Zimbabwe"); $SQL = <prepare($SQL); $sth->execute; @fields = $sth->fetchrow; $sth->finish(); my $elem = 0; foreach $elem (@fields) { $elem = encode_entities($elem); } } ###Get Script Name-- $i=script_name(); my @action=split("/", $i); $i=@action; $i--; print<Were you unable to attend one of the Intensive Review of Pediatric Anesthesia (IRPA) courses this year? SPA has a limited number of IRPA syllabus books available for purchase and limited to one per person.

    You will receive the printed IRPA syllabus and access to the online syllabus files.

    IRPA Syllabus

    This symposium will reinforce your knowledge of the theory and practice of pediatric anesthesiology. Lectures provide a comprehensive review of Pediatric Anesthesiology, reinforcing the basic sciences, core physiologic principles, and clinically applicable concepts. We have assembled a renowned group of faculty educators from our nation's premier teaching programs for this thorough review of pediatric anesthesiology.

    Non Member Price:  \$325.00
    Your Price: \$275.00
    You Save: \$50.00

    \$50 shipping and handling fee will be added for addresses outside US and Canada

     

    Shipping Information

    REQUIRED FIELDS ARE MARKED WITH AN ASTERISK (*)

    EOF if ($get_mbr_info) { # print ' # # # '; } print< EOF if (%category) { print ' '; } print '
    The contact information below is what is currently in your '.$society.' member record. If you make any changes on this registration form, the information currently in your member record will be deleted and updated with the new information.
    Last Name*:
    First Name*:
    Title (e.g. MD, DO):
    Address 1:
    Address 2*:
    City*:
    State*:
    Postal Code*:
    Country*:
    Office Phone*:
    Email*:
    Category: Are you a: '; foreach (keys %category) { print ""; print ""; if ($_ eq "O") { print " "; } } print '
    '; if ($show_mbr_appl) { print< EOF } print< -->
    Join $society now and save up to 25% on your registration fee! (Non-Member US & Canada and Non-Member Resident/Fellow registration categories that meet the eligibility requirements).

    Membership Application (All Fields are Required)

    Membership Category Applying For:

    Eligibility Requirements










    Date of Birth (MM/DD/YY):
    Type of Practice:


    Hospital/Institution:
    Residency/Fellowship ends (MM/YY):
    Program Director:
    Dietary Restrictions?

     

     

    Payment Information EOF if ($show_mbr_appl) { print '
    Member registration fees apply if you completed the preceding membership application.
    '; } print ''; if (!$onsite) { print< \n"; print "\t\n"; print "\n" if !$onsite; print "\t\n"; print "\n"; } print ""; !>
      Through
    EOF print strftime("%B %d, %Y", (localtime($cutoff_time))); !>
    After
           
    \n"; print ""; print $reg_types[$i][1]; if (defined($reg_types[$i][4])) { for (my $ii=0; defined($reg_types[$i][4][$ii]); $ii++) { print "(" . $reg_types[$i][4][$ii] . ")"; } } if (defined($reg_types[$i][3])) { print "
    "; for (my $j=0; defined($reg_types[$i][3][$j]); $j++) { print "" . $reg_types[$i][3][$j][1] . " "; } print "
    "; } print "
    \$" . $reg_types[$i][2][1] if !$onsite; if ($reg_types[$i][0] eq "ONEDAY") { print "/day"; } print "\$" . $reg_types[$i][2][0]; if ($reg_types[$i][0] eq "ONEDAY") { print "/day"; } print "
    "; for ($i=1; defined($footnotes[$i]); $i++) { print "
      ($i) " . $footnotes[$i]; } print "
     
    I will attend the Friday Reception Complimentary  
     
    Number of Accompanying Persons: # @
    Accompanying Person Fee includes: Entrance to Exhibit Hall, Welcome Reception, and Continental Breakfasts.
    $/person $/person
     
    Seafood Feast (children 12 and under) $/person $/person
     
    Free Free
    $ $
           
           
           
    Dinners
    [3]}++ for @receptions; my @dinnerdates=sort keys %u_dates; my $day=0; my $month=0; my $year=0; my $hour=0; my $min=0; my $time=0; my $k=0; foreach (@dinnerdates) { # cycle through dates print "\n"; for ($i=0; defined($receptions[$i]); $i++) { # cycle through dinners if ($dinnerdates[$k]==$receptions[$i][3]) { # Date = Dinner print "\n"; print ""; for (my $j=0; defined($reg_types[$j]); $j++) { # cycle through reg types and print descriptions print ""; print ""; print ""; } } } $k++; print ""; } !>
         
    Dinners --"; $day=substr($dinnerdates[$k], 6, 2); $month=substr($dinnerdates[$k],4,2); $month--; $year=substr($dinnerdates[$k],0,4)-1900; $hour=substr($dinnerdates[$k],8,2); $min=substr($dinnerdates[$k],10,2); $time=timelocal(0,$min,$hour,$day,$month,$year); print strftime("%B %d %Y -- %I:%M %p", (localtime($time))); print "
    $receptions[$i][1]
     
  • $reg_types[$j][1]
  • \$$receptions[$i][2]{$reg_types[$j][0]}[1]\$$receptions[$i][2]{$reg_types[$j][0]}[0]
     
     
           
     
     
    $.00
    (numbers only)
     
     
           
    Special Interest Group — Pediatric Pain Medicine
    [3]}++ for @intensive_ws; my @iwsdates=sort keys %u_dates; my $day=0; my $month=0; my $year=0; my $hour=0; my $min=0; my $time=0; my $k=0; foreach (@iwsdates) { print "\n"; for ($i=0; defined($intensive_ws[$i]); $i++) { if ($iwsdates[$k]==$intensive_ws[$i][3]) { if ($sold_out{$intensive_ws[$i][0]} != "1") { print "\n"; print "\n"; } else { print "\n"; print "\n"; } } } $k++; } !>
        
    "; $day=substr($iwsdates[$k], 6, 2); $month=substr($iwsdates[$k],4,2); $month--; $year=substr($iwsdates[$k],0,4)-1900; $hour=substr($iwsdates[$k],8,2); $min=substr($iwsdates[$k],10,2); $time=timelocal(0,$min,$hour,$day,$month,$year); print strftime("%B %d %Y -- %I:%M %p", (localtime($time))); print "
    $intensive_ws[$i][1]\$$intensive_ws[$i][2][1]\$$intensive_ws[$i][2][0]
    Sold Out$intensive_ws[$i][1]Sold Out
     
           
           
    Master Classes
    Please select your 1st choice for each session [3]}++ for @master_classes; my @wsdates=sort keys %u_dates; my $day=0; my $month=0; my $year=0; my $hour=0; my $min=0; my $time=0; my $k=0; foreach (@wsdates) { print ""; for ($i=0; defined($master_classes[$i]); $i++) { if ($wsdates[$k]==$master_classes[$i][3]) { if ($sold_out{$master_classes[$i][0]} != "1") { print ""; if ($master_classes[$i][2][$reduced_rate] > 0) { print ""; } else { print ""; } } else { print ""; print ""; } } } $k++; } !>
        
    Master Class -- "; $day=substr($wsdates[$k], 6, 2); $month=substr($wsdates[$k],4,2); $month--; $year=substr($wsdates[$k],0,4)-1900; $hour=substr($wsdates[$k],8,2); $min=substr($wsdates[$k],10,2); $time=timelocal(0,$min,$hour,$day,$month,$year); print strftime("%B %d %Y -- %I:%M %p", (localtime($time))); print "
    $master_classes[$i][1]\$$master_classes[$i][2][1]\$$master_classes[$i][2][0]
    $master_classes[$i][1]
    Sold Out$master_classes[$i][1]Sold Out
     
    \n"; } !> [3]}++ for @workshops; my @wsdates=sort keys %u_dates; my $day=0; my $month=0; my $year=0; my $hour=0; my $min=0; my $time=0; my $k=0; foreach (@wsdates) { print "\n"; print ""; print "\n"; for ($i=0; defined($workshops[$i]); $i++) { if ($wsdates[$k]==$workshops[$i][3]) { # wsdate matches workshop date if ($sold_out{$workshops[$i][0]} != "1") { print ""; if ($u_dates{$wsdates[$k]} > 1) { print "\n "; } else { print "\n"; } if ($u_dates{$wsdates[$k]} > 2) { print "\n"; } else { print "\n"; } if ($workshops[$i][2][$reduced_rate] > 0) { print ""; } else { print ""; } } else { print "\n"; print ""; } } # end wsdate matches workshop date } $k++; } !>
    Workshops -- (select your 1st, 2nd, and 3rd choices for each session)
    We regret that there is no waiting list for sold out workshops

    Earlybird Bonus: Sign up for a Workshop today and get the second workshop free"; print "
    Bonus good until " . strftime("%B %d, %Y", (localtime($early_bird_cutoff_time))) . ". Does not apply to Intensive Workshops, Master Classes or PBL Discussions
             

    1st2nd3rdWorkshops -- "; $day=substr($wsdates[$k], 6, 2); $month=substr($wsdates[$k],4,2); $month--; $year=substr($wsdates[$k],0,4)-1900; $hour=substr($wsdates[$k],8,2); $min=substr($wsdates[$k],10,2); $time=timelocal(0,$min,$hour,$day,$month,$year); print strftime("%A -- %B %d %Y -- %I:%M %p", (localtime($time))); print "

    \ \;\ \;$workshops[$i][1]\$$workshops[$i][2][1]\$$workshops[$i][2][0]
    $workshops[$i][1]ComplimentaryComplimentary
    Sold Out$workshops[$i][1]Sold Out
     

    [3]}++ for @pbls; my @pbldates=sort keys %u_dates; my $day=0; my $month=0; my $year=0; my $hour=0; my $min=0; my $time=0; my $k=0; foreach (@pbldates) { print "\n"; print ""; print "\n"; for ($i=0; defined($pbls[$i]); $i++) { if ($pbldates[$k]==$pbls[$i][3]) { if ($sold_out{$pbls[$i][0]} != "1") { print "\n"; print "\n"; print "\n\n"; if ($pbls[$i][2][$reduced_rate] > 0) { print ""; } else { # print ""; print ""; } } else { print "\n"; print ""; } } } $k++; } !>
    PBL Discussions -- (select your 1st, 2nd, and 3rd choices for each session)
    We regret that there is no waiting list for sold out PBLDs
             

    1st2nd3rdPBLs -- "; $day=substr($pbldates[$k], 6, 2); $month=substr($pbldates[$k],4,2); $month--; $year=substr($pbldates[$k],0,4)-1900; $hour=substr($pbldates[$k],8,2); $min=substr($pbldates[$k],10,2); $time=timelocal(0,$min,$hour,$day,$month,$year); print strftime("%B %d %Y -- %I:%M %p", (localtime($time))); print "

    $pbls[$i][1]\$$pbls[$i][2][1]\$$pbls[$i][2][0]
    $pbls[$i][1]
    $pbls[$i][1]ComplimentaryComplimentary
    Sold Out$pbls[$i][1]Sold Out

    Saturday BBQ [3]}++ for @bbq; my @bbqdates=sort keys %u_bbqdates; my $day=0; my $month=0; my $year=0; my $hour=0; my $min=0; my $time=0; my %u_bbqdays; $u_bbqdays{substr($_->[3],0, 8)}++ for @bbq; my @bbqdays=sort keys %u_bbqdays; foreach my $bbqday (@bbqdays) { $day=substr($bbqday, 6, 2); $month=substr($bbqday,4,2); $month--; $year=substr($bbqday,0,4)-1900; $hour=substr($bbqday,8,2); $min=substr($bbqday,10,2); $time=timelocal(0,$min,$hour,$day,$month,$year); # print strftime("%B %d %Y", (localtime($time))); foreach my $times (@bbqdates) { if ($bbqday eq substr($times, 0, 8)) { foreach (@bbq) { if ($_->[3] == $times) { $day=substr($times, 6, 2); $month=substr($times,4,2); $month--; $year=substr($times,0,4)-1900; $hour=substr($times,8,2); $min=substr($times,10,2); $time=timelocal(0,$min,$hour,$day,$month,$year); print ""; print ""; } } } } } !>
       
    [0] . "\">" . $_->[1] . "\$" . $_->[2][1] . "\$" . $_->[2][0] . "
     

    Note: $50 shipping and handling fee will be added for shipping addresses outside US and Canada

    Card Number:
    Expiration Date: (MMYY format)
    Security Code:
    Card Billing Address:
    Card Billing Zip Code:
    Name on Card:
    #include ../../includes/footer.iphtml