Example #1
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $exParam1 = '', $exParam2 = '', $exParam3 = '', $exParam4 = '')
 {
     $searchQuery = '';
     $tablecontent = '';
     $level_opt = array();
     $searchArray = array();
     $data = array();
     $id = '';
     $dataTmp = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'from_date' || $key == 'to_date') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
             } else {
                 $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     /** search from grid - END * */
     $objName = 'educationdetails';
     $tableFields = array('action' => 'Action', 'educationlevel' => 'Education Level', 'institution_name' => 'Institution Name', 'course' => 'Course', 'from_date' => 'From', "to_date" => "To", "percentage" => "Percentage");
     $tablecontent = $this->geteducationdetails($sort, $by, $pageNo, $perPage, $searchQuery, $exParam1);
     $educationlevelcodemodel = new Default_Model_Educationlevelcode();
     $educationlevelArr = $educationlevelcodemodel->getEducationlevelData();
     if (!empty($educationlevelArr)) {
         foreach ($educationlevelArr as $educationlevelres) {
             $level_opt[$educationlevelres['id']] = $educationlevelres['educationlevelcode'];
         }
     }
     $dataTmp = array('userid' => $exParam1, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'dashboardcall' => $dashboardcall, 'add' => 'add', 'menuName' => 'Education', 'formgrid' => 'true', 'unitId' => $exParam1, 'call' => $call, 'context' => $exParam2, 'search_filters' => array('from_date' => array('type' => 'datepicker'), 'to_date' => array('type' => 'datepicker'), 'educationlevel' => array('type' => 'select', 'filter_data' => array('' => 'All') + $level_opt)));
     return $dataTmp;
 }
