=== Flamingo === Contributors: takayukister, megumithemes, itpixelz Tags: bird, contact, mail, crm Requires at least: 5.9 Tested up to: 6.0 Stable tag: 2.3 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html A trustworthy message storage plugin for Contact Form 7. == Description == Flamingo is a message storage plugin originally created for [Contact Form 7](https://wordpress.org/plugins/contact-form-7/), which doesn't store submitted messages. After activation of the plugin, you'll find *Flamingo* on the WordPress admin screen menu. All messages through contact forms are listed there and are searchable. With Flamingo, you are no longer need to worry about losing important messages due to mail server issues or misconfiguration in mail setup. For more detailed information, please refer to the [Contact Form 7 documentation page](https://contactform7.com/save-submitted-messages-with-flamingo/). = Privacy Notices = This plugin stores submission data collected through contact forms, which may include the submitters' personal information, in the database on the server that hosts the website. == Installation == 1. Upload the entire `flamingo` folder to the `/wp-content/plugins/` directory. 1. Activate the plugin through the 'Plugins' menu in WordPress. == Frequently Asked Questions == == Screenshots == == Changelog == = 2.3 = * Sets status to previous when restoring data. = 2.2.3 = * Fixed: Cron jobs clean-up on plugin deactivation was failing to work. = 2.2.2 = * Address Book: Hides the Filter button if there is no working filter. = 2.2.1 = * Outputs a local date/time in a CSV export file. * Removes `load_plugin_textdomain()` calls. * Removes a reference to `$_wp_last_object_menu`. * Removes the `set-screen-option` filter. * Inherits `post_status` from the previous admin page. * Avoids using `wp_date()` for MySQL DATETIME values. * Has been tested with WordPress 5.6. = 2.2 = * Sets the `post_date` of an inbound message based on the submission timestamp. * Allows users to search and filter messages within the Spam subgroup. * Changes the visibility of the `$found_items` property to private and introduces the `count()` method as an alternative. * Changes the visibility of the `$id` property to private and introduces the `id()` method as an alternative. * Introduces the submission result in the inbound message viewer screen. * Stores the `posted_data_hash` value for search. /******/ (function() { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ "react": /*!**************************!*\ !*** external ["React"] ***! \**************************/ /***/ (function(module) { module.exports = window["React"]; /***/ }), /***/ "@elementor/editor-app-bar": /*!***********************************************!*\ !*** external ["elementorV2","editorAppBar"] ***! \***********************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["editorAppBar"]; /***/ }), /***/ "@elementor/editor-v1-adapters": /*!***************************************************!*\ !*** external ["elementorV2","editorV1Adapters"] ***! \***************************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["editorV1Adapters"]; /***/ }), /***/ "@elementor/icons": /*!****************************************!*\ !*** external ["elementorV2","icons"] ***! \****************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["icons"]; /***/ }), /***/ "@elementor/store": /*!****************************************!*\ !*** external ["elementorV2","store"] ***! \****************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["store"]; /***/ }), /***/ "@elementor/ui": /*!*************************************!*\ !*** external ["elementorV2","ui"] ***! \*************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["ui"]; /***/ }), /***/ "@wordpress/i18n": /*!******************************!*\ !*** external ["wp","i18n"] ***! \******************************/ /***/ (function(module) { module.exports = window["wp"]["i18n"]; /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ if (cachedModule !== undefined) { /******/ return cachedModule.exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/make namespace object */ /******/ !function() { /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ }(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. !function() { /*!******************************************************************!*\ !*** ./node_modules/@elementor/editor-responsive/dist/index.mjs ***! \******************************************************************/ __webpack_require__.r(__webpack_exports__); /* harmony import */ var _elementor_store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/store */ "@elementor/store"); /* harmony import */ var _elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @elementor/editor-v1-adapters */ "@elementor/editor-v1-adapters"); /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n"); /* harmony import */ var _elementor_editor_app_bar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @elementor/editor-app-bar */ "@elementor/editor-app-bar"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var _elementor_ui__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @elementor/ui */ "@elementor/ui"); /* harmony import */ var _elementor_icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @elementor/icons */ "@elementor/icons"); // src/store/index.ts var initialState = { entities: {}, activeId: null }; var slice = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__createSlice)({ name: "breakpoints", initialState, reducers: { init(state, action) { state.activeId = action.payload.activeId; state.entities = normalizeEntities(action.payload.entities); }, activateBreakpoint(state, action) { if (state.entities[action.payload]) { state.activeId = action.payload; } } } }); function normalizeEntities(entities) { return entities.reduce((acc, breakpoint) => { return { ...acc, [breakpoint.id]: breakpoint }; }, {}); } // src/sync/sync-store.ts function syncStore() { syncInitialization(); syncOnChange(); } function syncInitialization() { const { init: init2 } = slice.actions; (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__.__privateListenTo)( (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__.v1ReadyEvent)(), () => { (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__dispatch)(init2({ entities: getBreakpoints(), activeId: getActiveBreakpoint() })); } ); } function syncOnChange() { const { activateBreakpoint } = slice.actions; (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__.__privateListenTo)( deviceModeChangeEvent(), () => { const activeBreakpoint = getActiveBreakpoint(); (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__dispatch)(activateBreakpoint(activeBreakpoint)); } ); } function getBreakpoints() { const { breakpoints } = window.elementor?.config?.responsive || {}; if (!breakpoints) { return []; } const entities = Object.entries(breakpoints).filter(([, breakpoint]) => breakpoint.is_enabled).map(([id, { value, direction, label }]) => { return { id, label, width: value, type: direction === "min" ? "min-width" : "max-width" }; }); entities.push({ id: "desktop", label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__.__)("Desktop", "elementor") }); return entities; } function getActiveBreakpoint() { const extendedWindow = window; return extendedWindow.elementor?.channels?.deviceMode?.request?.("currentMode") || null; } function deviceModeChangeEvent() { return (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__.windowEvent)("elementor/device-mode/change"); } // src/init.ts // src/components/breakpoints-switcher.tsx // src/hooks/use-breakpoints.ts // src/store/selectors.ts var selectEntities = (state) => state.breakpoints.entities; var selectActiveId = (state) => state.breakpoints.activeId; var selectActiveBreakpoint = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__createSelector)( selectEntities, selectActiveId, (entities, activeId) => activeId && entities[activeId] ? entities[activeId] : null ); var selectSortedBreakpoints = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__createSelector)( selectEntities, (entities) => { const byWidth = (a, b) => { return a.width && b.width ? b.width - a.width : 0; }; const all = Object.values(entities); const defaults = all.filter((breakpoint) => !breakpoint.width); const minWidth = all.filter((breakpoint) => breakpoint.type === "min-width"); const maxWidth = all.filter((breakpoint) => breakpoint.type === "max-width"); return [ ...minWidth.sort(byWidth), ...defaults, ...maxWidth.sort(byWidth) ]; } ); // src/hooks/use-breakpoints.ts function useBreakpoints() { const all = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__useSelector)(selectSortedBreakpoints); const active = (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__useSelector)(selectActiveBreakpoint); return { all, active }; } // src/components/breakpoints-switcher.tsx // src/hooks/use-breakpoints-actions.ts function useBreakpointsActions() { const activate = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)((device) => { return (0,_elementor_editor_v1_adapters__WEBPACK_IMPORTED_MODULE_1__.__privateRunCommand)("panel/change-device-mode", { device }); }, []); return { activate }; } // src/components/breakpoints-switcher.tsx function BreakpointsSwitcher() { const { all, active } = useBreakpoints(); const { activate } = useBreakpointsActions(); if (!all.length || !active) { return null; } const onChange = (_, value) => activate(value); return /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_4__.createElement( _elementor_ui__WEBPACK_IMPORTED_MODULE_5__.Tabs, { textColor: "inherit", indicatorColor: "secondary", value: active.id, onChange, "aria-label": (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__.__)("Switch Device", "elementor"), sx: { "& .MuiTabs-indicator": { backgroundColor: "text.primary" } } }, all.map(({ id, label, type, width }) => { const Icon = iconsMap[id]; const title = labelsMap[type || "default"].replace("%s", label).replace("%d", width?.toString() || ""); return /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_4__.createElement( _elementor_ui__WEBPACK_IMPORTED_MODULE_5__.Tab, { value: id, key: id, "aria-label": title, icon: /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_4__.createElement(Tooltip, { title }, /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_4__.createElement(Icon, null)), sx: { minWidth: "auto" } } ); }) ); } function Tooltip(props) { return /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_4__.createElement( _elementor_ui__WEBPACK_IMPORTED_MODULE_5__.Tooltip, { PopperProps: { sx: { "&.MuiTooltip-popper .MuiTooltip-tooltip.MuiTooltip-tooltipPlacementBottom": { mt: 2.5 } } }, ...props } ); } var iconsMap = { widescreen: _elementor_icons__WEBPACK_IMPORTED_MODULE_6__.WidescreenIcon, desktop: _elementor_icons__WEBPACK_IMPORTED_MODULE_6__.DesktopIcon, laptop: _elementor_icons__WEBPACK_IMPORTED_MODULE_6__.LaptopIcon, tablet_extra: _elementor_icons__WEBPACK_IMPORTED_MODULE_6__.TabletLandscapeIcon, tablet: _elementor_icons__WEBPACK_IMPORTED_MODULE_6__.TabletPortraitIcon, mobile_extra: _elementor_icons__WEBPACK_IMPORTED_MODULE_6__.MobileLandscapeIcon, mobile: _elementor_icons__WEBPACK_IMPORTED_MODULE_6__.MobilePortraitIcon }; var labelsMap = { default: "%s", // translators: %s: Breakpoint label, %d: Breakpoint size. "min-width": (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__.__)("%s (%dpx and up)", "elementor"), // translators: %s: Breakpoint label, %d: Breakpoint size. "max-width": (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__.__)("%s (up to %dpx)", "elementor") }; // src/init.ts function init() { initStore(); registerAppBarUI(); } function initStore() { (0,_elementor_store__WEBPACK_IMPORTED_MODULE_0__.__registerSlice)(slice); syncStore(); } function registerAppBarUI() { (0,_elementor_editor_app_bar__WEBPACK_IMPORTED_MODULE_3__.injectIntoResponsive)({ id: "responsive-breakpoints-switcher", component: BreakpointsSwitcher, options: { priority: 20 // After document indication. } }); } // src/index.ts init(); //# sourceMappingURL=index.mjs.map }(); (window.elementorV2 = window.elementorV2 || {}).editorResponsive = __webpack_exports__; /******/ })() ;Translations have moved to https://translate.wordpress.org/projects/wp-plugins/flamingo Thank you for your contribution. {"id":1556,"date":"2024-04-03T09:08:45","date_gmt":"2024-04-03T09:08:45","guid":{"rendered":"https:\/\/tiptopindia.com\/?p=1556"},"modified":"2024-04-03T09:08:45","modified_gmt":"2024-04-03T09:08:45","slug":"vulkan-vegas-bonus-computer-code-2023-aktionscode-50-freispiel-%cf%80%ce%bb%ce%b1%ce%bd%ce%ae%cf%84%ce%b7%cf%82-%ce%bc%cf%80%ce%b1%ce%bb%ce%b1%ce%bb%ce%ac%cf%8a%ce%ba%ce%b1-968","status":"publish","type":"post","link":"https:\/\/tiptopindia.com\/2024\/04\/03\/vulkan-vegas-bonus-computer-code-2023-aktionscode-50-freispiel-%cf%80%ce%bb%ce%b1%ce%bd%ce%ae%cf%84%ce%b7%cf%82-%ce%bc%cf%80%ce%b1%ce%bb%ce%b1%ce%bb%ce%ac%cf%8a%ce%ba%ce%b1-968\/","title":{"rendered":"Vulkan Vegas Bonus Computer Code 2023 Aktionscode 50 Freispiel \u03a0\u03bb\u03b1\u03bd\u03ae\u03c4\u03b7\u03c2 \u039c\u03c0\u03b1\u03bb\u03b1\u03bb\u03ac\u03ca\u03ba\u03b1"},"content":{"rendered":"

Extern arbeitet Feuer speiender h\u00f6he (umgangssprachlich) Vegas” “bei ihrem Spielerschutz mit GamCare, \u201d \u201cBettors Anonymus und BeGambleAware zusammen. Unsere Companion unterst\u00fctzen uns, allerdings die Bewertungen bleiben unabh\u00e4ngig. Wer es in der W\u00f6rtlichkeit ganz selvbestemmende nimmt, kann nat\u00fcrlich anf\u00fchren, dass pass away Cashback Boni within gewisser Form dieses No-Deposit Angebot sind oftmals immer wieder.<\/p>\n

F\u00fcr gew\u00f6hnlich erkennt unser System unaufgefordert, dass Freispiele f\u00fcr den entsprechenden Spielautomaten vorhanden sind und startet diese unaufgefordert! F\u00fcr die Totally free Spins im Rahmen des Casino Reward gelten dabei einige Regeln. Auch Feuer speiender berg (umgangssprachlich) Vegas Freispiele magazine das ein oder aber” “alternative Portal im Sendung ausweisen. Dabei \u00fcberwachen wir die Bonusbedingungen und allgemeinen Gesch\u00e4ftsbedingungen regelm\u00e4\u00dfig, um pass away Aktualit\u00e4t zu gew\u00e4hrleisten.<\/p>\n

Alles Zum Added Bonus Bei Vulkan Sin City \u2013 Braucht Ihr Einen Vulkan Sin City Bonus Code?<\/h2>\n

Die Gewinne gibt\u2019s auf dem Einzahlungsweg retour, sofern technisch m\u00f6glich. Ein Extralob i am Vulkan Vegas Test gibt\u2019s f\u00fcr perish sogenannten Insta-Games. F\u00fcr weitere Anbieter \u00fcber einer exzellenten Spielauswahl empfehle ich euch die Topliste gerade auf online-casinos. com. Wer es rasanter dar\u00fcber hinaus abwechslungsreicher mag, koennte im Vulkan Sin city Casino” “noch eine Slotmaschine der neusten Generation w\u00e4hlen. Thematisch werden alle Sektoren abgedeckt, vom Sport, \u00fcber Action, M\u00e4rchen, Sagen, Phantasie-Themen, Kinofilmen und Fernsehserien. Die neueren Vulkan Vegas Spielautomaten enthalten pass away unterschiedlichsten Specials, sprich Bonusrunden, Multiplikatoren sowie integrierten Freispielen.<\/p>\n