public function ffinitialize($appInitId, $tableid, $enable_to, $check)
 {
     if ($tableid) {
         $auth = Zend_Auth::getInstance();
         if ($auth->hasIdentity()) {
             $loginUserId = $auth->getStorage()->read()->id;
             $loginuserRole = $auth->getStorage()->read()->emprole;
             $loginuserGroup = $auth->getStorage()->read()->group_id;
             $loginUserEmpId = $auth->getStorage()->read()->employeeId;
             $loginUserfullname = $auth->getStorage()->read()->userfullname;
         }
         $ffEmpRatingsModel = new Default_Model_Feedforwardemployeeratings();
         $feedforwardInitModel = new Default_Model_Feedforwardinit();
         $appraisalEmpsData = $feedforwardInitModel->getEmpsFromAppEmpRat($appInitId);
         $appEmpIDs = array();
         if (sizeof($appraisalEmpsData) > 0) {
             foreach ($appraisalEmpsData as $appE) {
                 $appEmpIDs[] = $appE['employee_id'];
                 $where = '';
                 $data = array('ff_initialization_id' => $tableid, 'question_ids' => $check != '' ? implode(',', $check) : NULL, 'manager_id' => $appE['line_manager_1'], 'employee_id' => $appE['employee_id'], 'ff_status' => 1, 'createdby' => $loginUserId, 'createdby_role' => $loginuserRole, 'createdby_group' => $loginuserGroup, 'createddate' => gmdate("Y-m-d H:i:s"));
                 $ffEmpRatingsModel->SaveorUpdateFFEmpRatingsData($data, $where);
             }
         }
         if (sizeof($appEmpIDs) > 0 && $enable_to == 1) {
             $appEmpIDsCsv = implode(',', $appEmpIDs);
             $allEmpsData = $feedforwardInitModel->getEmpsFromSummary($appEmpIDsCsv);
             if (sizeof($allEmpsData) > 0) {
                 foreach ($allEmpsData as $allE) {
                     $where1 = '';
                     $data1 = array('ff_initialization_id' => $tableid, 'question_ids' => $check != '' ? implode(',', $check) : NULL, 'manager_id' => $allE['reporting_manager'], 'employee_id' => $allE['user_id'], 'ff_status' => 1, 'createdby' => $loginUserId, 'createdby_role' => $loginuserRole, 'createdby_group' => $loginuserGroup, 'createddate' => gmdate("Y-m-d H:i:s"));
                     $ffEmpRatingsModel->SaveorUpdateFFEmpRatingsData($data1, $where1);
                 }
             }
         }
         $actionflag = 1;
         $tableid = '';
         $menuID = INITIALIZE_FEEDFORWARD;
         $result = sapp_Global::logManager($menuID, $actionflag, $loginUserId, $tableid);
         /** Start
          * Sending Mails to Super Admin,Management,HR
          */
         $appraisalratingsmodel = new Default_Model_Appraisalratings();
         $appraisalconfigmodel = new Default_Model_Appraisalconfig();
         //to get initialization details using appraisal Id for Business Unit,Department,To Year
         $appraisal_details = $appraisalratingsmodel->getappdata($appInitId);
         if (!empty($appraisal_details)) {
             $businessUnit = $appraisal_details['businessunit_id'];
             $department = $appraisal_details['deptid'];
             $bunit = $appraisal_details['unitname'];
             $dept = $appraisal_details['deptname'];
             $to_year = $appraisal_details['to_year'];
             $employeeDetailsArr = $appraisalconfigmodel->getUserDetailsByID($businessUnit, $department);
             if ($enable_to == 1) {
                 $empforFF = $feedforwardInitModel->getEmpIdforFF($businessUnit, $department);
             } else {
                 $empforFF = $feedforwardInitModel->getAppemployeeIDs($appInitId);
             }
             $ffEmpArr = array();
             $ffEmpList = '';
             if (!empty($empforFF)) {
                 foreach ($empforFF as $emp) {
                     array_push($ffEmpArr, $emp['employeeId']);
                 }
                 $ffEmpList = implode(',', $ffEmpArr);
             }
             $ffEmpEmailArr = array();
             $ffemployeeDetailsArr = $feedforwardInitModel->getUserDetailsByIds($ffEmpList);
             if (!empty($ffemployeeDetailsArr)) {
                 foreach ($ffemployeeDetailsArr as $empFF) {
                     array_push($ffEmpEmailArr, $empFF['emailaddress']);
                 }
             }
             $dept_str = $dept == '' ? " " : "and department <b>{$dept}</b> ";
             $emp_id_str = $loginuserRole == SUPERADMINROLE ? " " : "({$loginUserEmpId})";
             //Preparing Employee array for Bcc
             $empArr = array();
             $total_emp_arr = array();
             if (!empty($employeeDetailsArr)) {
                 $empArrList = '';
                 foreach ($employeeDetailsArr as $emp) {
                     array_push($empArr, $emp['emailaddress']);
                 }
             }
             $total_emp_arr = array_merge($empArr, $ffEmpEmailArr);
             //Sending mail to Super admin,HR,Management
             $options['subject'] = APPLICATION_NAME . ': Feedforward Initialization';
             $options['header'] = 'Feedforward Initialization : ' . $to_year;
             $options['toEmail'] = SUPERADMIN_EMAIL;
             $options['toName'] = 'Super Admin';
             $options['bcc'] = $total_emp_arr;
             $options['message'] = "<div style='padding: 0; text-align: left; font-size:14px; font-family:Arial, Helvetica, sans-serif;'>\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t<span style='color:#3b3b3b;'>Hi,</span><br />\n\t\t\t\t\t\t\t\t\t\t<div style='padding:20px 0 0 0;color:#3b3b3b;'>Feedforward process have been initialized for the year <b>{$to_year}</b> for business unit <b>{$bunit}</b>  {$dept_str} by " . $loginUserfullname . $emp_id_str . ". </div>\n\t\t\t\t\t\t\t\t\t\t<div style='padding:20px 0 10px 0;'>Please <a href=" . BASE_URL . " target='_blank' style='color:#b3512f;'>click here</a> to login  to your <b>" . APPLICATION_NAME . "</b> account and check the details.</div>\n\t\t\t\t\t\t\t\t\t\t</div> ";
             //'Dear Super Admin, performance appraisal Initialized '.$mail_str;
             $mail_id = sapp_Global::_sendEmail($options);
         }
     }
 }