public function postSuggestion() { $this->loadSuggestion(); if ($this->event->post()) { if (PHPWS_Core::isPosted()) { $this->title = dgettext('calendar', 'Duplicate suggestion.'); $this->content = dgettext('calendar', 'You may try to suggest a different event.'); return true; } if (!isset($_SESSION['Calendar_Total_Suggestions'])) { $_SESSION['Calendar_Total_Suggestions'] = 0; } if (!$this->allowSuggestion()) { $this->title = dgettext('calendar', 'Sorry'); $this->content = dgettext('calendar', 'You have exceeded your allowed event submissions.'); return true; } $result = $this->event->save(); $_SESSION['Calendar_Total_Suggestions']++; if (PHPWS_Error::isError($result)) { PHPWS_Error::log($result); if (PHPWS_Calendar::isJS()) { javascript('close_refresh', array('timeout' => 5, 'refresh' => 0)); Layout::nakedDisplay('Event suggestion failed to save. Try again later.'); exit; } else { $this->title = dgettext('calendar', 'Sorry'); $this->content = dgettext('calendar', 'Unable to save your event suggestion.'); return true; } } else { if (PHPWS_Calendar::isJS()) { javascript('alert', array('content' => dgettext('calendar', 'Event submitted for approval.'))); javascript('close_refresh', array('timeout' => 1, 'refresh' => 0)); Layout::nakedDisplay(); exit; } else { $this->title = dgettext('calendar', 'Event saved'); $this->content = dgettext('calendar', 'An administrator will review your submission. Thank you.'); return true; } } } else { return false; } }
public function postSchedule() { $default_public = PHPWS_Settings::get('calendar', 'public_schedule'); if ($this->calendar->schedule->post()) { if (!$this->allowSchedulePost()) { Current_User::disallow(); return; } $result = $this->calendar->schedule->save(); if (PHPWS_Error::isError($result)) { PHPWS_Error::log($result); if (PHPWS_Calendar::isJS()) { $this->sendMessage(dgettext('calendar', 'An error occurred when saving your schedule.'), null, false); javascript('close_refresh'); Layout::nakedDisplay(); exit; } else { $this->sendMessage(dgettext('calendar', 'An error occurred when saving your schedule.'), 'aop=schedules'); } } else { if ($this->calendar->schedule->public && $default_public < 1) { PHPWS_Settings::set('calendar', 'public_schedule', $this->calendar->schedule->id); PHPWS_Settings::save('calendar'); } if (!$this->calendar->schedule->public && $this->calendar->schedule->id == $default_public) { PHPWS_Settings::set('calendar', 'public_schedule', 0); PHPWS_Settings::save('calendar'); } if (PHPWS_Calendar::isJS()) { javascript('close_refresh'); Layout::nakedDisplay(); exit; } else { $this->sendMessage(dgettext('calendar', 'Schedule saved.'), 'aop=schedules'); } } } else { $this->message = $this->calendar->schedule->_error; $this->editSchedule(); } }