From: Alan Jack Pippin Date: Sat, 19 Nov 2005 06:27:49 +0000 (-0700) Subject: Initial commit X-Git-Tag: release_0_1_0~73 X-Git-Url: http://git.pippins.net/embedvideo/.git/%22%22.%24thumbnail.%22/images/static/gitweb.css?a=commitdiff_plain;h=5be4f84484b7a86269ae91194950a4f9c3a7550e;p=eq%2F.git Initial commit --- 5be4f84484b7a86269ae91194950a4f9c3a7550e diff --git a/checkmark.gif b/checkmark.gif new file mode 100644 index 0000000..ae70f59 Binary files /dev/null and b/checkmark.gif differ diff --git a/doc b/doc new file mode 120000 index 0000000..01b66f7 --- /dev/null +++ b/doc @@ -0,0 +1 @@ +../../doc/phpgroupware-skel \ No newline at end of file diff --git a/eq.spec b/eq.spec new file mode 100644 index 0000000..40621d6 --- /dev/null +++ b/eq.spec @@ -0,0 +1,57 @@ +%define packagename eq +%define phpgwdirname eq +%define version 0.0.1.000 + +# This is for Mandrake RPMS +# (move these below the RedHat ones for Mandrake RPMs) +%define httpdroot /var/www/html/phpgroupware +%define packaging 1mdk + +# This is for RedHat RPMS +# (move these below the Mandrake ones for RedHat RPMs) +%define httpdroot /home/httpd/html/phpgroupware +%define packaging 1 + +Summary: Skeleton App for phpGroupWare. +Name: %{packagename} +Version: %{version} +Release: %{packaging} +Copyright: GPL +Group: Web/Database +URL: http://www.phpgroupware.org/apps/eq/ +Source0: ftp://ftp.sourceforge.net/pub/sourceforge/phpgroupware/%{packagename}-%{version}.tar.bz2 +BuildRoot: %{_tmppath}/%{packagename}-buildroot +Prefix: %{httpdroot} +Buildarch: noarch +requires: phpgroupware >= 0.9.10 +AutoReq: 0 + +%description +This is an Elder's Quorum Presidency Application. + +%prep +%setup -n %{phpgwdirname} + +%build +# no build required + +%install +rm -rf $RPM_BUILD_ROOT +mkdir -p $RPM_BUILD_ROOT%{prefix}/%{phpgwdirname} +cp -aRf * $RPM_BUILD_ROOT%{prefix}/%{phpgwdirname} + +%clean +rm -rf $RPM_BUILD_ROOT + +%post + +%postun + +%files +%{prefix}/%{phpgwdirname} + +%changelog +* Sat May 19 2001 Dan Kuykendall 0.0.1.00 +- Created eq app + +# end of file diff --git a/help/index.php b/help/index.php new file mode 100644 index 0000000..b13caa4 --- /dev/null +++ b/help/index.php @@ -0,0 +1,26 @@ + 'manual'); + + $phpgw_info['flags'] = $phpgw_flags; + include('../../header.inc.php'); + $appname = 'eq'; + include(PHPGW_SERVER_ROOT.'/'.$appname.'/setup/setup.inc.php'); +?> + +

