예제 #1
0
                $reminder->set_value('reminderRecuringValue', $_POST["reminder_recuring_value"]);
            }
            $reminder->set_value('reminderAdvNoticeSent', '0');
            if (!$_POST["reminder_advnotice_value"]) {
                $reminder->set_value('reminderAdvNoticeInterval', 'No');
                $reminder->set_value('reminderAdvNoticeValue', '0');
            } else {
                $reminder->set_value('reminderAdvNoticeInterval', $_POST["reminder_advnotice_interval"]);
                $reminder->set_value('reminderAdvNoticeValue', $_POST["reminder_advnotice_value"]);
            }
            $reminder->set_value('reminderSubject', $_POST["reminder_subject"]);
            $reminder->set_value('reminderContent', rtrim($_POST["reminder_content"]));
            $reminder->set_value('reminderActive', sprintf("%d", $_POST["reminderActive"]));
            $reminder->save();
            $reminder->update_recipients($recipient_keys);
            $returnToParent = "reminder";
            $reminderID = $reminder->get_id();
            $TPL["message_good"][] = "Reminder saved.";
        } else {
            if ($_POST["reminder_delete"] && $_POST["reminder_id"]) {
                $reminder = new reminder();
                $reminder->set_id($_POST["reminder_id"]);
                $reminder->delete();
            }
        }
        $headers = array("client" => $TPL["url_alloc_client"] . "clientID=" . $parentID . "&sbs_link=reminders", "project" => $TPL["url_alloc_project"] . "projectID=" . $parentID . "&sbs_link=reminders", "task" => $TPL["url_alloc_task"] . "taskID=" . $parentID . "&sbs_link=reminders", "home" => $TPL["url_alloc_home"], "calendar" => $TPL["url_alloc_taskCalendar"] . "personID=" . $_POST["personID"], "list" => $TPL["url_alloc_reminderList"], "reminder" => $TPL["url_alloc_reminder"] . "reminderID=" . $reminderID . "&step=3", "" => $TPL["url_alloc_reminderList"]);
        alloc_redirect($headers[$returnToParent]);
        break;
    default:
        alloc_error("Unrecognized state");
}
예제 #2
0
 function add_notification($tokenActionID, $maxUsed, $name, $desc, $recipients, $datetime = false)
 {
     $current_user =& singleton("current_user");
     $token = new token();
     $token->set_value("tokenEntity", "task");
     $token->set_value("tokenEntityID", $this->get_id());
     $token->set_value("tokenActionID", $tokenActionID);
     $token->set_value("tokenActive", 1);
     $token->set_value("tokenMaxUsed", $maxUsed);
     $token->set_value("tokenCreatedBy", $current_user->get_id());
     $token->set_value("tokenCreatedDate", date("Y-m-d H:i:s"));
     $hash = $token->generate_hash();
     $token->set_value("tokenHash", $hash);
     $token->save();
     if ($token->get_id()) {
         $reminder = new reminder();
         $reminder->set_value("reminderType", "task");
         $reminder->set_value("reminderLinkID", $this->get_id());
         $reminder->set_value("reminderHash", $hash);
         $reminder->set_value("reminderSubject", $name);
         $reminder->set_value("reminderContent", $desc);
         if ($datetime) {
             $reminder->set_value("reminderTime", $datetime);
         }
         $reminder->save();
         if ($reminder->get_id()) {
             foreach ($recipients as $row) {
                 $reminderRecipient = new reminderRecipient();
                 $reminderRecipient->set_value("reminderID", $reminder->get_id());
                 $reminderRecipient->set_value($row["field"], $row["who"]);
                 $reminderRecipient->save();
             }
         }
     }
 }