summaryrefslogtreecommitdiff
path: root/program/include/rcube_output_html.php
diff options
context:
space:
mode:
Diffstat (limited to 'program/include/rcube_output_html.php')
-rw-r--r--program/include/rcube_output_html.php31
1 files changed, 30 insertions, 1 deletions
diff --git a/program/include/rcube_output_html.php b/program/include/rcube_output_html.php
index a071ee354..2743e7705 100644
--- a/program/include/rcube_output_html.php
+++ b/program/include/rcube_output_html.php
@@ -400,7 +400,7 @@ class rcube_output_html extends rcube_output
'line' => __LINE__,
'file' => __FILE__,
'message' => 'Error loading template for '.$realname
- ), true, true);
+ ), true, $write);
return false;
}
@@ -698,6 +698,11 @@ class rcube_output_html extends rcube_output
}
break;
+ // frame
+ case 'frame':
+ return $this->frame($attrib);
+ break;
+
// show a label
case 'label':
if ($attrib['name'] || $attrib['command']) {
@@ -1275,6 +1280,30 @@ class rcube_output_html extends rcube_output
}
+ /**
+ * Returns iframe object, registers some related env variables
+ *
+ * @param array $attrib HTML attributes
+ *
+ * @return string IFRAME element
+ */
+ public function frame($attrib)
+ {
+ if (!$attrib['id']) {
+ $attrib['id'] = 'rcmframe';
+ }
+
+ if (!$attrib['name']) {
+ $attrib['name'] = $attrib['id'];
+ }
+
+ $this->set_env('contentframe', $attrib['id']);
+ $this->set_env('blankpage', $attrib['src'] ? $this->abs_url($attrib['src']) : 'program/resources/blank.gif');
+
+ return html::iframe($attrib);
+ }
+
+
/* ************* common functions delivering gui objects ************** */