Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 5
CRAP
0.00% covered (danger)
0.00%
0 / 213
AdmissionDetailsAcadmic
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 5
2256.00
0.00% covered (danger)
0.00%
0 / 213
 __construct
0.00% covered (danger)
0.00%
0 / 1
2.00
0.00% covered (danger)
0.00%
0 / 2
 __clone
0.00% covered (danger)
0.00%
0 / 1
2.00
0.00% covered (danger)
0.00%
0 / 1
 getInstance
0.00% covered (danger)
0.00%
0 / 1
6.00
0.00% covered (danger)
0.00%
0 / 5
 getCollegeTransferDetails
0.00% covered (danger)
0.00%
0 / 1
1406.00
0.00% covered (danger)
0.00%
0 / 174
 getUgMarks
0.00% covered (danger)
0.00%
0 / 1
42.00
0.00% covered (danger)
0.00%
0 / 31
<?php
namespace com\linways\core\ams\professional\service\admission;
use com\linways\core\ams\professional\service\BaseService;
use com\linways\core\ams\professional\service\DepartmentService;
use com\linways\core\ams\professional\service\SemesterService;
use com\linways\core\ams\professional\service\AdmissionService;
class AdmissionDetailsAcadmic extends BaseService
{
    // /Condition 1 - Presence of a static member variable
    private static $_instance = null;
    
    // /Condition 2 - Locked down the constructor
    private function __construct()
    {
    }
    
    // Prevent any oustide instantiation of this class
    
    // /Condition 3 - Prevent any object or instance of that class to be cloned
    private function __clone()
    {}
    
    // Prevent any copy of this object
    
    // /Condition 4 - Have a single globally accessible static method
    public static function getInstance()
    {
        if (! is_object(self::$_instance)) // or if( is_null(self::$_instance) ) or if( self::$_instance == null )
            self::$_instance = new self();
            
            return self::$_instance;
    }
    
