/** * Get the html object for a screen * @param AppBuilderAPIElement $screen * @return array * @internal used by appbuilder */ public static function getElementAsHTMLObj($screen, $settings = null, $objs = null) { if (!$settings) { $settings = array(); } if (!isset($settings['emailPreview'])) { $settings['emailPreview'] = isset($_REQUEST['emailPreview']) ? $_REQUEST['emailPreview'] === 'true' : false; } if (!isset($settings['telPreview'])) { $settings['telPreview'] = isset($_REQUEST['telPreview']) ? $_REQUEST['telPreview'] === 'true' : false; } $settings['fetchscreen'] = $screen; $data['settings'] = $settings; $xml = self::getNewXMLDocument(); $s = $screen->getHTMLNode($xml, $data); if (isset($objs)) { foreach ($objs as $obj) { $obj->getHTMLNode($xml, $data); } } $data['settings']['main'] = (isset($data['settings']['prefix']) ? $data['settings']['prefix'] : '') . $screen->getId(); $data['settings']['maintype'] = $screen instanceof AppBuilderAPIApp ? 'app' : 'screen'; unset($data['settings']['fetchscreen']); unset($data['settings']['emailPreview']); unset($data['settings']['telPreview']); return $data; }