// Returns either an unbounded list of transactions, or the list of // transactions that involve a given address. // func HandleGetProcessedTransactions(ctx *web.Context, parms string) { cmd := ctx.Params["cmd"] adr := ctx.Params["address"] if cmd == "all" { list, err := Utility.DumpTransactions(nil) if err != nil { reportResults(ctx, err.Error(), false) return } reportResults(ctx, string(list), true) } else { adr, err := Wallet.LookupAddress("FA", adr) if err != nil { adr, err = Wallet.LookupAddress("EC", adr) if err != nil { reportResults(ctx, fmt.Sprintf("Could not understand address %s", adr), false) return } } badr, err := hex.DecodeString(adr) var adrs [][]byte adrs = append(adrs, badr) list, err := Utility.DumpTransactions(adrs) if err != nil { reportResults(ctx, err.Error(), false) return } reportResults(ctx, string(list), true) } }
// Returns either an unbounded list of transactions, or the list of // transactions that involve a given address. // // Return in JSON // func HandleGetProcessedTransactionsj(ctx *web.Context, parms string) { cmd := ctx.Params["cmd"] adr := ctx.Params["address"] sstart := ctx.Params["start"] send := ctx.Params["end"] if len(sstart) == 0 { sstart = "0" } if len(send) == 0 { send = "0" } start, err1 := strconv.ParseInt(sstart, 10, 32) end, err2 := strconv.ParseInt(send, 10, 32) if err1 != nil || err2 != nil { start = 0 end = 1000000000 } if cmd == "all" { list, err := Utility.DumpTransactionsJSON(nil, int(start), int(end)) if err != nil { reportResults(ctx, err.Error(), false) return } reportResults(ctx, string(list), true) } else { adr, err := Wallet.LookupAddress("FA", adr) if err != nil { adr, err = Wallet.LookupAddress("EC", adr) if err != nil { reportResults(ctx, fmt.Sprintf("Could not understand address %s", adr), false) return } } badr, err := hex.DecodeString(adr) var adrs [][]byte adrs = append(adrs, badr) list, err := Utility.DumpTransactionsJSON(adrs, int(start), int(end)) if err != nil { reportResults(ctx, err.Error(), false) return } reportResults(ctx, string(list), true) } }