diff --git a/app/Http/Requests/UpdateProposalRequest.php b/app/Http/Requests/UpdateProposalRequest.php
index be1e30895f96..8f40ec0792a2 100644
--- a/app/Http/Requests/UpdateProposalRequest.php
+++ b/app/Http/Requests/UpdateProposalRequest.php
@@ -27,7 +27,7 @@ class UpdateProposalRequest extends ProposalRequest
return [
'quote_id' => 'required',
- 'template_id' => 'required',
+ 'proposal_template_id' => 'required',
];
}
}
diff --git a/app/Models/Proposal.php b/app/Models/Proposal.php
index ce140e38806e..b60e598f8bbc 100644
--- a/app/Models/Proposal.php
+++ b/app/Models/Proposal.php
@@ -23,6 +23,8 @@ class Proposal extends EntityModel
*/
protected $fillable = [
'private_notes',
+ 'html',
+ 'css',
];
/**
diff --git a/app/Models/ProposalSnippet.php b/app/Models/ProposalSnippet.php
index 99d50b53fc97..e745cb82497e 100644
--- a/app/Models/ProposalSnippet.php
+++ b/app/Models/ProposalSnippet.php
@@ -25,6 +25,8 @@ class ProposalSnippet extends EntityModel
'name',
'private_notes',
'proposal_category_id',
+ 'html',
+ 'css',
];
/**
diff --git a/app/Models/ProposalTemplate.php b/app/Models/ProposalTemplate.php
index 0adccd25824f..110d617f1815 100644
--- a/app/Models/ProposalTemplate.php
+++ b/app/Models/ProposalTemplate.php
@@ -24,6 +24,8 @@ class ProposalTemplate extends EntityModel
protected $fillable = [
'name',
'private_notes',
+ 'html',
+ 'css',
];
/**
diff --git a/resources/views/proposals/edit.blade.php b/resources/views/proposals/edit.blade.php
index ad798ec4160c..1ab034c6cfb3 100644
--- a/resources/views/proposals/edit.blade.php
+++ b/resources/views/proposals/edit.blade.php
@@ -33,6 +33,8 @@
{!! Former::text('public_id') !!}
+ {!! Former::text('html') !!}
+ {!! Former::text('css') !!}
@@ -81,6 +83,8 @@
var templateMap = {};
function onSaveClick() {
+ $('#html').val(grapesjsEditor.getHtml());
+ $('#css').val(grapesjsEditor.getCss());
$('#mainForm').submit();
}
@@ -111,10 +115,10 @@
setComboboxValue($('.template-select'), template.public_id, template.name);
}
- var editor = grapesjs.init({
+ window.grapesjsEditor = grapesjs.init({
container : '#gjs',
- components: '',
- style: '',
+ components: '{!! $proposal ? $proposal->html : '' !!}',
+ style: '{!! $proposal ? $proposal->css : '' !!}',
showDevices: false,
plugins: ['gjs-preset-newsletter'],
//plugins: ['gjs-blocks-basic'],
diff --git a/resources/views/proposals/snippets/edit.blade.php b/resources/views/proposals/snippets/edit.blade.php
index dd39b9ca8e2d..16f3d8b88c1a 100644
--- a/resources/views/proposals/snippets/edit.blade.php
+++ b/resources/views/proposals/snippets/edit.blade.php
@@ -33,6 +33,8 @@
{!! Former::text('public_id') !!}
+ {!! Former::text('html') !!}
+ {!! Former::text('css') !!}
@@ -77,6 +79,8 @@
var categoryMap = {};
function onSaveClick() {
+ $('#html').val(grapesjsEditor.getHtml());
+ $('#css').val(grapesjsEditor.getCss());
$('#mainForm').submit();
}
@@ -94,10 +98,10 @@
setComboboxValue($('.category-select'), category.public_id, category.name);
}
- var editor = grapesjs.init({
+ window.grapesjsEditor = grapesjs.init({
container : '#gjs',
- components: '',
- style: '',
+ components: '{!! $snippet ? $snippet->html : '' !!}',
+ style: '{!! $snippet ? $snippet->css : '' !!}',
showDevices: false,
plugins: ['gjs-preset-newsletter'],
//plugins: ['gjs-blocks-basic'],
diff --git a/resources/views/proposals/templates/edit.blade.php b/resources/views/proposals/templates/edit.blade.php
index bb0289b64ab9..045233ff63d9 100644
--- a/resources/views/proposals/templates/edit.blade.php
+++ b/resources/views/proposals/templates/edit.blade.php
@@ -32,6 +32,8 @@
{!! Former::text('public_id') !!}
+ {!! Former::text('html') !!}
+ {!! Former::text('css') !!}
@@ -44,7 +46,7 @@
{!! Former::text('name') !!}
@@ -77,6 +79,8 @@
var templateMap = {};
function onSaveClick() {
+ $('#html').val(grapesjsEditor.getHtml());
+ $('#css').val(grapesjsEditor.getCss());
$('#mainForm').submit();
}
@@ -91,10 +95,10 @@
@include('partials/entity_combobox', ['entityType' => ENTITY_PROPOSAL_TEMPLATE])
*/
- var editor = grapesjs.init({
+ window.grapesjsEditor = grapesjs.init({
container : '#gjs',
- components: '',
- style: '',
+ components: '{!! $template ? $template->html : '' !!}',
+ style: '{!! $template ? $template->css : '' !!}',
showDevices: false,
plugins: ['gjs-preset-newsletter'],
//plugins: ['gjs-blocks-basic'],