# {py:mod}`arelle.CntlrWebMain` ```{py:module} arelle.CntlrWebMain ``` ```{autodoc2-docstring} arelle.CntlrWebMain :allowtitles: ``` ## Module Contents ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`getCntlr ` - ```{autodoc2-docstring} arelle.CntlrWebMain.getCntlr :summary: ``` * - {py:obj}`setCntlr ` - ```{autodoc2-docstring} arelle.CntlrWebMain.setCntlr :summary: ``` * - {py:obj}`getLogHandler ` - ```{autodoc2-docstring} arelle.CntlrWebMain.getLogHandler :summary: ``` * - {py:obj}`getRuntimeOptions ` - ```{autodoc2-docstring} arelle.CntlrWebMain.getRuntimeOptions :summary: ``` * - {py:obj}`setRuntimeOptions ` - ```{autodoc2-docstring} arelle.CntlrWebMain.setRuntimeOptions :summary: ``` * - {py:obj}`startWebserver ` - ```{autodoc2-docstring} arelle.CntlrWebMain.startWebserver :summary: ``` * - {py:obj}`cgiInterface ` - ```{autodoc2-docstring} arelle.CntlrWebMain.cgiInterface :summary: ``` * - {py:obj}`login_form ` - ```{autodoc2-docstring} arelle.CntlrWebMain.login_form :summary: ``` * - {py:obj}`login_submit ` - ```{autodoc2-docstring} arelle.CntlrWebMain.login_submit :summary: ``` * - {py:obj}`checkLogin ` - ```{autodoc2-docstring} arelle.CntlrWebMain.checkLogin :summary: ``` * - {py:obj}`logout ` - ```{autodoc2-docstring} arelle.CntlrWebMain.logout :summary: ``` * - {py:obj}`arelleIcon ` - ```{autodoc2-docstring} arelle.CntlrWebMain.arelleIcon :summary: ``` * - {py:obj}`image ` - ```{autodoc2-docstring} arelle.CntlrWebMain.image :summary: ``` * - {py:obj}`validation ` - ```{autodoc2-docstring} arelle.CntlrWebMain.validation :summary: ``` * - {py:obj}`runOptionsAndGetResult ` - ```{autodoc2-docstring} arelle.CntlrWebMain.runOptionsAndGetResult :summary: ``` * - {py:obj}`diff ` - ```{autodoc2-docstring} arelle.CntlrWebMain.diff :summary: ``` * - {py:obj}`configure ` - ```{autodoc2-docstring} arelle.CntlrWebMain.configure :summary: ``` * - {py:obj}`stopWebServer ` - ```{autodoc2-docstring} arelle.CntlrWebMain.stopWebServer :summary: ``` * - {py:obj}`testTest ` - ```{autodoc2-docstring} arelle.CntlrWebMain.testTest :summary: ``` * - {py:obj}`quickbooksServer ` - ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksServer :summary: ``` * - {py:obj}`quickbooksGLrequest ` - ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksGLrequest :summary: ``` * - {py:obj}`quickbooksGLresponse ` - ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksGLresponse :summary: ``` * - {py:obj}`quickbooksWebPage ` - ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksWebPage :summary: ``` * - {py:obj}`localhostCertificate ` - ```{autodoc2-docstring} arelle.CntlrWebMain.localhostCertificate :summary: ``` * - {py:obj}`helpREST ` - ```{autodoc2-docstring} arelle.CntlrWebMain.helpREST :summary: ``` * - {py:obj}`about ` - ```{autodoc2-docstring} arelle.CntlrWebMain.about :summary: ``` * - {py:obj}`indexPageREST ` - ```{autodoc2-docstring} arelle.CntlrWebMain.indexPageREST :summary: ``` * - {py:obj}`indexPageCGI ` - ```{autodoc2-docstring} arelle.CntlrWebMain.indexPageCGI :summary: ``` * - {py:obj}`htmlBody ` - ```{autodoc2-docstring} arelle.CntlrWebMain.htmlBody :summary: ``` * - {py:obj}`tableRows ` - ```{autodoc2-docstring} arelle.CntlrWebMain.tableRows :summary: ``` * - {py:obj}`errorReport ` - ```{autodoc2-docstring} arelle.CntlrWebMain.errorReport :summary: ``` * - {py:obj}`multipartResponse ` - ```{autodoc2-docstring} arelle.CntlrWebMain.multipartResponse :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`_ ` - ```{autodoc2-docstring} arelle.CntlrWebMain._ :summary: ``` * - {py:obj}`Options ` - ```{autodoc2-docstring} arelle.CntlrWebMain.Options :summary: ``` * - {py:obj}`_os_pid ` - ```{autodoc2-docstring} arelle.CntlrWebMain._os_pid :summary: ``` * - {py:obj}`GETorPOST ` - ```{autodoc2-docstring} arelle.CntlrWebMain.GETorPOST :summary: ``` * - {py:obj}`GET ` - ```{autodoc2-docstring} arelle.CntlrWebMain.GET :summary: ``` * - {py:obj}`POST ` - ```{autodoc2-docstring} arelle.CntlrWebMain.POST :summary: ``` * - {py:obj}`_CNTLR ` - ```{autodoc2-docstring} arelle.CntlrWebMain._CNTLR :summary: ``` * - {py:obj}`_RUNTIME_OPTIONS ` - ```{autodoc2-docstring} arelle.CntlrWebMain._RUNTIME_OPTIONS :summary: ``` * - {py:obj}`user ` - ```{autodoc2-docstring} arelle.CntlrWebMain.user :summary: ``` * - {py:obj}`validationOptions ` - ```{autodoc2-docstring} arelle.CntlrWebMain.validationOptions :summary: ``` * - {py:obj}`validationKeyVarName ` - ```{autodoc2-docstring} arelle.CntlrWebMain.validationKeyVarName :summary: ``` * - {py:obj}`supportedViews ` - ```{autodoc2-docstring} arelle.CntlrWebMain.supportedViews :summary: ``` ```` ### API ````{py:data} _ :canonical: arelle.CntlrWebMain._ :type: arelle.typing.TypeGetText :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain._ ``` ```` ````{py:data} Options :canonical: arelle.CntlrWebMain.Options :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain.Options ``` ```` ````{py:data} _os_pid :canonical: arelle.CntlrWebMain._os_pid :value: > 'getpid(...)' ```{autodoc2-docstring} arelle.CntlrWebMain._os_pid ``` ```` ````{py:data} GETorPOST :canonical: arelle.CntlrWebMain.GETorPOST :value: > ('GET', 'POST') ```{autodoc2-docstring} arelle.CntlrWebMain.GETorPOST ``` ```` ````{py:data} GET :canonical: arelle.CntlrWebMain.GET :value: > 'GET' ```{autodoc2-docstring} arelle.CntlrWebMain.GET ``` ```` ````{py:data} POST :canonical: arelle.CntlrWebMain.POST :value: > 'POST' ```{autodoc2-docstring} arelle.CntlrWebMain.POST ``` ```` ````{py:data} _CNTLR :canonical: arelle.CntlrWebMain._CNTLR :type: arelle.CntlrCmdLine.CntlrCmdLine | None :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain._CNTLR ``` ```` ````{py:function} getCntlr() -> arelle.CntlrCmdLine.CntlrCmdLine :canonical: arelle.CntlrWebMain.getCntlr ```{autodoc2-docstring} arelle.CntlrWebMain.getCntlr ``` ```` ````{py:function} setCntlr(cntlr: arelle.CntlrCmdLine.CntlrCmdLine) -> None :canonical: arelle.CntlrWebMain.setCntlr ```{autodoc2-docstring} arelle.CntlrWebMain.setCntlr ``` ```` ````{py:function} getLogHandler() -> arelle.logging.handlers.LogToBufferHandler.LogToBufferHandler :canonical: arelle.CntlrWebMain.getLogHandler ```{autodoc2-docstring} arelle.CntlrWebMain.getLogHandler ``` ```` ````{py:data} _RUNTIME_OPTIONS :canonical: arelle.CntlrWebMain._RUNTIME_OPTIONS :type: arelle.RuntimeOptions.RuntimeOptions | None :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain._RUNTIME_OPTIONS ``` ```` ````{py:function} getRuntimeOptions() -> arelle.RuntimeOptions.RuntimeOptions :canonical: arelle.CntlrWebMain.getRuntimeOptions ```{autodoc2-docstring} arelle.CntlrWebMain.getRuntimeOptions ``` ```` ````{py:function} setRuntimeOptions(runtimeOptions: arelle.RuntimeOptions.RuntimeOptions) -> None :canonical: arelle.CntlrWebMain.setRuntimeOptions ```{autodoc2-docstring} arelle.CntlrWebMain.setRuntimeOptions ``` ```` ````{py:function} startWebserver(cntlr: arelle.CntlrCmdLine.CntlrCmdLine, options: arelle.RuntimeOptions.RuntimeOptions) -> arelle.webserver.bottle.Bottle | None :canonical: arelle.CntlrWebMain.startWebserver ```{autodoc2-docstring} arelle.CntlrWebMain.startWebserver ``` ```` ````{py:function} cgiInterface(cgiAppPath: str) -> str | arelle.webserver.bottle.HTTPResponse :canonical: arelle.CntlrWebMain.cgiInterface ```{autodoc2-docstring} arelle.CntlrWebMain.cgiInterface ``` ```` ````{py:function} login_form() -> str :canonical: arelle.CntlrWebMain.login_form ```{autodoc2-docstring} arelle.CntlrWebMain.login_form ``` ```` ````{py:function} login_submit() -> str :canonical: arelle.CntlrWebMain.login_submit ```{autodoc2-docstring} arelle.CntlrWebMain.login_submit ``` ```` ````{py:data} user :canonical: arelle.CntlrWebMain.user :type: str | None :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain.user ``` ```` ````{py:function} checkLogin(_user: str | None, _password: str | None) -> bool :canonical: arelle.CntlrWebMain.checkLogin ```{autodoc2-docstring} arelle.CntlrWebMain.checkLogin ``` ```` ````{py:function} logout() -> str :canonical: arelle.CntlrWebMain.logout ```{autodoc2-docstring} arelle.CntlrWebMain.logout ``` ```` ````{py:function} arelleIcon() -> arelle.webserver.bottle.HTTPResponse :canonical: arelle.CntlrWebMain.arelleIcon ```{autodoc2-docstring} arelle.CntlrWebMain.arelleIcon ``` ```` ````{py:function} image(imgFile: str) -> arelle.webserver.bottle.HTTPResponse :canonical: arelle.CntlrWebMain.image ```{autodoc2-docstring} arelle.CntlrWebMain.image ``` ```` ````{py:data} validationOptions :canonical: arelle.CntlrWebMain.validationOptions :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain.validationOptions ``` ```` ````{py:data} validationKeyVarName :canonical: arelle.CntlrWebMain.validationKeyVarName :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain.validationKeyVarName ``` ```` ````{py:data} supportedViews :canonical: arelle.CntlrWebMain.supportedViews :value: > None ```{autodoc2-docstring} arelle.CntlrWebMain.supportedViews ``` ```` ````{py:function} validation(file: str | None = None) -> str | bytes :canonical: arelle.CntlrWebMain.validation ```{autodoc2-docstring} arelle.CntlrWebMain.validation ``` ```` ````{py:function} runOptionsAndGetResult(options: arelle.RuntimeOptions.RuntimeOptions, media: str, viewFile: arelle.FileSource.FileNamedStringIO | None, sourceZipStream: arelle.FileSource.FileNamedStringIO | None = None) -> str | bytes :canonical: arelle.CntlrWebMain.runOptionsAndGetResult ```{autodoc2-docstring} arelle.CntlrWebMain.runOptionsAndGetResult ``` ```` ````{py:function} diff() -> str :canonical: arelle.CntlrWebMain.diff ```{autodoc2-docstring} arelle.CntlrWebMain.diff ``` ```` ````{py:function} configure() -> str :canonical: arelle.CntlrWebMain.configure ```{autodoc2-docstring} arelle.CntlrWebMain.configure ``` ```` ````{py:function} stopWebServer() -> str :canonical: arelle.CntlrWebMain.stopWebServer ```{autodoc2-docstring} arelle.CntlrWebMain.stopWebServer ``` ```` ````{py:function} testTest() -> str :canonical: arelle.CntlrWebMain.testTest ```{autodoc2-docstring} arelle.CntlrWebMain.testTest ``` ```` ````{py:function} quickbooksServer() -> str :canonical: arelle.CntlrWebMain.quickbooksServer ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksServer ``` ```` ````{py:function} quickbooksGLrequest(qbReport: str | None = None, file: str | None = None) -> str :canonical: arelle.CntlrWebMain.quickbooksGLrequest ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksGLrequest ``` ```` ````{py:function} quickbooksGLresponse() -> str | bytes :canonical: arelle.CntlrWebMain.quickbooksGLresponse ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksGLresponse ``` ```` ````{py:function} quickbooksWebPage() -> str :canonical: arelle.CntlrWebMain.quickbooksWebPage ```{autodoc2-docstring} arelle.CntlrWebMain.quickbooksWebPage ``` ```` ````{py:function} localhostCertificate() -> str :canonical: arelle.CntlrWebMain.localhostCertificate ```{autodoc2-docstring} arelle.CntlrWebMain.localhostCertificate ``` ```` ````{py:function} helpREST() -> str :canonical: arelle.CntlrWebMain.helpREST ```{autodoc2-docstring} arelle.CntlrWebMain.helpREST ``` ```` ````{py:function} about(arelleImgFile: str | None = None) -> str :canonical: arelle.CntlrWebMain.about ```{autodoc2-docstring} arelle.CntlrWebMain.about ``` ```` ````{py:function} indexPageREST() -> str :canonical: arelle.CntlrWebMain.indexPageREST ```{autodoc2-docstring} arelle.CntlrWebMain.indexPageREST ``` ```` ````{py:function} indexPageCGI() -> str :canonical: arelle.CntlrWebMain.indexPageCGI ```{autodoc2-docstring} arelle.CntlrWebMain.indexPageCGI ``` ```` ````{py:function} htmlBody(body: str, script: str = '') -> str :canonical: arelle.CntlrWebMain.htmlBody ```{autodoc2-docstring} arelle.CntlrWebMain.htmlBody ``` ```` ````{py:function} tableRows(lines: collections.abc.Iterable[str], header: str | None = None) -> str :canonical: arelle.CntlrWebMain.tableRows ```{autodoc2-docstring} arelle.CntlrWebMain.tableRows ``` ```` ````{py:function} errorReport(errors: list[str], media: str = 'html') -> str :canonical: arelle.CntlrWebMain.errorReport ```{autodoc2-docstring} arelle.CntlrWebMain.errorReport ``` ```` ````{py:function} multipartResponse(parts: tuple[tuple[str, str, str], ...]) -> str :canonical: arelle.CntlrWebMain.multipartResponse ```{autodoc2-docstring} arelle.CntlrWebMain.multipartResponse ``` ````