{"id":250110,"date":"2025-09-29T09:48:59","date_gmt":"2025-09-29T09:48:59","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/formular-af-citizenone-journalsystem\/"},"modified":"2026-01-05T06:19:37","modified_gmt":"2026-01-05T06:19:37","slug":"formular-af-citizenone-journalsystem","status":"publish","type":"plugin","link":"https:\/\/ory.wordpress.org\/plugins\/formular-af-citizenone-journalsystem\/","author":14770090,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.4.0","stable_tag":"1.4.0","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Formular af CitizenOne journalsystem","header_author":"support@citizenone.dk","header_description":"Formular af CitizenOne journalsystem","assets_banners_color":"006d88","last_updated":"2026-01-05 06:19:37","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/AWORK-AS\/contact-form-app","header_author_uri":"https:\/\/citizenone.dk\/kontakt\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":322,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.3.2":{"tag":"1.3.2","author":"mzaworkdk","date":"2025-09-29 09:52:17"},"1.3.3":{"tag":"1.3.3","author":"mzaworkdk","date":"2025-12-02 04:09:14"},"1.4.0":{"tag":"1.4.0","author":"mzaworkdk","date":"2026-01-05 06:19:37"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":3369578,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3369578,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"formular-af-citizenone-journalsystem\/contact-form":{"apiVersion":3,"name":"formular-af-citizenone-journalsystem\/contact-form","category":"widgets","icon":"email","description":"Formular af CitizenOne journalsystem","keywords":["form","contacts","leads","citizenone","journalsystem"],"version":"1.0.0","textdomain":"formular-af-citizenone-journalsystem","editorScript":"file:.\/assets\/build\/plugin-block.js","editorStyle":"file:.\/assets\/build\/plugin-block.css","style":"file:.\/assets\/build\/plugin-block.css","attributes":{"headline":{"type":"string","default":"Get in Touch With Us"},"color":{"type":"string","default":"#205E77"},"btnColor":{"type":"string","default":"#42aed9"},"btnTextColor":{"type":"string","default":"#ffffff"}},"example":{"attributes":{"headline":"Get in Touch With Us","color":"#205E77","btnColor":"#42aed9","btnTextColor":"#ffffff"}},"title":"Contact Form"}},"tagged_versions":["1.3.2","1.3.3","1.4.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3369578,"resolution":"1","location":"assets","locale":"","width":478,"height":493},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3369578,"resolution":"2","location":"assets","locale":"","width":276,"height":506},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3369578,"resolution":"3","location":"assets","locale":"","width":538,"height":504}},"screenshots":{"1":"Contact Form App Setup","2":"Gutenberg block interface","3":"Example embedded form on frontend"}},"plugin_section":[],"plugin_tags":[248530,2736,335],"plugin_category":[58],"plugin_contributors":[248531,248532],"plugin_business_model":[],"class_list":["post-250110","plugin","type-plugin","status-publish","hentry","plugin_tags-citizenone","plugin_tags-contacts","plugin_tags-leads","plugin_category-user-management","plugin_contributors-awbot123","plugin_contributors-mzaworkdk","plugin_committers-awbot123","plugin_committers-mzaworkdk"],"banners":{"banner":"https:\/\/ps.w.org\/formular-af-citizenone-journalsystem\/assets\/banner-772x250.png?rev=3369578","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/formular-af-citizenone-journalsystem\/assets\/icon.svg?rev=3369578","icon":"https:\/\/ps.w.org\/formular-af-citizenone-journalsystem\/assets\/icon.svg?rev=3369578","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/formular-af-citizenone-journalsystem\/assets\/screenshot-1.png?rev=3369578","caption":"Contact Form App Setup"},{"src":"https:\/\/ps.w.org\/formular-af-citizenone-journalsystem\/assets\/screenshot-2.png?rev=3369578","caption":"Gutenberg block interface"},{"src":"https:\/\/ps.w.org\/formular-af-citizenone-journalsystem\/assets\/screenshot-3.png?rev=3369578","caption":"Example embedded form on frontend"}],"raw_content":"<!--section=description-->\n<ul>\n<li>Customizable embed forms with color matching<\/li>\n<li>Real-time lead submission to CitizenOne dashboard<\/li>\n<li>Shortcode &amp; Gutenberg block implementation<\/li>\n<li>\"Formular af CitizenOne - Journalsystem med alt inklusiv\" branding<\/li>\n<li>Mobile-responsive design<\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>This plugin utilizes the following third-party services to enhance functionality:<\/p>\n\n<h3>hCaptcha<\/h3>\n\n<ul>\n<li><strong>Purpose<\/strong>: Optional spam protection for contact forms<\/li>\n<li><strong>Data Sent<\/strong>: User interaction data through hCaptcha's API<\/li>\n<li><strong>When<\/strong>: Only when site administrator has configured hCaptcha keys in plugin settings<\/li>\n<li><strong>Terms<\/strong>: https:\/\/hcaptcha.com\/terms<\/li>\n<li><strong>Privacy Policy<\/strong>: https:\/\/hcaptcha.com\/privacy<\/li>\n<\/ul>\n\n<h3>CitizenOne API<\/h3>\n\n<ul>\n<li><strong>Purpose<\/strong>: Processing form submissions and generating authentication tokens<\/li>\n<li><strong>Data Sent<\/strong>: Form submission data (as provided by users) and authentication tokens<\/li>\n<li><strong>When<\/strong>: When users submit forms through the contact form<\/li>\n<li><strong>Terms<\/strong>: https:\/\/citizenone.dk\/vilkaarogbetingelser\/<\/li>\n<li><strong>Privacy Policy<\/strong>: https:\/\/citizenone.dk\/privatlivspolitik\/<\/li>\n<\/ul>\n\n<!--section=installation-->\n<h4>Uploading in WordPress Dashboard<\/h4>\n\n<ol>\n<li>Navigate to the 'Add New' in the plugins dashboard<\/li>\n<li>Navigate to the 'Upload' area<\/li>\n<li>Select <code>formular-af-citizenone-journalsystem.zip<\/code> from your computer<\/li>\n<li>Click 'Install Now'<\/li>\n<li>Activate the plugin in the Plugin dashboard<\/li>\n<\/ol>\n\n<h4>Using FTP<\/h4>\n\n<ol>\n<li>Download <code>formular-af-citizenone-journalsystem.zip<\/code><\/li>\n<li>Extract the <code>formular-af-citizenone-journalsystem<\/code> directory to your computer<\/li>\n<li>Upload the <code>formular-af-citizenone-journalsystem<\/code> directory to the <code>\/wp-content\/plugins\/<\/code> directory<\/li>\n<li>Activate the plugin in the Plugin dashboard<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20to%20enable%20hcaptcha%3F\"><h3>How to Enable hCaptcha?<\/h3><\/dt>\n<dd><p>For hCaptcha to work, you need to add your <strong>Secret Key<\/strong> and <strong>Site Key<\/strong> from hCaptcha into the Admin Settings.\n<strong>Important<\/strong>: If you already had a <strong>Contact Form<\/strong> block on your web page before adding the hCaptcha keys, you must replace it with a new one for the settings to take effect.<\/p><\/dd>\n<dt id=\"how%20do%20leads%20appear%20in%20citizenone%3F\"><h3>How do leads appear in CitizenOne?<\/h3><\/dt>\n<dd><p>All submissions populate in your dashboard &gt; Leads section with timestamp, source URL, and contact details.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release with core functionality<\/li>\n<li>Gutenberg block support<\/li>\n<li>Settings dashboard<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>keyword search fixes (failed)<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>keyword search fixes<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Unauthorized WordPress plugin files were removed.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fix slug.<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Added a shortcode [citizenone_form]<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Fixes for issues:\n\n<ul>\n<li>You haven't added yourself to the \"Contributors\" list for this plugin.<\/li>\n<li>Not permitted \ufb01les<\/li>\n<li>WordPress.org directory assets in the plugin code.<\/li>\n<li>Out of Date Libraries<\/li>\n<li>Undocumented use of a 3rd Party \/ external service<\/li>\n<li>Missing permission_callback in register_rest_route()<\/li>\n<li>Data Must be Sanitized, Escaped, and Validated<\/li>\n<li>Processing the whole input<\/li>\n<li>Generic function\/class\/de\ufb01ne\/namespace\/option names<\/li>\n<li>Allowing Direct File Access to plugin \ufb01les<\/li>\n<\/ul><\/li>\n<li>Added settings validation notices<\/li>\n<li>Added settings and form implementation instructions<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>small .distignore fix<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Using live app<\/li>\n<li>Contact form fixes<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Fixes for PHPCS errors and warnings<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>phpcs --standard=WordPress passed.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Refactor: Replaced CMB2 dependency with the native WordPress Settings API.<\/li>\n<li>Refactor: Removed <code>yahnis-elsts\/plugin-update-checker<\/code> dependency to use the WordPress.org update system exclusively.<\/li>\n<li>Refactor: Implemented PHP-Scoper to prefix all third-party dependencies, preventing library conflicts.<\/li>\n<li>Refactor: Added a Composer autoloader suffix for better isolation.<\/li>\n<li>Fix: Resolved multiple PHPStan and PHPCS errors related to type safety and output escaping.<\/li>\n<\/ul>\n\n<h4>1.3.1 - 2025-09-26<\/h4>\n\n<ul>\n<li><strong>Fix:<\/strong> Resolved a JavaScript conflict by using <code>window.addEventListener<\/code> instead of <code>window.onload<\/code>. This prevents form submission failures when another plugin is active on the same page.<\/li>\n<li><strong>Tweak:<\/strong> Prefixed the REST API callback function to ensure uniqueness and prevent potential conflicts with other plugins.<\/li>\n<li><strong>Optimization:<\/strong> Frontend assets (CSS\/JS) are now loaded conditionally, only on pages where the form block or shortcode is present.<\/li>\n<li><strong>Optimization:<\/strong> Backend assets are now loaded strictly on the plugin's own settings page, reducing unnecessary load across the WordPress admin area.<\/li>\n<\/ul>\n\n<h4>1.3.2<\/h4>\n\n<ul>\n<li>Added awbot123 as Contributors.<\/li>\n<li>Fix: plugin-block.scss missing import styles<\/li>\n<\/ul>\n\n<h4>1.3.3<\/h4>\n\n<ul>\n<li>Tested up to WordPress 6.9.<\/li>\n<li>Fixes for new Plugin Check errors.<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>fix: Remove unused admin notice dependency<\/li>\n<li>fix(security): Override webpack-dev-server to patch vulnerability<\/li>\n<\/ul>","raw_excerpt":"Embed customizable contact forms from CitizenOne on any WordPress site.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/250110","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=250110"}],"author":[{"embeddable":true,"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/awbot123"}],"wp:attachment":[{"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=250110"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=250110"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=250110"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=250110"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=250110"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ory.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=250110"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}