use App\Jobs\ProcessPdfFile;
use App\Mail\BatchMail;
use App\PdfFile;
+use App\User;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\ResourceCollection;
{
$batch = new EmailBatch();
$data = $request->input('data');
+ $type = Arr::get($data, 'email.type', 0);
+ $recipientGroup = Arr::get($data, 'recipient_group');
+
$batch->subject = Arr::get($data, 'email.subject');
$batch->content = ['body' => Arr::get($data, 'email.content')];
$batch->file_id = Arr::get($data, 'file.id');
$batch->save();
- dispatch(new ProcessEmailBatch($batch));
+ dispatch(new ProcessEmailBatch($batch, $type, $recipientGroup));
return ['data' => $batch->id];
}
/**
* @return \Illuminate\View\View
*/
- public function index()
+ public function letter()
+ {
+ return view('admin.publish.publish-letter');
+ }
+
+
+ /**
+ * @return \Illuminate\View\View
+ */
+ public function newsletter()
{
- return view('admin.publish.publish');
+ return view('admin.publish.publish-newsletter');
}
public function live()
return (new BatchMail(
$request->input('content'),
$request->input('subject'),
+ $request->input('type'),
$request->input('link')
))->render();
}
+ /**
+ * @return array
+ */
+ public static function sendGroups(): array
+ {
+ return [
+ 'all' => [
+ 'slug' => 'all',
+ 'builder' => User::query(),
+ 'text' => "Tout le monde",
+ ],
+ 'prospects' => [
+ 'slug' => 'prospects',
+ 'builder' => User::prospect(),
+ 'text' => 'Prospects',
+ ],
+ 'registered_user' => [
+ 'slug' => 'registered_user',
+ 'builder' => User::registeredUser(),
+ 'text' => 'Utilisateurs de la plateforme',
+ ],
+ 'admin' => [
+ 'slug' => 'admin',
+ 'builder' => User::where('email', 'louis.jeckel@outlook.com'),
+ 'text' => 'Administrateur',
+ ],
+
+ ];
+ }
+
+ /**
+ * @return \Illuminate\Http\JsonResponse
+ */
+ public function sendGroupList()
+ {
+ return response()->json(array_map(function($group) {
+ $group['count'] = $group['builder']->count();
+ unset($group['builder']);
+ $group['text'] .= " ({$group['count']})";
+ return $group;
+ }, self::sendGroups()));
+
+ }
+
*/
public function index()
{
- \View::share('last_pdf', PdfFile::query()->orderByDesc('id')->take(7)->get());
+ \View::share('last_pdf', PdfFile::query()->orderByDesc('id')->published()->take(7)->get());
return view('home.index');
}
--- /dev/null
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+
+class NewsletterController extends Controller
+{
+ //
+}
use App\EmailBatch;
use App\Events\ProcessBatch;
use App\Facades\Mailgun;
+use App\Http\Controllers\Admin\PublishController;
use App\Mail\BatchMail;
use App\User;
use Illuminate\Bus\Queueable;
class ProcessEmailBatch implements ShouldQueue
{
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
+
/**
* @var EmailBatch
*/
private $batch;
+ private int $type;
+
+ private $users;
+
+
+
/**
* Create a new job instance.
*
* @param EmailBatch $batch
+ * @param int $type
*/
- public function __construct(EmailBatch $batch)
+ public function __construct(EmailBatch $batch, $type, $recipientGroup = null)
{
$this->batch = $batch;
+ $this->type = $type;
+ $this->users = $recipientGroup === null ?
+ User::recievesEmails()->get() :
+ PublishController::sendGroups()[$recipientGroup['slug']]['builder']->get();
}
/**
public function handle()
{
/** @var Collection $users */
- $users = User::recievesEmails()->get();
- $size = env('MAILGUN_CHUNK_SIZE', 200);
- $chunks = $users->chunk($size);
+ $size = config('mail.mailgun.chunk_size');
+ $chunks = $this->users->chunk($size);
$this->processUpdate([
'status' => 'processing',
- 'total' => $count = $users->count(),
+ 'total' => $count = $this->users->count(),
'current' => 0
]);
$i = 0;
- $this->batch->file->publish();
+
+ if($this->batch->file !== null) {
+ $this->batch->file->publish();
+ }
foreach($chunks as $chunk) {
$variables = json_encode($chunk->mapWithKeys(function (User $user) {
- return [$user->email => [
+
+ $fileVar = $this->batch->file === null ?
+ [] :
+ ['file_url' => $this->batch->file->getUrlWithToken($user)];
+
+
+ return [
+ $user->email => array_merge([
'id' => $user->id,
'name' => $user->name,
- 'file_url' => $this->batch->file->getUrlWithToken($user),
- ]];
+ ], $fileVar)
+ ];
}), JSON_THROW_ON_ERROR, 512);
$view = (new BatchMail(
$this->batch->content['body'],
$this->batch->subject,
+ $this->type
))->render();
'current' => $count
]);
- $this->batch->update(['sent_to' => $users->pluck('email')]);
+ $this->batch->update(['sent_to' => $this->users->pluck('email')]);
}
}
namespace App\Mail;
use App\Facades\Html2Markdown;
+use Arr;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
public $content;
public $link;
+
+ public const MAIL_TYPE_PDF_FILE = 1;
+
+ public const MAIL_TYPE_NEWSLETTER = 2;
+
+ protected array $viewMap = [
+ self::MAIL_TYPE_PDF_FILE => 'batch-pdf',
+ self::MAIL_TYPE_NEWSLETTER => 'newsletter'
+ ];
+
+
+ /**
+ * @var string
+ */
+ public $emailView;
+
/**
* Create a new message instance.²
*
* @param string $content
* @param string $subject
+ * @param $type
* @param string|null $link
- * @param HtmlConverter $converter
*/
- public function __construct($content, $subject, $link = null)
+ public function __construct($content, $subject, $type, $link = null)
{
//
$this->content = Html2Markdown::convert($content);
$this->subject = $subject;
$this->link = $link;
+
+ $this->emailView = Arr::get($this->viewMap, $type ?? 0);
+ if($this->emailView === null) {
+ throw new \InvalidArgumentException('Invalid email type !');
+ }
}
/**
*/
public function build()
{
- return $this->markdown('emails.batch')->with(['subject' => $this->subject]);
+ return $this->markdown("emails.{$this->emailView}")->with(['subject' => $this->subject]);
}
}
],
'mailgun' => [
- 'api_key' => env('MAILGUN_API_KEY')
+ 'api_key' => env('MAILGUN_API_KEY'),
+ 'chunk_size' => env('MAILGUN_CHUNK_SIZE', 200)
]
];
'raw' => true,
],
'publish' => [
- 'title' => 'Publier une lettre',
- 'route' => 'admin.publish',
+ 'title' => 'Publier',
+ 'route' => 'admin.publish.letter',
+ 'primary_navigation' => [
+ 'letter' => [
+ 'title' => 'Publier une lettre',
+ 'route' => 'admin.publish.letter'
+ ],
+ 'newsletter' => [
+ 'title' => 'Envoyer une newsletter',
+ 'route' => 'admin.publish.newsletter'
+ ]
+
+ ]
],
'content' => [
'title' => 'Contenu du site',
--- /dev/null
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class FileNotRequiredInEmailBatchesTable extends Migration
+{
+ /**
+ * Run the migrations.
+ *
+ * @return void
+ */
+ public function up()
+ {
+ Schema::table('email_batches', function (Blueprint $table) {
+ $table->unsignedBigInteger('file_id')->change()->nullable();
+ });
+ }
+
+ /**
+ * Reverse the migrations.
+ *
+ * @return void
+ */
+ public function down()
+ {
+ Schema::table('email_batches', function (Blueprint $table) {
+ $table->unsignedBigInteger('file_id')->change()->nullable(false);
+ });
+ }
+}
/***/ }),
-/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&":
-/*!**************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js& ***!
- \**************************************************************************************************************************************************************************/
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&":
+/*!********************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js& ***!
+ \********************************************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&":
+/*!************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var vue_stepper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-stepper */ "./node_modules/vue-stepper/src/index.js");
+/* harmony import */ var vue_stepper__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue_stepper__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _Step1WriteNewsletter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Step1WriteNewsletter */ "./resources/js/components/Publish/Step1WriteNewsletter.vue");
+/* harmony import */ var _Step3Send__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Step3Send */ "./resources/js/components/Publish/Step3Send.vue");
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+/**
+ * Step 1 : Upload PDF and preview (add title, tags)
+ * Step 2 : Add email subject and content
+ * Step 3 : Review, send and track
+ */
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ components: {
+ HorizontalStepper: vue_stepper__WEBPACK_IMPORTED_MODULE_0___default.a
+ },
+ data: function data() {
+ return {
+ steps: [{
+ icon: 'mail',
+ name: 'email',
+ title: 'Mise en forme du message',
+ subtitle: '',
+ component: _Step1WriteNewsletter__WEBPACK_IMPORTED_MODULE_1__["default"],
+ completed: false
+ }, {
+ icon: 'send',
+ name: 'review',
+ title: 'Récapitulatif et envoi',
+ subtitle: 'Suivi des envois',
+ component: _Step3Send__WEBPACK_IMPORTED_MODULE_2__["default"],
+ completed: false
+ }]
+ };
+ },
+ mounted: function mounted() {},
+ methods: {
+ // Executed when @completed-step event is triggered
+ completeStep: function completeStep(payload) {
+ this.steps.forEach(function (step) {
+ if (step.name === payload.name) {
+ step.completed = true;
+ }
+ });
+ },
+ // Executed when @active-step event is triggered
+ isStepActive: function isStepActive(payload) {
+ this.steps.forEach(function (step) {
+ if (step.name === payload.name) {
+ if (step.completed === true) {
+ step.completed = false;
+ }
+ }
+ });
+ },
+ // Executed when @stepper-finished event is triggered
+ alert: function (_alert) {
+ function alert(_x) {
+ return _alert.apply(this, arguments);
+ }
+
+ alert.toString = function () {
+ return _alert.toString();
+ };
+
+ return alert;
+ }(function (payload) {
+ alert('end');
+ })
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=script&lang=js&":
/*!**********************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=script&lang=js& ***!
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&":
+/*!***************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js& ***!
+ \***************************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ckeditor/ckeditor5-build-classic */ "./node_modules/@ckeditor/ckeditor5-build-classic/build/ckeditor.js");
+/* harmony import */ var _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ components: {},
+ data: function data() {
+ return {
+ file: this.$root.publishState.file,
+ editor: _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0___default.a,
+ recipient_group: null,
+ recipient_groups: [],
+ email: {
+ content: "\n <p>Bonjour %recipient.name%,</p>\n ",
+ subject: '',
+ type: 2,
+ link: ""
+ },
+ csrf: document.querySelectorAll('meta[name="csrf-token"]')[0].content,
+ editorConfig: {}
+ };
+ },
+ watch: {
+ email: {
+ deep: true,
+ handler: function handler(val, old) {
+ if (val.editorData !== '' && val.subject !== '') {
+ this.$root.publishState.email = val;
+ this.$emit('can-continue', {
+ value: true
+ });
+ } else {
+ this.$emit('can-continue', {
+ value: false
+ });
+ }
+ },
+ immediate: true
+ },
+ recipient_group: function recipient_group(val, old) {
+ this.$root.publishState.recipient_group = val;
+ }
+ },
+ methods: {},
+ mounted: function mounted() {
+ var _this = this;
+
+ this.$emit('can-continue', {
+ value: true
+ });
+ axios.get('/publish/recipient-groups').then(function (d) {
+ return _this.recipient_groups = d.data;
+ });
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=script&lang=js&":
/*!***********************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=script&lang=js& ***!
//
//
//
+//
/* harmony default export */ __webpack_exports__["default"] = ({
components: {},
editor: _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0___default.a,
email: {
content: "\n <p>Bonjour %recipient.name%,</p>\n <p>Voici la nouvelle \xE9dition du jour !</p>\n ",
- subject: "[".concat(this.$root.publishState.file.title, "] ")
+ subject: "[".concat(this.$root.publishState.file.title, "] "),
+ type: 1
},
csrf: document.querySelectorAll('meta[name="csrf-token"]')[0].content,
editorConfig: {}
},
data: function data() {
return {
- file: this.$root.publishState.file,
+ email: this.$root.publishState.email,
recipients_count: 0,
status: 'En attente',
counters: {
mounted: function mounted() {
var _this2 = this;
- axios.get('publish/recipients').then(function (d) {
- return _this2.recipients_count = d.data.data;
- });
+ if (this.$root.publishState.recipient_group === undefined) {
+ axios.get('publish/recipients').then(function (d) {
+ return _this2.recipients_count = d.data.data;
+ });
+ } else {
+ this.recipients_count = this.$root.publishState.recipient_group.count;
+ }
}
});
module.exports = exports;
+/***/ }),
+
+/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Imports
+var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+exports = ___CSS_LOADER_API_IMPORT___(false);
+// Module
+exports.push([module.i, "\n.ck-editor__editable {\n min-height: 500px;\n}\n\n", ""]);
+// Exports
+module.exports = exports;
+
+
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=style&index=0&lang=css&":
+module.exports = exported;
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&":
+/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& ***!
+ \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var api = __webpack_require__(/*! ../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+ var content = __webpack_require__(/*! !../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& */ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&");
+
+ content = content.__esModule ? content.default : content;
+
+ if (typeof content === 'string') {
+ content = [[module.i, content, '']];
+ }
+
+var options = {};
+
+options.insert = "head";
+options.singleton = false;
+
+var update = api(content, options);
+
+var exported = content.locals ? content.locals : {};
+
+
+
module.exports = exported;
/***/ }),
/***/ }),
-/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&":
-/*!******************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4& ***!
- \******************************************************************************************************************************************************************************************************************/
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&":
+/*!************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a& ***!
+ \************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&":
+/*!****************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6& ***!
+ \****************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c(
+ "div",
+ [
+ _c("h1", { staticClass: "mb-6" }, [_vm._v("Envoyer une newsletter")]),
+ _vm._v(" "),
+ _c("horizontal-stepper", {
+ attrs: { steps: _vm.steps },
+ on: {
+ "completed-step": _vm.completeStep,
+ "active-step": _vm.isStepActive,
+ "stepper-finished": _vm.alert
+ }
+ })
+ ],
+ 1
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=template&id=26de7527&scoped=true&":
"post-action": "/publish/upload-file",
multiple: false,
drop: true,
- "drop-directory": true,
+ "drop-directory": false,
headers: {
"X-CSRF-TOKEN": _vm.csrf
},
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&":
+/*!*******************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& ***!
+ \*******************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", { staticClass: "stepper-step" }, [
+ _c("div", [
+ _c("div", [
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "recipients" } }, [
+ _vm._v("Destinataires")
+ ]),
+ _vm._v(" "),
+ _c(
+ "select",
+ {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.recipient_group,
+ expression: "recipient_group"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: { name: "recipients", id: "recipients" },
+ on: {
+ change: function($event) {
+ var $$selectedVal = Array.prototype.filter
+ .call($event.target.options, function(o) {
+ return o.selected
+ })
+ .map(function(o) {
+ var val = "_value" in o ? o._value : o.value
+ return val
+ })
+ _vm.recipient_group = $event.target.multiple
+ ? $$selectedVal
+ : $$selectedVal[0]
+ }
+ }
+ },
+ [
+ _vm.recipient_groups.count === 0
+ ? _c(
+ "option",
+ { attrs: { value: "-1", selected: "seleted" } },
+ [_vm._v("Chargement en cours...")]
+ )
+ : _vm._e(),
+ _vm._v(" "),
+ _vm._l(_vm.recipient_groups, function(recipient) {
+ return _c("option", { domProps: { value: recipient } }, [
+ _vm._v(_vm._s(recipient.text))
+ ])
+ })
+ ],
+ 2
+ )
+ ]),
+ _vm._v(" "),
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "subject" } }, [_vm._v("Sujet")]),
+ _vm._v(" "),
+ _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.email.subject,
+ expression: "email.subject"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: {
+ type: "text",
+ id: "subject",
+ placeholder: "Découvrez notre nouveau podcast !"
+ },
+ domProps: { value: _vm.email.subject },
+ on: {
+ input: function($event) {
+ if ($event.target.composing) {
+ return
+ }
+ _vm.$set(_vm.email, "subject", $event.target.value)
+ }
+ }
+ })
+ ]),
+ _vm._v(" "),
+ _c(
+ "div",
+ { staticClass: "form-group" },
+ [
+ _c("label", { attrs: { for: "content" } }, [_vm._v("Contenu")]),
+ _vm._v(" "),
+ _c("ckeditor", {
+ attrs: {
+ editor: _vm.editor,
+ config: _vm.editorConfig,
+ id: "content"
+ },
+ model: {
+ value: _vm.email.content,
+ callback: function($$v) {
+ _vm.$set(_vm.email, "content", $$v)
+ },
+ expression: "email.content"
+ }
+ })
+ ],
+ 1
+ ),
+ _vm._v(" "),
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "subject" } }, [
+ _vm._v("Lien principal")
+ ]),
+ _vm._v(" "),
+ _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.email.link,
+ expression: "email.link"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: {
+ type: "text",
+ id: "link",
+ placeholder: "https://exemple.fr"
+ },
+ domProps: { value: _vm.email.link },
+ on: {
+ input: function($event) {
+ if ($event.target.composing) {
+ return
+ }
+ _vm.$set(_vm.email, "link", $event.target.value)
+ }
+ }
+ })
+ ])
+ ])
+ ]),
+ _vm._v(" "),
+ _c(
+ "form",
+ {
+ attrs: { method: "post", action: "/publish/preview", target: "_blank" }
+ },
+ [
+ _c("input", {
+ attrs: { type: "hidden", name: "_token" },
+ domProps: { value: _vm.csrf }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "subject" },
+ domProps: { value: _vm.email.subject }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "type" },
+ domProps: { value: _vm.email.type }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "content" },
+ domProps: { value: _vm.email.content }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "link" },
+ domProps: { value: _vm.email.link }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ staticClass: "btn btn-primary",
+ attrs: { type: "submit", value: "Prévisualiser l'email" }
+ })
+ ]
+ )
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=template&id=5a14ddba&":
domProps: { value: _vm.email.subject }
}),
_vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "type" },
+ domProps: { value: _vm.email.type }
+ }),
+ _vm._v(" "),
_c("input", {
attrs: { type: "hidden", name: "content" },
domProps: { value: _vm.email.content }
return _c("div", { staticClass: "stepper-step" }, [
_c("div", { staticClass: "mb-3" }, [
_c("h3", { staticClass: "text-center" }, [
- _vm._v("\n " + _vm._s(_vm.file.title) + "\n ")
+ _vm._v("\n " + _vm._s(_vm.email.subject) + "\n ")
])
]),
_vm._v(" "),
"./components/Home/cover.vue": "./resources/js/components/Home/cover.vue",
"./components/LiveStats.vue": "./resources/js/components/LiveStats.vue",
"./components/Publish/HeadlineRepeater.vue": "./resources/js/components/Publish/HeadlineRepeater.vue",
- "./components/Publish/Publish.vue": "./resources/js/components/Publish/Publish.vue",
+ "./components/Publish/PublishLetter.vue": "./resources/js/components/Publish/PublishLetter.vue",
+ "./components/Publish/PublishNewsletter.vue": "./resources/js/components/Publish/PublishNewsletter.vue",
"./components/Publish/Step1UploadFile.vue": "./resources/js/components/Publish/Step1UploadFile.vue",
+ "./components/Publish/Step1WriteNewsletter.vue": "./resources/js/components/Publish/Step1WriteNewsletter.vue",
"./components/Publish/Step2PrepareMail.vue": "./resources/js/components/Publish/Step2PrepareMail.vue",
"./components/Publish/Step3Send.vue": "./resources/js/components/Publish/Step3Send.vue",
"./components/Stats/EmailStatistics.vue": "./resources/js/components/Stats/EmailStatistics.vue",
/***/ }),
-/***/ "./resources/js/components/Publish/Publish.vue":
-/*!*****************************************************!*\
- !*** ./resources/js/components/Publish/Publish.vue ***!
- \*****************************************************/
+/***/ "./resources/js/components/Publish/PublishLetter.vue":
+/*!***********************************************************!*\
+ !*** ./resources/js/components/Publish/PublishLetter.vue ***!
+ \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Publish.vue?vue&type=template&id=6a7b0cd4& */ "./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&");
-/* harmony import */ var _Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Publish.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&");
+/* harmony import */ var _PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PublishLetter.vue?vue&type=template&id=280ded1a& */ "./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&");
+/* harmony import */ var _PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PublishLetter.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
/* normalize component */
var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
- _Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["render"],
- _Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ _PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
null,
/* hot reload */
if (false) { var api; }
-component.options.__file = "resources/js/components/Publish/Publish.vue"
+component.options.__file = "resources/js/components/Publish/PublishLetter.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }),
-/***/ "./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&":
-/*!******************************************************************************!*\
- !*** ./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js& ***!
- \******************************************************************************/
+/***/ "./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&":
+/*!************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./Publish.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&");
-/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishLetter.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ }),
-/***/ "./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&":
-/*!************************************************************************************!*\
- !*** ./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4& ***!
- \************************************************************************************/
+/***/ "./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&":
+/*!******************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a& ***!
+ \******************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishLetter.vue?vue&type=template&id=280ded1a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/PublishNewsletter.vue":
+/*!***************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishNewsletter.vue ***!
+ \***************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PublishNewsletter.vue?vue&type=template&id=930f83a6& */ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&");
+/* harmony import */ var _PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PublishNewsletter.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/Publish/PublishNewsletter.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&":
+/*!****************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishNewsletter.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&":
+/*!**********************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6& ***!
+ \**********************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./Publish.vue?vue&type=template&id=6a7b0cd4& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&");
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishNewsletter.vue?vue&type=template&id=930f83a6& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["render"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue":
+/*!******************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue ***!
+ \******************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& */ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&");
+/* harmony import */ var _Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Step1WriteNewsletter.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& */ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/Publish/Step1WriteNewsletter.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&":
+/*!*******************************************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js& ***!
+ \*******************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&":
+/*!***************************************************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& ***!
+ \***************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& */ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&");
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&":
+/*!*************************************************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& ***!
+ \*************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/js/components/Publish/Step2PrepareMail.vue":
/***/ }),
-/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&":
-/*!**************************************************************************************************************************************************************************!*\
- !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js& ***!
- \**************************************************************************************************************************************************************************/
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&":
+/*!********************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js& ***!
+ \********************************************************************************************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&":
+/*!************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var vue_stepper__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! vue-stepper */ "./node_modules/vue-stepper/src/index.js");
+/* harmony import */ var vue_stepper__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(vue_stepper__WEBPACK_IMPORTED_MODULE_0__);
+/* harmony import */ var _Step1WriteNewsletter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Step1WriteNewsletter */ "./resources/js/components/Publish/Step1WriteNewsletter.vue");
+/* harmony import */ var _Step3Send__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Step3Send */ "./resources/js/components/Publish/Step3Send.vue");
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+/**
+ * Step 1 : Upload PDF and preview (add title, tags)
+ * Step 2 : Add email subject and content
+ * Step 3 : Review, send and track
+ */
+
+
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ components: {
+ HorizontalStepper: vue_stepper__WEBPACK_IMPORTED_MODULE_0___default.a
+ },
+ data: function data() {
+ return {
+ steps: [{
+ icon: 'mail',
+ name: 'email',
+ title: 'Mise en forme du message',
+ subtitle: '',
+ component: _Step1WriteNewsletter__WEBPACK_IMPORTED_MODULE_1__["default"],
+ completed: false
+ }, {
+ icon: 'send',
+ name: 'review',
+ title: 'Récapitulatif et envoi',
+ subtitle: 'Suivi des envois',
+ component: _Step3Send__WEBPACK_IMPORTED_MODULE_2__["default"],
+ completed: false
+ }]
+ };
+ },
+ mounted: function mounted() {},
+ methods: {
+ // Executed when @completed-step event is triggered
+ completeStep: function completeStep(payload) {
+ this.steps.forEach(function (step) {
+ if (step.name === payload.name) {
+ step.completed = true;
+ }
+ });
+ },
+ // Executed when @active-step event is triggered
+ isStepActive: function isStepActive(payload) {
+ this.steps.forEach(function (step) {
+ if (step.name === payload.name) {
+ if (step.completed === true) {
+ step.completed = false;
+ }
+ }
+ });
+ },
+ // Executed when @stepper-finished event is triggered
+ alert: function (_alert) {
+ function alert(_x) {
+ return _alert.apply(this, arguments);
+ }
+
+ alert.toString = function () {
+ return _alert.toString();
+ };
+
+ return alert;
+ }(function (payload) {
+ alert('end');
+ })
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=script&lang=js&":
/*!**********************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=script&lang=js& ***!
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&":
+/*!***************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js& ***!
+ \***************************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @ckeditor/ckeditor5-build-classic */ "./node_modules/@ckeditor/ckeditor5-build-classic/build/ckeditor.js");
+/* harmony import */ var _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ components: {},
+ data: function data() {
+ return {
+ file: this.$root.publishState.file,
+ editor: _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0___default.a,
+ recipient_group: null,
+ recipient_groups: [],
+ email: {
+ content: "\n <p>Bonjour %recipient.name%,</p>\n ",
+ subject: '',
+ type: 2,
+ link: ""
+ },
+ csrf: document.querySelectorAll('meta[name="csrf-token"]')[0].content,
+ editorConfig: {}
+ };
+ },
+ watch: {
+ email: {
+ deep: true,
+ handler: function handler(val, old) {
+ if (val.editorData !== '' && val.subject !== '') {
+ this.$root.publishState.email = val;
+ this.$emit('can-continue', {
+ value: true
+ });
+ } else {
+ this.$emit('can-continue', {
+ value: false
+ });
+ }
+ },
+ immediate: true
+ },
+ recipient_group: function recipient_group(val, old) {
+ this.$root.publishState.recipient_group = val;
+ }
+ },
+ methods: {},
+ mounted: function mounted() {
+ var _this = this;
+
+ this.$emit('can-continue', {
+ value: true
+ });
+ axios.get('/publish/recipient-groups').then(function (d) {
+ return _this.recipient_groups = d.data;
+ });
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=script&lang=js&":
/*!***********************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=script&lang=js& ***!
//
//
//
+//
/* harmony default export */ __webpack_exports__["default"] = ({
components: {},
editor: _ckeditor_ckeditor5_build_classic__WEBPACK_IMPORTED_MODULE_0___default.a,
email: {
content: "\n <p>Bonjour %recipient.name%,</p>\n <p>Voici la nouvelle \xE9dition du jour !</p>\n ",
- subject: "[".concat(this.$root.publishState.file.title, "] ")
+ subject: "[".concat(this.$root.publishState.file.title, "] "),
+ type: 1
},
csrf: document.querySelectorAll('meta[name="csrf-token"]')[0].content,
editorConfig: {}
},
data: function data() {
return {
- file: this.$root.publishState.file,
+ email: this.$root.publishState.email,
recipients_count: 0,
status: 'En attente',
counters: {
mounted: function mounted() {
var _this2 = this;
- axios.get('publish/recipients').then(function (d) {
- return _this2.recipients_count = d.data.data;
- });
+ if (this.$root.publishState.recipient_group === undefined) {
+ axios.get('publish/recipients').then(function (d) {
+ return _this2.recipients_count = d.data.data;
+ });
+ } else {
+ this.recipients_count = this.$root.publishState.recipient_group.count;
+ }
}
});
module.exports = exports;
+/***/ }),
+
+/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&":
+/*!**********************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& ***!
+ \**********************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Imports
+var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+exports = ___CSS_LOADER_API_IMPORT___(false);
+// Module
+exports.push([module.i, "\n.ck-editor__editable {\n min-height: 500px;\n}\n\n", ""]);
+// Exports
+module.exports = exports;
+
+
/***/ }),
/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=style&index=0&lang=css&":
+module.exports = exported;
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&":
+/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& ***!
+ \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var api = __webpack_require__(/*! ../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+ var content = __webpack_require__(/*! !../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& */ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&");
+
+ content = content.__esModule ? content.default : content;
+
+ if (typeof content === 'string') {
+ content = [[module.i, content, '']];
+ }
+
+var options = {};
+
+options.insert = "head";
+options.singleton = false;
+
+var update = api(content, options);
+
+var exported = content.locals ? content.locals : {};
+
+
+
module.exports = exported;
/***/ }),
/***/ }),
-/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&":
-/*!******************************************************************************************************************************************************************************************************************!*\
- !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4& ***!
- \******************************************************************************************************************************************************************************************************************/
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&":
+/*!************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a& ***!
+ \************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&":
+/*!****************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6& ***!
+ \****************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c(
+ "div",
+ [
+ _c("h1", { staticClass: "mb-6" }, [_vm._v("Envoyer une newsletter")]),
+ _vm._v(" "),
+ _c("horizontal-stepper", {
+ attrs: { steps: _vm.steps },
+ on: {
+ "completed-step": _vm.completeStep,
+ "active-step": _vm.isStepActive,
+ "stepper-finished": _vm.alert
+ }
+ })
+ ],
+ 1
+ )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=template&id=26de7527&scoped=true&":
"post-action": "/publish/upload-file",
multiple: false,
drop: true,
- "drop-directory": true,
+ "drop-directory": false,
headers: {
"X-CSRF-TOKEN": _vm.csrf
},
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&":
+/*!*******************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& ***!
+ \*******************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+ var _vm = this
+ var _h = _vm.$createElement
+ var _c = _vm._self._c || _h
+ return _c("div", { staticClass: "stepper-step" }, [
+ _c("div", [
+ _c("div", [
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "recipients" } }, [
+ _vm._v("Destinataires")
+ ]),
+ _vm._v(" "),
+ _c(
+ "select",
+ {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.recipient_group,
+ expression: "recipient_group"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: { name: "recipients", id: "recipients" },
+ on: {
+ change: function($event) {
+ var $$selectedVal = Array.prototype.filter
+ .call($event.target.options, function(o) {
+ return o.selected
+ })
+ .map(function(o) {
+ var val = "_value" in o ? o._value : o.value
+ return val
+ })
+ _vm.recipient_group = $event.target.multiple
+ ? $$selectedVal
+ : $$selectedVal[0]
+ }
+ }
+ },
+ [
+ _vm.recipient_groups.count === 0
+ ? _c(
+ "option",
+ { attrs: { value: "-1", selected: "seleted" } },
+ [_vm._v("Chargement en cours...")]
+ )
+ : _vm._e(),
+ _vm._v(" "),
+ _vm._l(_vm.recipient_groups, function(recipient) {
+ return _c("option", { domProps: { value: recipient } }, [
+ _vm._v(_vm._s(recipient.text))
+ ])
+ })
+ ],
+ 2
+ )
+ ]),
+ _vm._v(" "),
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "subject" } }, [_vm._v("Sujet")]),
+ _vm._v(" "),
+ _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.email.subject,
+ expression: "email.subject"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: {
+ type: "text",
+ id: "subject",
+ placeholder: "Découvrez notre nouveau podcast !"
+ },
+ domProps: { value: _vm.email.subject },
+ on: {
+ input: function($event) {
+ if ($event.target.composing) {
+ return
+ }
+ _vm.$set(_vm.email, "subject", $event.target.value)
+ }
+ }
+ })
+ ]),
+ _vm._v(" "),
+ _c(
+ "div",
+ { staticClass: "form-group" },
+ [
+ _c("label", { attrs: { for: "content" } }, [_vm._v("Contenu")]),
+ _vm._v(" "),
+ _c("ckeditor", {
+ attrs: {
+ editor: _vm.editor,
+ config: _vm.editorConfig,
+ id: "content"
+ },
+ model: {
+ value: _vm.email.content,
+ callback: function($$v) {
+ _vm.$set(_vm.email, "content", $$v)
+ },
+ expression: "email.content"
+ }
+ })
+ ],
+ 1
+ ),
+ _vm._v(" "),
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "subject" } }, [
+ _vm._v("Lien principal")
+ ]),
+ _vm._v(" "),
+ _c("input", {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.email.link,
+ expression: "email.link"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: {
+ type: "text",
+ id: "link",
+ placeholder: "https://exemple.fr"
+ },
+ domProps: { value: _vm.email.link },
+ on: {
+ input: function($event) {
+ if ($event.target.composing) {
+ return
+ }
+ _vm.$set(_vm.email, "link", $event.target.value)
+ }
+ }
+ })
+ ])
+ ])
+ ]),
+ _vm._v(" "),
+ _c(
+ "form",
+ {
+ attrs: { method: "post", action: "/publish/preview", target: "_blank" }
+ },
+ [
+ _c("input", {
+ attrs: { type: "hidden", name: "_token" },
+ domProps: { value: _vm.csrf }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "subject" },
+ domProps: { value: _vm.email.subject }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "type" },
+ domProps: { value: _vm.email.type }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "content" },
+ domProps: { value: _vm.email.content }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "link" },
+ domProps: { value: _vm.email.link }
+ }),
+ _vm._v(" "),
+ _c("input", {
+ staticClass: "btn btn-primary",
+ attrs: { type: "submit", value: "Prévisualiser l'email" }
+ })
+ ]
+ )
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step2PrepareMail.vue?vue&type=template&id=5a14ddba&":
domProps: { value: _vm.email.subject }
}),
_vm._v(" "),
+ _c("input", {
+ attrs: { type: "hidden", name: "type" },
+ domProps: { value: _vm.email.type }
+ }),
+ _vm._v(" "),
_c("input", {
attrs: { type: "hidden", name: "content" },
domProps: { value: _vm.email.content }
return _c("div", { staticClass: "stepper-step" }, [
_c("div", { staticClass: "mb-3" }, [
_c("h3", { staticClass: "text-center" }, [
- _vm._v("\n " + _vm._s(_vm.file.title) + "\n ")
+ _vm._v("\n " + _vm._s(_vm.email.subject) + "\n ")
])
]),
_vm._v(" "),
"./components/Home/cover.vue": "./resources/js/components/Home/cover.vue",
"./components/LiveStats.vue": "./resources/js/components/LiveStats.vue",
"./components/Publish/HeadlineRepeater.vue": "./resources/js/components/Publish/HeadlineRepeater.vue",
- "./components/Publish/Publish.vue": "./resources/js/components/Publish/Publish.vue",
+ "./components/Publish/PublishLetter.vue": "./resources/js/components/Publish/PublishLetter.vue",
+ "./components/Publish/PublishNewsletter.vue": "./resources/js/components/Publish/PublishNewsletter.vue",
"./components/Publish/Step1UploadFile.vue": "./resources/js/components/Publish/Step1UploadFile.vue",
+ "./components/Publish/Step1WriteNewsletter.vue": "./resources/js/components/Publish/Step1WriteNewsletter.vue",
"./components/Publish/Step2PrepareMail.vue": "./resources/js/components/Publish/Step2PrepareMail.vue",
"./components/Publish/Step3Send.vue": "./resources/js/components/Publish/Step3Send.vue",
"./components/Stats/EmailStatistics.vue": "./resources/js/components/Stats/EmailStatistics.vue",
},
email: {
subject: "",
- content: ""
+ content: "",
+ link: "",
+ type: 0
}
}
}
/***/ }),
-/***/ "./resources/js/components/Publish/Publish.vue":
-/*!*****************************************************!*\
- !*** ./resources/js/components/Publish/Publish.vue ***!
- \*****************************************************/
+/***/ "./resources/js/components/Publish/PublishLetter.vue":
+/*!***********************************************************!*\
+ !*** ./resources/js/components/Publish/PublishLetter.vue ***!
+ \***********************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Publish.vue?vue&type=template&id=6a7b0cd4& */ "./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&");
-/* harmony import */ var _Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Publish.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&");
+/* harmony import */ var _PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PublishLetter.vue?vue&type=template&id=280ded1a& */ "./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&");
+/* harmony import */ var _PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PublishLetter.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&");
/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
/* normalize component */
var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
- _Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
- _Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["render"],
- _Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ _PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
null,
/* hot reload */
if (false) { var api; }
-component.options.__file = "resources/js/components/Publish/Publish.vue"
+component.options.__file = "resources/js/components/Publish/PublishLetter.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }),
-/***/ "./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&":
-/*!******************************************************************************!*\
- !*** ./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js& ***!
- \******************************************************************************/
+/***/ "./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&":
+/*!************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js& ***!
+ \************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./Publish.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=script&lang=js&");
-/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishLetter.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ }),
-/***/ "./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&":
-/*!************************************************************************************!*\
- !*** ./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4& ***!
- \************************************************************************************/
+/***/ "./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&":
+/*!******************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a& ***!
+ \******************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishLetter.vue?vue&type=template&id=280ded1a& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishLetter.vue?vue&type=template&id=280ded1a&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishLetter_vue_vue_type_template_id_280ded1a___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/PublishNewsletter.vue":
+/*!***************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishNewsletter.vue ***!
+ \***************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PublishNewsletter.vue?vue&type=template&id=930f83a6& */ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&");
+/* harmony import */ var _PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PublishNewsletter.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+ _PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/Publish/PublishNewsletter.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&":
+/*!****************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishNewsletter.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&":
+/*!**********************************************************************************************!*\
+ !*** ./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6& ***!
+ \**********************************************************************************************/
/*! exports provided: render, staticRenderFns */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
-/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./Publish.vue?vue&type=template&id=6a7b0cd4& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Publish.vue?vue&type=template&id=6a7b0cd4&");
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./PublishNewsletter.vue?vue&type=template&id=930f83a6& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/PublishNewsletter.vue?vue&type=template&id=930f83a6&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["render"]; });
-/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Publish_vue_vue_type_template_id_6a7b0cd4___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_PublishNewsletter_vue_vue_type_template_id_930f83a6___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue":
+/*!******************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue ***!
+ \******************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& */ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&");
+/* harmony import */ var _Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Step1WriteNewsletter.vue?vue&type=script&lang=js& */ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& */ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+ _Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ null,
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/Publish/Step1WriteNewsletter.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&":
+/*!*******************************************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js& ***!
+ \*******************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&":
+/*!***************************************************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& ***!
+ \***************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css& */ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=style&index=0&lang=css&");
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a);
+
+/***/ }),
+
+/***/ "./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&":
+/*!*************************************************************************************************!*\
+ !*** ./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& ***!
+ \*************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1WriteNewsletter.vue?vue&type=template&id=3f3afc44&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Step1WriteNewsletter_vue_vue_type_template_id_3f3afc44___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/js/components/Publish/Step2PrepareMail.vue":
email:{
subject: "",
content: "",
+ link: "",
+ type: 0,
}
},
}
+++ /dev/null
-<template>
- <div>
- <h1 class="mb-6">Publier une lettre</h1>
-
-<!-- <card-->
-<!-- class="flex flex-col items-center justify-center"-->
-<!-- style="min-height: 300px"-->
-<!-- >-->
-<!-- </card>-->
- <horizontal-stepper :steps="steps"
- @completed-step="completeStep"
- @active-step="isStepActive"
- @stepper-finished="alert"
- >
- </horizontal-stepper>
-
-
- </div>
-</template>
-
-<script>
- /**
- * Step 1 : Upload PDF and preview (add title, tags)
- * Step 2 : Add email subject and content
- * Step 3 : Review, send and track
- */
- import HorizontalStepper from 'vue-stepper';
- import Step1UploadFile from "./Step1UploadFile";
- import Step2PrepareMail from "./Step2PrepareMail";
- import Step3Send from "./Step3Send";
-
- export default {
- components : {
- HorizontalStepper
- },
- data(){
- return {
- steps: [
- {
- icon: 'cloud_upload',
- name: 'upload',
- title: 'Mise en ligne du PDF',
- subtitle: 'Création de la liseuse',
- component: Step1UploadFile,
- completed: false
-
- },
- {
- icon: 'mail',
- name: 'email',
- title: 'Mise en forme du message',
- subtitle: '',
- component: Step2PrepareMail,
- completed: false
-
- },
- {
- icon: 'send',
- name: 'review',
- title: 'Récapitulatif et envoi',
- subtitle: 'Suivi des envois',
- component: Step3Send,
- completed: false
-
- },
- ]
- }
- },
- mounted() {
-
- },
- methods: {
- // Executed when @completed-step event is triggered
- completeStep(payload) {
- this.steps.forEach((step) => {
- if (step.name === payload.name) {
- step.completed = true;
- }
- })
- },
- // Executed when @active-step event is triggered
- isStepActive(payload) {
- this.steps.forEach((step) => {
- if (step.name === payload.name) {
- if(step.completed === true) {
- step.completed = false;
- }
- }
- })
- },
- // Executed when @stepper-finished event is triggered
- alert(payload) {
- alert('end')
- },
-
- }
- }
-</script>
-
-<style>
-
-</style>
--- /dev/null
+<template>
+ <div>
+ <h1 class="mb-6">Publier une lettre</h1>
+
+<!-- <card-->
+<!-- class="flex flex-col items-center justify-center"-->
+<!-- style="min-height: 300px"-->
+<!-- >-->
+<!-- </card>-->
+ <horizontal-stepper :steps="steps"
+ @completed-step="completeStep"
+ @active-step="isStepActive"
+ @stepper-finished="alert"
+ >
+ </horizontal-stepper>
+
+
+ </div>
+</template>
+
+<script>
+ /**
+ * Step 1 : Upload PDF and preview (add title, tags)
+ * Step 2 : Add email subject and content
+ * Step 3 : Review, send and track
+ */
+ import HorizontalStepper from 'vue-stepper';
+ import Step1UploadFile from "./Step1UploadFile";
+ import Step2PrepareMail from "./Step2PrepareMail";
+ import Step3Send from "./Step3Send";
+
+ export default {
+ components : {
+ HorizontalStepper
+ },
+ data(){
+ return {
+ steps: [
+ {
+ icon: 'cloud_upload',
+ name: 'upload',
+ title: 'Mise en ligne du PDF',
+ subtitle: 'Création de la liseuse',
+ component: Step1UploadFile,
+ completed: false
+
+ },
+ {
+ icon: 'mail',
+ name: 'email',
+ title: 'Mise en forme du message',
+ subtitle: '',
+ component: Step2PrepareMail,
+ completed: false
+
+ },
+ {
+ icon: 'send',
+ name: 'review',
+ title: 'Récapitulatif et envoi',
+ subtitle: 'Suivi des envois',
+ component: Step3Send,
+ completed: false
+
+ },
+ ]
+ }
+ },
+ mounted() {
+
+ },
+ methods: {
+ // Executed when @completed-step event is triggered
+ completeStep(payload) {
+ this.steps.forEach((step) => {
+ if (step.name === payload.name) {
+ step.completed = true;
+ }
+ })
+ },
+ // Executed when @active-step event is triggered
+ isStepActive(payload) {
+ this.steps.forEach((step) => {
+ if (step.name === payload.name) {
+ if(step.completed === true) {
+ step.completed = false;
+ }
+ }
+ })
+ },
+ // Executed when @stepper-finished event is triggered
+ alert(payload) {
+ alert('end')
+ },
+
+ }
+ }
+</script>
+
+<style>
+
+</style>
--- /dev/null
+<template>
+ <div>
+ <h1 class="mb-6">Envoyer une newsletter</h1>
+
+<!-- <card-->
+<!-- class="flex flex-col items-center justify-center"-->
+<!-- style="min-height: 300px"-->
+<!-- >-->
+<!-- </card>-->
+ <horizontal-stepper :steps="steps"
+ @completed-step="completeStep"
+ @active-step="isStepActive"
+ @stepper-finished="alert"
+ >
+ </horizontal-stepper>
+
+
+ </div>
+</template>
+
+<script>
+ /**
+ * Step 1 : Upload PDF and preview (add title, tags)
+ * Step 2 : Add email subject and content
+ * Step 3 : Review, send and track
+ */
+ import HorizontalStepper from 'vue-stepper';
+ import Step1WriteNewsletter from "./Step1WriteNewsletter";
+ import Step3Send from "./Step3Send";
+
+ export default {
+ components : {
+ HorizontalStepper
+ },
+ data(){
+ return {
+ steps: [
+ {
+ icon: 'mail',
+ name: 'email',
+ title: 'Mise en forme du message',
+ subtitle: '',
+ component: Step1WriteNewsletter,
+ completed: false
+
+ },
+ {
+ icon: 'send',
+ name: 'review',
+ title: 'Récapitulatif et envoi',
+ subtitle: 'Suivi des envois',
+ component: Step3Send,
+ completed: false
+
+ },
+ ]
+ }
+ },
+ mounted() {
+
+ },
+ methods: {
+ // Executed when @completed-step event is triggered
+ completeStep(payload) {
+ this.steps.forEach((step) => {
+ if (step.name === payload.name) {
+ step.completed = true;
+ }
+ })
+ },
+ // Executed when @active-step event is triggered
+ isStepActive(payload) {
+ this.steps.forEach((step) => {
+ if (step.name === payload.name) {
+ if(step.completed === true) {
+ step.completed = false;
+ }
+ }
+ })
+ },
+ // Executed when @stepper-finished event is triggered
+ alert(payload) {
+ alert('end')
+ },
+
+ }
+ }
+</script>
+
+<style>
+
+</style>
@input-file="inputFile"
:multiple="false"
:drop="true"
- :drop-directory="true"
+ :drop-directory="false"
v-model="files"
:headers="{
'X-CSRF-TOKEN': csrf
--- /dev/null
+<template>
+
+ <div class="stepper-step">
+
+ <div>
+
+ <div>
+ <div class="form-group">
+ <label for="recipients">Destinataires</label>
+ <select name="recipients" id="recipients" v-model="recipient_group" class="form-control">
+ <option v-if="recipient_groups.count === 0" value="-1" selected="seleted">Chargement en cours...</option>
+ <option v-for="recipient in recipient_groups" :value="recipient" >{{recipient.text}}</option>
+ </select>
+
+ </div>
+ <div class="form-group">
+ <label for="subject">Sujet</label>
+ <input v-model="email.subject" type="text" class="form-control" id="subject" placeholder="Découvrez notre nouveau podcast !">
+ </div>
+
+ <div class="form-group">
+ <label for="content">Contenu</label>
+ <ckeditor :editor="editor" v-model="email.content" :config="editorConfig" id="content"></ckeditor>
+ </div>
+
+ <div class="form-group">
+ <label for="subject">Lien principal</label>
+ <input v-model="email.link" type="text" class="form-control" id="link" placeholder="https://exemple.fr">
+ </div>
+ </div>
+ </div>
+
+
+
+ <form method="post" action="/publish/preview"
+ target="_blank">
+ <input type="hidden" name="_token" :value="csrf">
+ <input type="hidden" name="subject" :value="email.subject">
+ <input type="hidden" name="type" :value="email.type">
+ <input type="hidden" name="content" :value="email.content">
+ <input type="hidden" name="link" :value="email.link">
+ <input type="submit" class="btn btn-primary" value="Prévisualiser l'email">
+ </form>
+
+
+ </div>
+
+
+
+</template>
+
+<style>
+
+.ck-editor__editable {
+ min-height: 500px;
+}
+
+</style>
+
+<script>
+ import ClassicEditor from '@ckeditor/ckeditor5-build-classic';
+
+
+ export default {
+ components: {
+
+ },
+ data() {
+ return {
+ file: this.$root.publishState.file,
+ editor: ClassicEditor,
+ recipient_group: null,
+ recipient_groups: [],
+ email: {
+ content: `
+ <p>Bonjour %recipient.name%,</p>
+ `,
+ subject: '',
+ type: 2,
+ link: ""
+ },
+ csrf: document.querySelectorAll('meta[name="csrf-token"]')[0].content,
+ editorConfig: {
+
+ }
+ }
+ },
+
+ watch: {
+ email: {
+ deep: true,
+ handler: function(val, old) {
+ if(val.editorData !== '' && val.subject !== ''){
+ this.$root.publishState.email = val;
+ this.$emit('can-continue', {value: true});
+ } else {
+ this.$emit('can-continue', {value: false});
+ }
+
+ },
+ immediate: true,
+ },
+ recipient_group: function(val, old) {
+ this.$root.publishState.recipient_group = val
+ }
+ },
+ methods: {
+
+ },
+ mounted() {
+ this.$emit('can-continue', {value: true});
+ axios.get('/publish/recipient-groups').then(d => this.recipient_groups = d.data);
+ }
+
+ }
+</script>
target="_blank">
<input type="hidden" name="_token" :value="csrf">
<input type="hidden" name="subject" :value="email.subject">
+ <input type="hidden" name="type" :value="email.type">
<input type="hidden" name="content" :value="email.content">
<input type="hidden" name="link" :value="'/preview/'+file.slug">
<input type="submit" class="btn btn-primary" value="Prévisualiser l'email">
<p>Bonjour %recipient.name%,</p>
<p>Voici la nouvelle édition du jour !</p>
`,
- subject: `[${this.$root.publishState.file.title}] `
+ subject: `[${this.$root.publishState.file.title}] `,
+ type: 1
},
csrf: document.querySelectorAll('meta[name="csrf-token"]')[0].content,
editorConfig: {
<div class="mb-3">
<h3 class="text-center">
- {{file.title}}
+ {{email.subject}}
</h3>
</div>
<div class="alert alert-info my-2 mx-auto d-block mw-400" v-if="!publishing">
},
data() {
return {
- file: this.$root.publishState.file,
+ email: this.$root.publishState.email,
recipients_count: 0,
status: 'En attente',
counters : {
},
mounted() {
- axios.get('publish/recipients').then(d => this.recipients_count = d.data.data)
+ if(this.$root.publishState.recipient_group === undefined){
+ axios.get('publish/recipients').then(d => this.recipients_count = d.data.data)
+ } else {
+ this.recipients_count = this.$root.publishState.recipient_group.count;
+ }
}
}
</script>
--- /dev/null
+@extends('admin.layouts.free')
+
+
+@section('content')
+ <div class="bootstrap">
+ <div class="container mt-3">
+ <publish-letter></publish-letter>
+ </div>
+ </div>
+@endsection
--- /dev/null
+@extends('admin.layouts.free')
+
+
+@section('content')
+ <div class="bootstrap">
+ <div class="container mt-3">
+ <publish-newsletter></publish-newsletter>
+ </div>
+ </div>
+@endsection
+++ /dev/null
-@extends('admin.layouts.free')
-
-
-@section('content')
- <div class="bootstrap">
- <div class="container mt-3">
- <publish></publish>
- </div>
- </div>
-@endsection
--- /dev/null
+@component('mail::message')
+
+# L’ÉDITION DU JOUR
+
+## {{$subject}}
+
+{!! $content !!}
+
+@component('mail::button', ['url' => $link ?? '%recipient.file_url%', 'color' => 'primary'])
+Cliquez ici pour lire !
+@endcomponent
+
+
+@endcomponent
+
+++ /dev/null
-@component('mail::message')
-
-# L’ÉDITION DU JOUR
-
-## {{$subject}}
-
-{!! $content !!}
-
-@component('mail::button', ['url' => $link ?? '%recipient.file_url%', 'color' => 'primary'])
-Cliquez ici pour lire !
-@endcomponent
-
-
-@endcomponent
-
--- /dev/null
+@component('mail::message')
+
+
+{!! $content !!}
+
+@unless($link === null)
+@component('mail::button', ['url' => $link , 'color' => 'primary'])
+Cliquez ici
+@endcomponent
+@endunless
+
+
+@endcomponent
+
</div>
- <div class="row mt-4 text-justify">
+ <div class="row mt-4">
<div class="col-12 mb-3">
<h2 class="text-center">Nos rubriques du mois</h2>
</div>
/** Publishing and mass sending process */
Route::prefix('publish')->group(function() {
- Route::get('', 'PublishController@index')->name('publish');
+ Route::get('', 'PublishController@letter')->name('publish.letter');
Route::post('', 'PublishController@publish');
Route::post('upload-file', 'PublishController@uploadFile');
Route::get('tags', 'PublishController@tags');
Route::get('recipients', 'PublishController@recipientsCount');
+ Route::get('recipient-groups', 'PublishController@sendGroupList');
+
+ Route::prefix('newsletter')->group(function(){
+ Route::get('/', 'PublishController@newsletter')->name('publish.newsletter');
+
+
+
+ });
+
});
Route::prefix('statistics')->group(function () {