Bugfix #47: Navigation on initial view

This commit is contained in:
Thorsten Sommer 2015-07-10 14:37:33 +02:00
parent 86121b733d
commit 44b236e2ef

View File

@ -39,13 +39,21 @@ func HandlerWebLog(response http.ResponseWriter, request *http.Request) {
data.Sender = DeviceDatabase.ReadSenderNames() data.Sender = DeviceDatabase.ReadSenderNames()
data.MessageNames = DeviceDatabase.ReadMessageNames() data.MessageNames = DeviceDatabase.ReadMessageNames()
// Get the current page as number:
currentPage := request.FormValue(`CurrentPage`)
if currentPage != `` {
if number, err := strconv.Atoi(currentPage); err != nil {
Log.LogFull(senderName, LM.CategorySYSTEM, LM.LevelERROR, LM.SeverityNone, LM.ImpactNone, LM.MessageNameEXECUTE, `Was not able to parse the page number.`, err.Error())
} else {
currentPageNumber = number
}
}
// To less parameters? // To less parameters?
if countParameters < 9 { if countParameters < 9 {
// Initial view => first page (latest logs) // Initial view => first page (latest logs)
data.Events, lastPageNumber = readLatest() data.Events, lastPageNumber = readLatest()
data.SetLiveView = true data.SetLiveView = true
data.CurrentPage = `1`
data.LastPage = fmt.Sprintf("%d", lastPageNumber)
if currentPageNumber+1 > lastPageNumber { if currentPageNumber+1 > lastPageNumber {
data.NextPage = fmt.Sprintf("%d", lastPageNumber) data.NextPage = fmt.Sprintf("%d", lastPageNumber)
} else { } else {
@ -53,6 +61,13 @@ func HandlerWebLog(response http.ResponseWriter, request *http.Request) {
} }
data.PreviousPage = `1` data.PreviousPage = `1`
data.CurrentLevel = `*`
data.CurrentTimeRange = `*`
data.CurrentCategory = `*`
data.CurrentImpact = `*`
data.CurrentSeverity = `*`
data.CurrentMessageName = `*`
data.CurrentSender = `*`
} else { } else {
// Case: Custom view // Case: Custom view
currentLevel := request.FormValue(`Level`) currentLevel := request.FormValue(`Level`)
@ -62,18 +77,8 @@ func HandlerWebLog(response http.ResponseWriter, request *http.Request) {
currentSeverity := request.FormValue(`Severity`) currentSeverity := request.FormValue(`Severity`)
currentMessageName := request.FormValue(`MSGName`) currentMessageName := request.FormValue(`MSGName`)
currentSender := request.FormValue(`Sender`) currentSender := request.FormValue(`Sender`)
currentPage := request.FormValue(`CurrentPage`)
currentLiveView := request.FormValue(`LiveView`) currentLiveView := request.FormValue(`LiveView`)
// Get the current page as number:
if currentPage != `` {
if number, err := strconv.Atoi(currentPage); err != nil {
Log.LogFull(senderName, LM.CategorySYSTEM, LM.LevelERROR, LM.SeverityNone, LM.ImpactNone, LM.MessageNameEXECUTE, `Was not able to parse the page number.`, err.Error())
} else {
currentPageNumber = number
}
}
// Store the events for the template: // Store the events for the template:
data.Events, lastPageNumber = readCustom(currentTimeRange, currentLevel, currentCategory, currentImpact, currentSeverity, currentMessageName, currentSender, currentPageNumber) data.Events, lastPageNumber = readCustom(currentTimeRange, currentLevel, currentCategory, currentImpact, currentSeverity, currentMessageName, currentSender, currentPageNumber)
@ -126,6 +131,7 @@ func HandlerWebLog(response http.ResponseWriter, request *http.Request) {
} else { } else {
data.CurrentSender = `*` data.CurrentSender = `*`
} }
}
// Calculate the current, last, previous and next page: // Calculate the current, last, previous and next page:
if currentPage != `` { if currentPage != `` {
@ -153,7 +159,6 @@ func HandlerWebLog(response http.ResponseWriter, request *http.Request) {
} }
data.PreviousPage = `1` data.PreviousPage = `1`
} }
}
// Write the MIME type and execute the template: // Write the MIME type and execute the template:
MimeTypes.Write2HTTP(response, MimeTypes.TypeWebHTML) MimeTypes.Write2HTTP(response, MimeTypes.TypeWebHTML)