<?php
/**
 * @iscfip_reports.module
 * This module provide reports for India Smart Cities Fellowship / Internship Programme
 */
 
function iscfip_reports_permission() {
    return array(
        'view_iscfip_reports' => array(
        'title' => t('View ISCFIP Reports'),
        'description' => t('Access to view ISCFIP Reports.')
        )
    );
 }
 
 function iscfip_reports_menu(){
    $items=array();
    $items['progress-report/download'] = array(
        'title' => t('Download'),
        'page callback' => 'iscfip_reports_download',
        'access arguments' => array('Add SCM Reports'),
        'type' => MENU_CALLBACK
    );
    return($items);
}


function iscfip_reports_block_info(){
    $blocks['iscfip_report_left_menu']=array('info'=>t('ISCFIP Report Left Menu'),'cache'=>DRUPAL_CACHE_PER_ROLE);
    $blocks['iscfip_report_fellowship']=array('info'=>t('ISCFIP Report Fellowship'),'cache'=>DRUPAL_CACHE_PER_ROLE);
    $blocks['iscfip_report_internship']=array('info'=>t('ISCFIP Report Internship'),'cache'=>DRUPAL_CACHE_PER_ROLE);
    return($blocks);
 }
 
function iscfip_reports_block_view($delta=''){
    $block=array();
    if(user_access('view_iscfip_reports')){
        switch($delta){
            case 'iscfip_report_left_menu':
            $block['subject']=t('Choose Report');
            $block['content']=iscfip_reports_left_menu();
            break;
            case 'iscfip_report_fellowship':
            $block['subject']=t('Fellowship Report');
            $block['content']=iscfip_reports_fellowship();
            break;
            case 'iscfip_report_internship':
            $block['subject']=t('Internship Report');
            $block['content']=iscfip_reports_internship();
            break;
        }
    }
    return($block);
 }
 
 function iscfip_reports_left_menu(){
    $html='<a href="/iscfip-report/fellowship" class="btn btn-info clickuser">Fellowship Report</a><a href="/iscfip-report/internship" class="btn btn-info clickuser">Internship Report</a>';
    return($html);
 }
 
 function iscfip_reports_fellowship(){
    $html='<div class="dcsv"><a href="#" id="csvdf" class="btn btn-primary">Download CSV</a></div>';
    $html.='<div class="iscfip_table">';
    $html.='<div class="panel-group" id="accordion">';
        $res=iscfip_reports_fellowship_data();
        $i=0;
        foreach($res as $row){
            $i++;
            $arr_country=array('1'=>'India');
            $arr_hdegree=array('option1'=>'Graduate Degree','option2'=>'Post-Graduate Degree','option3'=>'Other');
            $arr_mtype=array('option1'=>'Percentage','option2'=>'CGPA');
            if($row->other_degree != "")
                $degree=$row->other_degree;
            else
                $degree=$arr_hdegree[$row->highest_degree];
            
        $html.='
        <div class="panel panel-default">
            <div class="panel-heading">
                <h2>
                    <a data-toggle="collapse" data-parent="#accordion" href="#collapse'.$i.'">'.$row->name.'</a>
                </h2>
            </div>
            <div id="collapse'.$i.'" class="panel-collapse collapse">
                <div class="panel-body">
                    <div class="container">
                         <div class="row">
                    <div class="col-sm-5">
                        <ul>
                            <li>DOB: '.$row->dob.'</li>
                            <li>Address: '.$row->add_address.'</li>
                            <li>City: '.$row->add_city.'</li>
                            <li>State: '.$row->add_state.'</li>
                            <li>Country: '.$arr_country[$row->add_country].'</li>
                            <li>Email: '.$row->email.'</li>
                            <li>Contact: '.$row->contact.'</li>
                            <li>Highest Degree: '.$degree.'</li>
                            <li>Degree Title: '.$row->degree_title.'</li>
                            <li>University: '.$row->university.'</li>
                            <li>Specialisation: '.$row->specialization.'</li>
                            <li>Mark Type: '.$row->marks_type.'</li>
                            <li>Marks: '.$row->marks.'</li>
                            <li>Resume: <a href="/iscfip/'.$row->resume.'" target="_blank">Download</a></li>
                            <li>Total Exp Years: '.$row->total_exp_years.'</li>
                            <li>Preferred Sector: '.$row->pref_sectors.'</li>
                            <li>Concept Paper: <a href="/iscfip/'.$row->concept_paper.'" target="_blank">Download</a></li>
                            <li>Analytical Skills: '.$row->skill_analytics.'</li>
                            <li>Research Skills: '.$row->skill_research.'</li>
                            <li>Documentation Skills: '.$row->skill_documentation.'</li>
                        </ul>
                            </div>
                             
                             <div class="col-sm-7">
                                 About Work:
                                 <div class="text-area1">
                                    <textarea class="form-control" rows="5">'.$row->about_work_exp.'
                                    </textarea>
                                 </div>
                                 Statement of Purpose:
                                 <div class="text-area1">
                                    <textarea class="form-control" rows="5">'.$row->stat_purpose.'
                                    </textarea>
                                 </div>
                                 <div class="container-fluid">
                                 <div class="row">
                                      <h4>References:</h4>
                                   <div class="col-sm-6">
                                          <ul>
                                              <li>Name: '.$row->ref_per1_name.'</li>
                                              <li>Designation and Institute: '.$row->ref_per1_des_ins.'</li>
                                              <li>Email: '.$row->ref_per1_email.'</li>
                                              <li>Contact: '.$row->ref_per1_contact.'</li>
                                          </ul>
                                             </div>
                                           <div class="col-sm-6">
                                               <ul>
                                                  <li>Name: '.$row->ref_per2_name.'</li>
                                                  <li>Designation and Institute: '.$row->ref_per2_des_ins.'</li>
                                                  <li>Email: '.$row->ref_per2_email.'</li>
                                                  <li>Contact: </li>
                                              </ul>
                                            </div>
                                     </div>    
                                 </div>
                             </div>
                    </div> 
                    </div></div>
                </div>
            </div>';
            }
            $html.='</div></div>';
    return($html);
 }
 
 function iscfip_reports_internship(){
    $html='<div class="dcsv"><a href="#" id="csvdi" class="btn btn-primary">Download CSV</a></div>';
    $html.='<div class="iscfip_table"><div class="panel-group" id="accordion">';
        $res=iscfip_reports_internship_data();
        $i=0;
        foreach($res as $row){
            $i++;
            $arr_country=array('1'=>'India');
            $arr_hdegree=array('option1'=>'Graduate Degree','option2'=>'Post-Graduate Degree','option3'=>'Other');
            if($row->other_degree != "")
                $degree=$row->other_degree;
            else
                $degree=$arr_hdegree[$row->highest_degree];
            
        $html.='
        <div class="panel panel-default">
            <div class="panel-heading">
                <h2>
                    <a data-toggle="collapse" data-parent="#accordion" href="#collapse'.$i.'">'.$row->name.'</a>
                </h2>
            </div>
            <div id="collapse'.$i.'" class="panel-collapse collapse">
                <div class="panel-body">
                    <div class="container">
                         <div class="row">
                    <div class="col-sm-5">
                        <ul>
                            <li>DOB: '.$row->dob.'</li>
                            <li>Address: '.$row->add_address.'</li>
                            <li>City: '.$row->add_city.'</li>
                            <li>State: '.$row->add_state.'</li>
                            <li>Country: '.$arr_country[$row->add_country].'</li>
                            <li>Email: '.$row->email.'</li>
                            <li>Contact: '.$row->contact.'</li>
                            <li>Highest Degree: '.$degree.'</li>
                            <li>Degree Title: '.$row->degree_title.'</li>
                            <li>University: '.$row->university.'</li>
                            <li>Specialisation: '.$row->specialization.'</li>
                            <li>Resume: <a href="/iscfip/'.$row->resume.'" target="_blank">Download</a></li>
                            <li>Total Exp Years: '.$row->total_exp_years.'</li>
                            <li>Preferred Sectors: '.$row->pref_sectors.'</li>
                            <li>NoC: <a href="/iscfip/'.$row->no_obj_cert.'" target="_blank">Download</a></li>
                            <li>Analytical Skills: '.$row->skill_analytics.'</li>
                            <li>Research Skills: '.$row->skill_research.'</li>
                            <li>Documentation Skills: '.$row->skill_documentation.'</li>
                        </ul>
                            </div>
                             
                             <div class="col-sm-7">
                                 Statement of Purpose:
                                 <div class="text-area1">
                                    <textarea class="form-control" rows="5">'.$row->stat_purpose.'
                                    </textarea>
                                 </div>
                                 <div class="container-fluid">
                                 <div class="row">
                                      <h4>References:</h4>
                                   <div class="col-sm-6">
                                          <ul>
                                              <li>Name: '.$row->ref_per1_name.'</li>
                                              <li>Designation and Institute: '.$row->ref_per1_des_ins.'</li>
                                              <li>Email: '.$row->ref_per1_email.'</li>
                                              <li>Contact: '.$row->ref_per1_contact.'</li>
                                          </ul>
                                             </div>
                                           <div class="col-sm-6">
                                               <ul>
                                                  <li>Name: '.$row->ref_per2_name.'</li>
                                                  <li>Designation and Institute: '.$row->ref_per2_des_ins.'</li>
                                                  <li>Email: '.$row->ref_per2_email.'</li>
                                                  <li>Contact: </li>
                                              </ul>
                                            </div>
                                     </div>    
                                 </div>
                             </div>
                    </div> 
                    </div></div>
                </div>
            </div>';
            }
            $html.='</div></div>';
    return($html);
 }
 
 function iscfip_reports_fellowship_data(){
    $q="select * from {fellowship} order by id ASC";
    $res=db_query($q);
    return($res);
 }
 
 function iscfip_reports_internship_data(){
    $q="select * from {internship} order by id ASC";
    $res=db_query($q);
    return($res);
 }
 
 function iscfip_reports_download(){
    $type=$_POST['type'];
    $csv_data='';
    $arr_hdegree=array('option1'=>'Graduate Degree','option2'=>'Post-Graduate Degree','option3'=>'Other');
    $arr_mtype=array('option1'=>'Percentage','option2'=>'CGPA');
    if($type=="fellowship"){
        $file_name="fellowship_data_".date('d-m-Y_H-i-s').".csv";
        $csv_data="Sr. No,Name,Address,City,State,Country,Email,Contact,DOB,Highest Degree,Degree Title,Specialisation,University,Marks Type,Marks,Resume,Total Experience Years,About Work Experience,Preferred Sectors,Concept Paper,Statement of Purpose,Ref1 Name,Ref1 Designation,Ref1 Email,Ref1 Contact,Ref2 Name,Ref2 Designation,Ref2 Email,Ref2 Contact,Analytical Skills,Research Skills,Documentation Skills\n";
        $q="select * from {fellowship} where is_active=1";
        $res=db_query($q);
        $c=1;
        foreach($res as $row){
            if($row->other_degree != "")
                $degree=$row->other_degree;
            else
                $degree=$arr_hdegree[$row->highest_degree];
            $csv_data.=$c.",".iscfip_reports_filter_csv($row->name).",".iscfip_reports_filter_csv($row->add_address).",".iscfip_reports_filter_csv($row->add_city).",".iscfip_reports_filter_csv($row->add_state).",".iscfip_reports_filter_csv($row->add_country).",".iscfip_reports_filter_csv($row->email).",".iscfip_reports_filter_csv($row->contact).",".iscfip_reports_filter_csv($row->dob).",".iscfip_reports_filter_csv($degree).",".iscfip_reports_filter_csv($row->degree_title).",".iscfip_reports_filter_csv($row->specialization).",".iscfip_reports_filter_csv($row->university).",".iscfip_reports_filter_csv($arr_mtype[$row->marks_type]).",".iscfip_reports_filter_csv($row->marks).",https://smartnet.niua.org/iscfip/".$row->resume.",".iscfip_reports_filter_csv($row->total_exp_years).",".iscfip_reports_filter_csv($row->about_work_exp).",".iscfip_reports_filter_csv($row->pref_sectors).",https://smartnet.niua.org/iscfip/".$row->concept_paper.",".iscfip_reports_filter_csv($row->stat_purpose).",".iscfip_reports_filter_csv($row->ref_per1_name).",".iscfip_reports_filter_csv($row->ref_per1_des_ins).",".iscfip_reports_filter_csv($row->ref_per1_email).",".iscfip_reports_filter_csv($row->ref_per1_contact).",".iscfip_reports_filter_csv($row->ref_per2_name).",".iscfip_reports_filter_csv($row->ref_per2_des_ins).",".iscfip_reports_filter_csv($row->ref_per2_email).",".iscfip_reports_filter_csv($row->ref_per2_contact).",".iscfip_reports_filter_csv($row->skill_analytics).",".iscfip_reports_filter_csv($row->skill_research).",".iscfip_reports_filter_csv($row->skill_documentation)."\n";
            $c++;
        }
        file_put_contents(DRUPAL_ROOT."/iscfip/downloads/".$file_name,$csv_data);
        echo $file_name;
        exit;
    }
    
    if($type=="internship"){
        $file_name="internship_data_".date('d-m-Y_H-i-s').".csv";
        $csv_data="Sr. No,Name,Address,City,State,Country,Email,Contact,DOB,Highest Degree,Degree Title,Specialisation,University,Resume,Preferred Sectors,Statement of Purpose,NOC,Ref1 Name,Ref1 Designation,Ref1 Email,Ref1 Contact,Ref2 Name,Ref2 Designation,Ref2 Email,Ref2 Contact\n";
        $q="select * from {internship} where is_active=1";
        $res=db_query($q);
        $c=1;
        foreach($res as $row){
            if($row->other_degree != "")
                $degree=$row->other_degree;
            else
                $degree=$arr_hdegree[$row->highest_degree];
            $csv_data.=$c.",".iscfip_reports_filter_csv($row->name).",".iscfip_reports_filter_csv($row->add_address).",".iscfip_reports_filter_csv($row->add_city).",".iscfip_reports_filter_csv($row->add_state).",".iscfip_reports_filter_csv($row->add_country).",".iscfip_reports_filter_csv($row->email).",".iscfip_reports_filter_csv($row->contact).",".iscfip_reports_filter_csv($row->dob).",".iscfip_reports_filter_csv($degree).",".iscfip_reports_filter_csv($row->degree_title).",".iscfip_reports_filter_csv($row->specialization).",".iscfip_reports_filter_csv($row->university).",https://smartnet.niua.org/iscfip/".$row->resume.",".iscfip_reports_filter_csv($row->pref_sectors).",".iscfip_reports_filter_csv($row->stat_purpose).",https://smartnet.niua.org/iscfip/".$row->no_obj_cert.",".iscfip_reports_filter_csv($row->ref_per1_name).",".iscfip_reports_filter_csv($row->ref_per1_des_ins).",".iscfip_reports_filter_csv($row->ref_per1_email).",".iscfip_reports_filter_csv($row->ref_per1_contact).",".iscfip_reports_filter_csv($row->ref_per2_name).",".iscfip_reports_filter_csv($row->ref_per2_des_ins).",".iscfip_reports_filter_csv($row->ref_per2_email).",".iscfip_reports_filter_csv($row->ref_per2_contact)."\n";
            $c++;
        }
        file_put_contents(DRUPAL_ROOT."/iscfip/downloads/".$file_name,$csv_data);
        echo $file_name;
        exit;
    }
 }
 
 function iscfip_reports_filter_csv($str){
    $str=preg_replace('!\s+!',' ',$str);
    $str=str_replace(",",";",$str);
    $str=str_replace('"','',$str);
    return(strip_tags($str));
 }