Renders a survey page editor showing the questions belonging to a survey page, with inline add/edit/delete buttons rendered via Jinja2 and process_text.
SURVEY — set as ReportType in def_report.
def Render(self, Param1="", Param2="", Param3="") -> str:
Param1 — page GUID or question GUID; used to resolve the parent survey page from def_survey_pages / def_survey_questions.Returns an HTML table listing all questions on the resolved page with their type, end-section flag, and required flag. Each row includes edit and delete buttons. An "Add question" button is shown in the header column.
prep_def_page(page_guid)Queries def_survey_questions for all questions on the given page (ordered by question_order) and stores the result in self.jinja_data for use in the Jinja2 template.
draw_versions_table()Returns the Jinja2 template string for the survey questions table, including button macro syntax for add, edit, and delete operations.
RenderInlinejs()Returns an inline <script> block containing a pre_active() confirmation dialog function used by delete buttons.
process_text to expand button macros and other placeholders.{button:...} macro format, which is expanded by process_text.