Identities redesign

This commit is contained in:
RainLoop Team 2013-11-19 02:29:13 +04:00
parent df1c369a9d
commit 44241b859c
22 changed files with 267 additions and 183 deletions

View file

@ -1330,7 +1330,8 @@ class Actions
{
foreach ($aSubIdentities as $aItem)
{
if (isset($aItem['Id'], $aItem['Email'], $aItem['Name'], $aItem['ReplyTo'], $aItem['Bcc']))
if (isset($aItem['Id'], $aItem['Email'], $aItem['Name'], $aItem['ReplyTo'], $aItem['Bcc']) &&
$aItem['Id'] !== $oAccount->Email())
{
$oItem = \RainLoop\Identity::NewInstance($aItem['Id'], $aItem['Email'],
$aItem['Name'], $aItem['ReplyTo'], $aItem['Bcc']);
@ -1339,14 +1340,6 @@ class Actions
}
}
}
if (0 === \count($aIdentities))
{
$aIdentities[] = \RainLoop\Identity::NewInstance($oAccount->Email(), $oAccount->Email(),
$oSettings->GetConf('DisplayName', ''),
$oSettings->GetConf('ReplyTo', '')
);
}
}
return $aIdentities;
@ -1514,20 +1507,6 @@ class Actions
$sReplyTo = \trim($this->GetActionParam('ReplyTo', ''));
$sBcc = \trim($this->GetActionParam('Bcc', ''));
if ($sId === $oAccount->Email())
{
$sEmail = $oAccount->Email();
$oSettings = $this->SettingsProvider()->Load($oAccount);
if ($oSettings)
{
$oSettings->SetConf('DisplayName', $sName);
$oSettings->SetConf('ReplyTo', $sReplyTo);
$this->SettingsProvider()->Save($oAccount, $oSettings);
}
}
if (empty($sEmail))
{
throw new \RainLoop\Exceptions\ClientException(\RainLoop\Notifications::UnknownError);
@ -1583,7 +1562,7 @@ class Actions
$oAccount = $this->getAccountFromToken();
$sId = \trim($this->GetActionParam('IdToDelete', ''));
if (empty($sId) || $sId === $oAccount->Email())
if (empty($sId))
{
throw new \RainLoop\Exceptions\ClientException(\RainLoop\Notifications::UnknownError);
}

View file

@ -84,7 +84,7 @@
</label>
<label data-bind="click: function () { allowIdentities(!allowIdentities()); }">
<i data-bind="css: allowIdentities() ? 'icon-checkbox-checked' : 'icon-checkbox-unchecked'"></i>
Allow identities
Allow additional identities
</label>
</div>
</div>

View file

@ -1,7 +1,39 @@
<div class="b-settings-identities">
<div class="form-horizontal">
<div class="legend">
<span class="i18n" data-bind="text: legent"></span>
<span class="i18n" data-i18n-text="SETTINGS_IDENTITIES/LEGEND_IDENTITY"></span>
</div>
<div class="control-group">
<label class="control-label">
<span class="i18n" data-i18n-text="SETTINGS_IDENTITIES/LABEL_DISPLAY_NAME"></span>
</label>
<div class="controls">
<input class="input-xlarge" type="text" data-bind="value: displayName, saveTrigger: displayNameTrigger" />
<div data-bind="saveTrigger: displayNameTrigger"></div>
</div>
</div>
<div class="control-group" style="display: none">
<label class="control-label">
<span class="i18n" data-i18n-text="SETTINGS_IDENTITIES/LABEL_REPLY_TO"></span>
</label>
<div class="controls">
<input class="input-xlarge" type="text" data-bind="value: replyTo" />
</div>
</div>
<div class="control-group">
<label class="control-label">
<span class="i18n" data-i18n-text="SETTINGS_IDENTITIES/LABEL_SIGNATURE"></span>
</label>
<div class="controls">
<textarea class="input-xxlarge" data-bind="value: signature, saveTrigger: signatureTrigger" rows="7" spellcheck="true"></textarea>
<div style="vertical-align: top;" data-bind="saveTrigger: signatureTrigger"></div>
</div>
</div>
</div>
<br />
<div class="form-horizontal">
<div class="legend">
<span class="i18n" data-i18n-text="SETTINGS_IDENTITIES/LEGEND_IDENTITIES"></span>
</div>
</div>
<a class="btn" data-bind="click: addNewIdentity">
@ -39,15 +71,4 @@
</tr>
</tbody>
</table>
<br />
<br />
<div class="form-horizontal">
<div class="legend">
<span class="i18n" data-i18n-text="SETTINGS_IDENTITIES/LEGEND_SIGNATURE"></span>
</div>
</div>
<div>
<textarea class="input-xxlarge" data-bind="value: signature, saveTrigger: signatureTrigger" rows="7" spellcheck="true"></textarea>
<div style="vertical-align: top;" data-bind="saveTrigger: signatureTrigger"></div>
</div>
</div>

View file

@ -1,20 +1,20 @@
<div class="b-settings-personal">
<div class="b-settings-identity">
<div class="form-horizontal">
<div class="legend">
<span class="i18n" data-i18n-text="SETTINGS_PERSONAL/LEGEND_PERSONAL"></span>
<span class="i18n" data-i18n-text="SETTINGS_IDENTITY/LEGEND_IDENTITY"></span>
</div>
<div class="control-group">
<label class="control-label">
<span class="i18n" data-i18n-text="SETTINGS_PERSONAL/LABEL_DISPLAY_NAME"></span>
<span class="i18n" data-i18n-text="SETTINGS_IDENTITY/LABEL_DISPLAY_NAME"></span>
</label>
<div class="controls">
<input class="input-xlarge" type="text" data-bind="value: displayName, saveTrigger: nameTrigger" />
<div data-bind="saveTrigger: nameTrigger"></div>
<input class="input-xlarge" type="text" data-bind="value: displayName, saveTrigger: displayNameTrigger" />
<div data-bind="saveTrigger: displayNameTrigger"></div>
</div>
</div>
<div class="control-group" style="display: none">
<label class="control-label">
<span class="i18n" data-i18n-text="SETTINGS_PERSONAL/LABEL_REPLY_TO"></span>
<span class="i18n" data-i18n-text="SETTINGS_IDENTITY/LABEL_REPLY_TO"></span>
</label>
<div class="controls">
<input class="input-xlarge" type="text" data-bind="value: replyTo" />
@ -22,7 +22,7 @@
</div>
<div class="control-group">
<label class="control-label">
<span class="i18n" data-i18n-text="SETTINGS_PERSONAL/LABEL_SIGNATURE"></span>
<span class="i18n" data-i18n-text="SETTINGS_IDENTITY/LABEL_SIGNATURE"></span>
</label>
<div class="controls">
<textarea class="input-xxlarge" data-bind="value: signature, saveTrigger: signatureTrigger" rows="7" spellcheck="true"></textarea>