+ + Version: + + + common->phpgw_footer(); ?> diff --git a/inc/class.eq.inc.php b/inc/class.eq.inc.php new file mode 100644 index 0000000..dd3343c --- /dev/null +++ b/inc/class.eq.inc.php @@ -0,0 +1,1644 @@ + True, + 'ht_update' => True, + 'act_list' => True, + 'act_view' => True, + 'act_update' => True, + 'par_view' => True, + 'ppi_view' => True, + 'ppi_update' => True, + 'vis_view' => True, + 'vis_update' => True, + 'att_view' => True, + 'att_update' => True + ); + + function eq() + { + $this->default_ht_num_months = 1; + $this->default_ppi_num_months = 1; + $this->default_ppi_num_years = 0; + $this->default_att_num_months = 1; + + $this->db = $GLOBALS['phpgw']->db; + $this->db2 = $this->db; + $this->nextmatchs = CreateObject('phpgwapi.nextmatchs'); + $this->t = $GLOBALS['phpgw']->template; + $this->account = $GLOBALS['phpgw_info']['user']['account_id']; + $this->grants = $GLOBALS['phpgw']->acl->get_grants('eq'); + $this->grants[$this->account] = PHPGW_ACL_READ + PHPGW_ACL_ADD + PHPGW_ACL_EDIT + PHPGW_ACL_DELETE; + + $this->jscal = CreateObject('phpgwapi.jscalendar'); // before phpgw_header() !!! + $this->cal_options = 'daFormat : "%Y-%m-%d", + ifFormat : "%Y-%m-%d", + mondayFirst : false, + weekNumbers : false'; + + $GLOBALS['phpgw_info']['flags']['app_header'] = 'Elders Quorum Tools'; + $GLOBALS['phpgw']->common->phpgw_header(); + echo parse_navbar(); + $this->display_app_header(); + } + + function save_sessiondata() + { + + } + + function display_app_header() + { + $this->t->set_file(array('eq_header' => 'header.tpl')); + + if (isset($phpgw_info['user']['preferences']['eq']['eq_font'])) + { + $font = $phpgw_info['user']['preferences']['eq']['eq_font']; + } + else + { + $font = 'Arial'; + } + + $this->t->set_var('bg_color',$phpgw_info['theme']['th_bg']); + $this->t->set_var('font',$font); + $link_data['menuaction'] = 'eq.eq.ht_view'; + $this->t->set_var('link_hometeaching',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_hometeaching','HomeTeaching'); + $link_data['menuaction'] = 'eq.eq.act_list'; + $this->t->set_var('link_activity',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_activity','Activities'); + $link_data['menuaction'] = 'eq.eq.par_view'; + $this->t->set_var('link_participation',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_participation','Participation'); + $link_data['menuaction'] = 'eq.eq.ppi_view'; + $this->t->set_var('link_ppi',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_ppi','PPIs'); + $link_data['menuaction'] = 'eq.eq.vis_view'; + $this->t->set_var('link_visit',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_visit','Visits'); + $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'); + + $this->t->pparse('out','eq_header'); + } + + function ht_view() + { + $this->t->set_file(array('ht_view_t' => 'ht_view.tpl')); + $this->t->set_block('ht_view_t','district_list','list'); + + $this->t->set_var('linkurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ht_view')); + $num_months = get_var('num_months',array('GET','POST')); + if($num_months == '') { $num_months = $this->default_ht_num_months; } + $this->t->set_var('num_months',$num_months); + $this->t->set_var('lang_filter','Filter'); + if($num_months == 1) { $this->t->set_var('lang_num_months','Month of History'); } + else { $this->t->set_var('lang_num_months','Months of History'); } + + $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; + 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'); + $i++; + } + + $sql = "SELECT * FROM eq_elder where valid=1 ORDER BY elder ASC"; + $this->db->query($sql,__LINE__,__FILE__); + $i=0; + while ($this->db->next_record()) + { + $elder_id[$i] = $this->db->f('elder'); + $elder_name[$i] = $this->db->f('name'); + $i++; + } + array_multisort($elder_name, $elder_id); + + // Make an array mapping elder_ids to elder_names + for($i=0; $i < count($elder_id); $i++) { + $id = $elder_id[$i]; + $elders[$id] = $elder_name[$i]; + } + + $sql = "SELECT * FROM eq_aaronic where valid=1 ORDER BY aaronic ASC"; + $this->db->query($sql,__LINE__,__FILE__); + while ($this->db->next_record()) + { + $aaronic_id = $this->db->f('aaronic'); + $aaronic[$aaronic_id]['name'] = $this->db->f('name'); + } + + $total_families = 0; + $this->nextmatchs->template_alternate_row_color(&$this->t); + 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']); + $supervisor = $districts[$i]['supervisor']; + $unique_companionships=''; + + // Select all the unique companionship numbers for this district + $sql = "SELECT distinct companionship FROM eq_companionship where district=". $districts[$i]['district']; + $this->db->query($sql,__LINE__,__FILE__); + $j=0; + while ($this->db->next_record()) + { + $unique_companionships[$j]['companionship'] = $this->db->f('companionship'); + $j++; + } + + $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; } + for ($j=0; $j < count($unique_companionships); $j++) { + $companion_table_entry = ""; + // Select all the companions in each companionship + $sql = "SELECT * FROM eq_companionship where valid=1 and ". + "companionship=". $unique_companionships[$j]['companionship']; + $this->db->query($sql,__LINE__,__FILE__); + + while ($this->db->next_record()) + { + // Get this companions information + 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"; + } + $table_data.= "$companion_table_entry


"; + + // 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']; + $this->db->query($sql,__LINE__,__FILE__); + $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); + $table_data.="$family_name Family"; + // Find out how many times Visits were performed by this companionship + // in the past $num_months for this Family + $header_row="Families"; + for($m=$num_months; $m >= 0; $m--) { + $month = date('m/Y', strtotime('-'.$m.' month')); + $month_start = date('Y-m', strtotime('-'.$m.' month')); $month_start .= "-01"; + $month_end = date('Y-m', strtotime('-'.$m.' month')); $month_end .= "-31"; + $sql = "SELECT * FROM eq_visit WHERE date >= '$month_start' AND date <= '$month_end' ". + " AND companionship=" . $unique_companionships[$j]['companionship']. + " AND family=". $family_id; + $this->db2->query($sql,__LINE__,__FILE__); + $link_data['menuaction'] = 'eq.eq.ht_update'; + $link_data['date'] = $month_start; + $link_data['month_start'] = $month_start; + $link_data['month_end'] = $month_end; + $link_data['month'] = $month; + $link_data['district'] = $districts[$i]['district']; + $link_data['district_name'] = $districts[$i]['name']; + $link_data['action'] = 'view'; + $link = $GLOBALS['phpgw']->link('/eq/index.php',$link_data); + $header_row .= "$month"; + if(!$total_visits[$m]) { $total_visits[$m] = 0; } + if($this->db2->next_record()) { + if($this->db2->f('visited') == 'y') { + $visits[$m]++; $total_visits[$m]++; + $table_data .= ''; + } + else if($this->db2->f('visited') == 'n') { + $table_data .= ''; + } + else { $table_data .= " "; } + } + else { $table_data .= " "; } + } + $table_data .= ""; + $k++; + } + $table_data .= ""; + } + $table_data .= "
"; + $stat_data = "$num_families Families
Visit Totals:
"; + + for($m=$num_months; $m >=0; $m--) { + $percent = ceil(($visits[$m] / $num_families)*100); + $stat_data .= "$visits[$m]
$percent%
"; + } + $stat_data .= ""; + + $this->t->set_var('table_width',$table_width); + $this->t->set_var('header_row',$header_row); + $this->t->set_var('table_data',$table_data); + $this->t->set_var('stat_data',$stat_data); + $this->t->fp('list','district_list',True); + } + + $totals = "$total_families Total Families
Visit Totals:
"; + for($m=$num_months; $m >=0; $m--) { + $percent = ceil(($total_visits[$m] / $total_families)*100); + $totals .= "$total_visits[$m]
$percent%
"; + } + $totals .= ""; + + $this->t->set_var('totals',$totals); + + $this->t->pfp('out','ht_view_t'); + $this->save_sessiondata(); + } + + + function ht_update() + { + $this->t->set_file(array('ht_update_t' => 'ht_update.tpl')); + $this->t->set_block('ht_update_t','district_list','list'); + $this->t->set_block('ht_update_t','save','savehandle'); + + $district = get_var('district',array('GET','POST')); + $district_name = get_var('district_name',array('GET','POST')); + $date = get_var('date',array('GET','POST')); + $month = get_var('month',array('GET','POST')); + $month_start = get_var('month_start',array('GET','POST')); + $month_end = get_var('month_end',array('GET','POST')); + $action = get_var('action',array('GET','POST')); + + $this->t->set_var('done_action',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ht_view')); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ht_update&action=save')); + $this->t->set_var('lang_done','Cancel'); + $this->t->set_var('district_name',$district_name); + $this->t->set_var('district_number',$district); + $this->t->set_var('title','Hometeaching Update ' . $month); + $this->t->set_var('date',$date); + + if($action == 'save') + { + // Get a list of all the companionships in this district + $sql = "SELECT distinct companionship FROM eq_companionship where district=". $district; + $this->db->query($sql,__LINE__,__FILE__); + $j=0; + while ($this->db->next_record()) + { + $unique_companionships[$j]['companionship'] = $this->db->f('companionship'); + $j++; + } + for ($j=0; $j < count($unique_companionships); $j++) + { + // 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__); + } + + // Now, add the visits that are checked for this month + $new_data = get_var('family_visited',array('POST')); + foreach ($new_data as $family) + { + foreach ($family as $data) + { + //print "family_visited: $data
"; + $data_array = explode("/",$data); + $family_id = $data_array[0]; + $companionship = $data_array[1]; + $date = $data_array[2]; + $visited = $data_array[3]; + if($visited == "") { $visited = $data_array[4]; } + //print "family_id: $family_id companionship: $companionship date: $date visited: $visited
"; + $this->db->query("INSERT INTO eq_visit (family,companionship,date,notes,visited) " + . "VALUES (" . $family_id .",". $companionship .",'". $date ."','','". $visited ."')",__LINE__,__FILE__); + } + } + $this->ht_view(); + return false; + } + + $sql = "SELECT * FROM eq_elder where valid=1 ORDER BY elder ASC"; + $this->db->query($sql,__LINE__,__FILE__); + $i=0; + while ($this->db->next_record()) + { + $elder_id[$i] = $this->db->f('elder'); + $elder_name[$i] = $this->db->f('name'); + $i++; + } + array_multisort($elder_name, $elder_id); + + // Make an array mapping elder_ids to elder_names + for($i=0; $i < count($elder_id); $i++) { + $id = $elder_id[$i]; + $elders[$id] = $elder_name[$i]; + } + + $sql = "SELECT * FROM eq_aaronic where valid=1 ORDER BY aaronic ASC"; + $this->db->query($sql,__LINE__,__FILE__); + while ($this->db->next_record()) + { + $aaronic_id = $this->db->f('aaronic'); + $aaronic[$aaronic_id]['name'] = $this->db->f('name'); + } + + // Select all the unique companionship numbers for this district + $sql = "SELECT distinct companionship FROM eq_companionship where district=". $district; + $this->db->query($sql,__LINE__,__FILE__); + $j=0; $unique_companionships=''; + while ($this->db->next_record()) + { + $unique_companionships[$j]['companionship'] = $this->db->f('companionship'); + $j++; + } + + $comp_width=300; $visit_width=25; $table_width=$comp_width + $num_months*$visit_width; + $table_data=""; $num_companionships = 0; $num_families = 0; $visits=0; + for ($j=0; $j < count($unique_companionships); $j++) { + $companion_table_entry = ""; + // Select all the companions in each companionship + $sql = "SELECT * FROM eq_companionship where valid=1 and ". + "companionship=". $unique_companionships[$j]['companionship']; + $this->db->query($sql,__LINE__,__FILE__); + + while ($this->db->next_record()) + { + // Get this companions information + 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"; + } + $table_data.= "$companion_table_entry
"; + + // 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']; + $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"; + $sql = "SELECT * FROM eq_visit WHERE date >= '$month_start' AND date <= '$month_end' ". + " AND companionship=" . $unique_companionships[$j]['companionship'] . + " AND family=". $family_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++; + $table_data .= ''; + $table_data .= 'Y'; + $table_data .= 'N'; + $table_data .= ' '; + $table_data .= ''; + } else if($this->db2->f('visited') == 'n') { + $table_data .= ''; + $table_data .= 'Y'; + $table_data .= 'N'; + $table_data .= ''; + $table_data .= ''; + } else { + $table_data .= ''; + $table_data .= 'Y'; + $table_data .= 'N'; + $table_data .= ' '; + $table_data .= ''; + } + } + else { + $value .= "/"; + $table_data .= ''; + $table_data .= 'Y'; + $table_data .= 'N'; + $table_data .= ' '; + $table_data .= ''; + } + } + $table_data .= ""; + $table_data .= ""; + } + $table_data .= "
"; + $stat_data = "$num_families Families
Visit Totals:
"; + + $percent = ceil(($visits / $num_families)*100); + $stat_data .= "$visits
$percent%
"; + $stat_data .= ""; + + $this->t->set_var('table_width',$table_width); + $this->t->set_var('header_row',$header_row); + $this->t->set_var('table_data',$table_data); + $this->t->set_var('stat_data',$stat_data); + $this->t->fp('list','district_list',True); + + $this->t->set_var('lang_reset','Clear Form'); + $this->t->set_var('lang_save','Save Changes'); + $this->t->set_var('savehandle',''); + + $this->t->pfp('out','ht_update_t'); + $this->t->pfp('addhandle','save'); + + $this->save_sessiondata(); + } + + function act_list() + { + $this->t->set_file(array('act_list_t' => 'act_list.tpl')); + $this->t->set_block('act_list_t','act_list','list'); + + $this->t->set_var('lang_name','Activity Name'); + $this->t->set_var('lang_date','Date'); + + $sql = "SELECT * FROM eq_activity ORDER BY date DESC"; + $this->db->query($sql,__LINE__,__FILE__); + $total_records = $this->db->num_rows(); + + $i = 0; + while ($this->db->next_record()) + { + $activity_list[$i]['name'] = $this->db->f('name'); + $activity_list[$i]['date'] = $this->db->f('date'); + $activity_list[$i]['activity'] = $this->db->f('activity'); + $i++; + } + + for ($i=0; $i < count($activity_list); $i++) + { + $this->nextmatchs->template_alternate_row_color(&$this->t); + $this->t->set_var('name',$activity_list[$i]['name']); + $this->t->set_var('date',$activity_list[$i]['date']); + + $link_data['menuaction'] = 'eq.eq.act_view'; + $link_data['activity'] = $activity_list[$i]['activity']; + $link_data['action'] = 'view'; + $this->t->set_var('view',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_view','View'); + + $link_data['menuaction'] = 'eq.eq.act_update'; + $link_data['activity'] = $activity_list[$i]['activity']; + $link_data['action'] = 'edit'; + $this->t->set_var('edit',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_edit','Edit'); + + $link_data['menuaction'] = 'eq.eq.act_update'; + $link_data['activity'] = '0'; + $link_data['action'] = 'add'; + $this->t->set_var('add','
'); + + $this->t->fp('list','act_list',True); + } + + $this->t->pfp('out','act_list_t'); + $this->save_sessiondata(); + } + + function act_view() + { + $this->t->set_file(array('act_view_t' => 'act_view.tpl')); + $this->t->set_block('act_view_t','part_list','list'); + + $sql = "SELECT * FROM eq_activity WHERE activity=" . intval(get_var('activity',array('GET','POST'))); + $this->db->query($sql,__LINE__,__FILE__); + $this->db->next_record(); + $this->t->set_var('name', $this->db->f('name')); + $this->t->set_var('date', $this->db->f('date')); + $this->t->set_var('notes', $this->db->f('notes')); + + $this->t->set_var('lang_name','Activity Name'); + $this->t->set_var('lang_date','Date'); + $this->t->set_var('lang_notes','Notes'); + $this->t->set_var('lang_done','Done'); + $this->t->set_var('lang_action','View'); + + $tr_color = $this->nextmatchs->alternate_row_color($tr_color); + $this->t->set_var('tr_color',$tr_color); + + $this->t->set_var('done_action',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.act_list')); + + $link_data['menuaction'] = 'eq.eq.act_update'; + $link_data['activity'] = get_var('activity',array('GET','POST')); + $link_data['action'] = 'edit'; + $this->t->set_var('edit',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_edit','Edit'); + $this->t->set_var('cal_date',$this->db->f('date')); + + // Now find out which elders participated in this activity + $sql = "SELECT * FROM eq_participation WHERE activity=" . intval(get_var('activity',array('GET','POST'))); + $this->db->query($sql,__LINE__,__FILE__); + $total_records = $this->db->num_rows(); + + $i = 0; + while ($this->db->next_record()) + { + $part_list[$i]['elder'] = $this->db->f('elder'); + $i++; + } + + for ($i=0; $i < count($part_list); $i++) + { + $sql = "SELECT * FROM eq_elder WHERE elder=" . $part_list[$i]['elder']; + $this->db->query($sql,__LINE__,__FILE__); + $this->db->next_record(); + $names[$i] = $this->db->f('name'); + } sort($names); + + for ($i=0; $i < count($names); $i++) + { + //$this->nextmatchs->template_alternate_row_color(&$this->t); + $this->t->set_var('elder_name',$names[$i]); + if(($i+1) % 3 == 0) { $this->t->set_var('table_sep',""); } + else { $this->t->set_var('table_sep',""); } + if(($i) % 3 == 0) { $this->nextmatchs->template_alternate_row_color(&$this->t); } + $this->t->fp('list','part_list',True); + } + + $this->t->pfp('out','act_view_t'); + $this->save_sessiondata(); + } + + function act_update() + { + $this->t->set_file(array('form' => 'act_update.tpl')); + $this->t->set_block('form','elder_list','list'); + $this->t->set_block('form','add','addhandle'); + $this->t->set_block('form','edit','edithandle'); + $this->t->set_var('lang_done','Done'); + + $action = get_var('action',array('GET','POST')); + $this->t->set_var('done_action',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.act_list')); + $activity['activity'] = intval(get_var('activity',array('GET','POST'))); + + if($action == 'save') + { + $activity['name'] = $this->db->db_addslashes(get_var('name',array('POST'))); + $activity['date'] = $this->db->db_addslashes(get_var('date',array('POST'))); + $activity['notes']= $this->db->db_addslashes(get_var('notes',array('POST'))); + $this->db->query("UPDATE eq_activity set " . + " name='" . $activity['name'] . + "', date='" . $activity['date'] . "'" . + ", notes='" . $activity['notes'] . "'" . + " WHERE activity=" . $activity['activity'],__LINE__,__FILE__); + + // Delete all the elders who have particiapted in this activity + $this->db->query("DELETE from eq_participation where activity=".$activity['activity'],__LINE__,__FILE__); + + // Re-add the elders who are checked as having participated in this activity + $elders = get_var('elder_name',array('POST')); + foreach ($elders as $elder) + { + $this->db->query("INSERT INTO eq_participation (elder,activity) " + . "VALUES (" . $elder . ",". $activity['activity'] . ")",__LINE__,__FILE__); + } + + $this->act_list(); + return false; + } + + if($action == 'insert') + { + $activity['name'] = $this->db->db_addslashes(get_var('name',array('POST'))); + $activity['date'] = $this->db->db_addslashes(get_var('date',array('POST'))); + $activity['notes']= $this->db->db_addslashes(get_var('notes',array('POST'))); + $this->db->query("INSERT INTO eq_activity (name,date,notes) " + . "VALUES ('" . $activity['name'] . "','" + . $activity['date'] . "','" . $activity['notes'] . "')",__LINE__,__FILE__); + $this->act_list(); + return false; + } + + if($action == 'add') + { + $activity['activity'] = 0; + $this->t->set_var('cal_date',$this->jscal->input('date','','','','','','',$this->cal_options)); + $this->t->set_var('name',''); + $this->t->set_var('date',''); + $this->t->set_var('notes',''); + $this->t->set_var('lang_done','Cancel'); + $this->t->set_var('lang_action','Adding New Activity'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.act_update&activity=' + . $activity['activity'] . '&action=' . 'insert')); + } + + if($action == 'edit') + { + $sql = "SELECT * FROM eq_activity WHERE activity=" . $activity['activity']; + $this->db->query($sql,__LINE__,__FILE__); + $this->db->next_record(); + $this->t->set_var('cal_date',$this->jscal->input('date',$this->db->f('date'),'','','','','',$this->cal_options)); + $this->t->set_var('name', $this->db->f('name')); + $this->t->set_var('date', $this->db->f('date')); + $this->t->set_var('notes', $this->db->f('notes')); + $this->t->set_var('lang_done','Cancel'); + $this->t->set_var('lang_action','Editing Activity'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.act_update&activity=' + . $activity['activity'] . '&action=' . 'save')); + + } + + $sql = "SELECT * FROM eq_elder"; + $this->db->query($sql,__LINE__,__FILE__); + $i=0; + while ($this->db->next_record()) + { + if($this->db->f('valid') == 1 || $action != 'add') { + $elder_name[$i] = $this->db->f('name'); + $elder_id[$i] = $this->db->f('elder'); + $elder_valid[$i] = $this->db->f('valid'); + $i++; + } + } + array_multisort($elder_name, $elder_id, $elder_valid); + + $j=0; + for ($i=0; $i < count($elder_id); $i++) + { + //$this->nextmatchs->template_alternate_row_color(&$this->t); + $sql = "SELECT * FROM eq_participation where activity=". $activity['activity'] . " AND elder=" . $elder_id[$i]; + $this->db->query($sql,__LINE__,__FILE__); + if($this->db->next_record()) { $this->t->set_var('checked','checked'); $checked=1; } + else { $this->t->set_var('checked',''); $checked=0; } + if($checked || $elder_valid[$i] == 1) { + $this->t->set_var('elder_name',$elder_name[$i]); + $this->t->set_var('elder',$elder_id[$i]); + if(($j+1) % 3 == 0) { $this->t->set_var('table_sep',""); } + else { $this->t->set_var('table_sep',""); } + if(($j) % 3 == 0) { $this->nextmatchs->template_alternate_row_color(&$this->t); } + $this->t->fp('list','elder_list',True); + $j++; + } + } + + $this->t->set_var('lang_reset','Clear Form'); + $this->t->set_var('lang_add','Add Activity'); + $this->t->set_var('lang_save','Save Changes'); + $this->t->set_var('edithandle',''); + $this->t->set_var('addhandle',''); + + $this->t->pfp('out','form'); + if($action == 'edit') { $this->t->pfp('addhandle','edit'); } + if($action == 'add') { $this->t->pfp('addhandle','add'); } + + $this->save_sessiondata(); + } + + function par_view() + { + $this->t->set_file(array('par_view_t' => 'par_view.tpl')); + $this->t->set_block('par_view_t','header_list','list1'); + $this->t->set_block('par_view_t','elder_list','list2'); + + $sql = "SELECT * FROM eq_elder where valid=1"; + $this->db->query($sql,__LINE__,__FILE__); + $i=0; + while ($this->db->next_record()) + { + $elder_name[$i] = $this->db->f('name'); + $elder_id[$i] = $this->db->f('elder'); + $i++; + } + array_multisort($elder_name, $elder_id); + + $sql = "SELECT * FROM eq_activity ORDER BY date DESC"; + $this->db->query($sql,__LINE__,__FILE__); + $total_records = $this->db->num_rows(); + + $i = 0; + while ($this->db->next_record()) + { + $activity_list[$i]['name'] = $this->db->f('name'); + $activity_list[$i]['date'] = $this->db->f('date'); + $activity_list[$i]['activity'] = $this->db->f('activity'); + if($activity_list[$i]['date'] == '0000-00-00') { $activity_list[$i]['date']=""; } + $i++; + } + + $elder_width=250; $part_width=25; $act_width=50; + $total_width=$elder_width+$part_width; + for ($i=0; $i < count($activity_list); $i++) { + $this->t->set_var('activity_name',$activity_list[$i]['name']); + $this->t->set_var('activity_date',$activity_list[$i]['date']); + $this->t->fp('list1','header_list',True); + $total_width += $act_width; + } + + for ($i=0; $i < count($elder_id); $i++) { + $participated=0; $part_table = ''; + $this->nextmatchs->template_alternate_row_color(&$this->t); + $this->t->set_var('elder_name',$elder_name[$i]); + for ($j=0; $j < count($activity_list); $j++) { + $sql = "SELECT * FROM eq_participation where activity=" + . $activity_list[$j]['activity'] . " AND elder=" . $elder_id[$i]; + $this->db->query($sql,__LINE__,__FILE__); + if($this->db->next_record()) { + $part_table .= ''; + $participated++; + } else { + $part_table .= ' '; + } + } + if($participated) { $part_table .= ''.$participated.''; } + else { $part_table .= ' '; } + $this->t->set_var('part_table',$part_table); + $this->t->fp('list2','elder_list',True); + } + $this->t->set_var('total_width',$total_width); + $this->t->set_var('elder_width',$elder_width); + $this->t->set_var('part_width',$part_width); + $this->t->set_var('act_width',$act_width); + $this->t->pfp('out','par_view_t'); + $this->save_sessiondata(); + } + + function ppi_view() + { + $this->t->set_file(array('ppi_view_t' => 'ppi_view.tpl')); + $this->t->set_block('ppi_view_t','district_list','list'); + + $this->t->set_var('linkurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_view')); + $num_months = get_var('num_months',array('GET','POST')); + if($num_months == '') { $num_months = $this->default_ppi_num_months; } + $this->t->set_var('num_months',$num_months); + if($num_months == 1) { $this->t->set_var('lang_num_months','Month of History'); } + else { $this->t->set_var('lang_num_months','Months of History'); } + $this->t->set_var('lang_filter','Filter'); + + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_view')); + $this->t->set_var('eqpres_ppi_link',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_view&eqpresppi=1')); + $eqpresppi = get_var('eqpresppi',array('GET','POST')); + + if($eqpresppi == 1) { + $num_months = get_var('num_months',array('GET','POST')); + if($num_months == '') { $num_months = $this->default_ppi_num_years; } + $this->t->set_var('num_months',$num_months); + $this->t->set_var('ppi_link_title','PPIs'); + $this->t->set_var('title','EQ President Yearly PPIs'); + if($num_months == 1) { $this->t->set_var('lang_num_months','Year of History'); } + else { $this->t->set_var('lang_num_months','Years of History'); } + $this->t->set_var('eqpres_ppi_link',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_view')); + } + else { + $this->t->set_var('ppi_link_title','EQ President Yearly PPIs'); + $this->t->set_var('title','PPIs'); + } + + $sql = "SELECT * FROM eq_district where valid=1 ORDER BY district ASC"; + $this->db->query($sql,__LINE__,__FILE__); + $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++; } + } + + $sql = "SELECT * FROM eq_elder where valid=1 ORDER BY elder ASC"; + $this->db->query($sql,__LINE__,__FILE__); + $i=0; + while ($this->db->next_record()) + { + $elder_id[$i] = $this->db->f('elder'); + $elder_name[$i] = $this->db->f('name'); + $i++; + } + array_multisort($elder_name, $elder_id); + for($i=0; $i < count($elder_id); $i++) { + $id = $elder_id[$i]; + $elders[$id] = $elder_name[$i]; + } + + $sql = "SELECT * FROM eq_aaronic where valid=1 ORDER BY aaronic ASC"; + $this->db->query($sql,__LINE__,__FILE__); + while ($this->db->next_record()) + { + $aaronic_id = $this->db->f('aaronic'); + $aaronic[$aaronic_id]['name'] = $this->db->f('name'); + } + + $total_companionships = 0; + $this->nextmatchs->template_alternate_row_color(&$this->t); + for ($i=0; $i < count($districts); $i++) { + if($eqpresppi == 1) { + $this->t->set_var('district_number','*'); + $this->t->set_var('district_name','EQ President'); + } else { + $this->t->set_var('district_number',$districts[$i]['district']); + $this->t->set_var('district_name',$districts[$i]['name']); + } + $supervisor = $districts[$i]['supervisor']; + $unique_companionships=''; + + // Select all the unique companionship numbers for this district + if($eqpresppi == 1) { + $sql = "SELECT distinct companionship FROM eq_companionship"; + } + else { + $sql = "SELECT distinct companionship FROM eq_companionship where district=". $districts[$i]['district']; + } + $this->db->query($sql,__LINE__,__FILE__); + $j=0; + while ($this->db->next_record()) + { + $unique_companionships[$j]['companionship'] = $this->db->f('companionship'); + $j++; + } + + $comp_width=400; $ppi_width=25; $table_width=$comp_width + $num_months*$ppi_width; + $table_data=""; $num_companionships = 0; $num_elders = 0; + for($m=$num_months; $m >= 0; $m--) { $ppis[$m] = 0; } + for ($j=0; $j < count($unique_companionships); $j++) { + // Select all the companions in each companionship + if($eqpresppi) { + $sql = "SELECT * FROM eq_companionship where valid=1 and aaronic=0 and ". + "companionship=". $unique_companionships[$j]['companionship']; + } + else { + $sql = "SELECT * FROM eq_companionship where valid=1 and ". + "companionship=". $unique_companionships[$j]['companionship']; + } + $this->db->query($sql,__LINE__,__FILE__); + $k=0; + while ($this->db->next_record()) + { + // Get this companions information + $num_elders++; $num_companionships++; + $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']; } + $link_data['menuaction'] = 'eq.eq.ppi_update'; + $link_data['companionship'] = $companionship; + $link_data['interviewer'] = $supervisor; + $link_data['elder'] = $elder_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"; + } + + // 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--) { + if($eqpresppi == 1) { + $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"; + $this->db2->query($sql,__LINE__,__FILE__); + $header_row .= "$year"; + } + else { + $month = date('m/Y', strtotime('-'.$m.' month')); + $month_start = date('Y-m', strtotime('-'.$m.' month')); $month_start .= "-01"; + $month_end = date('Y-m', strtotime('-'.$m.' month')); $month_end .= "-31"; + $sql = "SELECT * FROM eq_ppi WHERE date >= '$month_start' AND date <= '$month_end' ". + "AND elder=" . $elder_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]++; + $link_data['menuaction'] = 'eq.eq.ppi_update'; + $link_data['companionship'] = $companionship; + $link_data['interviewer'] = $supervisor; + $link_data['elder'] = $elder_id; + $link_data['name'] = $name; + $link_data['ppi'] = $this->db2->f('ppi'); + $link_data['eqpresppi'] = $eqpresppi; + $link_data['action'] = 'view'; + $date = $this->db2->f('date'); + $date_array = explode("-",$date); + $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 .= ''; + } + } + else { $table_data .= " "; } + } + $table_data .= ""; + $k++; + } + if($num_companionships % 2 != 0) { $num_companionships++; } + $table_data .= "
"; + } + // Now add Elders not assigned to any companionship to the table if we are in eqpresppi mode + if($eqpresppi == 1) { + $table_data .= "
Unassigned Potential Home Teachers
"; + foreach($elders as $elder_id => $value) { + $sql = "SELECT * FROM eq_companionship where valid=1 and elder=".$elder_id; + $this->db->query($sql,__LINE__,__FILE__); + if(!$this->db->next_record()) { + // We found an Elder not in a companionship, add them to the table + $num_elders++; $num_companionships++; + $companionship=0; + $name = $elders[$elder_id]; + $link_data['menuaction'] = 'eq.eq.ppi_update'; + $link_data['companionship'] = $companionship; + $link_data['interviewer'] = $supervisor; + $link_data['elder'] = $elder_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); + $table_data.= "$name"; + for($m=$num_months; $m >= 0; $m--) { + $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"; + $this->db2->query($sql,__LINE__,__FILE__); + if(!$total_ppis[$m]) { $total_ppis[$m] = 0; } + if($this->db2->next_record()) { + $ppis[$m]++; $total_ppis[$m]++; + $link_data['menuaction'] = 'eq.eq.ppi_update'; + $link_data['companionship'] = $companionship; + $link_data['interviewer'] = $supervisor; + $link_data['elder'] = $elder_id; + $link_data['name'] = $name; + $link_data['ppi'] = $this->db2->f('ppi'); + $link_data['eqpresppi'] = $eqpresppi; + $link_data['action'] = 'view'; + $date = $this->db2->f('date'); + $link = $GLOBALS['phpgw']->link('/eq/index.php',$link_data); + $table_data .= '
'.$date.'
'; + } + else { $table_data .= " "; } + } + $table_data .= ""; + } + } + } + $num_companionships = ceil($num_companionships/2); + $total_companionships += $num_companionships; + if($eqpresppi == 1) { + $stat_data = "$num_elders Elders
PPI Totals:
"; + } else { + $stat_data = "$num_companionships Companionships
PPI Totals:
"; + } + for($m=$num_months; $m >=0; $m--) { + if($eqpresppi == 1) { $percent = ceil(($ppis[$m] / $num_elders)*100); } + else { $percent = ceil(($ppis[$m] / $num_companionships)*100); } + $stat_data .= "$ppis[$m]
$percent%
"; + } + $stat_data .= ""; + + $this->t->set_var('table_width',$table_width); + $this->t->set_var('header_row',$header_row); + $this->t->set_var('table_data',$table_data); + $this->t->set_var('stat_data',$stat_data); + $this->t->fp('list','district_list',True); + } + + $totals = "$total_companionships Total Comps
PPI Totals:
"; + for($m=$num_months; $m >=0; $m--) { + $percent = ceil(($total_ppis[$m] / $total_companionships)*100); + $totals .= "$total_ppis[$m]
$percent%
"; + } + $totals .= ""; + + $this->t->set_var('totals',$totals); + $this->t->pfp('out','ppi_view_t'); + $this->save_sessiondata(); + } + + function ppi_update() + { + $this->t->set_file(array('form' => 'ppi_update.tpl')); + $this->t->set_block('form','interviewer_list','int_list'); + $this->t->set_block('form','add','addhandle'); + $this->t->set_block('form','edit','edithandle'); + + $this->t->set_var('done_action',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_view')); + $this->t->set_var('readonly',''); + $this->t->set_var('disabled',''); + + $action = get_var('action',array('GET','POST')); + $companionship = get_var('companionship',array('GET','POST')); + $interviewer = get_var('interviewer',array('GET','POST')); + $name = get_var('name',array('GET','POST')); + $ppi = get_var('ppi',array('GET','POST')); + $elder = get_var('elder',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()) + { + $supervisor = $this->db->f('supervisor'); + $sql = "SELECT * FROM eq_elder WHERE elder=" . $supervisor; + $this->db2->query($sql,__LINE__,__FILE__); + $this->db2->next_record(); + $interviewer_name = $this->db2->f('name'); + + if($supervisor == $interviewer) { + $this->t->set_var('interviewer',$supervisor . ' selected'); + } else { + $this->t->set_var('interviewer',$interviewer); + } + $this->t->set_var('interviewer_name',$interviewer_name); + $this->t->fp('int_list','interviewer_list',True); + } + + if($action == 'save') + { + $notes = $this->db->db_addslashes(get_var('notes',array('POST'))); + $this->db->query("UPDATE eq_ppi set " . + " ppi='" . $ppi . "'" . + ", interviewer='" . $interviewer . "'" . + ", elder='" . $elder . "'" . + ", date='" . $date . "'" . + ", notes='" . $notes . "'" . + ", eqpresppi='" . $eqpresppi . "'" . + " WHERE ppi=" . $ppi,__LINE__,__FILE__); + $this->ppi_view(); + return false; + } + + 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 . "','" + . $date . "','" . $notes . "','" . $eqpresppi ."')",__LINE__,__FILE__); + $this->ppi_view(); + return false; + } + + if($action == 'add') + { + $this->t->set_var('cal_date',$this->jscal->input('date','','','','','','',$this->cal_options)); + $this->t->set_var('ppi', ''); + $this->t->set_var('interviewer', $interviewer); + $this->t->set_var('name',$name); + $this->t->set_var('elder',$elder); + $this->t->set_var('date',''); + $this->t->set_var('notes',''); + $this->t->set_var('eqpresppi',$eqpresppi); + $this->t->set_var('lang_done','Cancel'); + $this->t->set_var('lang_action','Adding New PPI'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_update&ppi=' + . $ppi . '&action=' . 'insert')); + } + + if($action == 'edit' || $action == 'view') + { + $sql = "SELECT * FROM eq_ppi WHERE ppi=".$ppi; + $this->db->query($sql,__LINE__,__FILE__); + $this->db->next_record(); + $this->t->set_var('ppi',$ppi); + $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('date',$this->db->f('date')); + $this->t->set_var('notes',$this->db->f('notes')); + $this->t->set_var('eqpresppi',$this->db->f('eqpresppi')); + } + + if($action == 'edit') + { + $this->t->set_var('cal_date',$this->jscal->input('date',$date,'','','','','',$this->cal_options)); + $this->t->set_var('lang_done','Cancel'); + $this->t->set_var('lang_action','Editing PPI'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_update&ppi=' + . $ppi . '&action=' . 'save')); + } + + if($action == 'view') + { + $date = $this->db->f('date'); + $this->t->set_var('cal_date',''); + $this->t->set_var('readonly','READONLY'); + $this->t->set_var('disabled','DISABLED'); + $this->t->set_var('lang_done','Done'); + $this->t->set_var('lang_action','Viewing PPI'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.ppi_update&ppi=' + . $ppi . '&action=' . 'edit')); + } + + $this->t->set_var('lang_reset','Clear Form'); + $this->t->set_var('lang_add','Add PPI'); + $this->t->set_var('lang_save','Save Changes'); + $this->t->set_var('edithandle',''); + $this->t->set_var('addhandle',''); + + $this->t->pfp('out','form'); + + if($action == 'view') { $this->t->set_var('lang_save','Edit PPI'); } + if($action == 'edit' || $action == 'view') { $this->t->pfp('addhandle','edit'); } + if($action == 'add') { $this->t->pfp('addhandle','add'); } + + $this->save_sessiondata(); + } + + function vis_view() + { + $this->t->set_file(array('vis_view_t' => 'vis_view.tpl')); + $this->t->set_block('vis_view_t','visit_list','list1'); + $this->t->set_block('vis_view_t','family_list','list2'); + + $this->t->set_var('lang_name','Family Name'); + $this->t->set_var('lang_date','Date'); + + $sql = "SELECT * FROM eq_visit WHERE companionship=0 ORDER BY date DESC"; + $this->db->query($sql,__LINE__,__FILE__); + $total_records = $this->db->num_rows(); + + $i = 0; + while ($this->db->next_record()) + { + $visit_list[$i]['visit'] = $this->db->f('visit'); + $visit_list[$i]['family'] = $this->db->f('family'); + $visit_list[$i]['date'] = $this->db->f('date'); + $i++; + } + + for ($i=0; $i < count($visit_list); $i++) + { + $this->nextmatchs->template_alternate_row_color(&$this->t); + + $sql = "SELECT * FROM eq_family WHERE valid=1 AND family=".$visit_list[$i]['family']; + $this->db->query($sql,__LINE__,__FILE__); + $this->db->next_record(); + + $this->t->set_var('family',$visit_list[$i]['family']); + $this->t->set_var('family_name',$this->db->f('name')); + $this->t->set_var('date',$visit_list[$i]['date']); + + $link_data['menuaction'] = 'eq.eq.vis_update'; + $link_data['visit'] = $visit_list[$i]['visit']; + $link_data['name'] = $this->db->f('name'); + $link_data['date'] = $visit_list[$i]['date']; + $link_data['action'] = 'view'; + $this->t->set_var('view',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_view','View'); + + $link_data['menuaction'] = 'eq.eq.vis_update'; + $link_data['visit'] = $visit_list[$i]['visit']; + $link_data['name'] = $this->db->f('name'); + $link_data['date'] = $visit_list[$i]['date']; + $link_data['action'] = 'edit'; + $this->t->set_var('edit',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('lang_edit','Edit'); + + $this->t->fp('list1','visit_list',True); + } + + // List the families that are available to record a visit against + $sql = "SELECT * FROM eq_family WHERE valid=1"; + $this->db->query($sql,__LINE__,__FILE__); + $total_records = $this->db->num_rows(); + + $i = 0; + while ($this->db->next_record()) + { + $family_names[$i] = $this->db->f('name'); + $family_ids[$i] = $this->db->f('family'); + $i++; + } array_multisort($family_names, $family_ids); + + for ($i=0; $i < count($family_names); $i++) + { + $link_data['menuaction'] = 'eq.eq.vis_update'; + $link_data['visit'] = ''; + $link_data['family'] = $family_ids[$i]; + $link_data['action'] = 'add'; + $link_data['name'] = $family_names[$i]; + $this->t->set_var('add',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + + $this->t->set_var('name',$family_names[$i]); + if(($i+1) % 3 == 0) { $this->t->set_var('table_sep',""); } + else { $this->t->set_var('table_sep',""); } + if(($i) % 3 == 0) { $this->nextmatchs->template_alternate_row_color(&$this->t); } + + $this->t->fp('list2','family_list',True); + } + + $this->t->pfp('out','vis_view_t'); + $this->save_sessiondata(); + } + + function vis_update() + { + $this->t->set_file(array('form' => 'vis_update.tpl')); + $this->t->set_block('form','add','addhandle'); + $this->t->set_block('form','edit','edithandle'); + + $this->t->set_var('done_action',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.vis_view')); + $this->t->set_var('readonly',''); + $this->t->set_var('disabled',''); + + $action = get_var('action',array('GET','POST')); + $visit = get_var('visit',array('GET','POST')); + $family = get_var('family',array('GET','POST')); + $name = get_var('name',array('GET','POST')); + $date = get_var('date',array('GET','POST')); + $notes = get_var('notes',array('GET','POST')); + $companionship = 0; + + if($action == 'save') + { + $notes = $this->db->db_addslashes(get_var('notes',array('POST'))); + $this->db->query("UPDATE eq_visit set " . + " date='" . $date . "'" . + ", notes='" . $notes . "'" . + " WHERE visit=" . $visit,__LINE__,__FILE__); + $this->vis_view(); + return false; + } + + if($action == 'insert') + { + $notes = $this->db->db_addslashes(get_var('notes',array('POST'))); + $this->db->query("INSERT INTO eq_visit (family,companionship,date,notes) " + . "VALUES ('" . $family . "','" . $companionship . "','" + . $date . "','" . $notes . "')",__LINE__,__FILE__); + $this->vis_view(); + return false; + } + + if($action == 'add') + { + $this->t->set_var('cal_date',$this->jscal->input('date','','','','','','',$this->cal_options)); + $this->t->set_var('family', $family); + $this->t->set_var('visit', ''); + $this->t->set_var('name', $name); + $this->t->set_var('date',''); + $this->t->set_var('notes',''); + $this->t->set_var('lang_done','Cancel'); + $this->t->set_var('lang_action','Adding New Visit'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.vis_update&family=' + . $family . '&action=' . 'insert')); + } + + if($action == 'edit' || $action == 'view') + { + $sql = "SELECT * FROM eq_visit WHERE visit=".$visit; + $this->db->query($sql,__LINE__,__FILE__); + $this->db->next_record(); + $this->t->set_var('visit',$visit); + $this->t->set_var('name',$name); + $this->t->set_var('family', $family); + $this->t->set_var('date',$this->db->f('date')); + $this->t->set_var('notes',$this->db->f('notes')); + } + + if($action == 'edit') + { + $this->t->set_var('cal_date',$this->jscal->input('date',$date,'','','','','',$this->cal_options)); + $this->t->set_var('lang_done','Cancel'); + $this->t->set_var('lang_action','Editing Visit'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.vis_update&visit=' + . $visit . '&action=' . 'save')); + } + + if($action == 'view') + { + $date = $this->db->f('date'); + $this->t->set_var('cal_date',''); + $this->t->set_var('readonly','READONLY'); + $this->t->set_var('disabled','DISABLED'); + $this->t->set_var('lang_done','Done'); + $this->t->set_var('lang_action','Viewing Visit'); + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.vis_update&visit=' + . $visit . '&action=' . 'edit')); + } + + $this->t->set_var('lang_reset','Clear Form'); + $this->t->set_var('lang_add','Add Visit'); + $this->t->set_var('lang_save','Save Changes'); + $this->t->set_var('edithandle',''); + $this->t->set_var('addhandle',''); + + $this->t->pfp('out','form'); + + if($action == 'view') { $this->t->set_var('lang_save','Edit Visit'); } + if($action == 'edit' || $action == 'view') { $this->t->pfp('addhandle','edit'); } + if($action == 'add') { $this->t->pfp('addhandle','add'); } + + $this->save_sessiondata(); + } + + function att_view() + { + $this->t->set_file(array('att_view_t' => 'att_view.tpl')); + $this->t->set_block('att_view_t','act_list','list'); + + $this->t->set_block('att_view_t','month_list','list1'); + $this->t->set_block('att_view_t','header_list','list2'); + $this->t->set_block('att_view_t','elder_list','list3'); + + $this->t->set_var('linkurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.att_view')); + $num_months = get_var('num_months',array('GET','POST')); + if($num_months == '') { $num_months = $this->default_att_num_months; } + $this->t->set_var('num_months',$num_months); + $this->t->set_var('lang_filter','Filter'); + if($num_months == 1) { $this->t->set_var('lang_num_months','Month of History'); } + else { $this->t->set_var('lang_num_months','Months of History'); } + + $sql = "SELECT * FROM eq_elder where valid=1"; + $this->db->query($sql,__LINE__,__FILE__); + $i=0; + while ($this->db->next_record()) + { + $elder_name[$i] = $this->db->f('name'); + $elder_id[$i] = $this->db->f('elder'); + $i++; + } + array_multisort($elder_name, $elder_id); + + + // Create a list of sunday dates for a window of 3 months back and current month + $i=0; + $last_time = 0; + $found_sunday = 0; + $sunday_list[0]['date'] = date("Y-m-d", mktime(0, 0, 0, date("m")-$num_months, 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")); + while($last_time < $time_limit) + { + $day = date("w",$last_time); + if(date("w",$last_time) == 0) { + $sunday_list[$i]['date'] = date("Y-m-d", $last_time); + $last_date = explode("-",$sunday_list[$i]['date']); + $last_time = mktime(0, 0, 0, $last_date[1], $last_date[2], $last_date[0]); + $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; + } + $last_time += 90000; + if($found_sunday) { $i++; $found_sunday=0; } + } + + $old_month=$sunday_list[0]['month']; $span=0; + for ($i=0; $i < count($sunday_list); $i++) { + $date = $sunday_list[$i]['date']; + $this->t->set_var('date',$sunday_list[$i]['date']); + $this->t->set_var('day',$sunday_list[$i]['day']); + if(($old_month != $sunday_list[$i]['month']) || $i == count($sunday_list)-1) { + if($i == count($sunday_list)-1) { $span++; } + $cur_month = $sunday_list[$i]['month']; + $old_month = $sunday_list[$i]['month']; + $link_data['menuaction'] = 'eq.eq.att_update'; + $link_data['month'] = $sunday_list[$i-1]['month']; + $link_data['year'] = $sunday_list[$i-1]['year']; + $link_data['action'] = 'update_month'; + $this->t->set_var('update_month',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('month',$sunday_list[$i-1]['month']); + $this->t->set_var('year',$sunday_list[$i-1]['year']); + $this->t->set_var('span',$span); $span=0; + $this->t->fp('list1','month_list',True); + } $span++; + } + + $elder_width=200; $att_width=25; $total_width=$elder_width; + for ($i=0; $i < count($sunday_list); $i++) { + $link_data['menuaction'] = 'eq.eq.att_update'; + $link_data['month'] = $sunday_list[$i]['month']; + $link_data['year'] = $sunday_list[$i]['year']; + $link_data['day'] = $sunday_list[$i]['day']; + $link_data['date'] = $sunday_list[$i]['date']; + $link_data['action'] = 'update_day'; + $this->t->set_var('update_day',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('date',$sunday_list[$i]['date']); + $this->t->set_var('day',$sunday_list[$i]['day']); + $this->t->set_var('month',$sunday_list[$i]['month']); + $this->t->set_var('year',$sunday_list[$i]['year']); + $this->t->fp('list2','header_list',True); + $total_width += $att_width; + } + + for ($i=0; $i < count($elder_id); $i++) { + $att_table = ""; + $this->nextmatchs->template_alternate_row_color(&$this->t); + $this->t->set_var('elder_name',$elder_name[$i]); + #print "checking for elder: " . $elder_id[$i] . "
"; + for ($j=0; $j < count($sunday_list); $j++) { + #print "checking for date: " . $sunday_list[$j]['date'] . "
"; + #print "SELECT * FROM eq_attendance WHERE date='" + # . $sunday_list[$j]['date'] . "' AND elder=" . $elder_id[$i] . "
"; + $sql = "SELECT * FROM eq_attendance WHERE date='" + . $sunday_list[$j]['date'] . "' AND elder=" . $elder_id[$i]; + $this->db->query($sql,__LINE__,__FILE__); + if($this->db->next_record()) { + $att_table .= ''; + } else { + $att_table .= ' '; + } + } + $this->t->set_var('att_table',$att_table); + $this->t->fp('list3','elder_list',True); + } + $this->t->set_var('total_width',$total_width); + $this->t->set_var('elder_width',$elder_width); + $this->t->set_var('att_width',$att_width); + + $this->t->pfp('out','att_view_t'); + $this->save_sessiondata(); + } + + function att_update() + { + $monthnum['Jan']=1; $monthnum['Feb']=2; $monthnum['Mar']=3; $monthnum['Apr']=4; + $monthnum['May']=5; $monthnum['Jun']=6; $monthnum['Jul']=7; $monthnum['Aug']=8; + $monthnum['Sep']=9; $monthnum['Oct']=10; $monthnum['Nov']=11; $monthnum['Dec']=12; + + $this->t->set_file(array('form' => 'att_update.tpl')); + $this->t->set_block('form','edit','edithandle'); + + $this->t->set_block('form','month_list','list1'); + $this->t->set_block('form','header_list','list2'); + $this->t->set_block('form','elder_list','list3'); + + $this->t->set_var('done_action',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.att_view')); + + $action = get_var('action',array('GET','POST')); + $month = get_var('month',array('GET','POST')); + $year = get_var('year',array('GET','POST')); + $day = get_var('day',array('GET','POST')); + $date = get_var('date',array('GET','POST')); + + if($action == 'save_month' || $action == 'save_day') + { + $new_data = get_var('elders_attended',array('POST')); + $month = $monthnum[$month]; if($month < 10) { $month = "0" . $month; } + + if($action == 'save_month') { + $this->db->query("DELETE from eq_attendance where date LIKE '".$year."-".$month."-%'",__LINE__,__FILE__); + } + + if($action == 'save_day') { + $this->db->query("DELETE from eq_attendance where date LIKE '".$year."-".$month."-".$day."'",__LINE__,__FILE__); + } + + foreach ($new_data as $data) + { + $data_array = explode("-",$data); + $elder = $data_array[0]; + $date = "$data_array[1]-$data_array[2]-$data_array[3]"; + $this->db->query("INSERT INTO eq_attendance (elder,date) " + . "VALUES (" . $elder . ",'". $date . "')",__LINE__,__FILE__); + } + + $this->att_view(); + return false; + } + + $sql = "SELECT * FROM eq_elder where valid=1"; + $this->db->query($sql,__LINE__,__FILE__); + $i=0; + while ($this->db->next_record()) + { + $elder_name[$i] = $this->db->f('name'); + $elder_id[$i] = $this->db->f('elder'); + $i++; + } + array_multisort($elder_name, $elder_id); + + if($action == 'update_month') + { + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.att_update&action=save_month')); + $i=0; + $last_time = 0; + $found_sunday = 0; + $sunday_list[0]['date'] = date("Y-m-d", mktime(0, 0, 0, $monthnum[$month], 1, $year)); + $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, $monthnum[$month], 31, $year); + while($last_time <= $time_limit) + { + $day = date("w",$last_time); + if(date("w",$last_time) == 0) { + $sunday_list[$i]['date'] = date("Y-m-d", $last_time); + $last_date = explode("-",$sunday_list[$i]['date']); + $last_time = mktime(0, 0, 0, $last_date[1], $last_date[2], $last_date[0]); + $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; + } + $last_time += 90000; + if($found_sunday) { $i++; $found_sunday=0; } + } + + $this->t->set_var('span', $i); + $this->t->set_var('month',$sunday_list[$i-1]['month']); + $this->t->set_var('year',$sunday_list[$i-1]['year']); + $this->t->fp('list1','month_list',True); + $elder_width=200; $att_width=25; $total_width=$elder_width; + for ($i=0; $i < count($sunday_list); $i++) { + $link_data['menuaction'] = 'eq.eq.att_update'; + $link_data['month'] = $sunday_list[$i]['month']; + $link_data['year'] = $sunday_list[$i]['year']; + $link_data['day'] = $sunday_list[$i]['day']; + $link_data['date'] = $sunday_list[$i]['date']; + $link_data['action'] = 'update_day'; + $this->t->set_var('update_day',$GLOBALS['phpgw']->link('/eq/index.php',$link_data)); + $this->t->set_var('date',$sunday_list[$i]['date']); + $this->t->set_var('day',$sunday_list[$i]['day']); + $this->t->set_var('month',$sunday_list[$i]['month']); + $this->t->set_var('year',$sunday_list[$i]['year']); + $this->t->fp('list2','header_list',True); + $total_width += $att_width; + } + } + + if($action == 'update_day') + { + $this->t->set_var('actionurl',$GLOBALS['phpgw']->link('/eq/index.php','menuaction=eq.eq.att_update&action=save_day')); + $sunday_list[0]['date'] = date("Y-m-d", mktime(0, 0, 0, $monthnum[$month], $day, $year)); + $this->t->set_var('month',$month); + $this->t->set_var('year',$year); + $this->t->fp('list1','month_list',True); + $this->t->set_var('date',$date); + $this->t->set_var('day',$day); + $this->t->set_var('month',$month); + $this->t->set_var('year',$year); + $this->t->fp('list2','header_list',True); + } + + for ($i=0; $i < count($elder_id); $i++) { + $att_table = ""; + $this->nextmatchs->template_alternate_row_color(&$this->t); + $this->t->set_var('elder_name',$elder_name[$i]); + for ($j=0; $j < count($sunday_list); $j++) { + $sql = "SELECT * FROM eq_attendance WHERE date='" + . $sunday_list[$j]['date'] . "' AND elder=" . $elder_id[$i]; + $this->db->query($sql,__LINE__,__FILE__); + $value = $elder_id[$i] . "-" . $sunday_list[$j]['date']; + if($this->db->next_record()) { + $att_table .= ''; + } else { + $att_table .= ''; + } + } + $this->t->set_var('att_table',$att_table); + $this->t->fp('list3','elder_list',True); + } + + $this->t->set_var('lang_done', 'Cancel'); + $this->t->set_var('lang_reset','Clear Form'); + $this->t->set_var('lang_save','Save Changes'); + + $this->t->pfp('out','form'); + $this->t->pfp('addhandle','edit'); + + $this->save_sessiondata(); + } + +} + +?> diff --git a/inc/functions.inc.php b/inc/functions.inc.php new file mode 100644 index 0000000..525213b --- /dev/null +++ b/inc/functions.inc.php @@ -0,0 +1,14 @@ + diff --git a/inc/hook_add_def_pref.inc.php b/inc/hook_add_def_pref.inc.php new file mode 100644 index 0000000..e31a265 --- /dev/null +++ b/inc/hook_add_def_pref.inc.php @@ -0,0 +1,16 @@ +change('notes','notes_font','Verdana,Arial,Helvetica,sans-serif'); + $pref->change('notes','notes_font_size','3'); +?> diff --git a/inc/hook_admin.inc.php b/inc/hook_admin.inc.php new file mode 100644 index 0000000..1c8e3ba --- /dev/null +++ b/inc/hook_admin.inc.php @@ -0,0 +1,21 @@ + $GLOBALS['phpgw']->link('/eq/admin.php'), + ); +//Do not modify below this line + display_section($appname,$file); +} +?> diff --git a/inc/hook_manual.inc.php b/inc/hook_manual.inc.php new file mode 100644 index 0000000..50a6275 --- /dev/null +++ b/inc/hook_manual.inc.php @@ -0,0 +1,18 @@ + * + * -------------------------------------------- * + * This program is free software; you can redistribute it and/or modify it * + * under the terms of the GNU General Public License as published by the * + * Free Software Foundation; either version 2 of the License, or (at your * + * option) any later version. * + \**************************************************************************/ + /* $Id: hook_manual.inc.php,v 1.1.1.1 2001/05/20 07:40:32 seek3r Exp $ */ + + // Only Modify the $file variable..... + $file = Array(); +//Do not modify below this line + display_manual_section($appname,$file); +?> diff --git a/inc/hook_preferences.inc.php b/inc/hook_preferences.inc.php new file mode 100644 index 0000000..09305d4 --- /dev/null +++ b/inc/hook_preferences.inc.php @@ -0,0 +1,22 @@ + $GLOBALS['phpgw']->link('/eq/preferences.php'), +// 'Grant Access' => $GLOBALS['phpgw']->link('/index.php','menuaction=preferences.uiaclprefs.index&acl_app='.$appname), +// 'Edit categories' => $GLOBALS['phpgw']->link('/index.php','menuaction=preferences.uicategories.index&cats_app=' . $appname . '&cats_level=True&global_cats=True') + ); +//Do not modify below this line + display_section($appname,$file); +} +?> diff --git a/index.php b/index.php new file mode 100644 index 0000000..cd7662c --- /dev/null +++ b/index.php @@ -0,0 +1,79 @@ + 'eq', + 'noheader' => True, + 'nonavbar' => True + ); + include('../header.inc.php'); + + if (@isset($_GET['menuaction'])) + { + list($app,$class,$method) = explode('.',$_GET['menuaction']); + if (! $app || ! $class || ! $method) + { + $invalid_data = True; + } + } + else + { + $app = 'eq'; + $class = 'eq'; + $invalid_data = True; + } + + $GLOBALS['obj'] = CreateObject(sprintf('%s.%s',$app,$class)); + $GLOBALS[$class] = $GLOBALS['obj']; + if ((is_array($GLOBALS[$class]->public_functions) && $GLOBALS[$class]->public_functions[$method]) && ! $invalid_data) + { + execmethod($_GET['menuaction']); + unset($app); + unset($obj); + unset($class); + unset($method); + unset($invalid_data); + unset($api_requested); + } + else + { + if (! $app || ! $class || ! $method) + { + $GLOBALS['phpgw']->log->message(array( + 'text' => 'W-BadmenuactionVariable, menuaction missing or corrupt: %1', + 'p1' => $menuaction, + 'line' => __LINE__, + 'file' => __FILE__ + )); + } + + if (! is_array($obj->public_functions) || ! $obj->public_functions[$method] && $method) + { + $GLOBALS['phpgw']->log->message(array( + 'text' => 'W-BadmenuactionVariable, attempted to access private method: %1', + 'p1' => $method, + 'line' => __LINE__, + 'file' => __FILE__ + )); + } + //$GLOBALS['phpgw']->log->commit(); + + //$GLOBALS['phpgw']->redirect_link('/eq/index.php?menuaction=eq.eq.ht_view'); + } + +//$obj = CreateObject('eq.eq'); +//$obj->ht_view(); +//$GLOBALS['phpgw']->common->phpgw_footer(); + +?> diff --git a/setup/phpgw_en.lang b/setup/phpgw_en.lang new file mode 100644 index 0000000..41a5875 --- /dev/null +++ b/setup/phpgw_en.lang @@ -0,0 +1 @@ +eq common en EQ diff --git a/setup/phpgw_fr.lang b/setup/phpgw_fr.lang new file mode 100644 index 0000000..7cc3ceb --- /dev/null +++ b/setup/phpgw_fr.lang @@ -0,0 +1 @@ +eq common fr EQ diff --git a/setup/phpgw_sv.lang b/setup/phpgw_sv.lang new file mode 100644 index 0000000..1b63b18 --- /dev/null +++ b/setup/phpgw_sv.lang @@ -0,0 +1 @@ +eq common sv EQ diff --git a/setup/setup.inc.php b/setup/setup.inc.php new file mode 100644 index 0000000..a144ba4 --- /dev/null +++ b/setup/setup.inc.php @@ -0,0 +1,46 @@ + 'phpgwapi', + 'versions' => Array('0.9.10', '0.9.11' , '0.9.12', '0.9.13', '0.9.14', '0.9.16') + ); +?> diff --git a/templates/default/act_list.tpl b/templates/default/act_list.tpl new file mode 100644 index 0000000..3b6eb21 --- /dev/null +++ b/templates/default/act_list.tpl @@ -0,0 +1,27 @@ +
+
+
+ + + + + + + + + + + + + + + + + + + + +
{lang_date}{lang_name}
{date} + {name}{lang_view}{lang_edit}
{add}
+
+ diff --git a/templates/default/act_update.tpl b/templates/default/act_update.tpl new file mode 100644 index 0000000..96b4ed7 --- /dev/null +++ b/templates/default/act_update.tpl @@ -0,0 +1,64 @@ + + +{app_header} + +
+
+ + + + + + + + + + + + + + + + +
{lang_action}: {name}
Name: 
Date: {cal_date}
Notes:
+ + + + + + +
Elders Attending
{elder_name}{table_sep} + +
+ + + + + + + + +
+ + +
+
+
+ + + + + + + + +
+ + +
+
+ + + + + diff --git a/templates/default/act_view.tpl b/templates/default/act_view.tpl new file mode 100644 index 0000000..fe91407 --- /dev/null +++ b/templates/default/act_view.tpl @@ -0,0 +1,53 @@ + + + +{app_header} + +
+ + + + + + + + + + + + + + + + + + + +
{lang_action}: {name}
 
{lang_name}: {name}
{lang_date}: {cal_date}
{lang_notes}:
{notes}
+ + + + + + +
Elders Attending
{elder_name}{table_sep} + +
+ + + + + + +
+
+ +
+
+ Edit +
+
+ + + + diff --git a/templates/default/att_update.tpl b/templates/default/att_update.tpl new file mode 100644 index 0000000..8f98998 --- /dev/null +++ b/templates/default/att_update.tpl @@ -0,0 +1,46 @@ +
+
+ + + + + + + + +
Elder Attendance Table
+

+ + + + + + + + + + + + + + + + {att_table} + + +
 {month} {year}
Elder{day}
{elder_name}
+ + + + + + + +
+ + +
+
+ + +
diff --git a/templates/default/att_view.tpl b/templates/default/att_view.tpl new file mode 100644 index 0000000..7912c7f --- /dev/null +++ b/templates/default/att_view.tpl @@ -0,0 +1,44 @@ +
+
+ + + + +
Elder Attendance Table
+
+ + + + + + + +
+ Showing + {lang_num_months} + + +
+
+ + + + + + + + + + + + + + + + + {att_table} + + +
  + {month} {year}
Elder{day}
{elder_name}
+
diff --git a/templates/default/header.tpl b/templates/default/header.tpl new file mode 100644 index 0000000..ca6d7cd --- /dev/null +++ b/templates/default/header.tpl @@ -0,0 +1,28 @@ + + +

+

+ + + + + +
+ {lang_hometeaching} +   +   + {lang_activity} +   +   + {lang_participation} +   +   + {lang_ppi} +   +   + {lang_visit} +   +   + {lang_attendance} +
+
diff --git a/templates/default/ht_update.tpl b/templates/default/ht_update.tpl new file mode 100644 index 0000000..91db64a --- /dev/null +++ b/templates/default/ht_update.tpl @@ -0,0 +1,41 @@ +
+
+ + + + + + + +
{title}
+ + +

+ + + + + {header_row} + {table_data} + {stat_data} +
+ District {district_number}: {district_name} +
+ + + + + + + + + +
+ + +
+
+
+ + + diff --git a/templates/default/ht_view.tpl b/templates/default/ht_view.tpl new file mode 100644 index 0000000..56b34ee --- /dev/null +++ b/templates/default/ht_view.tpl @@ -0,0 +1,48 @@ +
+ + + + + +
{title}
+
+ +
+ + + + + +
+ Showing + {lang_num_months} + + +
+
+ +
+ + + + + + + {header_row} + {table_data} + {stat_data} +
+ District {district_number}: {district_name} +
+

+ + + + + + {header_row} + {totals} +
+ Total Visits +
+
diff --git a/templates/default/images/navbar.gif b/templates/default/images/navbar.gif new file mode 100644 index 0000000..2042bea Binary files /dev/null and b/templates/default/images/navbar.gif differ diff --git a/templates/default/images/navbar.gif.old b/templates/default/images/navbar.gif.old new file mode 100644 index 0000000..8f380ab Binary files /dev/null and b/templates/default/images/navbar.gif.old differ diff --git a/templates/default/images/navbar.png b/templates/default/images/navbar.png new file mode 100644 index 0000000..72ff1a8 Binary files /dev/null and b/templates/default/images/navbar.png differ diff --git a/templates/default/images/navbar.png.old b/templates/default/images/navbar.png.old new file mode 100644 index 0000000..01e5d13 Binary files /dev/null and b/templates/default/images/navbar.png.old differ diff --git a/templates/default/par_update.tpl b/templates/default/par_update.tpl new file mode 100644 index 0000000..e69de29 diff --git a/templates/default/par_view.tpl b/templates/default/par_view.tpl new file mode 100644 index 0000000..53d7b46 --- /dev/null +++ b/templates/default/par_view.tpl @@ -0,0 +1,23 @@ +
+ + + + + +
Elder Participation Table
+

+ + + + + + + + + + + {part_table} + + +
Elder{activity_name}
{activity_date}
Participated
{elder_name}
+
diff --git a/templates/default/ppi_update.tpl b/templates/default/ppi_update.tpl new file mode 100644 index 0000000..66c08a6 --- /dev/null +++ b/templates/default/ppi_update.tpl @@ -0,0 +1,71 @@ +{app_header} + +
+ + + + + + + + + + + + + + + + + + + + + + + +
{lang_action}: {name}
Name:  +
Interviewer:  + +
Date:  + {cal_date} +
Notes:
+
+ + + + + + + + +
+ + +
+
+
+ + + + + + + + +
+ + +
+
+ + + + + + + diff --git a/templates/default/ppi_view.tpl b/templates/default/ppi_view.tpl new file mode 100644 index 0000000..0a1c64a --- /dev/null +++ b/templates/default/ppi_view.tpl @@ -0,0 +1,49 @@ +
+ + + + + +
{title}
+ + {ppi_link_title}
+ +
+ + + + + +
+ Showing + {lang_num_months} + + +
+
+ +
+ + + + + + + {header_row} + {table_data} + {stat_data} +
+ District {district_number}: {district_name} +
+

+ + + + + + {header_row} + {totals} +
+ Total PPIs +
+
diff --git a/templates/default/skel/delete.tpl b/templates/default/skel/delete.tpl new file mode 100644 index 0000000..ff650a0 --- /dev/null +++ b/templates/default/skel/delete.tpl @@ -0,0 +1,24 @@ + + +


+ +
+ + + + + + + + +
{deleteheader}
+ + + + + +
+ {hidden_vars} + {lang_no}
+
+
\ No newline at end of file diff --git a/templates/default/skel/form.tpl b/templates/default/skel/form.tpl new file mode 100644 index 0000000..28582b5 --- /dev/null +++ b/templates/default/skel/form.tpl @@ -0,0 +1,64 @@ + + + + +
+
+ {hidden_vars} + + + + + + + + + + + + + + + + +
{lang_action}: {name}
{message}
{lang_access}:  {access}
+ + + + + + + + + +
+ {hidden_vars} + + + {hidden_vars} + {lang_done}
+
+ + + + + + + + + + + +
+ {hidden_vars} + + + {hidden_vars} + {delete} + {hidden_vars} + {lang_done}
+ + + + + diff --git a/templates/default/skel/header.tpl b/templates/default/skel/header.tpl new file mode 100644 index 0000000..ca6d7cd --- /dev/null +++ b/templates/default/skel/header.tpl @@ -0,0 +1,28 @@ + + +

+

+ + + + + +
+ {lang_hometeaching} +   +   + {lang_activity} +   +   + {lang_participation} +   +   + {lang_ppi} +   +   + {lang_visit} +   +   + {lang_attendance} +
+
diff --git a/templates/default/skel/list.tpl b/templates/default/skel/list.tpl new file mode 100644 index 0000000..dd42a16 --- /dev/null +++ b/templates/default/skel/list.tpl @@ -0,0 +1,50 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
{title_notes}: {name}
+ + + {left} + + {right} + +
{search_message}
+
+
+ {lang_category}   +
+
+
+ {hidden_vars} +   +
{new_date}{first}{lang_view}{lang_edit}{lang_delete}
+ {hidden_vars} +
+
\ No newline at end of file diff --git a/templates/default/skel/preference_acl.tpl b/templates/default/skel/preference_acl.tpl new file mode 100644 index 0000000..d005033 --- /dev/null +++ b/templates/default/skel/preference_acl.tpl @@ -0,0 +1,25 @@ +{errors} +{title} + + + {nml} + + {nmr} + +
+
+
+ {common_hidden_vars} + + +
+
+
+
+ + {row} +
+{common_hidden_vars_form} + +
+
diff --git a/templates/default/skel/preference_acl_row.tpl b/templates/default/skel/preference_acl_row.tpl new file mode 100644 index 0000000..be03ce5 --- /dev/null +++ b/templates/default/skel/preference_acl_row.tpl @@ -0,0 +1,9 @@ + + + {user} + + + + + + diff --git a/templates/default/skel/preference_colspan.tpl b/templates/default/skel/preference_colspan.tpl new file mode 100644 index 0000000..b22fba6 --- /dev/null +++ b/templates/default/skel/preference_colspan.tpl @@ -0,0 +1,8 @@ + + {string} + {read_lang} + {add_lang} + {edit_lang} + {delete_lang} + {private_lang} + diff --git a/templates/default/skel/preferences.tpl b/templates/default/skel/preferences.tpl new file mode 100644 index 0000000..8bb144a --- /dev/null +++ b/templates/default/skel/preferences.tpl @@ -0,0 +1,24 @@ + +

+
+
+ + + + + + + + + + + + + + + + +
{lang_action}
{lang_select_font}:
{lang_select_size}:
+ +  
+
\ No newline at end of file diff --git a/templates/default/skel/view.tpl b/templates/default/skel/view.tpl new file mode 100644 index 0000000..aedd820 --- /dev/null +++ b/templates/default/skel/view.tpl @@ -0,0 +1,27 @@ + + + + +
+ + + + + + + + + + + + + + + + +
{lang_action}: {name}
 
{lang_time}: {new_date}
{fnote}
+ {hidden_vars} + {lang_done}
+
+ + \ No newline at end of file diff --git a/templates/default/vis_update.tpl b/templates/default/vis_update.tpl new file mode 100644 index 0000000..1d39257 --- /dev/null +++ b/templates/default/vis_update.tpl @@ -0,0 +1,67 @@ +{app_header} + +
+
+ + + + + + + + + + + + + + + + + + + + + + + +
{lang_action}: {name} Family
Family Name:  +
Companionship:   +
Date:  + {cal_date} +
Notes:
+
+ + + + + + + + +
+ + +
+
+
+ + + + + + + + +
+ + +
+
+ + + + + + + diff --git a/templates/default/vis_view.tpl b/templates/default/vis_view.tpl new file mode 100644 index 0000000..4cffa74 --- /dev/null +++ b/templates/default/vis_view.tpl @@ -0,0 +1,37 @@ +
+ +
+

Presidency Visits

+ + + + + + + + + + + + + + + + + +
{lang_name}{lang_date}
+ {family_name} Family{date}{lang_view}{lang_edit}
+ +

+ + + + + + +
+ Ward Families Available to Visit
{name} Family{table_sep} + +
+
+ diff --git a/templates/idots/images/navbar.gif b/templates/idots/images/navbar.gif new file mode 100644 index 0000000..2042bea Binary files /dev/null and b/templates/idots/images/navbar.gif differ diff --git a/templates/idots/images/navbar.old.png b/templates/idots/images/navbar.old.png new file mode 100644 index 0000000..0746cdc Binary files /dev/null and b/templates/idots/images/navbar.old.png differ diff --git a/templates/idots/images/navbar.png b/templates/idots/images/navbar.png new file mode 100644 index 0000000..fd5ec98 Binary files /dev/null and b/templates/idots/images/navbar.png differ diff --git a/templates/idots/images/unit.jpg b/templates/idots/images/unit.jpg new file mode 100755 index 0000000..cf2adca Binary files /dev/null and b/templates/idots/images/unit.jpg differ diff --git a/templates/idsociety/images/navbar-over.gif b/templates/idsociety/images/navbar-over.gif new file mode 100644 index 0000000..c11d1f9 Binary files /dev/null and b/templates/idsociety/images/navbar-over.gif differ diff --git a/templates/idsociety/images/navbar-over.png b/templates/idsociety/images/navbar-over.png new file mode 100644 index 0000000..7ad9961 Binary files /dev/null and b/templates/idsociety/images/navbar-over.png differ diff --git a/templates/idsociety/images/navbar.gif b/templates/idsociety/images/navbar.gif new file mode 100644 index 0000000..d51c4a8 Binary files /dev/null and b/templates/idsociety/images/navbar.gif differ diff --git a/templates/idsociety/images/navbar.png b/templates/idsociety/images/navbar.png new file mode 100644 index 0000000..9b430ee Binary files /dev/null and b/templates/idsociety/images/navbar.png differ diff --git a/x.gif b/x.gif new file mode 100755 index 0000000..12ed1d5 Binary files /dev/null and b/x.gif differ diff --git a/x.psd b/x.psd new file mode 100755 index 0000000..8353958 Binary files /dev/null and b/x.psd differ