summaryrefslogtreecommitdiff
path: root/program/include/main.inc
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2006-07-19 19:36:35 +0000
committerthomascube <thomas@roundcube.net>2006-07-19 19:36:35 +0000
commit078adf9da77f7ca6a3c02f9ef71be687aedb8856 (patch)
tree5a1c53d1835d4941ae4be4694ee62ef4dac8bf33 /program/include/main.inc
parent66e2bfa5507ebbbc73dc5fcabe511cd473e0c62a (diff)
Improved usability (Ticket #1483807) and HTML validity; applied patch #1328032; fixed bug #1443200
Diffstat (limited to 'program/include/main.inc')
-rw-r--r--program/include/main.inc9
1 files changed, 7 insertions, 2 deletions
diff --git a/program/include/main.inc b/program/include/main.inc
index ef2ecbfe8..e77df19e3 100644
--- a/program/include/main.inc
+++ b/program/include/main.inc
@@ -1274,6 +1274,9 @@ function rcube_button($attrib)
static $sa_buttons = array();
static $s_button_count = 100;
+ // these commands can be called directly via url
+ $a_static_commands = array('compose', 'list');
+
$skin_path = $CONFIG['skin_path'];
if (!($attrib['command'] || $attrib['name']))
@@ -1352,9 +1355,11 @@ function rcube_button($attrib)
$attrib['imagesel'] ? $skin_path.$attrib['imagesel'] : $attrib['classsel'],
$attrib['imageover'] ? $skin_path.$attrib['imageover'] : ''));
- // make valid href to task buttons
+ // make valid href to specific buttons
if (in_array($attrib['command'], $MAIN_TASKS))
- $attrib['href'] = ereg_replace('_task=[a-z]+', '_task='.$attrib['command'], $COMM_PATH);
+ $attrib['href'] = htmlentities(ereg_replace('_task=[a-z]+', '_task='.$attrib['command'], $COMM_PATH));
+ else if (in_array($attrib['command'], $a_static_commands))
+ $attrib['href'] = htmlentities($COMM_PATH.'&_action='.$attrib['command']);
}
// overwrite attributes