From 95fcc33472a34f4892f223d39452668467cb3129 Mon Sep 17 00:00:00 2001 From: thomascube Date: Sun, 21 Sep 2008 10:18:28 +0000 Subject: [PATCH] Separate method to create iframe tags (with a list of allowed attributes) --- program/include/html.php | 15 +++++++++++++++ program/steps/addressbook/func.inc | 2 +- program/steps/mail/func.inc | 6 +++--- program/steps/settings/identities.inc | 2 +- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/program/include/html.php b/program/include/html.php index 73b0b331e..2d0d90b5f 100644 --- a/program/include/html.php +++ b/program/include/html.php @@ -180,6 +180,21 @@ class html return self::tag('label', $attr, $cont, array_merge(self::$common_attrib, array('for'))); } + /** + * Derrived method to create + * + * @param mixed Hash array with tag attributes or string with frame source (src) + * @return string HTML code + * @see html::tag() + */ + public static function iframe($attr = null, $cont = null) + { + if (is_string($attr)) { + $attr = array('src' => $attr); + } + return self::tag('iframe', $attr, $cont, array_merge(self::$common_attrib, array('src','name','width','height','border','frameborder'))); + } + /** * Derrived method for line breaks * diff --git a/program/steps/addressbook/func.inc b/program/steps/addressbook/func.inc index 2172f9783..41995026d 100644 --- a/program/steps/addressbook/func.inc +++ b/program/steps/addressbook/func.inc @@ -156,7 +156,7 @@ function rcmail_contact_frame($attrib) $OUTPUT->set_env('contentframe', $attrib['name']); $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/blank.gif'); - return html::tag('iframe', $attrib); + return html::iframe($attrib); } diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc index 446984066..b6de0b83b 100644 --- a/program/steps/mail/func.inc +++ b/program/steps/mail/func.inc @@ -408,7 +408,7 @@ function rcmail_messagecontent_frame($attrib) $OUTPUT->set_env('contentframe', $attrib['id']); $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/blank.gif'); - return html::tag('iframe', $attrib); + return html::iframe($attrib); } @@ -1125,9 +1125,9 @@ function rcmail_message_part_frame($attrib) $part = $MESSAGE->mime_parts[asciiwords(get_input_value('_part', RCUBE_INPUT_GPC))]; $ctype_primary = strtolower($part->ctype_primary); - $attrib['src'] = Q('./?'.str_replace('_frame=', ($ctype_primary=='text' ? '_show=' : '_preload='), $_SERVER['QUERY_STRING'])); + $attrib['src'] = './?' . str_replace('_frame=', ($ctype_primary=='text' ? '_show=' : '_preload='), $_SERVER['QUERY_STRING']); - return html::tag('iframe', $attrib); + return html::iframe($attrib); } diff --git a/program/steps/settings/identities.inc b/program/steps/settings/identities.inc index 9d5af7b22..fded6c151 100644 --- a/program/steps/settings/identities.inc +++ b/program/steps/settings/identities.inc @@ -36,7 +36,7 @@ function rcmail_identity_frame($attrib) $OUTPUT->set_env('contentframe', $attrib['name']); - return html::tag('iframe', $attrib); + return html::iframe($attrib); } $OUTPUT->add_handler('identityframe', 'rcmail_identity_frame');