- Added mailto: protocol handler registration link in User Preferences (#1486580)

pull/1/head
alecpl 13 years ago
parent bf9ddec776
commit 06c990ead2

@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail
===========================
- Added mailto: protocol handler registration link in User Preferences (#1486580)
- Handle identity details box with an iframe (#1487020)
- Fix issue where some text from original message was missing on reply (#1488340)
- Fix parse errors in DDL files for MS SQL Server

@ -4849,7 +4849,7 @@ function rcube_webmail()
return true;
};
this.update_identity_row = function(id, name, add)
{
var row, col, list = this.identity_list,
@ -6316,6 +6316,32 @@ function rcube_webmail()
}
};
this.mailto_handler_uri = function()
{
return location.href.split('?')[0] + '?_task=mail&_action=compose&_to=%s';
};
this.register_protocol_handler = function(name)
{
try {
window.navigator.registerProtocolHandler('mailto', this.mailto_handler_uri(), name);
}
catch(e) {};
};
this.check_protocol_handler = function(name, elem)
{
var nav = window.navigator;
if (!nav
|| (typeof nav.registerProtocolHandler != 'function')
|| ((typeof nav.isProtocolHandlerRegistered == 'function')
&& nav.isProtocolHandlerRegistered('mailto', this.mailto_handler_uri()) == 'registered')
)
$(elem).addClass('disabled');
else
$(elem).click(function() { rcmail.register_protocol_handler(name); return false; });
};
} // end object rcube_webmail

@ -354,18 +354,18 @@ $labels['importtext'] = 'You can upload contacts from an existing address book.<
$labels['done'] = 'Done';
// settings
$labels['settingsfor'] = 'Settings for';
$labels['settingsfor'] = 'Settings for';
$labels['about'] = 'About';
$labels['preferences'] = 'Preferences';
$labels['userpreferences'] = 'User preferences';
$labels['editpreferences'] = 'Edit user preferences';
$labels['preferences'] = 'Preferences';
$labels['userpreferences'] = 'User preferences';
$labels['editpreferences'] = 'Edit user preferences';
$labels['identities'] = 'Identities';
$labels['manageidentities'] = 'Manage identities for this account';
$labels['newidentity'] = 'New identity';
$labels['identities'] = 'Identities';
$labels['manageidentities'] = 'Manage identities for this account';
$labels['newidentity'] = 'New identity';
$labels['newitem'] = 'New item';
$labels['edititem'] = 'Edit item';
$labels['newitem'] = 'New item';
$labels['edititem'] = 'Edit item';
$labels['preferhtml'] = 'Display HTML';
$labels['defaultcharset'] = 'Default Character Set';
@ -422,6 +422,7 @@ $labels['checkallfolders'] = 'Check all folders for new messages';
$labels['displaynext'] = 'After message delete/move display the next message';
$labels['defaultfont'] = 'Default font of HTML message';
$labels['mainoptions'] = 'Main Options';
$labels['browseroptions'] = 'Browser Options';
$labels['section'] = 'Section';
$labels['maintenance'] = 'Maintenance';
$labels['newmessage'] = 'New Message';
@ -451,6 +452,7 @@ $labels['spellcheckignoresyms'] = 'Ignore words with symbols';
$labels['spellcheckignorenums'] = 'Ignore words with numbers';
$labels['spellcheckignorecaps'] = 'Ignore words with all letters capitalized';
$labels['addtodict'] = 'Add to dictionary';
$labels['mailtoprotohandler'] = 'Register protocol handler for mailto: links';
$labels['folder'] = 'Folder';
$labels['folders'] = 'Folders';

@ -51,8 +51,13 @@ function rcmail_user_prefs_form($attrib)
if ($option['advanced'])
$table->set_row_attribs('advanced');
$table->add('title', $option['title']);
$table->add(null, $option['content']);
if (isset($option['title'])) {
$table->add('title', $option['title']);
$table->add(null, $option['content']);
}
else {
$table->add(array('colspan' => 2), $option['content']);
}
}
$out .= html::tag('fieldset', null, html::tag('legend', null, $block['name']) . $table->show($attrib));

@ -159,7 +159,8 @@ function rcmail_user_prefs($current=null)
case 'general':
$blocks = array(
'main' => array('name' => Q(rcube_label('mainoptions'))),
'main' => array('name' => Q(rcube_label('mainoptions'))),
'browser' => array('name' => Q(rcube_label('browseroptions'))),
);
// language selection
@ -263,6 +264,16 @@ function rcmail_user_prefs($current=null)
}
}
$product_name = $RCMAIL->config->get('product_name', 'Roundcube Webmail');
$RCMAIL->output->add_script(sprintf("%s.check_protocol_handler('%s', '#mailtoprotohandler');",
JS_OBJECT_NAME, JQ($product_name)), 'foot');
$blocks['browser']['options']['mailtoprotohandler'] = array(
'content' => html::a(array(
'href' => '#',
'id' => 'mailtoprotohandler'), Q(rcube_label('mailtoprotohandler'))),
);
break;
// Mailbox view (mail screen)

@ -759,7 +759,8 @@ a.rcmContactAddress:hover
opacity: 0.8;
}
.disabled
.disabled,
a.disabled
{
color: #999;
}

@ -87,11 +87,6 @@
text-align: right;
}
input.disabled
{
color: #999999;
}
#bottomboxes
{
position: absolute;

Loading…
Cancel
Save