The minimum version is:
def end_call(page_ident, page_type, skicall): return
This function is called at the end of a call prior to filling the template (or other type of returned page) with data, and gives you the opportunity to set any further fields in a PageData object, and to optionally set a session cookie string.
The PageData object must be used to update skicall, so if you have a Pagedata instance pd, you would use:
And this would ensure all the data inserted into pd is set into the Template page returned to the caller.
page_ident is the ident of the page being returned. A tuple ('projname', pagenumber), this is usually the ident of the template, css etc., page but can also be the ident of one of the responders which create a dynamic page (see page_type).
page_type is a string giving the type of the page returned, typically 'TemplatePage', 'CSS', 'SVG', 'FilePage' or 'JSON'. Certain responders create their own pages and for these the page_type will be the responder type, one of 'SubmitJSON', 'SubmitPlainText', 'SubmitCSS', 'SubmitIterator'.
This function should return either None, or optionally a session cookie string. This string will be returned with the next call to this web site in the skicall.received_cookies dictionary with key being the project name.
Do not raise a GoTo exception here. Unlike the 'submit_data' function, the results of this function are passed directly to the page given by page_ident.
If a FailPage exception is raised, the error will be shown on the page given by page_ident.