fixed import of ht stats so it doesn't include last month since that is always No...
[eq/.git] / bin / import_ward_data
index 6fbb96b3ba1e7400a251c92c2b6f546ca583a60d..a9e70c6f3136a709f74afd4ae9fd72b8c4697bb7 100755 (executable)
@@ -138,16 +138,13 @@ sub update_tc_individual_table
                $phone = $membership_data{$index}{'Household Phone'};
                $priesthood = $membership_data{$index}{'Priesthood'};
                $hhposition = $membership_data{$index}{'HH Position'};
-               $steward = ""; # This will be set later
-               # Default to the "Elders" quorum if the Organization data per member isn't available
-               # Only add "Elders" to the quorum since we don't have any other data availalbe to us to make a call
-               # TODO: make steward flexible with a setting in the config file 
-               if((! -e "$datadir/Organization\ class\ per\ member.csv") && ($priesthood =~ /Elder/i)) { 
-                       $steward = "Elder";
-                       $organization = "Elders"; 
+               $steward = ""; # This will be set correctly in a later method
+               # Set the default stewardship if the "Organization data per member.csv" isn't available.
+               # Only validate priesthood holders that match the $default_stewardship since 
+               # we don't have any other data available to us to make this call if we don't have the report.
+               if((! -e "$datadir/Organization\ class\ per\ member.csv") && ($priesthood =~ /$default_stewardship/i)) { 
+                       $steward = "$default_stewardship";
                }
-               # Preferred method is to pull organization data from the csv file
-               else { $organization = $organization_by_id{$id}; }
                $attending = 0;
                if(($organization =~ /Elders/) ||
                   ($organization =~ /Young Men/) ||
@@ -405,6 +402,8 @@ sub update_tc_visit_table
        ($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime();
        my %visit_status = ('X', 'y', '-', 'n', '', '');
        
+       $sth = $dbh->prepare("TRUNCATE TABLE tc_visit");
+       $sth->execute or die "-E- DB error: $DBI::errstr\n";
        foreach $index (keys %hometeaching_stats_data)
        {
                $hashref = $hometeaching_stats_data{$index};
@@ -451,7 +450,7 @@ sub update_tc_visit_table
                #print "$month_header\n";
                #print $hometeaching_stats_data{$index}{$month_header};
                #print "\n";
-               foreach $i (reverse(0..$#history)) {
+               foreach $i (reverse(0..$#history-1)) {
                        # went back a calendar year, decrement $data_year
                        if ($months{$data_months[$i]} > $data_month)
                        {
@@ -554,8 +553,7 @@ sub update_tc_scheduling_priority_table
        print "\n-> Updating scheduling priority table\n";
        
        # individuals
-       # TODO: make steward flexible with a setting in the config file
-       $sth = $dbh->prepare("select * from tc_individual where steward='Elder' and valid=1");
+       $sth = $dbh->prepare("select * from tc_individual where steward='$default_stewardship' and valid=1");
        $sth->execute or die "-E- DB error: $DBI::errstr\n";
        while($sqlhashref = $sth->fetchrow_hashref) {
                $individual = $sqlhashref->{individual};
@@ -572,8 +570,7 @@ sub update_tc_scheduling_priority_table
        &remove_obsolete_scheduling_priority("tc_individual");
        
        # families
-       # TODO: make steward flexible with a setting in the config file
-       $sth = $dbh->prepare("select tf.scheduling_priority, tf.family from tc_family AS tf JOIN tc_individual AS ti ON tf.individual=ti.individual and ti.steward='Elder' and tf.valid=1");
+       $sth = $dbh->prepare("select tf.scheduling_priority, tf.family from tc_family AS tf JOIN tc_individual AS ti ON tf.individual=ti.individual and ti.steward='$default_stewardship' and tf.valid=1");
        $sth->execute or die "-E- DB error: $DBI::errstr\n";
        while($sqlhashref = $sth->fetchrow_hashref) {
                $family = $sqlhashref->{family};
@@ -591,8 +588,7 @@ sub update_tc_scheduling_priority_table
        &remove_obsolete_scheduling_priority("tc_family");
        
        # companionships
-       # TODO: make steward flexible with a setting in the config file
-       $sth = $dbh->prepare("select tc.individual, tc.scheduling_priority from tc_companionship AS tc JOIN tc_individual AS ti ON tc.individual=ti.individual and (ti.steward='Elder' or ti.steward='') and tc.valid=1");
+       $sth = $dbh->prepare("select tc.individual, tc.scheduling_priority from tc_companionship AS tc JOIN tc_individual AS ti ON tc.individual=ti.individual and (ti.steward='$default_stewardship' or ti.steward='') and tc.valid=1");
        $sth->execute or die "-E- DB error: $DBI::errstr\n";
        while($sqlhashref = $sth->fetchrow_hashref) {
                $individual = $sqlhashref->{individual};