Ejemplo n.º 1
0
 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;
     }
 }
Ejemplo n.º 2
0
 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();
     }
 }