コード例 #1
0
 public function viewpopupAction()
 {
     Zend_Layout::getMvcInstance()->setLayoutPath(APPLICATION_PATH . "/layouts/scripts/popup/");
     $id = $this->getRequest()->getParam('id');
     if ($id == '') {
         $id = $loginUserId;
     }
     $callval = $this->getRequest()->getParam('call');
     if ($callval == 'ajaxcall') {
         $this->_helper->layout->disableLayout();
     }
     $objName = 'empleaves';
     $empleavesform = new Default_Form_empleaves();
     $employeeleavesModal = new Default_Model_Employeeleaves();
     $leavemanagementModel = new Default_Model_Leavemanagement();
     $empleavesform->removeElement("submit");
     $elements = $empleavesform->getElements();
     if (count($elements) > 0) {
         foreach ($elements as $key => $element) {
             if ($key != "Cancel" && $key != "Edit" && $key != "Delete" && $key != "Attachments") {
                 $element->setAttrib("disabled", "disabled");
             }
         }
     }
     $data = $employeeleavesModal->getsingleEmpleavesrow($id);
     if (!empty($data)) {
         $leaveTypeCount = $leavemanagementModel->getEmployeeUsedLeavesName($data['user_id'], $data['alloted_year']);
     }
     if (!empty($data)) {
         $empleavesform->populate($data);
         $empleavesform->leave_limit->setValue($data['emp_leave_limit']);
     }
     $this->view->controllername = $objName;
     $this->view->leaveTypeCount = $leaveTypeCount;
     $this->view->id = $id;
     $this->view->form = $empleavesform;
 }
