diff --git a/internal_packages/composer-templates/lib/template-picker.jsx b/internal_packages/composer-templates/lib/template-picker.jsx index e8e2c7d4f..2b24d5609 100644 --- a/internal_packages/composer-templates/lib/template-picker.jsx +++ b/internal_packages/composer-templates/lib/template-picker.jsx @@ -84,7 +84,7 @@ class TemplatePicker extends React.Component { const footerComponents = [
Save Draft as Template...
, -
Open Templates Folder...
, +
Manage Templates...
, ]; return ( diff --git a/internal_packages/composer-templates/lib/template-store.es6 b/internal_packages/composer-templates/lib/template-store.es6 index c3ecd33d8..2c1c982b2 100644 --- a/internal_packages/composer-templates/lib/template-store.es6 +++ b/internal_packages/composer-templates/lib/template-store.es6 @@ -106,7 +106,10 @@ class TemplateStore extends NylasStore { DraftStore.sessionForClientId(draftClientId).then((session) => { const draft = session.draft(); const draftName = name ? name : draft.subject.replace(TemplateStore.INVALID_TEMPLATE_NAME_REGEX, ''); - const draftContents = contents ? contents : QuotedHTMLTransformer.removeQuotedHTML(draft.body); + let draftContents = contents ? contents : QuotedHTMLTransformer.removeQuotedHTML(draft.body); + + const sigIndex = draftContents.indexOf('
'); + draftContents = sigIndex>-1 ? draftContents.slice(0,sigIndex) : draftContents; if (!draftName || draftName.length === 0) { this._displayError('Give your draft a subject to name your template.'); } @@ -242,7 +245,7 @@ class TemplateStore extends NylasStore { } _onInsertTemplateId({templateId, draftClientId} = {}) { - this.getTemplateContents(templateId, (body) => { + this.getTemplateContents(templateId, (template_body) => { DraftStore.sessionForClientId(draftClientId).then((session)=> { let proceed = true; if (!session.draft().pristine) { @@ -255,7 +258,11 @@ class TemplateStore extends NylasStore { } if (proceed) { - const draftHtml = QuotedHTMLTransformer.appendQuotedHTML(body, session.draft().body); + let draftContents = QuotedHTMLTransformer.removeQuotedHTML(session.draft().body); + const sigIndex = draftContents.indexOf('
'); + const signature = sigIndex>-1 ? draftContents.slice(sigIndex) : ""; + + const draftHtml = QuotedHTMLTransformer.appendQuotedHTML(template_body+signature, session.draft().body); session.changes.add({body: draftHtml}); } });