namespace App\Http\Controllers\Admin;
use A17\Twill\Http\Controllers\Admin\ModuleController;
+use App\Models\Poll;
class PollController extends ModuleController
{
protected $permalinkBase = 'sondages';
+
+ public function answers()
+ {
+ return view('admin.polls.answers');
+ }
+
+ public function getPollList()
+ {
+ return response()->json(Poll::query()->select('id', 'title')->get());
+ }
+
+ public function getPollAnswers(Poll $poll)
+ {
+ return response()->json([
+ 'poll' => $poll->getQuestions(),
+ 'answsers' => $poll->entries()->get()
+ ]);
+ }
+
}
+
+
use A17\Twill\Models\Behaviors\HasBlocks;
use A17\Twill\Models\Behaviors\HasSlug;
use A17\Twill\Models\Behaviors\HasMedias;
+use A17\Twill\Models\Block;
use A17\Twill\Models\Model;
use App\PollEntry;
+use Illuminate\Support\Str;
class Poll extends Model
{
}
+ public function getQuestions()
+ {
+ $questions = $this->blocks()->whereNull('parent_id')->get();
+
+ return $questions->map(function(Block $q) {
+ $q->options = $q->children;
+
+ return [
+ 'type' => $q->type,
+ 'sub_type' => $q->input('type'),
+ 'question' => $question = $q->input('question'),
+ 'slug' => Str::slug($question),
+ 'position' => $q->position,
+ 'choices' => $q->children->map(function(Block $choice) {
+ return [
+ 'position' => $choice->position,
+ 'option' => $choice->input('option'),
+ 'slug' => Str::slug($choice->input('option')),
+ ];
+ })
+ ];
+ });
+
+ }
}
'polls' => [
'title' => 'Sondages',
'module' => true,
+ ],
+ 'pollAnswers' => [
+ 'title' => 'Réponses aux sondages',
+ 'route' => 'admin.otherContent.pollAnswers'
]
]
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.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/PollAnswers/PollAnswers.vue?vue&type=script&lang=js& ***!
+ \**********************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "PollAnswers",
+ data: function data() {
+ return {
+ polls: [],
+ selected_poll: null,
+ answers: null,
+ loaded: false
+ };
+ },
+ watch: {
+ selected_poll: function selected_poll(value) {
+ var _this = this;
+
+ axios.get('/otherContent/pollAnswers/' + value.id).then(function (d) {
+ return _this.answers = d.data;
+ });
+ }
+ },
+ mounted: function mounted() {
+ var _this2 = this;
+
+ axios.get('/otherContent/pollAnswers/list').then(function (d) {
+ _this2.polls = d.data;
+ _this2.loaded = true;
+ });
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/HeadlineRepeater.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/HeadlineRepeater.vue?vue&type=script&lang=js& ***!
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&":
+/*!**************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& ***!
+ \**************************************************************************************************************************************************************************************************************************************/
+/*! 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", [
+ _vm.polls.length > 0
+ ? _c(
+ "div",
+ [
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "polls" } }),
+ _vm._v(" "),
+ _c(
+ "select",
+ {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.selected_poll,
+ expression: "selected_poll"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: { name: "polls", id: "polls" },
+ 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.selected_poll = $event.target.multiple
+ ? $$selectedVal
+ : $$selectedVal[0]
+ }
+ }
+ },
+ _vm._l(_vm.polls, function(poll) {
+ return _c("option", { domProps: { value: poll } }, [
+ _vm._v(_vm._s(poll.title))
+ ])
+ }),
+ 0
+ )
+ ]),
+ _vm._v(" "),
+ !!_vm.selected_poll
+ ? [
+ _vm.answers === null
+ ? _c("div", { staticClass: "alert alert-info" }, [
+ _vm._v(
+ "\n Chargement en cours...\n "
+ )
+ ])
+ : !!_vm.answers && _vm.answers.length === 0
+ ? _c("div", { staticClass: "alert alert-warning" }, [
+ _vm._v(
+ "\n Aucune réponse pour le moment !\n "
+ )
+ ])
+ : _c("div", [
+ _c("pre", [
+ _vm._v(
+ " " +
+ _vm._s(_vm.answers) +
+ "\n "
+ )
+ ])
+ ])
+ ]
+ : _vm._e()
+ ],
+ 2
+ )
+ : _vm.loaded
+ ? _c("div", { staticClass: "alert alert-warning" }, [
+ _vm._v("\n Aucun sondage trouvé\n ")
+ ])
+ : _c("div", { staticClass: "alert alert-info" }, [
+ _vm._v("\n Chargement en cours...\n ")
+ ])
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/HeadlineRepeater.vue?vue&type=template&id=4bb06ff2&scoped=true&":
"./components/FileSearch/FileInstantSearch.vue": "./resources/js/components/FileSearch/FileInstantSearch.vue",
"./components/Home/cover.vue": "./resources/js/components/Home/cover.vue",
"./components/LiveStats.vue": "./resources/js/components/LiveStats.vue",
+ "./components/PollAnswers/PollAnswers.vue": "./resources/js/components/PollAnswers/PollAnswers.vue",
"./components/Publish/HeadlineRepeater.vue": "./resources/js/components/Publish/HeadlineRepeater.vue",
"./components/Publish/PublishLetter.vue": "./resources/js/components/Publish/PublishLetter.vue",
"./components/Publish/PublishNewsletter.vue": "./resources/js/components/Publish/PublishNewsletter.vue",
+/***/ }),
+
+/***/ "./resources/js/components/PollAnswers/PollAnswers.vue":
+/*!*************************************************************!*\
+ !*** ./resources/js/components/PollAnswers/PollAnswers.vue ***!
+ \*************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& */ "./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&");
+/* harmony import */ var _PollAnswers_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PollAnswers.vue?vue&type=script&lang=js& */ "./resources/js/components/PollAnswers/PollAnswers.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"])(
+ _PollAnswers_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ "55b013a2",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/PollAnswers/PollAnswers.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=script&lang=js&":
+/*!**************************************************************************************!*\
+ !*** ./resources/js/components/PollAnswers/PollAnswers.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_PollAnswers_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!./PollAnswers.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.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_PollAnswers_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&":
+/*!********************************************************************************************************!*\
+ !*** ./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& ***!
+ \********************************************************************************************************/
+/*! 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_PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___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!./PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&");
+/* 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_PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___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_PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/js/components/Publish/HeadlineRepeater.vue":
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.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/PollAnswers/PollAnswers.vue?vue&type=script&lang=js& ***!
+ \**********************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+ name: "PollAnswers",
+ data: function data() {
+ return {
+ polls: [],
+ selected_poll: null,
+ answers: null,
+ loaded: false
+ };
+ },
+ watch: {
+ selected_poll: function selected_poll(value) {
+ var _this = this;
+
+ axios.get('/otherContent/pollAnswers/' + value.id).then(function (d) {
+ return _this.answers = d.data;
+ });
+ }
+ },
+ mounted: function mounted() {
+ var _this2 = this;
+
+ axios.get('/otherContent/pollAnswers/list').then(function (d) {
+ _this2.polls = d.data;
+ _this2.loaded = true;
+ });
+ }
+});
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/HeadlineRepeater.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/HeadlineRepeater.vue?vue&type=script&lang=js& ***!
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&":
+/*!**************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& ***!
+ \**************************************************************************************************************************************************************************************************************************************/
+/*! 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", [
+ _vm.polls.length > 0
+ ? _c(
+ "div",
+ [
+ _c("div", { staticClass: "form-group" }, [
+ _c("label", { attrs: { for: "polls" } }),
+ _vm._v(" "),
+ _c(
+ "select",
+ {
+ directives: [
+ {
+ name: "model",
+ rawName: "v-model",
+ value: _vm.selected_poll,
+ expression: "selected_poll"
+ }
+ ],
+ staticClass: "form-control",
+ attrs: { name: "polls", id: "polls" },
+ 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.selected_poll = $event.target.multiple
+ ? $$selectedVal
+ : $$selectedVal[0]
+ }
+ }
+ },
+ _vm._l(_vm.polls, function(poll) {
+ return _c("option", { domProps: { value: poll } }, [
+ _vm._v(_vm._s(poll.title))
+ ])
+ }),
+ 0
+ )
+ ]),
+ _vm._v(" "),
+ !!_vm.selected_poll
+ ? [
+ _vm.answers === null
+ ? _c("div", { staticClass: "alert alert-info" }, [
+ _vm._v(
+ "\n Chargement en cours...\n "
+ )
+ ])
+ : !!_vm.answers && _vm.answers.length === 0
+ ? _c("div", { staticClass: "alert alert-warning" }, [
+ _vm._v(
+ "\n Aucune réponse pour le moment !\n "
+ )
+ ])
+ : _c("div", [
+ _c("pre", [
+ _vm._v(
+ " " +
+ _vm._s(_vm.answers) +
+ "\n "
+ )
+ ])
+ ])
+ ]
+ : _vm._e()
+ ],
+ 2
+ )
+ : _vm.loaded
+ ? _c("div", { staticClass: "alert alert-warning" }, [
+ _vm._v("\n Aucun sondage trouvé\n ")
+ ])
+ : _c("div", { staticClass: "alert alert-info" }, [
+ _vm._v("\n Chargement en cours...\n ")
+ ])
+ ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
/***/ }),
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/HeadlineRepeater.vue?vue&type=template&id=4bb06ff2&scoped=true&":
"./components/FileSearch/FileInstantSearch.vue": "./resources/js/components/FileSearch/FileInstantSearch.vue",
"./components/Home/cover.vue": "./resources/js/components/Home/cover.vue",
"./components/LiveStats.vue": "./resources/js/components/LiveStats.vue",
+ "./components/PollAnswers/PollAnswers.vue": "./resources/js/components/PollAnswers/PollAnswers.vue",
"./components/Publish/HeadlineRepeater.vue": "./resources/js/components/Publish/HeadlineRepeater.vue",
"./components/Publish/PublishLetter.vue": "./resources/js/components/Publish/PublishLetter.vue",
"./components/Publish/PublishNewsletter.vue": "./resources/js/components/Publish/PublishNewsletter.vue",
+/***/ }),
+
+/***/ "./resources/js/components/PollAnswers/PollAnswers.vue":
+/*!*************************************************************!*\
+ !*** ./resources/js/components/PollAnswers/PollAnswers.vue ***!
+ \*************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& */ "./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&");
+/* harmony import */ var _PollAnswers_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./PollAnswers.vue?vue&type=script&lang=js& */ "./resources/js/components/PollAnswers/PollAnswers.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"])(
+ _PollAnswers_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+ _PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
+ _PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+ false,
+ null,
+ "55b013a2",
+ null
+
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/PollAnswers/PollAnswers.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=script&lang=js&":
+/*!**************************************************************************************!*\
+ !*** ./resources/js/components/PollAnswers/PollAnswers.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_PollAnswers_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!./PollAnswers.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.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_PollAnswers_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]);
+
+/***/ }),
+
+/***/ "./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&":
+/*!********************************************************************************************************!*\
+ !*** ./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& ***!
+ \********************************************************************************************************/
+/*! 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_PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___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!./PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/PollAnswers/PollAnswers.vue?vue&type=template&id=55b013a2&scoped=true&");
+/* 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_PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___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_PollAnswers_vue_vue_type_template_id_55b013a2_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
/***/ }),
/***/ "./resources/js/components/Publish/HeadlineRepeater.vue":
--- /dev/null
+<template>
+ <div>
+ <div v-if="polls.length > 0">
+ <div class="form-group">
+ <label for="polls"></label>
+ <select name="polls" id="polls" class="form-control" v-model="selected_poll">
+ <option v-for="poll in polls" :value="poll">{{poll.title}}</option>
+ </select>
+ </div>
+
+ <template v-if="!! selected_poll">
+ <div v-if="answers === null" class="alert alert-info">
+ Chargement en cours...
+ </div>
+
+ <div v-else-if="!!answers && answers.length === 0" class="alert alert-warning">
+ Aucune réponse pour le moment !
+ </div>
+
+ <div v-else>
+ <pre>
+ {{answers}}
+ </pre>
+ </div>
+
+ </template>
+
+
+ </div>
+ <div class="alert alert-warning" v-else-if="loaded">
+ Aucun sondage trouvé
+ </div>
+ <div class="alert alert-info" v-else>
+ Chargement en cours...
+ </div>
+ </div>
+</template>
+
+<script>
+ export default {
+ name: "PollAnswers",
+ data() {
+ return {
+ polls: [],
+ selected_poll: null,
+ answers: null,
+ loaded: false,
+
+ }
+ },
+ watch: {
+ selected_poll: function(value) {
+ axios.get('/otherContent/pollAnswers/' + value.id).then(d => this.answers = d.data)
+ }
+ },
+
+
+ mounted() {
+ axios.get('/otherContent/pollAnswers/list').then(d => {
+ this.polls = d.data;
+ this.loaded = true;
+ })
+ }
+ }
+</script>
+
+<style scoped>
+
+</style>
--- /dev/null
+@extends('admin.layouts.free')
+
+@section('content')
+ <div class="bootstrap">
+ <div class="container mt-3">
+ <h1 class="text-center">Réponses aux sondages</h1>
+
+ <poll-answers></poll-answers>
+
+
+ </div>
+ </div>
+
+
+@endsection
@endphp
@if($block->input('type') === 'radio')
<div class="form-check">
- <input class="form-check-input" type="radio" name="{{$slug}}" id="answer-{{$i}}-{{$slug}}" value="{{$option->input('option')}}">
+ <input class="form-check-input" type="radio" name="{{$slug}}" id="answer-{{$i}}-{{$slug}}" value="{{Str::slug($option->input('option'))}}">
<label class="form-check-label" for="answer-{{$i}}-{{$slug}}">
{{$option->input('option')}}
</label>
@else
<div class="form-check">
- <input class="form-check-input" type="checkbox" value="{{$option->input('option')}}" name="{{$slug}}[]" id="answer-{{$i}}-{{$slug}}">
+ <input class="form-check-input" type="checkbox" value="{{Str::slug($option->input('option'))}}" name="{{$slug}}[]" id="answer-{{$i}}-{{$slug}}">
<label class="form-check-label" for="answer-{{$i}}-{{$slug}}">
{{$option->input('option')}}
</label>
Route::module('socialArticles');
Route::module('polls');
+ Route::prefix('pollAnswers')->group(function() {
+ Route::get('/', 'PollController@answers')->name('otherContent.pollAnswers');
+ Route::get('list', 'PollController@getPollList');
+ Route::get('{poll}', 'PollController@getPollAnswers');
+ });
+
});
Route::get('article/{slug}', 'SocialArticleController@show')->name('social-article.show');
- Route::get('sondages/{slug}', 'PollController@show')->name('poll.show');
- Route::post('sondages/{slug}', 'PollController@submit')->name('poll.submit');
+ Route::prefix('sondages')->group(function() {
+ Route::get('{slug}', 'PollController@show')->name('poll.show');
+ Route::post('{slug}', 'PollController@submit')->name('poll.submit');
+ });
/** Metadata */
Route::prefix('/files/{file:slug}')->group(function () {