Plugin Directory

Changeset 3196034


Ignore:
Timestamp:
11/25/2024 01:28:49 AM (16 months ago)
Author:
danbilabs
Message:

Version 0.9.5

Location:
advanced-members/trunk
Files:
11 added
18 edited

Legend:

Unmodified
Added
Removed
  • advanced-members/trunk/admin/class-admin-forms.php

    r3186203 r3196034  
    285285                'key'                               => 'field_amem_form_select_type',
    286286                'name'                              => 'amem_form_select_type',
    287                 'type'                              => 'button_group',
     287                // 'type'                               => 'button_group',
     288                'type'                              => 'radio',
     289                'layout'                            => 'horizontal',
    288290                'label'                             => __( 'Form Type', 'advanced-members' ),
    289291                'default'                       => 'registration',
     
    680682        );
    681683
     684        $submit_text = __( 'Submit', 'advanced-members' );
     685        if ( !empty($_GET['post'])) {
     686            // $form_type = get_field( 'amem_form_select_type', (int) $_GET['post'] );
     687            $form_type = get_post_meta( (int) $_GET['post'], 'amem_form_select_type', true );
     688            switch ( $form_type ) {
     689                case 'login':
     690                $submit_text = __( 'Login', 'advanced-members' );
     691                break;
     692                case 'registration':
     693                $submit_text = __( 'Register', 'advanced-members' );
     694                break;
     695                case 'account':
     696                $submit_text = __( 'Update Account', 'advanced-members' );
     697                break;
     698                default:
     699                break;
     700            }
     701        }
    682702        $general_fields_more = [
    683             array (
    684                 'key'                               => 'field_amem_form_description',
    685                 'label'                             => __( 'Description', 'advanced-members' ),
    686                 'name'                              => 'amem_form_description',
    687                 'type'                              => 'textarea',
    688                 'instructions'              => '',
    689                 'required'                      => 0,
    690                 'conditional_logic'     => 0,
    691                 'wrapper'                       => array (
    692                     'width'     => '',
    693                     'class'     => '',
    694                     'id'            => '',
    695                 ),
    696                 'default_value'             => '',
    697                 'tabs'                              => 'all',
    698                 'toolbar'                       => 'full',
    699                 'media_upload'              => 1,
    700             ),
     703            // array (
     704            // 'key'                               => 'field_amem_form_description',
     705            // 'label'                             => __( 'Description', 'advanced-members' ),
     706            // 'name'                              => 'amem_form_description',
     707            // 'type'                              => 'textarea',
     708            // 'instructions'              => '',
     709            // 'required'                      => 0,
     710            // 'conditional_logic'     => 0,
     711            // 'wrapper'                       => array (
     712            //      'width'     => '',
     713            //      'class'     => '',
     714            //      'id'            => '',
     715            // ),
     716            // 'default_value'             => '',
     717            // 'tabs'                              => 'all',
     718            // 'toolbar'                       => 'full',
     719            // 'media_upload'              => 1,
     720            // ),
    701721            array(
    702722                'type'                      => 'text',
     
    706726                'label'                     => __( 'Submit Button Text', 'advanced-members' ),
    707727                'instructions'              => __( 'Submit button text. Leave empty for use default text.', 'advanced-members' ),
    708                 'conditions'                => array(
    709                     'field'    => 'field_amem_form_select_type',
    710                     'operator' => '!=',
    711                     'value'    => 'account',
    712                 ),
     728                'placeholder'               => $submit_text,
     729                // 'conditions'                 => array(
     730                //  'field'    => 'field_amem_form_select_type',
     731                //  'operator' => '!=',
     732                //  'value'    => 'account',
     733                // ),
    713734            ),
    714735        ];
  • advanced-members/trunk/admin/class-admin-options.php

    r3186203 r3196034  
    389389
    390390    function enqueue_admin_scripts() {
    391         wp_enqueue_style( 'amem-admin', amem_get_url('assets/build/css/admin.css'), [], AMEM_VERSION );
     391        $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
     392
     393        wp_enqueue_style( 'amem-admin', amem_get_url("assets/build/css/admin{$min}.css"), [], AMEM_VERSION );
    392394        if ( !amem_is_screen( ['amem-form', 'edit-amem-form', 'acf-field-group', 'acf_page_amem_settings', 'acf_page_amem_dashboard']) )
    393395            return;
     
    395397        amem()->fields->enqueue_scripts();
    396398
    397         $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '.min' : '';
    398         wp_register_script( 'amem-admin', amem_get_url('assets/build/js/amem-admin.js'), ['jquery', 'acf-input', 'amem-input'], AMEM_VERSION, true );
     399        wp_register_script( 'amem-admin', amem_get_url("assets/build/js/amem-admin{$min}.js"), ['jquery', 'acf-input', 'amem-input'], AMEM_VERSION, true );
    399400
    400401        $account_forms = array(
  • advanced-members/trunk/admin/class-admin.php

    r3186203 r3196034  
    130130            $page_id = amem()->options->get( amem()->options->get_core_page_id($page_key) );
    131131            if ( $page_id == $post->ID ) {
    132                 $post_states[ 'amem_' . $page_key ] = sprintf( 'Advanced Members for ACF %s', $page_value['label'] );
     132                $post_states[ 'amem_' . $page_key ] = sprintf( 'Adv. Members %s', $page_value['label'] );
    133133            }
    134134        }
  • advanced-members/trunk/advanced-members.php

    r3186203 r3196034  
    44 * Plugin URI: https://advanced-members.com/
    55 * Description: Lightweight & All-in-One Membership Plugin for ACF Fans.
    6  * Version: 0.9.4
     6 * Version: 0.9.5
    77 * Author: DanbiLabs
    88 * Author URI: https://danbistore.com
     
    4545
    4646    /** @var string version */
    47     public static $version = '0.9.4';
     47    public static $version = '0.9.5';
    4848
    4949    /** @var string version */
  • advanced-members/trunk/assets/build/blocks/blocks.asset.php

    r3182890 r3196034  
    1 <?php return array('dependencies' => array('react', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => '268cc488be5c14e447db');
     1<?php return array('dependencies' => array('react', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-element', 'wp-i18n', 'wp-url'), 'version' => 'bcba34df3ee5e6ddca5f');
  • advanced-members/trunk/assets/build/blocks/blocks.js

    r3182890 r3196034  
    1 (()=>{var e={942:(e,t)=>{var r;!function(){"use strict";var a={}.hasOwnProperty;function n(){for(var e="",t=0;t<arguments.length;t++){var r=arguments[t];r&&(e=l(e,o(r)))}return e}function o(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return n.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var r in e)a.call(e,r)&&e[r]&&(t=l(t,r));return t}function l(e,t){return t?e?e+" "+t:e+t:e}e.exports?(n.default=n,e.exports=n):void 0===(r=function(){return n}.apply(t,[]))||(e.exports=r)}()}},t={};function r(a){var n=t[a];if(void 0!==n)return n.exports;var o=t[a]={exports:{}};return e[a](o,o.exports,r),o.exports}(()=>{"use strict";const e=window.React,t=window.wp.blocks,a=window.wp.i18n,n=window.wp.blockEditor,o=window.wp.url,l=window.wp.components,m=JSON.parse('{"uK":{"type":{"enum":["","form","preForm"],"default":"form"},"form":{"type":"number","default":0},"preForm":{"type":"string","default":""},"hash":{"type":"string","default":""},"title":{"type":"string","default":""}}}');r(942),window.wp.element;const s=Object.assign({},m.uK);(0,t.registerBlockType)("amem/form",{title:(0,a.__)("Members Form","advanced-members"),icon:{src:(0,e.createElement)(e.Fragment,null,(0,e.createElement)("svg",{height:"100%",strokeMiterlimit:"10",version:"1.1",viewBox:"0 0 113 113",width:"100%",xmlSpace:"preserve",xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},(0,e.createElement)("g",null,(0,e.createElement)("path",{d:"M56.25 0C25.169 0 0 25.169 0 56.25C0 87.279 25.169 112.5 56.25 112.5C87.279 112.5 112.5 87.279 112.5 56.25C112.5 25.169 87.279 0 56.25 0ZM56.25 7.84375C82.936 7.84375 104.656 29.512 104.656 56.25C104.656 82.936 82.936 104.656 56.25 104.656C29.512 104.656 7.84375 82.936 7.84375 56.25C7.84375 29.512 29.512 7.84375 56.25 7.84375ZM40.3125 68.0625C39.3051 68.1214 38.3315 68.564 37.625 69.375C36.16 70.944 36.3155 73.462 37.9375 74.875L40.5312 71.9062L40.5625 71.9375L37.9375 74.875C37.9375 74.875 38 74.8855 38 74.9375C38.053 74.9905 38.145 75.02 38.25 75.125C38.459 75.282 38.779 75.561 39.25 75.875C40.087 76.451 41.2738 77.1837 42.8438 77.9688C45.9307 79.4338 50.4428 80.9375 56.0938 80.9375L56.0938 80.7812C56.1711 80.9362 56.25 81.0937 56.25 81.0938C61.849 81.0938 66.361 79.5795 69.5 78.0625C71.018 77.2775 72.2568 76.5655 73.0938 75.9375C73.5117 75.6235 73.8317 75.334 74.0938 75.125C74.1988 75.02 74.2908 74.927 74.3438 74.875C74.3438 74.823 74.4062 74.7813 74.4062 74.7812L74.5 74.875L74.5625 74.9375C76.1325 73.4725 76.288 70.997 74.875 69.375C73.4529 67.8005 71.1206 67.6561 69.5 68.9375C69.4662 68.8993 69.1875 68.5937 69.1875 68.5938L69.1875 68.375C69.1875 68.322 69.125 68.375 69.125 68.375C69.073 68.375 69.0208 68.3855 68.9688 68.4375C68.8118 68.4895 68.6057 68.666 68.3438 68.875C67.7687 69.242 66.8698 69.7365 65.7188 70.3125C63.4167 71.4105 60.061 72.5313 55.875 72.5312L55.875 73.0625C51.7549 73.0192 48.5074 71.9215 46.25 70.8438C45.099 70.2677 44.2 69.7628 43.625 69.3438C43.3738 69.1766 43.242 69.0694 43.125 68.9688L43.1562 69.0625C43.1381 69.0461 43.1122 69.0473 43.0938 69.0312L43.125 68.9688C43.0957 68.9436 43.0208 68.896 43 68.875C42.895 68.823 42.8958 68.75 42.8438 68.75L42.8125 68.6875L42.7188 68.8125C41.9842 68.3084 41.1566 68.0132 40.3125 68.0625Z",fill:"#28303f",fillRule:"nonzero",opacity:"1",stroke:"none"}))))},attributes:s,edit:t=>{const{attributes:r,setAttributes:m,clientId:s,className:c}=t,{type:i,form:p,preForm:d,hash:u,title:f,output:v,blockId:b}=r,C=e=>{const t=[];if("object"==typeof e)Object.entries(e).map((([e,r])=>t.push({value:e,label:r.title})));else for(const[r,a]of e)t.push({value:r,label:a.title});return t},w=(0,n.useBlockProps)({}),g=(0,e.createElement)(n.InspectorControls,{key:"setting"},(0,e.createElement)(l.PanelBody,{title:(0,a.__)("Advanced Members for ACF Form","advanced-members")},(0,e.createElement)(l.SelectControl,{label:(0,a.__)("Form Type","advanced-members"),value:i,options:[{value:"",label:(0,a.__)("– Select a type –","advanced-members")},{value:"form",label:(0,a.__)("Login / Registration","advanced-members")},{value:"preForm",label:(0,a.__)("Predefined Forms","advanced-members")}],onChange:e=>m({type:e})}),"form"===i&&(0,e.createElement)(e.Fragment,null,(0,e.createElement)(l.SelectControl,{label:(0,a.__)("Forms","advanced-members"),value:p,options:C(amemBlocks.forms),onChange:e=>m(amemBlocks.forms[e])}),p>"0"&&(0,e.createElement)(e.Fragment,null,(0,e.createElement)(l.ExternalLink,{href:(e=>{const t=ajaxurl.replace(/\/admin-ajax\.php$/,"/post.php");return(0,o.addQueryArgs)(t,{post:e,action:"edit"})})(p)},(0,a.__)("Edit this form","advanced-members")))),"preForm"===i&&(0,e.createElement)(e.Fragment,null,(0,e.createElement)(l.SelectControl,{label:(0,a.__)("Predefined Forms","advanced-members"),value:d,options:C(amemBlocks.preForms),onChange:e=>m(amemBlocks.preForms[e])})))),h=(0,e.createElement)("div",{...w},(0,e.createElement)("div",{className:"acf-block-component acf-block-body amem-block-component amem-block-body"},(0,e.createElement)("div",null,(0,e.createElement)("div",{className:"acf-block-preview amem-block-preview"},(0,e.createElement)("div",{className:"amem-block-description"},(0,a.__)("Members Form","advanced-members")),(0,e.createElement)("div",{className:"amem-block-form-name"},f),(0,e.createElement)("div",{className:"amem-block-subtitle"},(0,a.__)("Preview page to view form","advanced-members"))))));return(0,e.createElement)(e.Fragment,null,g,h)},save:({attributes:t})=>{const r=(e=>{if(e.hash&&0==e.hash.indexOf("["))return e.hash;let t="[advanced-members]";return e.hash?t=t.replace(/\]$/,` form="${e.hash}"]`):e.form&&(t=t.replace(/\]$/,` form="${e.form}"]`)),e.title&&(t=t.replace(/\]$/,` title="${e.title}"]`)),t})(t),a=n.useBlockProps.save();return(0,e.createElement)("div",{...a},r)}})})()})();
     1/******/ (() => { // webpackBootstrap
     2/******/    var __webpack_modules__ = ({
     3
     4/***/ "./src/blocks/form/edit.js":
     5/*!*********************************!*\
     6  !*** ./src/blocks/form/edit.js ***!
     7  \*********************************/
     8/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
     9
     10"use strict";
     11__webpack_require__.r(__webpack_exports__);
     12/* harmony export */ __webpack_require__.d(__webpack_exports__, {
     13/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
     14/* harmony export */ });
     15/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
     16/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
     17/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
     18/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
     19/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor");
     20/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__);
     21/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/element */ "@wordpress/element");
     22/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__);
     23/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
     24/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__);
     25/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
     26/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__);
     27/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @wordpress/url */ "@wordpress/url");
     28/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_wordpress_url__WEBPACK_IMPORTED_MODULE_6__);
     29
     30
     31
     32
     33
     34
     35// import { compose } from "@wordpress/compose";
     36
     37
     38// import withSetAttributes from '../../hoc/withSetAttributes';
     39
     40const formEdit = props => {
     41  const {
     42    attributes,
     43    setAttributes,
     44    clientId,
     45    className
     46  } = props;
     47  const {
     48    type,
     49    form,
     50    preForm,
     51    hash,
     52    title,
     53    output,
     54    blockId
     55  } = attributes;
     56  const formOptions = e => {
     57      const t = [];
     58      if (typeof e === 'object') {
     59        Object.entries(e).map(([a, l]) => t.push({
     60          value: a,
     61          label: l.title
     62        }));
     63      } else {
     64        for (const [a, l] of e) t.push({
     65          value: a,
     66          label: l.title
     67        });
     68      }
     69      return t;
     70    },
     71    editURL = id => {
     72      const t = ajaxurl.replace(/\/admin-ajax\.php$/, "/post.php");
     73      return (0, _wordpress_url__WEBPACK_IMPORTED_MODULE_6__.addQueryArgs)(t, {
     74        post: id,
     75        action: "edit"
     76      });
     77    };
     78  const blockProps = (0,_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.useBlockProps)({});
     79  const forms = formOptions(amemBlocks.forms);
     80  const preForms = formOptions(amemBlocks.preForms);
     81  const formSelect = (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__.SelectControl, {
     82    label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("Select Form", "advanced-members"),
     83    value: form == "0" ? preForm : form,
     84    onChange: value => {
     85      const atts = amemBlocks.forms[value] ? amemBlocks.forms[value] : amemBlocks.preForms[value];
     86      setAttributes(atts);
     87    }
     88  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("option", {
     89    value: ""
     90  }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("\u2013 Select a Form \u2013", "advanced-members")), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("optgroup", {
     91    label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("Login / Registration", "advanced-members")
     92  }, forms.map((option, index) => {
     93    const key = option.id || `${option.label}-${option.value}-${index}`;
     94    return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("option", {
     95      key: key,
     96      value: option.value,
     97      disabled: option.disabled,
     98      hidden: option.hidden
     99    }, option.label);
     100  })), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("optgroup", {
     101    label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("Predefined Forms", "advanced-members")
     102  }, preForms.map((option, index) => {
     103    const key = option.id || `${option.label}-${option.value}-${index}`;
     104    return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("option", {
     105      key: key,
     106      value: option.value,
     107      disabled: option.disabled,
     108      hidden: option.hidden
     109    }, option.label);
     110  })));
     111  const settingsPanel = (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_2__.InspectorControls, {
     112    key: "setting"
     113  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__.PanelBody, {
     114    title: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("Advanced Members for ACF Form", "advanced-members")
     115  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_wordpress_components__WEBPACK_IMPORTED_MODULE_4__.SelectControl, {
     116    label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("Select Form", "advanced-members"),
     117    value: form == "0" ? preForm : form,
     118    onChange: value => {
     119      const atts = amemBlocks.forms[value] ? amemBlocks.forms[value] : amemBlocks.preForms[value];
     120      setAttributes(atts);
     121    }
     122  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("option", {
     123    value: ""
     124  }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("\u2013 Select a Form \u2013", "advanced-members")), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("optgroup", {
     125    label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("Login / Registration", "advanced-members")
     126  }, forms.map((option, index) => {
     127    const key = option.id || `${option.label}-${option.value}-${index}`;
     128    return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("option", {
     129      key: key,
     130      value: option.value,
     131      disabled: option.disabled,
     132      hidden: option.hidden
     133    }, option.label);
     134  })), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("optgroup", {
     135    label: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)("Predefined Forms", "advanced-members")
     136  }, preForms.map((option, index) => {
     137    const key = option.id || `${option.label}-${option.value}-${index}`;
     138    return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("option", {
     139      key: key,
     140      value: option.value,
     141      disabled: option.disabled,
     142      hidden: option.hidden
     143    }, option.label);
     144  })))));
     145  const renderBlock = (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     146    ...blockProps
     147  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     148    className: "acf-block-component acf-block-body amem-block-component amem-block-body"
     149  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", null, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     150    className: "acf-block-preview amem-block-preview"
     151  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     152    className: "amem-block-description"
     153  }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)('Adv. Members Form', 'advanced-members')), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     154    className: "amem-block-form-name"
     155  }, title), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     156    className: "amem-block-form-select"
     157  }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, formSelect)), (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     158    className: "amem-block-subtitle"
     159  }, (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_5__.__)('Preview page to view form', 'advanced-members'))))));
     160  return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, settingsPanel, renderBlock);
     161};
     162/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (formEdit);
     163
     164/***/ }),
     165
     166/***/ "./src/blocks/form/index.js":
     167/*!**********************************!*\
     168  !*** ./src/blocks/form/index.js ***!
     169  \**********************************/
     170/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
     171
     172"use strict";
     173__webpack_require__.r(__webpack_exports__);
     174/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
     175/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
     176/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @wordpress/blocks */ "@wordpress/blocks");
     177/* harmony import */ var _wordpress_blocks__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__);
     178/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n");
     179/* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__);
     180/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @wordpress/block-editor */ "@wordpress/block-editor");
     181/* harmony import */ var _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__);
     182/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @wordpress/url */ "@wordpress/url");
     183/* harmony import */ var _wordpress_url__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_url__WEBPACK_IMPORTED_MODULE_4__);
     184/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @wordpress/components */ "@wordpress/components");
     185/* harmony import */ var _wordpress_components__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_components__WEBPACK_IMPORTED_MODULE_5__);
     186/* harmony import */ var _block_json__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./block.json */ "./src/blocks/form/block.json");
     187/* harmony import */ var _edit__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./edit */ "./src/blocks/form/edit.js");
     188
     189/**
     190 * WordPress dependencies
     191 */
     192
     193
     194
     195
     196// import { useState } from '@wordpress/element';
     197
     198// import apiFetch from '@wordpress/api-fetch';
     199
     200/**
     201 * Internal dependencies
     202 */
     203
     204
     205const attributes = Object.assign({}, _block_json__WEBPACK_IMPORTED_MODULE_6__.attributes);
     206const toShortcode = e => {
     207  if (e.hash && e.hash.indexOf('[') == 0) return e.hash;
     208  let t = "[advanced-members]";
     209  return e.hash ? t = t.replace(/\]$/, ` form="${e.hash}"]`) : e.form && (t = t.replace(/\]$/, ` form="${e.form}"]`)), e.title && (t = t.replace(/\]$/, ` title="${e.title}"]`)), t;
     210};
     211(0,_wordpress_blocks__WEBPACK_IMPORTED_MODULE_1__.registerBlockType)('amem/form', {
     212  title: (0,_wordpress_i18n__WEBPACK_IMPORTED_MODULE_2__.__)('Adv. Members Form', 'advanced-members'),
     213  // icon: 'people',
     214  icon: {
     215    src: (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(react__WEBPACK_IMPORTED_MODULE_0__.Fragment, null, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("svg", {
     216      height: "100%",
     217      strokeMiterlimit: "10",
     218      version: "1.1",
     219      viewBox: "0 0 113 113",
     220      width: "100%",
     221      xmlSpace: "preserve",
     222      xmlns: "http://www.w3.org/2000/svg",
     223      xmlnsXlink: "http://www.w3.org/1999/xlink"
     224    }, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("g", null, (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("path", {
     225      d: "M56.25 0C25.169 0 0 25.169 0 56.25C0 87.279 25.169 112.5 56.25 112.5C87.279 112.5 112.5 87.279 112.5 56.25C112.5 25.169 87.279 0 56.25 0ZM56.25 7.84375C82.936 7.84375 104.656 29.512 104.656 56.25C104.656 82.936 82.936 104.656 56.25 104.656C29.512 104.656 7.84375 82.936 7.84375 56.25C7.84375 29.512 29.512 7.84375 56.25 7.84375ZM40.3125 68.0625C39.3051 68.1214 38.3315 68.564 37.625 69.375C36.16 70.944 36.3155 73.462 37.9375 74.875L40.5312 71.9062L40.5625 71.9375L37.9375 74.875C37.9375 74.875 38 74.8855 38 74.9375C38.053 74.9905 38.145 75.02 38.25 75.125C38.459 75.282 38.779 75.561 39.25 75.875C40.087 76.451 41.2738 77.1837 42.8438 77.9688C45.9307 79.4338 50.4428 80.9375 56.0938 80.9375L56.0938 80.7812C56.1711 80.9362 56.25 81.0937 56.25 81.0938C61.849 81.0938 66.361 79.5795 69.5 78.0625C71.018 77.2775 72.2568 76.5655 73.0938 75.9375C73.5117 75.6235 73.8317 75.334 74.0938 75.125C74.1988 75.02 74.2908 74.927 74.3438 74.875C74.3438 74.823 74.4062 74.7813 74.4062 74.7812L74.5 74.875L74.5625 74.9375C76.1325 73.4725 76.288 70.997 74.875 69.375C73.4529 67.8005 71.1206 67.6561 69.5 68.9375C69.4662 68.8993 69.1875 68.5937 69.1875 68.5938L69.1875 68.375C69.1875 68.322 69.125 68.375 69.125 68.375C69.073 68.375 69.0208 68.3855 68.9688 68.4375C68.8118 68.4895 68.6057 68.666 68.3438 68.875C67.7687 69.242 66.8698 69.7365 65.7188 70.3125C63.4167 71.4105 60.061 72.5313 55.875 72.5312L55.875 73.0625C51.7549 73.0192 48.5074 71.9215 46.25 70.8438C45.099 70.2677 44.2 69.7628 43.625 69.3438C43.3738 69.1766 43.242 69.0694 43.125 68.9688L43.1562 69.0625C43.1381 69.0461 43.1122 69.0473 43.0938 69.0312L43.125 68.9688C43.0957 68.9436 43.0208 68.896 43 68.875C42.895 68.823 42.8958 68.75 42.8438 68.75L42.8125 68.6875L42.7188 68.8125C41.9842 68.3084 41.1566 68.0132 40.3125 68.0625Z",
     226      fill: "#28303f",
     227      fillRule: "nonzero",
     228      opacity: "1",
     229      stroke: "none"
     230    }))))
     231  },
     232  attributes,
     233  edit: _edit__WEBPACK_IMPORTED_MODULE_7__["default"],
     234  save: ({
     235    attributes
     236  }) => {
     237    const shortCode = toShortcode(attributes);
     238    const blockProps = _wordpress_block_editor__WEBPACK_IMPORTED_MODULE_3__.useBlockProps.save();
     239    return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)("div", {
     240      ...blockProps
     241    }, shortCode);
     242  }
     243});
     244
     245/***/ }),
     246
     247/***/ "react":
     248/*!************************!*\
     249  !*** external "React" ***!
     250  \************************/
     251/***/ ((module) => {
     252
     253"use strict";
     254module.exports = window["React"];
     255
     256/***/ }),
     257
     258/***/ "@wordpress/block-editor":
     259/*!*************************************!*\
     260  !*** external ["wp","blockEditor"] ***!
     261  \*************************************/
     262/***/ ((module) => {
     263
     264"use strict";
     265module.exports = window["wp"]["blockEditor"];
     266
     267/***/ }),
     268
     269/***/ "@wordpress/blocks":
     270/*!********************************!*\
     271  !*** external ["wp","blocks"] ***!
     272  \********************************/
     273/***/ ((module) => {
     274
     275"use strict";
     276module.exports = window["wp"]["blocks"];
     277
     278/***/ }),
     279
     280/***/ "@wordpress/components":
     281/*!************************************!*\
     282  !*** external ["wp","components"] ***!
     283  \************************************/
     284/***/ ((module) => {
     285
     286"use strict";
     287module.exports = window["wp"]["components"];
     288
     289/***/ }),
     290
     291/***/ "@wordpress/element":
     292/*!*********************************!*\
     293  !*** external ["wp","element"] ***!
     294  \*********************************/
     295/***/ ((module) => {
     296
     297"use strict";
     298module.exports = window["wp"]["element"];
     299
     300/***/ }),
     301
     302/***/ "@wordpress/i18n":
     303/*!******************************!*\
     304  !*** external ["wp","i18n"] ***!
     305  \******************************/
     306/***/ ((module) => {
     307
     308"use strict";
     309module.exports = window["wp"]["i18n"];
     310
     311/***/ }),
     312
     313/***/ "@wordpress/url":
     314/*!*****************************!*\
     315  !*** external ["wp","url"] ***!
     316  \*****************************/
     317/***/ ((module) => {
     318
     319"use strict";
     320module.exports = window["wp"]["url"];
     321
     322/***/ }),
     323
     324/***/ "./node_modules/classnames/index.js":
     325/*!******************************************!*\
     326  !*** ./node_modules/classnames/index.js ***!
     327  \******************************************/
     328/***/ ((module, exports) => {
     329
     330var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
     331    Copyright (c) 2018 Jed Watson.
     332    Licensed under the MIT License (MIT), see
     333    http://jedwatson.github.io/classnames
     334*/
     335/* global define */
     336
     337(function () {
     338    'use strict';
     339
     340    var hasOwn = {}.hasOwnProperty;
     341
     342    function classNames () {
     343        var classes = '';
     344
     345        for (var i = 0; i < arguments.length; i++) {
     346            var arg = arguments[i];
     347            if (arg) {
     348                classes = appendClass(classes, parseValue(arg));
     349            }
     350        }
     351
     352        return classes;
     353    }
     354
     355    function parseValue (arg) {
     356        if (typeof arg === 'string' || typeof arg === 'number') {
     357            return arg;
     358        }
     359
     360        if (typeof arg !== 'object') {
     361            return '';
     362        }
     363
     364        if (Array.isArray(arg)) {
     365            return classNames.apply(null, arg);
     366        }
     367
     368        if (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {
     369            return arg.toString();
     370        }
     371
     372        var classes = '';
     373
     374        for (var key in arg) {
     375            if (hasOwn.call(arg, key) && arg[key]) {
     376                classes = appendClass(classes, key);
     377            }
     378        }
     379
     380        return classes;
     381    }
     382
     383    function appendClass (value, newClass) {
     384        if (!newClass) {
     385            return value;
     386        }
     387   
     388        if (value) {
     389            return value + ' ' + newClass;
     390        }
     391   
     392        return value + newClass;
     393    }
     394
     395    if ( true && module.exports) {
     396        classNames.default = classNames;
     397        module.exports = classNames;
     398    } else if (true) {
     399        // register as 'classnames', consistent with npm package name
     400        !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
     401            return classNames;
     402        }).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
     403        __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
     404    } else {}
     405}());
     406
     407
     408/***/ }),
     409
     410/***/ "./src/blocks/form/block.json":
     411/*!************************************!*\
     412  !*** ./src/blocks/form/block.json ***!
     413  \************************************/
     414/***/ ((module) => {
     415
     416"use strict";
     417module.exports = /*#__PURE__*/JSON.parse('{"$schema":"https://schemas.wp.org/trunk/block.json","apiVersion":2,"name":"amem/form","title":"Adv. Members Form","category":"text","description":"Add Advanced Members for ACF Form to your content.","textdomain":"advanced-members","attributes":{"type":{"enum":["","form","preForm"],"default":"form"},"form":{"type":"number","default":0},"preForm":{"type":"string","default":""},"hash":{"type":"string","default":""},"title":{"type":"string","default":""}},"usesContext":["form","type","hasy"],"supports":{"className":true,"customClassName":true,"anchor":true,"html":true},"_supports":{"align":["wide","full"],"anchor":false,"className":false,"color":{"gradients":true,"link":true,"__experimentalDefaultControls":{"background":true,"text":true}},"spacing":{"margin":true,"padding":true,"__experimentalDefaultControls":{"margin":false,"padding":false}},"typography":{"fontSize":true,"lineHeight":true,"__experimentalFontFamily":true,"__experimentalFontStyle":true,"__experimentalFontWeight":true,"__experimentalLetterSpacing":true,"__experimentalTextTransform":true,"__experimentalTextDecoration":true,"__experimentalWritingMode":true,"__experimentalDefaultControls":{"fontSize":true}},"__unstablePasteTextInline":true,"__experimentalSlashInserter":true,"interactivity":{"clientNavigation":true}},"style":"wp-block-amem-form"}');
     418
     419/***/ })
     420
     421/******/    });
     422/************************************************************************/
     423/******/    // The module cache
     424/******/    var __webpack_module_cache__ = {};
     425/******/   
     426/******/    // The require function
     427/******/    function __webpack_require__(moduleId) {
     428/******/        // Check if module is in cache
     429/******/        var cachedModule = __webpack_module_cache__[moduleId];
     430/******/        if (cachedModule !== undefined) {
     431/******/            return cachedModule.exports;
     432/******/        }
     433/******/        // Create a new module (and put it into the cache)
     434/******/        var module = __webpack_module_cache__[moduleId] = {
     435/******/            // no module.id needed
     436/******/            // no module.loaded needed
     437/******/            exports: {}
     438/******/        };
     439/******/   
     440/******/        // Execute the module function
     441/******/        __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
     442/******/   
     443/******/        // Return the exports of the module
     444/******/        return module.exports;
     445/******/    }
     446/******/   
     447/************************************************************************/
     448/******/    /* webpack/runtime/compat get default export */
     449/******/    (() => {
     450/******/        // getDefaultExport function for compatibility with non-harmony modules
     451/******/        __webpack_require__.n = (module) => {
     452/******/            var getter = module && module.__esModule ?
     453/******/                () => (module['default']) :
     454/******/                () => (module);
     455/******/            __webpack_require__.d(getter, { a: getter });
     456/******/            return getter;
     457/******/        };
     458/******/    })();
     459/******/   
     460/******/    /* webpack/runtime/define property getters */
     461/******/    (() => {
     462/******/        // define getter functions for harmony exports
     463/******/        __webpack_require__.d = (exports, definition) => {
     464/******/            for(var key in definition) {
     465/******/                if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
     466/******/                    Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
     467/******/                }
     468/******/            }
     469/******/        };
     470/******/    })();
     471/******/   
     472/******/    /* webpack/runtime/hasOwnProperty shorthand */
     473/******/    (() => {
     474/******/        __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
     475/******/    })();
     476/******/   
     477/******/    /* webpack/runtime/make namespace object */
     478/******/    (() => {
     479/******/        // define __esModule on exports
     480/******/        __webpack_require__.r = (exports) => {
     481/******/            if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
     482/******/                Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
     483/******/            }
     484/******/            Object.defineProperty(exports, '__esModule', { value: true });
     485/******/        };
     486/******/    })();
     487/******/   
     488/************************************************************************/
     489var __webpack_exports__ = {};
     490// This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
     491(() => {
     492"use strict";
     493/*!***********************!*\
     494  !*** ./src/blocks.js ***!
     495  \***********************/
     496__webpack_require__.r(__webpack_exports__);
     497/* harmony import */ var _blocks_form__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./blocks/form */ "./src/blocks/form/index.js");
     498/**
     499 * GenerateBlocks
     500 */
     501
     502
     503})();
     504
     505/******/ })()
     506;
     507//# sourceMappingURL=blocks.js.map
  • advanced-members/trunk/assets/build/blocks/blocks/form/block.json

    r3182890 r3196034  
    33  "apiVersion": 2,
    44  "name": "amem/form",
    5   "title": "Members Form",
     5  "title": "Adv. Members Form",
    66  "category": "text",
    77  "description": "Add Advanced Members for ACF Form to your content.",
  • advanced-members/trunk/assets/build/css/admin.css

    r3182890 r3196034  
    972972  mask-image: url("../../images/icons/icon-field-amem.svg");
    973973}
     974.amem-block-preview .amem-block-form-select {
     975  max-width: 365px;
     976  margin: 0 auto;
     977}
    974978.amem-block-preview .amem-block-form-name {
    975979  font-size: 2rem;
  • advanced-members/trunk/core/actions/account.php

    r3186203 r3196034  
    475475        add_action( 'amem/form/after_fields/type=account', [$this, 'local_fields'], 50, 2 );
    476476
    477         amem()->render->render( amem()->account->get_form_id(), $args );
     477        if ( !amem()->account->get_form_id() && !acf_get_local_field_group('group_amem_account_general') ) {
     478            sprintf( '<div class="acf-notice -error amem-notice amem-error-message" aria-live="assertive" role="error">%s</div>', esc_html__( 'Default account form not set in settings.', 'advanced-members' ) );
     479        } else {
     480            amem()->render->render( amem()->account->get_form_id(), $args );           
     481        }
     482
    478483    }
    479484
  • advanced-members/trunk/core/class-account.php

    r3186203 r3196034  
    272272                    <?php
    273273                    $tab_data = $this->tabs[ $args['tab'] ];
    274                     $args['submit_text'] = $tab_data['submit_text'];
     274                    if ( $args['tab'] == 'general' ) {
     275                        $args['submit_text'] = !empty($args['submit_text']) ? $args['submit_text'] : $tab_data['submit_text'];
     276                    } else {
     277                        $args['submit_text'] = $tab_data['submit_text'];
     278                    }
    275279                    if ( isset($tab_data['submit_btn_atts']) ) {
    276280                        $args['submit_btn_atts'] = $tab_data['submit_btn_atts'];
  • advanced-members/trunk/core/class-blocks.php

    r3186203 r3196034  
    5252            amem_get_path('assets/build/blocks/blocks/form'),
    5353            array(
    54                 'title' => esc_html__( 'Members Form', 'advanced-members' ),
     54                'title' => esc_html__( 'Adv. Members Form', 'advanced-members' ),
    5555                'render_callback' => [ '\AMem\Blocks\Form', 'render_block' ],
    5656                'uses_context' => array(
     
    143143        ];
    144144        $forms = amem()->rest->forms( ['type' => ['login', 'registration']] );
    145         $forms = [$blank_form] + $forms;
     145        // $forms = [$blank_form] + $forms;
    146146
    147147        $preForms = amem()->rest->preForms();
    148         $preForms = [$blank_form] + $preForms;
     148        // $preForms = [$blank_form] + $preForms;
    149149
    150150        wp_localize_script(
  • advanced-members/trunk/core/class-fields.php

    r3186203 r3196034  
    195195
    196196    function register_scripts() {
    197         $min = '';
     197        $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
    198198        wp_register_script( 'amem-input', amem_get_url("assets/build/js/amem-input{$min}.js"), array( 'jquery', 'acf-input' ), AMEM_VERSION, true );
    199199
  • advanced-members/trunk/core/functions-forms.php

    r3186203 r3196034  
    351351        'data' => array(
    352352            'ajax' => $form_ajax,
    353             'description' => get_post_meta( $form_post->ID, 'amem_form_description', true ),
     353            'description' => '',//get_post_meta( $form_post->ID, 'amem_form_description', true ),
    354354            'submit_text' => get_post_meta( $form_post->ID, 'amem_form_submit_text', true ),
    355355            'success_message' => get_post_meta( $form_post->ID, "amem_form_{$form_type}_show_message", true ),
     
    672672 */
    673673function amem_enqueue() {
     674    $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
     675
    674676    // Enqueue the hotfix that prevents validation from firing across all forms on the same page when one is submitted.
    675677    if ( apply_filters( 'amem/settings/enqueue_validation_hotfix', false ) ) {
    676         wp_enqueue_script( 'amem-multi-form-validation-hotfix', amem_get_url("assets/build/js/multi-form-validation-hotfix.js"), [ 'acf-input' ], AMEM_VERSION, true );
     678        wp_enqueue_script( 'amem-multi-form-validation-hotfix', amem_get_url("assets/build/js/multi-form-validation-hotfix{$min}.js"), [ 'acf-input' ], AMEM_VERSION, true );
    677679    }
    678680
    679681    // Enqueue ACF scripts and styles
    680682    acf_enqueue_scripts();
    681 
    682     $min = '';
    683683
    684684    wp_register_script( 'amem-password-strength', amem_get_url("assets/build/js/password-strength{$min}.js"), array( 'password-strength-meter' ), AMEM_VERSION, true );
     
    691691    amem()->fields->enqueue_scripts();
    692692
    693     wp_enqueue_script( 'amem-forms-script', amem_get_url("assets/build/js/forms.js"), ['jquery', 'acf-input', 'amem-input'], AMEM_VERSION, true );
    694 
    695     wp_enqueue_style( 'amem-form-style', amem_get_url("assets/build/css/form.css"), false, AMEM_VERSION );
     693    wp_enqueue_script( 'amem-forms-script', amem_get_url("assets/build/js/forms{$min}.js"), ['jquery', 'acf-input', 'amem-input'], AMEM_VERSION, true );
     694
     695    wp_enqueue_style( 'amem-form-style', amem_get_url("assets/build/css/form{$min}.css"), false, AMEM_VERSION );
    696696
    697697    if ( amem()->options->get('load_theme', true) ) {
    698         wp_enqueue_style( 'amem-theme-default', amem_get_url("assets/build/css/themes/default.css"), false, AMEM_VERSION );
     698        wp_enqueue_style( 'amem-theme-default', amem_get_url("assets/build/css/themes/default{$min}.css"), false, AMEM_VERSION );
    699699    }
    700700
  • advanced-members/trunk/readme.txt

    r3186203 r3196034  
    11=== Advanced Members for ACF ===
    22Tags: acf, advanced custom fields, members, registration, account
    3 Stable tag: 0.9.4
     3Stable tag: 0.9.5
    44Requires at least: 5.8
    55Tested up to: 6.6.1
     
    8080- New: Support email field on login form
    8181
     82= 0.9.5 =
     83- Mod: Renamed page state title
     84- New: Warning message for non default account form when render form
     85- Mod: Improved form settings fields
     86- Mod: Merged predefined forms and general forms in block
     87
    8288== Upgrade Notice ==
    8389
  • advanced-members/trunk/src/blocks/form/block.json

    r3182890 r3196034  
    33    "apiVersion": 2,
    44    "name": "amem/form",
    5     "title": "Members Form",
     5    "title": "Adv. Members Form",
    66    "category": "text",
    77    "description": "Add Advanced Members for ACF Form to your content.",
  • advanced-members/trunk/src/blocks/form/edit.js

    r3182890 r3196034  
    5353  const blockProps = useBlockProps({});
    5454
     55  const forms = formOptions(amemBlocks.forms);
     56
     57  const preForms = formOptions(amemBlocks.preForms);
     58
     59  const formSelect = (
     60    <SelectControl
     61        label={ __( "Select Form", "advanced-members" ) }
     62        value={ (form == "0" ? preForm : form) }
     63        onChange={ (value) => {
     64                const atts = amemBlocks.forms[value] ? amemBlocks.forms[value] : amemBlocks.preForms[value];
     65                setAttributes( atts )
     66            }
     67        }
     68    >
     69    <option value="">{__("\u2013 Select a Form \u2013", "advanced-members")}</option>
     70    <optgroup label={ __("Login / Registration", "advanced-members") }>
     71        { forms.map( ( option, index ) => {
     72                const key =
     73                    option.id ||
     74                    `${ option.label }-${ option.value }-${ index }`;
     75
     76                return (
     77                    <option
     78                        key={ key }
     79                        value={ option.value }
     80                        disabled={ option.disabled }
     81                        hidden={ option.hidden }
     82                    >
     83                        { option.label }
     84                    </option>
     85                );
     86            } ) }
     87        </optgroup>
     88
     89    <optgroup label={ __("Predefined Forms", "advanced-members") }>
     90        { preForms.map( ( option, index ) => {
     91                const key =
     92                    option.id ||
     93                    `${ option.label }-${ option.value }-${ index }`;
     94
     95                return (
     96                    <option
     97                        key={ key }
     98                        value={ option.value }
     99                        disabled={ option.disabled }
     100                        hidden={ option.hidden }
     101                    >
     102                        { option.label }
     103                    </option>
     104                );
     105            } ) }
     106        </optgroup>
     107
     108    </SelectControl>
     109  );
     110
    55111  const settingsPanel = (
    56112      <InspectorControls key="setting">
    57         <PanelBody title={__("Advanced Members for ACF Form", 'advanced-members')}>
    58           <SelectControl
    59             label={__("Form Type", "advanced-members")}
    60             value={type}
    61             options={[
    62                 { value: "", label: __("\u2013 Select a type \u2013", "advanced-members") },
    63               { value: "form", label: __("Login / Registration", "advanced-members") },
    64               { value: "preForm", label: __("Predefined Forms", "advanced-members") },
    65             ]}
    66           // onChange={(value) => onTypeChange(value)}
    67             onChange={(value) => setAttributes({ type: value })}
    68           />
     113        <PanelBody title={__("Advanced Members for ACF Form", "advanced-members")}>
    69114
    70           { "form" === type && <>
    71               <SelectControl
    72                 label={__("Forms", "advanced-members")}
    73                 value={form}
    74                 options={formOptions(amemBlocks.forms)}
    75                 onChange={(value) => setAttributes( amemBlocks.forms[value] )}
    76               />
    77               { form > "0" && <>
    78                 <ExternalLink
    79                     href={editURL(form)}
    80                 >
    81                 {__("Edit this form", "advanced-members")}
    82                 </ExternalLink>
    83                 </> }
    84           </> }
    85           { "preForm" === type && <>
    86               <SelectControl
    87                 label={__("Predefined Forms", "advanced-members")}
    88                 value={preForm}
    89                 options={formOptions(amemBlocks.preForms)}
    90                 onChange={(value) => setAttributes( amemBlocks.preForms[value] )}
    91               />
    92           </> }
     115            <SelectControl
     116                label={ __( "Select Form", "advanced-members" ) }
     117                value={ (form == "0" ? preForm : form) }
     118                onChange={ (value) => {
     119                        const atts = amemBlocks.forms[value] ? amemBlocks.forms[value] : amemBlocks.preForms[value];
     120                        setAttributes( atts )
     121                    }
     122                }
     123            >
     124                <option value="">{__("\u2013 Select a Form \u2013", "advanced-members")}</option>
     125                <optgroup label={ __("Login / Registration", "advanced-members") }>
     126                    { forms.map( ( option, index ) => {
     127                            const key =
     128                                option.id ||
     129                                `${ option.label }-${ option.value }-${ index }`;
     130
     131                            return (
     132                                <option
     133                                    key={ key }
     134                                    value={ option.value }
     135                                    disabled={ option.disabled }
     136                                    hidden={ option.hidden }
     137                                >
     138                                    { option.label }
     139                                </option>
     140                            );
     141                        } ) }
     142                </optgroup>
     143
     144                <optgroup label={ __("Predefined Forms", "advanced-members") }>
     145                    { preForms.map( ( option, index ) => {
     146                            const key =
     147                                option.id ||
     148                                `${ option.label }-${ option.value }-${ index }`;
     149
     150                            return (
     151                                <option
     152                                    key={ key }
     153                                    value={ option.value }
     154                                    disabled={ option.disabled }
     155                                    hidden={ option.hidden }
     156                                >
     157                                    { option.label }
     158                                </option>
     159                            );
     160                        } ) }
     161                </optgroup>
     162
     163            </SelectControl>
    93164
    94165        </PanelBody>
     
    101172            <div>
    102173                <div className="acf-block-preview amem-block-preview">
    103                         <div className="amem-block-description">{__('Members Form', 'advanced-members')}</div>
     174                        <div className="amem-block-description">{__('Adv. Members Form', 'advanced-members')}</div>
    104175                        <div className="amem-block-form-name">{title}</div>
     176                        <div className="amem-block-form-select">
     177                    <>
     178                    {formSelect}
     179                    </>
     180                    </div>
    105181                        <div className="amem-block-subtitle">{__('Preview page to view form', 'advanced-members')}</div>
    106182                    </div>
  • advanced-members/trunk/src/blocks/form/index.js

    r3182890 r3196034  
    3131
    3232registerBlockType( 'amem/form', {
    33     title: __( 'Members Form', 'advanced-members' ),
     33    title: __( 'Adv. Members Form', 'advanced-members' ),
    3434    // icon: 'people',
    3535    icon: {
  • advanced-members/trunk/src/css/admin.css

    r3182890 r3196034  
    955955  mask-image: url("../../images/icons/icon-field-amem.svg");
    956956}
     957.amem-block-preview .amem-block-form-select {
     958  max-width: 365px;
     959  margin: 0 auto;
     960}
    957961.amem-block-preview .amem-block-form-name {
    958962  font-size: 2rem;
Note: See TracChangeset for help on using the changeset viewer.