Example #2
0
 public function getGrid($sort, $by, $pageNo, $perPage, $searchData, $call, $dashboardcall, $exParam1 = '', $exParam2 = '', $exParam3 = '', $exParam4 = '')
 {
     $searchQuery = '';
     $tablecontent = '';
     $searchArray = array();
     $data = array();
     $id = '';
     $dataTmp = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'from_date' || $key == 'to_date') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
             } else {
                 $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     /** search from grid - END * */
     $objName = 'experiencedetails';
     $tableFields = array('action' => 'Action', 'comp_name' => 'Company Name', 'designation' => 'Designation', 'from_date' => 'From', 'to_date' => 'To');
     $tablecontent = $this->getexperiencedetailsData($sort, $by, $pageNo, $perPage, $searchQuery, $exParam1);
     $dataTmp = array('userid' => $exParam1, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'dashboardcall' => $dashboardcall, 'add' => 'add', 'menuName' => 'Experience', 'formgrid' => 'true', 'unitId' => $exParam1, 'call' => $call, 'context' => $exParam2, 'search_filters' => array('from_date' => array('type' => 'datepicker'), 'to_date' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #3
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $exParam1 = '', $exParam2 = '', $exParam3 = '', $exParam4 = '')
 {
     $searchQuery = '';
     $searchArray = array();
     $data = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'department') {
                 $searchQuery .= " d.deptname like '%" . $val . "%' AND ";
             } else {
                 if ($key == 'client_id') {
                     $searchQuery .= " c.client_name like '%" . $val . "%' AND ";
                 } else {
                     if ($key == 'start_date') {
                         $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
                     } else {
                         if ($key == 'year_skill_last_used') {
                         } else {
                             $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
                         }
                     }
                 }
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     $objName = 'empjobhistory';
     $tableFields = array('action' => 'Action', 'department' => 'Department', 'client_id' => 'Client', 'start_date' => 'From', 'end_date' => 'To');
     $tablecontent = $this->getEmpJobHistoryData($sort, $by, $pageNo, $perPage, $searchQuery, $exParam1);
     $bool_arr = array('' => 'All', 1 => 'Yes', 2 => 'No');
     $dataTmp = array('userid' => $exParam1, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'menuName' => 'Job history', 'formgrid' => 'true', 'unitId' => $exParam1, 'call' => $call, 'context' => $exParam2, 'search_filters' => array('active_company' => array('type' => 'select', 'filter_data' => $bool_arr), 'start_date' => array('type' => 'datepicker'), 'end_date' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #4
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $exParam1 = '', $exParam2 = '', $exParam3 = '', $exParam4 = '')
 {
     $searchQuery = '';
     $tablecontent = '';
     $searchArray = array();
     $data = array();
     $id = '';
     $dataTmp = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'expected_date_join') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
             } else {
                 $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     /** search from grid - END **/
     $objName = 'medicalclaims';
     $tableFields = array('action' => 'Action', 'injury_type' => 'Medical Claim Type', 'leaveappliedbyemployee_days' => 'Approved Leaves', 'leavebyemployeer_days' => 'Employee Applied Leaves', 'expected_date_join' => 'Date of Joining');
     $tablecontent = $this->getempmedicalclaimdetails($sort, $by, $pageNo, $perPage, $searchQuery, $exParam1);
     $dataTmp = array('userid' => $exParam1, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'menuName' => 'Medical Claims', 'formgrid' => 'true', 'unitId' => $exParam1, 'call' => $call, 'context' => $exParam2, 'dashboardcall' => $dashboardcall, 'search_filters' => array('injury_type' => array('type' => 'select', 'filter_data' => array('' => 'All', 1 => 'Paternity', 2 => 'Maternity', 3 => 'Disability', 4 => 'Injury')), 'expected_date_join' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #5
0
 public function get_sd_report($param_arr, $per_page, $page_no, $sort_name, $sort_type)
 {
     $search_str = "isactive = 1 ";
     foreach ($param_arr as $key => $value) {
         if ($value != '') {
             if ($key == 'raised_date') {
                 $search_str .= " and DATE(createddate) = '" . sapp_Global::change_date($value, 'database') . "'";
             } else {
                 $search_str .= " and " . $key . " = '" . $value . "'";
             }
         }
     }
     $offset = $per_page * $page_no - $per_page;
     $db = Zend_Db_Table::getDefaultAdapter();
     $limit_str = " limit " . $per_page . " offset " . $offset;
     $count_query = "select count(*) cnt from main_sd_requests_summary where " . $search_str;
     $count_result = $db->query($count_query);
     $count_row = $count_result->fetch();
     $count = $count_row['cnt'];
     $page_cnt = ceil($count / $per_page);
     $query = "select *,DATE_FORMAT(createddate,'" . DATEFORMAT_MYSQL . "') as createddate from main_sd_requests_summary where " . $search_str . " order by " . $sort_name . " " . $sort_type . " " . $limit_str;
     $result = $db->query($query);
     $rows = $result->fetchAll();
     return array('rows' => $rows, 'page_cnt' => $page_cnt);
 }
Example #6
0
 /**
  * This function is used to get data in employees report.
  * @param array $param_arr   = array of parameters.
  * @param integer $per_page  = no.of records per page
  * @param integer $page_no   = page number
  * @param string $sort_name  = name of the column to be sort
  * @param string $sort_type  = descending or ascending
  * @return array  Array of all employees.
  */
 public function getdata_emp_report($param_arr, $per_page, $page_no, $sort_name, $sort_type)
 {
     $search_str = " e.isactive != 5 ";
     foreach ($param_arr as $key => $value) {
         if ($value != '') {
             if ($key == 'date_of_joining') {
                 $search_str .= " and " . $key . " = '" . sapp_Global::change_date($value, 'database') . "'";
             }
             if ($key == 'businessunit_id' || $key === 'department_id') {
                 if (is_array($value)) {
                     $search_str .= " and " . $key . " in (" . implode(',', $value) . ")";
                 }
             } else {
                 $search_str .= " and " . $key . " = '" . $value . "'";
             }
         }
     }
     $offset = $per_page * $page_no - $per_page;
     $db = Zend_Db_Table::getDefaultAdapter();
     $limit_str = " limit " . $per_page . " offset " . $offset;
     $count_query = "select count(*) cnt from main_employees_summary e where " . $search_str;
     $count_result = $db->query($count_query);
     $count_row = $count_result->fetch();
     $count = $count_row['cnt'];
     $page_cnt = ceil($count / $per_page);
     $query = "select e.*,es.salary,p.freqtype,c.currencyname " . " from main_employees_summary e left join main_empsalarydetails es on es.user_id = e.user_id  " . " left join main_currency c on c.id = es.currencyid " . " left join main_payfrequency p on p.id = es.salarytype " . "where " . $search_str . " " . "order by " . $sort_name . " " . $sort_type . " " . $limit_str;
     $result = $db->query($query);
     $rows = $result->fetchAll();
     return array('rows' => $rows, 'page_cnt' => $page_cnt);
 }
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $statusid, $a1, $a2, $a3)
 {
     $searchQuery = '';
     $searchArray = array();
     $data = array();
     $requi_model = new Default_Model_Requisition();
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $loginUserId = $auth->getStorage()->read()->id;
         $loginuserGroup = $auth->getStorage()->read()->group_id;
     }
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         if (count($searchValues) > 0) {
             foreach ($searchValues as $key => $val) {
                 if ($key == 'onboard_date' || $key == 'r.createdon') {
                     $searchQuery .= " date(" . $key . ")  = '" . sapp_Global::change_date($val, 'database') . "' AND ";
                 } else {
                     $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
                 }
                 $searchArray[$key] = $val;
             }
             $searchQuery = rtrim($searchQuery, " AND");
         }
     }
     $objName = 'rejectedrequisitions';
     $tableFields = array('action' => 'Action', 'requisition_code' => 'Requisition Code', 'jobtitle_name' => 'Job Title', 'createdby_name' => 'Raised By', 'reporting_manager_name' => 'Reporting Manager', 'req_no_positions' => 'No. of Positions', 'filled_positions' => 'Filled Positions', 'r.createdon' => 'Raised On', 'onboard_date' => 'Due Date');
     $tablecontent = $requi_model->getRequisitionData($sort, $by, $pageNo, $perPage, $searchQuery, $loginUserId, $loginuserGroup, 3);
     $dataTmp = array('sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getAjaxgridData', 'jsFillFnName' => '', 'add' => 'add', 'searchArray' => $searchArray, 'menuName' => 'Rejected Requisitions', 'call' => $call, 'dashboardcall' => $dashboardcall, 'search_filters' => array('r.createdon' => array('type' => 'datepicker'), 'onboard_date' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #8
0
 /**
  * This function is used to get data in employees report.
  * @param array $param_arr   = array of parameters.
  * @param integer $per_page  = no.of records per page
  * @param integer $page_no   = page number
  * @param string $sort_name  = name of the column to be sort
  * @param string $sort_type  = descending or ascending
  * @return array  Array of all employees.
  */
 public function getdata_emp_report($param_arr, $per_page, $page_no, $sort_name, $sort_type)
 {
     $search_str = "isactive != 5 ";
     foreach ($param_arr as $key => $value) {
         if ($value != '') {
             if ($key == 'date_of_joining') {
                 $search_str .= " and " . $key . " = '" . sapp_Global::change_date($value, 'database') . "'";
             } else {
                 $search_str .= " and " . $key . " = '" . $value . "'";
             }
         }
     }
     $offset = $per_page * $page_no - $per_page;
     $db = Zend_Db_Table::getDefaultAdapter();
     $limit_str = " limit " . $per_page . " offset " . $offset;
     $count_query = "select count(*) cnt from main_employees_summary where " . $search_str;
     $count_result = $db->query($count_query);
     $count_row = $count_result->fetch();
     $count = $count_row['cnt'];
     $page_cnt = ceil($count / $per_page);
     $query = "select * from main_employees_summary where " . $search_str . " order by " . $sort_name . " " . $sort_type . " " . $limit_str;
     $result = $db->query($query);
     $rows = $result->fetchAll();
     return array('rows' => $rows, 'page_cnt' => $page_cnt);
 }
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $exParam1 = '', $exParam2 = '', $exParam3 = '', $exParam4 = '')
 {
     $searchQuery = '';
     $tablecontent = '';
     $searchArray = array();
     $data = array();
     $dataTmp = array();
     /** search from grid - START **/
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'visa_expiry_date') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
             } else {
                 $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     /** search from grid - END **/
     $objName = 'visaandimmigrationdetails';
     $tableFields = array('action' => 'Action', 'passport_number' => 'Passport Number', 'passport_expiry_date' => 'Passport Expiry Date', 'visa_number' => 'Visa Number', 'visa_expiry_date' => 'Visa Expiry Date', 'inine_status' => 'Inine Status', 'ininetyfour_status' => 'Ininetyfour Status');
     $tablecontent = $this->getEmpVisaDetails($sort, $by, $pageNo, $perPage, $searchQuery, $exParam1);
     $dataTmp = array('userid' => $exParam1, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'menuName' => 'Visa and Immigration', 'formgrid' => 'true', 'unitId' => $exParam1, 'dashboardcall' => $dashboardcall, 'call' => $call, 'context' => $exParam2, 'search_filters' => array('passport_expiry_date' => array('type' => 'datepicker'), 'visa_expiry_date' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #10
0
 public function displayData($emp_data, $column_key)
 {
     if ($column_key == 'created_on') {
         echo isset($emp_data['created_on']) ? sapp_Global::change_date($emp_data['created_on'], "view") : "";
     } elseif ($column_key == 'onboard_date') {
         echo isset($emp_data['onboard_date']) ? sapp_Global::change_date($emp_data['onboard_date'], "view") : "";
     } else {
         echo isset($emp_data[$column_key]) && !empty($emp_data[$column_key]) ? $emp_data[$column_key] : "--";
     }
 }
Example #11
0
 /**
  * This function gives all content for grid view.    
  * @param string $sort          = ascending or descending
  * @param string $by            = name of field which to be sort
  * @param integer $pageNo        = page number
  * @param integer $perPage       = no.of records per page
  * @param array $searchData    = search string
  * @param string $call          = type of call like ajax.
  * @return array  Array of data.
  */
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $grid_type, $status_value, $p4, $p5)
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $loginUserId = $auth->getStorage()->read()->id;
     }
     $status_value_arr = array(1 => 'Open', 2 => 'Closed', 3 => 'Cancelled', 4 => 'Overdue', 5 => 'Duetoday', 6 => 'To approve', 7 => 'Approved', 8 => 'Rec_pending', 9 => 'Rec_wapproval', 10 => 'Rec_toapprove', 11 => 'To approve', 12 => 'App_approved', 13 => 'To manager approve', 14 => 'Rept_approved', 15 => 'Req_pending', 16 => 'Rejected', 17 => 'Raiser_open', 18 => 'Manager approved', 19 => 'Manager rejected', 20 => 'Rec_app_approved', 21 => 'Rec_app_rejected', 22 => 'Rec_app_closed', 23 => 'To management approve', 24 => 'Management approved', 25 => 'Management rejected');
     $status_search_arr = array(6 => " (status = 'To management approve' or status = 'To manager approve') ", 9 => " (status = 'To management approve' or status = 'To manager approve') ", 7 => " (status = 'Manager approved' or status = 'Management Approved' or status = 'Manager rejected' or status = 'Management Rejected') ", 8 => " (status = 'Manager approved' or status = 'Management Approved' or status = 'Manager rejected' or status = 'Management Rejected') ", 10 => " (reporting_manager_id = '" . $loginUserId . "' and status ='To manager approve') ", 12 => " (status = 'Approved' or status = 'Rejected') ", 14 => " (status = 'Manager approved' or status = 'Manager rejected') ", 15 => " (status != 'Cancelled' and status != 'Closed') ", 5 => " date_add(date(r.createddate),interval 10 day) = date(now()) ", 4 => " date_add(date(r.createddate),interval 10 day) < date(now())", 17 => " ( status not in ('Closed','Cancelled','Rejected')) ", 20 => " (status = 'Manager approved' or status = 'Management Approved') ", 21 => " (status = 'Manager rejected' or status = 'Management Rejected')", 22 => " (status = 'Closed' or status = 'Rejected')");
     $grid_type_arr = $this->getGridtypearr();
     $grid_type = sapp_Global::_decrypt($grid_type);
     $status_value = sapp_Global::_decrypt($status_value);
     $searchQuery = '';
     $searchArray = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         if (count($searchValues) > 0) {
             foreach ($searchValues as $key => $val) {
                 if ($key == 'createddate') {
                     $searchQuery .= " date(" . $key . ") = '" . sapp_Global::change_date($val, 'database') . "' AND ";
                 } else {
                     $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
                 }
                 $searchArray[$key] = $val;
             }
             $searchQuery = rtrim($searchQuery, " AND");
         }
     }
     if (is_numeric($status_value) && $status_value > 0 && array_key_exists($status_value, $status_value_arr)) {
         if (!array_key_exists($status_value, $status_search_arr)) {
             $newsearchQuery = " status = '" . $status_value_arr[$status_value] . "'";
         } else {
             $newsearchQuery = $status_search_arr[$status_value];
         }
         if ($searchQuery != '') {
             $searchQuery .= " and " . $newsearchQuery;
         } else {
             $searchQuery .= $newsearchQuery;
         }
     }
     $objName = 'servicerequests';
     $tableFields = array('action' => 'Action', 'ticket_number' => 'Ticket#', 'service_desk_name' => 'Category', 'service_request_name' => 'Request Type', 'priority' => 'Priority', 'description' => 'Description', 'raised_by_name' => 'Raised By', 'createddate' => 'Raised On', 'status' => 'Status');
     if ($status_value != '') {
         unset($tableFields['status']);
     }
     $bool_arr = array('' => 'All', 1 => 'Low', 2 => 'Medium', 3 => 'High');
     $tablecontent = $this->getRequestData($sort, $by, $pageNo, $perPage, $searchQuery, $grid_type, $status_value);
     $menu_name_arr = $this->getServicemenunames();
     $menuName = $menu_name_arr[$grid_type];
     $dataTmp = array('sort' => $sort, 'by' => $by, 'menuName' => $menuName, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent['table_content'], 'row_count' => $tablecontent['count'], 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'call' => $call, 'grid_type' => $grid_type, 'status_value' => $status_value, 'view_link' => BASE_URL . 'servicerequests/view/id/{{id}}/t/' . sapp_Global::_encrypt($grid_type) . ($status_value != '' ? "/v/" . sapp_Global::_encrypt($status_value) : ""), 'add_link' => BASE_URL . 'servicerequests/add/t/' . sapp_Global::_encrypt($grid_type) . ($status_value != '' ? "/v/" . sapp_Global::_encrypt($status_value) : ""), 'dashboardcall' => $dashboardcall, 'search_filters' => array('priority' => array('type' => 'select', 'filter_data' => $bool_arr), 'createddate' => array('type' => 'datepicker')));
     if ($grid_type_arr[$grid_type] == 'request') {
         $dataTmp['add'] = 'add';
     }
     return $dataTmp;
 }
 public function isValid($value)
 {
     $this->_setValue($value);
     $today = date('Y-m-d');
     $final_val = sapp_Global::change_date($value, 'database');
     // expecting $value to be YYYY-MM-DD
     if ($final_val <= $today) {
         $this->_error(self::DATE_INVALID);
         return false;
     }
     return true;
 }
Example #13
0
 public function displayData($emp_data, $column_key)
 {
     $base_url = BASE_URL;
     if ($column_key == 'created_on') {
         echo isset($emp_data['created_on']) ? sapp_Global::change_date($emp_data['created_on'], "view") : "";
     } elseif ($column_key == 'onboard_date') {
         echo isset($emp_data['onboard_date']) ? sapp_Global::change_date($emp_data['onboard_date'], "view") : "";
     } elseif ($column_key == 'Show_Report') {
         echo "<a href='{$base_url}/reports/requisitionhistoryreportdetail/id/{$emp_data[req_id]}' target='_blank' >Show Report</a>";
     } else {
         echo isset($emp_data[$column_key]) && !empty($emp_data[$column_key]) ? $emp_data[$column_key] : "--";
     }
 }
Example #14
0
 /**
  * This function gives all content for grid view.
  * @parameters
  * @param $sort          = ascending or descending
  * @param $by            = name of field which to be sort
  * @param $pageNo        = page number
  * @param $perPage       = no.of records per page
  * @param $searchData    = search string
  * @param $call          = type of call like ajax.
  * @return  Array;
  */
 public function getUserLoginLogGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $p1, $p2, $p3, $p4, $p5)
 {
     $group_model = new Default_Model_Groups();
     $role_model = new Default_Model_Roles();
     $user_model = new Default_Model_Users();
     $searchQuery = '';
     $searchArray = array();
     $data = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         if (count($searchValues) > 0) {
             foreach ($searchValues as $key => $val) {
                 if ($key == 'userfullname' || $key == 'employeeId' || $key == 'emailaddress' || $key == 'empipaddress') {
                     $searchQuery .= " r." . $key . " like '%" . $val . "%' AND ";
                 } else {
                     if ($key == 'logindatetime') {
                         $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date(urldecode($val), 'database') . "%' AND ";
                     } else {
                         if ($key == 'rolename') {
                             $searchQuery .= " ro." . $key . " like '%" . $val . "%' AND ";
                         } else {
                             $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
                         }
                     }
                 }
                 $searchArray[$key] = $val;
             }
             $searchQuery = rtrim($searchQuery, " AND");
         }
     }
     $objName = 'userloginlog';
     $tableFields = array('action' => 'Action', 'userfullname' => 'User', 'profileimg' => 'Profile', 'employeeId' => 'Employee ID', 'group_name' => 'Group', 'rolename' => 'Role', 'emailaddress' => 'Email', 'logindatetime' => 'Login Time', 'empipaddress' => 'Ip Address');
     $tablecontent = $this->getUserLoginLogData($sort, $by, $pageNo, $perPage, $searchQuery);
     $group_data = $group_model->getGroupsListForUserLoginLog();
     $group_arr = array();
     foreach ($group_data as $gkey => $gdata) {
         $group_arr[$gdata['group_name']] = $gdata['group_name'];
     }
     $role_data = $role_model->getRoleListForUserLoginLog();
     $role_arr = array();
     foreach ($role_data as $gkey => $gdata) {
         $role_arr[$gdata['rolename']] = $gdata['rolename'];
     }
     $dataTmp = array('sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'menuName' => 'User log', 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'call' => $call, 'search_filters' => array('group_name' => array('type' => 'select', 'filter_data' => array('' => 'All') + $group_arr), 'rolename' => array('type' => 'select', 'filter_data' => array('' => 'All') + $role_arr), 'logindatetime' => array('type' => 'datepicker')));
     return $dataTmp;
 }
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $exParam1 = '', $exParam2 = '', $exParam3 = '', $exParam4 = '')
 {
     $searchQuery = '';
     $tablecontent = '';
     $searchArray = array();
     $data = array();
     $dataTmp = array();
     /** search from grid - START **/
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'from_date') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
             } else {
                 if ($key == 'to_date') {
                     $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
                 } else {
                     $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
                 }
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     $objName = 'empadditionaldetails';
     $tableFields = array('action' => 'Action', 'military_status' => 'Served in Military', 'branch_service' => 'Branch of Service', 'from_date' => 'From', 'to_date' => 'To', 'veteran_status' => 'Veteran Status', 'military_servicetype' => 'Service Type');
     $tablecontent = $this->getEmpAdditionalsData($sort, $by, $pageNo, $perPage, $searchQuery, $exParam1);
     $bool_arr = array('' => 'All', 1 => 'Yes', 2 => 'No');
     $empVeteranStatusArr = $this->empveteranstatus($exParam1);
     $veteranstatusArr = array();
     if (!empty($empVeteranStatusArr)) {
         for ($i = 0; $i < sizeof($empVeteranStatusArr); $i++) {
             $veteranstatusArr[$empVeteranStatusArr[$i]['id']] = $empVeteranStatusArr[$i]['veteranstatus'];
         }
     }
     $empMiltitaryStatusArr = $this->empmilitarystatus($exParam1);
     $militarystatusArr = array();
     if (!empty($empMiltitaryStatusArr)) {
         for ($i = 0; $i < sizeof($empMiltitaryStatusArr); $i++) {
             $militarystatusArr[$empMiltitaryStatusArr[$i]['id']] = $empMiltitaryStatusArr[$i]['militaryservicetype'];
         }
     }
     $dataTmp = array('userid' => $exParam1, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'menuName' => 'Additional Details', 'formgrid' => 'true', 'unitId' => $exParam1, 'dashboardcall' => $dashboardcall, 'call' => $call, 'context' => $exParam2, 'search_filters' => array('military_status' => array('type' => 'select', 'filter_data' => $bool_arr), 'military_servicetype' => array('type' => 'select', 'filter_data' => array('' => 'All') + $militarystatusArr), 'veteran_status' => array('type' => 'select', 'filter_data' => array('' => 'All') + $veteranstatusArr), 'from_date' => array('type' => 'datepicker', 'yearrange' => 'yearrange'), 'to_date' => array('type' => 'datepicker', 'yearrange' => 'yearrange')));
     return $dataTmp;
 }
