Import SVN changes
This commit is contained in:
commit
a9ed53e963
10
PATCHING_README.txt
Normal file
10
PATCHING_README.txt
Normal file
@ -0,0 +1,10 @@
|
||||
@myself: diff -ruN --exclude-from=..\diffexclude.txt <PathToOriginal> . > ../webapp_sendas.diff
|
||||
|
||||
|
||||
patch the webapp folder as follows:
|
||||
|
||||
patch -Np1 -d webapp-1.3.1.svn41348 < webapp_fileas.diff
|
||||
|
||||
If you get an error like "1 out of 1 hunk FAILED -- saving rejects to file....." make sure that you have all files with unix line endings
|
||||
|
||||
(under ubuntu: install "tofrodos" und use it like: fromdos <filetoconvert>)
|
160
webapp_default_contact_type.diff
Normal file
160
webapp_default_contact_type.diff
Normal file
@ -0,0 +1,160 @@
|
||||
diff -ruN ../webapp-1.5.svn43477_original/client/zarafa/contact/dialogs/ContactGeneralTab.js ./client/zarafa/contact/dialogs/ContactGeneralTab.js
|
||||
--- ../webapp-1.5.svn43477_original/client/zarafa/contact/dialogs/ContactGeneralTab.js 2014-01-23 22:25:47.511133259 +0100
|
||||
+++ ./client/zarafa/contact/dialogs/ContactGeneralTab.js 2014-01-23 22:27:23.853489217 +0100
|
||||
@@ -324,6 +324,9 @@
|
||||
*/
|
||||
createAddressFieldset : function(config)
|
||||
{
|
||||
+ var type = container.getSettingsModel().get('zarafa/v1/main/default_addr_type');
|
||||
+ var name = container.getSettingsModel().get('zarafa/v1/main/default_addr_type_name');
|
||||
+
|
||||
return {
|
||||
title : _('Addresses'),
|
||||
defaultType : 'zarafa.compositefield',
|
||||
@@ -335,15 +338,15 @@
|
||||
items : [{
|
||||
xtype : 'splitbutton',
|
||||
width : config.labelWidth,
|
||||
- text : _('Business') + ':',
|
||||
+ text : _(name) + ':',
|
||||
handler : this.handleAddressButtonClick,
|
||||
scope : this,
|
||||
- menu : this.initAddressButtonMenu('business_address', 'business_address')
|
||||
+ menu : this.initAddressButtonMenu(type, type)
|
||||
// @TODO add checkbox for email address selection
|
||||
}, {
|
||||
xtype : 'textarea',
|
||||
flex : 1,
|
||||
- name : 'business_address',
|
||||
+ name : type,
|
||||
height : 128,
|
||||
listeners : {
|
||||
scope : this,
|
||||
diff -ruN ../webapp-1.5.svn43477_original/client/zarafa/settings/data/SettingsDefaultValues.js ./client/zarafa/settings/data/SettingsDefaultValues.js
|
||||
--- ../webapp-1.5.svn43477_original/client/zarafa/settings/data/SettingsDefaultValues.js 2014-01-23 22:25:47.498133076 +0100
|
||||
+++ ./client/zarafa/settings/data/SettingsDefaultValues.js 2014-01-23 22:27:44.224775933 +0100
|
||||
@@ -24,6 +24,18 @@
|
||||
*/
|
||||
'default_context' : 'mail',
|
||||
/**
|
||||
+ * zarafa/v1/main/default_addr_type
|
||||
+ * @property
|
||||
+ * @type String
|
||||
+ */
|
||||
+ 'default_addr_type' : 'business_address',
|
||||
+ /**
|
||||
+ * zarafa/v1/main/default_addr_type_name
|
||||
+ * @property
|
||||
+ * @type String
|
||||
+ */
|
||||
+ 'default_addr_type_name' : 'Business',
|
||||
+ /**
|
||||
* zarafa/v1/main/use_canvas_rendering
|
||||
* @property
|
||||
* @type Boolean
|
||||
diff -ruN ../webapp-1.5.svn43477_original/client/zarafa/settings/ui/SettingsAccountWidget.js ./client/zarafa/settings/ui/SettingsAccountWidget.js
|
||||
--- ../webapp-1.5.svn43477_original/client/zarafa/settings/ui/SettingsAccountWidget.js 2014-01-23 22:25:47.497133061 +0100
|
||||
+++ ./client/zarafa/settings/ui/SettingsAccountWidget.js 2014-01-23 22:28:06.200085227 +0100
|
||||
@@ -41,6 +41,23 @@
|
||||
fields : ['context', 'text'],
|
||||
data : items
|
||||
};
|
||||
+
|
||||
+ // default addressbook selector
|
||||
+ var addrStore = {
|
||||
+ xtype : 'jsonstore',
|
||||
+ autoDestroy : true,
|
||||
+ fields : ['type', 'text'],
|
||||
+ data : [{
|
||||
+ text : _('Home'),
|
||||
+ type : 'home_address'
|
||||
+ }, {
|
||||
+ text : _('Business'),
|
||||
+ type : 'business_address'
|
||||
+ }, {
|
||||
+ text : _('Other'),
|
||||
+ type : 'other_address'
|
||||
+ }]
|
||||
+ };
|
||||
|
||||
Ext.applyIf(config, {
|
||||
title : String.format(_('Account information - {0}'), user.getDisplayName()),
|
||||
@@ -100,11 +117,48 @@
|
||||
select : this.onStartupSelect,
|
||||
scope : this
|
||||
}
|
||||
+ },{
|
||||
+ xtype : 'combo',
|
||||
+ fieldLabel : _('Default Address Type'),
|
||||
+ name : 'zarafa/v1/main/default_addr_type',
|
||||
+ ref : 'addrCombo',
|
||||
+ width : 200,
|
||||
+ store : addrStore,
|
||||
+ mode: 'local',
|
||||
+ triggerAction: 'all',
|
||||
+ displayField: 'text',
|
||||
+ valueField: 'type',
|
||||
+ lazyInit: false,
|
||||
+ forceSelection: true,
|
||||
+ editable: false,
|
||||
+ autoSelect: true,
|
||||
+ listeners : {
|
||||
+ select : this.onAddrSelect,
|
||||
+ scope : this
|
||||
+ }
|
||||
}]
|
||||
});
|
||||
|
||||
Zarafa.settings.ui.SettingsAccountWidget.superclass.constructor.call(this, config);
|
||||
},
|
||||
+
|
||||
+ /**
|
||||
+ * Event handler which is fired when a Addressbook Type in the {@link Ext.form.ComboBox combobox}
|
||||
+ * has been selected.
|
||||
+ * @param {Ext.form.ComboBox} combo The combobox which fired the event
|
||||
+ * @param {Ext.data.Record} record The selected record in the combobox
|
||||
+ * @param {Number} index The selected index in the store
|
||||
+ * @private
|
||||
+ */
|
||||
+ onAddrSelect : function(combo, record, index)
|
||||
+ {
|
||||
+ var value = record.get(combo.valueField);
|
||||
+ var text = record.get(combo.displayField);
|
||||
+ if (this.model) {
|
||||
+ this.model.set(combo.name, value);
|
||||
+ this.model.set(combo.name + "_name", text);
|
||||
+ }
|
||||
+ },
|
||||
|
||||
/**
|
||||
* Event handler which is fired when a language in the {@link Ext.form.ComboBox combobox}
|
||||
@@ -165,6 +219,7 @@
|
||||
this.languageWarning.reset();
|
||||
|
||||
this.startupCombo.setValue(settingsModel.get(this.startupCombo.name));
|
||||
+ this.addrCombo.setValue(settingsModel.get(this.addrCombo.name));
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -179,6 +234,8 @@
|
||||
settingsModel.beginEdit()
|
||||
settingsModel.set(this.languageCombo.name, this.languageCombo.getValue());
|
||||
settingsModel.set(this.startupCombo.name, this.startupCombo.getValue());
|
||||
+ settingsModel.set(this.addrCombo.name, this.addrCombo.getValue());
|
||||
+ settingsModel.set(this.addrCombo.name + "_name", this.addrCombo.getRawValue());
|
||||
settingsModel.endEdit();
|
||||
}
|
||||
});
|
||||
diff -ruN ../webapp-1.5.svn43477_original/server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po ./server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po
|
||||
--- ../webapp-1.5.svn43477_original/server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po 2014-01-23 22:25:47.377131373 +0100
|
||||
+++ ./server/language/de_DE.UTF-8/LC_MESSAGES/zarafa_webapp.po 2014-01-23 22:28:39.442553104 +0100
|
||||
@@ -646,6 +646,9 @@
|
||||
msgid "Business"
|
||||
msgstr "Geschäft"
|
||||
|
||||
+msgid "Default Address Type"
|
||||
+msgstr "Standard Adress-Typ"
|
||||
+
|
||||
# 88%
|
||||
#: client/zarafa/addressbook/dialogs/ABUserPhoneTab.js:73
|
||||
msgid "Business2"
|
13
webapp_fileas.diff
Normal file
13
webapp_fileas.diff
Normal file
@ -0,0 +1,13 @@
|
||||
diff -ruN --exclude=tools C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/contact/dialogs/ContactGeneralTab.js C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348_EDIT/client/zarafa/contact/dialogs/ContactGeneralTab.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/contact/dialogs/ContactGeneralTab.js 2013-01-29 13:22:09.000000000 +0100
|
||||
+++ C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348_EDIT/client/zarafa/contact/dialogs/ContactGeneralTab.js 2013-05-02 13:37:31.139972000 +0200
|
||||
@@ -867,6 +867,9 @@
|
||||
fileasOptions.push([companyName + Zarafa.contact.data.config.NBSP + '(' + contactName + ')']);
|
||||
}
|
||||
}
|
||||
+ } else if(!Ext.isEmpty(companyName)) {
|
||||
+ // use companyname as fileas field
|
||||
+ fileasOptions.push([companyName]);
|
||||
}
|
||||
|
||||
comboStore.loadData(fileasOptions);
|
826
webapp_sendas.diff
Normal file
826
webapp_sendas.diff
Normal file
@ -0,0 +1,826 @@
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/CommonContext.js ./client/zarafa/common/CommonContext.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/CommonContext.js 2013-01-04 13:42:45.000000000 +0100
|
||||
+++ ./client/zarafa/common/CommonContext.js 2013-05-02 18:07:15.513665300 +0200
|
||||
@@ -23,6 +23,7 @@
|
||||
|
||||
// Register categories for the settings
|
||||
this.registerInsertionPoint('context.settings.categories', this.createDelegateSettingsCategory, this);
|
||||
+ this.registerInsertionPoint('context.settings.categories', this.createSendAsSettingsCategory, this);
|
||||
this.registerInsertionPoint('context.settings.categories', this.createRuleSettingsCategory, this);
|
||||
|
||||
// Register common specific dialog types
|
||||
@@ -42,6 +43,7 @@
|
||||
Zarafa.core.data.SharedComponentType.addProperty('common.contextmenu.reminder.remindergrid');
|
||||
Zarafa.core.data.SharedComponentType.addProperty('common.printer.renderer');
|
||||
Zarafa.core.data.SharedComponentType.addProperty('common.rules.dialog.ruleswordsedit');
|
||||
+ Zarafa.core.data.SharedComponentType.addProperty('common.sendas.dialog.sendasedit');
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -74,6 +76,7 @@
|
||||
case Zarafa.core.data.SharedComponentType['common.contextmenu.importance']:
|
||||
case Zarafa.core.data.SharedComponentType['common.contextmenu.reminder.remindergrid']:
|
||||
case Zarafa.core.data.SharedComponentType['common.rules.dialog.ruleswordsedit']:
|
||||
+ case Zarafa.core.data.SharedComponentType['common.sendas.dialog.sendasedit']:
|
||||
bid = 1;
|
||||
break;
|
||||
case Zarafa.core.data.SharedComponentType['common.contextmenu.freebusy']:
|
||||
@@ -144,6 +147,9 @@
|
||||
case Zarafa.core.data.SharedComponentType['common.rules.dialog.ruleswordsedit']:
|
||||
component = Zarafa.common.rules.dialogs.RulesWordsEditContentPanel;
|
||||
break;
|
||||
+ case Zarafa.core.data.SharedComponentType['common.sendas.dialog.sendasedit']:
|
||||
+ component = Zarafa.common.sendas.dialogs.SendAsEditContentPanel;
|
||||
+ break;
|
||||
case Zarafa.core.data.SharedComponentType['common.create']:
|
||||
if (record instanceof Zarafa.core.data.IPMRecipientRecord) {
|
||||
component = Zarafa.common.recipientfield.ui.EditRecipientContentPanel;
|
||||
@@ -220,6 +226,27 @@
|
||||
settingsContext : settingsContext
|
||||
};
|
||||
},
|
||||
+
|
||||
+ /**
|
||||
+ * Create the send as {@link Zarafa.settings.ui.SettingsCategory Settings Category}
|
||||
+ * to the {@link Zarafa.settings.SettingsContext}. This will create new
|
||||
+ * {@link Zarafa.settings.ui.SettingsCategoryTab tabs} for the
|
||||
+ * {@link Zarafa.calendar.ui.SettingsSendAsCategory SendAs}
|
||||
+ * in the {@link Zarafa.settings.ui.SettingsCategoryWidgetPanel Widget Panel}.
|
||||
+ * @param {String} insertionName insertion point name that is currently populated
|
||||
+ * @param {Zarafa.settings.ui.SettingsMainPanel} settingsMainPanel settings main panel
|
||||
+ * which is populating this insertion point
|
||||
+ * @param {Zarafa.settings.SettingsContext} settingsContext settings context
|
||||
+ * @return {Array} configuration object for the categories to register
|
||||
+ * @private
|
||||
+ */
|
||||
+ createSendAsSettingsCategory : function(insertionName, settingsMainPanel, settingsContext)
|
||||
+ {
|
||||
+ return {
|
||||
+ xtype : 'zarafa.settingssendascategory',
|
||||
+ settingsContext : settingsContext
|
||||
+ };
|
||||
+ },
|
||||
|
||||
/**
|
||||
* Create the Rule {@link Zarafa.settings.ui.SettingsCategory Settings Category}
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/dialogs/SendAsEditContentPanel.js ./client/zarafa/common/sendas/dialogs/SendAsEditContentPanel.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/dialogs/SendAsEditContentPanel.js 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ ./client/zarafa/common/sendas/dialogs/SendAsEditContentPanel.js 2013-05-02 22:39:19.679354100 +0200
|
||||
@@ -0,0 +1,40 @@
|
||||
+Ext.namespace('Zarafa.common.sendas.dialogs');
|
||||
+
|
||||
+/**
|
||||
+ * @class Zarafa.common.sendas.dialogs.SendAsEditContentPanel
|
||||
+ * @extends Zarafa.core.ui.ContentPanel
|
||||
+ * @xtype zarafa.sendaseditcontentpanel
|
||||
+ *
|
||||
+ * {@link Zarafa.common.sendas.dialogs.SendAsEditContentPanel SendAsEditContentPanel} will be used to edit sendas addresses.
|
||||
+ */
|
||||
+Zarafa.common.sendas.dialogs.SendAsEditContentPanel = Ext.extend(Zarafa.core.ui.ContentPanel, {
|
||||
+ /**
|
||||
+ * @constructor
|
||||
+ * @param config Configuration structure
|
||||
+ */
|
||||
+ constructor : function(config)
|
||||
+ {
|
||||
+ config = config || {};
|
||||
+
|
||||
+ // Add in some standard configuration data.
|
||||
+ Ext.applyIf(config, {
|
||||
+ // Override from Ext.Component
|
||||
+ xtype : 'zarafa.sendaseditcontentpanel',
|
||||
+ // Override from Ext.Component
|
||||
+ layout : 'fit',
|
||||
+ model : true,
|
||||
+ autoSave : false,
|
||||
+ width : 400,
|
||||
+ height : 100,
|
||||
+ title : _('Send As'),
|
||||
+ items : [{
|
||||
+ xtype : 'zarafa.sendaseditpanel',
|
||||
+ item : config.item
|
||||
+ }]
|
||||
+ });
|
||||
+
|
||||
+ Zarafa.common.sendas.dialogs.SendAsEditContentPanel.superclass.constructor.call(this, config);
|
||||
+ }
|
||||
+});
|
||||
+
|
||||
+Ext.reg('zarafa.sendaseditcontentpanel', Zarafa.common.sendas.dialogs.SendAsEditContentPanel);
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/dialogs/SendAsEditPanel.js ./client/zarafa/common/sendas/dialogs/SendAsEditPanel.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/dialogs/SendAsEditPanel.js 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ ./client/zarafa/common/sendas/dialogs/SendAsEditPanel.js 2013-05-03 13:17:58.427828000 +0200
|
||||
@@ -0,0 +1,135 @@
|
||||
+Ext.namespace('Zarafa.common.sendas.dialogs');
|
||||
+
|
||||
+/**
|
||||
+ * @class Zarafa.common.sendas.dialogs.SendAsEditPanel
|
||||
+ * @extends Ext.form.FormPanel
|
||||
+ * @xtype zarafa.sendaseditpanel
|
||||
+ *
|
||||
+ * Will generate UI for {@link Zarafa.common.sendas.dialogs.SendAsEditContentPanel SendAsEditContentPanel}.
|
||||
+ */
|
||||
+Zarafa.common.sendas.dialogs.SendAsEditPanel = Ext.extend(Ext.form.FormPanel, {
|
||||
+
|
||||
+ /**
|
||||
+ * the id of the currently edited item
|
||||
+ */
|
||||
+ currentItem : undefined,
|
||||
+
|
||||
+ /**
|
||||
+ * @constructor
|
||||
+ * @param config Configuration structure
|
||||
+ */
|
||||
+ constructor : function(config)
|
||||
+ {
|
||||
+ config = config || {};
|
||||
+
|
||||
+ if(config.item)
|
||||
+ this.currentItem = config.item;
|
||||
+
|
||||
+ Ext.applyIf(config, {
|
||||
+ // Override from Ext.Component
|
||||
+ xtype : 'zarafa.sendaseditpanel',
|
||||
+ labelAlign : 'left',
|
||||
+ defaultType: 'textfield',
|
||||
+ items : this.createPanelItems(config),
|
||||
+ buttons: [{
|
||||
+ text: _('Save'),
|
||||
+ handler: this.doSave,
|
||||
+ scope: this
|
||||
+ },
|
||||
+ {
|
||||
+ text: _('Cancel'),
|
||||
+ handler: this.doClose,
|
||||
+ scope: this
|
||||
+ }]
|
||||
+ });
|
||||
+
|
||||
+ Zarafa.common.sendas.dialogs.SendAsEditPanel.superclass.constructor.call(this, config);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * close the dialog
|
||||
+ */
|
||||
+ doClose : function() {
|
||||
+ this.dialog.close();
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * save the data to the store
|
||||
+ */
|
||||
+ doSave : function() {
|
||||
+ var store = this.dialog.store;
|
||||
+ var id = 0;
|
||||
+ var record = undefined;
|
||||
+
|
||||
+ if(!this.currentItem) {
|
||||
+ record = new store.recordType({
|
||||
+ id: this.hashCode(this.email_address.getValue()),
|
||||
+ display_name: this.display_name.getValue(),
|
||||
+ email_address: this.email_address.getValue()
|
||||
+ });
|
||||
+ }
|
||||
+
|
||||
+ if(this.email_address.isValid()) {
|
||||
+ if(record) {
|
||||
+ store.add(record);
|
||||
+ } else {
|
||||
+ this.currentItem.set('display_name', this.display_name.getValue());
|
||||
+ this.currentItem.set('email_address', this.email_address.getValue());
|
||||
+ }
|
||||
+ this.dialog.close();
|
||||
+ }
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Function will create panel items for {@link Zarafa.common.sendas.dialogs.SendAsEditPanel SendAsEditPanel}
|
||||
+ * @return {Array} array of items that should be added to panel.
|
||||
+ * @private
|
||||
+ */
|
||||
+ createPanelItems : function(config)
|
||||
+ {
|
||||
+ var displayName = "";
|
||||
+ var emailAddress = "";
|
||||
+
|
||||
+ if(config.item){
|
||||
+ displayName = config.item.get('display_name');
|
||||
+ emailAddress = config.item.get('email_address');
|
||||
+ }
|
||||
+
|
||||
+ return [{
|
||||
+ fieldLabel: _('Display Name'),
|
||||
+ name: 'display_name',
|
||||
+ ref: 'display_name',
|
||||
+ value: displayName,
|
||||
+ anchor: '100%'
|
||||
+ },
|
||||
+ {
|
||||
+ fieldLabel: _('Email Address'),
|
||||
+ name: 'email_address',
|
||||
+ ref: 'email_address',
|
||||
+ allowBlank: false,
|
||||
+ value: emailAddress,
|
||||
+ vtype:'email',
|
||||
+ anchor: '100%'
|
||||
+ }];
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Java String.hashCode() implementation
|
||||
+ * @private
|
||||
+ */
|
||||
+ hashCode : function(str){
|
||||
+ var hash = 0;
|
||||
+ var chr = 0;
|
||||
+ var i = 0;
|
||||
+
|
||||
+ if (str.length == 0) return hash;
|
||||
+ for (i = 0; i < str.length; i++) {
|
||||
+ chr = str.charCodeAt(i);
|
||||
+ hash = ((hash<<5)-hash)+chr;
|
||||
+ hash = hash & hash; // Convert to 32bit integer
|
||||
+ }
|
||||
+ return Math.abs(hash);
|
||||
+ }
|
||||
+});
|
||||
+
|
||||
+Ext.reg('zarafa.sendaseditpanel', Zarafa.common.sendas.dialogs.SendAsEditPanel);
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/ui/SendAsGrid.js ./client/zarafa/common/sendas/ui/SendAsGrid.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/ui/SendAsGrid.js 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ ./client/zarafa/common/sendas/ui/SendAsGrid.js 2013-05-02 21:29:16.060920900 +0200
|
||||
@@ -0,0 +1,136 @@
|
||||
+Ext.namespace('Zarafa.common.sendas.ui');
|
||||
+
|
||||
+/**
|
||||
+ * @class Zarafa.common.sendas.ui.SendAsGrid
|
||||
+ * @extends Ext.grid.GridPanel
|
||||
+ * @xtype zarafa.sendasgrid
|
||||
+ *
|
||||
+ * {@link Zarafa.common.sendas.ui.SendAsGrid SendAsGrid} will be used to display
|
||||
+ * sendas of the current user.
|
||||
+ */
|
||||
+Zarafa.common.sendas.ui.SendAsGrid = Ext.extend(Ext.grid.GridPanel, {
|
||||
+ /**
|
||||
+ * @constructor
|
||||
+ * @param {Object} config Configuration structure
|
||||
+ */
|
||||
+ constructor : function(config)
|
||||
+ {
|
||||
+ config = config || {};
|
||||
+
|
||||
+ Ext.applyIf(config, {
|
||||
+ xtype : 'zarafa.sendasgrid',
|
||||
+ border : true,
|
||||
+ store : config.store,
|
||||
+ viewConfig : {
|
||||
+ forceFit : true,
|
||||
+ emptyText : '<div class=\'emptytext\'>' + _('No sendas address exists') + '</div>'
|
||||
+ },
|
||||
+ loadMask : this.initLoadMask(),
|
||||
+ columns : this.initColumnModel(),
|
||||
+ selModel : this.initSelectionModel(),
|
||||
+ listeners : {
|
||||
+ viewready : this.onViewReady,
|
||||
+ rowdblclick : this.onRowDblClick,
|
||||
+ scope : this
|
||||
+ }
|
||||
+ });
|
||||
+
|
||||
+ Zarafa.common.sendas.ui.SendAsGrid.superclass.constructor.call(this, config);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * initialize events for the grid panel.
|
||||
+ * @private
|
||||
+ */
|
||||
+ initEvents : function()
|
||||
+ {
|
||||
+ Zarafa.common.sendas.ui.SendAsGrid.superclass.initEvents.call(this);
|
||||
+
|
||||
+ // select first sendas when store has finished loading
|
||||
+ this.mon(this.store, 'load', this.onViewReady, this, {single : true});
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Creates a column model object, used in {@link #colModel} config
|
||||
+ * @return {Ext.grid.ColumnModel} column model object
|
||||
+ * @private
|
||||
+ */
|
||||
+ initColumnModel : function()
|
||||
+ {
|
||||
+ return [{
|
||||
+ dataIndex : 'display_name',
|
||||
+ header : _('Name'),
|
||||
+ renderer : Zarafa.common.ui.grid.Renderers.text
|
||||
+ },
|
||||
+ {
|
||||
+ dataIndex : 'email_address',
|
||||
+ header : _('Email Address'),
|
||||
+ renderer : Zarafa.common.ui.grid.Renderers.text
|
||||
+ }]
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Creates a selection model object, used in {@link #selModel} config
|
||||
+ * @return {Ext.grid.RowSelectionModel} selection model object
|
||||
+ * @private
|
||||
+ */
|
||||
+ initSelectionModel : function()
|
||||
+ {
|
||||
+ return new Ext.grid.RowSelectionModel({
|
||||
+ singleSelect : true
|
||||
+ });
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Initialize the {@link Ext.grid.GridPanel.loadMask} field
|
||||
+ *
|
||||
+ * @return {Ext.LoadMask} The configuration object for {@link Ext.LoadMask}
|
||||
+ * @private
|
||||
+ */
|
||||
+ initLoadMask : function()
|
||||
+ {
|
||||
+ return {
|
||||
+ msg : _('Loading sendas addresses') + '...'
|
||||
+ };
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Event handler which is fired when the gridPanel is ready. This will automatically
|
||||
+ * select the first row in the grid.
|
||||
+ * @private
|
||||
+ */
|
||||
+ onViewReady : function()
|
||||
+ {
|
||||
+ this.getSelectionModel().selectFirstRow();
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Function will be called to remove a sendas address.
|
||||
+ */
|
||||
+ removeSendAs : function()
|
||||
+ {
|
||||
+ var sendasRecord = this.getSelectionModel().getSelected();
|
||||
+ if(!sendasRecord) {
|
||||
+ Ext.Msg.alert(_('Alert'), _('Please select a sendas address.'));
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ this.store.remove(sendasRecord);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Event handler which is fired when the {@link Zarafa.common.sendas.ui.SendAsGrid SendAsGrid} is double clicked.
|
||||
+ * it will call generic function to handle the functionality.
|
||||
+ * @private
|
||||
+ */
|
||||
+ onRowDblClick : function(grid, rowIndex)
|
||||
+ {
|
||||
+ Zarafa.core.data.UIFactory.openLayerComponent(Zarafa.core.data.SharedComponentType['common.sendas.dialog.sendasedit'], undefined, {
|
||||
+ store : grid.getStore(),
|
||||
+ item : grid.getStore().getAt(rowIndex),
|
||||
+ manager : Ext.WindowMgr
|
||||
+ });
|
||||
+ }
|
||||
+});
|
||||
+
|
||||
+Ext.reg('zarafa.sendasgrid', Zarafa.common.sendas.ui.SendAsGrid);
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/ui/SendAsPanel.js ./client/zarafa/common/sendas/ui/SendAsPanel.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/sendas/ui/SendAsPanel.js 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ ./client/zarafa/common/sendas/ui/SendAsPanel.js 2013-05-02 21:12:03.987889700 +0200
|
||||
@@ -0,0 +1,160 @@
|
||||
+Ext.namespace('Zarafa.common.sendas.ui');
|
||||
+
|
||||
+/**
|
||||
+ * @class Zarafa.common.sendas.ui.SendAsPanel
|
||||
+ * @extends Ext.Panel
|
||||
+ * @xtype zarafa.sendaspanel
|
||||
+ * Will generate UI for the {@link Zarafa.common.settings.SettingsSendAsWidget SettingsSendAsWidget}.
|
||||
+ */
|
||||
+Zarafa.common.sendas.ui.SendAsPanel = Ext.extend(Ext.Panel, {
|
||||
+
|
||||
+ // store
|
||||
+ store : undefined,
|
||||
+
|
||||
+ /**
|
||||
+ * @constructor
|
||||
+ * @param config Configuration structure
|
||||
+ */
|
||||
+ constructor : function(config)
|
||||
+ {
|
||||
+ config = config || {};
|
||||
+ if(config.store)
|
||||
+ this.store = config.store;
|
||||
+
|
||||
+ Ext.applyIf(config, {
|
||||
+ // Override from Ext.Component
|
||||
+ xtype : 'zarafa.sendaspanel',
|
||||
+ border : false,
|
||||
+ layout : {
|
||||
+ type : 'vbox',
|
||||
+ align : 'stretch',
|
||||
+ pack : 'start'
|
||||
+ },
|
||||
+ items : this.createPanelItems(this.store)
|
||||
+ });
|
||||
+
|
||||
+ Zarafa.common.sendas.ui.SendAsPanel.superclass.constructor.call(this, config);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Function will create panel items for {@link Zarafa.common.sendas.ui.SendAsPanel SendAsPanel}
|
||||
+ * @return {Array} array of items that should be added to panel.
|
||||
+ * @private
|
||||
+ */
|
||||
+ createPanelItems : function(store)
|
||||
+ {
|
||||
+ return [{
|
||||
+ xtype : 'displayfield',
|
||||
+ value : _('Here you can setup your alias email addresses.'),
|
||||
+ fieldClass : 'x-form-display-field zarafa-delegates-extrainfo'
|
||||
+ }, {
|
||||
+ xtype : 'container',
|
||||
+ flex : 1,
|
||||
+ layout : {
|
||||
+ type : 'hbox',
|
||||
+ align : 'stretch',
|
||||
+ pack : 'start'
|
||||
+ },
|
||||
+ items : [{
|
||||
+ xtype : 'zarafa.sendasgrid',
|
||||
+ ref : '../sendasGrid',
|
||||
+ store : store,
|
||||
+ flex : 1
|
||||
+ }, {
|
||||
+ xtype : 'container',
|
||||
+ width : 160,
|
||||
+ defaults : {
|
||||
+ width : 140
|
||||
+ },
|
||||
+ layout : {
|
||||
+ type : 'vbox',
|
||||
+ align : 'center',
|
||||
+ pack : 'start'
|
||||
+ },
|
||||
+ items : [{
|
||||
+ xtype : 'button',
|
||||
+ text : _('Add') + '...',
|
||||
+ handler : this.onSendAsAdd,
|
||||
+ ref : '../../addButton',
|
||||
+ scope : this
|
||||
+ }, {
|
||||
+ xtype : 'spacer',
|
||||
+ height : 20
|
||||
+ }, {
|
||||
+ xtype : 'button',
|
||||
+ text : _('Remove') + '...',
|
||||
+ disabled : true,
|
||||
+ ref : '../../removeButton',
|
||||
+ handler : this.onSendAsRemove,
|
||||
+ scope : this
|
||||
+ }]
|
||||
+ }]
|
||||
+ }];
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * initialize events for the panel.
|
||||
+ * @private
|
||||
+ */
|
||||
+ initEvents : function()
|
||||
+ {
|
||||
+ Zarafa.common.sendas.ui.SendAsPanel.superclass.initEvents.call(this);
|
||||
+
|
||||
+ // register event to enable/disable buttons
|
||||
+ this.mon(this.sendasGrid.getSelectionModel(), 'selectionchange', this.onGridSelectionChange, this);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Handler function will be called when user clicks on 'Add' button,
|
||||
+ * this will show addressbook dialog to select sendas user.
|
||||
+ * @private
|
||||
+ */
|
||||
+ onSendAsAdd : function()
|
||||
+ {
|
||||
+ Zarafa.core.data.UIFactory.openLayerComponent(Zarafa.core.data.SharedComponentType['common.sendas.dialog.sendasedit'], undefined, {
|
||||
+ store : this.store,
|
||||
+ item : undefined,
|
||||
+ manager : Ext.WindowMgr
|
||||
+ });
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Event handler will be called when selection in {@link Zarafa.common.ui.SendAsGrid SendAsGrid}
|
||||
+ * has been changed
|
||||
+ * @param {Ext.grid.RowSelectionModel} selectionModel selection model that fired the event
|
||||
+ */
|
||||
+ onGridSelectionChange : function(selectionModel)
|
||||
+ {
|
||||
+ var noSelection = (selectionModel.hasSelection() === false);
|
||||
+
|
||||
+ this.removeButton.setDisabled(noSelection);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Handler function will be called when user clicks on 'Remove' button,
|
||||
+ * this will remove currently selected sendas from sendass list.
|
||||
+ * @private
|
||||
+ */
|
||||
+ onSendAsRemove : function()
|
||||
+ {
|
||||
+ this.sendasGrid.removeSendAs();
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Function will be used to reload data in the store.
|
||||
+ */
|
||||
+ discardChanges : function()
|
||||
+ {
|
||||
+ this.store.load();
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Function will be used to save changes in the store.
|
||||
+ */
|
||||
+ saveChanges : function()
|
||||
+ {
|
||||
+ this.store.save();
|
||||
+ }
|
||||
+});
|
||||
+
|
||||
+Ext.reg('zarafa.sendaspanel', Zarafa.common.sendas.ui.SendAsPanel);
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/settings/SettingsSendAsCategory.js ./client/zarafa/common/settings/SettingsSendAsCategory.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/settings/SettingsSendAsCategory.js 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ ./client/zarafa/common/settings/SettingsSendAsCategory.js 2013-05-02 17:40:58.653474000 +0200
|
||||
@@ -0,0 +1,50 @@
|
||||
+Ext.namespace('Zarafa.common.settings');
|
||||
+
|
||||
+/**
|
||||
+ * @class Zarafa.common.settings.SettingsSendAsCategory
|
||||
+ * @extends Zarafa.settings.ui.SettingsCategory
|
||||
+ * @xtype zarafa.settingssendascategory
|
||||
+ *
|
||||
+ * The sendas category for users which will allow the user to configure send as settings.
|
||||
+ */
|
||||
+Zarafa.common.settings.SettingsSendAsCategory = Ext.extend(Zarafa.settings.ui.SettingsCategory, {
|
||||
+ // Insertion points for this class
|
||||
+ /**
|
||||
+ * @insert context.settings.category.sendas
|
||||
+ * Insertion point to register new {@link Zarafa.settings.ui.SettingsWidget widgets}
|
||||
+ * for the {@link Zarafa.common.settings.SettingsSendAsCategory SendAs Category}.
|
||||
+ * @param {Zarafa.common.settings.SettingsSendAsCategory} category The sendas
|
||||
+ * category to which the widgets will be added.
|
||||
+ */
|
||||
+
|
||||
+ /**
|
||||
+ * @cfg {Zarafa.settings.SettingsContext} settingsContext
|
||||
+ */
|
||||
+ settingsContext : undefined,
|
||||
+
|
||||
+ /**
|
||||
+ * @constructor
|
||||
+ * @param {Object} config Configuration object
|
||||
+ */
|
||||
+ constructor : function(config)
|
||||
+ {
|
||||
+ config = config || {};
|
||||
+
|
||||
+ Ext.applyIf(config, {
|
||||
+ title : _('Send As'),
|
||||
+ categoryIndex : 6,
|
||||
+ xtype : 'zarafa.settingssendascategory',
|
||||
+ iconCls : 'zarafa-settings-category-delegate',
|
||||
+ items : [{
|
||||
+ xtype : 'zarafa.settingssendaswidget',
|
||||
+ settingsContext : config.settingsContext
|
||||
+ },
|
||||
+ container.populateInsertionPoint('context.settings.category.sendas', this)
|
||||
+ ]
|
||||
+ });
|
||||
+
|
||||
+ Zarafa.common.settings.SettingsSendAsCategory.superclass.constructor.call(this, config);
|
||||
+ }
|
||||
+});
|
||||
+
|
||||
+Ext.reg('zarafa.settingssendascategory', Zarafa.common.settings.SettingsSendAsCategory);
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/settings/SettingsSendAsWidget.js ./client/zarafa/common/settings/SettingsSendAsWidget.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/common/settings/SettingsSendAsWidget.js 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ ./client/zarafa/common/settings/SettingsSendAsWidget.js 2013-05-02 20:23:02.528647900 +0200
|
||||
@@ -0,0 +1,107 @@
|
||||
+Ext.namespace('Zarafa.common.settings');
|
||||
+
|
||||
+/**
|
||||
+ * @class Zarafa.common.settings.SettingsSendAsWidget
|
||||
+ * @extends Zarafa.settings.ui.SettingsWidget
|
||||
+ * @xtype zarafa.settingssendaswidget
|
||||
+ *
|
||||
+ * The {@link Zarafa.settings.ui.SettingsWidget widget} for configuring
|
||||
+ * delegation options in the {@link Zarafa.common.settings.SettingsSendAsCategory sendas category}.
|
||||
+ */
|
||||
+Zarafa.common.settings.SettingsSendAsWidget = Ext.extend(Zarafa.settings.ui.SettingsWidget, {
|
||||
+ /**
|
||||
+ * @cfg {Zarafa.settings.SettingsContext} settingsContext
|
||||
+ */
|
||||
+ settingsContext : undefined,
|
||||
+
|
||||
+ /**
|
||||
+ * @constructor
|
||||
+ * @param {Object} config Configuration object
|
||||
+ */
|
||||
+ constructor : function(config)
|
||||
+ {
|
||||
+ config = config || {};
|
||||
+
|
||||
+ var store = new Ext.data.JsonStore({
|
||||
+ fields : [
|
||||
+ { name : 'id', type : 'int' },
|
||||
+ { name : 'display_name' },
|
||||
+ { name : 'email_address' }
|
||||
+ ],
|
||||
+ sortInfo : {
|
||||
+ field : 'id',
|
||||
+ direction : 'ASC'
|
||||
+ },
|
||||
+ autoDestroy : true
|
||||
+ });
|
||||
+
|
||||
+ Ext.applyIf(config, {
|
||||
+ height : 400,
|
||||
+ title : _('Send As settings'),
|
||||
+ xtype : 'zarafa.settingssendaswidget',
|
||||
+ layout : {
|
||||
+ // override from SettingsWidget
|
||||
+ type : 'fit'
|
||||
+ },
|
||||
+ items : [{
|
||||
+ xtype : 'zarafa.sendaspanel',
|
||||
+ store : store,
|
||||
+ ref : 'sendasPanel'
|
||||
+ }]
|
||||
+ });
|
||||
+
|
||||
+ Zarafa.common.settings.SettingsSendAsWidget.superclass.constructor.call(this, config);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Called by the {@link Zarafa.settings.ui.SettingsCategory Category} when
|
||||
+ * it has been called with {@link zarafa.settings.ui.SettingsCategory#update}.
|
||||
+ * This is used to load the latest version of the settings from the
|
||||
+ * {@link Zarafa.settings.SettingsModel} into the UI of this category.
|
||||
+ * @param {Zarafa.settings.SettingsModel} settingsModel The settings to load
|
||||
+ */
|
||||
+ update : function(settingsModel)
|
||||
+ {
|
||||
+ this.model = settingsModel;
|
||||
+
|
||||
+ // Convert the signatures into Store data
|
||||
+ var addresses = settingsModel.get('zarafa/v1/contexts/mail/sendas', true);
|
||||
+ var addressesArray = [];
|
||||
+ for (var key in addresses) {
|
||||
+ addressesArray.push(Ext.apply({}, addresses[key], { id : key }));
|
||||
+ }
|
||||
+
|
||||
+ // Load all addresses into the GridPanel
|
||||
+ var store = this.sendasPanel.sendasGrid.getStore();
|
||||
+ store.loadData(addressesArray);
|
||||
+ },
|
||||
+
|
||||
+ /**
|
||||
+ * Called by the {@link Zarafa.settings.ui.SettingsCategory Category} when
|
||||
+ * it has been called with {@link zarafa.settings.ui.SettingsCategory#updateSettings}.
|
||||
+ * This is used to update the settings from the UI into the {@link Zarafa.settings.SettingsModel settings model}.
|
||||
+ * @param {Zarafa.settings.SettingsModel} settingsModel The settings to update
|
||||
+ */
|
||||
+ updateSettings : function(settingsModel)
|
||||
+ {
|
||||
+ settingsModel.beginEdit();
|
||||
+
|
||||
+ // Start reading the Grid store and convert the contents back into
|
||||
+ // an object which can be pushed to the settings.
|
||||
+ var addresses = this.sendasPanel.sendasGrid.getStore().getRange();
|
||||
+ var addressesData = {};
|
||||
+ for (var i = 0, len = addresses.length; i < len; i++) {
|
||||
+ var address = addresses[i];
|
||||
+
|
||||
+ addressesData[address.get('id')] = {
|
||||
+ 'display_name' : address.get('display_name'),
|
||||
+ 'email_address' : address.get('email_address')
|
||||
+ };
|
||||
+ }
|
||||
+ settingsModel.set('zarafa/v1/contexts/mail/sendas', addressesData);
|
||||
+
|
||||
+ settingsModel.endEdit();
|
||||
+ }
|
||||
+});
|
||||
+
|
||||
+Ext.reg('zarafa.settingssendaswidget', Zarafa.common.settings.SettingsSendAsWidget);
|
||||
diff -ruN --exclude-from=..\diffexclude.txt C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/mail/dialogs/MailCreatePanel.js ./client/zarafa/mail/dialogs/MailCreatePanel.js
|
||||
--- C:\Users\admhaasch\Downloads\webapp-1.3.1.svn41348.tar\webapp-1.3.1.svn41348/client/zarafa/mail/dialogs/MailCreatePanel.js 2013-01-25 16:42:28.000000000 +0100
|
||||
+++ ./client/zarafa/mail/dialogs/MailCreatePanel.js 2013-05-03 12:46:43.505588600 +0200
|
||||
@@ -59,6 +59,44 @@
|
||||
this.mon(this.dialog, 'fromtoggle', this.onDialogFromToggle, this);
|
||||
}
|
||||
},
|
||||
+
|
||||
+ /**
|
||||
+ * Returns items for the splitbutton
|
||||
+ * @private
|
||||
+ */
|
||||
+ initSendAsList : function() {
|
||||
+
|
||||
+ var addresses = container.getSettingsModel().get('zarafa/v1/contexts/mail/sendas', true);
|
||||
+ var addressesArray = [];
|
||||
+ var items = [];
|
||||
+
|
||||
+ for (var key in addresses) {
|
||||
+ addressesArray.push(Ext.apply({}, addresses[key], { id : key }));
|
||||
+ }
|
||||
+
|
||||
+ if(addressesArray.length != 0) {
|
||||
+ Ext.each(addressesArray, function (record) {
|
||||
+ var item = {
|
||||
+ text: record.display_name + ' (' + record.email_address + ')',
|
||||
+ handler: this.onSelectQuickUser.createDelegate(this, [record], 0)
|
||||
+ };
|
||||
+
|
||||
+ if(record.display_name === ""){
|
||||
+ // we don't need the brackets, just use the mail address
|
||||
+ item.text = record.email_address;
|
||||
+ }
|
||||
+
|
||||
+ items.push(item);
|
||||
+ }, this);
|
||||
+ } else {
|
||||
+ items.push({
|
||||
+ text: _('No alias set!'),
|
||||
+ handler: this.onSelectUser
|
||||
+ });
|
||||
+ }
|
||||
+
|
||||
+ return items;
|
||||
+ },
|
||||
|
||||
/**
|
||||
* Creates the form panel
|
||||
@@ -67,6 +105,7 @@
|
||||
initMessageFormPanel : function(config)
|
||||
{
|
||||
var items = [];
|
||||
+ var quickSendItems = this.initSendAsList();
|
||||
|
||||
items.push({
|
||||
xtype: 'zarafa.compositefield',
|
||||
@@ -75,10 +114,22 @@
|
||||
anchor: '100%',
|
||||
autoHeight: true,
|
||||
items: [{
|
||||
- xtype: 'button',
|
||||
+ xtype: 'splitbutton',
|
||||
width: 100,
|
||||
text: _('From') + ':',
|
||||
handler: this.onSelectUser,
|
||||
+ menu: new Ext.menu.Menu({
|
||||
+ style: {
|
||||
+ backgroundImage: 'none' // if "showSeperator" does not work
|
||||
+ },
|
||||
+ defaults: {
|
||||
+ style: {
|
||||
+ paddingLeft: 0
|
||||
+ }
|
||||
+ },
|
||||
+ showSeperator: false,
|
||||
+ items: quickSendItems // quick sendas
|
||||
+ }),
|
||||
scope: this
|
||||
},{
|
||||
xtype: 'zarafa.addressbookboxfield',
|
||||
@@ -435,6 +486,28 @@
|
||||
}
|
||||
});
|
||||
},
|
||||
+
|
||||
+ /**
|
||||
+ * Event handler which is fired when the user presses a item in the 'Name' splitbutton.
|
||||
+ *
|
||||
+ * @private
|
||||
+ */
|
||||
+ onSelectQuickUser : function(item)
|
||||
+ {
|
||||
+ var recipientRecord = Zarafa.core.data.RecordFactory.createRecordObjectByCustomType(Zarafa.core.data.RecordCustomObjectType.ZARAFA_RECIPIENT, {
|
||||
+ display_name : item.display_name !== "" ? item.display_name : item.email_address,
|
||||
+ email_address : item.email_address,
|
||||
+ smtp_address : item.email_address,
|
||||
+ recipient_type : Zarafa.core.mapi.RecipientType.MAPI_ORIG
|
||||
+ });
|
||||
+
|
||||
+ var store = this.fromRecipientField.getBoxStore();
|
||||
+
|
||||
+ // We need to maintain that in from field there should be only one user,
|
||||
+ // So remove earlier added user.
|
||||
+ store.removeAll();
|
||||
+ store.add(recipientRecord);
|
||||
+ },
|
||||
|
||||
/**
|
||||
* Callback function for {@link Zarafa.addressbook.dialogs.ABUserSelectionContent AddressBook}
|
Loading…
Reference in New Issue
Block a user