forked from science-ation/science-ation
163 lines
4.7 KiB
PHP
163 lines
4.7 KiB
PHP
<?
|
|
/*
|
|
This file is part of the 'Science Fair In A Box' project
|
|
SFIAB Website: http://www.sfiab.ca
|
|
|
|
Copyright (C) 2005 Sci-Tech Ontario Inc <info@scitechontario.org>
|
|
Copyright (C) 2005 James Grant <james@lightbox.org>
|
|
|
|
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, version 2.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; see the file COPYING. If not, write to
|
|
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
Boston, MA 02111-1307, USA.
|
|
*/
|
|
|
|
$report_volunteers_fields = array(
|
|
|
|
'last_name' => array(
|
|
'start_option_group' => 'Volunteer Name Information',
|
|
'name' => 'Volunteer -- Last Name',
|
|
'header' => 'Last Name',
|
|
'width' => 25.4 /*mm*/,
|
|
'table' => 'users.lastname' ),
|
|
|
|
'first_name' => array(
|
|
'name' => 'Volunteer -- First Name',
|
|
'header' => 'First Name',
|
|
'width' => 25.4 /*mm*/,
|
|
'table' => 'users.firstname' ),
|
|
|
|
'name' => array(
|
|
'name' => 'Volunteer -- Full Name (last, first)',
|
|
'header' => 'Name',
|
|
'width' => 44.45 /*mm*/,
|
|
'table' => "CONCAT(users.lastname, ', ', users.firstname)",
|
|
'table_sort'=> 'users.lastname' ),
|
|
|
|
'namefl' => array(
|
|
'name' => 'Volunteer -- Full Name (first last)',
|
|
'header' => 'Name',
|
|
'width' => 44.45 /*mm*/,
|
|
'table' => "CONCAT(users.firstname, ' ', users.lastname)",
|
|
'table_sort'=> 'users.lastname' ),
|
|
|
|
'email' => array(
|
|
'start_option_group' => 'Volunteer Contact Information',
|
|
'name' => 'Volunteer -- Email',
|
|
'header' => 'Email',
|
|
'width' => 44.45 /*mm*/,
|
|
'table' => 'accounts.email'),
|
|
|
|
'phone' => array(
|
|
'name' => 'Volunteer -- Phone',
|
|
'header' => 'Phone',
|
|
'width' => 25.4 /*mm*/,
|
|
'table' => 'users.phonehome'),
|
|
|
|
'cell' => array(
|
|
'name' => 'Volunteer -- Cell',
|
|
'header' => 'Cell',
|
|
'width' => 25.4 /*mm*/,
|
|
'table' => 'users.phonecell'),
|
|
|
|
'organization' => array(
|
|
'name' => 'Volunteer -- Phone',
|
|
'header' => 'Organziation',
|
|
'width' => 25.4 /*mm*/,
|
|
'table' => 'users.organization'),
|
|
|
|
'firstaid' => array(
|
|
'start_option_group' => 'Volunteer Miscellaneous',
|
|
'name' => 'Volunteer -- First Aid Training',
|
|
'header' => 'F.Aid',
|
|
'width' => 12.7 /*mm*/,
|
|
'table' => 'users.firstaid',
|
|
'value_map' =>array ('no' => 'no', 'yes' => 'YES')),
|
|
|
|
'cpr' => array(
|
|
'name' => 'Volunteer -- CPR Training',
|
|
'header' => 'CPR',
|
|
'width' => 12.7 /*mm*/,
|
|
'table' => 'users.cpr',
|
|
'value_map' =>array ('no' => 'no', 'yes' => 'YES')),
|
|
|
|
'complete' => array(
|
|
'name' => 'Volunteer -- Registration Complete',
|
|
'header' => 'Cmpl',
|
|
'width' => 10.16 /*mm*/,
|
|
'table' => 'user_roles.complete',
|
|
'value_map' => array ('no' => 'No', 'yes' => 'Yes')),
|
|
|
|
'position_name' => array (
|
|
'name' => 'Volunteer Position -- Name',
|
|
'header' => 'Position',
|
|
'width' => 76.2 /*mm*/,
|
|
'table' => 'volunteer_positions.name',
|
|
'components' => array('signup')),
|
|
|
|
/* The label system depends on each report type having conference_name and conference_logo */
|
|
'conference_name' => array(
|
|
'start_option_group' => 'Conference Information',
|
|
'name' => 'Conference -- Name',
|
|
'header' => 'Conference Name',
|
|
'width' => 76.2 /*mm*/,
|
|
'table' => "'".mysql_real_escape_string($conference['name'])."'"),
|
|
|
|
'conference_logo' => array(
|
|
'name' => 'Conference -- Logo (for Labels only)',
|
|
'header' => '',
|
|
'width' => 1 /*mm*/,
|
|
'table' => "CONCAT(' ')"),
|
|
|
|
'static_text' => array (
|
|
'start_option_group' => 'Special Fields',
|
|
'name' => 'Static Text (useful for labels)',
|
|
'header' => '',
|
|
'width' => 2.54 /*mm*/,
|
|
'table' => "CONCAT(' ')"),
|
|
|
|
);
|
|
|
|
function report_volunteers_fromwhere($report, $components)
|
|
{
|
|
global $config;
|
|
|
|
$conferences_id = $report['conferences_id'];
|
|
|
|
$signup_join = '';
|
|
$signup_where = '';
|
|
|
|
if(in_array('signup', $components)) {
|
|
$signup_join = "LEFT JOIN volunteer_positions_signup
|
|
ON (users.id=volunteer_positions_signup.users_id)
|
|
LEFT JOIN volunteer_positions
|
|
ON (volunteer_positions_signup.volunteer_positions_id=volunteer_positions.id)";
|
|
$signup_where = "AND (volunteer_positions_signup.conferences_id = '$conferences_id' OR volunteer_positions_signup.conferences_id IS NULL)";
|
|
}
|
|
|
|
$q = " FROM users
|
|
LEFT JOIN user_roles on user_roles.users_id=users.id
|
|
LEFT JOIN accounts ON accounts.id=users.accounts_id
|
|
$signup_join
|
|
$uv_from
|
|
WHEE
|
|
user_roles.type='volunteer'
|
|
AND users.conferences_id='$conferences_id'
|
|
$signup_where
|
|
";
|
|
|
|
return $q;
|
|
}
|
|
|
|
|
|
?>
|