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);
     $meetingRoom = new Default_Model_Meetingroom();
     $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 = new Default_Form_createprojects();
     $form->setAttrib('action', DOMAIN . 'meetingroomblock/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 = $meetingRoom->getBusinessUnits();
     $this->view->meetingrooms = $meetingRoom->getActiveMeetingRooms();
     $this->view->allusers = array();
     //$this->view->allusers = $usersModel->getAllActiveUsers();
     try {
         if ($id > 0 && is_numeric($id)) {
             //update code
             $where = "";
             $actionflag = 2;
             $id = abs($id);
             $meetingdata = $meetingRoom->getMeetingRoomDataByID($id);
             // $Currprojectdata = $currprojectsModel->getProjectDataByID($taskdata['projectid']);
             $form->submit->setLabel('Update Meeting');
             $this->view->taskpagerefresh = '0';
             $this->view->MeetingRoomID = $id;
             $this->view->loginuserGroup = $loginuserGroup;
             $this->view->form = $form;
             $this->view->isEdit = "1";
             $this->view->data = $meetingdata;
             $this->view->delta_recipents_list = $meetingRoom->getRecipentsByBU($meetingdata['businessunit']);
             if ($this->getRequest()->getPost()) {
                 $trDb = Zend_Db_Table::getDefaultAdapter();
                 // starting transaction
                 $trDb->beginTransaction();
                 try {
                     $bFlag = true;
                     //Meeting Room Details
                     $deltameetingrooms = $this->_getParam('deltameetingrooms', null);
                     $meetingDate = $this->_getParam('meetingDate', null);
                     $meetingStartTime = $this->_getParam('meetingStartTime', null);
                     $meetingEndTime = $this->_getParam('meetingEndTime', null);
                     $projectBU = $this->_getParam('projectBU', null);
                     $buResources = $this->_getParam('buResources', null);
                     $clientrecipients = $this->_getParam('clientrecipients', null);
                     $meetingtitle = $this->_getParam('meetingtitle', null);
                     $meetingnotes = $this->_getParam('meetingnotes', null);
                     $deltaOwnerResource = $this->_getParam('deltaOwnerResource', null);
                     $clientOwnerResource = $this->_getParam('clientOwnerResource', null);
                     if ($deltameetingrooms <= 0) {
                         $validationMsg['message'] = 'Please select meetingroom.';
                         $validationMsg['msgtype'] = 'error';
                         $this->view->validationMsg = $validationMsg;
                         $bFlag = false;
                     } else {
                         if (strlen(trim($meetingDate)) <= 0) {
                             $validationMsg['message'] = 'Meeting Date cannot be empty.';
                             $validationMsg['msgtype'] = 'error';
                             $this->view->validationMsg = $validationMsg;
                             $bFlag = false;
                         } else {
                             if (strlen(trim($meetingStartTime)) <= 0) {
                                 $validationMsg['message'] = 'Meeting Start Time cannot be empty.';
                                 $validationMsg['msgtype'] = 'error';
                                 $this->view->validationMsg = $validationMsg;
                                 $bFlag = false;
                             } else {
                                 if (strlen(trim($meetingEndTime)) <= 0) {
                                     $validationMsg['message'] = 'Meeting End Time cannot be empty.';
                                     $validationMsg['msgtype'] = 'error';
                                     $this->view->validationMsg = $validationMsg;
                                     $bFlag = false;
                                 } else {
                                     if (count($projectBU) <= 0) {
                                         $validationMsg['message'] = 'Please select Business Unit.';
                                         $validationMsg['msgtype'] = 'error';
                                         $this->view->validationMsg = $validationMsg;
                                         $bFlag = false;
                                     } else {
                                         if (count($buResources) <= 0) {
                                             $validationMsg['message'] = 'Please select Recipients.';
                                             $validationMsg['msgtype'] = 'error';
                                             $this->view->validationMsg = $validationMsg;
                                             $bFlag = false;
                                         } else {
                                             if (strlen(trim($meetingtitle)) <= 0) {
                                                 $validationMsg['message'] = 'Title cannot be empty.';
                                                 $validationMsg['msgtype'] = 'error';
                                                 $this->view->validationMsg = $validationMsg;
                                                 $bFlag = false;
                                             } else {
                                                 if (strlen(trim($meetingnotes)) <= 0) {
                                                     $validationMsg['message'] = 'Description cannot be empty.';
                                                     $validationMsg['msgtype'] = 'error';
                                                     $this->view->validationMsg = $validationMsg;
                                                     $bFlag = false;
                                                 } else {
                                                     if ($deltaOwnerResource <= 0) {
                                                         $validationMsg['message'] = 'Please select Delta Owner.';
                                                         $validationMsg['msgtype'] = 'error';
                                                         $this->view->validationMsg = $validationMsg;
                                                         $bFlag = false;
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                     if ($bFlag) {
                         $mpolicydata = array('roomid' => trim($deltameetingrooms), 'blockmeetingdate' => trim($meetingDate), 'blockmeetingstarttime' => sapp_Global::change_time(trim($meetingStartTime) . 'database'), 'blockmeetingendtime' => sapp_Global::change_time(trim($meetingEndTime), 'database'), 'businessunit' => implode(',', $projectBU), 'createdby' => trim($loginUserId), 'title' => trim($meetingtitle), 'clientrecipients' => trim($clientrecipients), 'deltarecipients' => implode(',', $buResources), 'createddate' => gmdate("Y-m-d H:i:s"), 'description' => trim($meetingnotes), 'deltaowner' => trim($deltaOwnerResource), 'clientowner' => trim($clientOwnerResource), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                         $where = array('id = ?' => $id);
                         $Id = $meetingRoom->SaveorUpdateData($mpolicydata, $where);
                         $this->sendInvite(implode(',', $buResources), $loginUserId, trim($meetingDate), trim($meetingStartTime), trim($meetingEndTime), $id, $meetingnotes, $meetingtitle);
                         $menuID = 99;
                         sapp_Global::logManager($menuID, $actionflag, $loginUserId, $id);
                         $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Project details successfully updated."));
                         /* } else {
                            $this->_helper->getHelper("FlashMessenger")->addMessage(array("error" => "Error while updating project details."));
                            } */
                         $trDb->commit();
                         $this->_redirect('/meetingroomblock');
                     }
                 } catch (Exception $e) {
                     $trDb->rollBack();
                     $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Something went wrong, please try again later."));
                     $this->_redirect('/meetingroomblock');
                 }
             }
         } 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;
                     //Meeting Room Details
                     $deltameetingrooms = $this->_getParam('deltameetingrooms', null);
                     $meetingDate = $this->_getParam('meetingDate', null);
                     $meetingStartTime = $this->_getParam('meetingStartTime', null);
                     $meetingEndTime = $this->_getParam('meetingEndTime', null);
                     $projectBU = $this->_getParam('projectBU', null);
                     $buResources = $this->_getParam('buResources', null);
                     $clientrecipients = $this->_getParam('clientrecipients', null);
                     $meetingtitle = $this->_getParam('meetingtitle', null);
                     $meetingnotes = $this->_getParam('meetingnotes', null);
                     $deltaOwnerResource = $this->_getParam('deltaOwnerResource', null);
                     $clientOwnerResource = $this->_getParam('clientOwnerResource', null);
                     if ($deltameetingrooms <= 0) {
                         $validationMsg['message'] = 'Please select meetingroom.';
                         $validationMsg['msgtype'] = 'error';
                         $this->view->validationMsg = $validationMsg;
                         $bFlag = false;
                     } else {
                         if (strlen(trim($meetingDate)) <= 0) {
                             $validationMsg['message'] = 'Meeting Date cannot be empty.';
                             $validationMsg['msgtype'] = 'error';
                             $this->view->validationMsg = $validationMsg;
                             $bFlag = false;
                         } else {
                             if (strlen(trim($meetingStartTime)) <= 0) {
                                 $validationMsg['message'] = 'Meeting Start Time cannot be empty.';
                                 $validationMsg['msgtype'] = 'error';
                                 $this->view->validationMsg = $validationMsg;
                                 $bFlag = false;
                             } else {
                                 if (strlen(trim($meetingEndTime)) <= 0) {
                                     $validationMsg['message'] = 'Meeting End Time cannot be empty.';
                                     $validationMsg['msgtype'] = 'error';
                                     $this->view->validationMsg = $validationMsg;
                                     $bFlag = false;
                                 } else {
                                     if (count($projectBU) <= 0) {
                                         $validationMsg['message'] = 'Please select Business Unit.';
                                         $validationMsg['msgtype'] = 'error';
                                         $this->view->validationMsg = $validationMsg;
                                         $bFlag = false;
                                     } else {
                                         if (count($buResources) <= 0) {
                                             $validationMsg['message'] = 'Please select Recipients.';
                                             $validationMsg['msgtype'] = 'error';
                                             $this->view->validationMsg = $validationMsg;
                                             $bFlag = false;
                                         } else {
                                             if (strlen(trim($meetingtitle)) <= 0) {
                                                 $validationMsg['message'] = 'Title cannot be empty.';
                                                 $validationMsg['msgtype'] = 'error';
                                                 $this->view->validationMsg = $validationMsg;
                                                 $bFlag = false;
                                             } else {
                                                 if (strlen(trim($meetingnotes)) <= 0) {
                                                     $validationMsg['message'] = 'Description cannot be empty.';
                                                     $validationMsg['msgtype'] = 'error';
                                                     $this->view->validationMsg = $validationMsg;
                                                     $bFlag = false;
                                                 } else {
                                                     if ($deltaOwnerResource <= 0) {
                                                         $validationMsg['message'] = 'Please select Delta Owner.';
                                                         $validationMsg['msgtype'] = 'error';
                                                         $this->view->validationMsg = $validationMsg;
                                                         $bFlag = false;
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                         }
                     }
                     $mpolicydata = array('roomid' => trim($deltameetingrooms), 'blockmeetingdate' => trim($meetingDate), 'blockmeetingstarttime' => sapp_Global::change_time(trim($meetingStartTime), 'database'), 'blockmeetingendtime' => sapp_Global::change_time(trim($meetingEndTime), 'database'), 'businessunit' => implode(',', $projectBU), 'createdby' => trim($loginUserId), 'title' => trim($meetingtitle), 'clientrecipients' => trim($clientrecipients), 'deltarecipients' => implode(',', $buResources), 'createddate' => gmdate("Y-m-d H:i:s"), 'description' => trim($meetingnotes), 'deltaowner' => trim($deltaOwnerResource), 'clientowner' => trim($clientOwnerResource), 'modifiedby' => trim($loginUserId), 'modifieddate' => gmdate("Y-m-d H:i:s"));
                     if ($bFlag) {
                         $Id = $meetingRoom->SaveorUpdateData($mpolicydata, $where);
                         $this->sendInvite(implode(',', $buResources), $loginUserId, trim($meetingDate), trim($meetingStartTime), trim($meetingEndTime), $Id, $meetingnotes, $meetingtitle);
                         $menuID = 99;
                         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('/meetingroomblock');
                 } catch (Exception $e) {
                     $trDb->rollBack();
                     $this->_helper->getHelper("FlashMessenger")->addMessage(array("success" => "Something went wrong, please try again later."));
                     $this->_redirect('/meetingroomblock');
                 }
             }
             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';
     }
 }