Example #16
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $a = '', $b = '', $c = '', $d = '')
 {
     $searchQuery = '';
     $searchArray = array();
     $data = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             $sval = $val;
             $val = mysql_real_escape_string($val);
             if ($key == 'fin_year') {
                 $searchQuery .= " concat(from_year,'-',to_year) like '%" . $val . "%' AND ";
             } else {
                 if ($key == 'app_period') {
                     $searchQuery .= " lower(case when fi.ff_mode = 'Quarterly' then concat('Q',fi.ff_period) when fi.ff_mode = 'Half-yearly' then concat('H',fi.ff_period) when fi.ff_mode = 'Yearly' then 'Yearly' end)  like '%" . strtoupper($val) . "%' AND ";
                 } else {
                     if ($key == 'ff_due_date') {
                         $searchQuery .= "  " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
                     } else {
                         if ($key == 'ff_process_status') {
                             if ($val == 1) {
                                 $searchQuery .= " initialize_status = 2  AND ";
                             }
                             if ($val == 2) {
                                 $searchQuery .= " enable_to = 0 AND ";
                             }
                             if ($val == 3) {
                                 $searchQuery .= " enable_to = 1 AND ";
                             }
                         } else {
                             $searchQuery .= $key . " like '%" . $val . "%' AND ";
                         }
                     }
                 }
             }
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     $objName = 'feedforwardinit';
     $tableFields = array('action' => 'Action', 'unitname' => 'Business Unit', 'deptname' => 'Department', 'fin_year' => 'Financial Year', 'ff_mode' => 'Mode', 'app_period' => 'Period', 'ff_due_date' => 'Due Date', 'status' => 'Appraisal Status', 'ff_process_status' => 'Process Status');
     $tablecontent = $this->getFeedforwardInitData($sort, $by, $pageNo, $perPage, $searchQuery);
     $dataTmp = array('sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'call' => $call, 'dashboardcall' => $dashboardcall, 'actionparam' => 'yes', 'search_filters' => array('status' => array('type' => 'select', 'filter_data' => array('' => 'All', '1' => 'Open', '2' => 'Closed')), 'ff_mode' => array('type' => 'select', 'filter_data' => array('' => 'All', 'Quarterly' => 'Quarterly', 'Half-yearly' => 'Half-yearly', 'Yearly' => 'Yearly')), 'ff_due_date' => array('type' => 'datepicker'), 'ff_process_status' => array('type' => 'select', 'filter_data' => array('' => 'All', '1' => 'Initialize later', '2' => 'Appraisal employees', '3' => 'All employees'))));
     return $dataTmp;
 }
Example #17
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $unitId, $a = '', $b = '', $c = '')
 {
     $searchQuery = '';
     $searchArray = array();
     $data = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'timezone') {
                 $searchQuery .= " tz." . $key . " like '%" . $val . "%' AND ";
             } else {
                 if ($key == 'unitname') {
                     $searchQuery .= " b." . $key . " like '%" . $val . "%' AND ";
                 } else {
                     if ($key == 'depthead') {
                         $searchQuery .= " u.userfullname like '%" . $val . "%' AND ";
                     } else {
                         if ($key == 'startdate') {
                             $searchQuery .= " d." . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
                         } else {
                             $searchQuery .= " d." . $key . " like '%" . $val . "%' AND ";
                         }
                     }
                 }
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     $objName = 'departments';
     $tableFields = array('action' => 'Action', 'deptname' => 'Name', 'deptcode' => 'Code', 'startdate' => 'Started On', 'depthead' => 'Department Head', 'timezone' => 'Time Zone', 'unitname' => 'Business Unit');
     $tablecontent = $this->getDepartmentsData($sort, $by, $pageNo, $perPage, $searchQuery, $unitId);
     if (isset($unitId) && $unitId != '') {
         $formgrid = 'true';
     } else {
         $formgrid = '';
     }
     $dataTmp = array('sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'formgrid' => $formgrid, 'unitId' => $unitId, 'dashboardcall' => $dashboardcall, 'call' => $call, 'search_filters' => array('startdate' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #18
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $exParam1 = '', $exParam2 = '', $exParam3 = '', $exParam4 = '')
 {
     $searchQuery = '';
     $tablecontent = '';
     $searchArray = array();
     $data = array();
     $dataTmp = array();
     /** search from grid - START **/
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'year_skill_last_used') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
             } else {
                 $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     /** search from grid - END **/
     /*	Purpose:TO get drop down for search filters.Getting all competency levels from main_competencylevel table.
     			Modified Date	:	21/10/2013.
     			Modified By:	Yamini.
     			*/
     $empcompetencyLevelsArr = $this->empcompetencylevels($exParam1);
     $levelsArr = array();
     if (!empty($empcompetencyLevelsArr)) {
         for ($i = 0; $i < sizeof($empcompetencyLevelsArr); $i++) {
             $levelsArr[$empcompetencyLevelsArr[$i]['id']] = $empcompetencyLevelsArr[$i]['competencylevel'];
         }
     }
     $objName = 'empskills';
     $tableFields = array('action' => 'Action', 'skillname' => 'Skill', 'yearsofexp' => 'Years of Experience', 'competencylevelid' => 'Competency Level', 'year_skill_last_used' => 'Skill Last Used Year');
     $tablecontent = $this->getEmpSkillsData($sort, $by, $pageNo, $perPage, $searchQuery, $exParam1);
     $dataTmp = array('userid' => $exParam1, 'sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getEmployeeAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'menuName' => 'Skills', 'formgrid' => 'true', 'unitId' => $exParam1, 'dashboardcall' => $dashboardcall, 'call' => $call, 'context' => $exParam2, 'search_filters' => array('competencylevelid' => array('type' => 'select', 'filter_data' => array('' => 'All') + $levelsArr), 'year_skill_last_used' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #19
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $a = '', $b = '', $c = '', $d = '')
 {
     $searchQuery = '';
     $searchArray = array();
     $data = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             if ($key == 'start_date' || $key == 'end_date') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date($val, 'database') . "%' AND ";
             } else {
                 $searchQuery .= " " . $key . " like '%" . $val . "%' AND ";
             }
             $searchArray[$key] = $val;
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     $objName = 'currencyconverter';
     $tableFields = array('action' => 'Action', 'basecurrtext' => 'Base Currency', 'targetcurrtext' => 'Target Currency', 'exchangerate' => 'Exchange Rate', 'start_date' => 'Active Start Date', 'end_date' => 'Active End Date', 'description' => 'Description');
     $tablecontent = $this->getCurrencyConverterData($sort, $by, $pageNo, $perPage, $searchQuery);
     $dataTmp = array('sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'add' => 'add', 'call' => $call, 'dashboardcall' => $dashboardcall, 'search_filters' => array('start_date' => array('type' => 'datepicker'), 'end_date' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #20
0
 public function getGrid($sort, $by, $perPage, $pageNo, $searchData, $call, $dashboardcall, $a = '', $b = '', $c = '', $d = '')
 {
     $searchQuery = '';
     $searchArray = array();
     $data = array();
     if ($searchData != '' && $searchData != 'undefined') {
         $searchValues = json_decode($searchData);
         foreach ($searchValues as $key => $val) {
             $searchAlias = ' ';
             if ($key == 'city') {
                 $searchAlias = " c.";
             }
             if ($key == 'state') {
                 $searchAlias = " s.";
             }
             if ($key == 'country') {
                 $searchAlias = " cn.";
             }
             if ($key == 'timezone') {
                 $searchAlias = " tz.";
             }
             if ($key == 'startdate') {
                 $searchQuery .= " " . $key . " like '%" . sapp_Global::change_date(urldecode($val), 'database') . "%' AND ";
             } else {
                 $searchQuery .= $searchAlias . $key . " like '%" . urldecode($val) . "%' AND ";
             }
             $searchArray[$key] = urldecode($val);
         }
         $searchQuery = rtrim($searchQuery, " AND");
     }
     $objName = 'businessunits';
     $tableFields = array('action' => 'Action', 'unitname' => 'Name', 'unitcode' => 'Code', 'startdate' => 'Started On', 'address1' => 'Street Address', 'city' => 'City', 'state' => 'State', 'country' => 'Country', 'timezone' => 'Time zone');
     $tablecontent = $this->getBusinessUnitsData($sort, $by, $pageNo, $perPage, $searchQuery);
     $dataTmp = array('sort' => $sort, 'by' => $by, 'pageNo' => $pageNo, 'perPage' => $perPage, 'tablecontent' => $tablecontent, 'objectname' => $objName, 'extra' => array(), 'tableheader' => $tableFields, 'jsGridFnName' => 'getAjaxgridData', 'jsFillFnName' => '', 'searchArray' => $searchArray, 'call' => $call, 'dashboardcall' => $dashboardcall, 'search_filters' => array('startdate' => array('type' => 'datepicker')));
     return $dataTmp;
 }
Example #21
0
 public function saveorginfo($form, $loginUserId, $wizardData)
 {
     $orgInfoModel = new Default_Model_Organisationinfo();
     $wizard_model = new Default_Model_Wizard();
     $id = $this->getRequest()->getParam('id');
     $imagerror = $this->_request->getParam('imgerr');
     $imagepath = $this->_request->getParam('org_image_value');
     $imgerrmsg = $this->_request->getParam('imgerrmsg');
     $pphnumber = $this->_request->getParam('phonenumber');
     $sphnumber = $this->_request->getParam('secondaryphone');
     $org_startdate = sapp_Global::change_date($this->_request->getParam('org_startdate'), 'database');
     $flag = 'true';
     if (isset($imagepath) && $imagepath != '') {
         $imageArr = explode('.', $imagepath);
         if (sizeof($imageArr) > 1) {
             $imagename = $imageArr[0];
             $imageext = $imageArr[1];
             $extArr = array('gif', 'jpg', 'jpeg', 'png');
             if (!in_array($imageext, $extArr)) {
                 $msgarray['org_image_value'] = 'Please upload an appropriate image file.';
                 $flag = 'false';
             }
         } else {
             $msgarray['org_image_value'] = 'Please upload an appropriate image file.';
             $flag = 'false';
         }
     }
     if ($imagerror == 'error') {
         if ($imgerrmsg != '' && $imgerrmsg != 'undefined') {
             $msgarray['org_image_value'] = $imgerrmsg;
         } else {
             $msgarray['org_image_value'] = 'Please upload an appropriate image file.';
         }
         $flag = 'false';
     }
     if ($pphnumber == $sphnumber && $sphnumber != '' && $pphnumber != '') {
         $msgarray['secondaryphone'] = 'Please enter different phone number.';
         $flag = 'false';
     }
     if ($form->isValid($this->_request->getPost()) && $flag != 'false') {
         $domain = $this->_request->getParam('domain');
         $domain = implode(',', $domain);
         $date = new Zend_Date();
         $data = array('organisationname' => trim($this->_request->getParam('organisationname')), 'domain' => trim($domain), 'website' => trim($this->_request->getParam('website')), 'org_image' => $imagepath, 'orgdescription' => trim($this->_request->getParam('orgdescription')), 'totalemployees' => trim($this->_request->getParam('totalemployees')), 'org_startdate' => $org_startdate != '' ? $org_startdate : NULL, 'phonenumber' => trim($this->_request->getParam('phonenumber')), 'secondaryphone' => trim($this->_request->getParam('secondaryphone')), 'faxnumber' => trim($this->_request->getParam('faxnumber')), 'country' => trim((int) $this->_request->getParam('country')), 'state' => trim(intval($this->_request->getParam('state'))), 'city' => trim(intval($this->_request->getParam('city'))), 'address1' => trim($this->_request->getParam('address1')), 'address2' => trim($this->_request->getParam('address2')), 'address3' => trim($this->_request->getParam('address3')), 'description' => trim($this->_request->getParam('description')), 'designation' => trim($this->_request->getParam('jobtitle_id', null)), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"));
         $db = Zend_Db_Table::getDefaultAdapter();
         $db->beginTransaction();
         try {
             $path = IMAGE_UPLOAD_PATH;
             $imagepath = $this->_request->getParam('org_image_value');
             $filecopy = 'success';
             if ($imagepath != '') {
                 $filecopy = 'error';
                 if (file_exists(USER_PREVIEW_UPLOAD_PATH . '//' . $imagepath)) {
                     try {
                         if (copy(USER_PREVIEW_UPLOAD_PATH . '//' . $imagepath, $path . '//' . $imagepath)) {
                             $filecopy = 'success';
                         }
                         unlink(USER_PREVIEW_UPLOAD_PATH . '//' . $imagepath);
                     } catch (Exception $e) {
                         echo $msgarray['org_image_value'] = $e->getMessage();
                         exit;
                     }
                 }
             }
             $where = array('id=?' => $id);
             if ($imagepath == '') {
                 unset($data['org_image']);
             } else {
                 if ($filecopy == 'error') {
                     unset($data['org_image']);
                 }
             }
             if ($id != '') {
                 $where = array('id=?' => $id);
                 $actionflag = 2;
             } else {
                 $data['createdby'] = $loginUserId;
                 $data['createddate'] = gmdate("Y-m-d H:i:s");
                 $data['isactive'] = 1;
                 $where = '';
                 $actionflag = 1;
             }
             $Id = $orgInfoModel->SaveorUpdateData($data, $where);
             $menuID = ORGANISATIONINFO;
             try {
                 if ($Id != '' && $Id != 'update') {
                     $result = sapp_Global::logManager($menuID, $actionflag, $loginUserId, $Id);
                 } else {
                     $result = sapp_Global::logManager($menuID, $actionflag, $loginUserId, $id);
                 }
             } catch (Exception $e) {
                 echo $e->getMessage();
             }
             $wizardarray = array('org_details' => 2, 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"));
             if ($wizardData['site_config'] == 2) {
                 $wizardarray['iscomplete'] = 2;
             }
             $wizard_model->SaveorUpdateWizardData($wizardarray, '');
             $location_data = array('country' => trim((int) $this->_request->getParam('country')), 'state' => trim(intval($this->_request->getParam('state'))), 'city' => trim(intval($this->_request->getParam('city'))), 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"));
             $LocationId = $wizard_model->SaveorUpdateWizardData($location_data, '');
             $db->commit();
             if ($filecopy == 'success') {
                 $this->_helper->getHelper("FlashMessenger")->addMessage("Organization information saved successfully.");
             } else {
                 $this->_helper->getHelper("FlashMessenger")->addMessage("Organization information saved successfully but failed to upload the logo.");
             }
             $this->_redirect('wizard/configureorganisation');
         } catch (Exception $e) {
             $db->rollBack();
             $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Something went wrong,please try again later."));
             $this->_redirect('wizard/configureorganisation');
         }
     } else {
         $messages = $form->getMessages();
         foreach ($messages as $key => $val) {
             foreach ($val as $key2 => $val2) {
                 $msgarray[$key] = $val2;
                 break;
             }
         }
         //echo '<pre>';print_r($messages);exit;
         return $msgarray;
     }
 }
 /**
  * Export analytics of employees reporting to manager to excel.
  */
 public function exportemployeereportAction()
 {
     $this->_helper->layout->disableLayout();
     $param_arr = $this->_getAllParams();
     $cols_param_arr = $this->_getParam('cols_arr', array());
     if (isset($param_arr['cols_arr'])) {
         unset($param_arr['cols_arr']);
     }
     $page_no = isset($param_arr['page_no']) ? $param_arr['page_no'] : 1;
     $per_page = isset($param_arr['per_page']) ? $param_arr['per_page'] : PERPAGE;
     $sort_name = $param_arr['sort_name'];
     $sort_type = $param_arr['sort_type'];
     if (isset($param_arr['page_no'])) {
         unset($param_arr['page_no']);
     }
     if (isset($param_arr['sort_name'])) {
         unset($param_arr['sort_name']);
     }
     if (isset($param_arr['sort_type'])) {
         unset($param_arr['sort_type']);
     }
     if (isset($param_arr['per_page'])) {
         unset($param_arr['per_page']);
     }
     unset($param_arr['module']);
     unset($param_arr['controller']);
     unset($param_arr['action']);
     // Get employees data reporting to manager
     $myEmployees_model = new Default_Model_Myemployees();
     $param_arr['reporting_manager'] = $myEmployees_model->getLoginUserId();
     if (count($cols_param_arr) == 0) {
         $cols_param_arr = $this->empreport_heplper1('mandatory');
     }
     $employee_model = new Default_Model_Employee();
     $emp_data_org = $employee_model->getdata_emp_report($param_arr, $per_page, $page_no, $sort_name, $sort_type);
     $emp_arr = $emp_data_org['rows'];
     require_once 'Classes/PHPExcel.php';
     require_once 'Classes/PHPExcel/IOFactory.php';
     $objPHPExcel = new PHPExcel();
     $letters = range('A', 'Z');
     $count = 0;
     $filename = "EmployeeReport.xlsx";
     $cell_name = "";
     // Show count of employees reporting to manager
     // Get employees data reporting to manager
     $myEmployees_model = new Default_Model_Myemployees();
     $employee_model = new Default_Model_Employee();
     $count_emp_reporting = $employee_model->getCountEmpReporting($myEmployees_model->getLoginUserId());
     $objPHPExcel->getActiveSheet()->SetCellValue($letters[$count] . "1", "My Team Count : " . $count_emp_reporting);
     // Make first row Headings bold and highlighted in Excel.
     foreach ($cols_param_arr as $names) {
         $i = 2;
         $cell_name = $letters[$count] . $i;
         $names = html_entity_decode($names, ENT_QUOTES, 'UTF-8');
         $objPHPExcel->getActiveSheet()->SetCellValue($cell_name, $names);
         // Make bold cells
         $objPHPExcel->getActiveSheet()->getStyle($cell_name)->getFont()->setBold(true);
         $objPHPExcel->getActiveSheet()->getStyle($cell_name)->applyFromArray(array('fill' => array('type' => PHPExcel_Style_Fill::FILL_SOLID, 'color' => array('rgb' => '82CAFF'))));
         $objPHPExcel->getActiveSheet()->getColumnDimension($letters[$count])->setAutoSize(true);
         $i++;
         $count++;
     }
     // Display field/column values in Excel.
     $i = 3;
     foreach ($emp_arr as $emp_data) {
         $count1 = 0;
         foreach ($cols_param_arr as $column_key => $column_name) {
             // display field/column values
             $cell_name = $letters[$count1] . $i;
             if ($column_key == 'userfullname') {
                 $value = isset($emp_data['prefix_name']) ? $emp_data['prefix_name'] . ". " . $emp_data['userfullname'] : $emp_data['userfullname'];
             } elseif ($column_key == 'date_of_joining') {
                 $value = isset($emp_data['date_of_joining']) ? sapp_Global::change_date($emp_data['date_of_joining'], "view") : "";
             } else {
                 $value = isset($emp_data[$column_key]) ? $emp_data[$column_key] : "";
             }
             $value = html_entity_decode($value, ENT_QUOTES, 'UTF-8');
             $objPHPExcel->getActiveSheet()->SetCellValue($cell_name, $value);
             $count1++;
         }
         $i++;
     }
     sapp_Global::clean_output_buffer();
     header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
     header("Content-Disposition: attachment; filename=\"{$filename}\"");
     header('Cache-Control: max-age=0');
     sapp_Global::clean_output_buffer();
     $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
     $objWriter->save('php://output');
     exit;
 }
 public function save($form)
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $loginUserId = $auth->getStorage()->read()->id;
     }
     $cand_model = new Default_Model_Candidatedetails();
     $candwork_model = new Default_Model_Candidateworkdetails();
     $req_model = new Default_Model_Requisition();
     $requisition_id = $this->_getParam('requisition_id', null);
     $cand_status = $this->_getParam('cand_status', null);
     $ststidflag1 = $this->_getParam('ststidflag1', null);
     $flag = 'true';
     if ($ststidflag1 == 'true') {
         if ($requisition_id == '') {
             $msgarray['requisition_id'] = 'Please select requisition id.';
             $flag = 'false';
         }
         if ($cand_status == '') {
             $msgarray['cand_status'] = 'Please select status.';
             $flag = 'false';
         }
     }
     $this->view->ststidflag1 = $ststidflag1;
     $country = $this->_getParam('country', null);
     $state = $this->_getParam('state', null);
     $city = $this->_getParam('city', null);
     if ($form->isValid($this->_request->getPost()) && $flag == 'true') {
         $id = $this->getRequest()->getParam('id');
         $requisition_id = $this->_getParam('requisition_id', null);
         $candidate_firstname = $this->_getParam('candidate_firstname', null);
         $candidate_lastname = $this->_getParam('candidate_lastname', null);
         $candidate_name = $candidate_firstname . ' ' . $candidate_lastname;
         $cand_resume = $this->_getParam('cand_resume', null);
         $emailid = $this->_getParam('emailid', null);
         $contact_number = $this->_getParam('contact_number', null);
         $qualification = $this->_getParam('qualification', null);
         $experience = $this->_getParam('experience', null);
         $skillset = $this->_getParam('skillset', null);
         $education_summary = $this->_getParam('education_summary', null);
         $summary = $this->_getParam('summary', null);
         $cand_location = $this->_getParam('cand_location', null);
         $pincode = $this->_getParam('pincode', null);
         $cand_status = $this->_getParam('cand_status', null);
         for ($i = 0; $i < 3; $i++) {
             $txt_cname[] = $this->_getParam('txt_cname' . $i, null);
             $txt_desig[] = $this->_getParam('txt_desig' . $i, null);
             $txt_from[] = $this->_getParam('txt_from' . $i, null);
             $txt_to[] = $this->_getParam('txt_to' . $i, null);
             $txt_cnumber[] = $this->_getParam('txt_cnumber' . $i, null);
             $txt_website[] = $this->_getParam('txt_website' . $i, null);
             $txt_address[] = $this->_getParam('txt_address' . $i, null);
         }
         $hidworkdata = $this->_getParam('hidworkdata', null);
         $req_records = $cand_model->getcountofrecords($requisition_id);
         if (empty($req_records)) {
             $rdata = array('req_status' => 'In process', 'modifiedby' => trim($loginUserId), 'modifiedon' => gmdate("Y-m-d H:i:s"));
             $rwhere = ' id = ' . $requisition_id;
             $req_model->SaveorUpdateRequisitionData($rdata, $rwhere);
         }
         $data = array('requisition_id' => $requisition_id, 'candidate_firstname' => trim($candidate_firstname), 'candidate_lastname' => trim($candidate_lastname), 'candidate_name' => trim($candidate_name), 'emailid' => trim($emailid), 'contact_number' => trim($contact_number) == '' ? NULL : trim($contact_number), 'cand_resume' => $cand_resume, 'qualification' => trim($qualification), 'experience' => trim($experience), 'skillset' => trim($skillset), 'education_summary' => trim($education_summary), 'summary' => trim($summary), 'cand_location' => trim($cand_location), 'country' => intval($country), 'state' => intval($state), 'city' => intval($city), 'pincode' => $pincode, 'cand_status' => $cand_status, 'isactive' => 1, 'createdby' => trim($loginUserId), 'modifiedby' => trim($loginUserId), 'createddate' => gmdate("Y-m-d H:i:s"), 'modifieddate' => gmdate("Y-m-d H:i:s"));
         if (trim($contact_number) == '') {
             unset($data['contact_number']);
         }
         if (trim($emailid) == '') {
             unset($data['emailid']);
         }
         $where = "";
         $actionflag = 1;
         if ($id != '') {
             unset($data['createdby']);
             unset($data['createdon']);
             unset($data['isactive']);
             $where = "id = " . $id;
             $tableid = $id;
             $actionflag = 2;
         }
         $result = $cand_model->SaveorUpdateCandidateData($data, $where);
         if ($id == '') {
             $tableid = $result;
         }
         if ($result != '') {
             //saving of candidate work details
             if (count($txt_cname) > 0) {
                 $k = 0;
                 foreach ($txt_cname as $cname) {
                     if ($cname != '') {
                         $cdata = array('cand_id' => $tableid, 'company_name' => $cname, 'contact_number' => $txt_cnumber[$k], 'company_address' => $txt_address[$k], 'company_website' => $txt_website[$k], 'cand_designation' => $txt_desig[$k], 'cand_fromdate' => sapp_Global::change_date($txt_from[$k], 'database'), 'cand_todate' => sapp_Global::change_date($txt_to[$k], 'database'), 'isactive' => 1, 'createdby' => trim($loginUserId), 'modifiedby' => trim($loginUserId), 'createddate' => gmdate("Y-m-d H:i:s"), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                         $cwhere = $hidworkdata[$k] != '' ? "id = " . $hidworkdata[$k] : "";
                         $candwork_model->SaveorUpdateCandidateWorkData($cdata, $cwhere);
                     }
                     $k++;
                 }
             }
             //end of saving of candidate work details
             $menumodel = new Default_Model_Menu();
             $objidArr = $menumodel->getMenuObjID('/candidatedetails');
             $objID = $objidArr[0]['id'];
             $result = sapp_Global::logManager($objID, $actionflag, $loginUserId, $tableid);
             if ($id == '') {
                 //$this->_helper->FlashMessenger()->setNamespace('success')->addMessage('Candidate details added successfully.');
                 $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Candidate details added successfully."));
             } else {
                 //$this->_helper->FlashMessenger()->setNamespace('success')->addMessage('Candidate details updated successfully.');
                 $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Candidate details updated successfully."));
             }
             $this->_redirect('/candidatedetails');
         }
     } else {
         $messages = $form->getMessages();
         foreach ($messages as $key => $val) {
             foreach ($val as $key2 => $val2) {
                 $msgarray[$key] = $val2;
                 break;
             }
         }
         if (isset($country) && $country != 0 && $country != '') {
             $statesmodel = new Default_Model_States();
             $statesmodeldata = $statesmodel->getStatesList(intval($country));
             $form->state->clearMultiOptions();
             $form->city->clearMultiOptions();
             $form->state->addMultiOption('', 'Select State');
             foreach ($statesmodeldata as $res) {
                 $form->state->addMultiOption($res['id'], utf8_encode($res['state_name']));
             }
             if (isset($state) && $state != 0 && $state != '') {
                 $form->setDefault('state', $state);
             }
         }
         if (isset($state) && $state != 0 && $state != '') {
             $citiesmodel = new Default_Model_Cities();
             $citiesmodeldata = $citiesmodel->getCitiesList(intval($state));
             $form->city->addMultiOption('', 'Select City');
             foreach ($citiesmodeldata as $res) {
                 $form->city->addMultiOption($res['id'], utf8_encode($res['city_name']));
             }
             if (isset($city) && $city != 0 && $city != '') {
                 $form->setDefault('city', $city);
             }
         }
         return $msgarray;
     }
 }
 public function editAction()
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $sess_vals = $auth->getStorage()->read();
         $loginUserId = $auth->getStorage()->read()->id;
         $loginuserRole = $auth->getStorage()->read()->emprole;
         $loginuserGroup = $auth->getStorage()->read()->group_id;
     }
     $messages['message'] = '';
     $id = $this->getRequest()->getParam('id', null);
     $taskModel = new Default_Model_Createtasks();
     $currprojectsModel = new Default_Model_Createprojects();
     $activityModel = new Default_Model_Createactivities();
     $requi_model = new Default_Model_Requisition();
     $usersModel = new Default_Model_Users();
     $currentUserSummary = $usersModel->getEmployeeSummaryByID($loginUserId);
     $taskAllocationModel = new Default_Model_Tasksallocation();
     $where = "";
     $actionflag = 1;
     $form = new Default_Form_createprojects();
     $form->setAttrib('action', DOMAIN . 'createtasks/edit/id/' . $id);
     //$this->view->activeprojects = $taskModel->getActiveProjects();
     $this->view->activeprojects = $taskAllocationModel->getActiveProjectsForTasksForUser($currentUserSummary['businessunit_id'], $loginUserId, $loginuserGroup);
     $this->view->projectCategories = $taskModel->getProjectCategories();
     $this->view->business_units_list = $requi_model->getBusinessUnits();
     $this->view->allusers = array();
     //$this->view->allusers = $usersModel->getAllActiveUsers();
     try {
         if ($id > 0 && is_numeric($id)) {
             //update code
             $where = "";
             $actionflag = 2;
             $id = abs($id);
             $taskdata = $taskModel->getTaskDataByID($id);
             $Currprojectdata = $currprojectsModel->getProjectDataByID($taskdata['projectid']);
             $form->submit->setLabel('Update Task');
             $this->view->taskpagerefresh = '0';
             $this->view->TaskID = $id;
             $this->view->loginuserGroup = $loginuserGroup;
             $this->view->form = $form;
             $this->view->isEdit = "1";
             $this->view->data = $taskdata;
             $this->view->BUUsers = $usersModel->getAllActiveUsersByBU($Currprojectdata['businessunit']);
             $this->view->TrackingCodes = $currprojectsModel->getTrackingCodesByCategory($Currprojectdata['category']);
             if ($this->getRequest()->getPost()) {
                 $trDb = Zend_Db_Table::getDefaultAdapter();
                 // starting transaction
                 $trDb->beginTransaction();
                 try {
                     $bFlag = true;
                     //Task Details
                     $tprojectSelected = $this->_getParam('projectSelected', null);
                     $ttaskName = $this->_getParam('taskName', null);
                     $ttaskDescription = $this->_getParam('taskDescription', null);
                     $ttaskStartDate = $this->_getParam('taskStartDate', null);
                     $ttaskEndDate = $this->_getParam('taskEndDate', null);
                     $ttaskStatus = $this->_getParam('taskStatus', null);
                     $ttaskPrimaryLead = $this->_getParam('taskPrimaryLead', null);
                     $ttaskSecondaryLead = $this->_getParam('taskSecondaryLead', null);
                     $ttaskEffort = $this->_getParam('taskEffort', null);
                     //Task Activity Details
                     $tprjactivitytaskid = $this->_getParam('prjactivitytaskid', null);
                     $tprjactivityid = $this->_getParam('prjactivityid', null);
                     $tprjactivitysdate = $this->_getParam('prjactivitysdate', null);
                     $tprjactivityedate = $this->_getParam('prjactivityedate', null);
                     $tprjactivityeffort = $this->_getParam('prjactivityeffort', null);
                     $tprojectStartDate1 = sapp_Global::change_date(trim($ttaskStartDate), 'database');
                     $tprojectEndDate1 = sapp_Global::change_date(trim($ttaskEndDate), 'database');
                     $tprojectStartDate2 = sapp_Global::change_date(trim($taskdata['startdate']), 'database');
                     $tprojectEndDate2 = sapp_Global::change_date(trim($taskdata['enddate']), 'database');
                     //get tracking codes for edits
                     $ttrackingcodestartdate = $this->_getParam('trackingcodestartdate', null);
                     $ttrackingcodeenddate = $this->_getParam('trackingcodeenddate', null);
                     $ttrackingcodeeffort = $this->_getParam('trackingcodeenddate', null);
                     $mtaskactivitytrackingdata = array('startdate' => implode(',', $ttrackingcodestartdate), 'enddate' => implode(',', $ttrackingcodeenddate), 'effort' => implode(',', $ttrackingcodeeffort));
                     $this->view->taskactivitytrackingdata = $mtaskactivitytrackingdata;
                     $this->view->taskpagerefresh = '1';
                     if ($tprojectStartDate2 != $tprojectStartDate1 && ($ttrackingcodestartdate <= 0 || $ttrackingcodestartdate == '')) {
                         //$this->_helper->getHelper("FlashMessenger")->addMessage(array("error" => "Tracking code due to change in Project Planned Start Date."));
                         $validationMsg['message'] = 'Tracking code due to change in Task Planned Start Date.';
                         $validationMsg['msgtype'] = 'error';
                         $this->view->validationMsg = $validationMsg;
                         $bFlag = false;
                     } else {
                         if ($tprojectEndDate2 != $tprojectEndDate1 && ($ttrackingcodeenddate <= 0 || $ttrackingcodeenddate == '')) {
                             //$this->_helper->getHelper("FlashMessenger")->addMessage(array("error" => "Tracking code due to change in Project Planned End Date."));
                             $validationMsg['message'] = 'Tracking code due to change in Task Planned End Date.';
                             $validationMsg['msgtype'] = 'error';
                             $this->view->validationMsg = $validationMsg;
                             $bFlag = false;
                         } else {
                             if ($taskdata['effort'] != $ttaskEffort && ($ttrackingcodeeffort <= 0 || $ttrackingcodeeffort == '')) {
                                 //$this->_helper->getHelper("FlashMessenger")->addMessage(array("error" => "Tracking code due to change in Project Planned Effort."));
                                 $validationMsg['message'] = 'Tracking code due to change in Task Planned Effort.';
                                 $validationMsg['msgtype'] = 'error';
                                 $this->view->validationMsg = $validationMsg;
                                 $bFlag = false;
                             } else {
                                 if ($tprojectSelected <= 0) {
                                     $validationMsg['message'] = 'Please select project.';
                                     $validationMsg['msgtype'] = 'error';
                                     $this->view->validationMsg = $validationMsg;
                                     $bFlag = false;
                                 } else {
                                     if (strlen(trim($ttaskName)) <= 0) {
                                         $validationMsg['message'] = 'Task name cannot be empty.';
                                         $validationMsg['msgtype'] = 'error';
                                         $this->view->validationMsg = $validationMsg;
                                         $bFlag = false;
                                     } else {
                                         if (strlen(trim($ttaskDescription)) <= 0) {
                                             $validationMsg['message'] = 'Task description cannot be empty.';
                                             $validationMsg['msgtype'] = 'error';
                                             $this->view->validationMsg = $validationMsg;
                                             $bFlag = false;
                                         } else {
                                             if (strlen(trim($ttaskStartDate)) <= 0) {
                                                 $validationMsg['message'] = 'Task startdate cannot be empty.';
                                                 $validationMsg['msgtype'] = 'error';
                                                 $this->view->validationMsg = $validationMsg;
                                                 $bFlag = false;
                                             } else {
                                                 if (strlen(trim($ttaskEndDate)) <= 0) {
                                                     $validationMsg['message'] = 'Task enddate cannot be empty.';
                                                     $validationMsg['msgtype'] = 'error';
                                                     $this->view->validationMsg = $validationMsg;
                                                     $bFlag = false;
                                                 } else {
                                                     if (strlen(trim($ttaskEffort)) <= 0) {
                                                         $validationMsg['message'] = 'Task effort cannot be empty.';
                                                         $validationMsg['msgtype'] = 'error';
                                                         $this->view->validationMsg = $validationMsg;
                                                         $bFlag = false;
                                                     } else {
                                                         if ($ttaskPrimaryLead <= 0) {
                                                             $validationMsg['message'] = 'Please select primary lead.';
                                                             $validationMsg['msgtype'] = 'error';
                                                             $this->view->validationMsg = $validationMsg;
                                                             $bFlag = false;
                                                         } else {
                                                             if ($ttaskSecondaryLead <= 0) {
                                                                 $validationMsg['message'] = 'Please select secondary lead.';
                                                                 $validationMsg['msgtype'] = 'error';
                                                                 $this->view->validationMsg = $validationMsg;
                                                                 $bFlag = false;
                                                             }
                                                         }
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                     if ($bFlag) {
                         $mpolicydata = array('projectid' => trim($tprojectSelected), 'taskname' => trim($ttaskName), 'description' => trim($ttaskDescription), 'status' => trim($ttaskStatus), 'effort' => trim($ttaskEffort), 'startdate' => sapp_Global::change_date(trim($ttaskStartDate), 'database'), 'enddate' => sapp_Global::change_date(trim($ttaskEndDate), 'database'), 'primarylead' => trim($ttaskPrimaryLead), 'secondarylead' => trim($ttaskSecondaryLead), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                         $where = array('id=?' => $id);
                         $Id = $taskModel->SaveorUpdateData($mpolicydata, $where);
                         if ($tprojectStartDate2 != $tprojectStartDate1 || $tprojectEndDate2 != $tprojectEndDate1 || $taskdata['effort'] != $ttaskEffort) {
                             $taskslogModel = new Default_Model_Createtaskslog();
                             $mprojectlogdata = array('taskid' => trim($taskdata['id']), 'startdatetrackingcodeid' => trim($ttrackingcodestartdate), 'enddatetrackingcodeid' => trim($ttrackingcodeenddate), 'efforttrackingcodeid' => trim($ttrackingcodeeffort), 'effortold' => trim($taskdata['effort']), 'startdateold' => $tprojectStartDate2, 'enddateold' => $tprojectEndDate2, 'effortnew' => $ttaskEffort, 'startdatenew' => $tprojectStartDate1, 'enddatenew' => $tprojectEndDate1, 'createdby' => trim($loginUserId), 'createddate' => gmdate("Y-m-d H:i:s"));
                             $where = "";
                             $Id = $taskslogModel->SaveorUpdateData($mprojectlogdata, $where);
                         }
                         //update Task Activities
                         $currRow = 0;
                         foreach ($tprjactivityid as $tprjactid) {
                             $mactivitydata = array('effort' => trim($tprjactivityeffort[$currRow]), 'startdate' => sapp_Global::change_date(trim($tprjactivitysdate[$currRow]), 'database'), 'enddate' => sapp_Global::change_date(trim($tprjactivityedate[$currRow]), 'database'), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                             $where = array('id=?' => $tprjactivitytaskid[$currRow]);
                             $Id1 = $activityModel->SaveorUpdateData($mactivitydata, $where);
                             $currRow = $currRow + 1;
                         }
                         $menuID = -999;
                         sapp_Global::logManager($menuID, $actionflag, $loginUserId, $id);
                         $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Task details successfully modified."));
                         $trDb->commit();
                         $this->_redirect('/createtasks');
                     }
                 } catch (Exception $e) {
                     $trDb->rollBack();
                     $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Something went wrong, please try again later."));
                     $this->_redirect('/createtasks');
                 }
             }
         } else {
             //Insert code
             $actionflag = 1;
             if ($this->getRequest()->getPost()) {
                 #$result = $this->save($form, $policydata);
                 $trDb = Zend_Db_Table::getDefaultAdapter();
                 // starting transaction
                 $trDb->beginTransaction();
                 try {
                     $bFlag = true;
                     //Task Details
                     $tprojectSelected = $this->_getParam('projectSelected', null);
                     $ttaskName = $this->_getParam('taskName', null);
                     $ttaskDescription = $this->_getParam('taskDescription', null);
                     $ttaskStartDate = $this->_getParam('taskStartDate', null);
                     $ttaskEndDate = $this->_getParam('taskEndDate', null);
                     $ttaskStatus = $this->_getParam('taskStatus', null);
                     $ttaskPrimaryLead = $this->_getParam('taskPrimaryLead', null);
                     $ttaskSecondaryLead = $this->_getParam('taskSecondaryLead', null);
                     $ttaskEffort = $this->_getParam('taskEffort', null);
                     //Task Activity Details
                     $tprjactivityid = $this->_getParam('prjactivityid', null);
                     $tprjactivitysdate = $this->_getParam('prjactivitysdate', null);
                     $tprjactivityedate = $this->_getParam('prjactivityedate', null);
                     $tprjactivityeffort = $this->_getParam('prjactivityeffort', null);
                     $tprjactivitysdate1 = implode(',', $tprjactivitysdate);
                     $mtaskactivitytrackingdata = array('startdate' => implode(',', $tprjactivitysdate), 'enddate' => implode(',', $tprjactivityedate), 'effort' => implode(',', $tprjactivityeffort));
                     $this->view->taskactivitytrackingdata = $mtaskactivitytrackingdata;
                     $this->view->taskpagerefresh = '1';
                     if ($tprojectSelected <= 0) {
                         $validationMsg['message'] = 'Please select project.';
                         $validationMsg['msgtype'] = 'error';
                         $this->view->validationMsg = $validationMsg;
                         $bFlag = false;
                     } else {
                         if (strlen(trim($ttaskName)) <= 0) {
                             $validationMsg['message'] = 'Task name cannot be empty.';
                             $validationMsg['msgtype'] = 'error';
                             $this->view->validationMsg = $validationMsg;
                             $bFlag = false;
                         } else {
                             if (strlen(trim($ttaskDescription)) <= 0) {
                                 $validationMsg['message'] = 'Task description cannot be empty.';
                                 $validationMsg['msgtype'] = 'error';
                                 $this->view->validationMsg = $validationMsg;
                                 $bFlag = false;
                             } else {
                                 if (strlen(trim($ttaskStartDate)) <= 0) {
                                     $validationMsg['message'] = 'Task startdate cannot be empty.';
                                     $validationMsg['msgtype'] = 'error';
                                     $this->view->validationMsg = $validationMsg;
                                     $bFlag = false;
                                 } else {
                                     if (strlen(trim($ttaskEndDate)) <= 0) {
                                         $validationMsg['message'] = 'Task enddate cannot be empty.';
                                         $validationMsg['msgtype'] = 'error';
                                         $this->view->validationMsg = $validationMsg;
                                         $bFlag = false;
                                     } else {
                                         if (strlen(trim($ttaskEffort)) <= 0) {
                                             $validationMsg['message'] = 'Task effort cannot be empty.';
                                             $validationMsg['msgtype'] = 'error';
                                             $this->view->validationMsg = $validationMsg;
                                             $bFlag = false;
                                         } else {
                                             if ($ttaskPrimaryLead <= 0) {
                                                 $validationMsg['message'] = 'Please select primary lead.';
                                                 $validationMsg['msgtype'] = 'error';
                                                 $this->view->validationMsg = $validationMsg;
                                                 $bFlag = false;
                                             } else {
                                                 if ($ttaskSecondaryLead <= 0) {
                                                     $validationMsg['message'] = 'Please select secondary lead.';
                                                     $validationMsg['msgtype'] = 'error';
                                                     $this->view->validationMsg = $validationMsg;
                                                     $bFlag = false;
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                     $mpolicydata = array('projectid' => trim($tprojectSelected), 'taskname' => trim($ttaskName), 'description' => trim($ttaskDescription), 'status' => trim($ttaskStatus), 'effort' => trim($ttaskEffort), 'startdate' => sapp_Global::change_date(trim($ttaskStartDate), 'database'), 'enddate' => sapp_Global::change_date(trim($ttaskEndDate), 'database'), 'primarylead' => trim($ttaskPrimaryLead), 'secondarylead' => trim($ttaskSecondaryLead), 'createdby' => trim($loginUserId), 'createddate' => gmdate("Y-m-d H:i:s"), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                     if ($bFlag) {
                         $Id = $taskModel->SaveorUpdateData($mpolicydata, $where);
                         if ($Id > 0 && is_numeric($Id)) {
                             //Insert Task Activities
                             $currRow = 0;
                             foreach ($tprjactivityid as $tprjactid) {
                                 $mactivitydata = array('taskid' => trim($Id), 'activityid' => trim($tprjactid), 'status' => trim($ttaskStatus), 'effort' => trim($tprjactivityeffort[$currRow]), 'startdate' => sapp_Global::change_date(trim($tprjactivitysdate[$currRow]), 'database'), 'enddate' => sapp_Global::change_date(trim($tprjactivityedate[$currRow]), 'database'), 'primarylead' => trim($ttaskPrimaryLead), 'secondarylead' => trim($ttaskSecondaryLead), 'createdby' => trim($loginUserId), 'createddate' => gmdate("Y-m-d H:i:s"), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                                 $currRow = $currRow + 1;
                                 $Id1 = $activityModel->SaveorUpdateData($mactivitydata, $where);
                             }
                             $menuID = -999;
                             sapp_Global::logManager($menuID, $actionflag, $loginUserId, $id);
                             $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Project details successfully added."));
                         } else {
                             $this->_helper->getHelper("FlashMessenger")->addMessage(array("error" => "Error while adding project details."));
                         }
                         $trDb->commit();
                         $this->_redirect('/createtasks');
                     }
                 } catch (Exception $e) {
                     $trDb->rollBack();
                     $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Something went wrong, please try again later."));
                     $this->_redirect('/createtasks');
                 }
             }
             if ($tprojectSelected > 0) {
                 $Currprojectdata = $currprojectsModel->getProjectDataByID($tprojectSelected);
                 $this->view->BUUsers = $usersModel->getAllActiveUsersByBU($Currprojectdata['businessunit']);
             }
             $form->submit->setLabel('Add Task');
             $this->view->loginuserGroup = $loginuserGroup;
             $this->view->TaskID = "0";
             $this->view->form = $form;
             $this->view->isEdit = "0";
             $this->view->data = $mpolicydata;
         }
     } catch (Exception $e) {
         $this->view->nodata = 'nodata';
     }
 }
Example #25
0
 public function calculatecalendardaysAction()
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $loginUserId = $auth->getStorage()->read()->id;
     }
     $noOfDays = 0;
     $weekDay = '';
     $result['message'] = '';
     $result['days'] = '';
     $result['from_date_view'] = '';
     $result['to_date_view'] = '';
     $result['result'] = '';
     $employeeDepartmentId = '';
     $employeeGroupId = '';
     $weekend1 = '';
     $weekend2 = '';
     $availableleaves = '';
     $holidayDatesArr = array();
     $fromDatejs = $this->_request->getParam('fromDate');
     $fromDate = sapp_Global::change_date($fromDatejs, 'database');
     $toDatejs = $this->_request->getParam('toDate');
     $toDate = sapp_Global::change_date($toDatejs, 'database');
     //Calculating the no of days in b/w from date & to date with out taking weekend & holidays....
     $from_obj = new DateTime($fromDatejs);
     $from_date = $from_obj->format('Y-m-d');
     $to_obj = new DateTime($toDatejs);
     $to_date = $to_obj->format('Y-m-d');
     if ($to_date >= $from_date) {
         $employeesmodel = new Default_Model_Employees();
         $leavemanagementmodel = new Default_Model_Leavemanagement();
         $holidaydatesmodel = new Default_Model_Holidaydates();
         $leaverequestmodel = new Default_Model_Leaverequest();
         $loggedInEmployeeDetails = $employeesmodel->getLoggedInEmployeeDetails($loginUserId);
         $getavailbaleleaves = $leaverequestmodel->getAvailableLeaves($loginUserId);
         if (!empty($getavailbaleleaves)) {
             $availableleaves = $getavailbaleleaves[0]['remainingleaves'];
         }
         if (!empty($loggedInEmployeeDetails)) {
             $employeeDepartmentId = $loggedInEmployeeDetails[0]['department_id'];
             $employeeGroupId = $loggedInEmployeeDetails[0]['holiday_group'];
             if ($employeeDepartmentId != '' && $employeeDepartmentId != NULL) {
                 $weekendDetailsArr = $leavemanagementmodel->getWeekendNamesDetails($employeeDepartmentId);
             }
             if (!empty($weekendDetailsArr)) {
                 if ($weekendDetailsArr[0]['is_skipholidays'] == 1 && isset($employeeGroupId) && $employeeGroupId != '') {
                     $holidayDateslistArr = $holidaydatesmodel->getHolidayDatesListForGroup($employeeGroupId);
                     if (!empty($holidayDateslistArr)) {
                         for ($i = 0; $i < sizeof($holidayDateslistArr); $i++) {
                             $holidayDatesArr[$i] = $holidayDateslistArr[$i]['holidaydate'];
                         }
                     }
                 }
                 $weekend1 = $weekendDetailsArr[0]['daystartname'];
                 $weekend2 = $weekendDetailsArr[0]['dayendname'];
             }
             $fromdate_obj = new DateTime($fromDate);
             $weekDay = $fromdate_obj->format('l');
             while ($fromDate <= $toDate) {
                 if (count($holidayDatesArr) > 0) {
                     if ($weekDay != $weekend1 && $weekDay != $weekend2 && !in_array($fromDate, $holidayDatesArr)) {
                         $noOfDays++;
                     }
                 } else {
                     if ($weekDay != $weekend1 && $weekDay != $weekend2) {
                         $noOfDays++;
                     }
                 }
                 $fromdate_obj->add(new DateInterval('P1D'));
                 //Increment from date by one day...
                 $fromDate = $fromdate_obj->format('Y-m-d');
                 $weekDay = $fromdate_obj->format('l');
             }
         }
         $result['result'] = 'success';
         $result['days'] = $noOfDays;
         $result['message'] = '';
         $result['loginUserId'] = $loginUserId;
         $result['availableleaves'] = $availableleaves;
     }
     $this->_helper->_json($result);
 }
 public function editpopupAction()
 {
     Zend_Layout::getMvcInstance()->setLayoutPath(APPLICATION_PATH . "/layouts/scripts/popup/");
     $orgInfoModel = new Default_Model_Organisationinfo();
     $getorgData = $orgInfoModel->getorgrecords();
     $deptModel = new Default_Model_Departments();
     if (!empty($getorgData)) {
         $orgdata = '';
         $auth = Zend_Auth::getInstance();
         if ($auth->hasIdentity()) {
             $loginUserId = $auth->getStorage()->read()->id;
         }
         $msgarray = array();
         $flag = 'true';
         $bunitid = $this->getRequest()->getParam('unitId');
         $id = intVal($this->getRequest()->getParam('id'));
         $countriesModel = new Default_Model_Countries();
         $statesmodel = new Default_Model_States();
         $citiesmodel = new Default_Model_Cities();
         $timezonemodel = new Default_Model_Timezone();
         $businessunitsmodel = new Default_Model_Businessunits();
         $allTimezoneData = $timezonemodel->fetchAll('isactive=1', 'timezone')->toArray();
         $allCountriesData = $countriesModel->fetchAll('isactive=1', 'country')->toArray();
         $allStatesData = $statesmodel->fetchAll('isactive=1', 'state')->toArray();
         $allCitiesData = $citiesmodel->fetchAll('isactive=1', 'city')->toArray();
         $allBusinessunitsData = $businessunitsmodel->fetchAll('isactive=1', 'unitname')->toArray();
         $deptModel = new Default_Model_Departments();
         $deptform = new Default_Form_departments();
         $deptform->setAction(BASE_URL . 'departments/editpopup/id/' . $id . '/unitId/' . $bunitid);
         $country = $getorgData[0]['country'];
         if (isset($_POST['country'])) {
             $country = $_POST['country'];
         }
         $state = $getorgData[0]['state'];
         if (isset($_POST['state'])) {
             $state = $_POST['state'];
         }
         $city = $getorgData[0]['city'];
         if (isset($_POST['city'])) {
             $city = $_POST['city'];
         }
         $address = $getorgData[0]['address1'];
         //department head data
         $managementUsersData = $deptModel->getDepartmenttHead('');
         foreach ($managementUsersData as $mgmtdata) {
             $deptform->depthead->addMultiOption($mgmtdata['user_id'], $mgmtdata['userfullname']);
         }
         if (isset($country) && $country != 0 && $country != '') {
             $deptform->setDefault('country', $country);
             $statesData = $statesmodel->getBasicStatesList($country);
             foreach ($statesData as $res) {
                 $deptform->state->addMultiOption($res['state_id_org'], utf8_encode($res['state']));
             }
             if (isset($state) && $state != 0 && $state != '') {
                 $deptform->setDefault('state', $state);
             }
         }
         if (isset($state) && $state != 0 && $state != '') {
             $citiesData = $citiesmodel->getBasicCitiesList($state);
             foreach ($citiesData as $res) {
                 $deptform->city->addMultiOption($res['city_org_id'], utf8_encode($res['city']));
             }
             if (isset($city) && $city != 0 && $city != '') {
                 $deptform->setDefault('city', $city);
             }
         }
         if (isset($address) && $address != '') {
             $deptform->address1->setValue($address);
         }
         $close = '';
         $controllername = 'departments';
         $deptData = array();
         if ($id) {
             $data = $deptModel->getSingleDepartmentData($id);
             if (!empty($data)) {
                 $deptform->populate($data);
                 $deptform->submit->setLabel('Update');
                 $st_date = sapp_Global::change_date($data['startdate'], 'view');
                 $deptform->setDefault('start_date', $st_date);
                 $deptform->setDefault('start_date', $st_date);
                 $deptform->state->clearMultiOptions();
                 $deptform->city->clearMultiOptions();
                 $countryId = $data['country'];
                 if (isset($_POST['country'])) {
                     $countryId = $_POST['country'];
                 }
                 $stateId = $data['state'];
                 if (isset($_POST['state'])) {
                     $stateId = $_POST['state'];
                 }
                 $cityId = $data['city'];
                 if (isset($_POST['city'])) {
                     $cityId = $_POST['city'];
                 }
                 if ($countryId != '') {
                     $statesmodel = new Default_Model_States();
                     $statesData = $statesmodel->getBasicStatesList($countryId);
                     foreach ($statesData as $res) {
                         $deptform->state->addMultiOption($res['state_id_org'], utf8_encode($res['state']));
                     }
                 }
                 if ($stateId != '') {
                     $citiesmodel = new Default_Model_Cities();
                     $citiesData = $citiesmodel->getBasicCitiesList($stateId);
                     foreach ($citiesData as $res) {
                         $deptform->city->addMultiOption($res['city_org_id'], utf8_encode($res['city']));
                     }
                 }
                 $deptform->setDefault('country', $countryId);
                 $deptform->setDefault('state', $stateId);
                 $deptform->setDefault('city', $cityId);
                 $this->view->ermsg = '';
                 $this->view->datarr = $data;
             } else {
                 $this->view->ermsg = 'nodata';
             }
         }
         $bname = $deptModel->getbusinessunitname($bunitid);
         $this->view->bunitname = $bname;
         $this->view->deptData = sizeof($deptData);
         $this->view->form = $deptform;
         $this->view->unitid = $bunitid;
         $this->view->controllername = $controllername;
         if (!empty($allBusinessunitsData) && !empty($allCountriesData) && !empty($allStatesData) && !empty($allCitiesData) && !empty($allTimezoneData)) {
             $this->view->configuremsg = '';
         } else {
             $this->view->configuremsg = 'notconfigurable';
         }
         if (empty($allCountriesData)) {
             $msgarray['country'] = 'Countries are not configured yet.';
             $flag = 'false';
         }
         if (empty($allStatesData)) {
             $msgarray['state'] = 'States are not configured yet.';
             $flag = 'false';
         }
         if (empty($allCitiesData)) {
             $msgarray['city'] = 'Cities are not configured yet.';
             $flag = 'false';
         }
         if (empty($allTimezoneData)) {
             $msgarray['timezone'] = 'Time zones are not configured yet.';
             $flag = 'false';
         }
         $this->view->msgarray = $msgarray;
         if ($this->getRequest()->getPost()) {
             if ($deptform->isValid($this->_request->getPost()) && $flag == 'true') {
                 $deptname = $this->_request->getParam('deptname');
                 $deptcode = $this->_request->getParam('deptcode');
                 $description = $this->_request->getParam('description');
                 $start_date = $this->_request->getParam('start_date', null);
                 $start_date = sapp_Global::change_date($start_date, 'database');
                 $country = $this->_request->getParam('country');
                 $state = intval($this->_request->getParam('state'));
                 $city = intval($this->_request->getParam('city'));
                 $address1 = $this->_request->getParam('address1');
                 $address2 = $this->_request->getParam('address2');
                 $address3 = $this->_request->getParam('address3');
                 $unitid = $this->_request->getParam('unitid');
                 $timezone = $this->_request->getParam('timezone');
                 $depthead = $this->_request->getParam('depthead');
                 if (!isset($unitid) || $unitid == '') {
                     $unitid = $bunitid;
                 }
                 $deptcodeExistance = $deptModel->checkCodeDuplicates($deptcode, $id);
                 if (!$deptcodeExistance) {
                     $date = new Zend_Date();
                     $actionflag = '';
                     $tableid = '';
                     $data = array('deptname' => trim($deptname), 'deptcode' => trim($deptcode), 'description' => trim($description), 'startdate' => $start_date != '' ? $start_date : NULL, 'country' => trim($country), 'state' => trim($state), 'city' => trim($city), 'address1' => trim($address1), 'address2' => trim($address2), 'address3' => trim($address3), 'timezone' => trim($timezone), 'unitid' => $unitid, 'depthead' => trim($depthead), 'modifiedby' => $loginUserId, 'modifieddate' => $date->get('yyyy-MM-dd HH:mm:ss'));
                     if ($id != '') {
                         $where = array('id=?' => $id);
                         $actionflag = 2;
                     } else {
                         $data['createdby'] = $loginUserId;
                         $data['createddate'] = $date->get('yyyy-MM-dd HH:mm:ss');
                         $data['isactive'] = 1;
                         $where = '';
                         $actionflag = 1;
                     }
                     $Id = $deptModel->SaveorUpdateDepartmentsUnits($data, $where);
                     if ($Id == 'update') {
                         $this->view->eventact = 'updated';
                         $tableid = $id;
                     } else {
                         $this->view->eventact = 'added';
                         $tableid = $Id;
                     }
                     $menuID = DEPARTMENTS;
                     $result = sapp_Global::logManager($menuID, $actionflag, $loginUserId, $tableid);
                     Zend_Layout::getMvcInstance()->setLayoutPath(APPLICATION_PATH . "/layouts/scripts/popup/");
                     $close = 'close';
                     $this->view->popup = $close;
                     $this->view->controllername = $controllername;
                 } else {
                     $msgarray['message'] = 'A Department, with the given code, already exists.';
                     $msgarray['msgtype'] = 'error';
                     $this->view->messages = $msgarray;
                 }
             } else {
                 $messages = $deptform->getMessages();
                 foreach ($messages as $key => $val) {
                     foreach ($val as $key2 => $val2) {
                         $msgarray[$key] = $val2;
                         break;
                     }
                     if (empty($allCountriesData)) {
                         $msgarray['country'] = 'Countries are not configured yet.';
                     }
                     if (empty($allStatesData)) {
                         $msgarray['state'] = 'States are not configured yet.';
                     }
                     if (empty($allCitiesData)) {
                         $msgarray['city'] = 'Cities are not configured yet.';
                     }
                     if (empty($allTimezoneData)) {
                         $msgarray['timezone'] = 'Time zones are not configured yet.';
                     }
                 }
                 $this->view->msgarray = $msgarray;
             }
         }
     } else {
         $orgdata = 'noorgdata';
         $this->view->orgdata = $orgdata;
     }
 }
 public function editAction()
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $sess_vals = $auth->getStorage()->read();
         $loginUserId = $auth->getStorage()->read()->id;
         $loginuserRole = $auth->getStorage()->read()->emprole;
         $loginuserGroup = $auth->getStorage()->read()->group_id;
     }
     $timesheetDay = date('d-m-Y');
     $id = $this->getRequest()->getParam('id', null);
     $timeSheetModel = new Default_Model_Fillintimesheet();
     $nonProjecttimeSheetModel = new Default_Model_Fillintimesheetnonproject();
     $where = "";
     $actionflag = 1;
     $form = new Default_Form_createprojects();
     //$form->setAttrib('action', DOMAIN . 'fillintimesheet/edit/id/' . $id);
     if ($this->getRequest()->getPost()) {
         $trDb = Zend_Db_Table::getDefaultAdapter();
         try {
             //Task Details
             //$tprojectSelected = $this->_getParam('projectSelected', null);
             //$ttaskSelected = $this->_getParam('taskSelected', null);
             $thid_status = $this->_getParam('hid_status', null);
             $timesheetDay = $this->_getParam('timesheetDay', null);
             if ($thid_status == "0") {
                 // starting transaction
                 $trDb->beginTransaction();
                 //record Project Timesheet
                 $thid_allocationkeyids = $this->_getParam('hid_allocationkeyid', null);
                 $thid_actualeffort = $this->_getParam('hid_actualeffort', null);
                 $thid_actualeffortcomments = $this->_getParam('hid_actualeffortcomments', null);
                 $ttimesheetDay = $this->_getParam('timesheetDay', null);
                 $ttimesheetDay = sapp_Global::change_date(trim($ttimesheetDay), 'database');
                 $curRow = 0;
                 foreach ($thid_allocationkeyids as $thid_allocationkeyid) {
                     $curActualEffort = $thid_actualeffort[$curRow];
                     if (is_numeric($curActualEffort)) {
                         if ($curActualEffort > 0) {
                             $existingID = $timeSheetModel->isTimeAlreadySubmitted($thid_allocationkeyid, $ttimesheetDay);
                             if ($existingID == "0") {
                                 $mpolicydata = array('resourcetaskactivityid' => trim($thid_allocationkeyid), 'effort' => trim($curActualEffort), 'comments' => trim($thid_actualeffortcomments[$curRow]), 'workdate' => $ttimesheetDay, 'createdby' => trim($loginUserId), 'createddate' => gmdate("Y-m-d H:i:s"), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                                 $where = "";
                                 $Id = $timeSheetModel->SaveorUpdateData($mpolicydata, $where);
                             } else {
                                 $where = array('id=?' => $existingID);
                                 $mpolicydata = array('effort' => trim($curActualEffort), 'comments' => trim($thid_actualeffortcomments[$curRow]), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                                 $Id = $timeSheetModel->SaveorUpdateData($mpolicydata, $where);
                             }
                         }
                     }
                     $curRow = $curRow + 1;
                 }
                 //record Non-Project Timesheet
                 $tnonprojectrowremoves = $this->_getParam('nonprojectrowremove', null);
                 $tnonprojectrowids = $this->_getParam('nonprojectrowid', null);
                 $tcategorySelecteds = $this->_getParam('categorySelected', null);
                 $tcategoryactivityselected = $this->_getParam('categoryactivityselected', null);
                 $tcategoryreference = $this->_getParam('categoryreference', null);
                 $tcategoryreferencedescription = $this->_getParam('categoryreferencedescription', null);
                 $tcategoryactualeffort = $this->_getParam('categoryactualeffort', null);
                 $tcategoryactualeffortcomments = $this->_getParam('categoryactualeffortcomments', null);
                 $curRow = 0;
                 //Insert or update
                 foreach ($tcategorySelecteds as $tcategorySelected) {
                     $categoryActualEffort = $tcategoryactualeffort[$curRow];
                     $categoryactivityselected = $tcategoryactivityselected[$curRow];
                     if (is_numeric($categoryActualEffort)) {
                         if ($categoryActualEffort > 0) {
                             //$existingID = $nonProjecttimeSheetModel->isTimeAlreadySubmitted($tcategorySelected, $categoryactivityselected, $loginUserId, $ttimesheetDay1);
                             $existingID = $tnonprojectrowids[$curRow];
                             if ($existingID == "0") {
                                 $mpolicydata = array('categoryid' => trim($tcategorySelected), 'activityid' => trim($categoryactivityselected), 'resourceid' => trim($loginUserId), 'workdate' => $ttimesheetDay, 'reference' => trim($tcategoryreference[$curRow]), 'referencedescription' => trim($tcategoryreferencedescription[$curRow]), 'effort' => trim($categoryActualEffort), 'comments' => trim($tcategoryactualeffortcomments[$curRow]), 'createdby' => trim($loginUserId), 'createddate' => gmdate("Y-m-d H:i:s"), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                                 $where = "";
                                 $Id = $nonProjecttimeSheetModel->SaveorUpdateData($mpolicydata, $where);
                             } else {
                                 $where = array('id=?' => $existingID);
                                 $mpolicydata = array('categoryid' => trim($tcategorySelected), 'activityid' => trim($categoryactivityselected), 'reference' => trim($tcategoryreference[$curRow]), 'referencedescription' => trim($tcategoryreferencedescription[$curRow]), 'effort' => trim($categoryActualEffort), 'comments' => trim($tcategoryactualeffortcomments[$curRow]), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                                 $Id = $nonProjecttimeSheetModel->SaveorUpdateData($mpolicydata, $where);
                             }
                         }
                     }
                     $curRow = $curRow + 1;
                 }
                 //Soft Delete
                 foreach ($tnonprojectrowremoves as $tnonprojectrowremove) {
                     $where = array('id=?' => $tnonprojectrowremove);
                     $mpolicydata = array('isactive' => 0, 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                     $Id = $nonProjecttimeSheetModel->SaveorUpdateData($mpolicydata, $where);
                 }
                 //if ($Id > 0 && is_numeric($Id)) {
                 $menuID = -999;
                 sapp_Global::logManager($menuID, $actionflag, $loginUserId, $id);
                 $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Timesheet details successfully added."));
                 //} else {
                 //    $this->_helper->getHelper("FlashMessenger")->addMessage(array("error" => "Error while adding Timesheet details."));
                 //}
                 $trDb->commit();
                 //$this->view->messages = $this->_helper->flashMessenger->getMessages();
                 $this->_redirect('/fillintimesheet');
             }
         } catch (Exception $e) {
             $trDb->rollBack();
             $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Something went wrong, please try again later."));
             //$this->view->messages = $this->_helper->flashMessenger->getMessages();
             $this->_redirect('/fillintimesheet');
         }
     }
     $form->submit->setLabel('Submit');
     $this->view->loginuserGroup = $loginuserGroup;
     $this->view->form = $form;
     $ttimesheetDay = sapp_Global::change_date(trim($timesheetDay), 'database');
     $this->view->sess_vals = $sess_vals;
     $this->view->loginUserId = $loginUserId;
     $this->view->loginuserRole = $loginuserRole;
     $this->view->loginuserGroup = $loginuserGroup;
     $this->view->selDate = $ttimesheetDay;
     $this->view->projectcategories = $timeSheetModel->getProjectCategories();
     $this->view->categoryActivities = $timeSheetModel->AllCategoryActivities();
     $timesheetGrid = $timeSheetModel->getEmployeeTimesheetGrid($ttimesheetDay, $loginUserId);
     $nonprojecttimesheetGrid = $timeSheetModel->getEmployeeNonProjectTimesheetGrid($ttimesheetDay, $loginUserId);
     $this->view->timesheetGrid = $timesheetGrid;
     $this->view->nonprojecttimesheetGrid = $nonprojecttimesheetGrid;
 }
 public function viewAction()
 {
     if (defined('EMPTABCONFIGS')) {
         $empOrganizationTabs = explode(",", EMPTABCONFIGS);
         if (in_array('creditcarddetails', $empOrganizationTabs)) {
             $auth = Zend_Auth::getInstance();
             if ($auth->hasIdentity()) {
                 $loginUserId = $auth->getStorage()->read()->id;
             }
             $id = $this->getRequest()->getParam('userid');
             $callval = $this->getRequest()->getParam('call');
             if ($callval == 'ajaxcall') {
                 $this->_helper->layout->disableLayout();
             }
             $objName = 'creditcarddetails';
             $creditcardDetailsform = new Default_Form_Creditcarddetails();
             $creditcardDetailsModel = new Default_Model_Creditcarddetails();
             $creditcardDetailsform->removeElement("submit");
             $elements = $creditcardDetailsform->getElements();
             if (count($elements) > 0) {
                 foreach ($elements as $key => $element) {
                     if ($key != "Cancel" && $key != "Edit" && $key != "Delete" && $key != "Attachments") {
                         $element->setAttrib("disabled", "disabled");
                     }
                 }
             }
             $data = $creditcardDetailsModel->getcreditcarddetailsRecord($id);
             $employeeModal = new Default_Model_Employee();
             try {
                 if ($id && is_numeric($id) && $id > 0 && $id != $loginUserId) {
                     $empdata = $employeeModal->getsingleEmployeeData($id);
                     if ($empdata == 'norows') {
                         $this->view->rowexist = "norows";
                         $this->view->empdata = "";
                     } else {
                         $this->view->rowexist = "rows";
                         if (!empty($empdata)) {
                             if (!empty($data)) {
                                 $creditcardDetailsform->setDefault("id", $data[0]['id']);
                                 $creditcardDetailsform->setDefault('user_id', $data[0]['user_id']);
                                 $creditcardDetailsform->setDefault("card_type", $data[0]["card_type"]);
                                 $creditcardDetailsform->setDefault("card_number", $data[0]["card_number"]);
                                 $creditcardDetailsform->setDefault("nameoncard", $data[0]["nameoncard"]);
                                 $expiry_date = sapp_Global::change_date($data[0]["card_expiration"], 'view');
                                 $creditcardDetailsform->setDefault('card_expiration', $expiry_date);
                                 $creditcardDetailsform->setDefault("card_issuedby", $data[0]["card_issued_comp"]);
                                 $creditcardDetailsform->setDefault("card_code", $data[0]["card_code"]);
                             }
                             $this->view->controllername = $objName;
                             $this->view->id = $id;
                             if (!empty($empdata)) {
                                 $this->view->employeedata = $empdata[0];
                             } else {
                                 $this->view->employeedata = $empdata;
                             }
                             $this->view->form = $creditcardDetailsform;
                             $this->view->data = $data;
                         }
                         $this->view->empdata = $empdata;
                     }
                 } else {
                     $this->view->rowexist = "norows";
                 }
             } catch (Exception $e) {
                 $this->view->rowexist = "norows";
             }
         } else {
             $this->_redirect('error');
         }
     } else {
         $this->_redirect('error');
     }
 }
 public function viewAction()
 {
     $id = intval($this->getRequest()->getParam('id'));
     $callval = $this->getRequest()->getParam('call');
     if ($callval == 'ajaxcall') {
         $this->_helper->layout->disableLayout();
     }
     $objName = 'myholidaycalendar';
     $holidaydatesform = new Default_Form_holidaydates();
     $holidaydatesmodel = new Default_Model_Holidaydates();
     $holidaygroupsmodel = new Default_Model_Holidaygroups();
     $holidaydatesform->removeElement("submit");
     $data = $holidaydatesmodel->getsingleHolidayDatesData($id);
     $groupdataArr = $holidaygroupsmodel->getAllGroupData();
     if (sizeof($groupdataArr) > 0) {
         foreach ($groupdataArr as $groupdatares) {
             $holidaydatesform->groupid->addMultiOption($groupdatares['id'], utf8_encode($groupdatares['groupname']));
         }
     }
     $elements = $holidaydatesform->getElements();
     if (count($elements) > 0) {
         foreach ($elements as $key => $element) {
             if ($key != "Cancel" && $key != "Edit" && $key != "Delete" && $key != "Attachments") {
                 $element->setAttrib("disabled", "disabled");
             }
         }
     }
     if (!empty($data)) {
         $holidaydatesform->populate($data);
         $holidaydate = sapp_Global::change_date($data['holidaydate'], 'view');
         $holidaydatesform->holidaydate->setValue($holidaydate);
         $this->view->controllername = $objName;
         $this->view->id = $id;
         $this->view->form = $holidaydatesform;
         $this->view->ermsg = '';
     } else {
         $this->view->ermsg = 'nodata';
     }
 }
 public function save($empsalarydetailsform, $userid)
 {
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $loginUserId = $auth->getStorage()->read()->id;
     }
     if ($empsalarydetailsform->isValid($this->_request->getPost())) {
         $empsalarydetailsModal = new Default_Model_Empsalarydetails();
         $id = $this->_request->getParam('id');
         $user_id = $userid;
         $currencyid = $this->_request->getParam('currencyid');
         $salarytype = $this->_request->getParam('salarytype');
         $salary = $this->_request->getParam('salary');
         $bankname = trim($this->_request->getParam('bankname'));
         $accountholder_name = trim($this->_request->getParam('accountholder_name'));
         $accountclasstypeid = $this->_request->getParam('accountclasstypeid');
         $bankaccountid = $this->_request->getParam('bankaccountid');
         $accountnumber = trim($this->_request->getParam('accountnumber'));
         $accountholding = $this->_request->getParam('accountholding');
         $accountholding = sapp_Global::change_date($accountholding, 'database');
         $date = new Zend_Date();
         $menumodel = new Default_Model_Menu();
         $actionflag = '';
         $tableid = '';
         $data = array('user_id' => $user_id, 'currencyid' => $currencyid, 'salarytype' => $salarytype, 'salary' => $salary, 'bankname' => $bankname != '' ? $bankname : NULL, 'accountholder_name' => $accountholder_name != '' ? $accountholder_name : NULL, 'accountclasstypeid' => $accountclasstypeid != '' ? $accountclasstypeid : NULL, 'bankaccountid' => $bankaccountid != '' ? $bankaccountid : NULL, 'accountnumber' => $accountnumber != '' ? $accountnumber : NULL, 'accountholding' => $accountholding != '' ? $accountholding : NULL, 'modifiedby' => $loginUserId, 'modifieddate' => gmdate("Y-m-d H:i:s"));
         if ($id != '') {
             $where = array('user_id=?' => $user_id);
             $actionflag = 2;
         } else {
             $data['createdby'] = $loginUserId;
             $data['createddate'] = gmdate("Y-m-d H:i:s");
             $data['isactive'] = 1;
             $where = '';
             $actionflag = 1;
         }
         $Id = $empsalarydetailsModal->SaveorUpdateEmpSalaryData($data, $where);
         if ($Id == 'update') {
             $tableid = $id;
             $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Employee salary details updated successfully."));
         } else {
             $tableid = $Id;
             $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Employee salary details added successfully."));
         }
         $menuidArr = $menumodel->getMenuObjID('/employee');
         $menuID = $menuidArr[0]['id'];
         $result = sapp_Global::logManager($menuID, $actionflag, $loginUserId, $user_id);
         $this->_redirect('empsalarydetails/edit/userid/' . $user_id);
     } else {
         $messages = $empsalarydetailsform->getMessages();
         foreach ($messages as $key => $val) {
             foreach ($val as $key2 => $val2) {
                 $msgarray[$key] = $val2;
                 break;
             }
         }
         return $msgarray;
     }
 }