diff options
Diffstat (limited to 'jobedit.go')
| -rw-r--r-- | jobedit.go | 28 | 
1 files changed, 20 insertions, 8 deletions
| @@ -53,11 +53,22 @@ func chronToSchedTL(chron chronos.Chronos, u model.User) scheduleTpldata {  	return schedule  } -// TODO: Make these constants variable (config file or something...) -const ( -	maxSchedules = 10 -	jobsLimit    = 100 -) +var maxSchedules, jobsLimit int + +func initLimits() { +	schedules, err := conf.GetInt("limits", "schedules") +	if err != nil { +		log.Fatalf("Could not read config limits.schedules: %s", err) +	} + +	jobs, err := conf.GetInt("limits", "jobs") +	if err != nil { +		log.Fatalf("Could not read config limits.jobs: %s", err) +	} + +	maxSchedules = int(schedules) +	jobsLimit = int(jobs) +}  const bestTimeFmtEver = "2006-01-02 15:04:05" @@ -65,16 +76,17 @@ type jobeditTpldata struct {  	Error, Success          string  	Fatal                   bool  	JobID, Subject, Content string -	Schedules               [maxSchedules]scheduleTpldata +	Schedules               []scheduleTpldata  }  func (jt *jobeditTpldata) fillFromJob(job model.Job, u model.User) {  	jt.JobID = job.ID().String()  	jt.Subject = job.Subject()  	jt.Content = string(job.Content()) +	jt.Schedules = make([]scheduleTpldata, maxSchedules)  	for i, chron := range job.Chronos() { -		if i == 10 { +		if i == maxSchedules {  			log.Printf("Job %s has more than %d Chronos entries!", job.ID(), maxSchedules)  			break  		} @@ -193,7 +205,7 @@ func jobedit(user model.User, sess *sessions.Session, req *http.Request) (interf  		return &jobeditTpldata{Error: "You need to be logged in to do that.", Fatal: true}, user  	} -	outdata := new(jobeditTpldata) +	outdata := &jobeditTpldata{Schedules: make([]scheduleTpldata, maxSchedules)}  	// Try to load job, if given  	_id := mux.Vars(req)["ID"] | 
