X-Git-Url: http://git.pippins.net/embedvideo/.git/static/git-logo.png?a=blobdiff_plain;ds=inline;f=inc%2Fclass.eq.inc.php;h=342f65bf0cec8f8d8073e35eb2cafde66465c77d;hb=a84b37716aff69dd3a08ac205b202087822bc46a;hp=ed9b2c4b9e8d5e9d458c237c6cc925505dc00b66;hpb=f8471406db3eb0232775ac452db2ef2691387334;p=eq%2F.git
diff --git a/inc/class.eq.inc.php b/inc/class.eq.inc.php
index ed9b2c4..342f65b 100644
--- a/inc/class.eq.inc.php
+++ b/inc/class.eq.inc.php
@@ -1,7 +1,8 @@
upload_target_path = "/home/users/eqpres/eq_data";
- $this->script_path = "/usr/share/phpgroupware/eq/bin";
- $this->default_ht_num_months = 3;
- $this->default_ppi_num_months = 3;
- $this->default_ppi_num_years = 0;
- $this->default_int_num_quarters = 1;
- $this->default_int_num_years = 0;
- $this->default_att_num_quarters = 1;
- $this->default_vis_num_years = 1;
- $this->max_num_districts = 4;
- $this->time_drop_down_lists = 1;
- $this->monthly_hometeaching_interviews = 0;
- $this->time_drop_down_list_inc = 15;
- $this->default_visit_appt_duration = 45;
- $this->default_ppi_appt_duration = 30;
+ if(file_exists("setup/eq_config.local")) {
+ include("setup/eq_config.local");
+ } else {
+ include("setup/eq_config");
+ }
+
+ $this->script_path = "$this->application_path"."/bin";
$this->max_presidency_members = 99;
$this->max_appointments = 32768;
- // END LOCAL CONFIGURATION
$this->db = $GLOBALS['phpgw']->db;
$this->db2 = $this->db;
@@ -233,9 +224,9 @@ class eq
$aaronic[$aaronic_id]['name'] = $this->db->f('name');
$aaronic[$aaronic_id]['phone'] = $this->db->f('phone');
}
-
- $total_families = 0;
+
$this->nextmatchs->template_alternate_row_color(&$this->t);
+ for($m=$num_months; $m >= 0; $m--) { $total_families[$m]=0; }
for ($i=0; $i < count($districts); $i++) {
$this->t->set_var('district_number',$districts[$i]['district']);
$this->t->set_var('district_name',$districts[$i]['name']);
@@ -253,8 +244,8 @@ class eq
}
$comp_width=450; $visit_width=25; $table_width=$comp_width + $num_months*$visit_width;
- $table_data=""; $num_companionships = 0; $num_families = 0;
- for($m=$num_months; $m >= 0; $m--) { $visits[$m] = 0; }
+ $table_data=""; $num_companionships = 0;
+ for($m=$num_months; $m >= 0; $m--) { $visits[$m]=0; $num_families[$m]=0; }
for ($j=0; $j < count($unique_companionships); $j++) {
$companion_table_entry = "";
// Select all the companions in each companionship
@@ -288,7 +279,6 @@ class eq
$k=0;
while ($this->db->next_record())
{
- $num_families++; $total_families++;
$family_name = $this->db->f('name');
$family_id = $this->db->f('family');
$this->nextmatchs->template_alternate_row_color(&$this->t);
@@ -304,12 +294,24 @@ class eq
$month_start = "$year"."-"."$month"."-"."01";
$month_end = "$year"."-"."$month"."-"."31";
$month = "$month"."/"."$year";
+
//print "m: $m month: $month year: $year month_start: $month_start month_end: $month_end ";
// Add this to the query to filter on only visits made by this companionship:
// " AND companionship=" . $unique_companionships[$j]['companionship'].
+
+ // First check to see if the currently assigned companionship has visited them
$sql = "SELECT * FROM eq_visit WHERE date >= '$month_start' AND date <= '$month_end' ".
- " AND companionship!=0".
- " AND family=". $family_id;
+ " AND companionship=".$unique_companionships[$j]['companionship'].
+ " AND family=". $family_id;
+ $query_id = $this->db2->query($sql,__LINE__,__FILE__);
+ if($this->db2->num_rows($query_id) == 0) {
+ // We did not find any visits made by the currently assigned companionship,
+ // look for visits made by any other companionship other than 0. (0 == EQ Presidency Visit)
+ $sql = "SELECT * FROM eq_visit WHERE date >= '$month_start' AND date <= '$month_end' ".
+ " AND companionship!=0".
+ " AND family=". $family_id;
+ $query_id = $this->db2->query($sql,__LINE__,__FILE__);
+ }
$this->db2->query($sql,__LINE__,__FILE__);
$link_data['menuaction'] = 'eq.eq.ht_update';
$link_data['date'] = $month_start;
@@ -324,19 +326,21 @@ class eq
if(!$total_visits[$m]) { $total_visits[$m] = 0; }
if($this->db2->next_record()) {
if($this->db2->f('visited') == 'y') {
- $visits[$m]++; $total_visits[$m]++;
+ $visits[$m]++; $total_visits[$m]++;
+ $num_families[$m]++; $total_families[$m]++;
$table_data .= '
';
}
else if($this->db2->f('visited') == 'n') {
+ $num_families[$m]++; $total_families[$m]++;
$table_data .= ' ';
}
else {
- $visits[$m]++; $total_visits[$m]++;
+ //$visits[$m]++; $total_visits[$m]++;
$table_data .= " ";
}
}
else {
- $visits[$m]++; $total_visits[$m]++;
+ //$visits[$m]++; $total_visits[$m]++;
$table_data .= " ";
}
}
@@ -346,11 +350,15 @@ class eq
$table_data .= " ";
}
$table_data .= " ";
- $stat_data = "$num_families Families Visit Totals: ";
+ $stat_data = "Families Hometaught: Hometeaching Percentage: ";
for($m=$num_months; $m >=0; $m--) {
- $percent = ceil(($visits[$m] / $num_families)*100);
- $stat_data .= "$visits[$m] $percent% ";
+ if($num_families[$m] > 0) {
+ $percent = ceil(($visits[$m] / $num_families[$m])*100);
+ } else {
+ $percent = 0;
+ }
+ $stat_data .= "$visits[$m] / $num_families[$m] $percent% ";
}
$stat_data .= " ";
@@ -361,10 +369,14 @@ class eq
$this->t->fp('list','district_list',True);
}
- $totals = "$total_families Total Families Visit Totals: ";
+ $totals = "Total Families Hometaught: Total Hometeaching Percentage: ";
for($m=$num_months; $m >=0; $m--) {
- $percent = ceil(($total_visits[$m] / $total_families)*100);
- $totals .= "$total_visits[$m] $percent% ";
+ if($total_families[$m] > 0) {
+ $percent = ceil(($total_visits[$m] / $total_families[$m])*100);
+ } else {
+ $percent = 0;
+ }
+ $totals .= "$total_visits[$m] / $total_families[$m] $percent% ";
}
$totals .= " ";
@@ -410,16 +422,9 @@ class eq
}
for ($j=0; $j < count($unique_companionships); $j++)
{
- // FIXME: We won't be able to go back and edit history on families that have been
- // reassigned to a different companionship. The following delete command will not delete
- // the history of visits under an older companionship, only the ones for the existing
- // companionship. This will lead to duplicate visits being entered for an older
- // month for the same family, making it impossible to change the past history once
- // a family is reassigned. However, you will be able to view the history just fine.
-
//$comp=$unique_companionships[$j]['companionship'];
//print "deleting from eq_visit where companionship=$comp and date=$date and district=$district ";
- // Delete all the visits that have taken place for all families for this month
+ // Delete all the visits that have taken place for all families for this companionsthip for this month
$this->db->query("DELETE from eq_visit where companionship=" . $unique_companionships[$j]['companionship'] .
" AND " . "date='" . $date . "'",__LINE__,__FILE__);
}
@@ -517,29 +522,40 @@ class eq
$this->db->query($sql,__LINE__,__FILE__);
while ($this->db->next_record())
{
- $num_families++; $total_families++;
$family_name = $this->db->f('name');
$family_id = $this->db->f('family');
$this->nextmatchs->template_alternate_row_color(&$this->t);
$table_data.="$family_name Family ";
$header_row="Families ";
+
+ // First check to see if the currently assigned companionship has visited them
$sql = "SELECT * FROM eq_visit WHERE date >= '$month_start' AND date <= '$month_end' ".
+ " AND companionship=".$unique_companionships[$j]['companionship'].
+ " AND family=". $family_id;
+ $query_id = $this->db2->query($sql,__LINE__,__FILE__);
+ if($this->db2->num_rows($query_id) == 0) {
+ // We did not find any visits made by the currently assigned companionship,
+ // look for visits made by any other companionship other than 0. (0 == EQ Presidency Visit)
+ $sql = "SELECT * FROM eq_visit WHERE date >= '$month_start' AND date <= '$month_end' ".
" AND companionship!=0".
" AND family=". $family_id;
- $this->db2->query($sql,__LINE__,__FILE__);
+ $query_id = $this->db2->query($sql,__LINE__,__FILE__);
+ }
+
$value = $family_id . "/" . $unique_companionships[$j]['companionship'] . "/" . $date;
$header_row .= "$month ";
if(!$total_visits) { $total_visits = 0; }
if($this->db2->next_record()) {
if($this->db2->f('visited') == 'y') {
- $visits++; $total_visits++;
+ $visits++; $total_visits++; $num_families++;
$table_data .= '';
$table_data .= ' Y';
$table_data .= ' N';
$table_data .= ' ';
$table_data .= ' ';
} else if($this->db2->f('visited') == 'n') {
+ $num_families++;
$table_data .= '';
$table_data .= ' Y';
$table_data .= ' N';
@@ -566,10 +582,10 @@ class eq
$table_data .= " ";
}
$table_data .= " ";
- $stat_data = "$num_families Families Visit Totals: ";
+ $stat_data = "Families Hometaught: Hometeaching Percentage: ";
$percent = ceil(($visits / $num_families)*100);
- $stat_data .= "$visits $percent% ";
+ $stat_data .= "$visits / $num_families $percent% ";
$stat_data .= " ";
$this->t->set_var('table_width',$table_width);
@@ -1555,7 +1571,7 @@ class eq
// If this elder has had a yearly PPI this year, don't show him on the schedule list
$year_start = $year - 1 . "-12-31"; $year_end = $year + 1 . "-01-01";
$sql = "SELECT * FROM eq_ppi WHERE date > '$year_start' AND date < '$year_end' ".
- "AND elder=" . $id;
+ "AND elder=" . $id . " AND eqpresppi=1";
$this->db2->query($sql,__LINE__,__FILE__);
if(!$this->db2->next_record()) {
@@ -2716,26 +2732,21 @@ class eq
$table_data .= " ";
}
$total_companionships += $num_companionships;
- $stat_data = "$num_companionships Companionships Interview Quarterly Totals: ";
+ $stat_data = "$num_companionships Companionships Interview Totals: ";
// Print the hometeaching interview stats
- if($this->monthly_hometeaching_interviews == 0) { //Quarterly
- for($m=$num_months; $m >=0; $m--) {
- $month = $current_month - $m;
- if(($month % 3) == 1) { $quarter_total = $ints[$m]; }
- else { $quarter_total += $ints[$m]; }
- $percent = ceil(($quarter_total / $num_companionships)*100);
- $stat_data .= "$quarter_total $percent% ";
- }
- $stat_data .= " ";
- }
- else { // Monthly
- for($m=$num_months; $m >=0; $m--) {
- $percent = ceil(($ints[$m] / $num_companionships)*100);
- $stat_data .= "$ints[$m] $percent% ";
- }
- $stat_data .= "";
+ for($m=$num_months; $m >=0; $m--) {
+ $month = $current_month - $m;
+ if($month < 0) { $month = 12 + $month; } // Handle going backwards over a year boundary
+ $month_begins = $month % $this->monthly_hometeaching_interview_stats;
+ //print "$month % $this->monthly_hometeaching_interview_stats = $month_begins ";
+ if($this->monthly_hometeaching_interview_stats == 1) { $month_begins = 1; }
+ if(($month_begins) == 1) { $total = $ints[$m]; }
+ else { $total += $ints[$m]; }
+ $percent = ceil(($total / $num_companionships)*100);
+ $stat_data .= "$total $percent% ";
}
+ $stat_data .= "";
$this->t->set_var('table_width',$table_width);
$this->t->set_var('header_row',$header_row);
@@ -2745,27 +2756,20 @@ class eq
}
// Display the totals
- if($this->monthly_hometeaching_interviews == 0) { //Quarterly
- $quarter_total = 0;
- $totals = "$total_companionships Total Comps Interview Quarterly Totals: ";
- for($m=$num_months; $m >=0; $m--) {
- $month = $current_month - $m;
- if(($month % 3) == 1) { $quarter_total = $total_ints[$m]; }
- else { $quarter_total += $total_ints[$m]; }
- $percent = ceil(($quarter_total / $total_companionships)*100);
- $totals .= "$quarter_total $percent% ";
- }
- $totals .= " ";
- }
- else { //Monthly
- $totals = "$total_companionships Total Comps Interview Monthly Totals: ";
- for($m=$num_months; $m >=0; $m--) {
- $percent = ceil(($total_ints[$m] / $total_companionships)*100);
- $totals .= "$total_ints[$m] $percent% ";
- }
- $totals .= " ";
+ $total = 0;
+ $totals = "$total_companionships Total Comps Interview Totals: ";
+ for($m=$num_months; $m >=0; $m--) {
+ $month = $current_month - $m;
+ if($month < 0) { $month = 12 + $month; } // Handle going backwards over a year boundary
+ $month_begins = $month % $this->monthly_hometeaching_interview_stats;
+ if($this->monthly_hometeaching_interview_stats == 1) { $month_begins = 1; }
+ if(($month_begins) == 1) { $total = $total_ints[$m]; }
+ else { $total += $total_ints[$m]; }
+ $percent = ceil(($total / $total_companionships)*100);
+ $totals .= "$total $percent% ";
}
-
+ $totals .= " ";
+
$this->t->set_var('totals',$totals);
$this->t->pfp('out','int_view_t');
$this->save_sessiondata();
@@ -3138,7 +3142,7 @@ class eq
else if($current_month >= 4 && $current_month <= 6) { $current_month=6; }
else if($current_month >= 7 && $current_month <= 9) { $current_month=9; }
else if($current_month >= 10 && $current_month <= 12) { $current_month=12; }
-
+
$sql = "SELECT * FROM eq_elder where valid=1";
$this->db->query($sql,__LINE__,__FILE__);
$i=0;
@@ -3154,10 +3158,10 @@ class eq
$i=0;
$last_time = 0;
$found_sunday = 0;
- $sunday_list[0]['date'] = date("Y-m-d", mktime(0, 0, 0, $current_month-$num_months, 1, date("y")));
+ $sunday_list[0]['date'] = date("Y-m-d", mktime(0, 0, 0, ($current_month-$num_months)+1, 1, date("y")));
$last_date = explode("-",$sunday_list[0]['date']);
$last_time = mktime(0, 0, 0, $last_date[1], $last_date[2], $last_date[0]);
- $time_limit = mktime(0, 0, 0, date("m"), date("t"), date("y"));
+ $time_limit = mktime(0, 0, 0, $current_month, 31, date("y"));
while($last_time < $time_limit)
{
$day = date("w",$last_time);
@@ -3168,7 +3172,8 @@ class eq
$sunday_list[$i]['day'] = $last_date[2];
$sunday_list[$i]['month'] = date("M",$last_time);
$sunday_list[$i]['year'] = $last_date[0];
- $found_sunday = 1;
+ $found_sunday = 1;
+ $last_date = $sunday_list[$i]['date'];
}
$last_time += 90000;
if($found_sunday) { $i++; $found_sunday=0; }
@@ -3889,12 +3894,11 @@ class eq
# unzip the data into this directory
print "-> Unzipping the data \n";
- $data_file = $data_dir . '';
- exec('unzip ' . $data_dir . '/*.zip -d ' . $data_dir . ' 2>&1', $result, $return_code);
+ exec($this->unzip_path .' -u '. $data_dir . '/*.zip -d ' . $data_dir . ' 2>&1', $result, $return_code);
if($return_code != 0) {
print implode('\n',$result) . " ";
print "";
- print "-E- Unable to unzip the uploaded file into the data dir. Aborting import.";
+ print "-E- Unable to unzip the uploaded file into the data dir: $data_dir. Aborting import.";
print " ";
return 0;
}