    public function getCollegeTransferDetails($mapperList, $courseTypeId, $studentId = "", $action = "", $transferDetails = NULL, $head = FALSE)
    {
        $response="";
        if ($head) {
            $response .= "<h4>Academic Details </h4>";
        }
        if ($action == 'display_form') {
            if(!empty($mapperList) && $mapperList !=null)
            {
                $response .= "
                        <div class='row'>
                            <div class='col-md-12'><h4>{{title}}</h4>
                                <div class='row mtl'>
                                    <div class='col-md-2'></div>
                                    <div class='col-md-8'>
                                        <table class='table table-striped table-hover'>";
                foreach ($mapperList as $mapper)
                {
                    if($mapper['field'] !='title')
                    {
                    $response .="
                                 <tr>
                                    <td>".$mapper['caption']."</td>
                                    <td>
                                        <div class='row'>
                                            <div class='col-xs-9'>";
                    }
                    switch($mapper['field'])
                    {
                        case "collegeName" :
                            $response .= $transferDetails->currentCollegeName;
                            break;
                        case "branch" :
                            
                            $branchName = empty($transferDetails->currentBranchId) ? null : DepartmentService::getInstance()->getDepartmentById($transferDetails->currentBranchId)->name;
                            $response .=$branchName;
                            break;
                        case "sem" :
                            $semName = empty($transferDetails->currentSemId) ? null : SemesterService::getInstance()->getSemestersName($transferDetails->currentSemId);
                            $response .=$semName;
                            break;
                        case "mark" :
                            $semName = empty($transferDetails->admitSemId) ? null : SemesterService::getInstance()->getSemestersName($transferDetails->admitSemId);
                            $response .=$semName;
                            break;
                        case "studentId":
                            $response .=$transferDetails->ktuStudentId;
                            break;
                        case "marklist":
                            $response .=$this->getUgMarks($studentId);
                        case "title":
                            $response = str_replace("{{title}}", $mapper['caption'], $response);
                            break;
                        case "arrears":
                            $response .= $transferDetails->arrears;
                            break;
                    }
                    if($mapper['field'] !='title')
                    {
                    $response .="</div>
                                </div>
                            </td>
                        </tr>";
                    }
                }
                $response .="</table></div>
                                        </div>
                                    </div>
                                </div>";
            }
        }
        else
        {
            if(!empty($mapperList) && $mapperList !=null)
            {
                $response .= "<h4>{{title}}</h4>";
                foreach ($mapperList as $mapper)
                {
                    $isRequired = $mapper['isRequired']===false?"":"<span style='color:#F00;font-size:16px;'>*</span>";
                    if($mapper['field'] !='title')
                    {
                    $response .="
                                 <div class='form-group'>
                                    <label class='col-sm-4 control-label'>
                                        ".$mapper['caption']."$isRequired
                                    </label>
                                    <div class='col-sm-8 controls'>
                                        <div class='row'>
                                            <div class='col-xs-12'>";
                    }
                    switch($mapper['field'])
                    {
                        case "collegeName" :
                            $response .="
                                                <div class='input-group'>
                                                <input type='text' id='collegeName' name='collegeName' placeholder='".$mapper['placeholder']."' value='$transferDetails->currentCollegeName' class='form-control'/>
                                                </div>
                                                <div id='collegeName_msg'  class='form_error'></div>";
                            break;
                        case "studentId" :
                            $response .="
                                                <div class='input-group'>
                                                <input type='text' id='ktuStudentId' name='ktuStudentId' placeholder='".$mapper['placeholder']."' value='$transferDetails->ktuStudentId' class='form-control'/>
                                                </div>
                                                <div id='ktuStudentId_msg'  class='form_error'></div>";
                            break;
                        case "branch" :
                            $select[$transferDetails->currentBranchId]='selected';
                            $response .="<div class='input-group'>";
                            $deptList = DepartmentService::getInstance()->getDepartmentByCourseTypeID($courseTypeId);
                            $response .="<select class='form-control' id='currentBranchId' name='currentBranchId'>
                                            <option value=''>select</option>";
                            foreach ($deptList as $dept)
                            {
                                $response .="<option value='$dept->deptID".$select[$dept->deptID].">$dept->departmentDesc</option>";
                            }
                            $response .="</select>
                                        </div>
                                        <div id='currentBranchId_msg'  class='form_error'></div>";
                            break;
                        case "sem":
                            $select[$transferDetails->currentSemId]='selected';
                            $response .="<div class='input-group'>";
                            $semList = SemesterService::getInstance()->getSemesters();
                            $response .="<select class='form-control ' id='currentSemId' name='currentSemId'>
                                            <option value=''>select</option>";
                            foreach ($semList as $sem)
                            {
                                $response .="<option value='$sem->id".$select[$sem->id].">$sem->name</option>";
                            }
                            $response .="</select>
                                        </div>
                                        <div id='currentSemId_msg'  class='form_error'></div>";
                            break;
                        case "mark":
                            $select[$transferDetails->admitSemId]='selected';
                            $response .="<div class='input-group'>";
                            $semList = SemesterService::getInstance()->getSemesters();
                            $response .="<select class='form-control' id='admitSemId' name='admitSemId'>
                                            <option value=''>select</option>";
                            $semName = !empty($mapper['semName'])?$mapper['semName']:array('S3','S5','S7');
                            foreach ($semList as $sem)
                            {
                                if(in_array($sem->name, $semName))
                                {
                                    $response .="<option value='$sem->id".$select[$sem->id].">$sem->name</option>";
                                }
                            }
                            $response .="</select>
                                        </div>
                                        <div id='admitSemId_msg'  class='form_error'></div>";
                            break;
                        case "marklist":
                            $response .="<div id='markDisplay'></div>";
                            break;
                        case "arrears":
                            $response .="
                                        <div class='input-group'>
                                            <input type='text' id='arrears' name='arrears' placeholder='".$mapper['placeholder']."' value='$transferDetails->arrears' class='form-control'/>
                                        </div>
                                        <div id='arrears_msg'  class='form_error'></div>";
                            break;
                    }
                    if($mapper['field'] !='title')
                    {
                    $response .="</div>
                                        </div>
                                    </div>
                                </div>";
                    }
                }
            }
        }
        $response = str_replace("{{title}}", '', $response);
        return $response;
    }
    
    public function getUgMarks($studentId)
    {
        $markList = AdmissionService::getInstance()->getAdmissionUgSemMarksByStudentId($studentId);
        $response="";
        if(!empty($markList))
        {
            $semList = array_map(function($obj) { return $obj->semName; },$markList);
            $response .="<table class='table table-bordered table-striped print-table-border' width='100%'>";
            $response .="<tr>
                            <th></th>";
            foreach ($semList as $sem)
            {
                $response .="<th>".$sem."</th>";
            }
            $response .="</tr>";
            $response .="<tr>
                            <td>Have you passed in all subjects (YES/NO)</td>";  
            foreach ($markList as $mark)
            {
                $response .="<td>".($mark->isFullPass?'YES':'NO')."</td>";
            }
            $response .="</tr>";
            $response .="<tr>
                            <td>SGPA Obtained</td>";
            foreach ($markList as $mark)
            {
                $response .="<td>".round($mark->sgpa,3)."</td>";
            }
            $response .="</tr>";
            $response .="</table>";
            
        }
        return $response;
    }
}