コード例 #2
0
 public function leavesAction()
 {
     if (defined('EMPTABCONFIGS')) {
         $empOrganizationTabs = explode(",", EMPTABCONFIGS);
         if (in_array('emp_leaves', $empOrganizationTabs)) {
             $auth = Zend_Auth::getInstance();
             if ($auth->hasIdentity()) {
                 $loginUserId = $auth->getStorage()->read()->id;
                 $loginUserRole = $auth->getStorage()->read()->emprole;
                 $loginuserGroup = $auth->getStorage()->read()->group_id;
             }
             $id = $loginUserId;
             $call = $this->_getParam('call');
             if ($call == 'ajaxcall') {
                 $this->_helper->layout->disableLayout();
                 $userID = $this->_getParam('unitId') != '' ? $this->_getParam('unitId') : $this->_getParam('userid');
             }
             $Uid = $id ? $id : $userID;
             $employeeleavesModel = new Default_Model_Employeeleaves();
             $leavemanagementModel = new Default_Model_Leavemanagement();
             $employeeModal = new Default_Model_Employee();
             try {
                 $empdata = $employeeModal->getsingleEmployeeData($Uid);
                 if ($empdata == 'norows') {
                     $this->view->rowexist = "norows";
                     $this->view->empdata = "";
                 } else {
                     $this->view->rowexist = "rows";
                     if (!empty($empdata)) {
                         if ($Uid) {
                             $empleavesform = new Default_Form_empleaves();
                             $employeeleavesModal = new Default_Model_Employeeleaves();
                             $currentdata = '';
                             $leavetransferArr = $leavemanagementModel->getWeekendDetails($empdata[0]['department_id']);
                             $prevyeardata = $employeeleavesModal->getPreviousYearEmployeeleaveData($Uid);
                             $currentyeardata = $employeeleavesModal->getsingleEmployeeleaveData($Uid);
                             if (empty($currentyeardata)) {
                                 $currentdata = "empty";
                                 $currentyearleavecount = '';
                             } else {
                                 $currentdata = "notempty";
                                 $currentyearleavecount = $currentyeardata[0]['emp_leave_limit'];
                             }
                             $this->view->currentdata = $currentdata;
                             $leavetransfercount = '';
                             $previousyear = '';
                             $isleavetrasnferset = '';
                             $data = $employeeleavesModal->getsingleEmployeeleaveData($id);
                             $used_leaves = 0;
                             $date = date('Y');
                             if (!empty($data)) {
                                 $empleavesform->populate($data[0]);
                                 $used_leaves = $data[0]['used_leaves'];
                             }
                             $empleavesform->alloted_year->setValue($date);
                             if (!empty($leavetransferArr) && $leavetransferArr[0]['is_leavetransfer'] == 1 && !empty($prevyeardata) && is_numeric($prevyeardata[0]['remainingleaves']) && (int) $prevyeardata[0]['remainingleaves'] > 0 && $prevyeardata[0]['alloted_year'] != '' && empty($currentyeardata)) {
                                 $leavetransfercount = $prevyeardata[0]['remainingleaves'];
                                 $previousyear = $prevyeardata[0]['alloted_year'];
                                 $isleavetrasnferset = 1;
                                 $empleavesform->submitbutton->setAttrib('onClick', 'return showleavealert(' . $leavetransfercount . ',' . $previousyear . ')');
                                 $empleavesform->setAttrib('action', DOMAIN . 'mydetails/leaves/');
                             } else {
                                 $empleavesform->setAttrib('action', DOMAIN . 'mydetails/leaves/');
                             }
                             $this->view->form = $empleavesform;
                             $this->view->data = $data;
                             $this->view->id = $Uid;
                             $this->view->leavetransfercount = $leavetransfercount;
                         }
                         //Post values....
                         if ($this->getRequest()->getPost()) {
                             $result = $this->empaddorremoveleaves($empleavesform, $Uid, $used_leaves, $leavetransfercount, $isleavetrasnferset, $currentyearleavecount);
                             $this->view->msgarray = $result;
                         }
                         $objname = $this->_getParam('objname');
                         $refresh = $this->_getParam('refresh');
                         $data = array();
                         $searchQuery = '';
                         $searchArray = array();
                         $tablecontent = '';
                         if ($refresh == 'refresh') {
                             $sort = 'DESC';
                             $by = 'e.modifieddate';
                             $perPage = 10;
                             $pageNo = 1;
                             $searchData = '';
                         } else {
                             $sort = $this->_getParam('sort') != '' ? $this->_getParam('sort') : 'DESC';
                             $by = $this->_getParam('by') != '' ? $this->_getParam('by') : 'e.modifieddate';
                             $perPage = $this->_getParam('per_page', 10);
                             $pageNo = $this->_getParam('page', 1);
                             $searchData = $this->_getParam('searchData');
                             $searchData = rtrim($searchData, ',');
                             /** search from grid - START **/
                             $searchData = $this->_getParam('searchData');
                             if ($searchData != '' && $searchData != 'undefined') {
                                 $searchValues = json_decode($searchData);
                                 foreach ($searchValues as $key => $val) {
                                     $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
                                     $searchArray[$key] = $val;
                                 }
                                 $searchQuery = rtrim($searchQuery, " AND");
                             }
                             /** search from grid - END **/
                         }
                         $objName = 'empleaves';
                         $tableFields = array('action' => 'Action', 'emp_leave_limit' => 'Alloted leave limit', 'used_leaves' => 'Used leaves', 'remainingleaves' => 'Leave balance', 'alloted_year' => 'Alloted year');
                         $tablecontent = $employeeleavesModel->getEmpLeavesData($sort, $by, $pageNo, $perPage, $searchQuery, $Uid);
                         $dataTmp = array('userid' => $Uid, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'menuName' => 'Employee Leaves', 'formgrid' => 'true', 'unitId' => $Uid, 'call' => $call, 'context' => 'mydetails');
                         array_push($data, $dataTmp);
                         $permission = sapp_Global::_checkprivileges(EMPLOYEE, $loginuserGroup, $loginUserRole, 'edit');
                         $this->view->dataArray = $data;
                         $this->view->call = $call;
                         $this->view->id = $Uid;
                         $this->view->messages = $this->_helper->flashMessenger->getMessages();
                         $this->view->employeedata = $empdata[0];
                         $this->view->usergroup = $loginuserGroup;
                         $this->view->permission = $permission;
                     }
                     $this->view->empdata = $empdata;
                 }
             } catch (Exception $e) {
                 $this->view->rowexist = "norows";
             }
             $this->view->usergroup = $loginuserGroup;
         } else {
             $this->_redirect('error');
         }
     } else {
         $this->_redirect('error');
     }
 }