/** * Action Reschedule * Used for drag & drop */ protected function action_reschedule() { $this->view = 'json'; $commit = true; if (!$this->retrieveCurrentBean('Save')) { return; } $_REQUEST['parent_name'] = $this->currentBean->parent_name; $dateField = "date_start"; if ($this->currentBean->module_dir == "Tasks") { $dateField = "date_due"; } if (!empty($_REQUEST['calendar_style']) && $_REQUEST['calendar_style'] == "basic") { global $timedate; $date = $timedate->asUserDate($timedate->fromUser($_REQUEST['datetime'])); $time = $timedate->asUserTime($timedate->fromUser($this->currentBean->{$dateField})); $_REQUEST['datetime'] = $date . ' ' . $time; } $_POST[$dateField] = $_REQUEST['datetime']; if ($this->currentBean->module_dir == "Tasks" && !empty($this->currentBean->date_start)) { if ($GLOBALS['timedate']->fromUser($_POST['date_due'])->ts < $GLOBALS['timedate']->fromUser($this->currentBean->date_start)->ts) { $this->view_object_map['jsonData'] = array('access' => 'no', 'errorMessage' => $GLOBALS['mod_strings']['LBL_DATE_END_ERROR']); $commit = false; } } if ($commit) { require_once 'include/formbase.php'; $this->currentBean = populateFromPost("", $this->currentBean); $this->currentBean->save(); $this->currentBean->retrieve($_REQUEST['record']); $this->view_object_map['jsonData'] = CalendarUtils::getBeanDataArray($this->currentBean); } }