X-Git-Url: http://git.pippins.net/embedvideo/.git/.%24link.?a=blobdiff_plain;f=inc%2Fclass.eq.inc.php;h=b1dbb23a16972777e4cf215dba8e16f1032f7eb0;hb=7af932f11f7025c37945987840922f1786c4de5c;hp=6b2b8aa346d1c04c10038bf8555ec33d399f8d88;hpb=a09d03a95920d3698aa9c1dc7556b44451cfd24a;p=eq%2F.git
diff --git a/inc/class.eq.inc.php b/inc/class.eq.inc.php
index 6b2b8aa..b1dbb23 100644
--- a/inc/class.eq.inc.php
+++ b/inc/class.eq.inc.php
@@ -23,6 +23,8 @@ class eq
var $default_ppi_num_months;
var $default_ppi_num_years;
var $default_att_num_months;
+ var $current_year;
+ var $current_month;
var $public_functions = array
(
@@ -37,15 +39,17 @@ class eq
'vis_view' => True,
'vis_update' => True,
'att_view' => True,
- 'att_update' => True
+ 'att_update' => True,
+ 'dir_view' => True,
+ 'org_view' => True
);
function eq()
{
- $this->default_ht_num_months = 1;
- $this->default_ppi_num_months = 1;
+ $this->default_ht_num_months = 3;
+ $this->default_ppi_num_months = 3;
$this->default_ppi_num_years = 0;
- $this->default_att_num_months = 1;
+ $this->default_att_num_months = 3;
$this->db = $GLOBALS['phpgw']->db;
$this->db2 = $this->db;
@@ -63,6 +67,12 @@ class eq
$GLOBALS['phpgw_info']['flags']['app_header'] = 'Elders Quorum Tools';
$GLOBALS['phpgw']->common->phpgw_header();
+
+ $this->current_month = `date '+%m'`;
+ $this->current_month = $this->current_month-0; // Make it numeric
+ $this->current_year = `date '+%Y'`;
+ $this->current_year = $this->current_year-0; // Make it numeric
+
echo parse_navbar();
$this->display_app_header();
}
@@ -105,6 +115,12 @@ class eq
$link_data['menuaction'] = 'eq.eq.att_view';
$this->t->set_var('link_attendance',$GLOBALS['phpgw']->link('/eq/index.php',$link_data));
$this->t->set_var('lang_attendance','Attendance');
+ $link_data['menuaction'] = 'eq.eq.dir_view';
+ $this->t->set_var('link_dir',$GLOBALS['phpgw']->link('/eq/index.php',$link_data));
+ $this->t->set_var('lang_dir','Directory');
+ $link_data['menuaction'] = 'eq.eq.org_view';
+ $this->t->set_var('link_org',$GLOBALS['phpgw']->link('/eq/index.php',$link_data));
+ $this->t->set_var('lang_org','Callings');
$this->t->pparse('out','eq_header');
}
@@ -124,7 +140,7 @@ class eq
$this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ht_view'));
$this->t->set_var('title','Hometeaching');
-
+
$sql = "SELECT * FROM eq_district where valid=1 ORDER BY district ASC";
$this->db->query($sql,__LINE__,__FILE__);
$i=0;
@@ -160,6 +176,7 @@ class eq
{
$aaronic_id = $this->db->f('aaronic');
$aaronic[$aaronic_id]['name'] = $this->db->f('name');
+ $aaronic[$aaronic_id]['phone'] = $this->db->f('phone');
}
$total_families = 0;
@@ -197,15 +214,21 @@ class eq
$companionship = $this->db->f('companionship');
$elder_id = $this->db->f('elder');
$aaronic_id = $this->db->f('aaronic');
- $phone = $elder_phone[$elder_id];
- if($elder_id) { $name = $elders[$elder_id]; }
- else if($aaronic_id) { $name = $aaronic[$aaronic_id]['name']; }
+ if($elder_id) {
+ $name = $elders[$elder_id];
+ $phone = $elder_phone[$elder_id];
+ }
+ else if($aaronic_id) {
+ $name = $aaronic[$aaronic_id]['name'];
+ $phone = $aaronic[$aaronic_id]['phone'];
+ }
$companion_table_entry .= "
$name | ";
}
$table_data.= "
|
";
// Get the names of the families assigned this home teaching companionship
$sql = "SELECT * from eq_family where valid=1 AND companionship=".$unique_companionships[$j]['companionship'];
+ $sql = $sql . " ORDER BY name ASC";
$this->db->query($sql,__LINE__,__FILE__);
$k=0;
while ($this->db->next_record())
@@ -219,10 +242,14 @@ class eq
// in the past $num_months for this Family
$header_row="Families | ";
for($m=$num_months; $m >= 0; $m--) {
- if(`date '+%d'` == 31) { $d = 1; } else { $d = 0; }
- $month = date('m/Y', strtotime('-'.$m.' month -'.$d.' day'));
- $month_start = date('Y-m', strtotime('-'.$m.' month -'.$d.' day')); $month_start .= "-01";
- $month_end = date('Y-m', strtotime('-'.$m.' month -'.$d.' day')); $month_end .= "-31";
+ $month = $this->current_month - $m;
+ $year = $this->current_year;
+ if($month <= 0) { $remainder = $month; $month = 12 + $remainder; $year=$year-1; }
+ if($month < 10) { $month = "0"."$month"; }
+ $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'].
$sql = "SELECT * FROM eq_visit WHERE date >= '$month_start' AND date <= '$month_end' ".
@@ -318,7 +345,7 @@ class eq
if($action == 'save')
{
// Get a list of all the companionships in this district
- $sql = "SELECT distinct companionship FROM eq_companionship where district=". $district;
+ $sql = "SELECT distinct companionship FROM eq_companionship where valid=1 and district=". $district;
$this->db->query($sql,__LINE__,__FILE__);
$j=0;
while ($this->db->next_record())
@@ -334,7 +361,9 @@ class eq
// 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
$this->db->query("DELETE from eq_visit where companionship=" . $unique_companionships[$j]['companionship'] .
" AND " . "date='" . $date . "'",__LINE__,__FILE__);
@@ -369,6 +398,7 @@ class eq
{
$elder_id[$i] = $this->db->f('elder');
$elder_name[$i] = $this->db->f('name');
+ $elder_phone[$elder_id[$i]] = $this->db->f('phone');
$i++;
}
array_multisort($elder_name, $elder_id);
@@ -385,6 +415,7 @@ class eq
{
$aaronic_id = $this->db->f('aaronic');
$aaronic[$aaronic_id]['name'] = $this->db->f('name');
+ $aaronic[$aaronic_id]['phone'] = $this->db->f('phone');
}
// Select all the unique companionship numbers for this district
@@ -409,18 +440,25 @@ class eq
while ($this->db->next_record())
{
// Get this companions information
- if($companion_table_entry != "") { $companion_table_entry .= " / "; }
+ if($companion_table_entry != "") { $companion_table_entry .= " / | "; }
$companionship = $this->db->f('companionship');
$elder_id = $this->db->f('elder');
$aaronic_id = $this->db->f('aaronic');
- if($elder_id) { $name = $elders[$elder_id]; }
- else if($aaronic_id) { $name = $aaronic[$aaronic_id]['name']; }
- $companion_table_entry .= "$name";
+ if($elder_id) {
+ $name = $elders[$elder_id];
+ $phone = $elder_phone[$elder_id];
+ }
+ else if($aaronic_id) {
+ $name = $aaronic[$aaronic_id]['name'];
+ $phone = $aaronic[$aaronic_id]['phone'];
+ }
+ $companion_table_entry .= "$name | ";
}
- $table_data.= "$companion_table_entry
|
";
+ $table_data.= "
|
";
// Get the names of the families assigned this home teaching companionship
$sql = "SELECT * from eq_family where valid=1 AND companionship=".$unique_companionships[$j]['companionship'];
+ $sql = $sql . " ORDER BY name ASC";
$this->db->query($sql,__LINE__,__FILE__);
while ($this->db->next_record())
{
@@ -841,10 +879,16 @@ class eq
$i=0;
while ($this->db->next_record())
{
- $districts[$i]['district'] = $this->db->f('district');
- $districts[$i]['name'] = $this->db->f('name');
- $districts[$i]['supervisor'] = $this->db->f('supervisor');
- if($eqpresppi == 0) { $i++; }
+ if($eqpresppi == 1 && $this->db->f('district') == 1) {
+ $districts[$i]['district'] = $this->db->f('district');
+ $districts[$i]['name'] = $this->db->f('name');
+ $districts[$i]['supervisor'] = $this->db->f('supervisor');
+ } else if($eqpresppi == 0) {
+ $districts[$i]['district'] = $this->db->f('district');
+ $districts[$i]['name'] = $this->db->f('name');
+ $districts[$i]['supervisor'] = $this->db->f('supervisor');
+ $i++;
+ }
}
$sql = "SELECT * FROM eq_elder where valid=1 ORDER BY elder ASC";
@@ -854,6 +898,7 @@ class eq
{
$elder_id[$i] = $this->db->f('elder');
$elder_name[$i] = $this->db->f('name');
+ $elder_phone[$elder_id[$i]] = $this->db->f('phone');
$i++;
}
array_multisort($elder_name, $elder_id);
@@ -868,6 +913,7 @@ class eq
{
$aaronic_id = $this->db->f('aaronic');
$aaronic[$aaronic_id]['name'] = $this->db->f('name');
+ $aaronic[$aaronic_id]['phone'] = $this->db->f('phone');
}
$total_companionships = 0;
@@ -885,7 +931,7 @@ class eq
// Select all the unique companionship numbers for this district
if($eqpresppi == 1) {
- $sql = "SELECT distinct companionship FROM eq_companionship";
+ $sql = "SELECT distinct companionship FROM eq_companionship where valid=1";
}
else {
$sql = "SELECT distinct companionship FROM eq_companionship where valid=1 and district=". $districts[$i]['district'];
@@ -913,6 +959,8 @@ class eq
}
$this->db->query($sql,__LINE__,__FILE__);
$k=0;
+ $comp = $unique_companionships[$j]['companionship'];
+ for($m=$num_months; $m >= 0; $m--) { $ppi_recorded[$comp][$m] = 0; }
while ($this->db->next_record())
{
// Get this companions information
@@ -920,23 +968,26 @@ class eq
$companionship = $this->db->f('companionship');
$elder_id = $this->db->f('elder');
$aaronic_id = $this->db->f('aaronic');
- if($elder_id) { $name = $elders[$elder_id]; }
- else if($aaronic_id) { $name = $aaronic[$aaronic_id]['name']; }
+ if($elder_id) {
+ $name = $elders[$elder_id];
+ $phone = $elder_phone[$elder_id];
+ }
+ else if($aaronic_id) {
+ $name = $aaronic[$aaronic_id]['name'];
+ $phone = $aaronic[$aaronic_id]['phone'];
+ }
$link_data['menuaction'] = 'eq.eq.ppi_update';
$link_data['companionship'] = $companionship;
$link_data['interviewer'] = $supervisor;
$link_data['elder'] = $elder_id;
+ $link_data['aaronic'] = $aaronic_id;
$link_data['name'] = $name;
$link_data['ppi'] = '';
$link_data['eqpresppi'] = $eqpresppi;
$link_data['action'] = 'add';
$link = $GLOBALS['phpgw']->link('/eq/index.php',$link_data);
- if($aaronic_id == 0) {
- $table_data.= "$name | ";
- } else {
- $table_data.= "
$name | ";
- }
-
+ $table_data.= "
$name | ";
+
// Find out how many times PPIs were performed in the past $num_months for this Elder
$header_row="Companionship | ";
for($m=$num_months; $m >= 0; $m--) {
@@ -944,27 +995,33 @@ class eq
$year = date('Y') - $m;
$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=" . $elder_id . " AND eqpresppi=1";
+ "AND elder=" . $elder_id . " AND aaronic=" . $aaronic_id . " AND eqpresppi=1";
$this->db2->query($sql,__LINE__,__FILE__);
$header_row .= "$year | ";
}
else {
- if(`date '+%d'` == 31) { $d = 1; } else { $d = 0; }
- $month = date('m/Y', strtotime('-'.$m.' month -'.$d.' day'));
- $month_start = date('Y-m', strtotime('-'.$m.' month -'.$d.' day')); $month_start .= "-01";
- $month_end = date('Y-m', strtotime('-'.$m.' month -'.$d.' day')); $month_end .= "-31";
+ $month = $this->current_month - $m;
+ $year = $this->current_year;
+ if($month <= 0) { $remainder = $month; $month = 12 + $remainder; $year=$year-1; }
+ if($month < 10) { $month = "0"."$month"; }
+ $month_start = "$year"."-"."$month"."-"."01";
+ $month_end = "$year"."-"."$month"."-"."31";
+ $month = "$month"."/"."$year";
$sql = "SELECT * FROM eq_ppi WHERE date >= '$month_start' AND date <= '$month_end' ".
- "AND elder=" . $elder_id . " AND eqpresppi=0";
+ "AND elder=" . $elder_id . " AND aaronic=" . $aaronic_id . " AND eqpresppi=0";
$this->db2->query($sql,__LINE__,__FILE__);
$header_row .= "$month | ";
}
if(!$total_ppis[$m]) { $total_ppis[$m] = 0; }
if($this->db2->next_record()) {
- $ppis[$m]++; $total_ppis[$m]++;
+ if(!$ppi_recorded[$companionship][$m]) {
+ $ppis[$m]++; $total_ppis[$m]++; $ppi_recorded[$companionship][$m]=1;
+ }
$link_data['menuaction'] = 'eq.eq.ppi_update';
$link_data['companionship'] = $companionship;
$link_data['interviewer'] = $this->db2->f('interviewer');
$link_data['elder'] = $elder_id;
+ $link_data['aaronic'] = $aaronic_id;
$link_data['name'] = $name;
$link_data['ppi'] = $this->db2->f('ppi');
$link_data['eqpresppi'] = $eqpresppi;
@@ -974,12 +1031,7 @@ class eq
$month = $date_array[1];
$day = $date_array[2];
$link = $GLOBALS['phpgw']->link('/eq/index.php',$link_data);
-
- if($aaronic_id == 0) {
- $table_data .= ' '.$month.'-'.$day.' | ';
- } else {
- $table_data .= ' | ';
- }
+ $table_data .= ' '.$month.'-'.$day.' | ';
}
else { $table_data .= " | "; }
}
@@ -1085,10 +1137,11 @@ class eq
$name = get_var('name',array('GET','POST'));
$ppi = get_var('ppi',array('GET','POST'));
$elder = get_var('elder',array('GET','POST'));
+ $aaronic = get_var('aaronic',array('GET','POST'));
$date = get_var('date',array('GET','POST'));
$notes = get_var('notes',array('GET','POST'));
$eqpresppi = get_var('eqpresppi',array('GET','POST'));
-
+
$sql = "SELECT * FROM eq_district where valid=1 ORDER BY district ASC";
$this->db->query($sql,__LINE__,__FILE__);
while ($this->db->next_record())
@@ -1115,6 +1168,7 @@ class eq
" ppi='" . $ppi . "'" .
", interviewer='" . $interviewer . "'" .
", elder='" . $elder . "'" .
+ ", aaronic='" . $aaronic . "'" .
", date='" . $date . "'" .
", notes='" . $notes . "'" .
", eqpresppi='" . $eqpresppi . "'" .
@@ -1126,8 +1180,8 @@ class eq
if($action == 'insert')
{
$notes = $this->db->db_addslashes(get_var('notes',array('POST')));
- $this->db->query("INSERT INTO eq_ppi (interviewer,elder,date,notes,eqpresppi) "
- . "VALUES ('" . $interviewer . "','" . $elder . "','"
+ $this->db->query("INSERT INTO eq_ppi (interviewer,elder,aaronic,date,notes,eqpresppi) "
+ . "VALUES ('" . $interviewer . "','" . $elder . "','" . $aaronic . "','"
. $date . "','" . $notes . "','" . $eqpresppi ."')",__LINE__,__FILE__);
$this->ppi_view();
return false;
@@ -1140,6 +1194,7 @@ class eq
$this->t->set_var('interviewer', $interviewer);
$this->t->set_var('name',$name);
$this->t->set_var('elder',$elder);
+ $this->t->set_var('aaronic',$aaronic);
$this->t->set_var('date','');
$this->t->set_var('notes','');
$this->t->set_var('eqpresppi',$eqpresppi);
@@ -1158,6 +1213,7 @@ class eq
$this->t->set_var('name',$name);
$this->t->set_var('interviewer', $this->db->f('interviewer'));
$this->t->set_var('elder',$this->db->f('elder'));
+ $this->t->set_var('aaronic',$this->db->f('aaronic'));
$this->t->set_var('date',$this->db->f('date'));
$this->t->set_var('notes',$this->db->f('notes'));
$this->t->set_var('eqpresppi',$this->db->f('eqpresppi'));
@@ -1696,6 +1752,106 @@ class eq
$this->save_sessiondata();
}
+ function dir_view()
+ {
+ $this->t->set_file(array('dir_view_t' => 'dir_view.tpl'));
+ $this->t->set_block('dir_view_t','dir_list','list');
+
+ $sql = "SELECT * FROM eq_parent where valid=1 ORDER BY name ASC";
+ $this->db->query($sql,__LINE__,__FILE__);
+ $i=0;
+ while ($this->db->next_record())
+ {
+ $parent[$i]['id'] = $this->db->f('parent');
+ $parent[$i]['name'] = $this->db->f('name');
+ $parent[$i]['phone'] = $this->db->f('phone');
+ $parent[$i]['address'] = $this->db->f('address');
+ $i++;
+ }
+
+ for ($i=0; $i < count($parent); $i++)
+ {
+ $name = $parent[$i]['name'];
+ $phone = $parent[$i]['phone'];
+ $address = $parent[$i]['address'];
+ $this->t->set_var('name', $name);
+ $this->t->set_var('address', $address);
+ $this->t->set_var('phone', $phone);
+ $tr_color = $this->nextmatchs->alternate_row_color($tr_color);
+ $this->t->set_var('tr_color',$tr_color);
+ $this->t->fp('list','dir_list',True);
+ //print "$phone $name $address
";
+ }
+ $this->t->pfp('out','dir_view_t');
+ $this->save_sessiondata();
+ }
+
+ function org_view()
+ {
+ $this->t->set_file(array('org_view_t' => 'org_view.tpl'));
+ $this->t->set_block('org_view_t','calling_list','list1');
+ $this->t->set_block('org_view_t','org_list','list2');
+
+ # Display a list ordered alphabetically
+ $sql = "SELECT * FROM eq_calling ORDER BY name ASC";
+ $this->db->query($sql,__LINE__,__FILE__);
+ $i=0;
+ while ($this->db->next_record())
+ {
+ $calling[$i]['id'] = $this->db->f('indiv_id');
+ $calling[$i]['name'] = $this->db->f('name');
+ $calling[$i]['position'] = $this->db->f('position');
+ $calling[$i]['sustained'] = $this->db->f('sustained');
+ $calling[$i]['organization'] = $this->db->f('organization');
+ $i++;
+ }
+ for ($i=0; $i < count($calling); $i++)
+ {
+ $name = $calling[$i]['name'];
+ $position = $calling[$i]['position'];
+ $sustained = $calling[$i]['sustained'];
+ $organization = $calling[$i]['organization'];
+ $this->t->set_var('name', $name);
+ $this->t->set_var('position', $position);
+ $this->t->set_var('sustained', $sustained);
+ $this->t->set_var('organization', $organization);
+ $tr_color = $this->nextmatchs->alternate_row_color($tr_color);
+ $this->t->set_var('tr_color',$tr_color);
+ $this->t->fp('list1','calling_list',True);
+ }
+
+ # Display a list ordered by organization
+ $sql = "SELECT * FROM eq_calling ORDER BY sequence ASC";
+ $this->db->query($sql,__LINE__,__FILE__);
+ $i=0;
+ while ($this->db->next_record())
+ {
+ $calling[$i]['id'] = $this->db->f('indiv_id');
+ $calling[$i]['name'] = $this->db->f('name');
+ $calling[$i]['position'] = $this->db->f('position');
+ $calling[$i]['sustained'] = $this->db->f('sustained');
+ $calling[$i]['organization'] = $this->db->f('organization');
+ $i++;
+ }
+ for ($i=0; $i < count($calling); $i++)
+ {
+ $name = $calling[$i]['name'];
+ $position = $calling[$i]['position'];
+ $sustained = $calling[$i]['sustained'];
+ $organization = $calling[$i]['organization'];
+ $this->t->set_var('name', $name);
+ $this->t->set_var('position', $position);
+ $this->t->set_var('sustained', $sustained);
+ $this->t->set_var('organization', $organization);
+ $tr_color = $this->nextmatchs->alternate_row_color($tr_color);
+ $this->t->set_var('tr_color',$tr_color);
+ $this->t->fp('list2','org_list',True);
+ }
+
+ $this->t->pfp('out','org_view_t');
+ $this->save_sessiondata();
+ }
+
}
?>
---|