Navigation Menu

Skip to content

Commit

Permalink
seperate export all/selected options in menu
Browse files Browse the repository at this point in the history
  • Loading branch information
johndoh committed Oct 17, 2012
1 parent b6df4df commit 518103e
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 10 deletions.
21 changes: 13 additions & 8 deletions program/js/app.js
Expand Up @@ -1064,12 +1064,15 @@ function rcube_webmail()
this.goto_url('import', (this.env.source ? '_target='+urlencode(this.env.source)+'&' : ''));
break;

case 'export':
case 'export-all':
if (this.contact_list.rowcount > 0) {
if (this.contact_list.get_selection().length > 0)
this.goto_url('export', { _source: this.env.source, _gid: this.env.group, _cid: this.contact_list.get_selection().join(',') });
else
this.goto_url('export', { _source: this.env.source, _gid: this.env.group, _search: this.env.search_request });
this.goto_url('export', { _source: this.env.source, _gid: this.env.group, _search: this.env.search_request });
}
break;

case 'export-selected':
if (this.contact_list.rowcount > 0) {
this.goto_url('export', { _source: this.env.source, _gid: this.env.group, _cid: this.contact_list.get_selection().join(',') });
}
break;

Expand Down Expand Up @@ -4030,6 +4033,7 @@ function rcube_webmail()
// thend we can enable the group-remove-selected command
this.enable_command('group-remove-selected', this.env.group && list.selection.length > 0);
this.enable_command('compose', this.env.group || list.selection.length > 0);
this.enable_command('export-selected', list.selection.length > 0);
this.enable_command('edit', id && writable);
this.enable_command('delete', list.selection.length && writable);

Expand Down Expand Up @@ -4291,7 +4295,7 @@ function rcube_webmail()

list.insert_row(row);

this.enable_command('export', list.rowcount > 0);
this.enable_command('export-all', list.rowcount > 0);
};

this.init_contact_form = function()
Expand Down Expand Up @@ -6120,7 +6124,8 @@ function rcube_webmail()
}
this.enable_command('compose', (uid && this.contact_list.rows[uid]));
this.enable_command('delete', 'edit', writable);
this.enable_command('export', (this.contact_list && this.contact_list.rowcount > 0));
this.enable_command('export-all', (this.contact_list && this.contact_list.rowcount > 0));
this.enable_command('export-selected', false);
}

case 'moveto':
Expand Down Expand Up @@ -6166,7 +6171,7 @@ function rcube_webmail()
}
}
else if (this.task == 'addressbook') {
this.enable_command('export', (this.contact_list && this.contact_list.rowcount > 0));
this.enable_command('export-all', (this.contact_list && this.contact_list.rowcount > 0));

if (response.action == 'list' || response.action == 'search') {
this.enable_command('search-create', this.env.source == '');
Expand Down
2 changes: 2 additions & 0 deletions program/localization/en_GB/labels.inc
Expand Up @@ -279,6 +279,8 @@ $labels['composeto'] = 'Compose mail to';
$labels['contactsfromto'] = 'Contacts $from to $to of $count';
$labels['print'] = 'Print';
$labels['export'] = 'Export';
$labels['exportall'] = 'Export all';
$labels['exportsel'] = 'Export selected';
$labels['exportvcards'] = 'Export contacts in vCard format';
$labels['newcontactgroup'] = 'Create new contact group';
$labels['grouprename'] = 'Rename group';
Expand Down
2 changes: 2 additions & 0 deletions program/localization/en_US/labels.inc
Expand Up @@ -330,6 +330,8 @@ $labels['composeto'] = 'Compose mail to';
$labels['contactsfromto'] = 'Contacts $from to $to of $count';
$labels['print'] = 'Print';
$labels['export'] = 'Export';
$labels['exportall'] = 'Export all';
$labels['exportsel'] = 'Export selected';
$labels['exportvcards'] = 'Export contacts in vCard format';
$labels['newcontactgroup'] = 'Create new contact group';
$labels['grouprename'] = 'Rename group';
Expand Down
8 changes: 8 additions & 0 deletions skins/classic/addressbook.css
Expand Up @@ -67,6 +67,14 @@
background-position: -128px -32px;
}

#abooktoolbar a.exportAll {
background-position: -128px 0;
}

#abooktoolbar a.exportAllSel {
background-position: -128px -32px;
}

