Ejemplo n.º 1
0
 static function get_form($method, $schedule)
 {
     if ($method == "define") {
         $title = t("Create a scheduled event");
         $button_text = t("Create");
     } else {
         $title = t("Update a scheduled event");
         $button_text = t("Update");
     }
     $id = empty($schedule->id) ? "" : "/{$schedule->id}";
     $form = new Forge("admin/schedule/{$method}{$id}", "", "post", array("id" => "g-{$method}-schedule"));
     $group = $form->group("schedule_group")->label($title);
     $group->input("schedule_name")->label(t("Description"))->id("g-schedule-name")->rules("required|length[0, 128]")->error_messages("required", t("You must provide a description"))->error_messages("length", t("Your description is too long"))->value(!empty($schedule->name) ? $schedule->name : "");
     list($dow, $display_time) = scheduler::format_time($schedule->next_run_datetime);
     $next = $group->group("run_date")->label(t("Scheduled Date"));
     $next->dropdown("dow")->label(t("Day"))->id("g-schedule-day")->rules("required")->options(array(t("Sunday"), t("Monday"), t("Tuesday"), t("Wednesday"), t("Thursday"), t("Friday"), t("Saturday")))->selected($dow);
     $next->input("time")->label(t("Hour"))->id("g-schedule-time")->rules("required")->error_messages("required", t("You must provide a time"))->error_messages("time_invalid", t("Invalid time"))->callback("scheduler::valid_time")->value($display_time);
     // need to set the top padding to zero on g-define-schedule li.g-error
     $group->dropdown("interval")->label(t("How often"))->id("g-schedule-frequency")->options(scheduler::intervals())->rules("required")->error_messages("required", t("You must provide an interval"))->selected(!empty($schedule->interval) ? $schedule->interval : "2419200");
     $group->hidden("callback")->value($schedule->task_callback);
     $group->submit("")->value($button_text);
     return $form;
 }