public function submitAction() { $storage = new Zend_Auth_Storage_Session(); $sessionData = $storage->read(); $myTsModel = new Timemanagement_Model_MyTimesheet(); $selDay = $this->_getParam('day'); $selYrMon = $this->_getParam('selYrMon'); $callval = $this->getRequest()->getParam('call'); $week = $this->_getParam('week'); $calWeek = $this->_getParam('calWeek'); $yrMon = explode('-', $selYrMon); if ($selDay != '') { $calWeek = strftime('%U', strtotime($selYrMon . '-' . $selDay)); $startCalWeek = strftime('%U', strtotime($selYrMon . '-01')); $week = $calWeek - $startCalWeek + 1; $dayName = strtolower(date('D', strtotime($selYrMon . '-' . $selDay))); } $statusData = array('emp_id' => $sessionData->id, 'ts_year' => $yrMon[0], 'ts_month' => $yrMon[1], 'ts_week' => $week, 'cal_week' => $calWeek, 'week_status' => 'submitted', 'modified_by' => $sessionData->id, 'modified' => Zend_Registry::get('currentdate')); if ($selDay != '') { $statusData[$dayName . '_status'] = 'submitted'; $statusData[$dayName . '_status_date'] = Zend_Registry::get('currentdate'); } else { $weekDaysStatus = $myTsModel->getWeekDaysDailyStatus($sessionData->id, $yrMon[0], $yrMon[1], $week); foreach ($weekDaysStatus[0] as $key => $value) { if ($value == 'saved') { $dayName = substr($key, 0, 3); $statusData[$dayName . '_status'] = 'submitted'; $statusData[$dayName . '_status_date'] = Zend_Registry::get('currentdate'); } } } $weekDaysProjStatus = $myTsModel->getWeekDaysProjStatus($sessionData->id, $yrMon[0], $yrMon[1], $week); $projId = ''; foreach ($weekDaysProjStatus as $projStatusArray) { $projStatusData = array(); foreach ($projStatusArray as $key => $value) { if ($key == 'project_id') { $projId = $value; } if ($value == 'saved') { $dayShortName = substr($key, 0, 3); if ($selDay != '') { $projStatusData[$dayName . '_project_status'] = 'submitted'; } else { $projStatusData[$dayShortName . '_project_status'] = 'submitted'; } $myTsModel->updateProjectSubmitStatus($sessionData->id, $yrMon[0], $yrMon[1], $week, $projStatusData, $projId); } } } $myTsModel->updateSubmitStatus($sessionData->id, $yrMon[0], $yrMon[1], $week, $statusData); $myTsModel->updateWeekStatus($sessionData->id, $yrMon[0], $yrMon[1], $week); if ($callval == 'ajaxcall') { $this->_helper->layout->disableLayout(); } $this->view->status = 'success'; if ($selDay != '') { $this->view->message = 'Timesheet submited successfully for Day ' . $selDay; } else { $this->view->message = 'Timesheet submited successfully for week ' . $week; } }