diff --git a/app/Http/Controllers/AjaxController.php b/app/Http/Controllers/AjaxController.php
index 9e586dd..f63ca5f 100644
--- a/app/Http/Controllers/AjaxController.php
+++ b/app/Http/Controllers/AjaxController.php
@@ -63,6 +63,27 @@ class AjaxController extends Controller
return json_encode($coupon);
}
+ // ---- Dépublie une campagne
+ public function unpublish_camp_ajax(Request $request){
+ $campid = $request->input('campid');
+ $campagne = Campagne::find($campid);
+ $campagne->camp_published = 0;
+ $campagne->save();
+
+ return json_encode($campagne);
+ }
+
+ // ---- Publie une campagne
+ public function publish_camp_ajax(Request $request){
+ $campid = $request->input('campid');
+ $campagne = Campagne::find($campid);
+ $campagne->camp_published = 1;
+ $campagne->save();
+
+ return json_encode($campagne);
+ }
+
+
// ---- Impression des BR
public function impression_ajax(Request $request){
diff --git a/app/Http/Controllers/MurController.php b/app/Http/Controllers/MurController.php
index 286ebd0..6d45691 100644
--- a/app/Http/Controllers/MurController.php
+++ b/app/Http/Controllers/MurController.php
@@ -28,6 +28,10 @@ class MurController extends Controller
$ref = $campagne->camp_id;
}
+ if($campagne->camp_published == 0){
+ abort(404);
+ }
+
if(isset($datas['hash'])){
$contact = Contact::where([
'contact_hash' => $datas['hash'], 'contact_siteId' => $campagne->camp_siteId
diff --git a/public/css/app.css b/public/css/app.css
index d91530a..e0040a4 100644
--- a/public/css/app.css
+++ b/public/css/app.css
@@ -202,6 +202,50 @@ p {
margin-right: 10px;
}
+.code404 {
+ background-color: #adb5bd;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+}
+
+.code404 div {
+ width: 400px;
+ padding: 20px;
+ display: -webkit-box;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-orient: vertical;
+ -webkit-box-direction: normal;
+ -ms-flex-direction: column;
+ flex-direction: column;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ -webkit-box-pack: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ background-color: #FFF;
+}
+
+.code404 div h2 {
+ color: #df0000;
+ font-weight: bold;
+}
+
+.code404 div p {
+ color: #000;
+ text-align: center;
+ line-height: 1.2em;
+ font-weight: bold;
+}
+
/*!
* Font Awesome Free 5.3.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
@@ -6570,6 +6614,10 @@ main section .alert {
margin: 10px 0;
}
+main section .pub i {
+ cursor: pointer;
+}
+
#coupons-list {
background-color: #2d2d2d;
padding: 20px;
diff --git a/public/js/ajax.js b/public/js/ajax.js
index eadd015..cf93ea3 100644
--- a/public/js/ajax.js
+++ b/public/js/ajax.js
@@ -76,7 +76,7 @@ module.exports = __webpack_require__(5);
/***/ 5:
/***/ (function(module, exports) {
-eval("$('#addCoupons').on('click', function (event) {\n event.preventDefault();\n var ids = [];\n $(this).parent().find('.inputGroup input').each(function (event) {\n if ($(this).is(':checked')) {\n ids.push($(this).val());\n }\n });\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $(this).parent().find('#csrf').val()\n }\n });\n\n $.ajax({\n url: '/add-coupons-ajax',\n type: 'POST',\n data: {\n ids: ids,\n campid: $(this).parent().find('#camp_id').val()\n },\n dataType: 'JSON',\n success: function success(reponse) {\n $.each(reponse, function (index, coupon) {\n var html = '
';\n html += '| ' + coupon.coupon_code + ' | ';\n html += '' + coupon.coupon_name + ' | ';\n html += ' | ';\n html += '
';\n $('.no-result').remove();\n $('.coupons-wrapper table').append(html);\n $('#addCoupons').parent().find('.inputGroup input').each(function (event) {\n if ($(this).val() == coupon.coupon_id) {\n $(this).parent('.inputGroup').remove();\n }\n });\n $.fancybox.close();\n });\n },\n error: function error(e) {\n console.log(e.responseText);\n }\n });\n});\n\n$('body').on('click', '.delete-coupon', function (event) {\n event.preventDefault();\n var campid = $(this).attr('data-campid');\n var couponid = $(this).attr('data-couponid');\n var trLinked = $(this).parent().parent();\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': trLinked.parent().parent().parent().find('#csrf').val()\n }\n });\n\n $.ajax({\n url: '/remove-coupons-ajax',\n type: 'POST',\n data: {\n couponid: couponid,\n campid: campid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n trLinked.remove();\n var html = \"\";\n html += \"\";\n html += \"\";\n html += \"
\";\n $(\"#camp_id\").before(html);\n },\n error: function error(e) {\n console.log(e.responseText);\n }\n });\n});\n\n$('body').on('click', '.unpublish', function (event) {\n event.preventDefault();\n var couponid = $(this).attr('data-couponid');\n var element = $(this).parent();\n //var icon = $(this).find('.pub');\n $.fancyConfirm({\n title: \" Dépublier\",\n message: \"Êtes-vous sûr de vouloir dépublier ce coupon ?\",\n okButton: 'Dépublier',\n noButton: 'Annuler',\n callback: function callback(value) {\n if (value) {\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $('#csrf').val()\n }\n });\n $.ajax({\n url: '/unpublish-coupons-ajax',\n type: 'POST',\n data: {\n couponid: couponid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n //icon.remove();\n element.empty().html('');\n }\n });\n }\n }\n });\n});\n\n$('body').on('click', '.publish', function (event) {\n event.preventDefault();\n var couponid = $(this).attr('data-couponid');\n var element = $(this).parent();\n //var icon = $(this).find('.pub');\n $.fancyInfo({\n title: \" Publier\",\n message: \"Êtes-vous sûr de vouloir publier ce coupon ?\",\n okButton: 'Publier',\n noButton: 'Annuler',\n callback: function callback(value) {\n if (value) {\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $('#csrf').val()\n }\n });\n $.ajax({\n url: '/publish-coupons-ajax',\n type: 'POST',\n data: {\n couponid: couponid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n //icon.remove();\n element.empty().html('');\n }\n });\n }\n }\n });\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvYWpheC5qcz9hOGJiIl0sIm5hbWVzIjpbIiQiLCJvbiIsImV2ZW50IiwicHJldmVudERlZmF1bHQiLCJpZHMiLCJwYXJlbnQiLCJmaW5kIiwiZWFjaCIsImlzIiwicHVzaCIsInZhbCIsImFqYXhTZXR1cCIsImhlYWRlcnMiLCJhamF4IiwidXJsIiwidHlwZSIsImRhdGEiLCJjYW1waWQiLCJkYXRhVHlwZSIsInN1Y2Nlc3MiLCJyZXBvbnNlIiwiaW5kZXgiLCJjb3Vwb24iLCJodG1sIiwiY291cG9uX2NvZGUiLCJjb3Vwb25fbmFtZSIsImNvdXBvbl9pZCIsInJlbW92ZSIsImFwcGVuZCIsImZhbmN5Ym94IiwiY2xvc2UiLCJlcnJvciIsImUiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2VUZXh0IiwiYXR0ciIsImNvdXBvbmlkIiwidHJMaW5rZWQiLCJiZWZvcmUiLCJlbGVtZW50IiwiZmFuY3lDb25maXJtIiwidGl0bGUiLCJtZXNzYWdlIiwib2tCdXR0b24iLCJub0J1dHRvbiIsImNhbGxiYWNrIiwidmFsdWUiLCJlbXB0eSIsImZhbmN5SW5mbyJdLCJtYXBwaW5ncyI6IkFBQUFBLEVBQUUsYUFBRixFQUFpQkMsRUFBakIsQ0FBb0IsT0FBcEIsRUFBNkIsVUFBU0MsS0FBVCxFQUFlO0FBQ3hDQSxVQUFNQyxjQUFOO0FBQ0EsUUFBSUMsTUFBTSxFQUFWO0FBQ0FKLE1BQUUsSUFBRixFQUFRSyxNQUFSLEdBQWlCQyxJQUFqQixDQUFzQixtQkFBdEIsRUFBMkNDLElBQTNDLENBQWdELFVBQVNMLEtBQVQsRUFBZTtBQUMzRCxZQUFHRixFQUFFLElBQUYsRUFBUVEsRUFBUixDQUFXLFVBQVgsQ0FBSCxFQUEwQjtBQUN0QkosZ0JBQUlLLElBQUosQ0FBU1QsRUFBRSxJQUFGLEVBQVFVLEdBQVIsRUFBVDtBQUNIO0FBRUosS0FMRDtBQU1BVixNQUFFVyxTQUFGLENBQVk7QUFDUkMsaUJBQVM7QUFDTCw0QkFBZ0Ja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LE1BQUYsRUFBVUMsRUFBVixDQUFhLE9BQWIsRUFBc0IsVUFBdEIsRUFBa0MsVUFBU0MsS0FBVCxFQUFlO0FBQzdDQSxVQUFNQyxjQUFOO0FBQ0EsUUFBSWtDLFdBQVdyQyxFQUFFLElBQUYsRUFBUW9DLElBQVIsQ0FBYSxlQUFiLENBQWY7QUFDQSxRQUFJSSxVQUFVeEMsRUFBRSxJQUFGLEVBQVFLLE1BQVIsRUFBZDtBQUNBO0FBQ0FMLE1BQUVpRCxTQUFGLENBQVk7QUFDUlAsZUFBWSw2Q0FESjtBQUVSQyxpQkFBWSw4Q0FGSjtBQUdSQyxrQkFBWSxTQUhKO0FBSVJDLGtCQUFZLFNBSko7QUFLUkMsa0JBQVksa0JBQVVDLEtBQVYsRUFBaUI7QUFDM0IsZ0JBQUlBLEtBQUosRUFBVztBQUNUL0Msa0JBQUVXLFNBQUYsQ0FBWTtBQUNSQyw2QkFBUztBQUNMLHdDQUFnQlosRUFBRSxPQUFGLEVBQVdVLEdBQVg7QUFEWDtBQURELGlCQUFaO0FBS0FWLGtCQUFFYSxJQUFGLENBQU87QUFDSEMseUJBQUssdUJBREY7QUFFSEMsMEJBQU0sTUFGSDtBQUdIQywwQkFBTTtBQUNGcUIsa0NBQVVBO0FBRFIscUJBSEg7QUFNSG5CLDhCQUFVLE1BTlA7QUFPSEMsNkJBQVMsaUJBQVVDLE9BQVYsRUFBbUI7QUFDeEI7QUFDQW9CLGdDQUFRUSxLQUFSLEdBQWdCekIsSUFBaEIsQ0FBcUIsdUJBQXFCYyxRQUFyQixHQUE4QixvREFBbkQ7QUFDSDtBQVZFLGlCQUFQO0FBWUQ7QUFDRjtBQXpCTyxLQUFaO0FBNEJILENBakNEIiwiZmlsZSI6IjUuanMiLCJzb3VyY2VzQ29udGVudCI6WyIkKCcjYWRkQ291cG9ucycpLm9uKCdjbGljaycsIGZ1bmN0aW9uKGV2ZW50KXtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBsZXQgaWRzID0gW107XHJcbiAgICAkKHRoaXMpLnBhcmVudCgpLmZpbmQoJy5pbnB1dEdyb3VwIGlucHV0JykuZWFjaChmdW5jdGlvbihldmVudCl7XHJcbiAgICAgICAgaWYoJCh0aGlzKS5pcygnOmNoZWNrZWQnKSl7XHJcbiAgICAgICAgICAgIGlkcy5wdXNoKCQodGhpcykudmFsKCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH0pXHJcbiAgICAkLmFqYXhTZXR1cCh7XHJcbiAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAnWC1DU1JGLVRPS0VOJzogJCh0aGlzKS5wYXJlbnQoKS5maW5kKCcjY3NyZicpLnZhbCgpXHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgJC5hamF4KHtcclxuICAgICAgICB1cmw6ICcvYWRkLWNvdXBvbnMtYWpheCcsXHJcbiAgICAgICAgdHlwZTogJ1BPU1QnLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgaWRzOiBpZHMgLFxyXG4gICAgICAgICAgICBjYW1waWQ6ICQodGhpcykucGFyZW50KCkuZmluZCgnI2NhbXBfaWQnKS52YWwoKVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZGF0YVR5cGU6ICdKU09OJyxcclxuICAgICAgICBzdWNjZXNzOiBmdW5jdGlvbiAocmVwb25zZSkgeyAgICBcclxuICAgICAgICAgICAgJC5lYWNoKHJlcG9uc2UsIGZ1bmN0aW9uKGluZGV4LCBjb3Vwb24pe1xyXG4gICAgICAgICAgICAgICAgdmFyIGh0bWwgPSAnPHRyPic7XHJcbiAgICAgICAgICAgICAgICBodG1sICs9ICc8dGQ+Jytjb3Vwb24uY291cG9uX2NvZGUrJzwvdGQ+JztcclxuICAgICAgICAgICAgICAgIGh0bWwgKz0gJzx0ZD4nK2NvdXBvbi5jb3Vwb25fbmFtZSsnPC90ZD4nO1xyXG4gICAgICAgICAgICAgICAgaHRtbCArPSAnPHRkPjxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzIGRlbGV0ZS1jb3Vwb25cIiBkYXRhLWNhbXBpZD1cIicrJCh0aGlzKS5wYXJlbnQoKS5maW5kKCcjY2FtcF9pZCcpLnZhbCgpKydcIiBkYXRhLWNvdXBvbmlkPVwiJytjb3Vwb24uY291cG9uX2lkKydcIj48L2k+PC90ZD4nO1xyXG4gICAgICAgICAgICAgICAgaHRtbCArPSAnPC90cj4nO1xyXG4gICAgICAgICAgICAgICAgJCgnLm5vLXJlc3VsdCcpLnJlbW92ZSgpO1xyXG4gICAgICAgICAgICAgICAgJCgnLmNvdXBvbnMtd3JhcHBlciB0YWJsZScpLmFwcGVuZChodG1sKTtcclxuICAgICAgICAgICAgICAgICQoJyNhZGRDb3Vwb25zJykucGFyZW50KCkuZmluZCgnLmlucHV0R3JvdXAgaW5wdXQnKS5lYWNoKGZ1bmN0aW9uKGV2ZW50KXtcclxuICAgICAgICAgICAgICAgICAgICBpZigkKHRoaXMpLnZhbCgpID09IGNvdXBvbi5jb3Vwb25faWQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAkKHRoaXMpLnBhcmVudCgnLmlucHV0R3JvdXAnKS5yZW1vdmUoKTtcclxuICAgICAgICAgICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAkLmZhbmN5Ym94LmNsb3NlKCk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGUucmVzcG9uc2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxufSkgIFxyXG5cclxuXHJcblxyXG4kKCdib2R5Jykub24oJ2NsaWNrJywgJy5kZWxldGUtY291cG9uJywgZnVuY3Rpb24oZXZlbnQpe1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHZhciBjYW1waWQgPSAkKHRoaXMpLmF0dHIoJ2RhdGEtY2FtcGlkJyk7XHJcbiAgICB2YXIgY291cG9uaWQgPSAkKHRoaXMpLmF0dHIoJ2RhdGEtY291cG9uaWQnKTtcclxuICAgIHZhciB0ckxpbmtlZCA9ICQodGhpcykucGFyZW50KCkucGFyZW50KCk7XHJcbiAgICAkLmFqYXhTZXR1cCh7XHJcbiAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAnWC1DU1JGLVRPS0VOJzogdHJMaW5rZWQucGFyZW50KCkucGFyZW50KCkucGFyZW50KCkuZmluZCgnI2NzcmYnKS52YWwoKVxyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgICQuYWpheCh7XHJcbiAgICAgICAgdXJsOiAnL3JlbW92ZS1jb3Vwb25zLWFqYXgnLFxyXG4gICAgICAgIHR5cGU6ICdQT1NUJyxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGNvdXBvbmlkOiBjb3Vwb25pZCxcclxuICAgICAgICAgICAgY2FtcGlkOiBjYW1waWRcclxuICAgICAgICB9LFxyXG4gICAgICAgIGRhdGFUeXBlOiAnSlNPTicsXHJcbiAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlcG9uc2UpIHsgXHJcbiAgICAgICAgICAgIHRyTGlua2VkLnJlbW92ZSgpO1xyXG4gICAgICAgICAgICB2YXIgaHRtbCA9IFwiPGRpdiBjbGFzcz0naW5wdXRHcm91cCc+XCI7XHJcbiAgICAgICAgICAgIGh0bWwgKz0gXCI8aW5wdXQgaWQ9J2NvdXBvbltcIityZXBvbnNlLmNvdXBvbl9pZCtcIl0nIG5hbWU9J2NvdXBvbltcIityZXBvbnNlLmNvdXBvbl9pZCtcIl0nIHR5cGU9J2NoZWNrYm94JyB2YWx1ZT0nXCIrcmVwb25zZS5jb3Vwb25faWQrXCInID5cIjtcclxuICAgICAgICAgICAgaHRtbCArPSBcIjxsYWJlbCBmb3I9J2NvdXBvbltcIityZXBvbnNlLmNvdXBvbl9pZCtcIl0nPlwiK3JlcG9uc2UuY291cG9uX25hbWUrXCI8L2xhYmVsPlwiO1xyXG4gICAgICAgICAgICBodG1sICs9IFwiPC9kaXY+XCI7XHJcbiAgICAgICAgICAgICQoXCIjY2FtcF9pZFwiKS5iZWZvcmUoaHRtbCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogZnVuY3Rpb24gKGUpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZS5yZXNwb25zZVRleHQpO1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG59KVxyXG5cclxuXHJcbiQoJ2JvZHknKS5vbignY2xpY2snLCAnLnVucHVibGlzaCcsIGZ1bmN0aW9uKGV2ZW50KXtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB2YXIgY291cG9uaWQgPSAkKHRoaXMpLmF0dHIoJ2RhdGEtY291cG9uaWQnKTtcclxuICAgIHZhciBlbGVtZW50ID0gJCh0aGlzKS5wYXJlbnQoKTtcclxuICAgIC8vdmFyIGljb24gPSAkKHRoaXMpLmZpbmQoJy5wdWInKTtcclxuICAgICQuZmFuY3lDb25maXJtKHtcclxuICAgICAgICB0aXRsZSAgICAgOiBcIjxpIGNsYXNzPSdmYXMgZmEtdGltZXMtY2lyY2xlJz48L2k+IETDqXB1YmxpZXJcIixcclxuICAgICAgICBtZXNzYWdlICAgOiBcIsOKdGVzLXZvdXMgc8O7ciBkZSB2b3Vsb2lyIGTDqXB1YmxpZXIgY2UgY291cG9uID9cIixcclxuICAgICAgICBva0J1dHRvbiAgOiAnRMOpcHVibGllcicsXHJcbiAgICAgICAgbm9CdXR0b24gIDogJ0FubnVsZXInLFxyXG4gICAgICAgIGNhbGxiYWNrICA6IGZ1bmN0aW9uICh2YWx1ZSkge1xyXG4gICAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICQuYWpheFNldHVwKHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAnWC1DU1JGLVRPS0VOJzogJCgnI2NzcmYnKS52YWwoKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgJC5hamF4KHtcclxuICAgICAgICAgICAgICAgIHVybDogJy91bnB1Ymxpc2gtY291cG9ucy1hamF4JyxcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdQT1NUJyxcclxuICAgICAgICAgICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgICBjb3Vwb25pZDogY291cG9uaWRcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ0pTT04nLFxyXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlcG9uc2UpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgLy9pY29uLnJlbW92ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZW1wdHkoKS5odG1sKCc8aSBkYXRhLWNvdXBvbmlkPVwiJytjb3Vwb25pZCsnXCIgY2xhc3M9XCJmYXMgZmEtdGltZXMtY2lyY2xlIHJlZCBwdWJsaXNoXCI+PC9pPicpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgXHJcbn0pXHJcblxyXG4kKCdib2R5Jykub24oJ2NsaWNrJywgJy5wdWJsaXNoJywgZnVuY3Rpb24oZXZlbnQpe1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHZhciBjb3Vwb25pZCA9ICQodGhpcykuYXR0cignZGF0YS1jb3Vwb25pZCcpO1xyXG4gICAgdmFyIGVsZW1lbnQgPSAkKHRoaXMpLnBhcmVudCgpO1xyXG4gICAgLy92YXIgaWNvbiA9ICQodGhpcykuZmluZCgnLnB1YicpO1xyXG4gICAgJC5mYW5jeUluZm8oe1xyXG4gICAgICAgIHRpdGxlICAgICA6IFwiPGkgY2xhc3M9J2ZhcyBmYS1jaGVjay1jaXJjbGUnPjwvaT4gUHVibGllclwiLFxyXG4gICAgICAgIG1lc3NhZ2UgICA6IFwiw4p0ZXMtdm91cyBzw7tyIGRlIHZvdWxvaXIgcHVibGllciBjZSBjb3Vwb24gP1wiLFxyXG4gICAgICAgIG9rQnV0dG9uICA6ICdQdWJsaWVyJyxcclxuICAgICAgICBub0J1dHRvbiAgOiAnQW5udWxlcicsXHJcbiAgICAgICAgY2FsbGJhY2sgIDogZnVuY3Rpb24gKHZhbHVlKSB7XHJcbiAgICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgJC5hamF4U2V0dXAoe1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgICAgICdYLUNTUkYtVE9LRU4nOiAkKCcjY3NyZicpLnZhbCgpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAkLmFqYXgoe1xyXG4gICAgICAgICAgICAgICAgdXJsOiAnL3B1Ymxpc2gtY291cG9ucy1hamF4JyxcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdQT1NUJyxcclxuICAgICAgICAgICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgICBjb3Vwb25pZDogY291cG9uaWRcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ0pTT04nLFxyXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlcG9uc2UpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgLy9pY29uLnJlbW92ZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZW1wdHkoKS5odG1sKCc8aSBkYXRhLWNvdXBvbmlkPVwiJytjb3Vwb25pZCsnXCIgY2xhc3M9XCJmYXMgZmEtY2hlY2stY2lyY2xlIGdyZWVuIHVucHVibGlzaFwiPjwvaT4nKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuICAgIFxyXG59KVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL3Jlc291cmNlcy9qcy9hamF4LmpzIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///5\n");
+eval("$('#addCoupons').on('click', function (event) {\n event.preventDefault();\n var ids = [];\n $(this).parent().find('.inputGroup input').each(function (event) {\n if ($(this).is(':checked')) {\n ids.push($(this).val());\n }\n });\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $(this).parent().find('#csrf').val()\n }\n });\n\n $.ajax({\n url: '/add-coupons-ajax',\n type: 'POST',\n data: {\n ids: ids,\n campid: $(this).parent().find('#camp_id').val()\n },\n dataType: 'JSON',\n success: function success(reponse) {\n $.each(reponse, function (index, coupon) {\n var html = '';\n html += '| ' + coupon.coupon_code + ' | ';\n html += '' + coupon.coupon_name + ' | ';\n html += ' | ';\n html += '
';\n $('.no-result').remove();\n $('.coupons-wrapper table').append(html);\n $('#addCoupons').parent().find('.inputGroup input').each(function (event) {\n if ($(this).val() == coupon.coupon_id) {\n $(this).parent('.inputGroup').remove();\n }\n });\n $.fancybox.close();\n });\n },\n error: function error(e) {\n console.log(e.responseText);\n }\n });\n});\n\n$('body').on('click', '.delete-coupon', function (event) {\n event.preventDefault();\n var campid = $(this).attr('data-campid');\n var couponid = $(this).attr('data-couponid');\n var trLinked = $(this).parent().parent();\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': trLinked.parent().parent().parent().find('#csrf').val()\n }\n });\n\n $.ajax({\n url: '/remove-coupons-ajax',\n type: 'POST',\n data: {\n couponid: couponid,\n campid: campid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n trLinked.remove();\n var html = \"\";\n html += \"\";\n html += \"\";\n html += \"
\";\n $(\"#camp_id\").before(html);\n },\n error: function error(e) {\n console.log(e.responseText);\n }\n });\n});\n\n$('body').on('click', '.unpublish', function (event) {\n event.preventDefault();\n var couponid = $(this).attr('data-couponid');\n var element = $(this).parent();\n $.fancyConfirm({\n title: \" Dépublier\",\n message: \"Êtes-vous sûr de vouloir dépublier ce coupon ?\",\n okButton: 'Dépublier',\n noButton: 'Annuler',\n callback: function callback(value) {\n if (value) {\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $('#csrf').val()\n }\n });\n $.ajax({\n url: '/unpublish-coupons-ajax',\n type: 'POST',\n data: {\n couponid: couponid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n element.empty().html('');\n }\n });\n }\n }\n });\n});\n\n$('body').on('click', '.publish', function (event) {\n event.preventDefault();\n var couponid = $(this).attr('data-couponid');\n var element = $(this).parent();\n $.fancyInfo({\n title: \" Publier\",\n message: \"Êtes-vous sûr de vouloir publier ce coupon ?\",\n okButton: 'Publier',\n noButton: 'Annuler',\n callback: function callback(value) {\n if (value) {\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $('#csrf').val()\n }\n });\n $.ajax({\n url: '/publish-coupons-ajax',\n type: 'POST',\n data: {\n couponid: couponid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n element.empty().html('');\n }\n });\n }\n }\n });\n});\n\n$('body').on('click', '.unpublishcamp', function (event) {\n event.preventDefault();\n var campid = $(this).attr('data-campid');\n var element = $(this).parent();\n $.fancyConfirm({\n title: \" Dépublier\",\n message: \"Êtes-vous sûr de vouloir dépublier cette campagne ?\",\n okButton: 'Dépublier',\n noButton: 'Annuler',\n callback: function callback(value) {\n if (value) {\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $('#csrf').val()\n }\n });\n $.ajax({\n url: '/unpublish-camp-ajax',\n type: 'POST',\n data: {\n campid: campid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n element.empty().html('');\n }\n });\n }\n }\n });\n});\n\n$('body').on('click', '.publishcamp', function (event) {\n event.preventDefault();\n var campid = $(this).attr('data-campid');\n var element = $(this).parent();\n $.fancyInfo({\n title: \" Publier\",\n message: \"Êtes-vous sûr de vouloir publier cette campagne ?\",\n okButton: 'Publier',\n noButton: 'Annuler',\n callback: function callback(value) {\n if (value) {\n $.ajaxSetup({\n headers: {\n 'X-CSRF-TOKEN': $('#csrf').val()\n }\n });\n $.ajax({\n url: '/publish-camp-ajax',\n type: 'POST',\n data: {\n campid: campid\n },\n dataType: 'JSON',\n success: function success(reponse) {\n element.empty().html('');\n }\n });\n }\n }\n });\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvanMvYWpheC5qcz9hOGJiIl0sIm5hbWVzIjpbIiQiLCJvbiIsImV2ZW50IiwicHJldmVudERlZmF1bHQiLCJpZHMiLCJwYXJlbnQiLCJmaW5kIiwiZWFjaCIsImlzIiwicHVzaCIsInZhbCIsImFqYXhTZXR1cCIsImhlYWRlcnMiLCJhamF4IiwidXJsIiwidHlwZSIsImRhdGEiLCJjYW1waWQiLCJkYXRhVHlwZSIsInN1Y2Nlc3MiLCJyZXBvbnNlIiwiaW5kZXgiLCJjb3Vwb24iLCJodG1sIiwiY291cG9uX2NvZGUiLCJjb3Vwb25fbmFtZSIsImNvdXBvbl9pZCIsInJlbW92ZSIsImFwcGVuZCIsImZhbmN5Ym94IiwiY2xvc2UiLCJlcnJvciIsImUiLCJjb25zb2xlIiwibG9nIiwicmVzcG9uc2VUZXh0IiwiYXR0ciIsImNvdXBvbmlkIiwidHJMaW5rZWQiLCJiZWZvcmUiLCJlbGVtZW50IiwiZmFuY3lDb25maXJtIiwidGl0bGUiLCJtZXNzYWdlIiwib2tCdXR0b24iLCJub0J1dHRvbiIsImNhbGxiYWNrIiwidmFsdWUiLCJlbXB0eSIsImZhbmN5SW5mbyJdLCJtYXBwaW5ncyI6IkFBQUFBLEVBQUUsYUFBRixFQUFpQkMsRUFBakIsQ0FBb0IsT0FBcEIsRUFBNkIsVUFBU0MsS0FBVCxFQUFlO0FBQ3hDQSxVQUFNQyxjQUFOO0FBQ0EsUUFBSUMsTUFBTSxFQUFWO0FBQ0FKLE1BQUUsSUFBRixFQUFRSyxNQUFSLEdBQWlCQyxJQUFqQixDQUFzQixtQkFBdEIsRUFBMkNDLElBQTNDLENBQWdELFVBQVNMLEtBQVQsRUFBZTtBQUMzRCxZQUFHRixFQUFFLElBQUYsRUFBUVEsRUFBUixDQUFXLFVBQVgsQ0FBSCxFQUEwQjtBQUN0QkosZ0JBQUlLLElBQUosQ0FBU1QsRUFBRSxJQUFGLEVBQVFVLEdBQVIsRUFBVDtBQUNIO0FBRUosS0FMRDtBQU1BVixNQUFFVyxTQUFGLENBQVk7QUFDUkMsaUJBQVM7QUFDTCw0QkFBZ0Ja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RjtBQUVIQywwQkFBTSxNQUZIO0FBR0hDLDBCQUFNO0FBQ0ZDLGdDQUFRQTtBQUROLHFCQUhIO0FBTUhDLDhCQUFVLE1BTlA7QUFPSEMsNkJBQVMsaUJBQVVDLE9BQVYsRUFBbUI7QUFDeEJvQixnQ0FBUVEsS0FBUixHQUFnQnpCLElBQWhCLENBQXFCLHFCQUFtQk4sTUFBbkIsR0FBMEIsd0RBQS9DO0FBQ0g7QUFURSxpQkFBUDtBQVdEO0FBQ0Y7QUF4Qk8sS0FBWjtBQTJCSCxDQS9CRCIsImZpbGUiOiI1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiJCgnI2FkZENvdXBvbnMnKS5vbignY2xpY2snLCBmdW5jdGlvbihldmVudCl7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgbGV0IGlkcyA9IFtdO1xyXG4gICAgJCh0aGlzKS5wYXJlbnQoKS5maW5kKCcuaW5wdXRHcm91cCBpbnB1dCcpLmVhY2goZnVuY3Rpb24oZXZlbnQpe1xyXG4gICAgICAgIGlmKCQodGhpcykuaXMoJzpjaGVja2VkJykpe1xyXG4gICAgICAgICAgICBpZHMucHVzaCgkKHRoaXMpLnZhbCgpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9KVxyXG4gICAgJC5hamF4U2V0dXAoe1xyXG4gICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgJ1gtQ1NSRi1UT0tFTic6ICQodGhpcykucGFyZW50KCkuZmluZCgnI2NzcmYnKS52YWwoKVxyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgICQuYWpheCh7XHJcbiAgICAgICAgdXJsOiAnL2FkZC1jb3Vwb25zLWFqYXgnLFxyXG4gICAgICAgIHR5cGU6ICdQT1NUJyxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGlkczogaWRzICxcclxuICAgICAgICAgICAgY2FtcGlkOiAkKHRoaXMpLnBhcmVudCgpLmZpbmQoJyNjYW1wX2lkJykudmFsKClcclxuICAgICAgICB9LFxyXG4gICAgICAgIGRhdGFUeXBlOiAnSlNPTicsXHJcbiAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlcG9uc2UpIHsgICAgXHJcbiAgICAgICAgICAgICQuZWFjaChyZXBvbnNlLCBmdW5jdGlvbihpbmRleCwgY291cG9uKXtcclxuICAgICAgICAgICAgICAgIHZhciBodG1sID0gJzx0cj4nO1xyXG4gICAgICAgICAgICAgICAgaHRtbCArPSAnPHRkPicrY291cG9uLmNvdXBvbl9jb2RlKyc8L3RkPic7XHJcbiAgICAgICAgICAgICAgICBodG1sICs9ICc8dGQ+Jytjb3Vwb24uY291cG9uX25hbWUrJzwvdGQ+JztcclxuICAgICAgICAgICAgICAgIGh0bWwgKz0gJzx0ZD48aSBjbGFzcz1cImZhcyBmYS10aW1lcyBkZWxldGUtY291cG9uXCIgZGF0YS1jYW1waWQ9XCInKyQodGhpcykucGFyZW50KCkuZmluZCgnI2NhbXBfaWQnKS52YWwoKSsnXCIgZGF0YS1jb3Vwb25pZD1cIicrY291cG9uLmNvdXBvbl9pZCsnXCI+PC9pPjwvdGQ+JztcclxuICAgICAgICAgICAgICAgIGh0bWwgKz0gJzwvdHI+JztcclxuICAgICAgICAgICAgICAgICQoJy5uby1yZXN1bHQnKS5yZW1vdmUoKTtcclxuICAgICAgICAgICAgICAgICQoJy5jb3Vwb25zLXdyYXBwZXIgdGFibGUnKS5hcHBlbmQoaHRtbCk7XHJcbiAgICAgICAgICAgICAgICAkKCcjYWRkQ291cG9ucycpLnBhcmVudCgpLmZpbmQoJy5pbnB1dEdyb3VwIGlucHV0JykuZWFjaChmdW5jdGlvbihldmVudCl7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYoJCh0aGlzKS52YWwoKSA9PSBjb3Vwb24uY291cG9uX2lkKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5wYXJlbnQoJy5pbnB1dEdyb3VwJykucmVtb3ZlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSAgXHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgJC5mYW5jeWJveC5jbG9zZSgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiBmdW5jdGlvbiAoZSkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhlLnJlc3BvbnNlVGV4dCk7XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbn0pICBcclxuXHJcblxyXG5cclxuJCgnYm9keScpLm9uKCdjbGljaycsICcuZGVsZXRlLWNvdXBvbicsIGZ1bmN0aW9uKGV2ZW50KXtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB2YXIgY2FtcGlkID0gJCh0aGlzKS5hdHRyKCdkYXRhLWNhbXBpZCcpO1xyXG4gICAgdmFyIGNvdXBvbmlkID0gJCh0aGlzKS5hdHRyKCdkYXRhLWNvdXBvbmlkJyk7XHJcbiAgICB2YXIgdHJMaW5rZWQgPSAkKHRoaXMpLnBhcmVudCgpLnBhcmVudCgpO1xyXG4gICAgJC5hamF4U2V0dXAoe1xyXG4gICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgJ1gtQ1NSRi1UT0tFTic6IHRyTGlua2VkLnBhcmVudCgpLnBhcmVudCgpLnBhcmVudCgpLmZpbmQoJyNjc3JmJykudmFsKClcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAkLmFqYXgoe1xyXG4gICAgICAgIHVybDogJy9yZW1vdmUtY291cG9ucy1hamF4JyxcclxuICAgICAgICB0eXBlOiAnUE9TVCcsXHJcbiAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgICBjb3Vwb25pZDogY291cG9uaWQsXHJcbiAgICAgICAgICAgIGNhbXBpZDogY2FtcGlkXHJcbiAgICAgICAgfSxcclxuICAgICAgICBkYXRhVHlwZTogJ0pTT04nLFxyXG4gICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uIChyZXBvbnNlKSB7IFxyXG4gICAgICAgICAgICB0ckxpbmtlZC5yZW1vdmUoKTtcclxuICAgICAgICAgICAgdmFyIGh0bWwgPSBcIjxkaXYgY2xhc3M9J2lucHV0R3JvdXAnPlwiO1xyXG4gICAgICAgICAgICBodG1sICs9IFwiPGlucHV0IGlkPSdjb3Vwb25bXCIrcmVwb25zZS5jb3Vwb25faWQrXCJdJyBuYW1lPSdjb3Vwb25bXCIrcmVwb25zZS5jb3Vwb25faWQrXCJdJyB0eXBlPSdjaGVja2JveCcgdmFsdWU9J1wiK3JlcG9uc2UuY291cG9uX2lkK1wiJyA+XCI7XHJcbiAgICAgICAgICAgIGh0bWwgKz0gXCI8bGFiZWwgZm9yPSdjb3Vwb25bXCIrcmVwb25zZS5jb3Vwb25faWQrXCJdJz5cIityZXBvbnNlLmNvdXBvbl9uYW1lK1wiPC9sYWJlbD5cIjtcclxuICAgICAgICAgICAgaHRtbCArPSBcIjwvZGl2PlwiO1xyXG4gICAgICAgICAgICAkKFwiI2NhbXBfaWRcIikuYmVmb3JlKGh0bWwpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IGZ1bmN0aW9uIChlKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGUucmVzcG9uc2VUZXh0KTtcclxuICAgICAgICB9XHJcbiAgICB9KTtcclxufSlcclxuXHJcblxyXG4kKCdib2R5Jykub24oJ2NsaWNrJywgJy51bnB1Ymxpc2gnLCBmdW5jdGlvbihldmVudCl7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgdmFyIGNvdXBvbmlkID0gJCh0aGlzKS5hdHRyKCdkYXRhLWNvdXBvbmlkJyk7XHJcbiAgICB2YXIgZWxlbWVudCA9ICQodGhpcykucGFyZW50KCk7XHJcbiAgICAkLmZhbmN5Q29uZmlybSh7XHJcbiAgICAgICAgdGl0bGUgICAgIDogXCI8aSBjbGFzcz0nZmFzIGZhLXRpbWVzLWNpcmNsZSc+PC9pPiBEw6lwdWJsaWVyXCIsXHJcbiAgICAgICAgbWVzc2FnZSAgIDogXCLDinRlcy12b3VzIHPDu3IgZGUgdm91bG9pciBkw6lwdWJsaWVyIGNlIGNvdXBvbiA/XCIsXHJcbiAgICAgICAgb2tCdXR0b24gIDogJ0TDqXB1YmxpZXInLFxyXG4gICAgICAgIG5vQnV0dG9uICA6ICdBbm51bGVyJyxcclxuICAgICAgICBjYWxsYmFjayAgOiBmdW5jdGlvbiAodmFsdWUpIHtcclxuICAgICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICAkLmFqYXhTZXR1cCh7XHJcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJ1gtQ1NSRi1UT0tFTic6ICQoJyNjc3JmJykudmFsKClcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICQuYWpheCh7XHJcbiAgICAgICAgICAgICAgICB1cmw6ICcvdW5wdWJsaXNoLWNvdXBvbnMtYWpheCcsXHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnUE9TVCcsXHJcbiAgICAgICAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY291cG9uaWQ6IGNvdXBvbmlkXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgZGF0YVR5cGU6ICdKU09OJyxcclxuICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uIChyZXBvbnNlKSB7IFxyXG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuZW1wdHkoKS5odG1sKCc8aSBkYXRhLWNvdXBvbmlkPVwiJytjb3Vwb25pZCsnXCIgY2xhc3M9XCJmYXMgZmEtdGltZXMtY2lyY2xlIHJlZCBwdWJsaXNoXCI+PC9pPicpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgXHJcbn0pXHJcblxyXG4kKCdib2R5Jykub24oJ2NsaWNrJywgJy5wdWJsaXNoJywgZnVuY3Rpb24oZXZlbnQpe1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHZhciBjb3Vwb25pZCA9ICQodGhpcykuYXR0cignZGF0YS1jb3Vwb25pZCcpO1xyXG4gICAgdmFyIGVsZW1lbnQgPSAkKHRoaXMpLnBhcmVudCgpO1xyXG4gICAgJC5mYW5jeUluZm8oe1xyXG4gICAgICAgIHRpdGxlICAgICA6IFwiPGkgY2xhc3M9J2ZhcyBmYS1jaGVjay1jaXJjbGUnPjwvaT4gUHVibGllclwiLFxyXG4gICAgICAgIG1lc3NhZ2UgICA6IFwiw4p0ZXMtdm91cyBzw7tyIGRlIHZvdWxvaXIgcHVibGllciBjZSBjb3Vwb24gP1wiLFxyXG4gICAgICAgIG9rQnV0dG9uICA6ICdQdWJsaWVyJyxcclxuICAgICAgICBub0J1dHRvbiAgOiAnQW5udWxlcicsXHJcbiAgICAgICAgY2FsbGJhY2sgIDogZnVuY3Rpb24gKHZhbHVlKSB7XHJcbiAgICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgJC5hamF4U2V0dXAoe1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgICAgICdYLUNTUkYtVE9LRU4nOiAkKCcjY3NyZicpLnZhbCgpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAkLmFqYXgoe1xyXG4gICAgICAgICAgICAgICAgdXJsOiAnL3B1Ymxpc2gtY291cG9ucy1hamF4JyxcclxuICAgICAgICAgICAgICAgIHR5cGU6ICdQT1NUJyxcclxuICAgICAgICAgICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgICBjb3Vwb25pZDogY291cG9uaWRcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ0pTT04nLFxyXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlcG9uc2UpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5lbXB0eSgpLmh0bWwoJzxpIGRhdGEtY291cG9uaWQ9XCInK2NvdXBvbmlkKydcIiBjbGFzcz1cImZhcyBmYS1jaGVjay1jaXJjbGUgZ3JlZW4gdW5wdWJsaXNoXCI+PC9pPicpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgXHJcbn0pXHJcblxyXG5cclxuJCgnYm9keScpLm9uKCdjbGljaycsICcudW5wdWJsaXNoY2FtcCcsIGZ1bmN0aW9uKGV2ZW50KXtcclxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB2YXIgY2FtcGlkID0gJCh0aGlzKS5hdHRyKCdkYXRhLWNhbXBpZCcpO1xyXG4gICAgdmFyIGVsZW1lbnQgPSAkKHRoaXMpLnBhcmVudCgpO1xyXG4gICAgJC5mYW5jeUNvbmZpcm0oe1xyXG4gICAgICAgIHRpdGxlICAgICA6IFwiPGkgY2xhc3M9J2ZhcyBmYS10aW1lcy1jaXJjbGUnPjwvaT4gRMOpcHVibGllclwiLFxyXG4gICAgICAgIG1lc3NhZ2UgICA6IFwiw4p0ZXMtdm91cyBzw7tyIGRlIHZvdWxvaXIgZMOpcHVibGllciBjZXR0ZSBjYW1wYWduZSA/XCIsXHJcbiAgICAgICAgb2tCdXR0b24gIDogJ0TDqXB1YmxpZXInLFxyXG4gICAgICAgIG5vQnV0dG9uICA6ICdBbm51bGVyJyxcclxuICAgICAgICBjYWxsYmFjayAgOiBmdW5jdGlvbiAodmFsdWUpIHtcclxuICAgICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICAkLmFqYXhTZXR1cCh7XHJcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgJ1gtQ1NSRi1UT0tFTic6ICQoJyNjc3JmJykudmFsKClcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICQuYWpheCh7XHJcbiAgICAgICAgICAgICAgICB1cmw6ICcvdW5wdWJsaXNoLWNhbXAtYWpheCcsXHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnUE9TVCcsXHJcbiAgICAgICAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FtcGlkOiBjYW1waWRcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ0pTT04nLFxyXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlcG9uc2UpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5lbXB0eSgpLmh0bWwoJzxpIGRhdGEtY2FtcGlkPVwiJytjYW1waWQrJ1wiIGNsYXNzPVwiZmFzIGZhLXRpbWVzLWNpcmNsZSByZWQgcHVibGlzaGNhbXBcIj48L2k+JylcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBcclxufSlcclxuXHJcbiQoJ2JvZHknKS5vbignY2xpY2snLCAnLnB1Ymxpc2hjYW1wJywgZnVuY3Rpb24oZXZlbnQpe1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIHZhciBjYW1waWQgPSAkKHRoaXMpLmF0dHIoJ2RhdGEtY2FtcGlkJyk7XHJcbiAgICB2YXIgZWxlbWVudCA9ICQodGhpcykucGFyZW50KCk7XHJcbiAgICAkLmZhbmN5SW5mbyh7XHJcbiAgICAgICAgdGl0bGUgICAgIDogXCI8aSBjbGFzcz0nZmFzIGZhLWNoZWNrLWNpcmNsZSc+PC9pPiBQdWJsaWVyXCIsXHJcbiAgICAgICAgbWVzc2FnZSAgIDogXCLDinRlcy12b3VzIHPDu3IgZGUgdm91bG9pciBwdWJsaWVyIGNldHRlIGNhbXBhZ25lID9cIixcclxuICAgICAgICBva0J1dHRvbiAgOiAnUHVibGllcicsXHJcbiAgICAgICAgbm9CdXR0b24gIDogJ0FubnVsZXInLFxyXG4gICAgICAgIGNhbGxiYWNrICA6IGZ1bmN0aW9uICh2YWx1ZSkge1xyXG4gICAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgICQuYWpheFNldHVwKHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAnWC1DU1JGLVRPS0VOJzogJCgnI2NzcmYnKS52YWwoKVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgJC5hamF4KHtcclxuICAgICAgICAgICAgICAgIHVybDogJy9wdWJsaXNoLWNhbXAtYWpheCcsXHJcbiAgICAgICAgICAgICAgICB0eXBlOiAnUE9TVCcsXHJcbiAgICAgICAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FtcGlkOiBjYW1waWRcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBkYXRhVHlwZTogJ0pTT04nLFxyXG4gICAgICAgICAgICAgICAgc3VjY2VzczogZnVuY3Rpb24gKHJlcG9uc2UpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5lbXB0eSgpLmh0bWwoJzxpIGRhdGEtY2FtcGlkPVwiJytjYW1waWQrJ1wiIGNsYXNzPVwiZmFzIGZhLWNoZWNrLWNpcmNsZSBncmVlbiB1bnB1Ymxpc2hjYW1wXCI+PC9pPicpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgXHJcbn0pXG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vcmVzb3VyY2VzL2pzL2FqYXguanMiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///5\n");
/***/ })
diff --git a/resources/js/ajax.js b/resources/js/ajax.js
index 37ae5ef..840c3bc 100644
--- a/resources/js/ajax.js
+++ b/resources/js/ajax.js
@@ -84,7 +84,6 @@ $('body').on('click', '.unpublish', function(event){
event.preventDefault();
var couponid = $(this).attr('data-couponid');
var element = $(this).parent();
- //var icon = $(this).find('.pub');
$.fancyConfirm({
title : " Dépublier",
message : "Êtes-vous sûr de vouloir dépublier ce coupon ?",
@@ -105,7 +104,6 @@ $('body').on('click', '.unpublish', function(event){
},
dataType: 'JSON',
success: function (reponse) {
- //icon.remove();
element.empty().html('')
}
});
@@ -119,7 +117,6 @@ $('body').on('click', '.publish', function(event){
event.preventDefault();
var couponid = $(this).attr('data-couponid');
var element = $(this).parent();
- //var icon = $(this).find('.pub');
$.fancyInfo({
title : " Publier",
message : "Êtes-vous sûr de vouloir publier ce coupon ?",
@@ -140,7 +137,6 @@ $('body').on('click', '.publish', function(event){
},
dataType: 'JSON',
success: function (reponse) {
- //icon.remove();
element.empty().html('')
}
});
@@ -148,4 +144,71 @@ $('body').on('click', '.publish', function(event){
}
});
+})
+
+
+$('body').on('click', '.unpublishcamp', function(event){
+ event.preventDefault();
+ var campid = $(this).attr('data-campid');
+ var element = $(this).parent();
+ $.fancyConfirm({
+ title : " Dépublier",
+ message : "Êtes-vous sûr de vouloir dépublier cette campagne ?",
+ okButton : 'Dépublier',
+ noButton : 'Annuler',
+ callback : function (value) {
+ if (value) {
+ $.ajaxSetup({
+ headers: {
+ 'X-CSRF-TOKEN': $('#csrf').val()
+ }
+ });
+ $.ajax({
+ url: '/unpublish-camp-ajax',
+ type: 'POST',
+ data: {
+ campid: campid
+ },
+ dataType: 'JSON',
+ success: function (reponse) {
+ element.empty().html('')
+ }
+ });
+ }
+ }
+ });
+
+})
+
+$('body').on('click', '.publishcamp', function(event){
+ event.preventDefault();
+ var campid = $(this).attr('data-campid');
+ var element = $(this).parent();
+ $.fancyInfo({
+ title : " Publier",
+ message : "Êtes-vous sûr de vouloir publier cette campagne ?",
+ okButton : 'Publier',
+ noButton : 'Annuler',
+ callback : function (value) {
+ if (value) {
+ $.ajaxSetup({
+ headers: {
+ 'X-CSRF-TOKEN': $('#csrf').val()
+ }
+ });
+ $.ajax({
+ url: '/publish-camp-ajax',
+ type: 'POST',
+ data: {
+ campid: campid
+ },
+ dataType: 'JSON',
+ success: function (reponse) {
+ element.empty().html('')
+ }
+ });
+ }
+ }
+ });
+
})
\ No newline at end of file
diff --git a/resources/sass/partials/content.scss b/resources/sass/partials/content.scss
index f7bedbf..6f38c2a 100644
--- a/resources/sass/partials/content.scss
+++ b/resources/sass/partials/content.scss
@@ -469,3 +469,10 @@ table {
font-family: 'Nunito-Regular', sans-serif;
margin: 10px 0;
}
+
+.pub {
+ i {
+ cursor: pointer;
+ }
+}
+
diff --git a/resources/sass/partials/reset.scss b/resources/sass/partials/reset.scss
index 2adc4a0..dd6dd03 100644
--- a/resources/sass/partials/reset.scss
+++ b/resources/sass/partials/reset.scss
@@ -146,4 +146,30 @@ p {
i {
margin-right:10px;
}
-}
\ No newline at end of file
+}
+
+.code404{
+ background-color: $lightgrey;
+ display:flex;
+ justify-content: center;
+ align-items: center;
+ div {
+ width:400px;
+ padding:20px;
+ display:flex;
+ flex-direction: column;
+ align-items:center;
+ justify-content:center;
+ background-color:#FFF;
+ h2 {
+ color:#df0000;
+ font-weight: bold;
+ }
+ p {
+ color:#000;
+ text-align:center;
+ line-height:1.2em;
+ font-weight: bold;
+ }
+ }
+}
\ No newline at end of file
diff --git a/resources/views/campagne/index.blade.php b/resources/views/campagne/index.blade.php
index e1491c4..7839e7f 100644
--- a/resources/views/campagne/index.blade.php
+++ b/resources/views/campagne/index.blade.php
@@ -21,9 +21,9 @@
{{ $c->camp_name }} |
{{ $c->camp_createdate }} |
@if ( $c->camp_published === 1)
- |
+ |
@else
- |
+ |
@endif
|
|
diff --git a/resources/views/errors/404.blade.php b/resources/views/errors/404.blade.php
new file mode 100644
index 0000000..faf8e8e
--- /dev/null
+++ b/resources/views/errors/404.blade.php
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+ {{ config('app.name', 'Laravel') }}
+
+
+
+
+
+
+
+
+
Erreur 404
+
La page que vous essayez d'atteindre n'existe pas ou a été déplacée
+
+
+
\ No newline at end of file
diff --git a/routes/web.php b/routes/web.php
index b505b0d..9ff9985 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -52,6 +52,9 @@ Route::group(['prefix' => 'bo', 'middleware' => ['auth', 'saveroute']], function
// ---- Publier/Depublier des coupons
Route::post('/unpublish-coupons-ajax', 'AjaxController@unpublish_coupons_ajax');
Route::post('/publish-coupons-ajax', 'AjaxController@publish_coupons_ajax');
+ // ---- Publier/Depublier des campagnes
+ Route::post('/unpublish-camp-ajax', 'AjaxController@unpublish_camp_ajax');
+ Route::post('/publish-camp-ajax', 'AjaxController@publish_camp_ajax');
// ---- Impressions de coupons
Route::post('/ajx_impression', 'AjaxController@impression_ajax');
// ---- Recherche Contact