public function addAction()
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $loginUserId = $auth->getStorage()->read()->id;
         $loginuserRole = $auth->getStorage()->read()->emprole;
         $loginuserGroup = $auth->getStorage()->read()->group_id;
         $businessUnit = $auth->getStorage()->read()->businessunit_id;
         $department = $auth->getStorage()->read()->department_id;
     }
     $callval = $this->getRequest()->getParam('call');
     $errorMsg = '';
     $msgarray = array();
     $buOptions = '';
     $deptOptions = '';
     $performanceappflag = '';
     $appraisalratingsform = new Default_Form_Appraisalratings();
     $appInitModel = new Default_Model_Appraisalinit();
     if ($loginuserRole != SUPERADMINROLE && $loginuserGroup != MANAGEMENT_GROUP) {
         $appImpleData = sapp_PerformanceHelper::check_per_implmentation($businessUnit, $department);
         if (count($appImpleData) > 0) {
             $this->view->imple_data = $appImpleData;
             $checkActiveApp = $appInitModel->checkAppraisalExists($businessUnit, $department, $appImpleData['performance_app_flag']);
             if (count($checkActiveApp) > 0) {
                 $checkActiveApp = $checkActiveApp[0];
                 $appraisalratingsmodel = new Default_Model_Appraisalratings();
                 $appraisal_rating = $appImpleData['appraisal_ratings'];
                 $id = $appImpleData['id'];
                 $initializationid = $checkActiveApp['id'];
                 $appraisal_rating = $appraisal_rating == 1 ? 5 : 10;
                 $data = $appraisalratingsmodel->getAppraisalRatingsbyInitId($initializationid);
                 if (!empty($data)) {
                     //$edit = self::editAction($initializationid);
                     $appInitdata = $appInitModel->getConfigData($data[0]['pa_initialization_id']);
                     $appraisalratingsform->setAttrib('action', DOMAIN . 'appraisalratings/edit/id/' . $id);
                     $this->view->data = $data;
                     $this->view->checkActiveApp = $appInitdata[0];
                 } else {
                     $appraisalratingsform->setAttrib('action', DOMAIN . 'appraisalratings/add');
                     $this->view->appraisal_rating = $appraisal_rating;
                     $this->view->checkActiveApp = $checkActiveApp;
                 }
                 if ($this->getRequest()->getPost()) {
                     $result = $this->save($appraisalratingsform);
                     $this->view->msgarray = $result;
                 }
                 /* Fetch business unit and department name*/
                 $appImpleData = sapp_PerformanceHelper::check_per_implmentation($businessUnit, $department);
                 $performanceappflag = $appImpleData['performance_app_flag'];
                 $optionsArray = $this->buildoptions($businessUnit, $department, $performanceappflag);
                 $buOptions = $optionsArray['buoptions'];
                 $deptOptions = isset($optionsArray['deptoptions']) ? $optionsArray['deptoptions'] : '';
                 /* End */
                 $this->view->performanceappflag = $performanceappflag;
                 $this->view->buOptions = $buOptions;
                 $this->view->deptOptions = $deptOptions;
                 $this->view->form = $appraisalratingsform;
                 $this->view->msgarray = $msgarray;
                 $this->view->appraisal_rating = $appraisal_rating;
             } else {
                 $errorMsg = 'Active Appraisal process is not there.';
             }
         } else {
             $errorMsg = 'Appraisal process is not yet configured.';
         }
         $this->view->ermsg = $errorMsg;
         $this->render('form');
     } else {
         $bunitModel = new Default_Model_Businessunits();
         $flag = 1;
         //$bunitdataArr = $bunitModel->fetchAll('isactive=1','unitname')->toArray();
         $bunitdataArr = $appInitModel->getbusinnessunits_initialized('');
         $this->view->bunitdataarr = $bunitdataArr;
         $this->view->flag = $flag;
         if ($this->getRequest()->getPost()) {
             $result = $this->save($appraisalratingsform);
             $this->view->msgarray = $result;
         }
         $this->render('managementform');
     }
 }