array(
"title" => t("Access fossee_stats"),
"description" => t("Allows users to view fossee stats.")
),
"view workshop" => array(
"title" => t("View Workshop"),
"description" => t("Allows users to view workshop.")
),
"manage workshop" => array(
"title" => t("Manage Workshop"),
"description" => t("Allows users to manage workshop.")
),
"view postalcampaign" => array(
"title" => t("View postalcampaign"),
"description" => t("Allows users to view postalcampaign.")
),
"manage postalcampaign" => array(
"title" => t("Manage Postalcampaign"),
"description" => t("Allows users to manage postalcampaign.")
),
"view tutorial" => array(
"title" => t("View Spoken Tutorial"),
"description" => t("Allows users to view spoken tutorial.")
),
"manage tutorial" => array(
"title" => t("Manage Spoken Tutorial"),
"description" => t("Allows users to manage spoken tutorial.")
),
"view events" => array(
"title" => t("View Events"),
"description" => t("Allows users to view events.")
),
"manage events" => array(
"title" => t("Manage Events"),
"description" => t("Allows users to manage events.")
),
"administer events" => array(
"title" => t("Events upload setting"),
"description" => t("Allows users to manage postalcampaign.")
)
);
}
function fossee_stats_menu()
{
$items = array();
//Load main page
$items["fossee-stats"] = array(
"title" => "FOSSEE STATS",
"page callback" => "drupal_get_form",
"page arguments" => array(
"fossee_stats_form"
),
"access arguments" => array(
"access fossee_stats"
),
"type" => MENU_NORMAL_ITEM
);
//Fetch the list of TBC and LM which comes after filter is applied.
$items["get-list"] = array(
"title" => "",
"page callback" => "list_tbc_and_lm_detail",
'page arguments' => array(
8
),
"access arguments" => array(
"access fossee_stats"
),
"type" => MENU_CALLBACK
);
//Fetch the list of self workshop with all detail after filter is applied and count is received
$items['completed-workshops-list'] = array(
'title' => '',
'page callback' => 'completed_workshops_list',
'page arguments' => array(
5
),
"access arguments" => array(
"access fossee_stats"
),
//'access callback' => TRUE,
"type" => MENU_CALLBACK
);
//Fetch the Details of self workshop
$items['view-completed-workshop'] = array(
'title' => 'Workshop Details',
'page callback' => 'view_completed_workshop',
'access callback' => TRUE
);
//Following are menu of Events (Workshop, Conference along with testimonial and images and speakers)
$items["events/add"] = array(
"title" => "Add Events",
"page callback" => "workshop_display_all",
"access arguments" => array(
"manage workshop"
),
"type" => MENU_CALLBACK
);
//To edit existing events detail
$items["events/edit"] = array(
"title" => "Edit Events",
"page callback" => "workshop_edit_all",
"access arguments" => array(
"manage workshop"
),
"type" => MENU_CALLBACK
);
//To delete existing events
$items["events/delete"] = array(
"title" => "Delete Events",
"page callback" => "workshop_delete_all",
"access arguments" => array(
"manage workshop"
),
"type" => MENU_CALLBACK
);
//List of all events
$items["events/view_details"] = array(
"title" => "Details of Selected Event",
"page callback" => "workshop_view_details_all",
"access arguments" => array(
"view workshop"
),
"type" => MENU_CALLBACK
);
//Generate PDF
$items["events/pdfgenerate"] = array(
"title" => "Generate PDF of Selected Event",
"page callback" => "generate_pdf",
"access arguments" => array(
"view workshop"
),
"type" => MENU_CALLBACK
);
//List of images added to particular event
$items["events/images"] = array(
"title" => "Event's Images",
"page callback" => "workshop_view_image_all",
"access arguments" => array(
"view workshop"
),
"type" => MENU_CALLBACK
);
//For changing image
$items["events/images/change"] = array(
"title" => "Event's Images",
"page callback" => "workshop_view_image_change",
"access arguments" => array(
"view workshop"
),
"type" => MENU_CALLBACK
);
//Display all testimonial added for event in list
$items["events/testimonials"] = array(
//"title" => "Testimonials",
"page callback" => "workshop_view_all_testimonials",
"access arguments" => array(
"view workshop"
),
"type" => MENU_CALLBACK
);
//Display details of selected testimonial
$items["events/testimonials/view"] = array(
"title" => "Testimonial",
"page callback" => "workshop_view_selected_testimonial",
"access arguments" => array(
"view workshop"
),
"type" => MENU_CALLBACK
);
$items["events"] = array(
"title" => "Events",
"page callback" => "event_seminar_view_all",
"access arguments" => array(
"view events"
),
"type" => MENU_CALLBACK
);
$items["testconf"] = array(
"title" => "Activities",
"page callback" => "event_activities_all",
"access arguments" => array(
"view events"
),
"type" => MENU_CALLBACK
);
// List of all Postal Campaign
$items["postalcampaign"] = array(
"title" => "Postal Campaign",
"page callback" => "postalcampaign_view_withoutfilter",
"access arguments" => array(
"view postalcampaign"
),
"type" => MENU_CALLBACK
);
// Add Postal Campaign
$items["postalcampaign/add"] = array(
"title" => "Add Postal Campaign",
"page callback" => "postalcampaign_display_all",
"access arguments" => array(
"manage postalcampaign"
),
"type" => MENU_CALLBACK
);
// Edit Postal Campaign
$items["postalcampaign/edit"] = array(
"title" => "Edit Postal Campaign",
"page callback" => "postalcampaign_edit_all",
"access arguments" => array(
"manage postalcampaign"
),
"type" => MENU_CALLBACK
);
// Delete Postal Campaign
$items["postalcampaign/delete"] = array(
"title" => "Delete Postal Campaign",
"page callback" => "postalcampaign_delete_all",
"access arguments" => array(
"manage postalcampaign"
),
"type" => MENU_CALLBACK
);
// View detail of selected Postal Campaign
$items["postalcampaign/view_details"] = array(
"title" => "Postal Campaign Detail",
"page callback" => "postalcampaign_view_details_all",
"access arguments" => array(
"view postalcampaign"
),
"type" => MENU_CALLBACK
);
//To download postal campaign poster in zip format
$items["postalcampaign/download"] = array(
"title" => "Download Postal Campaign",
"page callback" => "createZipOfPosterMaterial",
"access arguments" => array(
"view postalcampaign"
),
"type" => MENU_CALLBACK
);
/*Spoken Tutorial*/
//Add Spoken Tutorial
$items["spokentutorial/add"] = array(
"title" => "Add Spoken Tutorial",
"page callback" => "spokentutorial_display_all",
"access arguments" => array(
"view tutorial"
),
"type" => MENU_CALLBACK
);
/* ADMIN SETTINGS */
//For mentioning extension allowed for image and pdf
$items['admin/settings/events'] = array(
'title' => 'Events Settings',
'description' => 'Events Settings',
'page callback' => 'drupal_get_form',
'page arguments' => array(
'events_settings_form'
),
'access arguments' => array(
'administer events'
),
'type' => MENU_NORMAL_ITEM,
'file' => 'settings.inc'
);
return $items;
}
//Folder path to save all uploaded images of events
function events_images_path()
{
return $_SERVER['DOCUMENT_ROOT'] . base_path() . 'events_images/';
}
//Folder path to save all uploaded images/PDF of postal campaign
function posters_path()
{
return $_SERVER['DOCUMENT_ROOT'] . base_path() . 'campaign_posters/';
}
//Main Page Form
function fossee_stats_form($form, &$form_state)
{
/* First Dropdown for Foss type */
$options_first = _ajax_example_get_first_dropdown_options();
if (isset($form_state['values']['foss_sub_project']) && isset($form_state['values']['foss_type']) && isset($form_state['values']['foss_sub_project_status'])) {
$foss_project = isset($form_state['values']['foss_type']) ? $form_state['values']['foss_type'] : key($options_first);
} else {
$foss_project = '';
}
$form['foss_type'] = array(
'#type' => 'select',
'#prefix' => '
',
'#suffix' => ' ',
'#title' => t('FOSS Type'),
'#multiple' => false,
'#options' => $options_first,
//'#default_value' => $foss_project,
'#validated' => TRUE,
'#ajax' => array(
'callback' => 'ajax_foss_type_dependent_dropdown_callback',
'wrapper' => 'dropdown-second-replace',
'progress' => array(
'message' => ''
)
)
);
/* Second Dropdown for Activities like TBC, LM and other */
if (isset($form_state['values']['foss_sub_project']) && isset($form_state['values']['foss_type']) && isset($form_state['values']['foss_sub_project_status'])) {
$foss_sub_project = isset($form_state['values']['foss_sub_project']) ? $form_state['values']['foss_sub_project'] : key(get_activities_list($foss_project));
} else {
$foss_sub_project = '';
}
$form['foss_sub_project'] = array(
'#type' => 'select',
'#title' => t('Activities'),
'#options' => get_activities_list($foss_project),
'#prefix' => '',
'#suffix' => '
',
'#default_value' => "--------------",
'#validated' => TRUE,
'#ajax' => array(
'callback' => 'ajax_foss_sub_project_dependent_dropdown_callback',
'wrapper' => 'dropdown-third-replace',
'progress' => array(
'message' => ''
)
),
'#states' => array(
'invisible' => array(
':input[name="foss_type"]' => array(
'value' => ""
)
)
)
);
/* third Dropdown for Status like Completed and In Progress */
if (isset($form_state['values']['foss_sub_project']) && isset($form_state['values']['foss_type']) && isset($form_state['values']['foss_sub_project_status'])) {
$foss_sub_project_status = isset($form_state['values']['$foss_sub_project_status']) ? $form_state['values']['$foss_sub_project_status'] : '';
} else {
$foss_sub_project_status = '';
}
$form['foss_sub_project_status'] = array(
'#type' => 'select',
'#title' => t('Status'),
'#options' => _ajax_example_get_third_dropdown_options($foss_sub_project),
'#prefix' => '',
'#suffix' => '
',
'#default_value' => $foss_sub_project_status,
'#validated' => TRUE,
'#states' => array(
'invisible' => array(
array(
array(
':input[name="foss_sub_project"]' => array(
'value' => 0
)
),
'or',
array(
':input[name="foss_type"]' => array(
'value' => ""
)
)
)
)
)
);
/* Start Date for Filter */
$form['start_date'] = array(
'#type' => 'date_popup',
'#title' => t('From Date:'),
'#date_label_position' => '',
'#description' => '',
'#default_value' => '',
'#date_format' => 'Y-m-d',
'#date_increment' => 0,
'#date_year_range' => '2011:+0',
'#prefix' => '',
'#suffix' => '
',
'#datepicker_options' => array(
'maxDate' => 0
),
'#states' => array(
'invisible' => array(
':input[name="foss_type"]' => array(
'value' => ""
)
)
)
);
/* End Date for Filter */
$form['end_date'] = array(
'#type' => 'date_popup',
'#title' => t('To Date:'),
'#date_label_position' => '',
'#description' => '',
'#default_value' => '',
'#date_format' => 'Y-m-d',
'#date_increment' => 0,
'#date_year_range' => '2011:+0',
'#prefix' => '',
'#suffix' => '
',
'#datepicker_options' => array(
'maxDate' => 0
),
'#states' => array(
'invisible' => array(
':input[name="foss_type"]' => array(
'value' => ""
)
)
)
);
/* Country list for Filter */
if (isset($form_state['values']['countryname']) && isset($form_state['values']['statename']) && isset($form_state['values']['cityname'])) {
$countryname = isset($form_state['values']['countryname']) ? $form_state['values']['countryname'] : key(get_country_list($foss_project, $foss_sub_project));
} else {
$countryname = '';
}
$form['countryname'] = array(
"#type" => "select",
"#title" => t("Select Country"),
'#prefix' => '',
'#suffix' => '
',
'#options' => get_country_list($foss_project, $foss_sub_project),
'#states' => array(
'invisible' => array(
array(
array(
':input[name="foss_sub_project"]' => array(
'value' => 0
)
),
'or',
array(
':input[name="foss_type"]' => array(
'value' => ""
),
':input[name="foss_type"]' => array(
'value' => 3
)
)
)
)
),
'#ajax' => array(
'callback' => 'ajax_state_list_dependent_dropdown_callback',
'wrapper' => 'load_state',
'progress' => array(
'message' => ''
)
)
);
/* State list for Filter */
if (isset($form_state['values']['countryname']) && isset($form_state['values']['statename']) && isset($form_state['values']['cityname'])) {
$statename = isset($form_state['values']['statename']) ? $form_state['values']['statename'] : key(get_state_list($foss_project, $foss_sub_project, $countryname));
} else {
$statename = '';
}
$form['statename'] = array(
"#type" => "select",
"#title" => t("State Name"),
'#validated' => TRUE,
'#options' => get_state_list($foss_project, $foss_sub_project, $countryname),
'#prefix' => '',
'#suffix' => '
',
'#states' => array(
'invisible' => array(
array(
array(
':input[name="foss_sub_project"]' => array(
'value' => 0
)
),
'or',
array(
':input[name="foss_type"]' => array(
'value' => ""
),
':input[name="foss_type"]' => array(
'value' => 3
)
)
)
)
),
'#ajax' => array(
'callback' => 'ajax_city_list_dependent_dropdown_callback',
'wrapper' => 'load_state',
'progress' => array(
'message' => ''
)
)
);
/* City list for Filter */
if (isset($form_state['values']['countryname']) && isset($form_state['values']['statename']) && isset($form_state['values']['cityname'])) {
$cityname = isset($form_state['values']['cityname']) ? $form_state['values']['cityname'] : key(get_city_list($foss_project, $foss_sub_project, $countryname, $statename));
} else {
$cityname = '';
}
$form['cityname'] = array(
"#type" => "select",
"#title" => t("City Name"),
'#validated' => TRUE,
'#options' => get_city_list($foss_project, $foss_sub_project, $countryname, $statename),
'#prefix' => '',
'#suffix' => '
',
'#states' => array(
'invisible' => array(
array(
array(
':input[name="foss_sub_project"]' => array(
'value' => 0
)
),
'or',
array(
':input[name="foss_type"]' => array(
'value' => ""
),
':input[name="foss_type"]' => array(
'value' => 3
)
)
)
)
)
);
$form['submit'] = array(
'#type' => 'submit',
'#ajax' => array(
'callback' => 'ajax_example_submit_driven_callback',
'progress' => array(
'message' => ''
)
),
'#value' => t('Filter'),
'#prefix' => '',
'#suffix' => ''
);
$form['reset'] = array(
'#type' => 'submit',
'#value' => t('Reset'),
'#prefix' => '',
'#suffix' => '
'
);
//This is used for displaying text (tab sta)
$form['displaytext'] = array(
'#type' => 'markup',
'#prefix' => '
',
'#markup' => ''
);
//For displaying count of TBC of all foss
$form['tbctable'] = array(
'#type' => 'item',
'#prefix' => '
',
'#markup' => '
'
);
$TBC_getchart = getchart("TBC");
$LM_getchart = getchart("LM");
$form['tab_content'] = array(
'#type' => 'item',
'#markup' => '
' . get_tabledata_TBC_or_LM("TBC", "1960/01/01", "") . '
' . drupal_render($TBC_getchart) . '
' . get_tabledata_TBC_or_LM("LM", "1960/01/01", "") . '
' . drupal_render($LM_getchart) . '
' . workshop_view_all(0, 1960 - 01 - 01, date("Y-m-d")) . '
' . getselfworkshoplcount(0, 1960 - 01 - 01, date("Y-m-d"), "", "") . '
' . conference_seminar_view_all(0, "", "") . '
' . spokentutorial_view_all("") . '
'
);
$form['lastdiv'] = array(
'#type' => 'item',
'#markup' => '',
'#suffix' => '
'
);
return $form;
}
/* This function is used to create chart for TBC/LM */
function getchart($sub_type)
{
$title = "";
if ($sub_type == "TBC") {
$title = "Textbook Companion Statistics";
} else {
$title = "Lab Migration Statistics";
}
$chart = array(
'#type' => 'chart',
'#title' => t($title),
'#chart_type' => 'pie',
'#chart_library' => 'google',
'#legend_position' => 'right',
'#data_labels' => TRUE,
'#tooltips' => TRUE,
'#width' => 700,
'#height' => 300
);
$chart['pie_data'] = array(
'#type' => 'chart_data',
'#title' => t($title),
'#data' => get_data_for_chart_allproject($sub_type)
);
$example['chart'] = $chart;
return $example;
}
//This is used to create a bar chart for particular LM or TBC and along with filters
function getchartforselectedProject($foss_type, $sub_type, $startdate, $enddate, $countryname, $statename, $cityname)
{
$title = "";
if ($sub_type == "TBC") {
$title = $foss_type . "" . "'s Completed Textbook Companion Statistics";
} else {
$title = $foss_type . "" . "'s Completed Lab Migration Statistics";
}
$chart = array(
'#type' => 'chart',
'#title' => t($title),
'#chart_type' => 'column',
'#chart_library' => 'google',
'#legend_position' => 'bottom',
'#data_labels' => TRUE,
'#tooltips' => TRUE,
'#width' => 800,
'#height' => 300
);
$chart['pie_data'] = array(
'#type' => 'chart_data',
'#title' => t($title),
'#data' => get_data_for_chart_selectedproject($foss_type, $sub_type, $startdate, $enddate, $countryname, $statename, $cityname)
);
$example['chart'] = $chart;
return $example;
}
//This is used to create a pie chart for particular LM or TBC and along with filters
function getpiechartforselectedProject($foss_type, $sub_type, $startdate, $enddate, $countryname, $statename, $cityname)
{
$title = "";
if ($sub_type == "TBC") {
$title = $foss_type . "" . "'s Textbook Companion Statistics";
} else {
$title = $foss_type . "" . "'s Lab Migration Statistics";
}
$chart = array(
'#type' => 'chart',
'#title' => t($title),
'#chart_type' => 'pie',
'#chart_library' => 'google',
'#legend_position' => 'right',
'#data_labels' => TRUE,
'#tooltips' => TRUE,
'#width' => 700,
'#height' => 300
);
$chart['pie_data'] = array(
'#type' => 'chart_data',
'#title' => t($title),
'#data' => get_data_for_chart_selectedproject($foss_type, $sub_type, $startdate, $enddate, $countryname, $statename, $cityname)
);
$example['chart'] = $chart;
return $example;
}
//Function is used to get the count of LM or TBC for all foss type and pass this count to create charts
function get_data_for_chart_allproject($sub_type)
{
$rows = array();
if ($sub_type == "TBC") {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'tbc'
));
$query->condition('tbc', 1);
$result = $query->execute();
while ($foss_detail = $result->fetchObject()) {
if ($foss_detail->foss_name != null) {
if ($foss_detail->foss_name != 'Python') {
db_set_active($foss_detail->foss_name); //Active other database
//For TBC
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0");
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1");
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$completedbookcount = $query2->fetchObject()->book_count;
$option1 = array(
$foss_detail->foss_name,
(int) $completedbookcount
);
array_push($rows, $option1);
} else {
db_set_active($foss_detail->foss_name); //Active other database
$query2 = db_select('tbc_book');
$query2->addExpression('count(*)', 'count');
$query2->condition('approved', 1);
$result2 = $query2->execute();
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$completedbookcount = $result2->fetchObject()->count;
$option1 = array(
$foss_detail->foss_name,
(int) $completedbookcount
);
array_push($rows, $option1);
}
}
}
} else {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'lab_migration'
));
$query->condition('lab_migration', 1);
$result = $query->execute();
while ($foss_detail = $result->fetchObject()) {
if ($foss_detail->foss_name != null) {
db_set_active($foss_detail->foss_name); //Active other database
//For LM
$query3 = db_select('lab_migration_proposal');
$query3->addExpression('count(*)', 'count');
$query3->condition('approval_status', 3);
$result3 = $query3->execute();
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$completedlabcount = $result3->fetchObject()->count;
$option1 = array(
$foss_detail->foss_name,
(int) $completedlabcount
);
array_push($rows, $option1);
}
}
}
return $rows;
}
//This function is used to get list of TBC books/LM Labs after the filter is applied
function list_tbc_and_lm_detail($String, $foss_type, $sub_type, $status, $startdate, $enddate, $countryname, $statename, $cityname)
{
if ($cityname == "" || $cityname == "null") {
$cityname = "%";
} else {
$cityname = $cityname;
}
if ($statename == "" || $statename == "null") {
$statename = "%";
} else {
$statename = $statename;
}
if ($countryname == "" || $countryname == "null") {
$countryname = "%";
} else {
$countryname = $countryname;
}
$flag = 1;
$page_content = "";
db_set_active($foss_type);
$query2 = "";
if ($sub_type == "TBC") {
if ($foss_type != null) {
if ($foss_type != 'Python') {
//For TBC
if ($foss_type != 'eSim' && $foss_type != 'OpenFOAM' && $foss_type != 'OR-Tools') {
if ($foss_type != 'DWSIM') {
if ($status == "completed") {
$query2 = db_query("SELECT pe.book as book,pe.author as author,pe.publisher as publisher,pe.year as year,pe.id as id FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
if ($status == "pending") {
$query2 = db_query("SELECT pe.book,pe.author,pe.publisher,pe.year,pe.id FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$flag = 0;
}
} else {
if ($status == "completed") {
$query2 = db_query("SELECT pe.book,pe.author,pe.publisher,pe.year,pe.id FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
if ($status == "pending") {
$query2 = db_query("SELECT pe.book,pe.author,pe.publisher,pe.year,pe.id FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$flag = 0;
}
}
} else {
if ($status == "completed") {
$query2 = db_query("SELECT pe.book,pe.author,pe.publisher,pe.year,pe.id FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
if ($status == "pending") {
$query2 = db_query("SELECT pe.book,pe.author,pe.publisher,pe.year,pe.id FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$flag = 0;
}
}
} else {
if ($status == "completed") {
$query2 = db_select('tbc_book', 'tbc');
$query2->fields('tbc', array(
'title',
'author',
'id'
));
$query2->condition('approved', 1);
}
if ($status == "pending") {
$query2 = db_select('tbc_book', 'tbc');
$query2->fields('tbc', array(
'title',
'author',
'id'
));
$query2->condition('approved', 1, '<>');
}
}
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
if ($flag != 0) {
$page_content .= "List of Completed Books ";
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'tbc_run'
));
$query->condition('tbc', 1);
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$page_content .= "";
$i = 1;
while ($preference_data = $query2->fetchObject()) {
$page_content .= "";
$page_content .= "id . " target='_blank'>" . $preference_data->book . " by " . $preference_data->author . ", " . $preference_data->publisher . ", " . $preference_data->year . " ";
$page_content .= " ";
}
$page_content .= " ";
} else {
$page_content .= "List of Books in Progress ";
$page_content .= "";
$i = 1;
while ($preference_data = $query2->fetchObject()) {
$page_content .= "";
$page_content .= $preference_data->book . " by " . $preference_data->author . ", " . $preference_data->publisher . ", " . $preference_data->year;
$page_content .= " ";
}
$page_content .= " ";
}
} else {
if ($foss_type != null) {
if ($status == "completed") {
$query2 = db_query("SELECT * from lab_migration_proposal WHERE approval_status=3 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
if ($status == "pending") {
$query2 = db_query("SELECT * from lab_migration_proposal WHERE approval_status=1 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$flag = 0;
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
if ($flag != 0) {
$page_content .= "List of Completed Labs ";
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'lm_run'
));
$query->condition('lab_migration', 1);
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$page_content .= "";
$i = 1;
while ($row = $query2->fetchObject()) {
$page_content .= "";
$approval_date = date("Y", $row->approval_date);
$page_content .= "id . " target='_blank'>" . $row->lab_title . " " . $approval_date . " (Proposed by " . $row->name . ") ";
//$page_content .= l($row->lab_title . " " . $approval_date,$foss_detail->lm_run."/". $row->id);
$page_content .= " ";
}
$page_content .= " ";
} else {
$page_content .= "List of Labs in Progress ";
$page_content .= "";
$i = 1;
while ($row = $query2->fetchObject()) {
$page_content .= "";
$approval_date = date("Y", $row->approval_date);
$page_content .= $row->lab_title . " " . $approval_date . " (Proposed by " . $row->name . ")";
$page_content .= " ";
}
$page_content .= " ";
}
}
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
return $page_content;
}
/* This function is used to get count of LM and TBC after a filter is applied and pass this count to create chart function*/
function get_data_for_piechart_selectedproject($foss_type, $sub_type, $startdate, $enddate, $countryname, $statename, $cityname)
{
if ($enddate == "") {
$enddate = date("Y-m-d");
}
$rows = array();
if ($sub_type == "TBC") {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'tbc'
));
$query->condition('tbc', 1);
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
if ($foss_detail->foss_name != null) {
if ($foss_detail->foss_name != 'Python') {
$rows = array();
db_set_active($foss_detail->foss_name); //Active other database
//For TBC
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$completedbookcount = $query2->fetchObject()->book_count;
$pendingbookcount = $query3->fetchObject()->book_count;
$option1 = array(
"Completed TBC",
(int) $completedbookcount
);
array_push($rows, $option1);
$option2 = array(
"In Progress TBC",
(int) $pendingbookcount
);
array_push($rows, $option2);
} else {
$rows = array();
db_set_active($foss_detail->foss_name); //Active other database
$query2 = db_select('tbc_book');
$query2->addExpression('count(*)', 'count');
//$query2->condition('author', '%'.$extrafilter.'%', 'LIKE');
$query2->condition('approved', 1);
$result2 = $query2->execute();
$query3 = db_select('tbc_book');
$query3->addExpression('count(*)', 'count');
//$query3->condition('author', '%'.$extrafilter.'%', 'LIKE');
$query3->condition('approved', 1, '<>');
$result3 = $query3->execute();
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$completedbookcount = $result2->fetchObject()->count;
$pendingbookcount = $result3->fetchObject()->count;
$option1 = array(
"Completed TBC",
(int) $completedbookcount
);
array_push($rows, $option1);
$option2 = array(
"In Progress TBC",
(int) $pendingbookcount
);
array_push($rows, $option2);
}
}
} else {
$rows = array();
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'lab_migration'
));
$query->condition('lab_migration', 1);
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
if ($foss_detail->foss_name != null) {
db_set_active($foss_detail->foss_name); //Active other database
//For LM
$query3 = db_query("SELECT COUNT(*) AS count from lab_migration_proposal WHERE approval_status=3 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$query4 = db_query("SELECT COUNT(*) AS count from lab_migration_proposal WHERE approval_status=1 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$completedlabcount = $query3->fetchObject()->count;
$pendinglabcount = $query4->fetchObject()->count;
$option1 = array(
"Completed Labs",
(int) $completedlabcount
);
array_push($rows, $option1);
$option2 = array(
"In Progress labs",
(int) $pendinglabcount
);
array_push($rows, $option2);
}
}
return $rows;
}
/* This function is used to get count of LM and TBC after a filter is applied and pass this count to create chart function*/
function get_data_for_chart_selectedproject($foss_type, $sub_type, $startdate, $enddate, $countryname, $statename, $cityname)
{
if ($enddate == "") {
$enddate = date("Y-m-d");
}
$rows = array();
if ($sub_type == "TBC") {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'tbc'
));
$query->condition('tbc', 1);
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
if ($foss_detail->foss_name != null) {
if ($foss_detail->foss_name != 'Python') {
$rows = array();
db_set_active($foss_detail->foss_name); //Active other database
//For TBC
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count ,FROM_UNIXTIME(po.completion_date, '%Y') AS year FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate Group by FROM_UNIXTIME(po.completion_date, '%Y')", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
/* $query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));*/
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count ,FROM_UNIXTIME(po.completion_date, '%Y') AS year FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate Group by FROM_UNIXTIME(po.completion_date, '%Y')", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
/* $query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));*/
}
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count, FROM_UNIXTIME(po.completion_date, '%Y') AS year FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate Group by FROM_UNIXTIME(po.completion_date, '%Y')", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
/*$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));*/
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$result = $query2->fetchAll();
foreach ($result as $tbc_yearwise_count) {
$completedbookcount = $tbc_yearwise_count->book_count;
$option1 = array(
$tbc_yearwise_count->year,
(int) $completedbookcount
);
array_push($rows, $option1);
}
/* while ($tbc_yearwise_count = $result->fetchObject()) {
$completedbookcount= $tbc_yearwise_count->book_count;
$option1 = array(
$tbc_yearwise_count->year,
(int) $completedbookcount
);
array_push($rows, $option1);
}*/
//$completedbookcount = $query2->fetchObject()->book_count;
//$pendingbookcount = $query3->fetchObject()->book_count;
/*$option1 = array(
"Completed TBC",
(int) $completedbookcount
);
array_push($rows, $option1);*/
/* $option2 = array(
"In Progress TBC",
(int) $pendingbookcount
);
array_push($rows, $option2);*/
} else {
$rows = array();
db_set_active($foss_detail->foss_name); //Active other database
$query2 = db_select('tbc_book');
$query2->addExpression('count(*)', 'count');
//$query2->condition('author', '%'.$extrafilter.'%', 'LIKE');
$query2->condition('approved', 1);
$result2 = $query2->execute();
/*$query3 = db_select('tbc_book');
$query3->addExpression('count(*)', 'count');
//$query3->condition('author', '%'.$extrafilter.'%', 'LIKE');
$query3->condition('approved', 1, '<>');
$result3 = $query3->execute();*/
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$completedbookcount = $result2->fetchObject()->count;
//$pendingbookcount = $result3->fetchObject()->count;
$option1 = array(
"Completed TBC",
(int) $completedbookcount
);
array_push($rows, $option1);
/*$option2 = array(
"In Progress TBC",
(int) $pendingbookcount
);
array_push($rows, $option2);*/
}
}
} else {
$rows = array();
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'lab_migration'
));
$query->condition('lab_migration', 1);
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
if ($foss_detail->foss_name != null) {
db_set_active($foss_detail->foss_name); //Active other database
//For LM
$query3 = db_query("SELECT COUNT(*) AS count ,FROM_UNIXTIME(approval_date, '%Y') AS year from lab_migration_proposal WHERE approval_status=3 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate group by FROM_UNIXTIME(approval_date, '%Y')", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
/* $query4 = db_query("SELECT COUNT(*) AS count from lab_migration_proposal WHERE approval_status=1 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));*/
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active();
$result = $query3->fetchAll();
foreach ($result as $lm_yearwise_count) {
$completedlabcount = $lm_yearwise_count->count;
$option1 = array(
$lm_yearwise_count->year,
(int) $completedlabcount
);
array_push($rows, $option1);
}
/*$result = $query3->execute();
while ($lm_yearwise_count = $result->fetchObject()) {
$completedlabcount= $lm_yearwise_count->count;
$option1 = array(
$lm_yearwise_count->year,
(int) $completedlabcount
);
array_push($rows, $option1);
}*/
/*$completedlabcount = $query3->fetchObject()->count;
//$pendinglabcount = $query4->fetchObject()->count;
$option1 = array(
"Completed Labs",
(int) $completedlabcount
);
array_push($rows, $option1);*/
/*$option2 = array(
"In Progress labs",
(int) $pendinglabcount
);
array_push($rows, $option2);*/
}
}
return $rows;
}
//List of option to fill first drop down ie. Foss type.
function _ajax_example_get_first_dropdown_options()
{
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$result = $query->execute();
$options = array();
$options[''] = "--------------";
while ($foss_detail = $result->fetchObject()) {
$options[$foss_detail->id] = $foss_detail->foss_name;
}
return $options;
}
//List of option to fill secong drop down ie. Activities
/*function _ajax_example_get_second_dropdown_options($foss_project = '')
{
if ($foss_project != NULL) {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'tbc',
'lab_migration',
'workshop',
'self_workshop',
'conference'
));
$query->fields('foss_type', array(
'spoken_tutorial',
'postal_campaigns'
));
$query->condition('id', $foss_project);
$result = $query->execute();
$subproject_detail = $result->fetchObject();
$optiondata = array(
"tbc",
"lab_migration",
"workshop",
"self_workshop",
"conference",
"spoken_tutorial",
"postal_campaigns"
);
$optionvalue = array(
" ",
"Textbook Companion",
"Lab Migration",
"Workshop",
"Self Workshop",
"Conference",
"Spoken Tutorial",
"Postal Campaigns"
);
$options = array();
$options[0] = "--------------";
$i = 0;
foreach ($optiondata as $value) {
$i++;
if (($subproject_detail->$value) != 0) {
$options[$i] = $optionvalue[$i];
}
}
return $options;
} else {
$options[0] = "--------------";
return $options;
}
}*/
//List of option to fill secong drop down ie. Activities
function get_activities_list($foss_project)
{
if ($foss_project != NULL) {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'tbc',
'lab_migration',
'workshop',
'self_workshop',
'conference'
));
$query->fields('foss_type', array(
'spoken_tutorial',
'postal_campaigns'
));
$query->condition('id', $foss_project);
$result = $query->execute();
$subproject_detail = $result->fetchObject();
$optiondata = array(
"tbc",
"lab_migration",
"workshop",
"self_workshop",
"conference",
"spoken_tutorial",
"postal_campaigns"
);
$optionvalue = array(
" ",
"Textbook Companion",
"Lab Migration",
"Workshop",
"Self Workshop",
"Conference",
"Spoken Tutorial",
"Postal Campaigns"
);
$options = array();
$options[0] = "--------------";
$i = 0;
foreach ($optiondata as $value) {
$i++;
if (($subproject_detail->$value) != 0) {
$options[$i] = $optionvalue[$i];
}
}
return $options;
} else {
$options[0] = "--------------";
return $options;
}
}
//This is used to populate dropdown third ie Status but it will fill if activity selected is either TBC or LM
function _ajax_example_get_third_dropdown_options($foss_sub_project)
{
$options = array();
if ($foss_sub_project != 0) {
if ($foss_sub_project == 1) {
$options[0] = "--------------";
$options[1] = "Books in Progress";
$options[2] = "Completed Books";
} else if ($foss_sub_project == 2) {
$options[0] = "--------------";
$options[1] = "Labs in Progress";
$options[2] = "Completed Labs";
}
}
return $options;
}
//this is ajax callback method for first dropdown ie FOSS type
function ajax_foss_type_dependent_dropdown_callback($form, &$form_state)
{
$foss_sub_project = $form_state['values']['foss_type'];
$foss_sub_project_activities = $form_state['values']['foss_sub_project'];
$startdate = $form_state['values']['start_date'];
$enddate = $form_state['values']['end_date'];
$enddate = trim($enddate);
$startdate = trim($startdate);
if ($startdate == "") {
$startdate = '1960/01/01';
} else {
$startdate = $startdate;
}
if ($enddate == "") {
$enddate = date("Y-m-d");
} else {
$enddate = $enddate;
}
if ($foss_sub_project == "") {
$form['default_load']['#markup'] = '
' . get_tabledata_TBC_or_LM("TBC", $startdate, $enddate) . '
' . drupal_render(getchart("TBC")) . '
' . get_tabledata_TBC_or_LM("LM", $startdate, $enddate) . '
' . drupal_render(getchart("LM")) . '
' . workshop_view_all(0, $startdate, $enddate) . '
' . getselfworkshoplcount(0, $startdate, $enddate, "", "") . '
' . conference_seminar_view_all(0, $startdate, $enddate) . '
' . spokentutorial_view_all("") . '
';
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
$form['load_city']['#markup'] = "";
$commands[] = ajax_command_html("#load_city", "");
$form['load_state']['#markup'] = "";
$commands[] = ajax_command_html("#load_state", "");
$form['load_country']['#markup'] = "";
$commands[] = ajax_command_html("#load_country", "");
$form['startdate']['#markup'] = "";
$commands[] = ajax_command_html("#startdate", "");
$form['enddate']['#markup'] = "";
$commands[] = ajax_command_html("#enddate", "");
$form['dropdown-third-replace']['#markup'] = "";
$commands[] = ajax_command_html("#dropdown-third-replace", "");
} else if ($foss_sub_project == '3') {
$form['startdate']['#markup'] = "";
$commands[] = ajax_command_html("#startdate", "");
$form['enddate']['#markup'] = "";
$commands[] = ajax_command_html("#enddate", "");
$form['load_city']['#markup'] = "";
$commands[] = ajax_command_html("#load_city", "");
$form['load_state']['#markup'] = "";
$commands[] = ajax_command_html("#load_state", "");
$form['load_country']['#markup'] = "";
$commands[] = ajax_command_html("#load_country", "");
$form['dropdown-second-replace']['#markup'] = "";
$commands[] = ajax_command_html("#dropdown-second-replace", "");
$form['dropdown-third-replace']['#markup'] = "";
$commands[] = ajax_command_html("#dropdown-third-replace", "");
}
else {
$form['start_date']['#type'] = "date_popup";
$form['start_date']['#title'] = t('From Date:');
$form['start_date']['#date_label_position'] = 'within';
$form['start_date']['#description'] = '';
$form['start_date']['#default_value'] = '';
$form['start_date']['#date_format'] = 'Y-m-d';
$form['start_date']['#date_increment'] = 0;
$form['start_date']['#date_year_range'] = '2011:+0';
$form['start_date']['#datepicker_options'] = array(
'maxDate' => 0
);
$commands[] = ajax_command_html("#startdate", drupal_render($form['start_date']));
$form['end_date']['#type'] = "date_popup";
$form['end_date']['#title'] = t('To Date:');
$form['end_date']['#date_label_position'] = '';
$form['end_date']['#description'] = '';
$form['end_date']['#default_value'] = '';
$form['end_date']['#date_format'] = 'Y-m-d';
$form['end_date']['#date_increment'] = 0;
$form['end_date']['#date_year_range'] = '2011:+0';
$form['end_date']['#datepicker_options'] = array(
'maxDate' => 0
);
$commands[] = ajax_command_html("#enddate", drupal_render($form['end_date']));
$form['load_city']['#markup'] = "";
$commands[] = ajax_command_html("#load_city", "");
$form['load_state']['#markup'] = "";
$commands[] = ajax_command_html("#load_state", "");
$form['load_country']['#markup'] = "";
$commands[] = ajax_command_html("#load_country", "");
}
$form['foss_sub_project']['#default_value'] = "--------------";
$form['foss_sub_project']['#options'] = get_activities_list($foss_sub_project);
$commands[] = ajax_command_replace("#dropdown-second-replace", drupal_render($form['foss_sub_project']));
if ($foss_sub_project != "" && ($foss_sub_project_activities == 1 || $foss_sub_project_activities == 2)) {
if ($foss_sub_project == 3) {
$foss_sub_project_activities = "";
$form['dropdown-third-replace']['#markup'] = "";
$commands[] = ajax_command_html("#dropdown-third-replace", "");
} else {
$form['foss_sub_project_status']['#type'] = "select";
$form['foss_sub_project_status']['#title'] = t("Status");
$form['foss_sub_project_status']['#options'] = _ajax_example_get_third_dropdown_options($foss_sub_project_activities);
$commands[] = ajax_command_html("#dropdown-third-replace", drupal_render($form['foss_sub_project_status']));
}
} else {
$form['dropdown-third-replace']['#markup'] = "";
$commands[] = ajax_command_html("#dropdown-third-replace", "");
}
return array(
'#type' => 'ajax',
'#commands' => $commands
);
}
//this is ajax callback method for second dropdown ie Activities type
function ajax_foss_sub_project_dependent_dropdown_callback($form, &$form_state)
{
$foss_project = $form_state['values']['foss_sub_project'];
$foss_type = $form_state['values']['foss_type'];
if ($foss_type != "" && $foss_project != 0 && $foss_type != 3) {
if ($foss_project == 7) {
$form['load_city']['#markup'] = "";
$commands[] = ajax_command_html("#load_city", "");
$form['load_country']['#markup'] = "";
$commands[] = ajax_command_html("#load_country", "");
$form['load_state']['#markup'] = "";
$commands[] = ajax_command_html("#load_state", "");
} else if ($foss_project == 6) {
$form['load_city']['#markup'] = "";
$commands[] = ajax_command_html("#load_city", "");
$form['load_country']['#markup'] = "";
$commands[] = ajax_command_html("#load_country", "");
$form['load_state']['#markup'] = "";
$commands[] = ajax_command_html("#load_state", "");
$form['end_date']['#markup'] = "";
$commands[] = ajax_command_html("#enddate", "");
$form['start_date']['#markup'] = "";
$commands[] = ajax_command_html("#startdate", "");
} else {
$form['countryname']['#type'] = "select";
$form['countryname']['#title'] = t("Select Country");
$form['countryname']['#option'] = get_country_list($foss_type, $foss_project);
$form['countryname']['#prefix'] = "";
$form['countryname']['#suffix'] = "
";
$commands[] = ajax_command_html("#load_country", drupal_render($form['countryname']));
$country_value = $form_state['values']['countryname'];
$form['statename']['#type'] = "select";
$form['statename']['#title'] = t("State Name");
$form['statename']['#options'] = get_state_list($foss_type, $foss_project, $country_value);
$form['statename']['#prefix'] = "";
$form['statename']['#suffix'] = "
";
$commands[] = ajax_command_html("#load_state", drupal_render($form['statename']));
$state_value = $form_state['values']['statename'];
$form['cityname']['#type'] = "select";
$form['cityname']['#title'] = t("City Name");
$form['cityname']['#options'] = get_city_list($foss_type, $foss_project, $country_value, $state_value);
$form['cityname']['#prefix'] = "";
$form['cityname']['#suffix'] = "
";
$commands[] = ajax_command_html("#load_city", drupal_render($form['cityname']));
}
} else {
if ($foss_project == 3 || $foss_project == 4 || $foss_project == 5) {
$form['start_date']['#type'] = "date_popup";
$form['start_date']['#title'] = t('From Date:');
$form['start_date']['#date_label_position'] = '';
$form['start_date']['#description'] = '';
$form['start_date']['#default_value'] = '';
$form['start_date']['#date_format'] = 'Y-m-d';
$form['start_date']['#date_increment'] = 0;
$form['start_date']['#date_year_range'] = '2011:+0';
$form['start_date']['#datepicker_options'] = array(
'maxDate' => 0
);
$commands[] = ajax_command_html("#startdate", drupal_render($form['start_date']));
$form['end_date']['#type'] = "date_popup";
$form['end_date']['#title'] = t('To Date:');
$form['end_date']['#date_label_position'] = '';
$form['end_date']['#description'] = '';
$form['end_date']['#default_value'] = '';
$form['end_date']['#date_format'] = 'Y-m-d';
$form['end_date']['#date_increment'] = 0;
$form['end_date']['#date_year_range'] = '2011:+0';
$form['end_date']['#datepicker_options'] = array(
'maxDate' => 0
);
$commands[] = ajax_command_html("#enddate", drupal_render($form['end_date']));
$form['countryname']['#type'] = "select";
$form['countryname']['#title'] = t("Select Country");
$form['countryname']['#option'] = get_country_list($foss_type, $foss_project);
$form['countryname']['#prefix'] = "";
$form['countryname']['#suffix'] = "
";
$commands[] = ajax_command_html("#load_country", drupal_render($form['countryname']));
$country_value = $form_state['values']['countryname'];
$form['statename']['#type'] = "select";
$form['statename']['#title'] = t("State Name");
$form['statename']['#options'] = get_state_list($foss_type, $foss_project, $country_value);
$form['statename']['#prefix'] = "";
$form['statename']['#suffix'] = "
";
$commands[] = ajax_command_html("#load_state", drupal_render($form['statename']));
$state_value = $form_state['values']['statename'];
$form['cityname']['#type'] = "select";
$form['cityname']['#title'] = t("City Name");
$form['cityname']['#options'] = get_city_list($foss_type, $foss_project, $country_value, $state_value);
$form['cityname']['#prefix'] = "";
$form['cityname']['#suffix'] = "
";
$commands[] = ajax_command_html("#load_city", drupal_render($form['cityname']));
} else if ($foss_project == 7) {
$form['start_date']['#type'] = "date_popup";
$form['start_date']['#title'] = t('From Date:');
$form['start_date']['#date_label_position'] = '';
$form['start_date']['#description'] = '';
$form['start_date']['#default_value'] = '';
$form['start_date']['#date_format'] = 'Y-m-d';
$form['start_date']['#date_increment'] = 0;
$form['start_date']['#date_year_range'] = '2011:+0';
$form['start_date']['#datepicker_options'] = array(
'maxDate' => 0
);
$commands[] = ajax_command_html("#startdate", drupal_render($form['start_date']));
$form['end_date']['#type'] = "date_popup";
$form['end_date']['#title'] = t('To Date:');
$form['end_date']['#date_label_position'] = '';
$form['end_date']['#description'] = '';
$form['end_date']['#default_value'] = '';
$form['end_date']['#date_format'] = 'Y-m-d';
$form['end_date']['#date_increment'] = 0;
$form['end_date']['#date_year_range'] = '2011:+0';
$form['end_date']['#datepicker_options'] = array(
'maxDate' => 0
);
$commands[] = ajax_command_html("#enddate", drupal_render($form['end_date']));
$form['load_city']['#markup'] = "";
$commands[] = ajax_command_html("#load_city", "");
$form['load_country']['#markup'] = "";
$commands[] = ajax_command_html("#load_country", "");
$form['load_state']['#markup'] = "";
$commands[] = ajax_command_html("#load_state", "");
} else if ($foss_project == 6) {
$form['load_city']['#markup'] = "";
$commands[] = ajax_command_html("#load_city", "");
$form['load_country']['#markup'] = "";
$commands[] = ajax_command_html("#load_country", "");
$form['load_state']['#markup'] = "";
$commands[] = ajax_command_html("#load_state", "");
$form['end_date']['#markup'] = "";
$commands[] = ajax_command_html("#enddate", "");
$form['start_date']['#markup'] = "";
$commands[] = ajax_command_html("#startdate", "");
}
}
if ($foss_project == 1 || $foss_project == 2) {
$form['foss_sub_project_status']['#type'] = "select";
$form['foss_sub_project_status']['#title'] = t("Status");
$form['foss_sub_project_status']['#options'] = _ajax_example_get_third_dropdown_options($foss_project);
$commands[] = ajax_command_html("#dropdown-third-replace", drupal_render($form['foss_sub_project_status']));
} else {
$form['dropdown-third-replace']['#markup'] = "";
$commands[] = ajax_command_html("#dropdown-third-replace", "");
}
return array(
'#type' => 'ajax',
'#commands' => $commands
);
}
//Form Submit
function ajax_example_submit_driven_callback($form, &$form_state)
{
$foss_type = $form['foss_type']['#options'][$form_state['values']['foss_type']];
$foss_sub_project = $form['foss_sub_project']['#options'][$form_state['values']['foss_sub_project']];
$foss_sub_project_status = $form['foss_sub_project_status']['#options'][$form_state['values']['foss_sub_project_status']];
$startdate = $form_state['values']['start_date'];
$startdate = trim($startdate);
$enddate = $form_state['values']['end_date'];
$enddate = trim($enddate);
$countryname = $form['countryname']['#options'][$form_state['values']['countryname']];
$countryname = trim($countryname);
$cityname = $form['cityname']['#options'][$form_state['values']['cityname']];
$cityname = trim($cityname);
$statename = $form['statename']['#options'][$form_state['values']['statename']];
$statename = trim($statename);
$link_flag = 0;
if ($cityname == "--------------" || $cityname == "") {
$cityname = "%";
} else {
$cityname = $cityname;
}
if ($statename == "--------------" || $statename == "") {
$statename = "%";
} else {
$statename = $statename;
}
if ($countryname == "--------------" || $countryname == "") {
$countryname = "%";
} else {
$countryname = $countryname;
}
if ($startdate == "") {
$startdate = '1960-01-01';
} else {
$startdate = $startdate;
}
if ($enddate == "") {
$enddate = date("Y-m-d");
} else {
$enddate = $enddate;
}
if ($foss_type == '--------------') {
$form['default_load']['#markup'] = '
' . get_tabledata_TBC_or_LM("TBC", $startdate, $enddate) . '
' . drupal_render(getchart("TBC")) . '
' . get_tabledata_TBC_or_LM("LM", $startdate, $enddate) . '
' . drupal_render(getchart("LM")) . '
' . workshop_view_all(0, $startdate, $enddate) . '
' . getselfworkshoplcount(0, $startdate, $enddate, "", "") . '
' . conference_seminar_view_all(0, "", "") . '
' . spokentutorial_view_all("") . '
';
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
} else if ($foss_type != '--------------' && (($foss_sub_project == "--------------") || ($foss_sub_project == "No Sub-Project Available"))) {
$tbcdatacheck = "";
$tbcchartcheck = "";
$lmdatacheck = "";
$lmchartcheck = "";
$workshopdatacheck = "";
$self_workshopdatacheck = "";
$conferencedatacheck = "";
$spoken_tutorialdatacheck = "";
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active(); // without the paramater means set back to the default for the site
$query = db_select('foss_type');
$query->fields('foss_type', array(
'tbc',
'lab_migration',
'workshop',
'self_workshop',
'conference'
));
$query->fields('foss_type', array(
'spoken_tutorial',
'postal_campaigns'
));
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$subproject_detail = $result->fetchObject();
$optiondata = array(
"tbc",
"lab_migration",
"workshop",
"self_workshop",
"conference",
"spoken_tutorial",
"postal_campaigns"
);
$optionvalue = array(
" ",
"Textbook Companion",
"Lab Migration",
"Workshop",
"Self Workshop",
"Conference",
"Spoken Tutorial",
"Postal Campaigns"
);
$i = 0;
$pagecontent = "";
// foreach ($optiondata as $value) {
// $i++;
// //$options[$i]=$optionvalue[$i];
// if (($subproject_detail->$value) != 0) {
// if ($value == "tbc") {
// $pagecontent .= "
//
//
Textbook Companion
//
" . get_tabledata_selectedFoss_TBC_LM($foss_type, 'TBC', 'all', $startdate, $enddate, $countryname, $statename, $cityname, $link_flag) . "
" . drupal_render(getchartforselectedProject($foss_type, "TBC", $startdate, $enddate, $countryname, $statename, $cityname)) . "
";
// } else if ($value == "lab_migration") {
// $pagecontent .= "
//
//
Lab Migration
//
//
" . get_tabledata_selectedFoss_TBC_LM($foss_type, 'LM', "all", $startdate, $enddate, $countryname, $statename, $cityname, $link_flag) . "
//
" . drupal_render(getchartforselectedProject($foss_type, "LM", $startdate, $enddate, $countryname, $statename, $cityname)) . "
";
// } else if ($value == "workshop") {
// $event_type = "Workshop";
// $pagecontent .= "
//
//
Workshop
//
" . events_view_filter($foss_type, $event_type, $startdate, $enddate, $countryname, $statename, $cityname) . "
";
// } else if ($value == "self_workshop") {
// $pagecontent .= "
//
//
Self Workshop
//
".getselfworkshoplcount($foss_type,$startdate,$enddate, $statename, $cityname)."
";
// } else if ($value == "conference") {
// $event_type = "Conference";
// $pagecontent .= "
//
//
Conference
//
" . events_view_filter($foss_type, $event_type, $startdate, $enddate, $countryname, $statename, $cityname) . "
";
// } else if ($value == "spoken_tutorial") {
// $pagecontent .= "
//
//
Spoken Tutorial
//
".spokentutorial_view_all($foss_type)."
";
// }
// } else {
// if ($value == "tbc") {
// $pagecontent .= "
//
//
Textbook Companion
//
" . t("
//
TextBook Companion Project Not Present ") . " ";
// } else if ($value == "lab_migration") {
// $pagecontent .= "
//
//
Lab Migration
//
//
" . t("
//
Lab Migration Project Not Present ") . "
";
// } else if ($value == "workshop") {
// $pagecontent .= "
//
//
Workshop
//
" . t("
//
No Workshop were conducted ") . " ";
// } else if ($value == "self_workshop") {
// $pagecontent .= "
//
//
Self Workshop
//
" . t("
//
No Self Workshop were conducted ") . " ";
// } else if ($value == "conference") {
// $pagecontent .= "
//
//
Conference
//
" . t("
//
No Conference were conducted ") . " ";
// } else if ($value == "spoken_tutorial") {
// $pagecontent .= "
//
//
Spoken Tutorial
//
" . t("
//
Spoken Tutorial Not Present ") . " ";
// }
// }
// }
// $form['default_load']['#markup'] = $pagecontent;
foreach ($optiondata as $value) {
$i++;
//$options[$i]=$optionvalue[$i];
if (($subproject_detail->$value) != 0) {
if ($value == "tbc") {
$tbcdatacheck = get_tabledata_selectedFoss_TBC_LM($foss_type, 'TBC', 'all', $startdate, $enddate, $countryname, $statename, $cityname, $link_flag);
$tbcchartcheck = drupal_render(getchartforselectedProject($foss_type, 'TBC', $startdate, $enddate, $countryname, $statename, $cityname));
} else if ($value == "lab_migration") {
$lmdatacheck = get_tabledata_selectedFoss_TBC_LM($foss_type, 'LM', 'all', $startdate, $enddate, $countryname, $statename, $cityname, $link_flag);
$lmchartcheck = drupal_render(getchartforselectedProject($foss_type, 'LM', $startdate, $enddate, $countryname, $statename, $cityname));
} else if ($value == "workshop") {
$event_type = "Workshop";
$workshopdatacheck = events_view_filter($foss_type, $event_type, $startdate, $enddate, $countryname, $statename, $cityname);
} else if ($value == "self_workshop") {
$self_workshopdatacheck = getselfworkshoplcount($foss_type, $startdate, $enddate, $statename, $cityname);
} else if ($value == "conference") {
$event_type = "Conference";
$conferencedatacheck = events_view_filter($foss_type, $event_type, $startdate, $enddate, $countryname, $statename, $cityname);
} else if ($value == "spoken_tutorial") {
$spoken_tutorialdatacheck = spokentutorial_view_all($foss_type);
}
} else {
if ($value == "tbc") {
$tbcdatacheck = "TextBook Companion Project Not Present ";
$tbcchartcheck = "";
} else if ($value == "lab_migration") {
$lmdatacheck = "Lab Migration Project Not Present ";
$lmchartcheck = "";
} else if ($value == "workshop") {
$workshopdatacheck = " No Workshop were conducted ";
} else if ($value == "self_workshop") {
$self_workshopdatacheck = "No Self Workshop were conducted ";
} else if ($value == "conference") {
$conferencedatacheck = "No Conference were conducted ";
} else if ($value == "spoken_tutorial") {
$spoken_tutorialdatacheck = "Spoken Tutorial Not Present ";
}
}
}
// var_dump($tbcdatacheck."::::::".$lmdatacheck."::::::".$workshopdatacheck.":::::::".$self_workshopdatacheck.":::::::".$conferencedatacheck."::::::".$spoken_tutorialdatacheck);
//die;
$form['default_load']['#markup'] = '
' . $tbcdatacheck . '
' . $tbcchartcheck . '
' . $lmdatacheck . '
' . $lmchartcheck . '
' . $workshopdatacheck . '
' . $self_workshopdatacheck . '
' . $conferencedatacheck . '
' . $spoken_tutorialdatacheck . '
';
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
} else if ($foss_type != '--------------' && $foss_sub_project == "Textbook Companion" && $foss_sub_project_status == "--------------") {
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$pagecontent = "";
$pagecontent .= '
' . get_tabledata_selectedFoss_TBC_LM($foss_type, 'TBC', 'all', $startdate, $enddate, $countryname, $statename, $cityname, $link_flag) . '
' . drupal_render(getchartforselectedProject($foss_type, "TBC", $startdate, $enddate, $countryname, $statename, $cityname)) . '
';
$form['default_load']['#markup'] = $pagecontent;
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
} else if ($foss_type != '--------------' && $foss_sub_project == "Lab Migration" && $foss_sub_project_status == "--------------") {
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$pagecontent = "";
$pagecontent .= '
' . get_tabledata_selectedFoss_TBC_LM($foss_type, 'LM', "all", $startdate, $enddate, $countryname, $statename, $cityname, $link_flag) . '
' . drupal_render(getchartforselectedProject($foss_type, "LM", $startdate, $enddate, $countryname, $statename, $cityname)) . '
';
$form['default_load']['#markup'] = $pagecontent;
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
} else if ($foss_type != '--------------' && $foss_sub_project == "Workshop") {
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$pagecontent = "";
$pagecontent .= '
' . events_view_filter($foss_type, $foss_sub_project, $startdate, $enddate, $countryname, $statename, $cityname) . '
';
$form['default_load']['#markup'] = $pagecontent;
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
} else if ($foss_type != '--------------' && $foss_sub_project == "Self Workshop") {
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$pagecontent = "";
$pagecontent .= '
' . getselfworkshoplcount($foss_type, $startdate, $enddate, $statename, $cityname) . '
';
$form['default_load']['#markup'] = $pagecontent;
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
} else if ($foss_type != '--------------' && $foss_sub_project == "Conference") {
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$pagecontent = "";
$pagecontent .= '
' . events_view_filter($foss_type, $foss_sub_project, $startdate, $enddate, $countryname, $statename, $cityname) . '
';
$form['default_load']['#markup'] = $pagecontent;
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
} else if ($foss_type != '--------------' && $foss_sub_project == "Spoken Tutorial") {
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$pagecontent = "";
$pagecontent .= '
' . spokentutorial_view_all($foss_type) . '
';
$form['default_load']['#markup'] = $pagecontent;
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
}
/* else if ($foss_type != '--------------' && $foss_sub_project == "Postal Campaigns") {
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$pagecontent = "";
$pagecontent .= "";
$form['default_load']['#markup'] = $pagecontent;
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
}*/
else if ($foss_type != '--------------' && ($foss_sub_project == "Textbook Companion" || $foss_sub_project == "Lab Migration") && $foss_sub_project_status != "--------------") {
if ($foss_sub_project == "Textbook Companion" && $foss_sub_project_status == "Completed Books") {
$title = "Textbook Companion";
$datatable = get_tabledata_selectedFoss_TBC_LM($foss_type, 'TBC', "completed", $startdate, $enddate, $countryname, $statename, $cityname, $link_flag);
} else if ($foss_sub_project == "Lab Migration" && $foss_sub_project_status == "Completed Labs") {
$title = "Lab Migration";
$datatable = get_tabledata_selectedFoss_TBC_LM($foss_type, 'LM', "completed", $startdate, $enddate, $countryname, $statename, $cityname, $link_flag);
} else if ($foss_sub_project == "Textbook Companion" && $foss_sub_project_status == "Books in Progress") {
$title = "Textbook Companion";
$datatable = get_tabledata_selectedFoss_TBC_LM($foss_type, 'TBC', "pending", $startdate, $enddate, $countryname, $statename, $cityname, $link_flag);
} else if ($foss_sub_project == "Lab Migration" && $foss_sub_project_status == "Labs in Progress") {
$title = "Lab Migration";
$datatable = get_tabledata_selectedFoss_TBC_LM($foss_type, 'LM', "pending", $startdate, $enddate, $countryname, $statename, $cityname, $link_flag);
}
$form['displaytext']['#markup'] = "Statistic of project : " . $foss_type;
$commands[] = ajax_command_html("#displaytext", drupal_render($form['displaytext']));
$form['default_load']['#markup'] = '
';
$commands[] = ajax_command_html("#default_load", drupal_render($form['default_load']));
}
return array(
'#type' => 'ajax',
'#commands' => $commands
);
}
//General Function to create table
function bootstrap_table_format($headers, $rows)
{
$thead = "";
$tbody = "";
foreach ($headers as $header) {
$thead .= "{$header} ";
}
foreach ($rows as $row) {
$tbody .= "";
$i = 0;
foreach ($row as $data) {
$datalable = $headers[$i++];
$tbody .= "{$data} ";
}
$tbody .= " ";
}
$table = "
";
return $table;
}
//Returns table with count of TBC /LM
function get_tabledata_TBC_or_LM($sub_type, $startdate, $enddate)
{
if ($enddate == "") {
$enddate = date("Y-m-d");
}
$rows = array();
$headers = array(
" Project",
"Completed",
"In Progress"
);
if ($sub_type == 'TBC') {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'tbc'
));
$query->fields('foss_type', array(
'tbc_completed'
));
$query->fields('foss_type', array(
'tbc_pending'
));
$query->condition('tbc', 1);
$result = $query->execute();
while ($foss_detail = $result->fetchObject()) {
$foss_type = $foss_detail->foss_name;
db_set_active($foss_type);
if ($foss_detail->foss_name != 'Python') {
db_set_active($foss_detail->foss_name); //Active other database
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':startdate' => $startdate,
':enddate' => $enddate
));
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':startdate' => $startdate,
':enddate' => $enddate
));
}
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':startdate' => $startdate,
':enddate' => $enddate
));
}
$completedbookcount = $query2->fetchObject()->book_count;
if ($foss_detail->tbc_completed != "" && $foss_detail->tbc_completed != null) {
$clink = "" . $completedbookcount . " ";
$completedbookcount = $clink;
}
/* For setting completion date for pending TBC and LM more */
$pending_enddate = date('Y-m-d', strtotime("+5 months", strtotime($enddate)));
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':startdate' => $startdate,
':enddate' => $pending_enddate
));
} else {
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':startdate' => $startdate,
':enddate' => $pending_enddate
));
}
} else {
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':startdate' => $startdate,
':enddate' => $pending_enddate
));
}
$pendingbookcount = $query3->fetchObject()->book_count;
if ($foss_detail->tbc_pending != "" && $foss_detail->tbc_pending != null) {
$plink = "" . $pendingbookcount . " ";
$pendingbookcount = $plink;
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active(); // without the paramater means set back to the default for the site
$item = array(
$foss_detail->foss_name,
$completedbookcount,
$pendingbookcount
);
array_push($rows, $item);
} else {
//For Python TBC
db_set_active($foss_detail->foss_name); //Active other database
$query5 = db_select('tbc_book');
$query5->addExpression('count(*)', 'count');
$query5->condition('approved', 1);
$result5 = $query5->execute();
$completedbookcount = $result5->fetchObject()->count;
if ($foss_detail->tbc_completed != "" && $foss_detail->tbc_completed != null) {
$clink = "" . $completedbookcount . " ";
$completedbookcount = $clink;
}
$query6 = db_select('tbc_book');
$query6->addExpression('count(*)', 'count');
$query6->condition('approved', 1, '<>');
$result6 = $query6->execute();
$pendingbookcount = $result6->fetchObject()->count;
if ($foss_detail->tbc_pending != "" && $foss_detail->tbc_pending != null) {
$plink = "" . $pendingbookcount . " ";
$pendingbookcount = $plink;
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active(); // without the paramater means set back to the default for the site
$item = array(
$foss_detail->foss_name,
$completedbookcount,
$pendingbookcount
);
array_push($rows, $item);
}
}
} else {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'lab_migration'
));
$query->fields('foss_type', array(
'lm_completed'
));
$query->fields('foss_type', array(
'lm_pending'
));
$query->condition('lab_migration', 1);
$result = $query->execute();
while ($foss_detail = $result->fetchObject()) {
db_set_active($foss_detail->foss_name); //Active other database
$query2 = db_select('lab_migration_proposal');
$query2->addExpression('count(*)', 'count');
$query2->condition('approval_status', 3);
$result2 = $query2->execute();
$completedlabcount = $result2->fetchObject()->count;
if ($foss_detail->lm_completed != "" && $foss_detail->lm_completed != null) {
$clink = "" . $completedlabcount . " ";
$completedlabcount = $clink;
}
$query3 = db_select('lab_migration_proposal');
$query3->addExpression('count(*)', 'count');
$query3->condition('approval_status', 1);
$result3 = $query3->execute();
$pendinglabcount = $result3->fetchObject()->count;
if ($foss_detail->lm_pending != "" && $foss_detail->lm_pending != null) {
$plink = "" . $pendinglabcount . " ";
$pendinglabcount = $plink;
}
$item = array(
$foss_detail->foss_name,
$completedlabcount,
$pendinglabcount
);
array_push($rows, $item);
}
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active(); // without the paramater means set back to the default for the site
$count = bootstrap_table_format($headers, $rows);
return $count;
}
// This is used to return tables with count of TBC and LM but after applying all filters
function get_tabledata_selectedFoss_TBC_LM($foss_type, $sub_type, $status, $startdate, $enddate, $countryname, $statename, $cityname, $link_flag)
{
//This is for sending values through URL as '%' is not allow through url
if ($cityname == "%") {
$city = "null";
} else {
$city = $cityname;
}
if ($statename == "%") {
$state = "null";
} else {
$state = $statename;
}
if ($countryname == "%") {
$country = "null";
} else {
$country = $countryname;
}
if ($status == "all") {
$rows = array();
if ($sub_type == 'TBC') {
$headers = array(
"Completed Book",
"Book In Progress"
);
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'tbc'
));
$query->fields('foss_type', array(
'tbc_completed'
));
$query->fields('foss_type', array(
'tbc_pending'
));
$query->condition('foss_name', $foss_type);
$query->condition('tbc', 1);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_type = $foss_detail->foss_name;
db_set_active($foss_type);
if ($foss_detail->foss_name != 'Python') {
db_set_active($foss_detail->foss_name); //Active other database
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
$completedbookcount = $query2->fetchObject()->book_count;
if ($foss_detail->tbc_completed != "" && $foss_detail->tbc_completed != null && $link_flag != 1) {
//$clink = "" . $completedbookcount . " ";
if ($completedbookcount != 0 || $completedbookcount != "0") {
$clink = "" . $completedbookcount . " ";
$completedbookcount = $clink;
} else {
$completedbookcount = $completedbookcount;
}
}
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
} else {
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
} else {
$query3 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
$pendingbookcount = $query3->fetchObject()->book_count;
if ($foss_detail->tbc_pending != "" && $foss_detail->tbc_pending != null && $link_flag != 1) {
//$plink = "" . $pendingbookcount . " ";
if ($pendingbookcount != 0 || $pendingbookcount != "0") {
$plink = "" . $pendingbookcount . " ";
$pendingbookcount = $plink;
} else {
$pendingbookcount = $pendingbookcount;
}
}
//db_set_active('default'); // We need to call the main (drupal) db back
//db_set_active(); // without the paramater means set back to the default for the site
$item = array(
$completedbookcount,
$pendingbookcount
);
array_push($rows, $item);
} else {
//For Python TBC
db_set_active($foss_detail->foss_name); //Active other database
$query5 = db_select('tbc_book');
$query5->addExpression('count(*)', 'count');
$query5->condition('approved', 1);
//$query5->condition('author', '%'.$extrafilter.'%', 'LIKE');
$result5 = $query5->execute();
$completedbookcount = $result5->fetchObject()->count;
if ($foss_detail->tbc_completed != "" && $foss_detail->tbc_completed != null && $link_flag != 1) {
$clink = "" . $completedbookcount . " ";
$completedbookcount = $clink;
}
$query6 = db_select('tbc_book');
$query6->addExpression('count(*)', 'count');
$query6->condition('approved', 1, '<>');
//$query6->condition('author', '%'.$extrafilter.'%', 'LIKE');
$result6 = $query6->execute();
$pendingbookcount = $result6->fetchObject()->count;
if ($foss_detail->tbc_pending != "" && $foss_detail->tbc_pending != null && $link_flag != 1) {
$plink = "" . $pendingbookcount . " ";
$pendingbookcount = $plink;
}
//db_set_active('default'); // We need to call the main (drupal) db back
//db_set_active(); // without the paramater means set back to the default for the site
$item = array(
$completedbookcount,
$pendingbookcount
);
array_push($rows, $item);
}
} else {
$headers = array(
"Completed Labs",
"Labs In Progress"
);
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'lab_migration'
));
$query->fields('foss_type', array(
'lm_completed'
));
$query->fields('foss_type', array(
'lm_pending'
));
$query->condition('foss_name', $foss_type);
$query->condition('lab_migration', 1);
$result = $query->execute();
$foss_detail = $result->fetchObject();
db_set_active($foss_detail->foss_name); //Active other database
$query2 = db_query("SELECT COUNT(*) AS count from lab_migration_proposal WHERE approval_status=3 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$completedlabcount = $query2->fetchObject()->count;
if ($foss_detail->lm_completed != "" && $foss_detail->lm_completed != null && $link_flag != 1) {
//$clink = "" . $completedlabcount . " ";
if ($completedlabcount != 0 || $completedlabcount != "0") {
$clink = "" . $completedlabcount . " ";
$completedlabcount = $clink;
} else {
$completedlabcount = $completedlabcount;
}
}
$query3 = db_query("SELECT COUNT(*) AS count from lab_migration_proposal WHERE approval_status=1 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$pendinglabcount = $query3->fetchObject()->count;
if ($foss_detail->lm_pending != "" && $foss_detail->lm_pending != null && $link_flag != 1) {
//$plink = "" . $pendinglabcount . " ";
if ($pendinglabcount != 0 || $pendinglabcount != "0") {
$plink = "" . $pendinglabcount . " ";
$pendinglabcount = $plink;
} else {
$pendinglabcount = $pendinglabcount;
}
}
$item = array(
$completedlabcount,
$pendinglabcount
);
array_push($rows, $item);
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active(); // without the paramater means set back to the default for the site
$count = bootstrap_table_format($headers, $rows);
return $count;
} else if ($status == "completed") {
$rows = array();
if ($sub_type == 'TBC') {
$headers = array(
"Completed Book"
);
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'tbc'
));
$query->fields('foss_type', array(
'tbc_completed'
));
$query->condition('foss_name', $foss_type);
$query->condition('tbc', 1);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_type = $foss_detail->foss_name;
db_set_active($foss_type);
if ($foss_detail->foss_name != 'Python') {
db_set_active($foss_detail->foss_name); //Active other database
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status =3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
$completedbookcount = $query2->fetchObject()->book_count;
if ($foss_detail->tbc_completed != "" && $foss_detail->tbc_completed != null && $link_flag != 1) {
//$clink = "" . $completedbookcount . " ";
if ($completedbookcount != 0 || $completedbookcount != "0") {
$clink = "" . $completedbookcount . " ";
$completedbookcount = $clink;
} else {
$completedbookcount = $completedbookcount;
}
}
$item = array(
$completedbookcount
);
array_push($rows, $item);
} else {
//For Python TBC
db_set_active($foss_detail->foss_name); //Active other database
$query5 = db_select('tbc_book');
$query5->addExpression('count(*)', 'count');
$query5->condition('approved', 1);
//$query5->condition('author', '%'.$extrafilter.'%', 'LIKE');
$result5 = $query5->execute();
$completedbookcount = $result5->fetchObject()->count;
if ($foss_detail->tbc_completed != "" && $foss_detail->tbc_completed != null && $link_flag != 1) {
$clink = "" . $completedbookcount . " ";
$completedbookcount = $clink;
}
$item = array(
$completedbookcount
);
array_push($rows, $item);
}
} else {
$headers = array(
"Completed Labs"
);
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'lab_migration'
));
$query->fields('foss_type', array(
'lm_completed'
));
$query->condition('foss_name', $foss_type);
$query->condition('lab_migration', 1);
$result = $query->execute();
$foss_detail = $result->fetchObject();
db_set_active($foss_detail->foss_name); //Active other database
$query2 = db_query("SELECT COUNT(*) AS count from lab_migration_proposal WHERE approval_status=3 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$completedlabcount = $query2->fetchObject()->count;
if ($foss_detail->lm_completed != "" && $foss_detail->lm_completed != null && $link_flag != 1) {
//$clink = "" . $completedlabcount . " ";
if ($completedlabcount != "0" || $completedlabcount != 0) {
$clink = "" . $completedlabcount . " ";
$completedlabcount = $clink;
} else {
$completedlabcount = $completedlabcount;
}
}
$item = array(
$completedlabcount
);
array_push($rows, $item);
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active(); // without the paramater means set back to the default for the site
$count = bootstrap_table_format($headers, $rows);
} else if ($status == "pending") {
$rows = array();
if ($sub_type == 'TBC') {
$headers = array(
"Books in Progress"
);
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'tbc'
));
$query->fields('foss_type', array(
'tbc_pending'
));
$query->condition('foss_name', $foss_type);
$query->condition('tbc', 1);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_type = $foss_detail->foss_name;
db_set_active($foss_type);
if ($foss_detail->foss_name != 'Python') {
db_set_active($foss_detail->foss_name); //Active other database
if ($foss_detail->foss_name != 'eSim' && $foss_detail->foss_name != 'OpenFOAM' && $foss_detail->foss_name != 'OR-Tools') {
if ($foss_detail->foss_name != 'DWSIM') {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND pe.category>0 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate ", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
} else {
$query2 = db_query("SELECT COUNT( pe.book ) AS book_count FROM textbook_companion_preference pe LEFT JOIN textbook_companion_proposal po ON pe.proposal_id = po.id WHERE po.proposal_status !=3 AND pe.approval_status =1 AND po.city LIKE :city AND po.state LIKE :state AND po.country LIKE :country AND FROM_UNIXTIME(po.completion_date) >= :startdate AND FROM_UNIXTIME(po.completion_date) <= :enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
}
$pendingbookcount = $query2->fetchObject()->book_count;
if ($foss_detail->tbc_pending != "" && $foss_detail->tbc_pending != null && $link_flag != 1) {
//$plink = "" . $pendingbookcount . " ";
if ($pendingbookcount != "0" || $pendingbookcount != 0) {
$plink = "" . $pendingbookcount . " ";
$pendingbookcount = $plink;
} else {
$pendingbookcount = $pendingbookcount;
}
}
$item = array(
$pendingbookcount
);
array_push($rows, $item);
} else {
//For Python TBC
db_set_active($foss_detail->foss_name); //Active other database
$query5 = db_select('tbc_book');
$query5->addExpression('count(*)', 'count');
$query5->condition('approved', 1, '<>');
//$query5->condition('author', '%'.$extrafilter.'%', 'LIKE');
$result5 = $query5->execute();
$pendingbookcount = $result5->fetchObject()->count;
if ($foss_detail->tbc_pending != "" && $foss_detail->tbc_pending != null && $link_flag != 1) {
$plink = "" . $pendingbookcount . " ";
$pendingbookcount = $plink;
}
$item = array(
$pendingbookcount
);
array_push($rows, $item);
}
} else {
$headers = array(
"Labs in Progress"
);
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'lab_migration'
));
$query->fields('foss_type', array(
'lm_pending'
));
$query->condition('foss_name', $foss_type);
$query->condition('lab_migration', 1);
$result = $query->execute();
$foss_detail = $result->fetchObject();
db_set_active($foss_detail->foss_name); //Active other database
$query2 = db_query("SELECT COUNT(*) AS count from lab_migration_proposal WHERE approval_status=1 AND city LIKE :city AND state LIKE :state AND country LIKE :country AND FROM_UNIXTIME(approval_date) >=:startdate AND FROM_UNIXTIME(approval_date) <=:enddate", array(
':city' => $cityname,
':state' => $statename,
':country' => $countryname,
':startdate' => $startdate,
':enddate' => $enddate
));
$pendinglabcount = $query2->fetchObject()->count;
if ($foss_detail->lm_pending != "" && $foss_detail->lm_pending != null && $link_flag != 1) {
//$plink = "" . $pendinglabcount . " ";
if ($pendinglabcount != "0" || $pendinglabcount != 0) {
$plink = "" . $pendinglabcount . " ";
$pendinglabcount = $plink;
} else {
$pendinglabcount = $pendinglabcount;
}
}
$item = array(
$pendinglabcount
);
array_push($rows, $item);
}
db_set_active('default'); // We need to call the main (drupal) db back
db_set_active(); // without the paramater means set back to the default for the site
$count = bootstrap_table_format($headers, $rows);
}
return $count;
}
//Get the list of State according to country selection .It is ajax method for state
function ajax_state_list_dependent_dropdown_callback($form, &$form_state)
{
$foss_type = $form['foss_type']['#options'][$form_state['values']['foss_type']];
$foss_sub_project = $form['foss_sub_project']['#options'][$form_state['values']['foss_sub_project']];
$country = $form['countryname']['#options'][$form_state['values']['countryname']];
$options = array();
if ($country != "--------------") {
if ($foss_sub_project == "Textbook Companion") {
$sub_project = "textbook_companion_proposal";
db_set_active($foss_type); //Active other database
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country
";
$args = array(
":country" => $country
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
} else if ($foss_sub_project == "Lab Migration") {
$sub_project = "lab_migration_proposal";
db_set_active($foss_type); //Active other database
//$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country
";
$args = array(
":country" => $country
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
} else if ($foss_sub_project == "Workshop") {
$sub_project = "workshop";
$foss_type_db = 'default';
db_set_active($foss_type_db); //Active other database
//$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and foss_name = :foss_name
";
$args = array(
":country" => $country,
":foss_name" => $foss_type
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
} else if ($foss_sub_project == "Conference") {
$sub_project = "workshop";
$foss_type_db = 'default';
db_set_active($foss_type_db); //Active other database
//$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and foss_name = :foss_name
";
$args = array(
":country" => $country,
":foss_name" => $foss_type
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
} else if ($foss_sub_project == "Self Workshop") {
//Get self workshop foss number for spoken
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'foss_selfworkshop_no'
));
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_selfworkshop_no = $foss_detail->foss_selfworkshop_no;
db_set_active('selfworkshop'); //Active other database
$options[0] = '--------------';
$query = "SELECT distinct (s.name) as state FROM events_training t, events_academiccenter ac, events_city c, events_state s WHERE t.academic_id=ac.id and ac.city_id=c.id and c.state_id=s.id and (t.status = 4 AND t.foss_id = :foss_id )
";
$args = array(
":foss_id" => $foss_selfworkshop_no
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
}
} else {
$options[0] = '--------------';
}
db_set_active('default'); // We need to call the main (drupal) db back
$form['statename']['#options'] = $options;
$commands[] = ajax_command_replace("#load_state", drupal_render($form['statename']));
$optionscity = array();
$optionscity[0] = '--------------';
$form['cityname']['#options'] = $optionscity;
$commands[] = ajax_command_replace("#load_city", drupal_render($form['cityname']));
return array(
'#type' => 'ajax',
'#commands' => $commands
);
}
//Get the list of City according to country selection .It is ajax method for state
function ajax_city_list_dependent_dropdown_callback($form, &$form_state)
{
$foss_type = $form['foss_type']['#options'][$form_state['values']['foss_type']];
$foss_sub_project = $form['foss_sub_project']['#options'][$form_state['values']['foss_sub_project']];
$country = $form['countryname']['#options'][$form_state['values']['countryname']];
$state = $form['statename']['#options'][$form_state['values']['statename']];
if ($foss_sub_project == "Textbook Companion") {
$sub_project = "textbook_companion_proposal";
db_set_active($foss_type); //Active other database
$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and state = :state
";
$args = array(
":country" => $country,
":state" => $state
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
} else if ($foss_sub_project == "Lab Migration") {
$sub_project = "lab_migration_proposal";
db_set_active($foss_type); //Active other database
$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and state = :state
";
$args = array(
":country" => $country,
":state" => $state
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
} else if ($foss_sub_project == "Workshop") {
$sub_project = "workshop";
$foss_type_db = 'default';
db_set_active($foss_type_db); //Active other database
$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and state = :state and foss_name = :foss_name
";
$args = array(
":country" => $country,
":state" => $state,
":foss_name" => $foss_type
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
} else if ($foss_sub_project == "Conference") {
$sub_project = "workshop";
$foss_type_db = 'default';
db_set_active($foss_type_db); //Active other database
$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and state = :state and foss_name = :foss_name
";
$args = array(
":country" => $country,
":state" => $state,
":foss_name" => $foss_type
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
} else if ($foss_sub_project == "Self Workshop") {
//Get self workshop foss number for spoken
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'foss_selfworkshop_no'
));
$query->condition('foss_name', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_selfworkshop_no = $foss_detail->foss_selfworkshop_no;
db_set_active('selfworkshop'); //Active other database
$options[0] = '--------------';
$query = "SELECT distinct (c.name) as city FROM events_training t, events_academiccenter ac, events_city c, events_state s WHERE t.academic_id=ac.id and ac.city_id=c.id and c.state_id=s.id and (t.status = 4 AND t.foss_id = :foss_id ) and s.name LIKE :statename";
$args = array(
":foss_id" => $foss_selfworkshop_no,
":statename" => $state
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
}
db_set_active('default'); // We need to call the main (drupal) db back
$form['cityname']['#options'] = $options;
$commands[] = ajax_command_replace("#load_city", drupal_render($form['cityname']));
return array(
'#type' => 'ajax',
'#commands' => $commands
);
}
//Get list of country
function get_country_list($foss_type, $foss_sub_project)
{
if ($foss_type != 0) {
if ($foss_sub_project != 0) {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->condition('id', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_type_name = $foss_detail->foss_name;
$options = array();
if ($foss_sub_project == 1 && $foss_type != 3) {
$sub_project = "textbook_companion_proposal";
db_set_active($foss_type_name); //Active other database
$options[0] = '--------------';
$query = "
SELECT Distinct(country) FROM " . $sub_project . "
";
$result = db_query($query);
while ($country_detail = $result->fetchObject()) {
$options[$country_detail->country] = $country_detail->country;
}
} else if ($foss_sub_project == 2 && $foss_type != 3) {
$sub_project = "lab_migration_proposal";
db_set_active($foss_type_name); //Active other database
// $options = array();
$options[0] = '--------------';
$query = "
SELECT Distinct(country) FROM " . $sub_project . "
";
$result = db_query($query);
while ($country_detail = $result->fetchObject()) {
$options[$country_detail->country] = $country_detail->country;
}
} else if ($foss_sub_project == 3 || $foss_sub_project == 5) {
$sub_project = "workshop";
$foss_type_db = 'default';
db_set_active($foss_type_db); //Active other database
//$options = array();
$options[0] = '--------------';
$query = "
SELECT Distinct(country) FROM " . $sub_project . "
WHERE foss_name = :foss_name
";
$args = array(
":foss_name" => $foss_type_name
);
$result = db_query($query, $args);
while ($country_detail = $result->fetchObject()) {
$options[$country_detail->country] = $country_detail->country;
}
} else if ($foss_sub_project == 4) {
$options[0] = '--------------';
$options[1] = 'India';
}
db_set_active('default'); // We need to call the main (drupal) db back
return $options;
} else {
$options = array();
$options[0] = '--------------';
return $options;
}
}
}
//Get list of state
function get_state_list($foss_type, $foss_sub_project, $country)
{
if (($foss_type != 0) && $foss_sub_project != 0 && $country != "") {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'foss_selfworkshop_no'
));
$query->condition('id', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_type_name = $foss_detail->foss_name;
$foss_selfworkshop_no = $foss_detail->foss_selfworkshop_no;
$options = array();
if ($foss_sub_project == 1 && $foss_type != 3) {
$options = array();
$sub_project = "textbook_companion_proposal";
db_set_active($foss_type_name); //Active other database
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country
";
$args = array(
":country" => $country
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
} else if ($foss_sub_project == 2 && $foss_type != 3) {
$sub_project = "lab_migration_proposal";
$options = array();
db_set_active($foss_type_name); //Active other database
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country
";
$args = array(
":country" => $country
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
} else if ($foss_sub_project == 3 || $foss_sub_project == 5) {
$options = array();
$sub_project = "workshop";
$foss_type_db = 'default';
db_set_active($foss_type_db); //Active other database
$options[0] = '--------------';
$query = "SELECT * FROM " . $sub_project . "
WHERE country = :country and foss_name = :foss_name
";
$args = array(
":country" => $country,
":foss_name" => $foss_type_name
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
} else if ($foss_sub_project == 4) {
db_set_active('selfworkshop'); //Active other database
$options[0] = '--------------';
$query = "SELECT distinct (s.name) as state FROM events_training t, events_academiccenter ac, events_city c, events_state s WHERE t.academic_id=ac.id and ac.city_id=c.id and c.state_id=s.id and (t.status = 4 AND t.foss_id = :foss_id )
";
$args = array(
":foss_id" => $foss_selfworkshop_no
);
$result = db_query($query, $args);
while ($state_detail = $result->fetchObject()) {
$options[$state_detail->state] = $state_detail->state;
}
}
db_set_active('default'); // We need to call the main (drupal) db back
return $options;
} else {
$options = array();
$options[0] = '--------------';
return $options;
}
}
//Get List of City
function get_city_list($foss_type, $foss_sub_project, $country, $state)
{
if (($foss_type != 0) && $foss_sub_project != 0 && $country != "" && $state != "") {
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$query->fields('foss_type', array(
'foss_selfworkshop_no'
));
$query->condition('id', $foss_type);
$result = $query->execute();
$foss_detail = $result->fetchObject();
$foss_type = $foss_detail->foss_name;
$foss_selfworkshop_no = $foss_detail->foss_selfworkshop_no;
if ($foss_sub_project == 1 && $foss_type != "Python") {
$sub_project = "textbook_companion_proposal";
db_set_active($foss_type); //Active other database
$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and state = :state
";
$args = array(
":country" => $country,
":state" => $state
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
} else if ($foss_sub_project == 2 && $foss_type != "Python") {
$sub_project = "lab_migration_proposal";
db_set_active($foss_type); //Active other database
$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and state = :state
";
$args = array(
":country" => $country,
":state" => $state
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
} else if ($foss_sub_project == 3 || $foss_sub_project == 5) {
$sub_project = "workshop";
$foss_type_db = 'default';
db_set_active($foss_type_db); //Active other database
$options = array();
$options[0] = '--------------';
$query = "
SELECT * FROM " . $sub_project . "
WHERE country = :country and state = :state and foss_name = :foss_name
";
$args = array(
":country" => $country,
":state" => $state,
":foss_name" => $foss_type
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
} else if ($foss_sub_project == 4) {
db_set_active('selfworkshop'); //Active other database
$options[0] = '--------------';
$query = "SELECT distinct (c.name) as city FROM events_training t, events_academiccenter ac, events_city c, events_state s WHERE t.academic_id=ac.id and ac.city_id=c.id and c.state_id=s.id and (t.status = 4 AND t.foss_id = :foss_id ) and s.name LIKE :statename";
$args = array(
":foss_id" => $foss_selfworkshop_no,
":statename" => $state
);
$result = db_query($query, $args);
while ($city_detail = $result->fetchObject()) {
$options[$city_detail->city] = $city_detail->city;
}
}
db_set_active('default'); // We need to call the main (drupal) db back
return $options;
} else {
$options = array();
$options[0] = '--------------';
return $options;
}
}
/*Add Event form (Workshop and seminar along with photos testimonials and speakers)
Same form is used for editing existing events
*/
function workshop_add_form($form, &$form_state, $workshop_id = 0, $no_js_use = FALSE)
{
$query = "
SELECT * FROM workshop
WHERE w_id = :workshop_id
";
$args = array(
":workshop_id" => $workshop_id
);
$result = db_query($query, $args);
$row = $result->fetchObject();
$form = array();
if ($workshop_id == 0) {
$form['foss_select'] = array(
'#type' => 'select',
'#title' => t('Select FOSS under which event took place '),
'#options' => get_first_dropdown_options_foss_name(),
'#default_value' => '',
"#required" => TRUE
);
$form['type'] = array(
'#type' => 'select',
'#title' => t('Selected Type'),
'#options' => array(
'Workshop' => t('Workshop'),
'Conference' => t('Conference'),
'Events' => t('Events')
),
'#default_value' => '',
"#required" => TRUE
);
$form["name"] = array(
"#type" => "textfield",
"#title" => "Name",
"#default_value" => '',
"#required" => TRUE
);
$form['start_date'] = array(
'#type' => 'date_popup',
'#title' => t('Select Start Date Of Event :'),
'#date_increment' => 15,
'#date_year_range' => '2008:+3',
'#default_value' => '',
'#date_format' => 'Y-m-d',
'#attributes' => array(
'autocomplete' => 'off',
'readonly' => 'readonly'
),
"#required" => TRUE
);
$form['end_date'] = array(
'#type' => 'date_popup',
'#title' => t('Select End Date Of Event:'),
'#date_increment' => 15,
'#date_year_range' => '2008:+3',
'#default_value' => '',
'#date_format' => 'Y-m-d',
'#attributes' => array(
'autocomplete' => 'off',
'readonly' => 'readonly'
),
"#required" => TRUE
);
$form["venue"] = array(
"#type" => "textfield",
"#title" => "Venue",
"#default_value" => '',
"#required" => TRUE
);
$form["street"] = array(
"#type" => "textfield",
"#title" => "Street",
"#default_value" => '',
"#required" => TRUE
);
$form['country'] = array(
'#type' => 'select',
'#title' => t('Country'),
'#options' => array(
'India' => 'India',
'Others' => 'Others'
),
'#required' => TRUE,
'#tree' => TRUE,
'#validated' => TRUE
);
$form['other_country'] = array(
'#type' => 'textfield',
'#title' => t('Other than India'),
'#size' => 100,
'#attributes' => array(
'placeholder' => t('Enter your country name')
),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'Others'
)
)
)
);
$form['other_state'] = array(
'#type' => 'textfield',
'#title' => t('State other than India'),
'#size' => 100,
'#attributes' => array(
'placeholder' => t('Enter your state/region name')
),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'Others'
)
)
)
);
$form['other_city'] = array(
'#type' => 'textfield',
'#title' => t('City other than India'),
'#size' => 100,
'#attributes' => array(
'placeholder' => t('Enter your city name')
),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'Others'
)
)
)
);
$form['all_state'] = array(
'#type' => 'select',
'#title' => t('State'),
'#options' => _list_of_states(),
'#validated' => TRUE,
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'India'
)
)
)
);
$form['city'] = array(
'#type' => 'select',
'#title' => t('City'),
'#options' => _list_of_cities(),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'India'
)
)
)
);
$form['pincode'] = array(
'#type' => 'textfield',
'#title' => t('Pincode'),
'#size' => 30,
'#maxlength' => 6,
'#required' => False,
'#attributes' => array(
'placeholder' => 'Enter pincode....'
)
);
$form["no_of_participant"] = array(
"#type" => "textfield",
"#title" => "Number Of Participants",
"#default_value" => '',
"#required" => TRUE
);
$form["event_link"] = array(
"#type" => "textfield",
"#title" => "Link to event's website",
"#default_value" => ''
);
$form["body"] = array(
"#type" => "textarea",
"#title" => "Details",
"#default_value" => '',
"#required" => TRUE
);
$form['speakers_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
'#prefix' => '',
'#suffix' => '
'
);
if (empty($form_state['num_speakers'])) {
$form_state['num_speakers'] = 1;
}
$temp = 0;
for ($i = 0; $i < $form_state['num_speakers']; $i++) {
$temp1 = $i;
$form['speakers_fieldset'][$i]["s_text"] = array(
"#type" => "item",
"#markup" => "Speaker : " . ($temp1 + 1) . " "
);
$form['speakers_fieldset'][$i]["speakername"] = array(
"#type" => "textfield",
"#title" => "Name: ",
"#default_value" => ""
);
$form['speakers_fieldset'][$i]["institute"] = array(
"#type" => "textfield",
"#title" => "Institute: ",
"#default_value" => ""
);
$form['speakers_fieldset'][$i]["place"] = array(
"#type" => "textfield",
"#title" => "Place: ",
"#default_value" => ""
);
}
$form["speakers_count"] = array(
"#type" => "hidden",
"#value" => $temp1
);
$form['speakers_fieldset']['add_speakers'] = array(
'#type' => 'submit',
'#value' => t('Add Speaker'),
'#limit_validation_errors' => array(),
'#submit' => array(
'speakers_add_more_add_one'
),
'#ajax' => array(
'callback' => 'speakers_add_more_callback',
'wrapper' => 'speakers-fieldset-wrapper'
)
);
if ($form_state['num_speakers'] > 1) {
$form['speakers_fieldset']['remove_speakers'] = array(
'#type' => 'submit',
'#value' => t('Remove Speaker'),
'#limit_validation_errors' => array(),
'#submit' => array(
'speakers_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'speakers_add_more_callback',
'wrapper' => 'speakers-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['speakers_fieldset']['remove_speakers']['#ajax'])) {
unset($form['speakers_fieldset']['remove_speakers']['#ajax']);
}
unset($form['speakers_fieldset']['add_speakers']['#ajax']);
}
// adding testimonial fieldset
$form['testimonial_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
'#prefix' => '',
'#suffix' => '
'
);
if (empty($form_state['num_testimonial'])) {
$form_state['num_testimonial'] = 1;
}
$temp = 0;
for ($i = 0; $i < $form_state['num_testimonial']; $i++) {
$temp = $i;
$form['testimonial_fieldset'][$i]["t_text"] = array(
"#type" => "item",
"#markup" => "Testimonial : " . ($temp + 1) . " "
);
$form['testimonial_fieldset'][$i]["t_name"] = array(
"#type" => "textfield",
"#title" => "Name: ",
"#default_value" => ""
);
$form['testimonial_fieldset'][$i]["t_department"] = array(
"#type" => "textfield",
"#title" => "Department: ",
"#default_value" => ""
);
$form['testimonial_fieldset'][$i]["t_university"] = array(
"#type" => "textfield",
"#title" => "University: ",
"#default_value" => ""
);
$form['testimonial_fieldset'][$i]["t_body"] = array(
"#type" => "textarea",
"#title" => "Testimonial: "
);
}
$form["testimonial_count"] = array(
"#type" => "hidden",
"#value" => $temp
);
$form['testimonial_fieldset']['add_testimonial'] = array(
'#type' => 'submit',
'#value' => t('Add Testimonial'),
'#limit_validation_errors' => array(),
'#submit' => array(
'testimonial_add_more_add_one'
),
'#ajax' => array(
'callback' => 'testimonial_add_more_callback',
'wrapper' => 'testimonial-fieldset-wrapper'
)
);
if ($form_state['num_testimonial'] > 1) {
$form['testimonial_fieldset']['remove_testimonial'] = array(
'#type' => 'submit',
'#value' => t('Remove Testimonial'),
'#limit_validation_errors' => array(),
'#submit' => array(
'testimonial_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'testimonial_add_more_callback',
'wrapper' => 'testimonial-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['testimonial_fieldset']['remove_testimonial']['#ajax'])) {
unset($form['testimonial_fieldset']['remove_testimonial']['#ajax']);
}
unset($form['testimonial_fieldset']['add_testimonial']['#ajax']);
}
//Adding video link with title
$form['videolink_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
'#prefix' => '',
'#suffix' => '
'
);
if (empty($form_state['num_videolink'])) {
$form_state['num_videolink'] = 1;
}
$temp = 0;
for ($i = 0; $i < $form_state['num_videolink']; $i++) {
$temp1 = $i;
$form['videolink_fieldset'][$i]["v_text"] = array(
"#type" => "item",
"#markup" => "Video : " . ($temp1 + 1) . " "
);
$form['videolink_fieldset'][$i]["videolink_title"] = array(
"#type" => "textfield",
"#title" => "Title: ",
"#default_value" => ""
);
$form['videolink_fieldset'][$i]["videolink_link"] = array(
"#type" => "textfield",
"#title" => "Link: ",
"#default_value" => ""
);
}
$form["videolink_count"] = array(
"#type" => "hidden",
"#value" => $temp1
);
$form['videolink_fieldset']['add_videolink'] = array(
'#type' => 'submit',
'#value' => t('Add Video Link'),
'#limit_validation_errors' => array(),
'#submit' => array(
'videolink_add_more_add_one'
),
'#ajax' => array(
'callback' => 'videolink_add_more_callback',
'wrapper' => 'videolink-fieldset-wrapper'
)
);
if ($form_state['num_videolink'] > 1) {
$form['videolink_fieldset']['remove_videolink'] = array(
'#type' => 'submit',
'#value' => t('Remove Video Link'),
'#limit_validation_errors' => array(),
'#submit' => array(
'videolink_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'videolink_add_more_callback',
'wrapper' => 'videolink-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['videolink_fieldset']['remove_videolink']['#ajax'])) {
unset($form['videolink_fieldset']['remove_videolink']['#ajax']);
}
unset($form['videolink_fieldset']['add_videolink']['#ajax']);
}
$form['names_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
'#prefix' => '',
'#suffix' => '
'
);
if (empty($form_state['num_names'])) {
$form_state['num_names'] = 1;
}
for ($i = 0; $i < $form_state['num_names']; $i++) {
$form['names_fieldset'][$i]['name'] = array(
'#title' => t('Add Event Image'),
'#type' => 'file',
'#weight' => '5',
'#description' => t('Upload an image'),
// We need this to know which file element this is.
// By default drupal would name all as files[names_fieldset]
'#name' => 'files[names_fieldset_' . $i . '_name]'
);
}
$form['names_fieldset']['add_name'] = array(
'#type' => 'submit',
'#value' => t('Add Image'),
'#limit_validation_errors' => array(),
'#submit' => array(
'workshop_add_more_add_one'
),
'#ajax' => array(
'callback' => 'workshop_add_more_callback',
'wrapper' => 'names-fieldset-wrapper'
)
);
if ($form_state['num_names'] > 1) {
$form['names_fieldset']['remove_name'] = array(
'#type' => 'submit',
'#value' => t('Remove Image'),
'#limit_validation_errors' => array(),
'#submit' => array(
'workshop_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'workshop_add_more_callback',
'wrapper' => 'names-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['names_fieldset']['remove_name']['#ajax'])) {
unset($form['names_fieldset']['remove_name']['#ajax']);
}
unset($form['names_fieldset']['add_name']['#ajax']);
}
} else {
$form = array();
$form['foss_select'] = array(
'#type' => 'select',
'#title' => t('Select FOSS under which event took place '),
'#options' => get_first_dropdown_options_foss_name(),
'#default_value' => $row->foss_name,
"#required" => TRUE
);
$form['type'] = array(
'#type' => 'select',
'#title' => t('Selected Type'),
'#options' => array(
'Workshop' => t('Workshop'),
'Conference' => t('Conference'),
'Events' => t('Events')
),
'#default_value' => $row->type,
"#required" => TRUE
);
$form["name"] = array(
"#type" => "textfield",
"#title" => "Name",
"#default_value" => $row->w_name,
"#required" => TRUE
);
$form['start_date'] = array(
'#type' => 'date_popup',
'#title' => t('Select Start Date Of Event :'),
'#date_increment' => 15,
'#date_year_range' => '2008:+3',
'#default_value' => $row->startdate,
'#date_format' => 'Y-m-d',
'#attributes' => array(
'autocomplete' => 'off',
'readonly' => 'readonly'
),
"#required" => TRUE
);
$form['end_date'] = array(
'#type' => 'date_popup',
'#title' => t('Select End Date Of Event:'),
'#date_increment' => 15,
'#date_year_range' => '2008:+3',
'#default_value' => $row->enddate,
'#date_format' => 'Y-m-d',
'#attributes' => array(
'autocomplete' => 'off',
'readonly' => 'readonly'
),
"#required" => TRUE
);
$form["venue"] = array(
"#type" => "textfield",
"#title" => "Venue",
"#default_value" => $row->venue,
"#required" => TRUE
);
$form["street"] = array(
"#type" => "textfield",
"#title" => "Street",
"#default_value" => $row->street,
"#required" => TRUE
);
$form['country'] = array(
'#type' => 'select',
'#title' => t('Country'),
'#options' => array(
'India' => 'India',
'Others' => 'Others'
),
'#required' => TRUE,
'#tree' => TRUE,
'#validated' => TRUE,
"#default_value" => $row->country
);
$form['other_country'] = array(
'#type' => 'textfield',
'#title' => t('Other than India'),
'#size' => 100,
'#attributes' => array(
'placeholder' => t('Enter your country name')
),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'Others'
)
)
),
"#default_value" => $row->country
);
$form['other_state'] = array(
'#type' => 'textfield',
'#title' => t('State other than India'),
'#size' => 100,
'#attributes' => array(
'placeholder' => t('Enter your state/region name')
),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'Others'
)
)
),
"#default_value" => $row->state
);
$form['other_city'] = array(
'#type' => 'textfield',
'#title' => t('City other than India'),
'#size' => 100,
'#attributes' => array(
'placeholder' => t('Enter your city name')
),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'Others'
)
)
),
"#default_value" => $row->city
);
$form['all_state'] = array(
'#type' => 'select',
'#title' => t('State'),
'#options' => _list_of_states(),
'#validated' => TRUE,
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'India'
)
)
),
"#default_value" => $row->state
);
$form['city'] = array(
'#type' => 'select',
'#title' => t('City'),
'#options' => _list_of_cities(),
'#states' => array(
'visible' => array(
':input[name="country"]' => array(
'value' => 'India'
)
)
),
"#default_value" => $row->city
);
$form['pincode'] = array(
'#type' => 'textfield',
'#title' => t('Pincode'),
'#size' => 30,
'#maxlength' => 6,
'#required' => False,
'#attributes' => array(
'placeholder' => 'Enter pincode....'
),
"#default_value" => $row->pincode
);
$form["no_of_participant"] = array(
"#type" => "textfield",
"#title" => "Number Of Participants",
"#default_value" => $row->no_of_participant,
"#required" => TRUE
);
$form["event_link"] = array(
"#type" => "textfield",
"#title" => "Link to event's website",
"#default_value" => $row->event_link
);
$form["body"] = array(
"#type" => "textarea",
"#title" => "Details",
"#default_value" => $row->body,
"#required" => TRUE
);
/*Edit Speakers*/
$query_s = db_select('speakers');
$query_s->fields('speakers');
$query_s->condition('w_id', $workshop_id);
$result_s = $query_s->execute();
$num_of_speakerresults = $result_s->rowCount();
$form['speakers_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
'#prefix' => '',
'#suffix' => '
'
);
if ($num_of_speakerresults != 0) {
$form_state['num_speakers'] = $num_of_speakerresults;
$temp = 0;
$i = 0;
while ($row_s = $result_s->fetchObject()) {
$temp = $i;
$form['speakers_fieldset'][$i]["s_text"] = array(
"#type" => "item",
"#markup" => "Speakers : " . ($temp + 1) . " "
);
$form['speakers_fieldset'][$i]["s_id"] = array(
"#type" => "hidden",
"#default_value" => $row_s->s_id
);
$form['speakers_fieldset'][$i]["speakername"] = array(
"#type" => "textfield",
"#title" => "Name",
"#default_value" => $row_s->name
);
$form['speakers_fieldset'][$i]["institute"] = array(
"#type" => "textfield",
"#title" => "Institute",
"#default_value" => $row_s->institute
);
$form['speakers_fieldset'][$i]["place"] = array(
"#type" => "textfield",
"#title" => "Place",
"#default_value" => $row_s->place
);
$i++;
}
$form["speakers_count"] = array(
"#type" => "hidden",
"#value" => $temp
);
} else {
if (empty($form_state['num_speakers'])) {
$form_state['num_speakers'] = 1;
}
$temp = 0;
for ($i = 0; $i < $form_state['num_speakers']; $i++) {
$temp = $i;
$form['speakers_fieldset'][$i]["s_text"] = array(
"#type" => "item",
"#markup" => "Speakers : " . ($temp + 1) . " "
);
$form['speakers_fieldset'][$i]["speakername"] = array(
"#type" => "textfield",
"#title" => "Name",
"#default_value" => ""
);
$form['speakers_fieldset'][$i]["institute"] = array(
"#type" => "textfield",
"#title" => "Department",
"#default_value" => ""
);
$form['speakers_fieldset'][$i]["place"] = array(
"#type" => "textfield",
"#title" => "University",
"#default_value" => ""
);
}
$form["speakers_count"] = array(
"#type" => "hidden",
"#value" => $temp
);
$form['speakers_fieldset']['add_speakers'] = array(
'#type' => 'submit',
'#value' => t('Add Speaker'),
'#limit_validation_errors' => array(),
'#submit' => array(
'speakers_add_more_add_one'
),
'#ajax' => array(
'callback' => 'speakers_add_more_callback',
'wrapper' => 'speakers-fieldset-wrapper'
)
);
if ($form_state['num_speakers'] > 1) {
$form['speakers_fieldset']['remove_speakers'] = array(
'#type' => 'submit',
'#value' => t('Remove'),
'#limit_validation_errors' => array(),
'#submit' => array(
'speakers_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'speakers_add_more_callback',
'wrapper' => 'speakers-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['speakers_fieldset']['remove_speakers']['#ajax'])) {
unset($form['speakers_fieldset']['remove_speakers']['#ajax']);
}
unset($form['speakers_fieldset']['add_speakers']['#ajax']);
}
}
/* Edit Video Links */
$query_v = db_select('workshop_videolinks');
$query_v->fields('workshop_videolinks');
$query_v->condition('w_id', $workshop_id);
$result_v = $query_v->execute();
$num_of_videoresults = $result_v->rowCount();
$form['videolink_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
'#prefix' => '',
'#suffix' => '
'
);
if ($num_of_videoresults != 0) {
$form_state['num_videolink'] = $num_of_videoresults;
$temp = 0;
$i = 0;
while ($row_v = $result_v->fetchObject()) {
$temp = $i;
$form['videolink_fieldset'][$i]["v_text"] = array(
"#type" => "item",
"#markup" => "Video : " . ($temp + 1) . " "
);
$form['videolink_fieldset'][$i]["v_id"] = array(
"#type" => "hidden",
"#default_value" => $row_v->v_id
);
$form['videolink_fieldset'][$i]["videolink_title"] = array(
"#type" => "textfield",
"#title" => "Title: ",
"#default_value" => $row_v->title
);
$form['videolink_fieldset'][$i]["videolink_link"] = array(
"#type" => "textfield",
"#title" => "Institute",
"#default_value" => $row_v->link
);
$i++;
}
$form["videolink_count"] = array(
"#type" => "hidden",
"#value" => $temp
);
} else {
if (empty($form_state['num_videolink'])) {
$form_state['num_videolink'] = 1;
}
$temp = 0;
for ($i = 0; $i < $form_state['num_videolink']; $i++) {
$temp = $i;
$form['videolink_fieldset'][$i]["v_text"] = array(
"#type" => "item",
"#markup" => "Video : " . ($temp + 1) . " "
);
$form['videolink_fieldset'][$i]["videolink_title"] = array(
"#type" => "textfield",
"#title" => "Title: ",
"#default_value" => ""
);
$form['videolink_fieldset'][$i]["videolink_link"] = array(
"#type" => "textfield",
"#title" => "Link: ",
"#default_value" => ""
);
}
$form["videolink_count"] = array(
"#type" => "hidden",
"#value" => $temp
);
$form['videolink_fieldset']['add_videolink'] = array(
'#type' => 'submit',
'#value' => t('Add Video'),
'#limit_validation_errors' => array(),
'#submit' => array(
'videolink_add_more_add_one'
),
'#ajax' => array(
'callback' => 'videolink_add_more_callback',
'wrapper' => 'videolink-fieldset-wrapper'
)
);
if ($form_state['num_videolink'] > 1) {
$form['videolink_fieldset']['remove_videolink'] = array(
'#type' => 'submit',
'#value' => t('Remove'),
'#limit_validation_errors' => array(),
'#submit' => array(
'videolink_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'videolink_add_more_callback',
'wrapper' => 'videolink-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['videolink_fieldset']['remove_videolink']['#ajax'])) {
unset($form['videolink_fieldset']['remove_videolink']['#ajax']);
}
unset($form['videolink_fieldset']['add_videolink']['#ajax']);
}
}
/*Edit Testimonial*/
$query_t = db_select('testimonials');
$query_t->fields('testimonials');
$query_t->condition('w_id', $workshop_id);
$result_t = $query_t->execute();
$num_of_results = $result_t->rowCount();
$form['testimonial_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
//'#title' => t('Add Testimonial'),
'#prefix' => '',
'#suffix' => '
'
);
if ($num_of_results != 0) {
$form_state['num_testimonial'] = $num_of_results;
$temp = 0;
$i = 0;
while ($row_t = $result_t->fetchObject()) {
$temp = $i;
$form['testimonial_fieldset'][$i]["t_text"] = array(
"#type" => "item",
"#markup" => "Testimonial : " . ($temp + 1) . " "
);
$form['testimonial_fieldset'][$i]["t_id"] = array(
"#type" => "hidden",
"#default_value" => $row_t->t_id
);
$form['testimonial_fieldset'][$i]["t_name"] = array(
"#type" => "textfield",
"#title" => "Name",
"#default_value" => $row_t->name
);
$form['testimonial_fieldset'][$i]["t_department"] = array(
"#type" => "textfield",
"#title" => "Department",
"#default_value" => $row_t->department
);
$form['testimonial_fieldset'][$i]["t_university"] = array(
"#type" => "textfield",
"#title" => "University",
"#default_value" => $row_t->university
);
$form['testimonial_fieldset'][$i]["t_body"] = array(
"#type" => "textarea",
"#title" => "Testimonial",
"#default_value" => $row_t->body
);
$i++;
}
$form["testimonial_count"] = array(
"#type" => "hidden",
"#value" => $temp
);
} else {
if (empty($form_state['num_testimonial'])) {
$form_state['num_testimonial'] = 1;
}
$temp = 0;
for ($i = 0; $i < $form_state['num_testimonial']; $i++) {
$temp = $i;
$form['testimonial_fieldset'][$i]["t_text"] = array(
"#type" => "item",
"#markup" => "Testimonial : " . ($temp + 1) . " "
);
$form['testimonial_fieldset'][$i]["t_name"] = array(
"#type" => "textfield",
"#title" => "Name",
"#default_value" => ""
);
$form['testimonial_fieldset'][$i]["t_department"] = array(
"#type" => "textfield",
"#title" => "Department",
"#default_value" => ""
);
$form['testimonial_fieldset'][$i]["t_university"] = array(
"#type" => "textfield",
"#title" => "University",
"#default_value" => ""
);
$form['testimonial_fieldset'][$i]["t_body"] = array(
"#type" => "textarea",
"#title" => "Testimonial"
);
}
$form["testimonial_count"] = array(
"#type" => "hidden",
"#value" => $temp
);
$form['testimonial_fieldset']['add_testimonial'] = array(
'#type' => 'submit',
'#value' => t('Add testimonial'),
'#limit_validation_errors' => array(),
'#submit' => array(
'testimonial_add_more_add_one'
),
'#ajax' => array(
'callback' => 'testimonial_add_more_callback',
'wrapper' => 'testimonial-fieldset-wrapper'
)
);
if ($form_state['num_testimonial'] > 1) {
$form['testimonial_fieldset']['remove_testimonial'] = array(
'#type' => 'submit',
'#value' => t('Remove'),
'#limit_validation_errors' => array(),
'#submit' => array(
'testimonial_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'testimonial_add_more_callback',
'wrapper' => 'testimonial-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['testimonial_fieldset']['remove_testimonial']['#ajax'])) {
unset($form['testimonial_fieldset']['remove_testimonial']['#ajax']);
}
unset($form['testimonial_fieldset']['add_testimonial']['#ajax']);
}
}
$form['uploadphotos'] = array(
'#markup' => ' Edit Photos
(Select Check box to delete existing photos)',
'#prefix' => '',
'#suffix' => ''
);
$query = db_select('workshop');
$query->fields('workshop');
$query->condition('w_id', $workshop_id);
$result = $query->execute();
$row = $result->fetchObject();
$query1 = db_select('workshop_images');
$query1->fields('workshop_images');
$query1->condition('w_id', $workshop_id);
$result1 = $query1->execute();
while ($row1 = $result1->fetchObject()) {
$form['imagecheck@' . $row1->id] = array(
'#type' => 'checkbox',
'#field_suffix' => ' w_name) . "/" . $row1->name . ' />'
);
}
$form['enduploadphotos'] = array(
'#markup' => '',
'#prefix' => '',
'#suffix' => '
'
);
$form['names_fieldset'] = array(
'#type' => 'fieldset',
'#tree' => TRUE,
// '#title' => t('Add images'),
'#prefix' => '',
'#suffix' => '
'
);
if (empty($form_state['num_names'])) {
$form_state['num_names'] = 1;
}
for ($i = 0; $i < $form_state['num_names']; $i++) {
$form['names_fieldset'][$i]['name'] = array(
'#title' => t('Add Event Image'),
'#type' => 'file',
'#weight' => '5',
'#description' => t('Upload an image'),
// We need this to know which file element this is.
// By default drupal would name all as files[names_fieldset]
'#name' => 'files[names_fieldset_' . $i . '_name]'
);
}
$form['names_fieldset']['add_name'] = array(
'#type' => 'submit',
'#value' => t('Add one more'),
'#limit_validation_errors' => array(),
'#submit' => array(
'workshop_add_more_add_one'
),
'#ajax' => array(
'callback' => 'workshop_add_more_callback',
'wrapper' => 'names-fieldset-wrapper'
)
);
if ($form_state['num_names'] > 1) {
$form['names_fieldset']['remove_name'] = array(
'#type' => 'submit',
'#value' => t('Remove one'),
'#limit_validation_errors' => array(),
'#submit' => array(
'workshop_add_more_remove_one'
),
'#ajax' => array(
'callback' => 'workshop_add_more_callback',
'wrapper' => 'names-fieldset-wrapper'
)
);
}
if ($no_js_use) {
if (!empty($form['names_fieldset']['remove_name']['#ajax'])) {
unset($form['names_fieldset']['remove_name']['#ajax']);
}
unset($form['names_fieldset']['add_name']['#ajax']);
}
}
$form["workshop_id"] = array(
"#type" => "hidden",
"#value" => $workshop_id
);
$form["submit"] = array(
"#type" => "submit",
"#value" => "Submit"
);
return $form;
}
function workshop_add_form_validate($form, &$form_state)
{
if ($form_state['values']['country'] == 'Others') {
if ($form_state['values']['other_country'] == '') {
form_set_error('other_country', t('Enter country name'));
// $form_state['values']['country'] = $form_state['values']['other_country'];
} else {
$form_state['values']['country'] = $form_state['values']['other_country'];
}
if ($form_state['values']['other_state'] == '') {
form_set_error('other_state', t('Enter state name'));
// $form_state['values']['country'] = $form_state['values']['other_country'];
} else {
$form_state['values']['all_state'] = $form_state['values']['other_state'];
}
if ($form_state['values']['other_city'] == '') {
form_set_error('other_city', t('Enter city name'));
// $form_state['values']['country'] = $form_state['values']['other_country'];
} else {
$form_state['values']['city'] = $form_state['values']['other_city'];
}
} else {
if ($form_state['values']['country'] == '') {
form_set_error('country', t('Select country name'));
// $form_state['values']['country'] = $form_state['values']['other_country'];
}
if ($form_state['values']['all_state'] == '') {
form_set_error('all_state', t('Select state name'));
// $form_state['values']['country'] = $form_state['values']['other_country'];
}
if ($form_state['values']['city'] == '') {
form_set_error('city', t('Select city name'));
// $form_state['values']['country'] = $form_state['values']['other_country'];
}
}
if (isset($_FILES['files'])) {
/* check for valid filename extensions */
foreach ($_FILES['files']['name'] as $file_form_name => $file_name) {
if ($file_name) {
if (strstr($file_form_name, 'names_fieldset'))
$file_type = 'I';
switch ($file_type) {
case 'I':
$allowed_extensions_str = variable_get('events_image_extensions', '');
break;
}
$allowed_extensions = explode(',', $allowed_extensions_str);
$temp_extension = end(explode('.', strtolower($_FILES['files']['name'][$file_form_name])));
if (!in_array($temp_extension, $allowed_extensions))
form_set_error($file_form_name, t('Only file with ' . $allowed_extensions_str . ' extensions can be uploaded.'));
//if ($_FILES['files']['size'][$file_form_name] <= 0)
// form_set_error($file_form_name, t('File size cannot be zero.'));
}
}
}
}
function speakers_add_more_callback($form, $form_state)
{
return $form['speakers_fieldset'];
}
function speakers_add_more_add_one($form, &$form_state)
{
$form_state['num_speakers']++;
$form_state['rebuild'] = TRUE;
//$form_state['no_redirect'] = TRUE;
}
function speakers_add_more_remove_one($form, &$form_state)
{
if ($form_state['num_speakers'] > 1) {
$form_state['num_speakers']--;
}
$form_state['rebuild'] = TRUE;
}
function videolink_add_more_callback($form, $form_state)
{
return $form['videolink_fieldset'];
}
function videolink_add_more_add_one($form, &$form_state)
{
$form_state['num_videolink']++;
$form_state['rebuild'] = TRUE;
//$form_state['no_redirect'] = TRUE;
}
function videolink_add_more_remove_one($form, &$form_state)
{
if ($form_state['num_videolink'] > 1) {
$form_state['num_videolink']--;
}
$form_state['rebuild'] = TRUE;
}
function testimonial_add_more_callback($form, $form_state)
{
return $form['testimonial_fieldset'];
}
function testimonial_add_more_add_one($form, &$form_state)
{
$form_state['num_testimonial']++;
$form_state['rebuild'] = TRUE;
//$form_state['no_redirect'] = TRUE;
}
function testimonial_add_more_remove_one($form, &$form_state)
{
if ($form_state['num_testimonial'] > 1) {
$form_state['num_testimonial']--;
}
$form_state['rebuild'] = TRUE;
}
function workshop_add_more_callback($form, $form_state)
{
return $form['names_fieldset'];
}
function workshop_add_more_add_one($form, &$form_state)
{
$form_state['num_names']++;
$form_state['rebuild'] = TRUE;
//$form_state['no_redirect'] = TRUE;
}
function workshop_add_more_remove_one($form, &$form_state)
{
if ($form_state['num_names'] > 1) {
$form_state['num_names']--;
}
$form_state['rebuild'] = TRUE;
}
function workshop_display_all()
{
$page_content = "";
$workshop_add_form = drupal_get_form("workshop_add_form");
$page_content = drupal_render($workshop_add_form);
return $page_content;
}
function get_first_dropdown_options_foss_name()
{
$query = db_select('foss_type');
$query->fields('foss_type', array(
'id'
));
$query->fields('foss_type', array(
'foss_name'
));
$result = $query->execute();
$options = array();
while ($foss_detail = $result->fetchObject()) {
$options[$foss_detail->foss_name] = $foss_detail->foss_name;
}
$options["Others"] = "Others";
return $options;
}
function get_country_dropdown_options()
{
$query = db_select('Country');
$query->fields('Country', array(
'Code'
));
$query->fields('Country', array(
'Name'
));
$result = $query->execute();
$options = array();
while ($country_detail = $result->fetchObject()) {
$options[$country_detail->Code] = $country_detail->Name;
}
return $options;
}
function workshop_add_form_submit($form, &$form_state)
{
$v = $form_state["values"];
//$start_datetime= explode(" ",$v["start_date"]);
//$end_datetime= explode(" ",$v["end_date"]);
if ($v["workshop_id"]) {
$query = db_update('workshop');
$query->fields(array(
'foss_name' => $v["foss_select"],
'w_name' => $v["name"],
'type' => $v["type"],
'startdate' => $v["start_date"],
'starttime' => "00:00",
'enddate' => $v["end_date"],
'endtime' => "00:00",
'venue' => $v["venue"],
'street' => $v["street"],
'country' => $v["country"],
'state' => $v["all_state"],
'city' => $v["city"],
'pincode' => $v["pincode"],
'event_link' => $v["event_link"],
'no_of_participant' => $v["no_of_participant"],
'body' => $v["body"]
));
$query->condition('w_id', $v["workshop_id"]);
$result = $query->execute();
/*For editing speakers */
$speakersupload = 0;
for ($i = 0; $i <= $v["speakers_count"]; $i++) {
$s_id = $v['speakers_fieldset'][$i]["s_id"];
if ($s_id != "") {
if ($v['speakers_fieldset'][$i]["speakername"] != "") {
$query = db_update('speakers');
$query->fields(array(
'name' => $v['speakers_fieldset'][$i]["speakername"],
'institute' => $v['speakers_fieldset'][$i]["institute"],
'place' => $v['speakers_fieldset'][$i]["place"]
));
$query->condition('s_id', $v['speakers_fieldset'][$i]["s_id"]);
$result = $query->execute();
if ($result != 0) {
$speakersupload++;
}
}
} else {
if ($v['speakers_fieldset'][$i]["speakername"] != "") {
$speakersquery = "
INSERT INTO speakers
(w_id,name,institute,place)
VALUES
(:w_id,:name,:institute,:place)
";
$speakersargs = array(
":w_id" => $v["workshop_id"],
":name" => $v['speakers_fieldset'][$i]["speakername"],
":institute" => $v['speakers_fieldset'][$i]["institute"],
":place" => $v['speakers_fieldset'][$i]["place"]
);
/* storing the row id in $result */
$speakersresult = db_query($speakersquery, $speakersargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($speakersresult != 0) {
$speakersupload++;
}
}
}
}
/*For editing video */
$videolink_upload = 0;
for ($i = 0; $i <= $v["videolink_count"]; $i++) {
$v_id = $v['videolink_fieldset'][$i]["v_id"];
if ($v_id != "") {
if ($v['videolink_fieldset'][$i]["videolink_title"] != "") {
$query = db_update('workshop_videolinks');
$query->fields(array(
'title' => $v['videolink_fieldset'][$i]["videolink_title"],
'link' => $v['videolink_fieldset'][$i]["videolink_link"]
));
$query->condition('v_id', $v['videolink_fieldset'][$i]["v_id"]);
$result = $query->execute();
if ($result != 0) {
$videolink_upload++;
}
}
} else {
if ($v['videolink_fieldset'][$i]["videolink_title"] != "") {
$videolinkquery = "
INSERT INTO workshop_videolinks
(w_id,title,link)
VALUES
(:w_id,:title,:link)
";
$videolinkargs = array(
":w_id" => $v["workshop_id"],
":title" => $v['videolink_fieldset'][$i]["videolink_title"],
":link" => $v['videolink_fieldset'][$i]["videolink_link"]
);
/* storing the row id in $result */
$videolinkresult = db_query($videolinkquery, $videolinkargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($videolinkresult != 0) {
$videolink_upload++;
}
}
}
}
/* For editing Testimonials */
$testimonialupload = 0;
for ($i = 0; $i <= $v["testimonial_count"]; $i++) {
$t_id = $v['testimonial_fieldset'][$i]["t_id"];
if ($t_id != "") {
if ($v['testimonial_fieldset'][$i]["t_name"] != "") {
$query = db_update('testimonials');
$query->fields(array(
'body' => $v['testimonial_fieldset'][$i]["t_body"],
'name' => $v['testimonial_fieldset'][$i]["t_name"],
'department' => $v['testimonial_fieldset'][$i]["t_department"],
'university' => $v['testimonial_fieldset'][$i]["t_university"]
));
$query->condition('t_id', $v['testimonial_fieldset'][$i]["t_id"]);
$result = $query->execute();
if ($result != 0) {
$testimonialupload++;
}
}
} else {
if ($v['testimonial_fieldset'][$i]["t_name"] != "") {
$testimonialquery = "
INSERT INTO testimonials
(w_id,body,name,department,university)
VALUES
(:w_id,:body,:name,:department,:university)
";
$testimonialargs = array(
":w_id" => $v["workshop_id"],
":body" => $v['testimonial_fieldset'][$i]["t_body"],
":name" => $v['testimonial_fieldset'][$i]["t_name"],
":department" => $v['testimonial_fieldset'][$i]["t_department"],
":university" => $v['testimonial_fieldset'][$i]["t_university"]
);
/* storing the row id in $result */
$testimonialresult = db_query($testimonialquery, $testimonialargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($testimonialresult != 0) {
$testimonialupload++;
}
}
}
}
/* For editing Event images */
/* For deleting existing images */
$deletecounter = 0;
$query_img = db_select('workshop_images');
$query_img->fields('workshop_images');
$query_img->condition('w_id', $v["workshop_id"]);
$result_img = $query_img->execute();
$root_path = events_images_path();
while ($row_img = $result_img->fetchObject()) {
if ($form_state['values']['imagecheck@' . $row_img->id] == 1) {
if (file_exists($root_path . $row_img->path)) {
unlink($root_path . $row_img->path);
$query2 = db_delete('workshop_images');
$query2->condition('id', $row_img->id);
$delete_img = $query2->execute();
if ($delete_img != 0) {
$deletecounter++;
}
} else {
drupal_set_message('Error Could not delete : ' . $filename . ', file does not exist', 'error');
}
}
}
/* For adding more images to existing event */
$items = array();
$root_path = events_images_path();
$eventfolder = str_replace(' ', '_', $v["name"]);
$dest_path = $eventfolder . '/';
if (!is_dir($root_path . $dest_path)) {
mkdir($root_path . $dest_path);
}
$imageupload = 0;
/* uploading files */
foreach ($_FILES['files']['name'] as $file_form_name => $file_name) {
if ($file_name) {
if (file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) {
drupal_set_message(t("Error uploading file. File !filename already exists.", array(
'!filename' => $_FILES['files']['name'][$file_form_name]
)), 'error');
return;
}
/* uploading file */
if (move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) {
$imagequery = "
INSERT INTO workshop_images
(w_id,name,path)
VALUES
(:w_id,:name, :path)
";
$imageargs = array(
":w_id" => $v["workshop_id"],
":name" => $_FILES['files']['name'][$file_form_name],
":path" => $dest_path . $_FILES['files']['name'][$file_form_name]
);
/* storing the row id in $result */
$imageresult = db_query($imagequery, $imageargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($imageresult != 0) {
$imageupload++;
}
drupal_set_message($file_name . ' uploaded successfully.', 'status');
} else {
drupal_set_message('Error uploading file : ' . $dest_path . $file_name, 'error');
}
}
}
if (!$result && $imageupload == 0 && $deletecounter == 0 && $videolink_upload == 0) {
drupal_set_message("Something went wrong, please try again.", "error");
} else {
drupal_set_message("Workshop updated successfully", "status");
if ($imageupload != 0) {
drupal_set_message("Event's Pictures are added successfully", "status");
}
if ($deletecounter != 0) {
drupal_set_message("Event's Pictures are deleted successfully", "status");
}
}
} else {
$query = "
INSERT INTO workshop
(foss_name, type, w_name, startdate, starttime,enddate, endtime, venue, street, country, state, city, pincode, event_link, no_of_participant,body)
VALUES (:foss_name, :type, :w_name, :startdate, :starttime,:enddate, :endtime, :venue, :street, :country, :state, :city, :pincode, :event_link,
:no_of_participant, :body)
";
$args = array(
":foss_name" => $v["foss_select"],
":type" => $v["type"],
":w_name" => $v["name"],
":startdate" => $v["start_date"],
":starttime" => "00:00",
":enddate" => $v["end_date"],
":endtime" => "00:00",
":venue" => $v["venue"],
":street" => $v["street"],
":country" => $v["country"],
":state" => $v["all_state"],
":city" => $v["city"],
":pincode" => $v["pincode"],
":event_link" => $v["event_link"],
":no_of_participant" => $v["no_of_participant"],
":body" => $v["body"]
);
/* storing the row id in $result */
$result = db_query($query, $args, array(
'return' => Database::RETURN_INSERT_ID
));
/* For adding speakers */
$speakerupload = 0;
for ($i = 0; $i <= $v["speakers_count"]; $i++) {
if ($v['speakers_fieldset'][$i]["speakername"] != "") {
$speakerquery = "
INSERT INTO speakers
(w_id,name,institute,place)
VALUES
(:w_id,:name,:institute,:place)
";
$speakerargs = array(
":w_id" => $result,
":name" => $v['speakers_fieldset'][$i]["speakername"],
":institute" => $v['speakers_fieldset'][$i]["institute"],
":place" => $v['speakers_fieldset'][$i]["place"]
);
/* storing the row id in $result */
$speakerresult = db_query($speakerquery, $speakerargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($speakerresult != 0) {
$speakerupload++;
}
}
}
/* For adding testimonial */
$testimonialupload = 0;
for ($i = 0; $i <= $v["testimonial_count"]; $i++) {
if ($v['testimonial_fieldset'][$i]["t_name"] != "") {
$testimonialquery = "
INSERT INTO testimonials
(w_id,body,name,department,university)
VALUES
(:w_id,:body,:name,:department,:university)
";
$testimonialargs = array(
":w_id" => $result,
":body" => $v['testimonial_fieldset'][$i]["t_body"],
":name" => $v['testimonial_fieldset'][$i]["t_name"],
":department" => $v['testimonial_fieldset'][$i]["t_department"],
":university" => $v['testimonial_fieldset'][$i]["t_university"]
);
/* storing the row id in $result */
$testimonialresult = db_query($testimonialquery, $testimonialargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($testimonialresult != 0) {
$testimonialupload++;
}
}
}
/* Adding video links */
$videolinkupload = 0;
for ($i = 0; $i <= $v["videolink_count"]; $i++) {
if ($v['videolink_fieldset'][$i]["videolink_title"] != "") {
$videolinkquery = "
INSERT INTO workshop_videolinks
(w_id,title,link)
VALUES
(:w_id,:title,:link)
";
$videolinkargs = array(
":w_id" => $result,
":title" => $v['videolink_fieldset'][$i]["videolink_title"],
":link" => $v['videolink_fieldset'][$i]["videolink_link"]
);
/* storing the row id in $result */
$videolinkresult = db_query($videolinkquery, $videolinkargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($videolinkresult != 0) {
$videolinkupload++;
}
}
}
/* For adding images of events*/
$items = array();
$root_path = events_images_path();
$eventfolder = str_replace(' ', '_', $v["name"]);
$dest_path = $eventfolder . '/';
if (!is_dir($root_path . $dest_path)) {
mkdir($root_path . $dest_path);
}
/* uploading files */
foreach ($_FILES['files']['name'] as $file_form_name => $file_name) {
if ($file_name) {
if (file_exists($root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) {
drupal_set_message(t("Error uploading file. File !filename already exists.", array(
'!filename' => $_FILES['files']['name'][$file_form_name]
)), 'error');
return;
}
$imageupload = 0;
/* uploading file */
if (move_uploaded_file($_FILES['files']['tmp_name'][$file_form_name], $root_path . $dest_path . $_FILES['files']['name'][$file_form_name])) {
$imagequery = "
INSERT INTO workshop_images
(w_id,name,path)
VALUES
(:w_id,:name, :path)
";
$imageargs = array(
":w_id" => $result,
":name" => $_FILES['files']['name'][$file_form_name],
":path" => $dest_path . $_FILES['files']['name'][$file_form_name]
);
/* storing the row id in $result */
$imageresult = db_query($imagequery, $imageargs, array(
'return' => Database::RETURN_INSERT_ID
));
if ($imageresult != 0) {
$imageupload++;
}
drupal_set_message($file_name . ' uploaded successfully.', 'status');
} else {
drupal_set_message('Error uploading file : ' . $dest_path . $file_name, 'error');
}
}
}
if (!$result) {
drupal_set_message("Something went wrong, please try again.", "error");
} else {
drupal_set_message("Workshop added successfully", "status");
if ($imageupload != 0) {
drupal_set_message("Event's Pictures are added successfully", "status");
}
if ($testimonialupload != 0) {
drupal_set_message("Testimonials added successfully", "status");
}
if ($speakerupload != 0) {
drupal_set_message("Speaker's Detail are added successfully", "status");
}
if ($videolinkupload != 0) {
drupal_set_message("Video links are added successfully", "status");
}
}
}
}
function ajax_country_dependent_dropdown_callback($form, $form_state)
{
$country = $form_state['values']['country'];
$form['state']['#options'] = ajax_getstate_callback($country);
$commands[] = ajax_command_replace("#dropdown-state-replace", drupal_render($form['state']));
return array(
'#type' => 'ajax',
'#commands' => $commands
);
}
function ajax_state_dependent_dropdown_callback($form, $form_state)
{
$state = $form_state['values']['state'];
$form['city']['#options'] = ajax_getcity_callback($state);
$commands[] = ajax_command_replace("#dropdown-city-replace", drupal_render($form['city']));
return array(
'#type' => 'ajax',
'#commands' => $commands
);
}
function ajax_getstate_callback($country = '')
{
$query = "
SELECT Distinct (District) as state FROM City
WHERE CountryCode =:country order by District
";
$args = array(
":country" => $country
);
$result = db_query($query, $args);
$options = array();
while ($row = $result->fetchObject()) {
$options[$row->state] = $row->state;
}
return $options;
}
function ajax_getcity_callback($state = '')
{
$query = "
SELECT Name as cityname FROM City
WHERE District =:state order by Name
";
$args = array(
":state" => $state
);
$result = db_query($query, $args);
$options = array();
while ($row = $result->fetchObject()) {
$options[$row->cityname] = $row->cityname;
}
return $options;
}
function workshop_view_image_all($id = 0)
{
$page_content = "";
$query = db_select('workshop_images');
$query->fields('workshop_images');
$query->condition('id', $id);
$result = $query->execute();
$row1 = $result->fetchObject();
$query = db_select('workshop');
$query->fields('workshop');
$query->condition('w_id', $row1->w_id);
$result = $query->execute();
$row = $result->fetchObject();
$previous = ($row1->id) - 1;
$page_content .= "" . $row1->name;
$page_content .= " w_name) . "/" . $row1->name . " /> ";
$page_content .= "
";
$page_content .= "PREVIOUS ";
return $page_content;
}
function workshop_view_selected_testimonial($id = 0)
{
$page_content = "";
$query = db_select('testimonials');
$query->fields('testimonials');
$query->condition('t_id', $id);
$result = $query->execute();
$row = $result->fetchObject();
$page_content .= "