#abooktoolbar span.separator {
width: 5px;
background-position: -162px 0;
Expand Down
12 changes: 11 additions & 1 deletion skins/classic/templates/addressbook.html 100644 → 100755
Expand Up @@ -27,7 +27,10 @@
<roundcube:button command="delete" type="link" class="buttonPas delete" classAct="button delete" classSel="button deleteSel" title="deletecontact" content=" " />
<span class="separator">&nbsp;</span>
<roundcube:button command="import" type="link" class="buttonPas import" classAct="button import" classSel="button importSel" title="importcontacts" content=" " />
<roundcube:button command="export" type="link" class="buttonPas export" classAct="button export" classSel="button exportSel" title="exportvcards" content=" " />
<span class="dropbutton">
<roundcube:button command="export-all" type="link" class="buttonPas exportAll" classAct="button exportAll" classSel="button exportAllSel" title="exportvcards" content=" " />
<span id="exportallmenulink" onclick="rcmail_ui.show_popup('exportallmenu');return false"></span>
</span>
<roundcube:button command="advanced-search" type="link" class="buttonPas search" classAct="button search" classSel="button searchSel" title="advsearch" content=" " />
<roundcube:container name="toolbar" id="abooktoolbar" />
</div>
Expand All @@ -38,6 +41,13 @@
<roundcube:button command="reset-search" id="searchreset" image="/images/icons/reset.gif" title="resetsearch" width="13" height="13" />
</div>

<div id="exportallmenu" class="popupmenu">
<ul>
<li><roundcube:button command="export-all" label="exportall" prop="sub" classAct="exportalllink active" class="exportalllink" /></li>
<li><roundcube:button command="export-selected" label="exportsel" prop="sub" classAct="exportsellink active" class="exportsellink" /></li>
</ul>
</div>

<div id="searchmenu" class="popupmenu">
<ul class="toolbarmenu">
<li><input type="checkbox" name="s_mods[]" value="name" id="s_mod_name" onclick="rcmail_ui.set_searchmod(this)" /><label for="s_mod_name"><roundcube:label name="name" /></label></li>
Expand Down
5 changes: 5 additions & 0 deletions skins/larry/styles.css
Expand Up @@ -1496,6 +1496,11 @@ ul.proplist li {
background-position: center -1054px;
}

.toolbar a.button.export-all {
min-width: 64px;
background-position: left -1054px;
}

a.menuselector {
display: inline-block;
border: 1px solid #ababab;
Expand Down
12 changes: 11 additions & 1 deletion skins/larry/templates/addressbook.html
Expand Up @@ -13,7 +13,11 @@
<!-- toolbar -->
<div id="addressbooktoolbar" class="toolbar">
<roundcube:button command="import" type="link" class="button import disabled" classAct="button import" classSel="button import pressed" label="import" title="importcontacts" />
<roundcube:button command="export" type="link" class="button export disabled" classAct="button export" classSel="button export pressed" label="export" title="exportvcards" />
<span class="dropbutton">
<roundcube:button command="export-all" type="link" class="button export-all disabled" classAct="button export-all" classSel="button export-all pressed" label="exportall" title="exportvcards" />
<span class="dropbuttontip" id="exportallmenulink" onclick="UI.show_popup('exportallmenu');return false"></span>
</span>

<span class="spacer"></span>
<roundcube:button command="compose" type="link" class="button compose disabled" classAct="button compose" classSel="button compose pressed" label="compose" title="writenewmessage" />
<roundcube:button command="advanced-search" type="link" class="button search disabled" classAct="button search" classSel="button search pressed" label="advanced" title="advsearch" />
Expand Down Expand Up @@ -75,6 +79,12 @@ <h2 class="boxtitle"><roundcube:label name="contacts" /></h2>

</div><!-- end mainscreen -->

<div id="exportallmenu" class="popupmenu">
<ul class="toolbarmenu">
<li><roundcube:button command="export-all" label="exportall" prop="sub" class="exportalllink" classAct="exportalllink active" /></li>
<li><roundcube:button command="export-selected" label="exportsel" prop="sub" class="exportsellink" classAct="exportsellink active" /></li>
</ul>
</div>

<div id="searchmenu" class="popupmenu">
<ul class="toolbarmenu">
Expand Down

0 comments on commit 518103e

Please sign in to comment.